The trouble is, the library seems to store the files as items.
I don't quite follow - are you saying that the uploaded files are not byte-for-byte identical with the original files?
I can tell that it has not been decompressed because it is the same size as the compressed file.
If you upload a ZIP file, why would it get decompressed? That's not what FileUpload does.