2022-12-03 22:17:48 -08:00
|
|
|
|
using System.Linq;
|
2022-05-01 17:41:50 -07:00
|
|
|
|
using BurnOutSharp.Interfaces;
|
2022-12-03 22:17:48 -08:00
|
|
|
|
using BurnOutSharp.Wrappers;
|
2021-03-21 14:30:37 -07:00
|
|
|
|
|
|
|
|
|
|
namespace BurnOutSharp.ProtectionType
|
2020-10-29 10:05:56 -07:00
|
|
|
|
{
|
2022-05-01 17:17:15 -07:00
|
|
|
|
public class ThreeTwoOneStudios : IPortableExecutableCheck
|
2020-10-29 10:05:56 -07:00
|
|
|
|
{
|
2021-09-07 21:08:25 -07:00
|
|
|
|
/// <inheritdoc/>
|
2022-05-01 17:17:15 -07:00
|
|
|
|
public string CheckPortableExecutable(string file, PortableExecutable pex, bool includeDebug)
|
2021-03-23 09:52:09 -07:00
|
|
|
|
{
|
2021-09-07 21:08:25 -07:00
|
|
|
|
// Get the sections from the executable, if possible
|
|
|
|
|
|
var sections = pex?.SectionTable;
|
|
|
|
|
|
if (sections == null)
|
|
|
|
|
|
return null;
|
2021-09-10 15:32:37 -07:00
|
|
|
|
|
2022-12-03 22:17:48 -08:00
|
|
|
|
// Check the dialog box resources
|
|
|
|
|
|
if (pex.FindDialogByTitle("321Studios Activation").Any())
|
|
|
|
|
|
return $"321Studios Online Activation";
|
|
|
|
|
|
else if (pex.FindDialogByTitle("321Studios Phone Activation").Any())
|
2021-09-10 22:19:24 -07:00
|
|
|
|
return $"321Studios Online Activation";
|
2021-09-07 21:08:25 -07:00
|
|
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
|
}
|
2020-10-29 10:05:56 -07:00
|
|
|
|
}
|
|
|
|
|
|
}
|