Star on GitHubStar2.4k stars

THE REVERSE ENGINEERING COLLECTION

Reverse-engineering case studies

Page 14 of 21, cases 2,601–2,800. 4,025 case studies from 5,191 curated resources, with documented reconstruction methods, scope, and original evidence.

Software reconstruction artifact reviews

Review artifacts from REA workflows and independent reconstructions. Each entry retains its original sources and known limits.

Reconstruction scope
Implemented features, known gaps and required original assets.
Available artifacts
Original code, releases or demos.
Evidence and attribution
Pinned sources, review dates and documented REA roles.
About these cases

Each case appears once under its primary subject, with all its target labels.

Cases 2,601–2,800 of 4,025

Games

2832 cases

All sections

Other methods and analyses

321 cases

AscNet reconstructs a server for Punishing: Gray Raven. Its C# code includes TCP game sessions, HTTP account and configuration endpoints, and handlers for game features. A companion parser reads packet captures, reassembles length-prefixed TCP messages, decrypts them and decodes MessagePack requests, responses and pushes into JSON.

AvalonEmu reconstructs an Albion Online local server for a specific client build in C# and .NET 10. It implements Photon UDP transport, Protocol18 serialization, encrypted handshakes, login and world systems, and a decoder for packet captures. The server loads GameData from the user's own client installation.

battlepod reconstructs the Virtual World Entertainment BattleTech cockpit as a bring-up harness and playable emulator. It runs the cockpit's 68020 software from a user-supplied image, models serial and Remote I/O devices, decodes display lists, and records hardware and inter-pod protocol findings.

Between Us is an offline couple game rebuilt after analysis of the Action ou Vérité Android APK. The report records the original's React Native and Hermes packaging, card database and gameplay model; the replacement uses original Chinese card text, browser JavaScript and a small Android WebView shell.

bf-private-server recreates a self-hosted server for Brave Frontier client version 2.19.6. Its C++23 service answers the game's HTTP requests, stores saves in SQLite and works with CDN workers and a patcher for the user's Android client; request tables and boot-flow notes document the protocol investigation. The server builds on an earlier emulator fork.

BG3SE-macOS rebuilds the Baldur's Gate 3 Script Extender for macOS using Ghidra analysis of the Mac game binary and the Windows extender's architecture as a reference. It patches a Mach-O load command to inject a dylib, hooks game functions, and exposes Lua scripting APIs for mods; the author reports partial behavioral parity with the Windows implementation.

Call of Duty 2: Big Red One runs on Linux and Windows through a native loader that maps the original Xbox x86 game code into a PC process and replaces Xbox platform services. Parts of the renderer, sound system and game code are rewritten as source, with function names grounded in Ghidra analysis and rewritten functions checked against the original through a comparison harness.

Casiolator emulates the Casio PV-1000, PV-2000 and Loopy cartridge consoles using its own Z80, SH-1, video and sound implementations. The project draws on hardware documentation and records original Loopy ROM and sound-chip findings; users provide cartridge dumps, BIOS ROMs and, for Loopy music, a sample ROM.

Chrono Tales reconstructs part of the 2012 MMORPG as a three.js browser world viewer using terrain, scenery and a character decoded from the original GBox2 archives. Its Python toolchain extracts .gpak archives, decodes game formats including maps, meshes and animation clips, and exports glTF assets. A format specification records findings from static analysis of chronotales.exe.

CS:GO Legacy matchmaking research reconstructs a Game Coordinator path for starting and joining matches in the archived game. It combines a JavaScript coordinator, protobuf definitions, client and Linux server patches, and findings about reservation messages, match draft data, and map transitions; the author reports completing a match with map veto.

CTRNativePorted rehosts Crash Team Racing Nitro-Fueled on Windows by loading the original PS4 x86-64 code from a user-owned dump. It replaces imported PS4 system services, supplies Direct3D 11 and Vulkan rendering paths, and provides a local service for online play; the author reports that the game is playable from start to finish.

CyberStrike Server Specification reconstructs the server-facing behavior of the 1994 DOS client of CyberStrike from observation of the client and its printed manual. Four documents describe serial transport, session phases, messages, client rules, server policy, implementation steps and the CBD city-map format so a replacement server can interoperate with the original game.

