FromTypeDefinition 仅在2017的引擎下才需要手动查找
本篇文章将介绍如何在IDA从寻找到该函数
查看2017的源码
可以看到这个方法 查找调用在MetadataCache.cpp中可以看到
这里可以看到一个很熟悉的全局变量 s_TypeInfoDefinitionTable
继续查找调用 发现在Init的时候进行了内存的申请
那么我们通过以上的链路就能找到FromTypeDefinition 的IDA的地址
将il2cpp 拖入IDA
搜索字符串 global-metadata.dat
先定位到MetadaCache.cpp Initialize
F5 查看一下伪代码
很明显红框部分就是我们需要找的s_TypeInfoDefinitionTable
继续右键
可以看到调用情况 前2个就是在init的初始化赋值 下面的就是在GetTypeInfoFromTypeDefinitionIndex的函数中调用 点击sub_368D6FC
得到sub_368D6FC 即为GetTypeInfoFromTypeDefinitionIndex的函数地址
然后修改 config.ts中FromTypeDefinition_Addr=0x368D6FC 即可