<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模式:
自动找到需要的offset来dump这个il2cpp。
按下2然后就会创建dump.cs文件。
如果你不想使用manual模式,可以跳过下面介绍manual模式的段落。
manual模式:
选择manual模式来dump il2cpp会比较复杂一点。auto模式已经告诉你offset了,但是我想g告诉你要怎样手动找到offset来dump 这个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,R2的unk offset。回车。输入MetadataRegistration(R1),回车。
Dump.cs文件就创建好了。
下载链接:https://github.com/djkaty/Il2CppInspector/releases
如果你用的是Perfare‘s Il2CppDumper, 可以跳过这一部分。
解压ZIP文件。双击并不能运行il2cppdumper.exe,所以你要用cmd,'cd’到il2CppInspector所在的路径,或者点击文件->打开 commandprompt. 然后输入下面的命令:
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)