Flash SWF バイナリいじり (ブロックの分解)
何とか SWF ファイルをヘッダとブロックのリストに分解する所までは出来た。 {ヘッダ}+{ムービーヘッダ}+{タグ付きブロック}+{タグ付きブロック}+.... といった形式で、 {ヘッダ}が固

よやさんのブログ記事

前へ[ cron 0:00 指定の罠 ]
[ Flash SWF バイナリいじり (画像データ抽出) ]次へ

Flash SWF バイナリいじり (ブロックの分解)

spacer
何とか SWF ファイルをヘッダとブロックのリストに分解する所までは出来た。

{ヘッダ}+{ムービーヘッダ}+{タグ付きブロック}+{タグ付きブロック}+....
といった形式で、
{ヘッダ}が固定長。
{ムービーヘッダ}が TWIPS の値フィールドだけ可変長。
タグ付きブロックは { tag | length | contents.... } といった形になってる。

複数バイトで表現する値が LittleEndian なのと、一部、ビット単位で
フィールドが詰まっている事が分かれば、後は素直な形式なので楽に分解できる。

ブロックの中身(contents)も興味があるものだけ解析すればOKなので、
中身を入れ替える場合は、入れ替えたブロックの length と先頭ヘッダにある
ファイルサイズの2箇所を更新すれば大丈夫かな。きっと。

長くなるので詳細はこちら↓
http://diary.awm.jp/~yoya/?2008011&to=200801171#200801171 (new window)

さて、明日はコードを整理しつつ画像の入れ替えに挑戦しようかな。
  • │2008-01-17 22:18:15│ カテゴリー:日記│ コメント(0) │
  • 宛先 :
loading
よやさん
お友達人数:10人
spacer
spacer

© 2011 Internet Revolution