v2.0 — GDI+ Edition

MikuWrathEngine MWE

Cheat Engine Clone — GDI+ Edition

A memory scanner, disassembler, hex editor, and AOB signature maker built entirely with native Win32 GDI+. No ImGui. No DirectX. Pure C++ and raw Windows API.

View on GitHub Download Releases
Language: C++20 UI: Win32 GDI+ Disasm: Capstone License: MIT
miku_wrath_engine.exe
MWE> scan --type 4bytes --exact 100
[*] Scanning 1,248 regions (writable only)...
[*] Found: 1,432 results
MWE> nextscan --changed
[*] Narrowed to 3 results
MWE> disasm 0x00401000
// 00401000: 89 05 00 00 40 00 mov dword ptr [0x00400000], eax
// 00401006: 90 90 90 90 nop; nop; nop; nop
MWE>
——————

Overview

MikuWrathEngine is a lightweight, single-binary memory analysis tool for Windows — a Cheat Engine alternative that skips heavyweight UI frameworks in favor of raw Win32 GDI+ rendering.

Built from scratch in C++20 with zero external UI dependencies, MWE delivers a full-featured memory manipulation toolkit in a single executable. The entire interface is rendered through immediate-mode GDI+ widgets — no ImGui, no DirectX, no Electron. Just pure Win32.

The VS2022-inspired dark blue theme with neon glow accents provides a clean, professional aesthetic while maintaining the hacker/terminal vibe. Every widget — buttons, text inputs, combo boxes, scrollbars — is hand-rolled in immediate-mode style, giving the engine full control over rendering and input.

——————

Features

A full toolkit for memory analysis, reverse engineering, and game hacking.

🔍

Memory Scanner

Async first-scan and next-scan with 8 value types: Byte, 2/4/8 Bytes, Float, Double, String, and AOB. Supports exact value, bigger/smaller than, between, changed/unchanged, increased/deased. Hex mode and writable-only filtering.

Async
👁

Memory Viewer

Standalone window with synchronized hex dump and disassembly views. Module-relative address formatting, inline hex byte editing with nibble-level precision, and scroll-sync between hex and disasm panels.

GDI+
📜

Disassembler

Capstone-powered disassembly with x86/x64 auto-detection. Follow-in-hex, go-to-disasm navigation, and instruction-level context menu for NOP, patch, and assemble operations.

Capstone
🔦

AOB Signature Maker

Interactive byte-grid signature builder with per-byte wildcard toggling. Generate AOB patterns like 7F ?? 90 41 and copy to clipboard with one click.

Signatures

NOP & Patch

One-click NOP for any instruction or hex line. Patch bytes dialog accepts space-separated hex like 90 90 EB 05 — write directly to target process memory.

Patching
📝

Address Table

Persistent address table with freeze/unfreeze, inline value editing, type switching, descriptions, and save/load to .mwt files. Right-click context menu for browse, copy, and delete.

.mwt
💻

Process Manager

Process picker with live filter, module enumeration, and memory region listing. Auto-attach by process name, 64-bit detection, and module-base address resolution for module+offset syntax.

RPM/WPM

Settings

Configurable font size (6–20px), auto-attach target, and persistent settings saved to miku_settings.ini. Dynamic layout adapts to font size changes.

Config
🎮

Neon Theme

VS2022-inspired dark blue color scheme with multi-pass neon glow borders. Immediate-mode widget system with clipping, text scrolling, and selection support. Fully anti-aliased GDI+ rendering.

UI
——————

Usage

From process selection to memory patching in five steps.

1

Select a Process

Click Open Process in the process bar to open the process picker. Filter by name, then double-click a process to attach. MWE auto-detects 32-bit vs 64-bit and initializes the disassembler accordingly. You can also configure Auto Attach in Settings to automatically attach when a named process launches.

2

Run a Scan

Choose a value type (Byte, 2/4/8 Bytes, Float, Double, String, or AOB) and a scan type (Exact Value, Bigger/Smaller Than, Between, or Unknown Init). Enter the value and click First Scan. For subsequent scans, use Next Scan with Changed/Unchanged/Increased/Decreased to narrow results. Enable Hex mode for hex input, or Writable to filter by page protection.

3

Manage the Address Table

Double-click a scan result (or right-click → Add to Address Table) to pin it. The address table supports freeze/unfreeze, inline value editing (press Enter to write), type switching, descriptions, and save/load to .mwt files. Right-click a row for browse-in-viewer, copy address, or delete.

4

Browse Memory

Click Mem Viewer to open the standalone memory viewer window. The top panel shows disassembly; the bottom shows the hex dump. Use Ctrl+G to go to an address (supports module+offset syntax). Click any hex byte to enter inline editing mode — type hex digits to modify bytes directly.

5

Patch & Signature

Right-click any instruction in the disassembly for NOP, Patch Bytes, AOB Signature, or Assemble. The AOB Signature Maker shows a clickable byte grid — toggle any byte to a wildcard (??) and copy the resulting pattern. The Assemble dialog accepts raw hex bytes to patch the current instruction.

——————

Build Instructions

Build from source with CMake and MSVC (Visual Studio 2022).

Capstone is fetched automatically via CMake FetchContent — no manual dependency installation required.

Visual Studio 2022 CMake 3.16+ C++20 Windows SDK
build — cmake
# Clone the repository git clone https://github.com/RealSyferX/MikuWrathEngine.git cd MikuWrathEngine # Configure with CMake (VS 2022 generator) cmake -B build -G "Visual Studio 17 2022" -A x64 # Build in Release mode cmake --build build --config Release --parallel # Or build directly with MSBuild msbuild build/MikuWrathEngine.sln /p:Configuration=Release /p:Platform=x64 # Output: build/Release/MikuWrathEngine.exe
——————

License

MIT License

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.