urt-rs / docs /FILE_COVERAGE_TODO.md
nmarshall's picture
Start QVM and native binary reverse engineering with reproducible analysis
fd99160
|
Raw History Blame Contribute Delete
11.1 kB

Every installation file TODO

This is the explicit baseline checklist for every file found beneath .cache/UrbanTerror43/. Initial hashes and sizes are in the snapshot. Initial inspection is described in findings; no file is marked fully reverse engineered.

For each file, completion requires its format/structure, contents and role, provenance, dependencies, behavior where applicable, analysis evidence, and Rust replacement/conversion/preservation disposition. A ZIP entry also requires a linked analysis record for every member occurrence and variant, including unused/overridden data. The complete member manifest enumerates those 9,835 obligations; each member uses the corresponding format/subsystem TODOs. Add newly discovered embedded payloads and files to this checklist and the member register.

Executable/library completion includes code/data/resources, functions and native APIs, not just headers or strings. Ancillary metadata/documents/databases are decoded and documented even if the replacement runtime will not use them.

Current binary progress

The 2026-10-11 static pass covers all seven executables, the bundled SDL dylib and all three QVM members. Every image has source hashes, sections/imports/symbols, strings and full disassembly; QVMs also have validated decoding and provisional control-flow/ABI records. These are partial deliverables. All FILE items stay unchecked until full content, behavior and replacement coverage is established. No packaged DLL was found; imported and dynamically named DLLs are tracked as dependencies, with embedded-code limits documented.

