一筋縄ではいかないことがわかりました。
解析の方法としては、1つの図形をちょっとずつ変更して、変更前のファイルと比べるという方法を取ろうとしています。例えば、図形に付ける名前を最初aにして、図形出力。次にbにしてから図形出力。出力されたファイルを比較して、変更されたところが図形の名前とわかるハズなわけです。
ところが、図形の名前を1文字変更しただけでファイルの内容が大きく変わります。普通、こういうことが起こるのは、暗号化されているか圧縮されているかなわけです。まず、.zcfファイルがそんな風に大きく変わったので、16進ダンプを取ると先頭が50 4b(PK)で始まっていることから、.zip形式だとわかったんです。
で、.zipアーカイブの中身を見ると、また見たことない拡張子のファイルが現れます。.zcf, .nzx, .nziの3つのファイル。このうち.nzxファイルは図形の名前の変更前後で差がないので、おそらく今回変更しなかった緯度経度の座標が入っているものと考えられます。他の2つのファイルが問題で、また大きく変わるんですね。で、またファイルの先頭を見ると、今度は3つとも78 9Cで始まります。この2バイト、zlibによる圧縮データでよく使われるのだそうです。
perlでzlibを解くには、Compress::Zlibというライブラリがあるということまでは調べました。しかし、使い方がわからず。
圧縮ファイルの中身をさらに圧縮するなんて、何考えてるんでしょうか? > ゼンリン