2025-04-12 08:26:38 +02:00
2025-04-12 08:26:38 +02:00
2025-01-10 21:13:15 +01:00
2025-04-12 08:09:19 +02:00
2025-03-18 20:58:26 +01:00
2024-08-15 19:00:01 +02:00
2025-02-03 20:27:28 +01:00
2025-04-12 08:26:38 +02:00
2024-08-15 19:00:01 +02:00
2024-10-23 19:10:13 +02:00
2025-04-09 18:59:09 +02:00

Windows User Space Emulator

A high-performance Windows process emulator that operates at syscall level, providing full control over process execution through comprehensive hooking capabilities.

Perfect for security research, malware analysis, and DRM research where fine-grained control over process execution is required.

Built in C++ and powered by the Unicorn Engine (or the icicle-emu 🆕).

Key Features

  • 🔄 Syscall-Level Emulation
    • Instead of reimplementing Windows APIs, the emulator operates at the syscall level, allowing it to leverage existing system DLLs
  • 📝 Advanced Memory Management
    • Supports Windows-specific memory types including reserved, committed, built on top of Unicorn's memory management
  • 📦 Complete PE Loading
    • Handles executable and DLL loading with proper memory mapping, relocations, and TLS
  • Exception Handling
    • Implements Windows structured exception handling (SEH) with proper exception dispatcher and unwinding support
  • 🧵 Threading Support
    • Provides a scheduled (round-robin) threading model
  • 💾 State Management
    • Supports both full state serialization and fast in-memory snapshots (currently broken 😕)
  • 💻 Debugging Interface
    • Implements GDB serial protocol for integration with common debugging tools (IDA Pro, GDB, LLDB, VS Code, ...)

Note

The project is still in a very early, prototypical state. The code still needs a lot of cleanup and many features and syscalls need to be implemented. However, constant progress is being made :)

Preview

Preview

YouTube Overview

YouTube video

Click here for the slides.

Build & Run Instructions

Instructions on how to build & run the emulator and more can be found in the Wiki!

Description
Languages
C++ 85%
TypeScript 10%
Rust 2.7%
CMake 1.5%
CSS 0.3%
Other 0.4%