x64dbg

An open-source debugger for Windows. It runs an executable that has no source code, pauses it, and lets you inspect instructions, registers, and memory.

cat x64dbg/meta.ymlChecked on 2026-10-27

Safety

Impact Reaches othersSees other people's traffic or sends traffic to their devices
Admin rights
Not required
Test lab
Required

Usage

Purpose
Learning
Difficulty
Advanced
Type
Desktop app
Platforms
Windows

Trust

Repository
x64dbg/x64dbg
License
CopyleftGPL-3.0
GitHub
stars50,2662026-11-10
Maintenance
Actively updatedLast update 2026-11-09
Contents
  1. Introduction
  2. What x64dbg is for
  3. Network connections
  4. Requirements
  5. Try it safely with your own program
  6. Common uses
  7. How x64dbg differs from Ghidra
  8. Cautions
  9. Read next
  10. Sources

x64dbg lets you run a Windows executable that has no source code, pause it partway, and look inside. This review uses a small program that you write and compile yourself to show the basic debugger operations.

This review is for people who have written a simple program in C or a similar language and want to see what happens inside a running program. After reading it, you can do the following:

  • Download and start x64dbg
  • Open your own program and stop it at a breakpoint
  • Step through the code and watch instructions and registers change

What x64dbg is for

x64dbg is an open-source debugger for Windows. The official README names analysis of executables without source code, and malware analysis, as its main uses. According to the official website, it offers:

  • Debugging of EXE and DLL files
  • Views for disassembly, the memory map, symbols, threads, and a graph
  • Patching instructions and writing the patches to a file
  • Scripting to automate operations
  • Plugins written in C++
  • A JSON database that keeps your comments and labels

You debug 32-bit and 64-bit programs with the same interface and controls. The executables are separate, though: use x32dbg.exe for a 32-bit program and x64dbg.exe for a 64-bit one.

What it doesn’t dox64dbg does not tell you whether a program is safe. You read the meaning of the behavior from the instructions and memory values you see. A debugger also runs the target program for real. That is different from Ghidra’s automatic analysis, which only reads the file.

Network connections