Baseline files

  • FILE-001 Quake3-UrT-Ded.exe (1,082,800 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-002 Quake3-UrT-Ded.i386 (816,002 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-003 Quake3-UrT-Ded.x86_64 (961,958 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-004 Quake3-UrT.app/Contents/Info.plist (1,051 bytes): Decode every bundle metadata field, executable identity/version/resource/class behavior, platform assumptions, and replacement app metadata.
  • FILE-005 Quake3-UrT.app/Contents/MacOS/Quake3-UrT.x86_64 (1,713,680 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-006 Quake3-UrT.app/Contents/MacOS/libSDL-1.2.0.dylib (605,880 bytes): Reverse engineer the bundled x86_64 SDL library: code/data/resources, ABI, exports/imports, build/source correspondence, patches, all function coverage, game integration, and replacement of required services.
  • FILE-007 Quake3-UrT.app/Contents/PkgInfo (10 bytes): Decode package/application identity bytes and platform role; specify replacement metadata and document any inconsistency with the plist.
  • FILE-008 Quake3-UrT.app/Contents/Resources/quake3-urt.icns (167,703 bytes): Decode every icon chunk/image/mask, dimensions/encoding and bundle use; document source art and conversion into replacement platform icons.
  • FILE-009 Quake3-UrT.exe (2,634,689 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-010 Quake3-UrT.i386 (1,702,624 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-011 Quake3-UrT.x86_64 (1,940,280 bytes): Reverse engineer this executable completely: code/data/resources, symbols/function coverage, library dependencies, engine/module interfaces, platform-specific behavior, rendering, sound, networking and Rust replacement mappings.
  • FILE-012 q3ut4/QIIIA_Game_Source_License.doc (34,304 bytes): Extract and inspect the compound document streams, text/formatting/metadata and full supplied license; link applicable source/content obligations and provenance.
  • FILE-013 q3ut4/autoexec_example.cfg (279 bytes): Parse startup scripting and documented bindings/cvars, establish exec/persistence semantics, and define replacement startup configuration.
  • FILE-014 q3ut4/mapcycle_example.txt (406 bytes): Resolve every map name, mapcycle syntax/ordering/state and restart behavior; validate and migrate the rotation.
  • FILE-015 q3ut4/readme43.txt (100,768 bytes): Analyse all version/history/install/license/credit/behavior statements; cross-reference every relevant change/quirk with native/QVM evidence and fixtures.
  • FILE-016 q3ut4/server_example.cfg (26,071 bytes): Parse every command/cvar/value/comment and startup action; recover runtime defaults/flags/ranges/side effects/services and migrate server configuration.
  • FILE-017 q3ut4/ut4_jumpents.pk3 (128,107 bytes): Analyse the archive container and all 7 member occurrences (1,666,557 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-018 q3ut4/zUrT43_001.pk3 (77,799,633 bytes): Analyse the archive container and all 710 member occurrences (215,233,472 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-019 q3ut4/zUrT43_002.pk3 (73,378,053 bytes): Analyse the archive container and all 98 member occurrences (257,879,005 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-020 q3ut4/zUrT43_003.pk3 (67,657,413 bytes): Analyse the archive container and all 52 member occurrences (240,202,610 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-021 q3ut4/zUrT43_004.pk3 (79,753,661 bytes): Analyse the archive container and all 443 member occurrences (218,260,155 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-022 q3ut4/zUrT43_005.pk3 (81,670,979 bytes): Analyse the archive container and all 756 member occurrences (168,585,944 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-023 q3ut4/zUrT43_006.pk3 (66,957,810 bytes): Analyse the archive container and all 548 member occurrences (138,570,159 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-024 q3ut4/zUrT43_007.pk3 (79,245,011 bytes): Analyse the archive container and all 365 member occurrences (168,672,526 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-025 q3ut4/zUrT43_008.pk3 (70,888,281 bytes): Analyse the archive container and all 898 member occurrences (173,153,240 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-026 q3ut4/zUrT43_009.pk3 (79,055,075 bytes): Analyse the archive container and all 429 member occurrences (104,681,786 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-027 q3ut4/zUrT43_010.pk3 (78,055,708 bytes): Analyse the archive container and all 1,320 member occurrences (119,475,016 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-028 q3ut4/zUrT43_011.pk3 (83,375,098 bytes): Analyse the archive container and all 454 member occurrences (176,985,923 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-029 q3ut4/zUrT43_012.pk3 (81,522,127 bytes): Analyse the archive container and all 252 member occurrences (181,429,550 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-030 q3ut4/zUrT43_013.pk3 (77,745,672 bytes): Analyse the archive container and all 345 member occurrences (116,378,042 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-031 q3ut4/zUrT43_014.pk3 (87,697,729 bytes): Analyse the archive container and all 499 member occurrences (162,905,568 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-032 q3ut4/zUrT43_015.pk3 (79,575,542 bytes): Analyse the archive container and all 57 member occurrences (129,993,325 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-033 q3ut4/zUrT43_016.pk3 (95,695,538 bytes): Analyse the archive container and all 455 member occurrences (162,520,234 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-034 q3ut4/zUrT43_017.pk3 (81,088,755 bytes): Analyse the archive container and all 695 member occurrences (150,711,787 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-035 q3ut4/zUrT43_018.pk3 (76,060,663 bytes): Analyse the archive container and all 775 member occurrences (122,948,669 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-036 q3ut4/zUrT43_019.pk3 (46,012,128 bytes): Analyse the archive container and all 328 member occurrences (78,911,406 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-037 q3ut4/zUrT43_020.pk3 (4,587,832 bytes): Analyse the archive container and all 278 member occurrences (14,289,349 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-038 q3ut4/zUrT43_021.pk3 (7,506,845 bytes): Analyse the archive container and all 68 member occurrences (19,770,763 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.
  • FILE-039 q3ut4/zUrT43_qvm.pk3 (565,005 bytes): Analyse the archive container and all 3 member occurrences (2,230,692 expanded bytes), documenting every variant and dependency, conversion and VFS disposition.

Coverage closure

Do not check a PK3 merely because it decompressed, a model because it displayed once, a binary because its symbols imported, or a library because its upstream name was identified. Link each checked item to the file/member/function/resource coverage ledger and completed evidence. Analysis and runtime reachability are separate decisions.