(Fix for PC QARs not extracting properly and some files in FPKs not decrypting properly)
Automatically decrypts encrypted files inside FPK archives when extracting, and adds support for console/legacy QAR extraction and console FPK extraction/creation.
Changes:
- Attempts to decrypt files inside FPK archives if they begin with 0x1B or 0x1C (result of the decryption is only used if the check byte is valid after decryption)
- Support legacy QAR formats (version 1 = GZ PC, version 2 = TPP PS3/360, version 3 = TPP PC)
- Add X360Reader / X360Writer classes for big endian FPK support
- Edit FPK classes to use these reader/writers instead of passing streams around
- Detect endianness based on the platform of the FPK and read/write using that endianness automatically
Console QAR and FPK files can be extracted perfectly (maybe 1% of files extract wrong though, unsure why..)
Creating console FPK files also seems to work fine, haven't worked on console/legacy QAR creation yet though.
FPK decryption has only been tested with PC files, but should hopefully work with console files too.