From 79ac482d7296f4e82e22e489f6380ce0a2263db7 Mon Sep 17 00:00:00 2001 From: Katy Coe Date: Sun, 18 Mar 2018 05:42:52 +0100 Subject: [PATCH] Fix 1-off function pointers in PE files --- Il2CppInspector/FileFormatReaders/MachOReader.cs | 1 - Il2CppInspector/FileFormatReaders/PEReader.cs | 4 ++++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Il2CppInspector/FileFormatReaders/MachOReader.cs b/Il2CppInspector/FileFormatReaders/MachOReader.cs index aeb8016..cbaa8c5 100644 --- a/Il2CppInspector/FileFormatReaders/MachOReader.cs +++ b/Il2CppInspector/FileFormatReaders/MachOReader.cs @@ -140,7 +140,6 @@ namespace Il2CppInspector } public override void FinalizeInit(Il2CppBinary il2cpp) { - // Mach-O function pointers have an annoying habit of being 1-off il2cpp.MethodPointers = il2cpp.MethodPointers.Select(x => x - 1).ToArray(); } diff --git a/Il2CppInspector/FileFormatReaders/PEReader.cs b/Il2CppInspector/FileFormatReaders/PEReader.cs index 633f303..b1fd03c 100644 --- a/Il2CppInspector/FileFormatReaders/PEReader.cs +++ b/Il2CppInspector/FileFormatReaders/PEReader.cs @@ -88,6 +88,10 @@ namespace Il2CppInspector return addrs.ToArray(); } + public override void FinalizeInit(Il2CppBinary il2cpp) { + il2cpp.MethodPointers = il2cpp.MethodPointers.Select(x => x - 1).ToArray(); + } + public override uint MapVATR(uint uiAddr) { if (uiAddr == 0) return 0;