Here is what we could confirm:

  • Update checks do not run automatically. In the source code, the only places that call the update check are a button in the About dialog and a menu item for checking updates. When you use one, it queries https://update.x64dbg.com/releases.json.
  • Symbols (clues such as function names) are downloaded only when you run the symdownload command or choose “Download Symbols for This Module” in the interface. The default source is Microsoft’s symbol server (https://msdl.microsoft.com/download/symbols). You can change it in the settings dialog.
  • The help and plugin menu items open the official sites in your browser.
  • x64dbg does not block the network traffic of the program you debug. If the target connects to a network, it keeps doing so while you debug it.

This list covers what we could confirm in the source code and the official documentation. We did not read all of the code.

Requirements

Item Details
OS Windows. The official README describes it as a debugger for Windows
Windows version For builds below 10000 (before Windows 10), the source code shows an “unsupported” warning. It says future updates will stop running on that system
CPU ARM64 emulation is not supported. The same kind of warning asks you to switch to an Intel/AMD CPU
Distribution A zip file that you unpack. There is no installer
Memory and disk We could not find an official figure

The latest download is snapshot_2026-05-27_12-11.zip in the GitHub release 2026.05.27 (checked on 2026-10-27).

Try it safely with your own program

  1. From the official releases page, download snapshot_<date>.zip. Do not pick files that start with symbols-snapshot or x64dbg-pluginsdk. They are not the main program.
  2. Unpack it in a place where your user can write. The README states this condition. Do not put it under Program Files.
  3. Run x96dbg.exe in the unpacked folder and choose 32-bit or 64-bit. You can also run x32\x32dbg.exe or x64\x64dbg.exe directly. This review does not use the shell extension or desktop shortcuts that x96dbg.exe can register.
  4. For practice, write a small C program that only prints a string, and compile it as 64-bit.
  5. In x64dbg, choose File>Open and open the compiled file.
  6. You can choose where the debugger first stops in the Events page of Options>Preferences. The choices include the system breakpoint (during process initialization) and the entry breakpoint (the entry of the executable).
  7. In the disassembly view, select an instruction and press F2 to set a breakpoint.
  8. Press F9 to resume. The program stops when it reaches the breakpoint.
  9. When it stops, press F7 (step into) or F8 (step over) to advance one instruction at a time. Watch how the register values change with each instruction.
  10. Compare what you see with your source code to check which instructions each C statement became.

After you are comfortable with your own program, move on to material that clearly allows analysis, such as CTF practice challenges.

Common uses

The default shortcut keys are defined in the source code.

Action Default key
Run F9
Step into F7
Step over F8
Pause F12
Execute till return Ctrl+F9
Toggle breakpoint F2
Restart Ctrl+F2
Open the memory map Alt+M
Open the breakpoint list Alt+B
Pattern search (Find Pattern) Ctrl+B

Attach connects to a running process. It can attach only to a process of the same kind (32-bit or 64-bit) as the debugger. The 32-bit x32dbg cannot attach to a 64-bit process.

You can also work from the command box at the bottom of the window. Conditional breakpoints and logging are available too. The Introduction in the official help covers them in detail.

How x64dbg differs from Ghidra

x64dbg Ghidra
Main way of working Run the program, pause it, and inspect it Disassemble and decompile an imported file, then read it
What you see Registers, memory, and threads of the running program Function structure and C-like decompiled output
OS it runs on Windows Windows, macOS, and Linux

A good order is to read the overall structure in Ghidra first, then follow the parts whose behavior you want to confirm in x64dbg.

Cautions

  • A debugger runs the target. Open files of unknown origin and malware samples only in an isolated environment such as a virtual machine. Don’t run them on your everyday PC. Decide whether to connect the network based on the purpose of your test. How to set up a safe test lab explains how to build one.
  • Before you analyze software that someone else made, check its terms of use and license agreement. Some products forbid reverse engineering. Laws such as copyright law also matter. Don’t use it to bypass license activation. If you are unsure, use only your own programs and materials that allow analysis.
  • You don’t normally need administrator rights. If you open an executable that requires them, x64dbg asks whether to restart as administrator. File>Restart as Admin restarts both x64dbg and the program you are debugging with administrator rights. Use it only when you need it.
  • Registering the shell extension in x96dbg.exe writes to the registry’s classes root (HKEY_CLASSES_ROOT). In the source code, it relaunches itself with elevation (runas) for this. If you don’t use it, this change doesn’t happen.
  • A plugin is a program that you fetch from outside and add. Check where it comes from before you install it.
  • Get x64dbg from the official GitHub releases page or from the download location linked from the official website.

Sources

  1. Official repository README (overview, installation and usage)github.com/x64dbg/x64dbg/blob/development/README.md
  2. Official website (features, GPLv3, libraries used)x64dbg.com
  3. License (GNU GPL v3)github.com/x64dbg/x64dbg/blob/development/LICENSE
  4. Release: 2026.05.27 (assets)github.com/x64dbg/x64dbg/releases/tag/2026.05.27
  5. Official help: File menu (Open, Attach, Restart as Admin)help.x64dbg.com/en/latest/gui/menus/File.html
  6. Official help: Debug menu (run and step commands)help.x64dbg.com/en/latest/gui/menus/Debug.html
  7. Official help: Events (pause settings)help.x64dbg.com/en/latest/gui/settings/Events.html
  8. Official help: symdownload command (symbol download)help.x64dbg.com/en/latest/commands/analysis/symdownload.html
  9. Source: update check code (UpdateChecker.cpp)github.com/x64dbg/x64dbg/blob/development/src/gui/Src/Utils/UpdateChecker.cpp
  10. Source: symbol download (symbolinfo.cpp)github.com/x64dbg/x64dbg/blob/development/src/dbg/symbolinfo.cpp
  11. Source: symbol store in the settings dialog (SettingsDialog.cpp)github.com/x64dbg/x64dbg/blob/development/src/gui/Src/Gui/SettingsDialog.cpp
  12. Source: unsupported-system warnings (MainWindow.cpp)github.com/x64dbg/x64dbg/blob/development/src/gui/Src/Gui/MainWindow.cpp
  13. Source: handling targets that need elevation (debugger.cpp)github.com/x64dbg/x64dbg/blob/development/src/dbg/debugger.cpp
  14. Source: launcher (x64dbg_launcher.cpp)github.com/x64dbg/x64dbg/blob/development/src/launcher/x64dbg_launcher.cpp
  15. Source: default shortcut keys (Configuration.cpp)github.com/x64dbg/x64dbg/blob/development/src/gui/Src/Utils/Configuration.cpp

Checked on 2026-10-27

Similar tools

Ghidra

Impact Local only
NationalSecurityAgency/ghidra

A free, open-source software reverse engineering suite from the NSA. It disassembles and decompiles compiled programs so you can read what they do.

Purpose
Learning
Type
Desktop app
Difficulty
Advanced
License
PermissiveApache-2.0
Category
Reverse engineering / Learning and practice labs
Actively updatedstars99,232Last update 2026-11-10
Read the Ghidra review

Wireshark

Impact Reaches others
wireshark/wireshark

A packet analyzer that records network traffic and breaks each packet down by protocol so you can read it.

Purpose
Learning
Type
Desktop app
Difficulty
Beginner
License
CopyleftGPL-2.0
Category
Network / Forensics
Actively updatedstars10,192Last update 2026-11-10
Read the Wireshark review