in reply to Net::FTP non-alphanumeric character

If you use warnings, you will get a helpful message:
Possible unintended interpolation of @xxx in string at
The quickest thing to try is to avoid interpolating the @ using single quotes:
$psswrd = 'xxx@xxx';