首页
社区
课程
招聘
[翻译]如何dump和mod il2cpp游戏(元数据 v21-23(2017)
发表于: 2017-4-13 15:00 23941

[翻译]如何dump和mod il2cpp游戏(元数据 v21-23(2017)

2017-4-13 15:00
23941

<iframe width="560" height="315" src="https://www.youtube.com/embed/BN5UCGP_5os" frameborder="0" allowfullscreen></iframe>

视频教学by TechX Original


很多人让我做一个新的教程,所以就有了这个。我知道这个教程发布得有点迟了,但我这段时间真的比较忙。

Il2cpp dumper能正确的帮你找到要修改(mod)的函数和偏移量(offset)。


可教程仅针对有IDA修改经验的人!


IDA Pro下载链接

Notepad++下载链接

任意一款十六进制编辑器。我用的是Hex Workshop.下载链接. (你也可以在IDA中修改十六进制字符,但是对我来说,用十六进制编辑器来编写十六进制文件是最快的方法

网页版的汇编语言转换器。网址  

C#和汇编语言基础知识。你不用真的去学C#,但你要知道C#的简单代码

知道怎么用IDA Pro

Perfare’s或者 Katy's dumper. 链接在下面。

打开apk,取出下面要dump的文件:

\lib\armeabi-v7a\libil2cpp.so

\assets\bin\Data\Managed\global-metadata.dat



下载链接:https://github.com/Perfare/Il2CppDumper/releases/tag/0.3

运行il2CppDumper.exe, 这个程序会需要你选择一个ELF或者Mash-O文件。选择libil2cpp.so文件。对话框还会再出现一次,选择global-metadata.dat文件

接着程序会让你选择模式。 Manual手动(1)或者auto自动(2)。


auto模式:

自动找到需要的offsetdump这个il2cpp

按下2然后就会创建dump.cs文件。

如果你不想使用manual模式,可以跳过下面介绍manual模式的段落。


manual模式:

选择manual模式来dump il2cpp会比较复杂一点。auto模式已经告诉你offset了,但是我想g告诉你要怎样手动找到offsetdump 这个il2cpp


IDA Pro反汇编libil2cpp.so。点击Search(查找)->Sequence of bytess...(字符串)


找下面的十六进制字符:

1C 00 9F E5 20 10 9F E5 00 20 8F E0

点击OK(确定)

IDA 会跳到这个函数


但并没有看到unk offset,对不对?试一下这个方法:

loc_xxxxxxx上单击右键,选择Create Function(创建函数),你就能得到unk offset.

console app,按下1,它会要求你输入CodeRegistration(R0).输入R0,R12,R2unk offset。回车。输入MetadataRegistrationR1),回车。

Dump.cs文件就创建好了。

下载链接:https://github.com/djkaty/Il2CppInspector/releases

如果你用的是Perfare‘s Il2CppDumper, 可以跳过这一部分。



解压ZIP文件。双击并不能运行il2cppdumper.exe,所以你要用cmd'cd’il2CppInspector所在的路径,或者点击文件->打开 commandprompt. 然后输入下面的命令:


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 1
支持
分享
最新回复 (1)
雪    币: 7263
活跃值: (704)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
请问下:
1C 00 9F E5 20 10 9F E5 00 20 8F E0
搜索这个字符串的原理是什么?
2019-5-20 18:04
0
游客
登录 | 注册 方可回帖
返回
//