Add extractor for Crusader's EUSECODE.FLX container

- Implemented a Python script to extract data from the EUSECODE.FLX file format.
- Defined data structures for candidate entries and extracted chunks using dataclasses.
- Added functions to read and parse the FLX table, extract candidate data, and generate human-readable output files.
- Included functionality for analyzing extracted data, including generating summaries, descriptors, and event family reports.
- Implemented utilities for calculating printable ratios, zero ratios, and identifying text-like data.
- Added support for writing various output formats, including JSON, TSV, and Markdown.
This commit is contained in:
MaddoScientisto 2026-03-22 14:27:38 +01:00
commit 3daffbf113
58 changed files with 30295 additions and 2504 deletions

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<FILE_INFO>
<BASIC_INFO>
<STATE NAME="CONTENT_TYPE" TYPE="string" VALUE="Program" />
<STATE NAME="PARENT" TYPE="string" VALUE="/" />
<STATE NAME="FILE_ID" TYPE="string" VALUE="c0a86451fc492611033559300" />
<STATE NAME="FILE_TYPE" TYPE="int" VALUE="0" />
<STATE NAME="READ_ONLY" TYPE="boolean" VALUE="false" />
<STATE NAME="NAME" TYPE="string" VALUE="ASYLUM.DLL" />
</BASIC_INFO>
</FILE_INFO>

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<FILE_INFO>
<BASIC_INFO>
<STATE NAME="CONTENT_TYPE" TYPE="string" VALUE="Program" />
<STATE NAME="PARENT" TYPE="string" VALUE="/" />
<STATE NAME="FILE_ID" TYPE="string" VALUE="c0a86451f2583322595358500" />
<STATE NAME="FILE_TYPE" TYPE="int" VALUE="0" />
<STATE NAME="READ_ONLY" TYPE="boolean" VALUE="false" />
<STATE NAME="NAME" TYPE="string" VALUE="EUSECODE.FLX" />
</BASIC_INFO>
</FILE_INFO>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -1,11 +1,13 @@
VERSION=1
/
00000007:ASYLUM.DLL:c0a86451fc492611033559300
00000006:CRUSADER-RAW.EXE:c0a8647bdba516037949612600
00000000:CRUSADER.EXE:c0a8647bf0178892741854800
00000001:CRUSADER_NE_WRAPPED.EXE:c0a8647beb3812826386895600
00000008:EUSECODE.FLX:c0a86451f2583322595358500
00000002:seg001_code_off_37600_len_8400.bin:c0a8647bf4b212984786819600
00000003:seg021_code_off_50200_len_4486.bin:c0a8647bd82013090643707800
00000004:seg030_code_off_5E000_len_5071.bin:c0a8647bfe7615910786193500
00000005:seg059_code_off_86A00_len_4288.bin:c0a8647bdaf715949048416300
NEXT-ID:7
NEXT-ID:9
MD5:d41d8cd98f00b204e9800998ecf8427e

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<FILE_INFO>
<BASIC_INFO>
<STATE NAME="CONTENT_TYPE" TYPE="string" VALUE="ProgramUserData" />
<STATE NAME="PARENT" TYPE="string" VALUE="/" />
<STATE NAME="FILE_ID" TYPE="string" VALUE="c0a86451c1883616844258300" />
<STATE NAME="FILE_TYPE" TYPE="int" VALUE="0" />
<STATE NAME="READ_ONLY" TYPE="boolean" VALUE="false" />
<STATE NAME="NAME" TYPE="string" VALUE="udf_c0a86451f2583322595358500" />
</BASIC_INFO>
</FILE_INFO>

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<FILE_INFO>
<BASIC_INFO>
<STATE NAME="CONTENT_TYPE" TYPE="string" VALUE="ProgramUserData" />
<STATE NAME="PARENT" TYPE="string" VALUE="/" />
<STATE NAME="FILE_ID" TYPE="string" VALUE="c0a86451cb1215992032385300" />
<STATE NAME="FILE_TYPE" TYPE="int" VALUE="0" />
<STATE NAME="READ_ONLY" TYPE="boolean" VALUE="false" />
<STATE NAME="NAME" TYPE="string" VALUE="udf_c0a86451fc492611033559300" />
</BASIC_INFO>
</FILE_INFO>

Binary file not shown.

Binary file not shown.

View file

@ -1,10 +1,11 @@
VERSION=1
/
00000006:udf_c0a86451f2583322595358500:c0a86451c1883616844258300
00000002:udf_c0a8647bd82013090643707800:c0a8647bd36436342237796300
00000004:udf_c0a8647bdaf715949048416300:c0a8647bd36636342258818700
00000005:udf_c0a8647bdba516037949612600:c0a8647bd36736342281220400
00000000:udf_c0a8647bf0178892741854800:c0a8647bd36236342207469100
00000001:udf_c0a8647bf4b212984786819600:c0a8647bd36336342224113900
00000003:udf_c0a8647bfe7615910786193500:c0a8647bd36536342248279100
NEXT-ID:6
NEXT-ID:7
MD5:d41d8cd98f00b204e9800998ecf8427e

View file

@ -0,0 +1,2 @@
IADD:00000007:/udf_c0a86451fc492611033559300
IDSET:/udf_c0a86451fc492611033559300:c0a86451cb1215992032385300