il2cpp 원리를 혹시 아시나요? (조금 깊은 지식을 요구하는 질문입니다)
il2cpprev
3
4487
2020.09.25 00:02
C#으로 작성되어 Intermediate Language로 컴파일된 후에 IL이 asm으로 변환되어 libil2cpp.so이 되는 것 같은데
global metadata.dat는 어디에 쓰이기 때문에 있는 것이고, (문자열의 용도 외에 심볼은 왜 남겨두는지)
libil2cpp.so로부터 어떻게 다시 IL을 추출하고 그걸로 Assembly_Csharp.dll같은게 나오고 cs 파일로 디컴파일이 가능한지 혹시 아시는 분 계신가요?
그리고 Assembly_Csharp.dll은 DLL이면 PE 포맷인가요? 어떻게 PE포맷 파일이 나올 수 있나요? (만약 libil2cpp.so의 rsrc에 dll이 있는거라면 그 dll은 pe라 크로스플랫폼이 아닐텐데 그렇게 되어있을 것 같지는 않구요)
global metadata.dat는 어디에 쓰이기 때문에 있는 것이고, (문자열의 용도 외에 심볼은 왜 남겨두는지)
libil2cpp.so로부터 어떻게 다시 IL을 추출하고 그걸로 Assembly_Csharp.dll같은게 나오고 cs 파일로 디컴파일이 가능한지 혹시 아시는 분 계신가요?
그리고 Assembly_Csharp.dll은 DLL이면 PE 포맷인가요? 어떻게 PE포맷 파일이 나올 수 있나요? (만약 libil2cpp.so의 rsrc에 dll이 있는거라면 그 dll은 pe라 크로스플랫폼이 아닐텐데 그렇게 되어있을 것 같지는 않구요)