Skip to main content

EXE Reverse GUI

License: MIT Python

EXE Reverse GUI is a cross‑platform desktop application with a clean graphical interface (inspired by auto‑py‑to‑exe) that extracts and decompiles PyInstaller‑packaged executables.
It leverages pyinstxtractor‑ng to unpack the EXE and pylift (this repo’s own decompiler, work in progress) to turn the resulting .pyc files back into readable Python source, all running in separate processes so the UI stays responsive.

EXE Reverse GUI 是一个跨平台的桌面应用程序,提供简洁的图形界面,用于提取并反编译 PyInstaller 打包的可执行文件。
它调用 pyinstxtractor‑ng 解包 EXE,然后使用本仓库自带的 pylift(制作中)把 .pyc 反编译回可读的 Python 源代码,所有操作均在独立进程中运行,保证界面流畅。

反编译器 / Decompilers

默认只启用内置的 pylift(pylift/,纯 Python,每个 Python 版本一个独立 lifter)。 在界面的「反编译器」页里可以启用并排序三个外部工具:

工具 安装方式 覆盖版本
pycdc (Decompyle++) 下载 zip 源码包后自动编译(无编译器则保留源码,git 仅作兜底) 1.0 – 3.15
pycdecompile PyPI(没有时退回 GitHub 源码安装) 以包说明为准
uncompyle6 PyPI 1.0 – 3.8
decompyle3 PyPI 3.7 – 3.8
pychd PyPI(AI 反编译,需要 OpenAI Key) 2.7 – 3.13
  • 优先顺序可调:列表上下移动,反编译时从上到下依次尝试,失败自动落到下一个;
  • 镜像测速:点了「重新测速」后所有镜像先显示「测速中…」,测好一个就把那一条换成实测毫秒数, 下载时自动走最快的可用源,也可停用某个源或勾选「仅用此源」;
  • 安装一路回退:pip 工具按「最快镜像 → 其余镜像 → 官方 PyPI」逐个重试;pycdc 先下 zip 快照, 全部失败才退回 git 克隆,拿到源码后本机有 g++ / cmake 就自动编译;
  • 逐个隔离:每个文件都在子进程里执行,外部反编译器崩溃不会影响界面;
  • 下载可取消 / 可卸载:下载过程中可随时取消(会真的杀掉 pip / git / 下载进程),装好之后可以一键卸载;
  • 编译工具链:pycdc 这类需要编译的工具,可以在「反编译器」页一键下载 ziglang(自带 clang,走 PyPI 镜像, 比下 MinGW 快得多),也可以删除;本机已有 g++ / clang++ / cmake 时自动使用;
  • 下载带帧动画:下载过程显示逐帧点阵动画、真实进度条与实时日志(日志可一键清空,点击下载会自动滑到最底部);
  • 完成后自动打开输出目录:默认开启,可在「高级选项」里关闭。

Web Version / Web 版本

NEW —— 除桌面版外,本仓库还提供了一套 Web 架构实现(webapp/), 界面自带一套帧驱动动画引擎,并支持用本地窗口展示。

cd webapp
pip install -r requirements.txt
python run.py          # 浏览器模式 → http://127.0.0.1:8756
python run_window.py   # 本地窗口模式(Edge/Chrome 独立应用窗口)
  • 架构:Flask 服务端调用 pyinstxtractor-ng / depyo,界面通过 SSE 推送实时日志,日志面板位于底部。
  • 动效:anim.js 帧驱动缓动引擎统一驱动按钮变色、列表悬浮放大淡入、选中竖条弹入、翻页、逐字文本等效果。
  • 详见 webapp/README.md,动画引擎设计见 ANIMATION.md。

