Estos dias tenia mucha curiosidad para comparar el nuevo firmware oficial 3.73 respecto a la version anterior y el firmware 3.71 y me he puesto manos a la obra. Indico los pasos basicos para que podais comprobar vosotros mismos en futuros firmwares.
Descargar:
- Eboots de los firmwares en cuestion.
Enlace
- Psar dumper
Enlace Password: PSARDUMPER_FOR_NEW_AGE
1.- Primero poner un firmware por ejemplo el 3.72 (eboot.PBP) en la raiz y ejecutar el psardumper. Una vez acabe renombrar la carpeta F0 por 372 y luego hacer lo mismo con el otro firmware.
2.- Para descartar los que son identicos puedes generar un sfv de cada carpeta y ejecutar el sfv del otro firmware en la carpeta del 3.73 y guardar el resultado de los archivos para tener la lista de archivos diferentes.
3.- Para no trabajar a mano podeis ayudaros de algun editor de texto como ultraedit, notepad++ para poder realizar un script y comparar cada archivo y guardar el resultado.
Ejemplo:
FC 372\PSARDUMPER\common_files_table.bin 373\PSARDUMPER\common_files_table.bin /b > common_files_table.TXT
FC 372\PSARDUMPER\fat_files_table.bin 373\PSARDUMPER\fat_files_table.bin /b > fat_files_table.TXT
FC 372\PSARDUMPER\nandipl_psp1000.bin 373\PSARDUMPER\nandipl_psp1000.bin /b > nandipl_psp1000.TXT
FC 372\PSARDUMPER\nandipl_psp2000.ipl 373\PSARDUMPER\nandipl_psp2000.ipl /b > nandipl_psp2000.TXT
FC 372\PSARDUMPER\part1_nandipl_psp1000.bin 373\PSARDUMPER\part1_nandipl_psp1000.bin /b > part1_nandipl_psp1000.TXT
FC 372\PSARDUMPER\part1_nandipl_psp2000.ipl 373\PSARDUMPER\part1_nandipl_psp2000.ipl /b > part1_nandipl_psp2000.TXT
FC 372\PSARDUMPER\part2_nandipl_psp1000.bin 373\PSARDUMPER\part2_nandipl_psp1000.bin /b > part2_nandipl_psp1000.TXT
FC 372\PSARDUMPER\part2_nandipl_psp2000.ipl 373\PSARDUMPER\part2_nandipl_psp2000.ipl /b > part2_nandipl_psp2000.TXT
FC 372\PSARDUMPER\slim_files_table.bin 373\PSARDUMPER\slim_files_table.bin /b > slim_files_table.TXT
FC 372\kd\ata.prx 373\kd\ata.prx /b > ata.TXT
FC 372\kd\audio.prx 373\kd\audio.prx /b > audio.TXT
FC 372\kd\audiocodec_260.prx 373\kd\audiocodec_260.prx /b > audiocodec_260.TXT
FC 372\kd\avcodec.prx 373\kd\avcodec.prx /b > avcodec.TXT
FC 372\kd\cert_loader.prx 373\kd\cert_loader.prx /b > cert_loader.TXT
FC 372\kd\clockgen.prx 373\kd\clockgen.prx /b > clockgen.TXT
FC 372\kd\codec.prx 373\kd\codec.prx /b > codec.TXT
FC 372\kd\ctrl.prx 373\kd\ctrl.prx /b > ctrl.TXT
FC 372\kd\display.prx 373\kd\display.prx /b > display.TXT
FC 372\kd\dmacman.prx 373\kd\dmacman.prx /b > dmacman.TXT
FC 372\kd\dve.prx 373\kd\dve.prx /b > dve.TXT
FC 372\kd\exceptionman.prx 373\kd\exceptionman.prx /b > exceptionman.TXT
FC 372\kd\fatmsmod.prx 373\kd\fatmsmod.prx /b > fatmsmod.TXT
FC 372\kd\ge.prx 373\kd\ge.prx /b > ge.TXT
FC 372\kd\hibari.prx 373\kd\hibari.prx /b > hibari.TXT
FC 372\kd\hpremote.prx 373\kd\hpremote.prx /b > hpremote.TXT
FC 372\kd\http_storage.prx 373\kd\http_storage.prx /b > http_storage.TXT
FC 372\kd\idstorage.prx 373\kd\idstorage.prx /b > idstorage.TXT
FC 372\kd\ifhandle.prx 373\kd\ifhandle.prx /b > ifhandle.TXT
FC 372\kd\impose.prx 373\kd\impose.prx /b > impose.TXT
FC 372\kd\init.prx 373\kd\init.prx /b > init.TXT
FC 372\kd\interruptman.prx 373\kd\interruptman.prx /b > interruptman.TXT
FC 372\kd\iofilemgr.prx 373\kd\iofilemgr.prx /b > iofilemgr.TXT
FC 372\kd\irda.prx 373\kd\irda.prx /b > irda.TXT
FC 372\kd\isofs.prx 373\kd\isofs.prx /b > isofs.TXT
FC 372\kd\led.prx 373\kd\led.prx /b > led.TXT
FC 372\kd\lfatfs.prx 373\kd\lfatfs.prx /b > lfatfs.TXT
FC 372\kd\lflash_fatfmt.prx 373\kd\lflash_fatfmt.prx /b > lflash_fatfmt.TXT
FC 372\kd\libasfparser.prx 373\kd\libasfparser.prx /b > libasfparser.TXT
FC 372\kd\libatrac3plus.prx 373\kd\libatrac3plus.prx /b > libatrac3plus.TXT
FC 372\kd\libaudiocodec2.prx 373\kd\libaudiocodec2.prx /b > libaudiocodec2.TXT
FC 372\kd\libhttp.prx 373\kd\libhttp.prx /b > libhttp.TXT
FC 372\kd\libmp3.prx 373\kd\libmp3.prx /b > libmp3.TXT
FC 372\kd\libparse_http.prx 373\kd\libparse_http.prx /b > libparse_http.TXT
FC 372\kd\libparse_uri.prx 373\kd\libparse_uri.prx /b > libparse_uri.TXT
FC 372\kd\libssl.prx 373\kd\libssl.prx /b > libssl.TXT
FC 372\kd\loadcore.prx 373\kd\loadcore.prx /b > loadcore.TXT
FC 372\kd\loadexec.prx 373\kd\loadexec.prx /b > loadexec.TXT
FC 372\kd\loadexec_02g.prx 373\kd\loadexec_02g.prx /b > loadexec_02g.TXT
FC 372\kd\lowio.prx 373\kd\lowio.prx /b > lowio.TXT
FC 372\kd\me_wrapper.prx 373\kd\me_wrapper.prx /b > me_wrapper.TXT
FC 372\kd\mediaman.prx 373\kd\mediaman.prx /b > mediaman.TXT
FC 372\kd\mediasync.prx 373\kd\mediasync.prx /b > mediasync.TXT
FC 372\kd\modulemgr.prx 373\kd\modulemgr.prx /b > modulemgr.TXT
FC 372\kd\mpeg.prx 373\kd\mpeg.prx /b > mpeg.TXT
FC 372\kd\mpeg_vsh.prx 373\kd\mpeg_vsh.prx /b > mpeg_vsh.TXT
FC 372\kd\mpegbase_260.prx 373\kd\mpegbase_260.prx /b > mpegbase_260.TXT
FC 372\kd\mscm.prx 373\kd\mscm.prx /b > mscm.TXT
FC 372\kd\msstor.prx 373\kd\msstor.prx /b > msstor.TXT
FC 372\kd\np.prx 373\kd\np.prx /b > np.TXT
FC 372\kd\np9660.prx 373\kd\np9660.prx /b > np9660.TXT
FC 372\kd\np_auth.prx 373\kd\np_auth.prx /b > np_auth.TXT
FC 372\kd\np_core.prx 373\kd\np_core.prx /b > np_core.TXT
FC 372\kd\np_service.prx 373\kd\np_service.prx /b > np_service.TXT
FC 372\kd\power.prx 373\kd\power.prx /b > power.TXT
FC 372\kd\pspbtcnf.bin 373\kd\pspbtcnf.bin /b > pspbtcnf.TXT
FC 372\kd\pspbtcnf_02g.bin 373\kd\pspbtcnf_02g.bin /b > pspbtcnf_02g.TXT
FC 372\kd\pspnet.prx 373\kd\pspnet.prx /b > pspnet.TXT
FC 372\kd\pspnet_adhoc.prx 373\kd\pspnet_adhoc.prx /b > pspnet_adhoc.TXT
FC 372\kd\pspnet_adhoc_discover.prx 373\kd\pspnet_adhoc_discover.prx /b > pspnet_adhoc_discover.TXT
FC 372\kd\pspnet_adhoc_download.prx 373\kd\pspnet_adhoc_download.prx /b > pspnet_adhoc_download.TXT
FC 372\kd\pspnet_adhoc_matching.prx 373\kd\pspnet_adhoc_matching.prx /b > pspnet_adhoc_matching.TXT
FC 372\kd\pspnet_adhoc_transfer_int.prx 373\kd\pspnet_adhoc_transfer_int.prx /b > pspnet_adhoc_transfer_int.TXT
FC 372\kd\pspnet_adhocctl.prx 373\kd\pspnet_adhocctl.prx /b > pspnet_adhocctl.TXT
FC 372\kd\pspnet_apctl.prx 373\kd\pspnet_apctl.prx /b > pspnet_apctl.TXT
FC 372\kd\pspnet_inet.prx 373\kd\pspnet_inet.prx /b > pspnet_inet.TXT
FC 372\kd\pspnet_resolver.prx 373\kd\pspnet_resolver.prx /b > pspnet_resolver.TXT
FC 372\kd\pspnet_wispr.prx 373\kd\pspnet_wispr.prx /b > pspnet_wispr.TXT
FC 372\kd\registry.prx 373\kd\registry.prx /b > registry.TXT
FC 372\kd\rtc.prx 373\kd\rtc.prx /b > rtc.TXT
FC 372\kd\sc_sascore.prx 373\kd\sc_sascore.prx /b > sc_sascore.TXT
FC 372\kd\syscon.prx 373\kd\syscon.prx /b > syscon.TXT
FC 372\kd\sysmem.prx 373\kd\sysmem.prx /b > sysmem.TXT
FC 372\kd\systimer.prx 373\kd\systimer.prx /b > systimer.TXT
FC 372\kd\threadman.prx 373\kd\threadman.prx /b > threadman.TXT
FC 372\kd\umd9660.prx 373\kd\umd9660.prx /b > umd9660.TXT
FC 372\kd\umdcache.prx 373\kd\umdcache.prx /b > umdcache.TXT
FC 372\kd\umdman.prx 373\kd\umdman.prx /b > umdman.TXT
FC 372\kd\usb.prx 373\kd\usb.prx /b > usb.TXT
FC 372\kd\usb1seg.prx 373\kd\usb1seg.prx /b > usb1seg.TXT
FC 372\kd\usbacc.prx 373\kd\usbacc.prx /b > usbacc.TXT
FC 372\kd\usbcam.prx 373\kd\usbcam.prx /b > usbcam.TXT
FC 372\kd\usbgps.prx 373\kd\usbgps.prx /b > usbgps.TXT
FC 372\kd\usbmic.prx 373\kd\usbmic.prx /b > usbmic.TXT
FC 372\kd\usbpspcm.prx 373\kd\usbpspcm.prx /b > usbpspcm.TXT
FC 372\kd\usbstor.prx 373\kd\usbstor.prx /b > usbstor.TXT
FC 372\kd\usbstorms.prx 373\kd\usbstorms.prx /b > usbstorms.TXT
FC 372\kd\usersystemlib.prx 373\kd\usersystemlib.prx /b > usersystemlib.TXT
FC 372\kd\utility.prx 373\kd\utility.prx /b > utility.TXT
FC 372\kd\vaudio.prx 373\kd\vaudio.prx /b > vaudio.TXT
FC 372\kd\videocodec_260.prx 373\kd\videocodec_260.prx /b > videocodec_260.TXT
FC 372\kd\vshbridge.prx 373\kd\vshbridge.prx /b > vshbridge.TXT
FC 372\kd\wlan.prx 373\kd\wlan.prx /b > wlan.TXT
FC 372\kd\wlanfirm_magpie.prx 373\kd\wlanfirm_magpie.prx /b > wlanfirm_magpie.TXT
FC 372\kd\wlanfirm_voyager.prx 373\kd\wlanfirm_voyager.prx /b > wlanfirm_voyager.TXT
Una vez ejecutado se obtendran unos archivos con las diferencias entre los archivos y poder comprobar si hay cambios sin importancia o muchos mas cambios. Os dejo el resultado al comparar el firmware 3.72 con el 3.73.
Solo cambian un byte (0x02 -> 0x03): (
Descargar)
Resto de cambios:
common_files_table.BIN
fat_files_table.BIN
lflash_fatfmt.PRX
loadexec.PRX
loadexec_02g.PRX
nandipl_psp1000.IPL
nandipl_psp2000.IPL
part1_nandipl_psp1000.BIN
part1_nandipl_psp2000.BIN
part2_nandipl_psp1000.BIN
part2_nandipl_psp2000.BIN
power.PRX
pspbtcnf.BIN
pspbtcnf_02g.BIN
slim_files_table.BIN
Tamaño de las diferencias: Por cada linea en el txt representa que un byte es diferente, por ejemplo en el archivo lflash_fatfmt.TXT hay 1469 bytes diferentes al comparar los 2 prx desencriptados.
En la carpeta PSARDUMPER que se genera estan la mayoria de cambios, por ejemplo se ven diferencias notables en los IPL aunque no se si es debido solo a un tipo de cambio en la firma o encriptacion.
Para analizar los cambios importantes se tendria que usar la aplicacion prxtool con los prx pero son necesarios conocimientos en C, assembler, ingenieria inversa y procesadores mips para poder interpretarlos, sin esto por mucho ida pro que tengas no se entenderá nada.
Mas informacion sobre Prxtools
Por ahora nada mas.
Un saludo.