diff --git a/BurnOutSharp.Wrappers/PortableExecutable.cs b/BurnOutSharp.Wrappers/PortableExecutable.cs
index d68b5363..e15a45d9 100644
--- a/BurnOutSharp.Wrappers/PortableExecutable.cs
+++ b/BurnOutSharp.Wrappers/PortableExecutable.cs
@@ -666,6 +666,7 @@ namespace BurnOutSharp.Wrappers
///
/// Overlay data, if it exists
///
+ /// TODO: Add overlay string data
private byte[] _overlayData = null;
///
diff --git a/BurnOutSharp/PackerType/Armadillo.cs b/BurnOutSharp/PackerType/Armadillo.cs
index d8b0bea4..9ff243a8 100644
--- a/BurnOutSharp/PackerType/Armadillo.cs
+++ b/BurnOutSharp/PackerType/Armadillo.cs
@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.IO;
using System.Linq;
using BurnOutSharp.Interfaces;
-using BurnOutSharp.Matching;
using BurnOutSharp.Wrappers;
namespace BurnOutSharp.PackerType
@@ -26,7 +25,6 @@ namespace BurnOutSharp.PackerType
if (nicodeSection)
return "Armadillo";
-
// Loop through all "extension" sections -- usually .data1 or .text1
foreach (var sectionName in pex.SectionNames.Where(s => s != null && s.EndsWith("1")))
{
diff --git a/BurnOutSharp/ProtectionType/CactusDataShield.cs b/BurnOutSharp/ProtectionType/CactusDataShield.cs
index 11334744..1f9ff360 100644
--- a/BurnOutSharp/ProtectionType/CactusDataShield.cs
+++ b/BurnOutSharp/ProtectionType/CactusDataShield.cs
@@ -62,22 +62,15 @@ namespace BurnOutSharp.ProtectionType
if (sections == null)
return null;
- // Get the .data/DATA section, if it exists
- var dataSectionRaw = pex.GetFirstSectionData(".data") ?? pex.GetFirstSectionData("DATA");
- if (dataSectionRaw != null)
+ // Get the .data/DATA section strings, if they exist
+ List strs = pex.GetFirstSectionStrings(".data") ?? pex.GetFirstSectionStrings("DATA");
+ if (strs != null)
{
- var matchers = new List
- {
- // \*.CDS
- new ContentMatchSet(new byte?[] { 0x5C, 0x2A, 0x2E, 0x43, 0x44, 0x53 }, "Cactus Data Shield 200"),
-
- // DATA.CDS
- new ContentMatchSet(new byte?[] { 0x44, 0x41, 0x54, 0x41, 0x2E, 0x43, 0x44, 0x53 }, "Cactus Data Shield 200"),
- };
+ if (strs.Any(s => s.Contains("\\*.CDS")))
+ return "Cactus Data Shield 200";
- string match = MatchUtil.GetFirstMatch(file, dataSectionRaw, matchers, includeDebug);
- if (!string.IsNullOrWhiteSpace(match))
- return match;
+ if (strs.Any(s => s.Contains("DATA.CDS")))
+ return "Cactus Data Shield 200";
}
// Found in "Volumia!" by Puur (Barcode 7 43218 63282 2) (Discogs Release Code [r795427]).