博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一个最简单GAL游戏资源文件黑盒分析(二)
阅读量:7188 次
发布时间:2019-06-29

本文共 1503 字,大约阅读时间需要 5 分钟。

今天我们分析的游戏:

游戏引擎:SOFTPAL ADV SYSTEM

文件:汉化补丁中的data.pac

工具 Winhex 或者你自己喜欢的二进制工具

 

打开

0000h: 68 00 00 00 00 00 00 00 00

00 00 00 00 00 00 00  h...............

0010h: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................

 

68 00 -> winhex 显示为 104

我们猜测这是文件数量

然后后面跟着一大段不知道的数据 大小有1018字节

咱们跳过去,(二进制工具都有定位的功能比如Winhex 的 Alt+G)

03F0h: 00 00 68 00 00 00 68 00 00 00 68 00 00 00 42 54  ..h...h...h...BT
0400h: 4E 5F 53 43 52 4F 4C 4C 5F 49 4E 5F 31 2E 41 4E  N_SCROLL_IN_1.AN
0410h: 49 00 00 00 00 00 00 00 00 00 00 00 00 00 1C 00  I...............
0420h: 00 00 3E 14 00 00 42 54 4E 5F 53 43 52 4F 4C 4C  ..>...BTN_SCROLL

42 54 这里开始很明显是文件名
1C 00 00 00 文件长度
3E 14 00 00 文件偏移

这里很明显,反过来 1C 00 00 00这里是偏移地址显然说不通,
这个文件头28字节以及这里前后28 字节都没有文件的迹象

 

我现在来提取游戏剧本

这个可以用英文判断(当程序猿英文是必须,这个就别争了)
SCRIPT.SRC 显然就是剧本 我们提取看看
0C60h: 00 00 00 00 00 00 3D 00 00 00 6F 99 09 00 53 43  ......=...o?.SC
0C70h: 52 49 50 54 2E 53 52 43 00 00 00 00 00 00 00 00  RIPT.SRC........
0C80h: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 04 D6  ...............?

04 D6 46 00 -〉 4642308 文件长度 (Winhex 的 define block)

AC 99 09 00 -〉629164 文件偏移(Winhex 的 Alt+G)
也就是说把629164 位置长度4642308 提取出来作为一个新文件(winhex: Ctrl+shift+N)

不过我们发现 这个文件不包含剧本。。。OTZ

 

再来 我们发现有个这样的文件

TEXT.DAT
把它提取出来。。。
剧本都在里面没有加密。。记事本可以直接看
自己去看

4F60h: 02 00 00 CC EC D2 F4 00 F7 02 00 00 A1 B8 B9 FE  ...天音.?..「哈

4F70h: B0 A1 A3 AC B9 FB C8 BB C1 BD CE BB D5 BE D4 DA  啊,果然两位站在
4F80h: D2 BB C6 F0 B5 C4 BB B0 BE CD CF F1 D2 BB B7 F9  一起的话就像一幅
4F90h: BB AD C4 D8 A1 B9 00 F8 02 00 00 D1 A7 C9 FA 31  画呢」.?..学生1

完工

转载地址:http://agukm.baihongyu.com/

你可能感兴趣的文章
【unity】手势操作之初识FingerGestures
查看>>
nginx配置url重定向-反向代理
查看>>
MySQl的备份和恢复(笔记2)
查看>>
打算做一个网站
查看>>
18大解读
查看>>
编写自己的内核模块
查看>>
mongo复制集认证配置备忘
查看>>
sorted()
查看>>
Java的编程规则
查看>>
我的友情链接
查看>>
java中面向对象的一点学习总结
查看>>
尝试用idb文件回复单个表
查看>>
CGI
查看>>
nginx配置http2
查看>>
project.pbxproj 文件的组织及说明
查看>>
Android 网络请求方面的资料
查看>>
ajax跨域的解决办法
查看>>
ZooKeeper管理指南
查看>>
jqGrid随浏览器缩放自适应宽度
查看>>
JavaScript函数补完:splice()数组操作
查看>>