Cypress reconstructs dedicated-server behavior for Plants vs. Zombies: Garden Warfare 1, Garden Warfare 2 and Battle for Neighborville. A C++ DLL loaded by each game hooks Frostbite functions for connections, level loading and commands, while a desktop launcher and backend services provide server discovery and relay functions. The project targets specified game versions and requires a legally owned copy.

d2-dedicated-server rebuilds a self-hosted Diablo II realm and headless game-server stack. Its Zig services handle Battle.net-style login, character and game operations, while an ingress reads the game's GAMELOGON token to route connections. A separate native variant maps the 1.14d macOS Mach-O game image onto i386 Linux.

Runs the Nintendo Switch release’s own aarch64 program natively on iPhone, iPad and Apple silicon Macs, rewriting only instructions that depend on the Horizon kernel and supplying its system services and the NVN graphics API on Metal. Shaders are translated offline from the user’s files, and the project adds its own touch interface and endgame features. It is a rehosting compatibility layer.

Patches the Darling macOS compatibility layer so that Riot’s macOS League of Legends client and game run on x86-64 Linux. The changes span Darling and 30 of its components, including Metal/Indium, AppKit, QuartzCore, CoreAudio, the kernel shim and darlingserver, with build, install and launch tooling. It is an experimental rehosting layer; playability and frame-rate results are author-reported.

A dated research report on the Sunrise/Dawn reconstruction of the archived Destiny 2 build 86657 client, which emulates platform sign-on and the examined Bungie service contracts locally and adds reconstructed mission host policy. It records transport, decoding, object creation, presentation and gameplay results separately, and keeps superseded conclusions with their cited sources. It documents the case; playthroughs and native results remain project-reported.

Re-implements DirectMusic, the adaptive-soundtrack API Microsoft shipped with early DirectX, as a portable C11 library that loads a game’s segment, style and DLS instrument files and renders the music to PCM. The README lists only the Gothic and Gothic II (Night of the Raven) soundtracks as tested, and as working “somewhat” correctly; the project calls itself incomplete and under heavy development. Instruments play through a vendored TinySoundFont synthesizer after DLS-to-SoundFont conversion.

The Dishonored XP stub project replaces two GOG storefront DLLs so the GOG Definitive Edition can run on Windows XP SP3 with local saves. The author traced incompatible imports, Steamworks exports, vtable calls and save routines in the game executable, then implemented XP-targeted common.dll and libcurl.dll substitutes. The author reports successful play and save/load on an XP system.

Reimplements the neural-rendering network of NVIDIA’s DLSS 5 library as Vulkan compute shaders for AMD RX 9000 (RDNA4) cards and supplies it to games through an NGX-compatible core and ReShade or Vulkan-layer routes. The weights are not distributed: installers extract them, hash-checked, from the user’s own nvngx_dlssnr.dll 310.9.16 or 310.8.0. The project compares its output with NVIDIA’s DLL on an RTX 5090 and reports close, not bit-identical, pictures.

An essay on REA’s site by N0zoM1z0 (13 October 2026) uses dated Touhou reconstruction commits to ask whether exact function matching needs a larger general model, a compiler-specialist model or better retrieval. It walks through TH09, TH095, TH04 and TH08 cases where later GPT-6-series sessions closed stubborn matches, and the TH08 audit that found accepted functions with wrong floating constants. Specialist and reinforcement-learning comparisons are proposed as future experiments; no trained specialist was evaluated.

Dogfish investigates the Conquest of Skyrim mod for Skyrim Special Edition and reconstructs its strategic systems as a standalone Rust simulation. Its documents cover behavioral contracts, original Papyrus and binary research, and an experimental SKSE integration bridge. The project reports that in-game execution checks remain blocked pending human playtesting.

Doki Doki/Super Mario Bros. 2 Disassembly covers Yume Kojo: Doki Doki Panic for the Famicom Disk System and Super Mario Bros. 2 and Super Mario USA for NES/Famicom. It provides a modifiable disassembly, includes bintofdf and fdtc for building a disk image, and extracts required assets from a game image.

Dragon Ball Z: Buu's Fury disassembly rebuilds the US Game Boy Advance release from ARM and Thumb assembly, a small amount of C, and generators that recover assets from the user's ROM. The build checks the result against the retail digest and tracks which bytes still come from raw slices. The author reports that 94.0959% of ROM bytes are produced from tracked source.

