Kelsidavis-WoWee/include
Kelsi 88d047d2fb feat: implement Warden API binding / IAT patching for module imports
Complete the last major Warden stub — the import table parser that
resolves Windows API calls in loaded modules. This is the critical
missing piece for strict servers like Warmane.

Implementation:
- Parse Warden module import table from decompressed data (after
  relocation entries): alternating libraryName\0 / functionName\0
  pairs, terminated by null library name
- For each import, look up the emulator's pre-registered stub address
  (VirtualAlloc, GetTickCount, ReadProcessMemory, etc.)
- Auto-stub unrecognized APIs with a no-op returning 0 — prevents
  module crashes on unimplemented Windows functions
- Patch each IAT slot (sequential dwords at module image base) with
  the resolved stub address
- Add WardenEmulator::getAPIAddress() public accessor for IAT lookups
- Fix initialization order: bindAPIs() now runs inside initializeModule()
  after emulator setup but before entry point call

The full Warden pipeline is now: RC4 decrypt → RSA verify → zlib
decompress → parse executable → relocate → create emulator → register
API hooks → bind imports (IAT patch) → call entry point → extract
exported functions (packetHandler, tick, generateRC4Keys, unload).
2026-03-30 22:38:05 -07:00
..
addons feat: display Lua addon errors as in-game UI errors 2026-03-21 06:00:06 -07:00
audio fix: auto-detect CharSections.dbc layout and add Blood Elf/Draenei NPC voices 2026-03-23 11:00:49 -07:00
auth Vanilla/Turtle WoW support: M2 loading, bone parsing, textures, auth 2026-02-13 16:53:28 -08:00
core [refactor] Break Application::getInstance() from GameHandler 2026-03-30 09:17:42 +03:00
game feat: implement Warden API binding / IAT patching for module imports 2026-03-30 22:38:05 -07:00
network fix: getRemainingSize() underflowed when readPos exceeded data size 2026-03-29 19:36:41 -07:00
pipeline chore: remove dead code, document water shader wave parameters 2026-03-30 18:50:14 -07:00
platform Fix all remaining build warnings and eliminate UB in binary parsers 2026-02-23 19:58:38 -08:00
rendering refactor: complete OpenGL→Vulkan migration (Phase 7) 2026-03-30 19:22:36 -07:00
third_party Fix cross-platform FSR3 compile path and Path-A runtime wiring 2026-03-09 04:24:24 -07:00
ui tweak: camera defaults stiffness=30, pivot height=1.6 2026-03-28 11:45:21 -07:00