diff --git a/SabreTools.Serialization/Deserializers/GCF.cs b/SabreTools.Serialization/Deserializers/GCF.cs index e706fa8f..4c43d320 100644 --- a/SabreTools.Serialization/Deserializers/GCF.cs +++ b/SabreTools.Serialization/Deserializers/GCF.cs @@ -104,8 +104,15 @@ public class GCF : BaseBinaryDeserializer #region Directory Header + // Try to parse game cache directory header + var directoryHeader = ParseDirectoryHeader(data); + if (directoryHeader.Dummy0 != 0x00000004) + return null; + if (directoryHeader.Dummy1 != 0x00008000) + return null; + // Set the game cache directory header - file.DirectoryHeader = ParseDirectoryHeader(data); + file.DirectoryHeader = directoryHeader; #endregion @@ -662,4 +669,4 @@ public static Header ParseHeader(Stream data) return obj; } } -} \ No newline at end of file +}