add architecture details and more third-party lib details

This commit is contained in:
Benjamin Palko 2026-10-14 16:42:18 -04:00
parent 39e86f667f
commit baac905ef2
83 changed files with 17657 additions and 1 deletions

26
third-party/README.md vendored
View file

@ -44,6 +44,32 @@ Notes:
| `ApexProxy.dll`, `ApexProxyMain.dll` | no VERSIONINFO | Proprietary (Apex anti-cheat); no public SDK. |
| `XLSLogin.dll` | no VERSIONINFO | Unknown origin; no public source identified. |
## Statically linked: TinyXML
TinyXML is not a separate DLL; it is compiled into the server EXEs.
- **Identity (observed):**
- 9 `TiXml*` RTTI classes appear in 14 of the 16 server EXEs. The two
`SMMonitoring` EXEs have none.
- In `Agent_Release_x64.exe`, the 12 TinyXML error-table strings and
`Failed to open file` appear contiguously at file offset `0x11d570`.
- There is no version string in the binary.
- **Version (inference from the error table):**
- The binary contains `Memory allocation failed.`. TinyXML 2.6.x removed that
entry; 2.5.1–2.5.3 have it, and their error tables are identical.
- So it is 2.5.1–2.5.3, but which one is unresolved. `tinyxml.h` and
`tinyxmlparser.cpp` differ between those releases, and the code has not been
compared.
- 2.5.0 couldn't be fetched, and pre-2.5 releases were not checked.
- **Directory:** `tinyxml-2.5.3/` holds the latest 2.5.x release, unmodified.
- Source: `sourceforge.net/projects/tinyxml`, file `tinyxml_2_5_3.zip`.
- SHA-256: `143590aa5930c1326315fb9fe3c0aab316a43751a44582dedd69331004b2c6a1`.
- **Match:** closest available, not confirmed exact.
- **Licence:** zlib, so it's fine to commit.
- **Use:** class layouts and the parser source let you label TinyXML functions
in the decompiled output, via the class records' method tables and the error
strings above.
## Statically linked: ProudNet (Nettention) — local-only headers
ProudNet is not a separate DLL; it is linked into the server EXEs.