IO_SWF hexdump

http://openpear.org/package/IO_SWF のsample/swfdump.php に -h オプションを付けてみました。
SWF Header や Tag のブロック毎に16進表示します。

バイナリのブロック切り出しは慣れないとなかなか出来ないので、バイナリ初心者には地味に便利な機能です。
中級者以上でも verify に使えるはず。

インストール方法

pear channel-discover openpear.org
pear install openpear/IO_Bit
pear install openpear/IO_SWF

使い方

% php sample/swfdump.php -f  ~/flash/bloxorz.swf -h
Signature: CWS
Version: 8
FileLength: 3166474
FrameSize: Xmin: 0 Xmax: 550 Ymin: 0 Ymax: 300
FrameRate: 36
FrameCount: 99
             0  1  2  3  4  5  6  7   8  9  a  b  c  d  e  f  0123456789abcdef
0x00000000  43 57 53 08 0a 51 30 00  78 00 05 5f 00 00 0b b8  CWS  Q0 x  _
0x00000010  00 00 24 63 00                                     $c
Tags:
Code: 69(FileAttributes)  Length: 4
             0  1  2  3  4  5  6  7   8  9  a  b  c  d  e  f  0123456789abcdef
0x00000010                 44 11 00  00 00 00                      D
Code: 9(SetBackgroundColor)  Length: 3
<略>

蛇足

元々、misc/php/swf at master · yoya/misc · GitHub で作った機能ですが、やってる事が簡単な割にコレないとデバッグ出来ない位に便利なので、IO_SWF に移植してきました。
swfstrip も含めて、最終的に IO_SWF に統合したいと思ってます。