So I have managed to retrieve the assembly_csharp.dll using the il2cpp tool from an android apk, however my issue is that when I go to read the dll using dnSpy I have all the correct looking function names, but the body of all the functions reads like:

return null; 
return default(bool); 
return 0;

etc etc

My question is is there any way to retrieve these functions, or otherwise how can I modify this code to change the app's behaviour

  • 1
    You can't. As long as the developer use il2cpp you won't be able to retrieve source code using dnSpy. You need to reverse the native code stored in .so files.
    – morsisko
    Dec 29, 2020 at 3:00
  • The method bodies you got are empty because they are just place-holder for the real implementation in native code as morsisko already pointed out. They exists just to be able to e.g. query the method interface (parameter- and return type) at run-time.
    – Robert
    Dec 29, 2020 at 13:15

1 Answer 1


Try using IDA Pro to view the ARM code in libil2cpp.so

I watched this video -> https://youtu.be/Vm1Eq0ICCJg?t=567

Download the software -> https://androidrepublic.org/threads/how-to-mod-il2cpp-games.73533/

  • 1
    You must try to avoid to have answer that are only link-based... Try to explain a bit and have the link only to reinforce your explanation.
    – perror
    Feb 14, 2021 at 9:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.