Record the guest functions identified while cracking the IPFB TOC name-hash: Pak_FindEntryByName (0x824609C8), Pak_HashPathName (0x82460928), Sylph_NameHash (0x82455C78, the Barrett poly-hash), Str_ToLowerAscii (0x825F4F90), Pak_IsIPFBHeader (0x824607B0), Archive_StreamReadCrc32 (0x82458508, content CRC — not the name-hash), Res3D_LoadMeshChunk (0x82640290), and g_Crc32Table (0x828992F0). RE_SYMBOLS.md is the source of truth (names/addresses/signatures + confidence, the name-hash algorithm, and the confirmed TOC key path schemes unit\<ID>.tbl / weapon\<ID>.tbl). apply_re_symbols.sql re-stamps functions.name onto sylpheed.db (wiped on regen); already applied. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
14 lines
1.0 KiB
SQL
14 lines
1.0 KiB
SQL
-- Re-stamp reverse-engineered function names onto sylpheed.db.
|
|
-- Source of truth: docs/RE_SYMBOLS.md. Re-run after any full DB regen
|
|
-- (regen wipes functions.name back to sub_XXXX).
|
|
-- python3 -c "import duckdb; duckdb.connect('sylpheed.db').execute(open('apply_re_symbols.sql').read())"
|
|
-- Addresses are decimal (DuckDB rejects 0x literals in some contexts); hex in comments.
|
|
|
|
UPDATE functions SET name = 'Pak_FindEntryByName' WHERE address = 2185628104; -- 0x824609C8
|
|
UPDATE functions SET name = 'Pak_HashPathName' WHERE address = 2185627944; -- 0x82460928
|
|
UPDATE functions SET name = 'Sylph_NameHash' WHERE address = 2185583736; -- 0x82455C78
|
|
UPDATE functions SET name = 'Str_ToLowerAscii' WHERE address = 2187284368; -- 0x825F4F90
|
|
UPDATE functions SET name = 'Pak_IsIPFBHeader' WHERE address = 2185627568; -- 0x824607B0
|
|
UPDATE functions SET name = 'Archive_StreamReadCrc32' WHERE address = 2185594120; -- 0x82458508
|
|
UPDATE functions SET name = 'Res3D_LoadMeshChunk' WHERE address = 2187592336; -- 0x82640290
|