SLB2: Difference between revisions

From PS4 Developer wiki
Jump to navigation Jump to search
Line 37: Line 37:


=== Unpacking ===
=== Unpacking ===
* [https://web.archive.org/web/20141023113732/http://pastie.org/private/4wgojewhp2pq7declhkhw] (flatz)
* [https://web.archive.org/web/20141023113732/http://pastie.org/private/4wgojewhp2pq7declhkhw pupunpack.py] (flatz)
* [http://www.eurasia.nu/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=10234&ttitle=PS4_PUP_Extractor_v2 PS4 PUP Extractor v2] (xerpi)
* [http://www.eurasia.nu/modules.php?name=Downloads&d_op=viewdownloaddetails&lid=10234&ttitle=PS4_PUP_Extractor_v2 PS4 PUP Extractor v2] (xerpi)
* [https://streetskaterfu.blogspot.fr/2013/11/release-ps4-fw-tool-100.html PS4 FW Tool v1.0.0] (skfu)
* [https://streetskaterfu.blogspot.fr/2013/11/release-ps4-fw-tool-100.html PS4 FW Tool v1.0.0] (skfu)

Revision as of 09:45, 30 August 2018

SLB2 structure

PS4 SLB PUP container format - SKFU
 /* file structure of SLB goes as following, if unpacking make sure you use 64 bits little endian on windows os */
 typedef unsigned char u8;
 typedef unsigned long int u32;
 typedef unsigned long long int u64;
 
 typedef struct{
 	u32 offset; //1 block is headersize (512 padded)
 	u32 cryptSize;
 	u64 reserved; //probably file alignment
 	u8 fileName[32];
 } fileEntry;
 
 typedef struct{
 	u32 magic; //SLB2
 	u32 version; //1
        u32 flags; // 0
 	u32 fileCount;
 	u32 blockCount;
 	u8 reserved[12];
 	fileEntry files[10];
 } slb2_header;

SLB2 files to play with

1.500.000:

1.501.000:

Unpacking