Dragon Ball Z: The Legacy of Goku II is reconstructed as a byte-matching GBA disassembly using ARM and Thumb assembly generated from the user's USA ROM. The build also re-encodes game containers, carries remaining bytes as slices of that ROM and compares the output with the retail digest. The author reports that 68.2846% of the ROM builds from tracked source.

This project disassembles code from the USA Game Boy Advance release of Dragon Ball Z: The Legacy of Goku into ARM and Thumb assembly and reports a byte-identical ROM rebuild using data from the user's own copy. Build scripts generate assembly for identified code, rebuild compressed streams and compare the resulting image digest with the retail ROM. The author reports that much of the image is source-generated while remaining bytes come from local ROM slices.

dream-server reconstructs server behavior for Pokémon Dream World, including Game Sync save uploads and downloads. Its Flask handlers track sleeping Pokémon state, store save data and assemble byte responses; code comments record observations about how the game interprets parts of a download response.

DriveClub Recomp runs the PS4 release of DriveClub 1.28 on Windows and Linux using the game's own x86-64 code. It reimplements PS4 system libraries, translates GPU commands to Vulkan and loads the update and base-game data from the player's dumps. Its online notes document lobby messages and service calls found in the game's eboot.

ds3os reconstructs online servers for Dark Souls 2: Scholar of the First Sin and Dark Souls 3, with matchmaking, profiles and multiplayer features. It includes a loader that redirects the games to a custom server and protobuf definitions for network traffic; some server calls and message fields remain unresolved.

Epoch & Equinox is one native player for The Legend of Zelda: Oracle of Ages and Oracle of Seasons. The USA/Australia Ages ROM roms/tlozooa.gbc has SHA-1 880374fb978b18af4aa529e2e32f7ffb4d7dd2f4. The USA/Australia Seasons ROM roms/tlozoos.gbc has SHA-1 ba1268290fb2b1b70505d2d7b5825fc8a4816a4b. The runtime interprets the loaded ROM. Rewind covers about 12 seconds. A voxel mode rebuilds rooms from the game's collision data. Platforms are Linux, Apple silicon macOS, and Windows.

fh2-world-formats reconstructs the file formats behind the Forza Horizon 2 world and supplies Python tools for reading and changing them. Its research covers PGZP GeoChunk archives, ChunkMap indexes, ModelBin meshes, PhysicsTemplate collision, placement cells and WVAN navigation data; the author reports byte-exact round trips and a visible custom-geometry experiment.

FH2MP restores Forza Horizon 2 multiplayer with a replacement server based on protocol behavior recovered from the Xbox One game client. An in-game shim redirects sockets and web-service calls, while Python and Go servers handle lobbies, worlds and online features; a launcher manages setup and updates.

Flipper Zero Lego Dimensions ToyPad Emulator reproduces the game accessory’s USB behavior on a Flipper Zero. Its C app lets players place characters and vehicles on ToyPad positions, save upgraded vehicles, and select favorites. The README credits earlier ToyPad emulators for research and code used during development.

Freelancer.Reverse.Runtime reconstructs part of Freelancer (2003)'s runtime DLL interface through a compatible dacom.dll proxy. The proxy loads the original module, forwards exports, and logs calls associated with hashing, string comparison, telemetry, and initialization; the author reports using it in a running game.

FreeSci reimplements Scientist Hunt, a Half-Life multiplayer mod about containing rapidly multiplying scientists, as a QuakeC game for FreeHL and the Nuclide SDK. The source covers client HUD and team menus, server rules for the hunt, stealth, slaughter, madness, invasion and fear modes, scientist monster behaviour, spawn-data parsing, player movement and entity definitions for the mod's weapons.

The project maps the Game Boy Camera SRAM save format through comparisons of dumps from real hardware. Its notes identify image-slot state vectors, mirrored fields and checksums, while GNU Octave and MATLAB scripts inspect slots, extract pictures and inject custom images. The repository also includes sample saves for several camera variants.

