吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 36162|回复: 30
收起左侧

[Android Tools] il2cpp反编译工具il2cppdumper

  [复制链接]
CrazyNut 发表于 2018-11-7 10:13
本帖最后由 CrazyNut 于 2020-5-17 08:46 编辑

新版本请前往 Github 下载 : https://github.com/Perfare/Il2CppDumper

Usage
Run Il2CppDumper.exe and choose the main il2cpp executable (in ELF, Mach-O or PE format) and global-metadata.dat file, then select the extraction mode. The program will then generate all the output files in current working directory.

看不懂使用教程的戳:https://www.52pojie.cn/thread-814250-1-1.html

Il2CppDumper.rar (171.74 KB, 下载次数: 1972)

免费评分

参与人数 6吾爱币 +9 热心值 +4 收起 理由
nulla2011 + 1 我很赞同!
千百度° + 1 用心讨论,共获提升!
昕欣鑫 + 1 谢谢@Thanks!
stars-one + 1 + 1 我很赞同!
Hmily + 5 + 1 鼓励转贴优秀软件安全工具和文档!
基裏連科 + 1 + 1 热心回复!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

艾莉希雅 发表于 2018-11-7 11:16

Il2CppDumper

Build status
从il2cpp中获取types, methods, fields等等数据
基础逻辑代码来源于Il2CppDumper  

功能

  • 支持ELF(arm, x86), ELF64(aarch64), Mach-O(32bit, 64bit), PE(x86, x86_64)
  • 支持Metadata版本16, 20, 21, 22, 23, 24
  • 导出包括types, fields, properties, methods, attributes
  • 自动生成IDA脚本(重命名methodName,添加stringLiteral注释和MakeFunction)
  • 生成DummyDll

使用说明

运行Il2CppDumper.exe并依次选择il2cpp的可执行文件(ELF,Mach-O或者PE文件)和global-metadata.dat文件,然后选择运行的模式,将在程序运行目录下生成dump.cs文件和script.py脚本

关于模式

Manual

你需要手动输入CodeRegistrationMetadataRegistration的指针地址,一般需要依靠反汇编工具来获取地址

Auto

原理是通过函数的特征字节找到il2cpp_codegen_register函数并获取传入il2cpp::vm::MetadataCache::Register中的参数1(CodeRegistration)和参数2(MetadataRegistration)。不过由于不同编译器优化差异,很多情况下无法正常工作。

Auto(Advanced)

支持Metadata 20及以后的版本,在16版本下只能获取到CodeRegistration地址,利用指针特征进行搜索,通用性比Auto强。

Auto(Plus) - 优先使用此模式

支持Metadata 20及以后的版本,在16版本下只能获取到CodeRegistration地址,以metadata的数据作为依据,指针特征作为判读条件进行搜索,对于某些文件处理的比Auto(Advanced)好。

Auto(Symbol)

目前只支持ELF,使用自带的符号进行处理。

关于dump.cs

文本文件,推荐使用有c#语法高亮的编辑器打开

关于script.py

需要安装IDA所需的python。在IDA中File-Script file选择script.py运行即可,会重命名methodName,添加stringLiteral注释和MakeFunction

关于DummyDll

利用Mono.Cecil生成的仿制Dll,使用反编译工具进行查看  

关于config.json

DumpMethodDumpFieldDumpPropertyDumpAttributeDumpFieldOffset
控制程序是否在dump.cs输出相应的内容  

DummyDll
控制程序是否生成DummyDll  

ForceIl2CppVersionForceVersion
当ForceIl2CppVersion为true时,程序将根据ForceVersion指定的版本读取il2cpp的可执行文件(Metadata仍然使用header里的版本),在部分低版本的il2cpp中可能会用到(比如安卓20版本下,你可能需要设置ForceVersion为16程序才能正常工作)  

常见问题

ERROR: Metadata file supplied is not valid metadata file.

你所选择的global-metadata.dat不是一个有效的metadata文件,通常是因为游戏加密了global-metadata.dat文件。关于解密的问题最好去相关破解论坛寻求帮助,请不要在issues提问!  

ERROR: Can't use this mode to process file, try another mode.

当所有自动模式都无法工作时,你可以打开一个新的issue,并上传文件,我会尝试解决

WARNING: Version 16 can only get CodeRegistration

使用显示的CodeRegistration位置去得到MetadataRegistration的位置,然后使用Manual模式处理文件

免费评分

参与人数 2吾爱币 +4 热心值 +2 收起 理由
Hmily + 3 + 1 鼓励转贴优秀软件安全工具和文档!
CrazyNut + 1 + 1 膜拜大佬

查看全部评分

jamesr2017 发表于 2018-11-7 10:46
chengtao 发表于 2018-11-7 16:47
zz0147 发表于 2018-11-8 08:19
thinks
Unfortunately, this program cannot run the Windows XP system.
_pan 发表于 2018-11-8 09:34
谢谢分享和转载文档
慕文Dam 发表于 2018-11-13 18:28
感谢分享,但是我这边第一次就遇到解不了的包
除了第一个手动模式外,其他模式出现第二个常见问题的提示
9E4PG`B8B5ZYWC5D`[@ITK0.png
个人怀疑是加密了,但是不知道怎么去弄,也没找到过相关解密破解的教程
PS:文件有点大,我新人上传不上来,如果大佬有空有兴趣帮忙的话麻烦加一下我的QQ414110489,感激不尽
慕文Dam 发表于 2018-11-14 10:58
我这边看了下,好像是global-metadata.dat的问题,请问这个文件一般会有哪些加密方式?
kakaon1 发表于 2018-11-18 09:43
Thank you!
offerloves 发表于 2018-11-21 10:15
谢谢分享,正想找修改工具呢。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-23 05:18

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表