mirror of
https://github.com/NohamR/Reclass.git
synced 2026-05-10 19:59:21 +00:00
extractPdbSymbols() was reading S_GDATA32/S_GTHREAD32 records which contain a typeIndex field linking the symbol to its type definition in the TPI stream, but this field was discarded — only name + RVA were kept. This meant loading symbols gave you address resolution but no way to automatically import the type associated with a global variable. Changes: - PdbSymbol now carries typeIndex (0 = no type info / public symbol) - extractPdbSymbols() captures typeIndex from all global data symbols - PdbSymbolSet stores nameToTypeIndex mapping alongside nameToRva - New importTypeForSymbol() follows LF_POINTER/LF_MODIFIER chains to find the underlying UDT/enum and imports it with full recursive children - New symbols.importType MCP tool: given "ntdll!g_pShimEngineModule", resolves its typeIndex, imports the type definition from the PDB, and merges it into the active project - loadPdbIntoStore() helper consolidates the extract+store pattern with type index support
4.1 KiB
4.1 KiB