Skip to content

Commit 82fc850

Browse files
minor starforce fix (#402)
* minor starforce fix * combine regex checks
1 parent 973b011 commit 82fc850

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

BinaryObjectScanner/Protection/StarForce.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,12 @@ public class StarForce : IDiskImageCheck<ISO9660>, IExecutableCheck<PortableExec
4545

4646
// Thus far, the StarForce Keyless key is always made up of a number of characters, all either capital letters or
4747
// numbers, sometimes with dashes in between. Thus far, 4 formats have been observed:
48+
// 24 characters has been observed on one single disc (RID 68149). Maybe one is a space?
4849
// XXXXXXXXXXXXXXXXXXXXXXXXX (25 characters)
4950
// XXXXX-XXXXX-XXXXX-XXXXX-XXXXX (25 characters, plus 4 dashes seperating 5 groups of 5)
5051
// XXXXXXXXXXXXXXXXXXXXXXXXXXXX (28 characters)
5152
// XXXX-XXXXXX-XXXXXX-XXXXXX-XXXXXX (28 characters, with 4 dashes)
52-
if (Regex.IsMatch(dataPreparerIdentiferString, "^[A-Z0-9]{25}$", RegexOptions.Compiled)
53+
if (Regex.IsMatch(dataPreparerIdentiferString, "^[A-Z0-9]{24,25}$", RegexOptions.Compiled)
5354
|| Regex.IsMatch(dataPreparerIdentiferString, "^[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}$", RegexOptions.Compiled)
5455
|| Regex.IsMatch(dataPreparerIdentiferString, "^[A-Z0-9]{28}$", RegexOptions.Compiled)
5556
|| Regex.IsMatch(dataPreparerIdentiferString, "^[A-Z0-9]{4}-[A-Z0-9]{6}-[A-Z0-9]{6}-[A-Z0-9]{6}-[A-Z0-9]{6}$", RegexOptions.Compiled))

0 commit comments

Comments
 (0)