Expand description
The Block Table Parsing
The block table contains entries for each region in the archive.
Regions may be either files, empty space, which may be overwritten by new
files (typically this space is from deleted file data), or unused block
table entries.
Empty space entries should have:
- BlockOffset and BlockSize nonzero.
- FileSize and Flags zero;
Unused block table entries should have:
- BlockSize, FileSize, and Flags zero.
The block table is encrypted, using the hash of “(block table)” as the key.
NOTES:
- MPyQ uses struct_format: '4I'
Structs§
- MPQBlock
Table Entry - The block tables of the MPQ archive, they are stored sequentially and encrypted.