diff --git a/Il2CppInspector/Il2CppBinaryClasses.cs b/Il2CppInspector/Il2CppBinaryClasses.cs index da322ab..e95b0c7 100644 --- a/Il2CppInspector/Il2CppBinaryClasses.cs +++ b/Il2CppInspector/Il2CppBinaryClasses.cs @@ -149,7 +149,6 @@ namespace Il2CppInspector public uint method_inst; } - public class Il2CppGenericInst { public uint type_argc; diff --git a/Il2CppInspector/MetadataClasses.cs b/Il2CppInspector/MetadataClasses.cs index 761124d..a1ccef8 100644 --- a/Il2CppInspector/MetadataClasses.cs +++ b/Il2CppInspector/MetadataClasses.cs @@ -89,6 +89,12 @@ namespace Il2CppInspector public int windowsRuntimeTypeNamesOffset; // Il2CppWindowsRuntimeTypeNamePair [Version(Min = 23)] public int windowsRuntimeTypeNamesSize; + + // Added in metadata v24 + [Version(Min = 24)] + public int exportedTypeDefinitionsOffset; // TypeDefinitionIndex + [Version(Min = 24)] + public int exportedTypeDefinitionsCount; } public class Il2CppImageDefinition @@ -99,6 +105,11 @@ namespace Il2CppInspector public int typeStart; public uint typeCount; + [Version(Min = 24)] + public int exportedTypeStart; + [Version(Min = 24)] + public uint exportedTypeCount; + public int entryPointIndex; public uint token; } diff --git a/README.md b/README.md index 7347d2a..30b4694 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,10 @@ Extract types, methods, properties and fields from Unity IL2CPP binaries. * Supports ELF (Android .so), PE (Windows .exe), Mach-O (Apple iOS/Mac) and Universal Binary (Fat Mach-O) file formats * Supports ARMv7, ARMv7 Thumb T1 and x86 architectures regardless of file format -* Supports metadata versions 21, 22 and 23 +* Supports metadata versions 21, 22, 23 and 24 * No manual reverse-engineering required; all data is calculated automatically -* **Il2CppInspector** re-usable class library +* **Il2CppInspector** re-usable class library for low-level access to IL2CPP binaries and metadata +* **Il2CppReflector** re-usable class library for high-level .NET Reflection-style access to IL2CPP types and data as a tree model Class library targets .NET Standard 1.5. Application targets .NET Core 2.0. Built with Visual Studio 2017.