| Offset | Length | Data | Description |
|---|---|---|---|
| 0x00 | 1 | Signature | |
| 0x01 | 3 | Some random data, threat as zero when calculating header CRC | |
| 0x04 | 4 | Length of firmware data | |
| 0x08 | 4 | CRC32 of firmware data | |
| 0x0C | 4 | Unknown | |
| 0x10 | 4 | Unknown | |
| 0x14 | 2 | Firmware Version | |
| 0x16 | 2 | Device model ID | |
| 0x18 | 4 | CRC32 of previous data where bytes at 0x01-0x03 threated as zero | |
| 0x1C | Firmware data |
Splitting happens automatically after loading. Compressed firmware is decompressed into raw firmware data; uncompressed firmware is used as-is. Both parts are carried into the merge section below.
Combines the parts below into a new firmware image and recalculates the payload length and both CRC32 fields. The output format follows the detected firmware type. File pickers only override the automatically filled parts.