精华内容
下载资源
问答
  • IL2cppDumper version 6.2.3
  • Il2CppDumper

    2019-01-11 16:23:25
    对于U3D游戏的神器,大家应该都用过,这个是高级版本,使用起来也比较方便,还自带脚本编辑。
  • Il2CppDumper-v6.6.5.zip

    2021-09-26 11:01:06
    IL2CppDumper
  • Il2CppDumper 中文说明请戳 Unity il2cpp逆向工程师 产品特点 完整的DLL还原(代码除外),可用于提取MonoBehaviour和MonoScript 支持ELF,ELF64,Mach-O,PE,NSO和WASM格式 支持Unity 5.3-2020 支持生成IDA和...
  • Il2CppDumper-v6.4.15.zip

    2020-12-04 14:57:50
    ## 功能 * 还原DLL文件(不包含代码),可用于提取`...* 生成IDA和Ghidra的脚本,帮助IDA和Ghidra更好的分析il2cpp文件 * 生成结构体头文件 * 支持从内存dump的`libil2cpp.so`文件以绕过保护 * 支持绕过简单的PE保护
  • Riru-Il2CppDumper-master.zip

    2021-01-08 09:08:52
    Riru版Il2CppDumper,在游戏运行时dump数据,用于绕过保护,加密以及混淆。
  • Il2CppDumper_v4.5.8.2.zip

    2019-06-06 10:56:45
    Il2CppDumper可用于Unity加密资源逆向破解
  • Il2CppDumper.exe。此可读取global-metadata.dat文件中的信息,并与libil2cpp.so结合起来 把apk中的libil2cpp.so,global-metadata.dat跟程序放在一起 双击运行,可以选择Manual模式需要手动输入两个参数的offset ...
  • Il2CppDumper 最新版本v6.4.12, 包含源码, 可执行程序, C#源码 Unity il2cpp逆向工程 功能 还原DLL文件(不包含代码),可用于提取MonoBehaviour和MonoScript 支持ELF, ELF64, Mach-O, PE, NSO和WASM格式 支持Unity...
  • Il2CppDumper-v6.3.3

    2020-11-02 20:11:02
    Il2CppDumper(Il2Cpp数据提取助手)是一款非常方便实用的Il2Cpp提取辅助工具。这款Il2CppDumper软件功能强大全面,简单易用,支持从il2cpp获取types, methods, fields等等数据。除了支持NSO格式的交换机外,最重要的...
  • Il2CppDumper-netcore-v6.4.19

    2021-01-08 08:48:26
    Unity il2cpp逆向工程 还原DLL文件(不包含代码),可用于提取MonoBehaviour和MonoScript 支持ELF, ELF64, Mach-O, PE, NSO和WASM格式 支持Unity 5.3 - 2020 生成IDA和Ghidra的脚本,帮助IDA和Ghidra更好的分析il2...
  • Il2CppDumper-v6.4.19.zip

    2021-01-01 11:09:36
    Il2CppDumper-v6.4.19.zip
  • Il2CppDumper-4.5.11.zip

    2020-04-08 19:57:44
    il2cpp
  • Il2CppDumper-v4.6.1.zip

    2020-05-14 10:39:41
    Il2CppDumper-v4.6.1,方便找不到下载地址的朋友,从官方搬运过来的 .
  • Il2CppDumper-v3.5.0

    2019-01-18 11:28:14
    l2CppDumper 是一个针对unity l2cpp包的反编译工具!这里更新3.5.0版本!更新日期2019年1月10日!
  • 文章目录一、前言二、下载IL2CppDumper三、Unity Demo工程四、IL2CPP打包五、拿到libil2cpp.so与global-metadata.dat六、执行Il2CppDumper.exe七、查看反编译后的文件1、dump.cs2、il2cpp.h3、script.json4、string...

    一、前言

    点关注不迷路,持续输出Unity干货文章。
    嗨,大家好,我是新发。
    Unity使用Mono方式打出来的apk,我们可以直接从包内拿到Assembly-CSharp.dll,如果开发者没有对Assembly-CSharp.dll进行加密处理,那么我们可以很方便地使用ILSpy.exe对其进行反编译。
    如果使用IL2CPP方式出包,则没有Assembly-CSharp.dll,不过,有一个IL2CppDumper工具,通过它,我们可以逆向得到Assembly-CSharp.dll,下面就教大家如何使用这个IL2CppDumper吧。

    二、下载IL2CppDumper

    IL2CppDumper是一个开源工具,在GitHub上可以直接下载到。
    地址:https://github.com/Perfare/Il2CppDumper
    点击右边的Releases下面的版本进行下载即可。
    在这里插入图片描述
    在这里插入图片描述
    下载后解压,文件如下,可以看到Il2CppDumper.exe
    在这里插入图片描述

    三、Unity Demo工程

    为了进行测试,我们创建个Unity Demo工程,创建两个脚本,如下:
    在这里插入图片描述
    Main.cs脚本:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class Main : MonoBehaviour
    {
        enum TEST_ENUM
        {
            E1,
            E2,
            E3
        }
    
        public int test_int = 0;
        protected float test_float = 0.0f;
        private string test_string = "hello world";
        public int[] test_int_array;
        protected List<string> test_string_list;
        private TEST_ENUM test_enum;
        private Hello hello = new Hello();
    
        private void Awake()
        {
            Init();
        }
    
        private void Init()
        {
            test_int = 1;
            test_float = 2.0f;
            test_int_array = new int[3] { 4, 5, 6 };
            test_string_list = new List<string>() { "il2cpp", "test" };
            test_enum = TEST_ENUM.E2;
        }
    
        private void Start()
        {
            hello.SayHello();
            test_string = "Hi, I am linxinfa";
            hello.Say(test_string);
    
            StartCoroutine(TestCoroutine());
        }
    
        private IEnumerator TestCoroutine()
        {
            for (int i = 0; i < 100; ++i)
            {
                ++test_int;
                Debug.Log("TestCoroutine, test_int: " + test_int);
                yield return new WaitForSeconds(1);
            }
        }
    }
    

    Hello.cs脚本

    using UnityEngine;
    
    public class Hello 
    {
        public void SayHello()
        {
            Debug.Log("Hello, IL2CPP");
        }
    
        public void Say(string text)
        {
            Debug.Log(text);
        }
    }
    

    四、IL2CPP打包

    使用IL2CPP方式,打出apk包。
    在这里插入图片描述
    打出的apk如下。
    在这里插入图片描述

    五、拿到libil2cpp.so与global-metadata.dat

    test.apk改为test.zip,解压进入目录中,拿到libil2cpp.soglobal-metadata.dat
    \lib\armeabi-v7a\libil2cpp.so
    \assets\bin\Data\Managed\Metadata\global-metadata.dat
    在这里插入图片描述

    六、执行Il2CppDumper.exe

    回到Il2CppDumper.exe所在的目录,创建input目录和output目录。
    在这里插入图片描述
    libil2cpp.soglobal-metadata.dat拷贝到input目录中。
    在这里插入图片描述
    创建一个il2cpp_decompilation.bat文件。
    在这里插入图片描述
    il2cpp_decompilation.bat文件内容如下:

    ..\Il2CppDumper.exe libil2cpp.so global-metadata.dat ..\output
    

    双击执行il2cpp_decompilation.bat,如下:
    在这里插入图片描述
    进入output目录,可以看到生成了如下文件:
    在这里插入图片描述

    七、查看反编译后的文件

    1、dump.cs

    这个文件会把C#dll代码的类、方法、字段列出来。比如我们写的Main.csHello.cs

    // Namespace: 
    public class Hello // TypeDefIndex: 1414
    {
    	// Methods
    
    	// RVA: 0x39CB58 Offset: 0x39CB58 VA: 0x39CB58
    	public void .ctor() { }
    
    	// RVA: 0x39CB60 Offset: 0x39CB60 VA: 0x39CB60
    	public void SayHello() { }
    
    	// RVA: 0x39CBF0 Offset: 0x39CBF0 VA: 0x39CBF0
    	public void Say(string text) { }
    }
    
    // Namespace: 
    public class Main : MonoBehaviour // TypeDefIndex: 1415
    {
    	// Fields
    	public int test_int; // 0xC
    	protected float test_float; // 0x10
    	private string test_string; // 0x14
    	public int[] test_int_array; // 0x18
    	protected List<string> test_string_list; // 0x1C
    	private Main.TEST_ENUM test_enum; // 0x20
    	private Hello hello; // 0x24
    
    	// Methods
    
    	// RVA: 0x39CC78 Offset: 0x39CC78 VA: 0x39CC78
    	public void .ctor() { }
    
    	// RVA: 0x39CD08 Offset: 0x39CD08 VA: 0x39CD08
    	private void Awake() { }
    
    	// RVA: 0x39CD0C Offset: 0x39CD0C VA: 0x39CD0C
    	private void Init() { }
    
    	// RVA: 0x39CE7C Offset: 0x39CE7C VA: 0x39CE7C
    	private void Start() { }
    
    	[DebuggerHiddenAttribute] // RVA: 0x348B00 Offset: 0x348B00 VA: 0x348B00
    	// RVA: 0x39CF20 Offset: 0x39CF20 VA: 0x39CF20
    	private IEnumerator TestCoroutine() { }
    }
    

    2、il2cpp.h

    生成的cpp的头文件,从头文件里我们也可以看到相关的数据结构。

    struct Hello_Fields {
    };
    
    
    struct Main_Fields : UnityEngine_MonoBehaviour_Fields {
    	int32_t test_int;
    	float test_float;
    	struct System_String_o* test_string;
    	struct System_Int32_array* test_int_array;
    	struct System_Collections_Generic_List_string__o* test_string_list;
    	int32_t test_enum;
    	struct Hello_o* hello;
    };
    

    3、script.json

    json格式显示类的方法信息:

    {
      "Address": 3787608,
      "Name": "Hello$$.ctor",
      "Signature": "void Hello___ctor (Hello_o* __this, const MethodInfo* method);"
    },
    {
      "Address": 3787616,
      "Name": "Hello$$SayHello",
      "Signature": "void Hello__SayHello (Hello_o* __this, const MethodInfo* method);"
    },
    {
      "Address": 3787760,
      "Name": "Hello$$Say",
      "Signature": "void Hello__Say (Hello_o* __this, System_String_o* text, const MethodInfo* method);"
    },
    {
      "Address": 3787896,
      "Name": "Main$$.ctor",
      "Signature": "void Main___ctor (Main_o* __this, const MethodInfo* method);"
    },
    {
      "Address": 3788040,
      "Name": "Main$$Awake",
      "Signature": "void Main__Awake (Main_o* __this, const MethodInfo* method);"
    },
    {
      "Address": 3788044,
      "Name": "Main$$Init",
      "Signature": "void Main__Init (Main_o* __this, const MethodInfo* method);"
    },
    {
      "Address": 3788412,
      "Name": "Main$$Start",
      "Signature": "void Main__Start (Main_o* __this, const MethodInfo* method);"
    },
    {
      "Address": 3788576,
      "Name": "Main$$TestCoroutine",
      "Signature": "System_Collections_IEnumerator_o* Main__TestCoroutine (Main_o* __this, const MethodInfo* method);"
    },
    

    4、stringliteral.json

    json的格式显示所有的字符串信息:

    {
      "value": "Hello, IL2CPP",
      "address": "0x52A0AC"
    },
    {
      "value": "hello world",
      "address": "0x52A0B0"
    },
    {
      "value": "il2cpp",
      "address": "0x52A0B4"
    },
    {
      "value": "test",
      "address": "0x52A0B8"
    },
    {
      "value": "Hi, I am linxinfa",
      "address": "0x52A0BC"
    },
    {
      "value": "TestCoroutine, test_int: ",
      "address": "0x52A0C0"
    },
    

    5、DummyDll/Assembly-CSharp.dll

    进入DummyDll目录,可以看到很多dll,其中就有Assembly-CSharp.dll,我们可以使用ILSpy.exe对其进行反编译。
    可以看到,与刚刚的dump.cs文件内容是一致的。
    在这里插入图片描述
    在这里插入图片描述

    八、拓展:使用IDA逆向il2cpp.so,得到函数体内部逻辑

    从上面IL2CppDumper我们可以发现,逆向得到的函数体都是空的,看不了内部逻辑。有没有办法可以逆向得到函数体内部逻辑呢?
    有,需要借助另一个反编译神器:IDA,全称交互式反汇编器(Interactive Disassembler)。
    在这里插入图片描述在这里插入图片描述
    关于IDA的使用,我之前写过一篇文章:《新发的日常学习——IDA的入门使用,反编译so/dll文件(反编译神器)》,感兴趣的同学可以看看。

    IDA下载链接:https://pan.baidu.com/s/1NATDYzomBYiwrwdH6qBjUA
    提取码:2dmy
    IDA官网:https://www.hex-rays.com/

    IDA32位的和64位两个exe,要根据你反编译的文件运行对应的exe
    Unity使用IL2CPP打包时,选择的CPU架构可以选择ARMv7ARM64,由于我上面拿的libil2cpp.soarmeabi-v7a的,也就是32位的,所以我运行的32位IDA
    IDA中载入libil2cpp.so,耐心等待它的解析。
    假设我们要查看Main脚本的Awake方法的函数体,我们从刚刚的dump.cs可以看到对应的函数地址:

    // RVA: 0x39CD08 Offset: 0x39CD08 VA: 0x39CD08
    private void Awake() { }
    

    地址是:0x39CD08,我们在IDA中按G键,输入地址:0x39CD08,点击OK
    在这里插入图片描述
    可以看到跳过来是这样的,这里对应的是汇编代码,这个sub_39CD08就是我们的Awake函数。
    在这里插入图片描述
    源代码中,Awake函数中调用了Init函数:

    private void Awake()
    {
        Init();
    }
    

    而在dump.cs中我们可以看到Init的函数地址是0x39CD0C:

    // RVA: 0x39CD0C Offset: 0x39CD0C VA: 0x39CD0C
    private void Init() { }
    

    我们再回过头看IDA,我们就可以对应起来了。
    在这里插入图片描述
    我们可以直接按F5将汇编转成对应的c代码,这个sub_39CD08就是Awake函数,可以看到,这里代码被优化了,Awake函数内部实际上就是Init中的内容,不过看起来也是挺晦涩难懂的,感兴趣的同学可以深入研究研究。

    signed int __fastcall sub_39CD08(_DWORD *a1)
    {
      _DWORD *v1; // r4
      int v2; // r5
      int v3; // r5
      int v4; // r5
      int v5; // r0
      int v6; // r0
      signed int result; // r0
    
      v1 = a1;
      if ( !byte_52A52B )
      {
        sub_39688C(&elf_hash_chain[89]);
        byte_52A52B = 1;
      }
      v1[3] = 1;
      v1[4] = 0x40000000;
      v2 = dword_524724;
      sub_38CFC4(dword_524724);
      v3 = il2cpp_array_new_specific_0(v2, 3);
      sub_773C4(0, v3, dword_5277E8, 0);
      v1[6] = v3;
      v4 = sub_3CCA3C(dword_524EF4);
      v5 = sub_303278(v4, dword_5262D8);
      if ( v4 )
      {
        sub_304144(v4, dword_52A0B4, dword_5262E0);
      }
      else
      {
        ((void (__fastcall *)(int))loc_3BF764)(v5);
        v6 = sub_304144(0, dword_52A0B4, dword_5262E0);
        ((void (__fastcall *)(int))loc_3BF764)(v6);
      }
      sub_304144(v4, dword_52A0B8, dword_5262E0);
      result = 1;
      v1[7] = v4;
      v1[8] = 1;
      return result;
    }
    

    九、拓展补充:IL2CppDumper原理

    il2cpp将游戏 C#代码转换为C++代码,然后编译为各平台Native代码。
    在这里插入图片描述

    虽然游戏逻辑是以Native代码运行, 但依然要实现 C#某些语言特性(如GC、反射),il2cpp将所有的 C#中的类名、方法名、属性名、字符串等地址信息记录在 global-metadata.dat文件。il2cpp启动时会从这个文件读取所需要的类名、方法名、属性名、字符串等地址信息。
    在这里插入图片描述
    我们可以在Unity安装目录的Editor目录中找到il2cpp虚拟机的源码:vm目录。
    在这里插入图片描述
    在里面的GlobalMetadata.cpp中,就可以看到加载global-metadata.dat文件的逻辑。

    注:如果开发者对global-metadata.dat文件做了加密,那么在GlobalMetadata.cpp中加载global-metadata.dat前需要实现对应的解密逻辑。

    在这里插入图片描述
    IL2CppDumper正是利用global-metadata.dat文件进行逆向的。

    global-metadata.dat文件是一个二进制文件,是按照一定的数据结构进行写入的。
    我们可以下载个010Editor查看global-metadata.dat文件。
    010Editor下载地址:https://www.sweetscape.com/download/010editor/
    在这里插入图片描述

    运行010Editor,将global-metadata.dat文件拖入010Editor中,我们可以看到前四个字节是AF 1B B1 FA
    在这里插入图片描述
    AF 1B B1 FAglobal-metadata.dat文件的标识,如果你去看IL2CppDumper源码,你就会看到这个标识的判断:

    注意,IL2CppDumper是使用C#写的,C#windows平台上是小端字节序,即数据的高字节保存在内存的高地址中,我们上面使用010Editor看二进制文件的时候,从左到右地址是升高的,所以上面的AF 1B B1 FA对应到C#代码中就是0xFAB11BAF,不要搞反了哦。

    在这里插入图片描述
    我们这样看global-metadata.dat文件是看不出啥东西的,我们需要告诉010Editor如何解析这个global-metadata.dat文件。
    这个时候,就需要下载UnityMetadata.bt模板文件了。
    UnityMetadata.bt模板文件下载:https://www.sweetscape.com/010editor/repository/files/UnityMetadata.bt
    下载完之后,在010Editor中点击菜单Templates / Open Template...,选择刚刚下载的UnityMetadata.bt
    在这里插入图片描述
    然后点击这个三角形按钮运行模板。
    在这里插入图片描述
    运行成功,可以看到global-metadata.dat解析出数据来了。
    在这里插入图片描述
    不过我们光从global-metadata.dat是看不出具体的字符串的,需要依赖libil2cpp.so进行寻址才行。

    我们可以在IL2CppDumper源码中看到执行Dump方法需要传入metadatail2Cpp
    在这里插入图片描述
    因为libil2cpp.soUNIX派系的二进制文件,所以它的前4个字节是7F 45 4C 46,对应到C#小端的十六进制表达就是0x464c457f
    在这里插入图片描述
    我们可以在Init方法中看到读取libil2cpp.so的逻辑,
    在这里插入图片描述
    再往里走,就是Elf格式文件的解析了,这里就不展开了。执行完Dump即可生成逆向文件了。
    感兴趣的同学可以继续深入研究下。

    十、结束语

    完毕。
    喜欢Unity的同学,不要忘记点击关注,如果有什么Unity相关的技术难题,也欢迎留言或私信~

    展开全文
  • 所以花了一点时间,找了一波Mac下用到的最难找的,也是最关键的 Il2CppDumper 工具, Il2CppDumper For Mac / Linux6.2.1 在github上看了作者在 issues上的回复,说暂时没有mac版本,然后果断翻墙找了一番,在一个...

       之前研究的unity3d游戏,对il2cpp游戏进行修改,主要环境在windows上(没装双系统,直接用Mac的PD),由于常年Mac系统习惯,所以不想研究点东西就要开虚拟window。      
          所以花了一点时间,找了一波Mac下用到的最难找的,也是最关键的 Il2CppDumper 工具,
       
        Il2CppDumper For Mac / Linux  6.2.1
          在github上看了作者在 issues上的回复,说暂时没有mac版本,然后果断翻墙找了一番,在一个做手游mod的网站看到有大神将Il2CppDumper 工具做了移植,可以在linux和mac下命令行使用,且安装.net 后可以自行编译UI界面。
          
          工具较大,这里给出网盘地址,(60.58MB) 链接: https://pan.baidu.com/s/1iEgjX6hOtpAoVgc6-3bpng  密码: 82qj
          
          1. 解压后如下图,路径:/Users/himi/Desktop/Il2CppDumper6.2.1/osx-x64           

        如果你是Linux 系统,就选择对应 linux-x64 即可。
          
       2. 打开终端(命令行),执行如下三行命令:
             
             chmod -R 777 /Users/himi/Desktop/Il2CppDumper6.2.1/osx-x64   
             //上面这行意思是让我们的 Il2CppDumper 拥有执行权限(此步骤只需要第一次执行即可)


             cd /Users/himi/Desktop/Il2CppDumper6.2.1/osx-x64
         //上面这一行是将目录定位到我们的 Il2CppDumper 根目录


            ./Il2CppDumper /Users/himi/Desktop/hhas/libil2cpp.so /Users/himi/Desktop/hhas/global-metadata.dat
        //上面这一行,执行 Il2CppDumper 工具,两个参数,第一个是 我们的 libil2cpp.so 文件夹的路径,第二个是 global-metadata.dat文件路径

            下面放出,效果图:  

     

    展开全文
  • GitHub - Perfare/Il2CppDumper: Unity il2cpp reverse engineer 解密出来的内容如下: 一般情况下,在 /DummyDll/ 下的dll文件用dnSpy 打开后,都能看到函数体,然后继续分析,但今天这个样本,解出来的dll 打开...

    今天分析一个网赚类的样本,业务方要我搞清楚为什么每次完成任务出现红包时,总会随之弹出一个插屏广告。

    大概就是下图这样,说实话,弹几层广告确实挺恶心,关起来都麻烦

     

    先在测试机装上应用,发现有root检测,试过几个通用的过root检测的frida脚本,发现不行

     

    看了下代码,是网易的壳

     

    正好,最近在看Ratel,刚好来练练手,试试在非root环境下Ratel的脱壳怎么样

    Ratel用起来没frida那么随意,有兴趣大家去他的github看看:virjarRatel · GitHub

    Ratel大概脱壳步骤:

    1 装上Ratal

    2 装上目标应用

    3 感染应用

    4 写脱壳插件

    5 应用跑起来,就开始脱壳了

    下面是脱壳代码,在主框架入口调一下entry就行

    public class Unpack {
        public static final String tag = "RATEL-YOOHA";
    
        public static void entry(RC_LoadPackage.LoadPackageParam lpparam) {
    
            // TODO 抽取壳要把这个选项打开
            //UnPackerToolKit.autoEnable(true);
    
            UnPackerToolKit.unpack(new UnPackerToolKit.UnpackEvent() {
                @Override
                public void onFinish(File file) {
                    try {
                        FileUtils.copyFile(file, new File("/sdcard/crack.apk")); 
                        Log.i(tag, "unpacked over");
                    } catch (IOException e) {
                        Log.e(tag, "unpacked error", e);
                        e.printStackTrace();
                    }
                }
            });
        }
    }

    跑起来后,壳果然脱了,效果还行

     

    先看看代码,发现有个函数非常可以

     

    严重怀疑就是他干的坏事,怎么办,hook他呗,试试Ratel的hook好不好使

     

    Ratel写代码跟xposed差不多,记住一点就行,把类开头的X改成R。结果果然没让我失望,就是这个函数干的

     

    从调用栈来看,这个函数是被Native调用的,看了下框架Unity + libil2cpp.so ,这个框架下,需要用到一个开源工具来解密Il2CppDumper,解密方法大家可以去github看,顺便给他个星星:GitHub - Perfare/Il2CppDumper: Unity il2cpp reverse engineer

    解密出来的内容如下:

     

     

    一般情况下,在 /DummyDll/ 下的dll文件用dnSpy 打开后,都能看到函数体,然后继续分析,但今天这个样本,解出来的dll 打开函数都是空的

     

    好吧,那只能看 libil2cpp.so 的代码了,上图中Address 的偏移就是这个函数在so文件中的偏移,首先我们需要先跑一下脚本,将这个符号和结构体等信息先载入IDA,具体方法:

    1 IDA先打开libil2cpp.so

    2 加载 ida_with_struct.py 脚本(该脚本在你下载的)Il2CppDumper工具包里面

     3 加载 script.json (解密出来的文件里面)

     4 加载 il2cpp.h 文件 (解密出来的文件里面)

     5  漫长的等待

     看到这个就加载完了:

     

    OK,开始干活,既然确认是调用Java函数showImageInterstitialAd,那么so中肯定会用到字符串“showImageInterstitialAd”,先到解密出来的 stringliteral.json 文件中找该字符串

     

    然后在IDA中 跳转到这个地址,看到一个变量,先改个名字,防止跟丢了

     

    对变量查找引用,找到调用他的地方,AndroidJavaObject_CallStatic, 这个函数会根据传进来的字符串函数名反射调用java函数

     

    接着再查找引用

     

    再查,找到了,这个红包物体被激活时,会调用OnEnable函数,在该函数中,会调用ShowinterAd来弹出插屏广告,也就是说,出现这个过关红包就会弹一次插屏,也真够烦的

     

    OK,先到这吧

    展开全文
  • Il2CppDumper 是一个针对unity l2cpp包的反编译工具 github地址:https://github.com/Perfare/Il2CppDumper 使用方法,这个博客的作者写的非常详细 https://www.perfare.net/659.html ILSpy 是一个用来查看dll...

    Il2CppDumper 是一个针对unity l2cpp包的反编译工具

    github地址:https://github.com/Perfare/Il2CppDumper

    使用方法,这个博客的作者写的非常详细
    https://www.perfare.net/659.html

    ILSpy 是一个用来查看dll内容的工具,现在这个东东有中文版了
    http://www.fishlee.net/soft/ilspy_chs/

    展开全文
  • Il2CppDumper_v4.6.0.rar

    2021-04-21 19:22:29
    Il2CppDumper_v4.6.0
  • Il2CppDumper对于U3D游戏是反编译神器,这个是高级版本,使用起来也比较方便,还自带脚本编辑,运行Il2CppDumper.exe开始用il2cpp反编译工具 提取目标app的两个文件。反编译操作说明:双击运行Il2CppDumper.exe,...
  • Il2CppDumper 中文说明请戳这里 Unity il2cpp reverse engineer Features Complete DLL restore (except code), can be used to extract MonoBehaviour and MonoScript Supports ELF, ELF64, Mach-O, PE, NSO ...
  • Il2CppDumper-v4.2.3

    2019-03-13 12:08:39
    最新的li2Cpp。把libil2cpp.so,global-metadata.dat跟程序放在一起,双击运行,可以选择Manual模式需要手动输入两个参数的offset。
  • Il2CppDumper-v3.4.0

    2018-12-30 16:20:02
    Il2CppDumper 是一个针对unity l2cpp包的反编译工具!
  • 教你使用IL2CppDumper从Unity il2cpp的二进制文件中获取类型、方法、字段等(反编译) 一、前言 点关注不迷路,持续输出Unity干货文章。 嗨,大家好,我是新发。 Unity使用Mono方式打出来的apk,我们可以直接从包内...
  • 随着unity技术的发展及厂商对于脚本源码的保护,很大一部分U3D应用的scripting backend已经由mono转为了il2cpp,本文从unity简单应用的制作讲起,介绍U3D应用脚本的Assembly-CSharp.dll的逆向及il2cpp.so的逆向分析...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 132
精华内容 52
关键字:

il2cppdumper