另类的拆包方式-Steam喜+1日常
今天要尝试的拆包方式和以往不一样
![](https://img.haomeiwen.com/i5660880/2c5a2d8159f6ef6e.png)
今天用到的工具比较特殊,没错各位看题图应该已经明白了吧
没错今天用到的就是能够代替女朋友的宇宙最强IDE-Visual Studio
因为今天要拆的这款游戏太特殊了
正常的游戏在目录里都有资源包或者资源文件夹,可是当我打开这个游戏的根目录时,我惊呆了(黑人问号。jpg)
![](https://img.haomeiwen.com/i5660880/08658fc8b89ee31d.png)
只有两个文件?????
打开那个比较小的文件,看样子是存档
![](https://img.haomeiwen.com/i5660880/4b651449703cc9e0.png)
那么目标只剩下一个文件了
![](https://img.haomeiwen.com/i5660880/cf5e73072f7eb63d.png)
直觉告诉我可能是个自解压文件,gamemaker之类工具出来的游戏就是自解压文件,于是果断右键压缩软件打开
![](https://img.haomeiwen.com/i5660880/d3487587e9c496a7.png)
我的内心是崩溃的。。。所有数据都在这个正常的可执行文件里。。。
要不打开游戏直接截取内存?
![](https://img.haomeiwen.com/i5660880/eb0b7cc4540e40f5.png)
我这系统还运行不了(之后我会更一篇文章介绍我怎么成功运行这个游戏的过程:为了这个游戏,我整了个虚拟机)
突然想到VS2017可以提取exe内图片资源,那就不如试试看吧
打开exe,看样子是对了
![](https://img.haomeiwen.com/i5660880/e8451841beab5772.png)
一组组来看,先看appblock,看样子似乎是游戏默认存档
![](https://img.haomeiwen.com/i5660880/e4749d61c6f53f16.png)
对比一下,确定这就是默认存档
![](https://img.haomeiwen.com/i5660880/43071a6e2569aec0.png)
dialog有三个,似乎都不是游戏界面应有的
![](https://img.haomeiwen.com/i5660880/a93c72892dfc280a.png)
dllblock里面的文件看得出就是一个个dll文件,想不到居然还有把dll封进exe这种操作
![](https://img.haomeiwen.com/i5660880/dd664d5036df7409.png)
右键导出一个试试
![](https://img.haomeiwen.com/i5660880/4d82b591f59581a4.png)
果真是个dll文件
![](https://img.haomeiwen.com/i5660880/7af1a94e5d8028ac.png)
值得一次的是此时VS2017莫名其妙crash了
![](https://img.haomeiwen.com/i5660880/20bae76ff607b8d9.png)
eventblock里似乎是游戏地图文件
![](https://img.haomeiwen.com/i5660880/9c0972c416f0ac1f.png)
导出看看,似乎做了保护手段,先不管它,毕竟拆包一般情况不需要这个文件
![](https://img.haomeiwen.com/i5660880/6dd80d95860a2b59.png)
files里面所有文件开头都有WAVEfmt,直觉告诉我是音频文件
![](https://img.haomeiwen.com/i5660880/c55a7a12e5c19eeb.png)
导出用小丸看看,果真音频文件
![](https://img.haomeiwen.com/i5660880/c68b5373c870b84b.png)
把音频文件全导出了(VS没有批量导出好累啊)
![](https://img.haomeiwen.com/i5660880/3f8db40e1024d25d.png)
hlsl内的shader文件,没用,先不管
![](https://img.haomeiwen.com/i5660880/4d3548dfef8f2d09.png)
icon是图标,想都不用想
![](https://img.haomeiwen.com/i5660880/37320cc0942928ca.png)
imageblock里似乎是一张png
![](https://img.haomeiwen.com/i5660880/9d50174c595ac178.png)
直接导出不能识别
![](https://img.haomeiwen.com/i5660880/3db22e25cc63b3df.png)
看样子不止一张png所以不能直接打开
![](https://img.haomeiwen.com/i5660880/3f396e005ad4acae.png)
levelblock应该就是关卡具体数据了,用不到,先不管
![](https://img.haomeiwen.com/i5660880/f1454305efbc0e7f.png)
menu里一些本不应该出现在游戏里的菜单
![](https://img.haomeiwen.com/i5660880/044e9d6b6a750b17.png)
menublock,空文件?????
![](https://img.haomeiwen.com/i5660880/f6a0fbbba446b178.png)
manifest文件,和安卓一样都是xml
![](https://img.haomeiwen.com/i5660880/fedf9c7b0909fa6f.png)
导出来看也没什么特殊,不过没限制语言按照道理中文系统也可以跑啊,比较迷
![](https://img.haomeiwen.com/i5660880/a5a64e711e5fda1e.png)
stringtable也是空的
![](https://img.haomeiwen.com/i5660880/03ae1bcc430c8be7.png)
到此为止,音乐资源出来了,图像资源需要二次处理,dll出来了,拆包所需的结果已经全部到手
写这篇文章一方面是记录自己的拆包过程,另一方面是提醒各位游戏拆包爱好者,在找不到可用方法时可以找找偏方,比如VS拆包就是个偏方
另外对于不确定格式的资源,可以分析文件头部信息判断
预告:下一篇文章:为了这款游戏,我装了个虚拟机
点一下喜欢好不好嘛