Custom firmware for the Mario and Zelda Game & Watch consoles that patches new C code into the user's own stock firmware backups, so the original firmware runs alongside the retro-go emulator. A Python patcher hooks stock function calls, relocates and LZMA-compresses stock code and data to free flash, and can merge both models' firmware into one image. Committed symbol maps, a cross-reference mapper and an analysis-ELF builder support the reverse engineering, and a journal records the author's first firmware-patching work.

Ganbare Goemon Kirakira Douchuu is being disassembled bank by bank for the Super Famicom v1.0 ROM. The build extracts assets from the user's original ROM, assembles source with Asar, and can compare the rebuilt SHA-1. Code and data identification remain incomplete, and later ROM revisions are not supported.

GFXFileManager implements a reverse-engineered replacement for Silkroad Online's Joymax File Manager interface. Its DLL loads game files directly from disk instead of the pk2 container and logs function calls. The implementation remains incomplete: file creation, deletion, directory handling and archive browsing are unavailable.

GTA Mode is a native plugin that adds direct control of spawned citizens and cars to SimCity 3000 Unlimited. It uses findings from Ghidra analysis of the game's binaries, GZCOM plugin loading, in-memory city structures and sprite archives. The C plugin runs in the original game, reads city data from its memory and decodes art from the user's installation; MODLOG.md records addresses, formats and dead ends.

GunBound Java Emulator recreates Broker, Game, and Buddy services for the Thor's Hammer versions of GunBound using Java and Netty. It documents the client protocol's packet framing, command opcodes, AES-based session encryption, and sequence checks, with handlers for authentication, lobbies, rooms, gameplay, and friends.

hearthstone-deck-format documents the encoded deck strings used by Hearthstone. It breaks a base64-decoded example into header, hero, single-copy card, double-copy card and footer fields, and explains varint card identifiers. The author incorporated corrections from HearthSim's algorithms and includes Python format and parser files.

Hitman 5 Server reconstructs the web services used by Hitman: Absolution and Hitman: Sniper Challenge, with C# endpoints and a configurable client hook. Its documentation traces client startup requests, metadata parsing and message templates; the author says much of the server currently responds with mocked data.

inFAMOUS Second Son native PC port

Independent reconstruction project

Runs the PS4 inFAMOUS Second Son’s own x86-64 code natively on Windows and Linux: a runtime reimplements the PS4 system libraries the game uses, and a shadPS4-derived core translates its GPU commands and shaders to Vulkan. The project reports a playable, in-development port that reaches gameplay and the first chapters, with unstable performance and remaining graphics glitches. It is a compatibility-runtime port rather than a decompilation, and its results remain project-reported.

inFAMOUS: First Light — PC Edition runs the user's PS4 game files on Windows through a compatibility runtime while executing the game's x86-64 code on the PC CPU. It adds First Light-specific imports, system services, and hash-checked engine hooks to a runtime shared with Second Son, with a Vulkan 1.3 backend and GCN-to-SPIR-V shader translation. The author reports that the early build reaches open-world gameplay.

The Infinite Crisis preservation server reconstructs login, menus, Tutorial 1 and versus-AI matches for the 2015 Steam client. It uses decompilation notes and mapped network messages, while loading champions, maps and scripts from the player's game installation; the author reports broad match coverage with remaining tutorial and rendering gaps.

International Superstar Soccer Deluxe is an SNES disassembly based on the USA ROM. Its assembly files cover ROM mapping, RAM mapping, macros, SPC700 material, and asset pointers, while batch scripts extract assets from a user-supplied clean, headerless ROM using the author's SNES ROM framework.

Katten Project reimplements server behavior for the Plus+ social gaming network and the Touch Pets games. Python modules provide account, session, cloud-save and leaderboard endpoints, while research notes describe XML elements parsed by Touch Pets clients. The project also includes a script that patches a user's game binary to stop using HTTPS.

kult-atari-st-c hand-reimplements the core of the Atari ST game Kult: The Temple of Flying Saucers in documented C, using an assembly decompilation as its behavioral reference. A Musashi-based differential harness runs original routines and compares memory and registers with the C candidates. The repository supplies core code and tests.

This Left 4 Dead 2 study reconstructs the AI Director's pacing, intensity, encounter placement and music rules from an identified x86 server.dll and sanitized runtime traces. It publishes disassembly-derived findings, analysis scripts, evidence files and implementation specifications; a reference game library is in a separate repository.

