# Speakeasy Speakeasy is a Windows malware emulation framework that executes binaries, drivers, and shellcode in a modeled Windows runtime instead of a full VM. It emulates APIs, process/thread behavior, filesystem, registry, and network activity so samples can keep moving through realistic execution paths. You can run it from the `speakeasy` CLI for fast triage or embed it as a Python library and consume structured JSON reports. Background context: [Mandiant's overview post](https://cloud.google.com/blog/topics/threat-intelligence/emulation-of-malicious-shellcode-with-speakeasy/). ## Quick start Install from PyPI: ```console python3 -m pip install speakeasy-emulator ``` Run a sample and inspect high-level report fields (replace `sample.dll` with your target): ```console speakeasy -t sample.dll --no-mp -o report.json 2>/dev/null jq '{sha256, arch, filetype, entry_points: (.entry_points | length)}' report.json ``` ```json { "sha256": "30ec092d122a90441a2560f6778ef8233c98079cd34b7633f7bbc2874c8d7a45", "arch": "x86", "filetype": "dll", "entry_points": 3 } ``` Executable proof for this snippet: [doc/readme-quickstart-showboat.md](doc/readme-quickstart-showboat.md). ## Documentation map ### Start here - [Installation and Docker usage](doc/install.md) - [Python library usage](doc/library.md) - [Help and troubleshooting](doc/help.md) - [Documentation index](doc/index.md) ### CLI usage - [CLI reference](doc/cli-reference.md) - [CLI analysis recipes](doc/cli-analysis-recipes.md) - [CLI environment overrides](doc/cli-environment-overrides.md) - [CLI execution controls](doc/cli-execution-controls.md) - [CLI help snapshot (showboat)](doc/cli-help-showboat.md) ### Reports, configuration, and runtime behavior - [Configuration walkthrough](doc/configuration.md) - [Report walkthrough](doc/reporting.md) - [Memory management](doc/memory.md) - [Limitations](doc/limitations.md) ### Debugging and extension - [GDB debugging reference](doc/gdb.md) - [GDB sessions (showboat)](doc/gdb-examples.md) - [Mounting host files with `--volume`](doc/volumes.md) - [Adding API handlers](doc/api-handlers.md) - [Examples directory](examples/) - [Speakeasy 2 walkthrough outline](doc/speakeasy2-walkthrough.md) ## Questions and help Start with [doc/help.md](doc/help.md). If you still need help, open an issue at [github.com/mandiant/speakeasy/issues](https://github.com/mandiant/speakeasy/issues).