From 41a7c71b7db19b2233b2d65676e1643e066e16b9 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Thu, 10 Nov 2022 00:06:29 -0800 Subject: [PATCH] Fix PE bitmasks --- BurnOutSharp.Builder/PortableExecutable.cs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/BurnOutSharp.Builder/PortableExecutable.cs b/BurnOutSharp.Builder/PortableExecutable.cs index 6661b60f..eed564df 100644 --- a/BurnOutSharp.Builder/PortableExecutable.cs +++ b/BurnOutSharp.Builder/PortableExecutable.cs @@ -828,8 +828,8 @@ namespace BurnOutSharp.Builder entry.NameOffset = data.ReadUInt32(ref offset); uint newOffset = data.ReadUInt32(ref offset); - if ((newOffset & 0xF0000000) != 0) - entry.SubdirectoryOffset = newOffset & ~0xF0000000; + if ((newOffset & 0x80000000) != 0) + entry.SubdirectoryOffset = newOffset & ~0x80000000; else entry.DataEntryOffset = newOffset; @@ -854,8 +854,8 @@ namespace BurnOutSharp.Builder entry.IntegerID = data.ReadUInt32(ref offset); uint newOffset = data.ReadUInt32(ref offset); - if ((newOffset & 0xF0000000) != 0) - entry.SubdirectoryOffset = newOffset & ~0xF0000000; + if ((newOffset & 0x80000000) != 0) + entry.SubdirectoryOffset = newOffset & ~0x80000000; else entry.DataEntryOffset = newOffset; @@ -1758,8 +1758,8 @@ namespace BurnOutSharp.Builder entry.NameOffset = data.ReadUInt32(); uint offset = data.ReadUInt32(); - if ((offset & 0xF0000000) != 0) - entry.SubdirectoryOffset = offset & ~0xF0000000; + if ((offset & 0x80000000) != 0) + entry.SubdirectoryOffset = offset & ~0x80000000; else entry.DataEntryOffset = offset; @@ -1785,8 +1785,8 @@ namespace BurnOutSharp.Builder entry.IntegerID = data.ReadUInt32(); uint offset = data.ReadUInt32(); - if ((offset & 0xF0000000) != 0) - entry.SubdirectoryOffset = offset & ~0xF0000000; + if ((offset & 0x80000000) != 0) + entry.SubdirectoryOffset = offset & ~0x80000000; else entry.DataEntryOffset = offset;