For some reason the SIZE command (which is issued hidden to the user) isn't getting it's reply, instead the reply comes back as PORT is being sent.
I replaced the procedure used for sending SIZE with the same procedure that all the other commands use to send commands to the server, this method is more robust. Hopefully by doing that it resolves this issue.
http://www.flashfxp.ws/zip/ffxptest2.zip