prxdecrypter (psardumper mod to decrypt PRX files and firmware resources)
version 1.6
by jas0nuk

***


This mod of psardumper can decrypt/decompress:
* individual firmware modules from all known retail firmwares (1.00-3.52)
* modules and EBOOT.BIN files from all current retail games, and debug EBOOT.BIN files
* M33 custom firmware modules
* RLZ files extracted from RCOs
* official updaters DATA.PSP
* meimg.img and me_sdimg.img from 2.50 and 2.60, possibly higher
* 2.7X~3.52 demos DATA.PSP
* 1.XX, 2.00-2.50, 2.60-2.71, 2.80, 3.00 and 3.10+ gamesharing EBOOTs

CHANGELOG:

1.5b --> 1.6
- Now comes with a HEN compatible EBOOT which doesnt seem to work properly (partially broken on 3.xx kernel on the fat PSP, 
 ` completely broken on 3.60 M33 due to new hardware)
- Added 6 more key sets (1.XX, 2.00-2.50, 2.60-2.71, 2.80, 3.00 and 3.10+ gameshare keys)
- Now press TRIANGLE rather than HOME to exit
- Fixed 2.7X demo decryption (wrong key)
- Removed 5 useless keys
- Now uses the entire buffer - previously, files over 4mb would fail
- Added second layer of descrambling to a few files - this would have produced messed up output if you tried in the old version
- Waiting for the 3.60 and 3.70 keys... I'll add them as soon as I have them.

If anything crashes, PM me on LAN.ST/MaxConsole and tell me exactly what you were trying to decrypt. Thanks

1.5 --> 1.5b
- Added decryption for:
 `-- 1.XX game EBOOT.BIN files
 `-- New game EBOOT.BIN types which aren't yet being used (4 different keys)
 `-- A few unknown filetypes (keys found in mesg_led)
 `-- DATA.PSP from 2.7X, 2.8X and 3.XX demos (4 different keys)
 `-- DATA.PSP from official updaters
 `-- 2.50/2.60 meimg.img and me_sdimg.img (2 different keys)
- NOTE: If you want to decrypt a file, make sure it has the 4 byte "~PSP" header, or it will be skipped by the decrypt function.
 ` You can easily add this using a hex editor.
- Better checks before attempting to "UnSignCheck" files
- Fixed an incorrect error message
- Fixed a logging bug which logged "fail" and "success" at the same time
- Increased buffers to 10mb each to allow large files to be decrypted

1.4b --> 1.5
- More source cleanup and improved error handling: If something fails to decrypt or decompress it saves as much as possible,
 ` or avoids saving to prevent memory stick corruption. (No more deletion of files for no reason)
- Can decompress plain 2RLZ files in the ms0:/enc folder (extracted from RCOs or whatever)
- Improved method of initializing 2RLZ decompressor - much faster now, and less likely to fail
- Now writes a log of all activities to ms0:/enc/log.txt
- Fixed a bug which prevented the header of extremely small files (less than 208 bytes) being found
- FINALLY: retail game EBOOT.BIN decryption
- Improved M33 PRX detection to reduce false positives
- SHA-1 check removed to allow files such as vshmain.prx from 3.5X to decrypt

1.4 --> 1.4b
- M33 decompression fixed; no longer interferes with official PRXs
- Source cleanup

1.3 --> 1.4
- Decompresses PRXs from M33 custom firmware
- Improved error handling
-- Already decrypted files are skipped
-- Files with unknown headers are skipped
-- Files that produced odd output are deleted to prevent memory stick corruption
- Improved path handling (hopefully no more strange "Unable to open file" problems)

1.2 --> 1.3
- 3.30 support

1.1 --> 1.2
- 3.10/3.11 support
- changed name

1.0 --> 1.1
- Supports sigchecked files if they were signed on the PSP they are being decrypted on
- Can decompress RLZ files
- "sysmem_reboot.prx" is now "sysmem_rlz.prx" as it is used for both reboot.bin extraction and RLZ decompression. If "sysmem_rlz.prx" is not in the 'enc' folder, a red warning will be displayed and RLZ decompression will not be possible.
- Much better error handling. Note: if a file entirely fails to decrypt (e.g. EBOOT.BIN) it will be deleted to prevent memory stick corruption.
- To save space, paths are printed as just the filename, e.g 'audio.prx' instead of 'ms0:/enc/audio.prx' whilst decrypting

INSTRUCTIONS:
Make a folder on your memory stick called "enc" and place your encrypted PRXs there. Then run the app and press X to decrypt them.
The encrypted files will be replaced with decrypted versions.

The app can also extract reboot.bin from a 1.50 loadexec.prx or later.

Just place a DECRYPTED 2.70 or later sysmem.prx in the "ms0:/enc" folder and name it as "sysmem_rlz.prx"
Then place a DECRYPTED copy of loadexec.prx from the firmware you want reboot.bin for, and name it as "loadexec_reboot.prx"

When these two files are detected, an option to obtain reboot.bin (by pressing SQUARE) appears in the application.

Greetings:
Everyone at Malloc/LAN.ST/Dark-AleX.org/eXonet
Dark_AleX - for unSignCheck, for the psardumper with 2.60-2.80 encryption, and for some amazing kernel hacks in SE/OE :)
Team Noobz and Team C+D - for 3.00~3.52 encryption keys
PspPet - for the original psardumper
SilverSpring for information on mesg_led keys

And finally, a big "fuck you" to PS3N***


Enjoy ;)

~jas0nuk
