il2cpp 질문입니다

홈 > 커뮤니티 > 질문 게시판
질문 게시판

il2cpp 질문입니다

2 아프로디테 7 6094
덤프를 하게되면
Metadata file supplied is not valid metadata file 이렇게 문구가뜹니다.
메타데이터를 제대로 넣었음에도 불구하고
메타데이터를 찾을수없다고나오는데요
이경우 보안때문에 안되는건가요??
7 Comments
M LIN 2019.11.07 22:24  
메타데이터 파일이 암호화 되어 있는지 확인해보세요.
15 g00dluck 2019.11.08 12:56  
il2cppdumper의 소스코드를 보면 이유를 빠르게 찾을수 있으꺼에요.

아래는 il2cppdumper의 소스코드 중 일부
--------------------------------------------------------------
private static bool Init(byte[] il2cppBytes, byte[] metadataBytes)
        {
            var sanity = BitConverter.ToUInt32(metadataBytes, 0);
            if (sanity != 0xFAB11BAF)
            {
                throw new Exception("ERROR: Metadata file supplied is not valid metadata file.");
            }
            float fixedMetadataVersion;
            var metadataVersion = BitConverter.ToInt32(metadataBytes, 4);
            if (metadataVersion == 24)

------------------------------------------------------------------

즉 global-metadata.dat의 magic number 인 "AF 1B B1 FA" 가 선택된 파일에서 확인이 안되어서 나온 메시지이고
린님 의견처럼 metadata 파일이 암호화 또는 다른 방법 등으로 보호되어 있기 때문이죠
M LIN 2019.11.08 13:25  

정확한 답변이십니다
2 아프로디테 2019.11.09 23:21  
우회방법이 있나요??
2 LamarLee 2019.11.09 23:39  
게임 실행중에 메모리를 보시면 복호화된 값이 저장된 부분이 있을거에요.
그 부분을 덤프해서 파일로 만들면 복구할 수 있습니다.
2 아프로디테 2019.11.08 21:07  
메타데이터가 암호화 되있는걸로 확인되엇습니다. 답변감사합니다!!
4 jmj877 2019.12.05 18:26  
소스코드는 어떻게 볼수있을까요?