libadlib reconstructs the ADLIB behavior system shipped with HyperBlade, including its language, PBN compiler and host-independent runtime. Its tools decompile and inspect PBN plans, draw behavior graphs, compare files and trace execution. The author reports byte-identical compiler output for the game's 32 shipped plans in compatibility mode.

Limbo restores mission play in the 2016 Fortnite Save the World OT6.5 client using an injected game-server DLL and a separate backend. Its development notes describe UE 4.12 name and object table discovery, ProcessEvent tracing, executable analysis and hooks used to rebuild mission behavior. The author reports up to four-player cooperative play, while some missions and enemy behaviors remain incomplete.

LunarCore is a Java reimplementation of the Star Rail game server for a 4.2.0 client. ./gradlew jar builds LunarCore.jar, and java -jar LunarCore.jar starts it. The resources directory needs the Config, TextMap, and ExcelBin folders from the StarRailData set. Java 21 is required. The server can use its built-in database, and the README also recommends MongoDB 4.0 or newer. Login, teams, inventory, monster battles, shops, gacha, mail, Forgotten Hall, Pure Fiction, and a partial Simulated Universe are listed as present.

mc4.sav documents the save format written by the Midnight Club: Los Angeles recompiled PC runtime. It maps big-endian section records, career values, garage slots and performance-upgrade bytes from observed saves, and supplies a browser editor and PowerShell commands for inspecting and changing supported fields.

MHServerEmu recreates the backend for Marvel Heroes clients using C# server code and versioned protocol definitions. Its documentation covers client-server packet structure, authentication, and game-data formats; the author reports full support for client 1.52.0.1700 and preliminary support for several others.

MineStrike 1.6 reconstructs interfaces of Counter-Strike 1.6's closed client and engine binaries to add Minecraft-style gameplay inside GoldSrc. A client proxy forwards and wraps exports, while server hooks add blocks, inventory and crafting; its installer builds a block version of de_dust2 from the user's game data.

MobiGoEmu reconstructs the VTech MobiGo handheld in C so user-provided system ROM and cartridge images can run with touch, keyboard, pad and sound support. Its research covers the GeneralPlus u'nSP CPU and cartridge-derived ADPCM36 audio format, supported by a small disassembler and CPU comparison tools.

msattack is a Go reimplementation effort for the Metal Slug Attack backend. The author describes capturing traffic between the game and its server to infer private API behavior, then writing a replacement service and proxy scripts. The documented setup also requires game data obtained separately from observed traffic or another source.

MTG Arena Collection Export reconstructs the Frontdoor request needed to export owned cards from Magic: The Gathering Arena. The Python client uses an account refresh token, opens a TLS Frontdoor socket, authenticates with the 2026 version 4 frame and protobuf command envelope, and requests Card_GetAllCards. A separate protocol document records the recovered wire format.

mw-tools: reconstructing a MythWar I server

Independent reconstruction project

mw-tools develops a MythWar I server from scratch using the game client. The project seeks old gameplay videos or recordings to help replicate original features. Its TypeScript code targets Node 16 and includes a script that creates the client's door.dat server-list file for local play. The server currently lacks data storage, multiplayer and most game features.

Mystic Nights Online recreates multiplayer services for the PlayStation 2 game Mystic Nights in a Python server. The author derived expected packet replies through Ghidra decompilation of client parsing code, PCSX2 memory inspection and packet fuzzing; the server handles accounts, lobbies and game synchronization.

NeoXResearch investigates NetEase's NeoX game engine through static analysis and dynamic debugging of its native library. It documents NPK archive headers and metadata entries, the file-loading and decryption path, and changes to Python bytecode opcodes. Python scripts support NPK unpacking, decryption and bytecode repair.

NFS Online Server reconstructs online services for Need for Speed: Underground 2, Most Wanted (2005) and Carbon. Python services handle game-specific bootstrap, lobby, race relay and Carbon FESL traffic, while three Zig-built Windows ASI plugins connect the original clients to the replacement services.

NMS Shipwright investigates No Man's Sky ship generation and save structures through the user's installed game. It reads game archives, runs the game's generator code offline with Unicorn, finds seeds for chosen ship designs, locates ships in star systems, and edits ships and other save fields after creating a backup.

