Il2CppDumper tutorial finding CodeRegistration and MetadataRegistration

홈 > 안드로이드 > 안드로이드 > 강좌
안드로이드

Il2CppDumper tutorial finding CodeRegistration and MetadataRegistratio…

3 nqminhquan 28 13971 2

Il2CppDumper Tutorial
Due the lack of information about how find CodeRegistration and MetadataRegistration, i'm doing this tutorial for those how didn't figure out yet how to do that, if you know how to or is Ida pro, this isn't for you.

I will use rust for this tutorial, but this may work for other unity games.

Requeriments:
1.IDA pro
2.SigMaker plugin for IDA: SigMaker
3.Unity (same version of your game, in this case 2019.2.0f1)
4.Il2CppDumper:Il2CppDumper

Steps:
1. Check the unity version of your game
2. Compile empty unity project using il2cpp method to get its .pdb
3. Open GameAssembly.dll of compiled game in IDA
4. Find il2cpp_codegen_register() function and made a Signature of it, and check in dumper.
5. Open rust GameAssembly.dll and wait IDA process it (until get idle,in left down corner)
6. Use signature from local compiled project to find CodeRegistration and MetadataRegistration.

Step 1:
Find "unity_builtin_extra" file from your game path and open as text.
https://imgur.com/a/17naBoH

This image has been resized. Click this bar to view the full image. The original image is sized 850x474.


In this case unity version is: 2019.2.0f1

Step 2:
Open unity 2019.2.0f1, go to File>Build Settings>Player Settings>Other Settings>Configuration:
Scripting Backend: IL2CPP
Api Compatibility Level: .NET 4.x
C++ Compiler Configuration: Release

https://imgur.com/a/5cWfPTc

This image has been resized. Click this bar to view the full image. The original image is sized 958x679.



Make sure pdb checkbox is checked:
https://imgur.com/IF3pc0p

This image has been resized. Click this bar to view the full image. The original image is sized 630x611.



Step 3:
Compiled GameAssembly.dll should come with .pdb file this will allow us to find il2cpp_codegen_register() function in ida.

Step 4:
In ida press (Alt+t) and look for: Il2CppCodegenRegistration()
You will find something like this>
https://imgur.com/5NstHdA 

This image has been resized. Click this bar to view the full image. The original image is sized 1159x300.



Click on Il2CppCodegenRegistration() and press (Ctrl+Alt+S) to make a signature for this function: 

Code:
  1. adding references
  2. sig: 4C 8D 05 ? ? ? ? 48 8D 15 ? ? ? ? 48 8D 0D ? ? ? ? E9 ? ? ? ?

Press (f5) on "Il2CppCodegenRegistration()" name, it will show you pointers of CodeRegistration and MetadataRegistration, first and second parameter of function>
https://imgur.com/cy3BTdM 

This image has been resized. Click this bar to view the full image. The original image is sized 742x148.



Double click on them to show the address that u need for il2cppdumper.
https://imgur.com/7Md3m7T 

This image has been resized. Click this bar to view the full image. The original image is sized 925x64.



Now make sure its all fine, use il2cppDumper option 1 with 2 values founded, if failed, use 3(auto), it will show you the right values, back to ida and try again. 

This image has been resized. Click this bar to view the full image. The original image is sized 979x512.



Step 5:
Wait ida process rust GameAssembly.dll this could that some time (hours): 

This image has been resized. Click this bar to view the full image. The original image is sized 1274x964.



Step 6:
Press (Ctrl+Alt+S) go to find ida signature option and use this signature gotten from local GameAssembly.dll: 

Code:
  1. adding references
  2. sig: 4C 8D 05 ? ? ? ? 48 8D 15 ? ? ? ? 48 8D 0D ? ? ? ? E9 ? ? ? ?

Get CodeRegistration and MetadataRegistration address and use it in il2cppDumper!!!

Finally:
1. Run IL2CPPDumper application, and navigate to where your game install is and select GameAssembly.dll
2. For the metadata location, navigate to RustClient_Data\il2cpp_data\Metadata, and select the file there
3. After this, enter the unity version (2019.2.0f1), and press 1
4. Insert both values (CodeRegistration and MetadataRegistration) found with method above. 

28 Comments
2 치터치타 2020.04.01 11:13  
정리 감사합니다
7 래바리 2020.04.03 18:22  
감사합니다.
1 레어메드 2020.05.16 18:03  
정말감사해용!!
7 임중호 2020.05.24 01:21  
진짜 감사합니다!
2 간식마렵다 2020.07.17 20:11  
감사합니다
4 쿨록 2020.08.07 19:02  
꼬불하지만 그림보고..
1 오아앙 2020.08.09 01:50  
좋은 정보 감사합니다
1 some 2020.08.16 22:23  
감사합니다
1 shape 2020.09.15 16:32  
진짜 감사합니다!
1 지보갈 2020.12.12 21:09  
감사합니다!
1 12314 2020.12.15 16:47  
감사합니다
1 깨비나리아빠 2021.01.06 06:29  
감사합니다!
1 찌주루 2021.01.07 12:48  
감사합니다. 잘배워갑니다.!
1 김뚜비 2021.03.17 07:37  
잘 정리해주셨네요 감사합니당
1 sptmxmqlf 2021.03.23 05:09  
감사합니다
1 mbt509 2021.06.09 20:05  
thank you

Congratulation! You win the 19 축하드립니다! 당첨되셨어요~!

2 공적1 2021.09.06 03:08  
감사합니다~
1 11asqqw1 2021.09.22 00:44  
감사합니다!
1 dnswlcjs 2021.11.26 07:51  
thank you for your job
1 dkdk23 2021.12.12 17:42  
감사합니다
1 disaster 2022.01.05 23:21  
감사합니다
1 morpheus 2022.01.31 01:31  
정보 감사합니다.
1 마이키 2023.04.12 14:46  
감사합니다 ㅎㅎ
1 얄리숑 2023.06.02 16:09  
감사합니다
1 1231234sad 2023.06.04 19:42  
감사합니다
2 nilpas 2023.06.20 13:22  
정말 감사합니다

Congratulation! You win the 2 축하드립니다! 당첨되셨어요~!

1 3gfsd23 2023.11.15 11:28  
85887
1 Celcious 02.20 06:36  
감사합니다
Category