From 03016f339993f061505a955374f574739d27d306 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Sun, 21 Sep 2025 14:27:35 -0400 Subject: [PATCH] Try 16 --- BinaryObjectScanner/FileType/LDSCRYPT.cs | 4 +++- BinaryObjectScanner/FileType/RealArcadeInstaller.cs | 3 ++- BinaryObjectScanner/FileType/RealArcadeMezzanine.cs | 3 ++- BinaryObjectScanner/FileType/SFFS.cs | 4 +++- BinaryObjectScanner/Scanner.cs | 3 ++- 5 files changed, 12 insertions(+), 5 deletions(-) diff --git a/BinaryObjectScanner/FileType/LDSCRYPT.cs b/BinaryObjectScanner/FileType/LDSCRYPT.cs index 2b8e6bb8..a0465167 100644 --- a/BinaryObjectScanner/FileType/LDSCRYPT.cs +++ b/BinaryObjectScanner/FileType/LDSCRYPT.cs @@ -15,7 +15,9 @@ namespace BinaryObjectScanner.FileType { try { - byte[] magic = stream.ReadBytes(16); + int bytesToRead = (int)Math.Min(16, stream.Length); + byte[] magic = stream.ReadBytes(bytesToRead); + if (magic.StartsWith(new byte?[] { 0x4C, 0x44, 0x53, 0x43, 0x52, 0x59, 0x50, 0x54 })) return "Link Data Security encrypted file"; } diff --git a/BinaryObjectScanner/FileType/RealArcadeInstaller.cs b/BinaryObjectScanner/FileType/RealArcadeInstaller.cs index 6abc24a4..66c5aec5 100644 --- a/BinaryObjectScanner/FileType/RealArcadeInstaller.cs +++ b/BinaryObjectScanner/FileType/RealArcadeInstaller.cs @@ -17,7 +17,8 @@ namespace BinaryObjectScanner.FileType { try { - byte[] magic = stream.ReadBytes(16); + int bytesToRead = (int)Math.Min(16, stream.Length); + byte[] magic = stream.ReadBytes(bytesToRead); // RASGI2.0 // Found in the ".rgs" files in IA item "Nova_RealArcadeCD_USA". diff --git a/BinaryObjectScanner/FileType/RealArcadeMezzanine.cs b/BinaryObjectScanner/FileType/RealArcadeMezzanine.cs index a0c6c3cc..b9d65644 100644 --- a/BinaryObjectScanner/FileType/RealArcadeMezzanine.cs +++ b/BinaryObjectScanner/FileType/RealArcadeMezzanine.cs @@ -17,7 +17,8 @@ namespace BinaryObjectScanner.FileType { try { - byte[] magic = stream.ReadBytes(16); + int bytesToRead = (int)Math.Min(16, stream.Length); + byte[] magic = stream.ReadBytes(bytesToRead); // XZip2.0 // Found in the ".mez" files in IA item "Nova_RealArcadeCD_USA". diff --git a/BinaryObjectScanner/FileType/SFFS.cs b/BinaryObjectScanner/FileType/SFFS.cs index 221bb802..7671a55a 100644 --- a/BinaryObjectScanner/FileType/SFFS.cs +++ b/BinaryObjectScanner/FileType/SFFS.cs @@ -17,7 +17,9 @@ namespace BinaryObjectScanner.FileType { try { - byte[] magic = stream.ReadBytes(16); + int bytesToRead = (int)Math.Min(16, stream.Length); + byte[] magic = stream.ReadBytes(bytesToRead); + if (magic.StartsWith(new byte?[] { 0x53, 0x46, 0x46, 0x53 })) return "StarForce Filesystem Container"; } diff --git a/BinaryObjectScanner/Scanner.cs b/BinaryObjectScanner/Scanner.cs index 3565ad39..e01f859d 100644 --- a/BinaryObjectScanner/Scanner.cs +++ b/BinaryObjectScanner/Scanner.cs @@ -290,7 +290,8 @@ namespace BinaryObjectScanner byte[] magic; try { - magic = stream.ReadBytes(16); + int bytesToRead = (int)Math.Min(16, stream.Length); + magic = stream.ReadBytes(bytesToRead); stream.Seek(0, SeekOrigin.Begin); } catch (Exception ex)