Skip to content

Repository files navigation

DMA-PE-Dumper

DMA-PE-Dumper is a DMA capable portable executable dumper that can work over a PCIe FPGA device or if utilizing a Virtual Machine, shared memory or hugepages. It is currently cross compatible with Linux and Windows.

Currently supports the dumping of both x86 and x64 system drivers, native executables, native executables and their dynamic link libraries.

Screenshot From 2026-08-10 02-50-00

Requirements:

Linux

You must have these socket connections configured in your qemu configuration.

-qmp unix:/tmp/qmp-win10.sock,server,nowait

-qmp unix:/tmp/qmp-win10-1.sock,server,nowait

Please note: To have this run successfully on your Linux machine you must configure your backend as such. https://github.com/ufrisk/LeechCore/wiki/Device_QEMU

Windows

Please note: To have this run successfully on your Windows machine you must have first met these requirements at https://github.com/ufrisk/LeechCore/wiki/Device_FPGA and at https://github.com/ufrisk/MemProcFS

Downloading:

You can download the compiled versions at https://github.com/Trustings/DMA-PE-Dumper/releases/tag/v1.1.0

Building:

Linux

git clone --recursive https://github.com/Trustings/DMA-PE-Dumper.git
mkdir build
cd build
cmake ../
make

Download the linux project binaries at https://github.com/Trustings/DMA-PE-Dumper/releases/tag/v1.1.0 and have them extracted to your working build directory

Windows

git clone --recursive https://github.com/Trustings/DMA-PE-Dumper.git

After cloning or downloading the repository, open the visual studio solution file (.slnx) and compile as x64 Release.

Download the Windows project binaries at https://github.com/Trustings/DMA-PE-Dumper/releases/tag/v1.1.0 and have them extracted to your working build directory

Examples:

Once built, cd into the working build directory, input the name of either a system driver, a target exe, or a target exe with an associative dll.

EXAMPLE 1 -> ./DMA-PE-Dumper YourTarget.sys

EXAMPLE 2 -> ./DMA-PE-Dumper YourTarget.exe

EXAMPLE 3 -> ./DMA-PE-Dumper YourTarget.exe YourTarget.dll

Other Tools:

For dynamic analysis you can use https://github.com/Trustings/DMA-Memory-Editor

About

DMA PE (Portable Executable) Dumper with DTB patching capabilities.

Resources

Stars

73 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages