構造
久しぶりに見直した際、なんとなく "0xFF でのxorっぽいな" とデコード試行したら正解だった
0x0 0x4 0x8 0xc
+---------------------------------------------------------------+
0x00 | Encoded Data(xor) --->|
+---------------------------------------------------------------+
0x10 |---> (Encoded Data(xor)) --->|
+---------------------------------------------------------------+
0x20 |---> (Encoded Data(xor)) |
+---------------+-----------------------------------------------+
0x30 | HDR CRC32 |
+---------------+ |
| xor decode (0x0 - 0x30)
|
v
0x0 0x4 0x8 0xc
+---------------+---------------+-------------------------------+
0x00 | Data CRC32 | Data Length | ASCII data --->|
+---------------+---------------+-------------------------------+
0x10 |---> ("FIRMWARE<prodid?>\x00<ver>\x00<prodname>")(reversed)--->|
+---------------------------------------------------------------+
0x20 |---> |
+---------------+-----------------------------------------------+
0x30 | HDR CRC32 |
+---------------+
HDR CRC32 はxorでエンコードされたヘッダ部分 (0x0 - 0x2F) を対象として算出した値
product name
WRTM から察するに製造はGemtekのようである
- WSR-1800AX4:
WRTM-353AX - WSR-1800AX4P:
WRTM-353AX_P - WSR-1800AX4S:
WRTM-353AX_S