📈 GH Trending Explorer 🎲 Surprise me

← all repos

SatyPardus / wowdecomp

git clone https://github.com/SatyPardus/wowdecomp.git

—

—
stars, 24h
—
stars, 7 days
+364
stars, 30 days · #732
364
★ total
181
forks · 24 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageC++
License—
Created2026-10-02 (18d ago)
Last push3d ago
Watchers11
OwnerUser

Links

README excerpt
# wowdecomp
A C++ decompilation of the World of Warcraft 3.3.5a client (`Wow.exe`, build 12340, June 2010).
Join the discord for other clients and to show off some cool stuff you build.
https://discord.gg/DsZMGUD8aT
Every function is reconstructed from the original binary and keeps the address it came from in an
`// OFFSET:` tag, so each one can be compared against the original. The source tree follows the layout
of the original client (`Engine/Source/ `, `WoW/Source/ `, original file names).
x64 is the main target. Win32 still builds and is used to check struct layouts against the 32-bit
original.
## Progress
The percentages below measure how much of the original binary has a counterpart in this source tree. They do
**not** say how much of the game works, and the missing part is not missing gameplay: the client builds into a
complete executable and the game is 100% playable. Bugs could still be hiding, though; a ported function can behave differently
from the original.
Measured against the 12340 binary on 2026-10-15. A function counts as ported when its address is
tagged in the source.
| | Ported | Total | Share of the original |
|---|---:|---:|---:|
| Functions | 24,515 | 27,157 | 90.3% |
| Code bytes | 5,270,186 | 5,656,573 | 93.2% |
The total leaves out 658 functions that IDA identifies as compiler library code and 132 import thunks.
Most of the untagged remainder is code the build gets elsewhere: compiler-generated code (static
initializers, template instances) that our compiler emits on its own, C runtime helpers, and third-party
libraries that are linked from their upstream sources instead of being decompiled (FreeType, zlib, PCRE,
parts of FMOD Ex).
## Requirements
- Windows 10 or 11
- Visual Studio 2022 with the **Desktop development with C++** workload (MSVC v143 and a Windows SDK)
- CMake 3.10 or newer (the one that ships with Visual Studio works)
- For Win32 builds only: NASM, on `PATH` or passed as `-DNASM_EXECUTABLE= `, and
 `DivxDecoder.dll` from your 3.3.5a client copied to `ThirdParty/DivxDecoder/` (the build copies it next to the
 executables; the x64 build uses its own decoder instead)
- A World of Warcraft **3.3.5a (12340)** client. No game data is included in this repository.
## Building
From a Developer PowerShell or any shell with `cmake` on `PATH`:
 [code] 
In-source builds are refused, so keep the build directory separate (`build/` above).
The client is written to `bin/Win/`:
| Target | x64 | Win32 |
|---|---|---|
| `WowClient` | `WowClient64.exe` | `WowClient32.exe` |
| `Wow` | `Wow64.exe` | `Wow32.exe` |
`WowClient` is the client with a crash logger: it opens a console window and writes
`WowClient_crash.log` when the client crashes. `Wow` is the same client without it. You can also turn the
logger off in `WowClient` with `-DWOWCLIENT_CRASH_LOG=OFF`.
### Options
| CMake option | Default | Effect |
|---|---|---|
| `WOWDECOMP_DISABLE_SIGNATURE_CHECKS` | `OFF` | Skip the MPQ file and `.toc.sig` signature checks, so modified