Removes the custom Windows pack pipeline and all pack-path handling, so Windows DLLs and registry hives are now read directly from extracted files on disk. This simplifies library loading, registry access, and file stream behavior across the emulator. this also fixes issues related to Android & Linux support, and software runs much faster than with it. Adds a new VisualCppRuntimeImporter that pulls current x86/x64 VC++ runtime DLLs from Microsoft’s Visual Studio manifests, wires it into --install-windows, and introduces --install-runtimes for runtime-only setup. CLI help and license messaging were updated accordingly. Also added to not autostart the emulator in Android if developer mode is on.
A user-mode x86_64 binary emulator for inspecting programs, tracing syscalls, and safely running untrusted software.
What is Brovan?
Brovan is an interactive x86_64 emulator that gives you full control over how programs execute. It can be used to reverse engineer binaries, trace API and system calls, capture network traffic, or run software in an isolated environment without executing it directly on your host CPU.
It is designed to support as much software as possible while remaining a safe, efficient, and high-performance option for running software across Windows and Linux. Brovan is still in early development, so it is not yet fully mature or reliable.
Supported backends:
- Unicorn Engine for cross-platform emulation
- WHP (Windows Hypervisor Platform) for hardware acceleration on Windows
- KVM (Kernel-based Virtual Machine) for hardware acceleration on Linux
Core Features
|
MULTI-FORMAT LOADING Load and execute binaries directly inside the emulator without host installation. PE ELF Memory Dumps Raw Shellcode
|
BROVVULK GRAPHICS LAYER Custom Vulkan translation subsystem handling DXVK calls and game rendering. DXVK DirectX Vulkan Surface
|
|
SYSCALL & API TRACING Inspect execution live to see what functions, DLLs, and kernel calls the program accesses. Kernel Syscalls Symbol Resolving Loaded DLLs
|
NETWORK DUMPING Intercept guest socket traffic and export network activity for payload analysis. Socket Intercept PCAP Capture Traffic Analysis
|
Previews & Demos
Gaming & Graphics (Brovvulk)
Brovan can render guest graphical applications through its Brovvulk translation subsystem. Here is a sample game i had (Deltarune), but it can work on many other games:
|
|
Deltarune Bring-up
|
Binary Execution & Tracing
|
Linux ELF on Windows Running fastfetch cross-platform
|
Syscall Tracing Live logs of API calls and dynamic symbols |
Raw Binaries Executing shellcode and memory dumps |
Network Inspection
|
Network Capture Intercepting guest socket reads and writes |
Traffic Analyzer Viewing dumped PCAPs and payloads |
Documentation & Wiki
Check out the GitHub Wiki for:
- Building from source
- Architecture details
- Command reference and usage guides
- FAQ
Warning
The Releases page may not always have the latest changes.
For the most up-to-date version, build from source instead or use the latest build from GitHub Actions
Credits
Thanks to Iced library for x86_64 disassembly and assembly.
Thanks to Unicorn Engine for the core emulator.
Thanks to my friend GittingHubbers for help with the MLFQ Scheduler.
License
GPL-2.0