mirror of
https://github.com/horsicq/Detect-It-Easy.git
synced 2026-06-24 01:54:08 +00:00
Rename and reorganize rule files
Renamed and moved numerous .sg files in the db directory to follow a more consistent naming convention and directory structure, grouping by type (e.g., compiler, cruncher, packer, protector, etc.). This improves maintainability and clarity of the signature database organization.
This commit is contained in:
parent
dc2a925b3d
commit
9e621e1954
737 changed files with 11047 additions and 11156 deletions
|
|
@ -1,14 +1,14 @@
|
|||
// Detect It Easy: detection rule file
|
||||
|
||||
meta("module", "DeliTracker player");
|
||||
|
||||
function detect() {
|
||||
if (Amiga.compareEP("70FF4E75'DELIRIUM'")) {
|
||||
bDetected = true;
|
||||
} else if (Amiga.compareEP("........'DELIRIUM'")) {
|
||||
bDetected = true;
|
||||
sOptions = "Startup code";
|
||||
}
|
||||
|
||||
return result();
|
||||
// Detect It Easy: detection rule file
|
||||
|
||||
meta("module", "DeliTracker player");
|
||||
|
||||
function detect() {
|
||||
if (Amiga.compareEP("70FF4E75'DELIRIUM'")) {
|
||||
bDetected = true;
|
||||
} else if (Amiga.compareEP("........'DELIRIUM'")) {
|
||||
bDetected = true;
|
||||
sOptions = "Startup code";
|
||||
}
|
||||
|
||||
return result();
|
||||
}
|
||||
0
db/Binary/cert.WinAuth.1.sg → db/Binary/Certificate_cert.WinAuth.1.sg
Executable file → Normal file
0
db/Binary/cert.WinAuth.1.sg → db/Binary/Certificate_cert.WinAuth.1.sg
Executable file → Normal file
File diff suppressed because it is too large
Load diff
20
db/Binary/archive.7z.1.sg → db/Binary/archive_7z.1.sg
Executable file → Normal file
20
db/Binary/archive.7z.1.sg → db/Binary/archive_7z.1.sg
Executable file → Normal file
|
|
@ -1,13 +1,13 @@
|
|||
// Detect It Easy: detection rule file
|
||||
|
||||
meta("archive", "7-Zip");
|
||||
|
||||
function detect() {
|
||||
if (Binary.getSize() >= 64) {
|
||||
if (Binary.compare("'7z'BCAF271C")) {
|
||||
sVersion = Binary.readByte(6) + "." + Binary.readByte(7);
|
||||
bDetected = true;
|
||||
}
|
||||
// Detect It Easy: detection rule file
|
||||
|
||||
meta("archive", "7-Zip");
|
||||
|
||||
function detect() {
|
||||
if (Binary.getSize() >= 64) {
|
||||
if (Binary.compare("'7z'BCAF271C")) {
|
||||
sVersion = Binary.readByte(6) + "." + Binary.readByte(7);
|
||||
bDetected = true;
|
||||
}
|
||||
}
|
||||
|
||||
return result();
|
||||
0
db/Binary/archive.ARC.1.sg → db/Binary/archive_ARC.1.sg
Executable file → Normal file
0
db/Binary/archive.ARC.1.sg → db/Binary/archive_ARC.1.sg
Executable file → Normal file
0
db/Binary/archive.BZip.1.sg → db/Binary/archive_BZip.1.sg
Executable file → Normal file
0
db/Binary/archive.BZip.1.sg → db/Binary/archive_BZip.1.sg
Executable file → Normal file
46
db/Binary/archive.Cab.1.sg → db/Binary/archive_Cab.1.sg
Executable file → Normal file
46
db/Binary/archive.Cab.1.sg → db/Binary/archive_Cab.1.sg
Executable file → Normal file
|
|
@ -1,26 +1,26 @@
|
|||
// Detect It Easy: detection rule file
|
||||
// Author: Jason Hood <jadoxa@yahoo.com.au>
|
||||
|
||||
includeScript("cab");
|
||||
|
||||
meta("archive", "CAB");
|
||||
|
||||
function detect() {
|
||||
if (!detect_Cab(0, Binary.getSize())) {
|
||||
if (Binary.compare("'ISc('")) {
|
||||
sName = "InstallShield Cabinet File";
|
||||
var nVer = Binary.readWord(4);
|
||||
switch (Binary.readByte(7)) {
|
||||
case 1:
|
||||
sVersion = (nVer >> 12) & 15;
|
||||
break;
|
||||
case 2:
|
||||
case 4:
|
||||
sVersion = (nVer / 100).toFixed(2);
|
||||
break;
|
||||
}
|
||||
bDetected = true;
|
||||
}
|
||||
// Detect It Easy: detection rule file
|
||||
// Author: Jason Hood <jadoxa@yahoo.com.au>
|
||||
|
||||
includeScript("cab");
|
||||
|
||||
meta("archive", "CAB");
|
||||
|
||||
function detect() {
|
||||
if (!detect_Cab(0, Binary.getSize())) {
|
||||
if (Binary.compare("'ISc('")) {
|
||||
sName = "InstallShield Cabinet File";
|
||||
var nVer = Binary.readWord(4);
|
||||
switch (Binary.readByte(7)) {
|
||||
case 1:
|
||||
sVersion = (nVer >> 12) & 15;
|
||||
break;
|
||||
case 2:
|
||||
case 4:
|
||||
sVersion = (nVer / 100).toFixed(2);
|
||||
break;
|
||||
}
|
||||
bDetected = true;
|
||||
}
|
||||
}
|
||||
|
||||
return result();
|
||||
18
db/Binary/archive.DotBundle.sg → db/Binary/archive_DotBundle.sg
Executable file → Normal file
18
db/Binary/archive.DotBundle.sg → db/Binary/archive_DotBundle.sg
Executable file → Normal file
|
|
@ -1,10 +1,10 @@
|
|||
// Detect It Easy: detection rule file
|
||||
meta("archive", "DotBundle Project");
|
||||
|
||||
function detect() {
|
||||
if (Binary.compare("3C70726F6A6563743E0D0A20203C6D61696E65786520706174683D")) {
|
||||
bDetected = true;
|
||||
}
|
||||
|
||||
return result();
|
||||
// Detect It Easy: detection rule file
|
||||
meta("archive", "DotBundle Project");
|
||||
|
||||
function detect() {
|
||||
if (Binary.compare("3C70726F6A6563743E0D0A20203C6D61696E65786520706174683D")) {
|
||||
bDetected = true;
|
||||
}
|
||||
|
||||
return result();
|
||||
}
|
||||
0
db/Binary/archive.LRZ.1.sg → db/Binary/archive_LRZ.1.sg
Executable file → Normal file
0
db/Binary/archive.LRZ.1.sg → db/Binary/archive_LRZ.1.sg
Executable file → Normal file
0
db/Binary/archive.LZOP.1.sg → db/Binary/archive_LZOP.1.sg
Executable file → Normal file
0
db/Binary/archive.LZOP.1.sg → db/Binary/archive_LZOP.1.sg
Executable file → Normal file
0
db/Binary/archive.PEA.1.sg → db/Binary/archive_PEA.1.sg
Executable file → Normal file
0
db/Binary/archive.PEA.1.sg → db/Binary/archive_PEA.1.sg
Executable file → Normal file
0
db/Binary/archive.Unity.1.sg → db/Binary/archive_Unity.1.sg
Executable file → Normal file
0
db/Binary/archive.Unity.1.sg → db/Binary/archive_Unity.1.sg
Executable file → Normal file
0
db/Binary/archive.ZPAQ.1.sg → db/Binary/archive_ZPAQ.1.sg
Executable file → Normal file
0
db/Binary/archive.ZPAQ.1.sg → db/Binary/archive_ZPAQ.1.sg
Executable file → Normal file
|
|
@ -1,321 +1,321 @@
|
|||
// Detect It Easy: detection rule file
|
||||
// Authors: hypn0 <hypn0@mail.ru>, Kaens (TG@kaens), LinXP
|
||||
|
||||
meta("archive", "");
|
||||
|
||||
function detect() {
|
||||
if (Binary.compare("a596fdff")) {
|
||||
bDetected = true;
|
||||
sName = "FTCOMP";
|
||||
} else if (Binary.compare("a596..0a")) {
|
||||
bDetected = true;
|
||||
sName = "IBMPACK1";
|
||||
} else if (Binary.compare("a596feff")) {
|
||||
bDetected = true;
|
||||
sName = "IBMPACK2";
|
||||
} else if (Binary.compare("aced00057704")) {
|
||||
bDetected = true;
|
||||
sName = "IzPack";
|
||||
} else if (Binary.compare("'bvxn'")) {
|
||||
bDetected = true;
|
||||
sName = "LZFSE";
|
||||
} else if (Binary.compare("'SIT!'")) {
|
||||
bDetected = true;
|
||||
sName = "SIT";
|
||||
} else if (Binary.compare("06'SKF3.0'")) {
|
||||
bDetected = true;
|
||||
sName = "SKF";
|
||||
} else if (Binary.compare("'Archive'00................2800000064")) {
|
||||
bDetected = true;
|
||||
sName = "ArcFS";
|
||||
} else if (Binary.compare("'ARCV'0002")) {
|
||||
bDetected = true;
|
||||
sName = "ARCV 2";
|
||||
} else if (Binary.compare("09006bea")) {
|
||||
bDetected = true;
|
||||
sName = "BFF";
|
||||
} else if (Binary.compare("00069a") || Binary.compare("0006d2")) {
|
||||
bDetected = true;
|
||||
sName = "DCL";
|
||||
} else if (Binary.compare("....'-lh'..2d") || Binary.compare("....'-lz'..2d") || Binary.compare("....'-pm'..2d")) {
|
||||
sVersion = Binary.getString(2, 5)
|
||||
bDetected = true;
|
||||
switch (Binary.getString(3, 3)) {
|
||||
case "lh0":
|
||||
case "lh1":
|
||||
case "lh2":
|
||||
case "lh3":
|
||||
case "lh4":
|
||||
case "lh5":
|
||||
case "lh6":
|
||||
case "lh7":
|
||||
case "lhd":
|
||||
sName = "LHA (.LHA)";
|
||||
break;
|
||||
case "lh8":
|
||||
case "lh9":
|
||||
case "lha":
|
||||
case "lhb":
|
||||
case "lhc":
|
||||
case "lhe":
|
||||
sName = "LHA";
|
||||
sOptions = "Joe Jared ext (.LHA)";
|
||||
break;
|
||||
case "lhx":
|
||||
sName = "LHA";
|
||||
sOptions = "UNLHA32 ext (.LHA)"
|
||||
break;
|
||||
case "lzs":
|
||||
case "lz2":
|
||||
case "lz3":
|
||||
case "lz4":
|
||||
case "lz5":
|
||||
case "lz6":
|
||||
case "lz7":
|
||||
case "lz8":
|
||||
sName = "LHA ";
|
||||
sOptions = "LArc ext (.LZS)";
|
||||
break;
|
||||
case "lz7":
|
||||
case "pm0":
|
||||
case "pm2":
|
||||
sName = "LHA archive, PMarc ext (.PMA)";
|
||||
break;
|
||||
default:
|
||||
bDetected = false;
|
||||
}
|
||||
} else if (Binary.compare("'mflh'0100")) {
|
||||
bDetected = true;
|
||||
sName = "MVA";
|
||||
} else if (Binary.compare("'ViG'....1a")) {
|
||||
bDetected = true;
|
||||
sName = "PaperPort";
|
||||
} else if (Binary.compare("'sqsh'0000")) {
|
||||
bDetected = true;
|
||||
sName = "SquashFS";
|
||||
sOptions = "big endian";
|
||||
} else if (Binary.compare("'hsqs'0300")) {
|
||||
bDetected = true;
|
||||
sName = "SquashFS";
|
||||
sOptions = "little endian";
|
||||
} else if (Binary.compare("'im001V'......50....0000")) {
|
||||
sName = "SW";
|
||||
bDetected = true;
|
||||
var arch_offset = Binary.readByte(0x0e) + 15;
|
||||
if (Binary.compare("1f9d", arch_offset)) {
|
||||
sName = "Z";
|
||||
} else if (Binary.compare("1f1e", arch_offset)) {
|
||||
sName = "PACK 2";
|
||||
}
|
||||
} else if (Binary.compare("0001000401000100010000000000000000000000000000000000000000000000010101")) {
|
||||
bDetected = true;
|
||||
sName = "VMS SaveSet";
|
||||
} else if (Binary.compare("'ZOO'............'Archive'")) {
|
||||
bDetected = true;
|
||||
sName = "ZOO";
|
||||
} else if (Binary.compare("602213636c00")) {
|
||||
bDetected = true;
|
||||
sName = "Asymetrix";
|
||||
} else if (Binary.compare("453dcd28........................'Compressed ROMFS'")) {
|
||||
bDetected = true;
|
||||
sName = "CRAMFS";
|
||||
} else if (Binary.compare("'IsZ!@'01")) {
|
||||
bDetected = true;
|
||||
sName = "Zipped ISO Disk Image (.ISZ)";
|
||||
switch (Binary.read_uint32(0x10)) {
|
||||
case 0:
|
||||
sOptions = "no password";
|
||||
break;
|
||||
case 1:
|
||||
sOptions = "password";
|
||||
break;
|
||||
case 2:
|
||||
sOptions = "password, aes128";
|
||||
break;
|
||||
case 3:
|
||||
sOptions = "password, aes182";
|
||||
break;
|
||||
case 4:
|
||||
sOptions = "password, aes256";
|
||||
break;
|
||||
}
|
||||
} else if (Binary.compare("aa59f0000002")) {
|
||||
bDetected = true;
|
||||
sName = "SaveDskF";
|
||||
} else if (Binary.compare("'AlB'1a")) {
|
||||
bDetected = true;
|
||||
sName = "BeOS package";
|
||||
} else if (Binary.compare("'BIGF'00")) {
|
||||
bDetected = true;
|
||||
sName = "BIGF";
|
||||
} else if (Binary.compare("01ca'Copyright (c) Genus Microprogramming, Inc.'")) {
|
||||
bDetected = true;
|
||||
sName = "GXL";
|
||||
} else if (Binary.compare("0100......00ecf9")) {
|
||||
bDetected = true;
|
||||
sName = "INSA";
|
||||
} else if (Binary.compare("..0fd28ccc1f..3c0d8e830dd88f25ac")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield ISN";
|
||||
} else if (Binary.compare("135d658c3a010200")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield";
|
||||
sVersion = "3.x"
|
||||
} else if (Binary.compare("2aab79d800010000")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield INST";
|
||||
sVersion = "3.x"
|
||||
} else if (Binary.compare("'SZDD'88")) {
|
||||
bDetected = true;
|
||||
sName = "SZDD";
|
||||
sOptions = "by Microsoft";
|
||||
} else if (Binary.compare("'KWAJ'88")) {
|
||||
bDetected = true;
|
||||
sName = "KWAJ";
|
||||
sOptions = "by Microsoft";
|
||||
} else if (Binary.compare("'MDmd'")) {
|
||||
bDetected = true;
|
||||
sName = "MDCD";
|
||||
} else if (Binary.compare("'MPQ'1a")) {
|
||||
bDetected = true;
|
||||
sName = "MPQ";
|
||||
sOptions = "by Blizzard";
|
||||
} else if (Binary.compare("'_MCT'00'KSLZ'789c")) {
|
||||
bDetected = true;
|
||||
sName = "MSKN 2";
|
||||
sOptions = "zlib";
|
||||
} else if (Binary.compare("'PACK'............0000")) {
|
||||
bDetected = true;
|
||||
sName = "PACK";
|
||||
} else if (Binary.compare("'PACK'") && File.read_uint32(4, _BE) > 0 && File.read_uint32(4, _BE) <= 3) {
|
||||
bDetected = true;
|
||||
sName = "Packed git objects (.pack)";
|
||||
sVersion = "v" + File.read_uint32(4, _BE);
|
||||
sOptions = File.read_uint32(8, _BE) + " object(s)"
|
||||
} else if (Binary.compare("FF'tOc'00000002")) {
|
||||
sName = "Index of packed git objects (.idx)";
|
||||
sVersion = "v" + File.read_uint32(4, _BE);
|
||||
bDetected = 1
|
||||
} else if (Binary.compare("'RIDX'00000001") && File.read_uint32(8, _BE) > 0 && File.read_uint32(8, _BE) <= 2) {
|
||||
sName = "Reverse index of packed git objects (.rev)";
|
||||
sVersion = "v1";
|
||||
bDetected = true;
|
||||
switch (File.read_uint32(8, _BE)) {
|
||||
case 1:
|
||||
sOptions = "SHA-1 hashes";
|
||||
break;
|
||||
case 2:
|
||||
sOptions = "SHA-256 hashes";
|
||||
break;
|
||||
default:
|
||||
sOptions = "unknown hashes";
|
||||
}
|
||||
} else if (Binary.compare("00000000000000000000000000007400010074000500")) {
|
||||
bDetected = true;
|
||||
sName = "PCInstall";
|
||||
} else if (Binary.compare("'PP20'09")) {
|
||||
bDetected = true;
|
||||
sName = "PowerPack";
|
||||
sOptions = "by Nico Francois";
|
||||
} else if (Binary.compare("edabeedb0300")) {
|
||||
bDetected = true;
|
||||
sName = "RPM package";
|
||||
} else if (Binary.compare("bd01..00..00..000000")) {
|
||||
bDetected = true;
|
||||
sName = "HUFF";
|
||||
} else if (Binary.compare("'SZ '88")) {
|
||||
bDetected = true;
|
||||
sName = "SZ";
|
||||
sOptions = "by Microsoft";
|
||||
} else if (Binary.compare("'BAGF'02")) {
|
||||
bDetected = true;
|
||||
sName = "BAGF";
|
||||
} else if (Binary.compare("'PAC - 'a9' BVRP Software 1990-2000'")) {
|
||||
bDetected = true;
|
||||
sName = "PAC";
|
||||
sOptions = "1990-2000 by BVRP Software";
|
||||
} else if (Binary.compare("'Cr24'02")) {
|
||||
bDetected = true;
|
||||
sName = "CRX";
|
||||
} else if (Binary.compare("74c42c84e1e5d428")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield INX";
|
||||
sVersion = "7.x"
|
||||
} else if (Binary.compare("5d0000....ffffffffffffffff00180ddd04")) {
|
||||
bDetected = true;
|
||||
sName = "LZMA";
|
||||
} else if (Binary.compare("5d00008000........000000000000")) {
|
||||
bDetected = true;
|
||||
sName = "LZMA";
|
||||
} else if (Binary.compare("1fa0")) {
|
||||
bDetected = true;
|
||||
sName = "SCO";
|
||||
} else if (Binary.compare("'# PaCkAgE DaTaStReAm'")) {
|
||||
bDetected = true;
|
||||
sName = "Solaris Package";
|
||||
} else if (Binary.compare("'SQZE'010000")) {
|
||||
bDetected = true;
|
||||
sName = "SQZE";
|
||||
} else if (Binary.compare("'xar!'001c00010000")) {
|
||||
bDetected = true;
|
||||
sName = "XAR";
|
||||
} else if (Binary.compare("fd'7zXZ'00")) {
|
||||
bDetected = true;
|
||||
sName = "XZ";
|
||||
}
|
||||
|
||||
function isCompress() {
|
||||
if (File.getSize() < 3 || !File.compare("1F9D")) return false;
|
||||
t = File.read_uint8(2);
|
||||
sversion = t & 0x80 ? "new" : "old";
|
||||
t &= 0x7F;
|
||||
if (t < 9 || t > 16) return false;
|
||||
return true;
|
||||
}
|
||||
if (!bDetected)
|
||||
if (isCompress()) {
|
||||
sName = "Compress (.Z)";
|
||||
sVersion = sversion;
|
||||
bDetected = true;
|
||||
} else if (Binary.compare("'LZK00'000000")) {
|
||||
bDetected = true;
|
||||
sName = "LZK00";
|
||||
} else if (Binary.compare("032401010100")) {
|
||||
bDetected = true;
|
||||
sName = "WPK";
|
||||
} else if (Binary.compare("'TPWM'")) {
|
||||
bDetected = true;
|
||||
sName = "TPWM (BlueByte)";
|
||||
} else if ((Binary.getSize() >= 500) && (Binary.compare("00'ustar'", 0x100))) {
|
||||
bDetected = true;
|
||||
sName = "tar";
|
||||
} else if (Binary.compare("'LB'0100")) {
|
||||
bDetected = true;
|
||||
sName = "XFL game resource file (.XFL)";
|
||||
sVersion = "v1.0";
|
||||
sOptions = sOptions.append(Binary.getString(12, 32));
|
||||
sOptions = sOptions.append("& other " + (Binary.readDword(8) - 1) + " files");
|
||||
} else if (Binary.compare("FF060000'sNaPpY'")) {
|
||||
bDetected = true;
|
||||
sName = "Snappy compressed data (.SZ)";
|
||||
} else if (Binary.compare("'blkzip'00")) {
|
||||
bDetected = true;
|
||||
sName = "BulkZip (.BULK)";
|
||||
} else if (Binary.compare("AE01'NanoZip 0.09 alpha'")) {
|
||||
bDetected = true;
|
||||
sName = "NanoZip (.NZ)";
|
||||
sVersion = "0.09 alpha";
|
||||
} else if (Binary.compare("'CM'2805060000")) {
|
||||
bDetected = true;
|
||||
sName = "RAZOR (.RZ)";
|
||||
sOptions = "by Christian Martelock"
|
||||
} else if (Binary.compare("28B52FFD")) {
|
||||
bDetected = true;
|
||||
sName = "Facebook Zstandard/ZSTD compressed data (.ZST)";
|
||||
} else if (Binary.compare("00'APPL'", 0x40) && Binary.compare("00008181", 0x78)) {
|
||||
bDetected = true;
|
||||
sName = "MacBinary";
|
||||
}
|
||||
|
||||
return result();
|
||||
}
|
||||
// Detect It Easy: detection rule file
|
||||
// Authors: hypn0 <hypn0@mail.ru>, Kaens (TG@kaens), LinXP
|
||||
|
||||
meta("archive", "");
|
||||
|
||||
function detect() {
|
||||
if (Binary.compare("a596fdff")) {
|
||||
bDetected = true;
|
||||
sName = "FTCOMP";
|
||||
} else if (Binary.compare("a596..0a")) {
|
||||
bDetected = true;
|
||||
sName = "IBMPACK1";
|
||||
} else if (Binary.compare("a596feff")) {
|
||||
bDetected = true;
|
||||
sName = "IBMPACK2";
|
||||
} else if (Binary.compare("aced00057704")) {
|
||||
bDetected = true;
|
||||
sName = "IzPack";
|
||||
} else if (Binary.compare("'bvxn'")) {
|
||||
bDetected = true;
|
||||
sName = "LZFSE";
|
||||
} else if (Binary.compare("'SIT!'")) {
|
||||
bDetected = true;
|
||||
sName = "SIT";
|
||||
} else if (Binary.compare("06'SKF3.0'")) {
|
||||
bDetected = true;
|
||||
sName = "SKF";
|
||||
} else if (Binary.compare("'Archive'00................2800000064")) {
|
||||
bDetected = true;
|
||||
sName = "ArcFS";
|
||||
} else if (Binary.compare("'ARCV'0002")) {
|
||||
bDetected = true;
|
||||
sName = "ARCV 2";
|
||||
} else if (Binary.compare("09006bea")) {
|
||||
bDetected = true;
|
||||
sName = "BFF";
|
||||
} else if (Binary.compare("00069a") || Binary.compare("0006d2")) {
|
||||
bDetected = true;
|
||||
sName = "DCL";
|
||||
} else if (Binary.compare("....'-lh'..2d") || Binary.compare("....'-lz'..2d") || Binary.compare("....'-pm'..2d")) {
|
||||
sVersion = Binary.getString(2, 5)
|
||||
bDetected = true;
|
||||
switch (Binary.getString(3, 3)) {
|
||||
case "lh0":
|
||||
case "lh1":
|
||||
case "lh2":
|
||||
case "lh3":
|
||||
case "lh4":
|
||||
case "lh5":
|
||||
case "lh6":
|
||||
case "lh7":
|
||||
case "lhd":
|
||||
sName = "LHA (.LHA)";
|
||||
break;
|
||||
case "lh8":
|
||||
case "lh9":
|
||||
case "lha":
|
||||
case "lhb":
|
||||
case "lhc":
|
||||
case "lhe":
|
||||
sName = "LHA";
|
||||
sOptions = "Joe Jared ext (.LHA)";
|
||||
break;
|
||||
case "lhx":
|
||||
sName = "LHA";
|
||||
sOptions = "UNLHA32 ext (.LHA)"
|
||||
break;
|
||||
case "lzs":
|
||||
case "lz2":
|
||||
case "lz3":
|
||||
case "lz4":
|
||||
case "lz5":
|
||||
case "lz6":
|
||||
case "lz7":
|
||||
case "lz8":
|
||||
sName = "LHA ";
|
||||
sOptions = "LArc ext (.LZS)";
|
||||
break;
|
||||
case "lz7":
|
||||
case "pm0":
|
||||
case "pm2":
|
||||
sName = "LHA archive, PMarc ext (.PMA)";
|
||||
break;
|
||||
default:
|
||||
bDetected = false;
|
||||
}
|
||||
} else if (Binary.compare("'mflh'0100")) {
|
||||
bDetected = true;
|
||||
sName = "MVA";
|
||||
} else if (Binary.compare("'ViG'....1a")) {
|
||||
bDetected = true;
|
||||
sName = "PaperPort";
|
||||
} else if (Binary.compare("'sqsh'0000")) {
|
||||
bDetected = true;
|
||||
sName = "SquashFS";
|
||||
sOptions = "big endian";
|
||||
} else if (Binary.compare("'hsqs'0300")) {
|
||||
bDetected = true;
|
||||
sName = "SquashFS";
|
||||
sOptions = "little endian";
|
||||
} else if (Binary.compare("'im001V'......50....0000")) {
|
||||
sName = "SW";
|
||||
bDetected = true;
|
||||
var arch_offset = Binary.readByte(0x0e) + 15;
|
||||
if (Binary.compare("1f9d", arch_offset)) {
|
||||
sName = "Z";
|
||||
} else if (Binary.compare("1f1e", arch_offset)) {
|
||||
sName = "PACK 2";
|
||||
}
|
||||
} else if (Binary.compare("0001000401000100010000000000000000000000000000000000000000000000010101")) {
|
||||
bDetected = true;
|
||||
sName = "VMS SaveSet";
|
||||
} else if (Binary.compare("'ZOO'............'Archive'")) {
|
||||
bDetected = true;
|
||||
sName = "ZOO";
|
||||
} else if (Binary.compare("602213636c00")) {
|
||||
bDetected = true;
|
||||
sName = "Asymetrix";
|
||||
} else if (Binary.compare("453dcd28........................'Compressed ROMFS'")) {
|
||||
bDetected = true;
|
||||
sName = "CRAMFS";
|
||||
} else if (Binary.compare("'IsZ!@'01")) {
|
||||
bDetected = true;
|
||||
sName = "Zipped ISO Disk Image (.ISZ)";
|
||||
switch (Binary.read_uint32(0x10)) {
|
||||
case 0:
|
||||
sOptions = "no password";
|
||||
break;
|
||||
case 1:
|
||||
sOptions = "password";
|
||||
break;
|
||||
case 2:
|
||||
sOptions = "password, aes128";
|
||||
break;
|
||||
case 3:
|
||||
sOptions = "password, aes182";
|
||||
break;
|
||||
case 4:
|
||||
sOptions = "password, aes256";
|
||||
break;
|
||||
}
|
||||
} else if (Binary.compare("aa59f0000002")) {
|
||||
bDetected = true;
|
||||
sName = "SaveDskF";
|
||||
} else if (Binary.compare("'AlB'1a")) {
|
||||
bDetected = true;
|
||||
sName = "BeOS package";
|
||||
} else if (Binary.compare("'BIGF'00")) {
|
||||
bDetected = true;
|
||||
sName = "BIGF";
|
||||
} else if (Binary.compare("01ca'Copyright (c) Genus Microprogramming, Inc.'")) {
|
||||
bDetected = true;
|
||||
sName = "GXL";
|
||||
} else if (Binary.compare("0100......00ecf9")) {
|
||||
bDetected = true;
|
||||
sName = "INSA";
|
||||
} else if (Binary.compare("..0fd28ccc1f..3c0d8e830dd88f25ac")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield ISN";
|
||||
} else if (Binary.compare("135d658c3a010200")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield";
|
||||
sVersion = "3.x"
|
||||
} else if (Binary.compare("2aab79d800010000")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield INST";
|
||||
sVersion = "3.x"
|
||||
} else if (Binary.compare("'SZDD'88")) {
|
||||
bDetected = true;
|
||||
sName = "SZDD";
|
||||
sOptions = "by Microsoft";
|
||||
} else if (Binary.compare("'KWAJ'88")) {
|
||||
bDetected = true;
|
||||
sName = "KWAJ";
|
||||
sOptions = "by Microsoft";
|
||||
} else if (Binary.compare("'MDmd'")) {
|
||||
bDetected = true;
|
||||
sName = "MDCD";
|
||||
} else if (Binary.compare("'MPQ'1a")) {
|
||||
bDetected = true;
|
||||
sName = "MPQ";
|
||||
sOptions = "by Blizzard";
|
||||
} else if (Binary.compare("'_MCT'00'KSLZ'789c")) {
|
||||
bDetected = true;
|
||||
sName = "MSKN 2";
|
||||
sOptions = "zlib";
|
||||
} else if (Binary.compare("'PACK'............0000")) {
|
||||
bDetected = true;
|
||||
sName = "PACK";
|
||||
} else if (Binary.compare("'PACK'") && File.read_uint32(4, _BE) > 0 && File.read_uint32(4, _BE) <= 3) {
|
||||
bDetected = true;
|
||||
sName = "Packed git objects (.pack)";
|
||||
sVersion = "v" + File.read_uint32(4, _BE);
|
||||
sOptions = File.read_uint32(8, _BE) + " object(s)"
|
||||
} else if (Binary.compare("FF'tOc'00000002")) {
|
||||
sName = "Index of packed git objects (.idx)";
|
||||
sVersion = "v" + File.read_uint32(4, _BE);
|
||||
bDetected = 1
|
||||
} else if (Binary.compare("'RIDX'00000001") && File.read_uint32(8, _BE) > 0 && File.read_uint32(8, _BE) <= 2) {
|
||||
sName = "Reverse index of packed git objects (.rev)";
|
||||
sVersion = "v1";
|
||||
bDetected = true;
|
||||
switch (File.read_uint32(8, _BE)) {
|
||||
case 1:
|
||||
sOptions = "SHA-1 hashes";
|
||||
break;
|
||||
case 2:
|
||||
sOptions = "SHA-256 hashes";
|
||||
break;
|
||||
default:
|
||||
sOptions = "unknown hashes";
|
||||
}
|
||||
} else if (Binary.compare("00000000000000000000000000007400010074000500")) {
|
||||
bDetected = true;
|
||||
sName = "PCInstall";
|
||||
} else if (Binary.compare("'PP20'09")) {
|
||||
bDetected = true;
|
||||
sName = "PowerPack";
|
||||
sOptions = "by Nico Francois";
|
||||
} else if (Binary.compare("edabeedb0300")) {
|
||||
bDetected = true;
|
||||
sName = "RPM package";
|
||||
} else if (Binary.compare("bd01..00..00..000000")) {
|
||||
bDetected = true;
|
||||
sName = "HUFF";
|
||||
} else if (Binary.compare("'SZ '88")) {
|
||||
bDetected = true;
|
||||
sName = "SZ";
|
||||
sOptions = "by Microsoft";
|
||||
} else if (Binary.compare("'BAGF'02")) {
|
||||
bDetected = true;
|
||||
sName = "BAGF";
|
||||
} else if (Binary.compare("'PAC - 'a9' BVRP Software 1990-2000'")) {
|
||||
bDetected = true;
|
||||
sName = "PAC";
|
||||
sOptions = "1990-2000 by BVRP Software";
|
||||
} else if (Binary.compare("'Cr24'02")) {
|
||||
bDetected = true;
|
||||
sName = "CRX";
|
||||
} else if (Binary.compare("74c42c84e1e5d428")) {
|
||||
bDetected = true;
|
||||
sName = "InstallShield INX";
|
||||
sVersion = "7.x"
|
||||
} else if (Binary.compare("5d0000....ffffffffffffffff00180ddd04")) {
|
||||
bDetected = true;
|
||||
sName = "LZMA";
|
||||
} else if (Binary.compare("5d00008000........000000000000")) {
|
||||
bDetected = true;
|
||||
sName = "LZMA";
|
||||
} else if (Binary.compare("1fa0")) {
|
||||
bDetected = true;
|
||||
sName = "SCO";
|
||||
} else if (Binary.compare("'# PaCkAgE DaTaStReAm'")) {
|
||||
bDetected = true;
|
||||
sName = "Solaris Package";
|
||||
} else if (Binary.compare("'SQZE'010000")) {
|
||||
bDetected = true;
|
||||
sName = "SQZE";
|
||||
} else if (Binary.compare("'xar!'001c00010000")) {
|
||||
bDetected = true;
|
||||
sName = "XAR";
|
||||
} else if (Binary.compare("fd'7zXZ'00")) {
|
||||
bDetected = true;
|
||||
sName = "XZ";
|
||||
}
|
||||
|
||||
function isCompress() {
|
||||
if (File.getSize() < 3 || !File.compare("1F9D")) return false;
|
||||
t = File.read_uint8(2);
|
||||
sversion = t & 0x80 ? "new" : "old";
|
||||
t &= 0x7F;
|
||||
if (t < 9 || t > 16) return false;
|
||||
return true;
|
||||
}
|
||||
if (!bDetected)
|
||||
if (isCompress()) {
|
||||
sName = "Compress (.Z)";
|
||||
sVersion = sversion;
|
||||
bDetected = true;
|
||||
} else if (Binary.compare("'LZK00'000000")) {
|
||||
bDetected = true;
|
||||
sName = "LZK00";
|
||||
} else if (Binary.compare("032401010100")) {
|
||||
bDetected = true;
|
||||
sName = "WPK";
|
||||
} else if (Binary.compare("'TPWM'")) {
|
||||
bDetected = true;
|
||||
sName = "TPWM (BlueByte)";
|
||||
} else if ((Binary.getSize() >= 500) && (Binary.compare("00'ustar'", 0x100))) {
|
||||
bDetected = true;
|
||||
sName = "tar";
|
||||
} else if (Binary.compare("'LB'0100")) {
|
||||
bDetected = true;
|
||||
sName = "XFL game resource file (.XFL)";
|
||||
sVersion = "v1.0";
|
||||
sOptions = sOptions.append(Binary.getString(12, 32));
|
||||
sOptions = sOptions.append("& other " + (Binary.readDword(8) - 1) + " files");
|
||||
} else if (Binary.compare("FF060000'sNaPpY'")) {
|
||||
bDetected = true;
|
||||
sName = "Snappy compressed data (.SZ)";
|
||||
} else if (Binary.compare("'blkzip'00")) {
|
||||
bDetected = true;
|
||||
sName = "BulkZip (.BULK)";
|
||||
} else if (Binary.compare("AE01'NanoZip 0.09 alpha'")) {
|
||||
bDetected = true;
|
||||
sName = "NanoZip (.NZ)";
|
||||
sVersion = "0.09 alpha";
|
||||
} else if (Binary.compare("'CM'2805060000")) {
|
||||
bDetected = true;
|
||||
sName = "RAZOR (.RZ)";
|
||||
sOptions = "by Christian Martelock"
|
||||
} else if (Binary.compare("28B52FFD")) {
|
||||
bDetected = true;
|
||||
sName = "Facebook Zstandard/ZSTD compressed data (.ZST)";
|
||||
} else if (Binary.compare("00'APPL'", 0x40) && Binary.compare("00008181", 0x78)) {
|
||||
bDetected = true;
|
||||
sName = "MacBinary";
|
||||
}
|
||||
|
||||
return result();
|
||||
}
|
||||
File diff suppressed because it is too large
Load diff
0
db/Binary/archive.btoa.1.sg → db/Binary/archive_btoa.1.sg
Executable file → Normal file
0
db/Binary/archive.btoa.1.sg → db/Binary/archive_btoa.1.sg
Executable file → Normal file
0
db/Binary/cad.DWG.1.sg → db/Binary/archive_cad.DWG.1.sg
Executable file → Normal file
0
db/Binary/cad.DWG.1.sg → db/Binary/archive_cad.DWG.1.sg
Executable file → Normal file
0
db/Binary/audio.AU.1.sg → db/Binary/audio_AU.1.sg
Executable file → Normal file
0
db/Binary/audio.AU.1.sg → db/Binary/audio_AU.1.sg
Executable file → Normal file
0
db/Binary/audio.FSB.1.sg → db/Binary/audio_FSB.1.sg
Executable file → Normal file
0
db/Binary/audio.FSB.1.sg → db/Binary/audio_FSB.1.sg
Executable file → Normal file
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue