馬鹿な人日記

常にPCいじってる馬鹿な人の日記です。

情報を整理してみる

前回でなんとなく気になる所は拾ったんで、
情報を整理して再び調べ直してみる。
とりあえずデータをなんとなく分かる物から順番に並べてみよう。分からないデータも便宜的に分けておく。
こんな感じ。

マジックナンバー? 8byte(0x0000~0x0007)
謎データA 4byte(0x0008~0x000B)
謎データB 4byte(0x000C~0x000F)
謎データC 4byte(0x0010~0x0013)
パディング? 4byte(0x0014~0x0017)
作者ID? 10byte(0x0018~0x0021)
作者ID? 10byte(0x0022~0x002B)
作者ID? 10byte(0x002C~0x0035)
作者名 22byte(0x0036~0x004B)
作者名 22byte(0x004C~0x0061)
作者名 22byte(0x0062~0x0077)
ファイル名 28byte(0x0078~0x0093)
ファイル名 28byte(0x0094~0x00AF)
ファイル名 28byte(0x00B0~0x00CB)

まず三つの作者名。前回は自分だけで作った作品しか解析しなかったけど、
今回はワールドうごメモギャラリーから何人かで回されてる作品を引っ張って来て、
比較してみたら順番が分かった。
原作者名→親作者名→作者名の順だ。間違いない。

あと、作者の固有番号と言うか、ID的な物じゃないかと思われてたデータ。同じ10byteのデータが三つ並んでたやつ。
これも何人か関わってるメモを使って作者名調べた時に、
三つそれぞれのデータが違うデータになってたから、やっぱり作者IDだろう。
最初が原作者のIDなのは間違いないが、親作者と作者の順番に自信が無い。
まぁわざわざ作者名と違う順番にする意味もないだろう。
原作者→親作者→作者の順番と思っておく。

あぁ、ファイル名もきっとそうだ。
原作・親作・自分自身のファイル名と前回予想したが、多分これも同じ順番。多分。

さて、次だ。次と言いつつ段々ファイルの先頭に向かっているのはツッこむな。
謎データBとC。前回は「意味は謎だが、この二つの4バイトデータは必ず一致している」と書いた。
だが、今回解析したメモは違った。なんと謎データB・Cの上位1バイトが一致していない!
いや、意味さえ分からないデータの内容を考えてもしょうがないのは承知だが。
うーむ、何のデータなのだろうか。
依然として下位3バイトは一致しているが、これらのデータも必ず一致する保証は無い。

あ、そうだ。ページ数の情報発見。
2バイトで0x00CC~0x00CD。リトルエンディアン
ファイル名の直後にあった。

最後に、今回気がついた最大の情報。
ヘッダと各ページのデータの境界が(確定ではないが)確認できた。
今回比較に使った2つのワールドうごメモギャラリーから拾ってきたメモは、
片方がもう片方の殆ど丸コピで、最後の方がほんのちょこっとしか変えられてないメモ。
最初の数十ページは全く同じ。

んで、そのメモをバイト単位でファイルの先頭から比較したところ、
相違するバイトがあるアドレスからぷっつりと消えていた。
つまり全く同じの最初の数十ページ。
そのアドレスが0x00D0。ここからが本データである可能性が大きい。
あるいは、前回記事に書いたマジックナンバーらしきデータ4B 54 4E 02(0x00D4)からかもしれない。
どっちにしろかなり限定できた。

今回の収穫はこんな感じ。まだまだ謎だらけ。