Open1560 partially reimplements Midtown Madness Sneak Preview Beta build 1560 in C++, retaining assembly for functions not yet rewritten. Its source adds an OpenGL renderer, controller support and fixes, while its methodology notes identify builds and discuss disassembly. Running it requires data from a user's installation of the original game.

OpenBoxer reconstructs selected functions of the Windows game Месть боксера. Московский криминалитет as an injected replacement DLL. The project documents behavior contracts and paired checks for MS3D loading, rendering, animation and bounded attack paths; unsupported states return to the original game functions.

Opengate remakes NetDevil's online space game Jumpgate in C++ as a game client, a game server and a state server built on OGRE, CEGUI, Bullet and Boost asio, which log in through a metaserver whose requests the project documents. Its data recreates the Jumpgate sector map with jumpgate links and faction ships such as the Tauseti Lady Kickstart, and its design notes list item prices, scale ships from NetDevil's DirectX models and include an item data set that uses data extracted from NetDevil's JOSSH database.

OpenPigeon is a TypeScript codec for reading GamePigeon iMessage game state and encoding caller-supplied moves for eleven turn-based games. Its protocol documentation describes balloon identity, encrypted move URLs, the length-seeded cipher and the state envelope; captured-message vectors support codec tests.

ORPHEUS reimplements server behavior for Overwatch 1 retail build 1.74.0.0.104319. Its Python and Rust code covers local login, lobby handoff, encrypted UDP, player input and selected Practice Range simulation for Soldier: 76. The project records observed original-client behavior and tests for selected fixtures, while broader modes and client acceptance remain in progress.

outrun: a Sonic Runners custom server

Independent reconstruction project

Reimplements the game server for the Sonic Runners mobile game as a Go service, so Android and iOS clients redirected to it can log in, play Timed and Story modes and use the shop, roulettes, character and Chao progression, events, notices and basic rankings. The README says it was reverse engineered from the Sonic Runners Revival server, on whose code it bases much of its own; it serves about 40 HTTP endpoints of the client's API, decrypts and encrypts AES-CBC request payloads and keeps player state in a bbolt database.

This Panzer Dragoon Saga project investigates Sega Saturn disc and asset formats. The repository documents MCB/CGB models, CPK video, PRG subtitles and audio formats, with Python extractors and browser viewers. The author reports results for model, video, music, font and texture extraction and conversion.

picowalker develops an RP2350-based recreation of the Pokéwalker accessory for Pokémon HeartGold and SoulSilver. This repository provides board drivers for the OLED display, IrDA, EEPROM, accelerometer, power management and USB save-data transfer; the application core is separate. Full compatibility with the games remains a goal.

poketaka-sim reconstructs PokéTaka battle behavior from replay logs and simulates a recorded match hit by hit. It converts damage observations into interval constraints, compares candidate critical-hit and rounding rules, and checks the inferred model against held-out hits. The author reports exact reproduction of 255 observed hits in the example battle.

Prineo_RE investigates the PriPara arcade games' model and resource formats and provides a Noesis addon to load skinned meshes, encrypted assets and texture bindings. Its notes describe BIN containers, MDJ geometry and scene chunks, and modified hashing and pseudorandom routines encountered during format analysis.

Rebuilds the NTSC PlayStation 2 release of Sly Cooper and the Thievius Raccoonus as a native C++ game for Windows and Linux, running on data extracted from the player's own disc image. The README reports the full game as playable while work continues on accuracy and remaining differences from the original. It does not describe its reverse-engineering method or relate the port to the separate sly1 decompilation.

Prospect is an unfinished local server emulator for The Cycle: Frontier. An injected Windows component hooks the client’s PlayFab URL function to redirect requests to localhost, and a C# API contains handlers for Steam-ticket login and user data. Local redirection is implemented; authentication, lobby functionality and CloudScript remain unfinished.

PTCGP Private Server replaces selected Pokémon TCG Pocket 1.8.1 online services with local HTTPS and gRPC endpoints for profiles, collections and pack openings. A Windows controller routes a rooted Android client's traffic to per-device servers, checks the client build and imports game data from the user's installation.

↑↓ move↵ open⌘↵ new tab