INI1
| Offset
|
Type
|
Description
|
| 0x0
|
u32
|
Magic "INI1"
|
| 0x4
|
u32
|
Size
|
| 0x8
|
u32
|
NumberProcesses
|
| 0xC
|
u32
|
Zero
|
KIP1
Kernel internal process?
| Offset
|
Type
|
Description
|
| 0x0
|
u32
|
Magic "KIP1"
|
| 0x4
|
char[12]
|
Name
|
| 0x10
|
u64
|
TitleId
|
| 0x18
|
u32
|
|
| 0x1C
|
u32
|
Flags / etc. Byte3 bit0-2: compression-enable for each section, when set.
|
| 0x20
|
#SectionHeader[3]
|
Sections
|
| 0x50
|
char[0x20]
|
Padding
|
| 0x70
|
u64[0x20]
|
KernelCaps
|
| Offset
|
Type
|
Description
|
| 0x0
|
u32
|
OutOffset
|
| 0x4
|
u32
|
DecompressedSize
|
| 0x8
|
u32
|
CompressedSize
|
| 0xC
|
u32
|
|
Compression
The compression used here is BLZ, with a modified footer since 3ds. The footer is now 0xC bytes instead of 0x8, and has the form u32 compressed_data_len; u32 initial_index; u32 additional_len_when_uncompressed;