Move protection scans to their own library

This change also removes a couple of things from `BurnOutSharp.Tools.Utilities` that are no longer needed there. Linear executables are included in the scanning classes. Update the guides accordingly.
This commit is contained in:
Matt Nadareski
2023-03-09 23:19:27 -05:00
parent a3567d6eb2
commit e118418a23
104 changed files with 285 additions and 213 deletions

View File

@@ -0,0 +1,26 @@
using System.Linq;
using BinaryObjectScanner.Interfaces;
using BinaryObjectScanner.Wrappers;
namespace BinaryObjectScanner.Protection
{
public class ThreeTwoOneStudios : IPortableExecutableCheck
{
/// <inheritdoc/>
public string CheckPortableExecutable(string file, PortableExecutable pex, bool includeDebug)
{
// Get the sections from the executable, if possible
var sections = pex?.SectionTable;
if (sections == null)
return null;
// Check the dialog box resources
if (pex.FindDialogByTitle("321Studios Activation").Any())
return $"321Studios Online Activation";
else if (pex.FindDialogByTitle("321Studios Phone Activation").Any())
return $"321Studios Online Activation";
return null;
}
}
}