Features / 功能

  • Unpack EXE – Supports PyInstaller archives, including encrypted ones.
    解包 EXE – 支持 PyInstaller 归档,包括加密文件。

  • Decompile .pyc – Automatically decompiles all extracted .pyc files to .py.
    反编译 .pyc – 自动将所有解包得到的 .pyc 文件反编译为 .py 源码。

  • Smart Cleanup – Removes standard‑library files, Python interpreter DLLs, .pyd / .so extensions, and other non‑user content, keeping only your original source code and resource files (like images, audio, video).
    智能清理 – 自动删除标准库文件、Python 解释器 DLL、.pyd/.so 扩展等非用户内容,只保留您的源代码和资源文件(如图片、音频、视频)。

  • Real‑time Log – Watch every step in the built‑in console.
    实时日志 – 内置控制台实时显示每一步操作。

  • Multi‑language – Chinese, English, Russian, French.
    多语言支持 – 中文、English、Русский、Français。

  • Advanced Options – Enable debug mode, generate .pyasm assembly, keep raw .pyc files, etc.
    高级选项 – 支持调试模式、生成 .pyasm 汇编文件、保留原始 .pyc 等。

  • Fault Recovery – Automatic retry dialog on failure, process timeout detection.
    故障恢复 – 失败时自动弹出重试对话框,内置进程超时检测。


Installation / 安装

Make sure you have Python 3.8 or later installed.
请确保已安装 Python 3.8 或更高版本。

pip install exe-reverse-gui

From source / 从源码安装

git clone https://github.com/hyy-aaa/exe-reverse-gui.git
cd exe-reverse-gui
pip install .

After installation, the command exe-reverse-gui will be available in your terminal.
安装完成后,终端中会出现 exe-reverse-gui 命令。


Usage / 使用方法

Simply run:
直接运行:

exe-reverse-gui

or via Python module:
或通过 Python 模块运行:

python -m exe_reverse_gui

Steps / 操作步骤

  1. Choose the EXE file you want to analyse.
    选择要分析的 EXE 文件。

  2. Select an output directory (defaults to the EXE location).
    选择输出目录(默认为 EXE 所在目录)。

  3. (Optional) Click Advanced Options… to fine‑tune the extraction/decompilation parameters.
    可选:点击高级选项… 微调提取/反编译参数。

  4. Click Start Extraction – the tool will unpack the EXE, decompile all .pyc files, merge results, and clean up unnecessary files.
    点击开始提取 – 工具将自动解包 EXE、反编译所有 .pyc、合并输出、并清理多余文件。

  5. When finished, a dialog will point you to the folder containing your recovered source code.
    完成后会弹出对话框,指引您前往存放恢复后源代码的文件夹。


Dependencies / 依赖

All are installed automatically when you install exe-reverse-gui.
所有依赖都会在安装 exe-reverse-gui 时自动安装。


License / 许可证

This project is licensed under the MIT License – see the LICENSE file for details.
本项目采用 MIT 许可证 – 详见 LICENSE 文件。


Contributing / 贡献

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
欢迎提交 Pull Request。如有重大改动,请先创建 Issue 讨论。


Disclaimer / 免责声明

This tool is intended for legal reverse engineering and educational purposes only.
Respect the intellectual property rights of others.
本工具仅供合法的逆向工程和学习研究使用,请尊重他人的知识产权。

Metadata

Release files for exe-reverse-gui 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for exe-reverse-gui 2.0.0
File Size Uploaded
exe_reverse_gui-2.0.0.tar.gz 98.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for exe-reverse-gui 2.0.0
File Interpreter ABI Platform
exe_reverse_gui-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 201.5 kB

Release files / exe_reverse_gui-2.0.0.tar.gz

Download URL exe_reverse_gui-2.0.0.tar.gz
Size 98.0 kB
Tags Source
SHA-256 checksum
How to use checksums
f4100041bedb5f3b9407244739e52407224051eb6f56c3203b6a1bf6d45790fb
BLAKE2b-256 checksum
How to use checksums
0b567b40654654eac66389e39703dfc807fc1f6c1e4844da0d3e5bbb889c127c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.9

Release files / exe_reverse_gui-2.0.0-py3-none-any.whl

Download URL exe_reverse_gui-2.0.0-py3-none-any.whl
Size 103.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
54d01fb2938d0323823ac5d6987bc496bfcff3956b617f99eb4c1abed75d1550
BLAKE2b-256 checksum
How to use checksums
31236340dd5a40033e6edbe5138de5c334be38b8049d6168f31492b51d6daada
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.9

Release history Release notifications | RSS feed

This release

2.0.0 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page