Perfare / Il2CppDumper

Unity il2cpp reverse engineer
MIT License
6.94k stars 1.37k forks source link

Il2cppdumper stopped working on Standoff 2 #781

Open zolotov0 opened 6 months ago

zolotov0 commented 6 months ago

I always get an error. Apparently the developers broke the metadata (did not encrypt it), the dumper doesn't even get to the point of initializing il2cpp. il2cpp & metadata.zip

Initializing metadata...
System.IO.EndOfStreamException: Reading past the end of the stream is not possible.
   in System.IO.__Error.EndOfFile()
   in System.IO.BinaryReader.FillBuffer(Int32 numBytes)
   in System.IO.BinaryReader.ReadUInt32()
   in Il2CppDumper.BinaryStream.ReadUInt32() in C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\IO\BinaryStream.cs:line 46
   in Il2CppDumper.BinaryStream.ReadPrimitive(Type type) in C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\IO\BinaryStream.cs:line 100
   in Il2CppDumper.BinaryStream.ReadClass[T]() in C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\IO\BinaryStream.cs:line 165
   in Il2CppDumper.BinaryStream.ReadClassArray[T](Int64 count) in C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\IO\BinaryStream.cs:line 201
   at Il2CppDumper.BinaryStream.ReadClassArray[T](UInt64 addr, Int64 count) at C:\Users\neDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\IO\BinaryStream.cs:line 209
   at Il2CppDumper.Metadata.ReadMetadataClassArray[T](UInt32 addr, Int32 count) at C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\Il2Cpp\Metadata.cs:line 162
   in Il2CppDumper.Metadata..ctor(Stream stream) in C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\Il2Cpp\Metadata.cs:line 77
   at Il2CppDumper.Program.Init(String il2cppPath, String metadataPath, Metadata& metadata, Il2Cpp& il2Cpp) at C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\Program.cs:line 126
   in Il2CppDumper.Program.Main(String[] args) in C:\Users\OneDrive\Desktop\dump-standoff-2\Il2CppDumper-master\Il2CppDumper\Program.cs:line 100
Press any key to exit...
helloryuko commented 6 months ago

a lil hint for you - load metadata structure in ida, apply it to s_GlobalMetadataHeader and compare outputs in 0.27.3 and 0.28.2

i don't think that the fix can be automatized, but who knows

Fadeyauso commented 4 months ago

did you fix it?

helloryuko commented 4 months ago

image it's fixable, but this is literally a cat-mouse game - i'll publish the fix and they will find another way to break the metadata i posted a hint in my prev comment, those who search always find the solution

DontForgontPassword commented 4 months ago

image it's fixable, but this is literally a cat-mouse game - i'll publish the fix and they will find another way to break the metadata i posted a hint in my prev comment, those who search always find the solution

can you explain more or give dumper