一款使用ai来反编译pyc文件的工具 (支持python3.13)

pycdc-studio

pycdc-studio 是一个基于 Qt Widgets 的桌面图形界面,用来配合 pycdc / pycdas 浏览 Python 字节码、查看原生反编译结果,并在原生反编译不完整时使用 AI fallback 对指定函数、方法或类体进行重建。

为什么会做这个项目

做这个项目的一个很直接的原因是:

Python 更新太快了,尤其到了 Python 3.13 这类新版本,字节码变化更多,适配难度也明显更高。

这就导致市面上不少反编译工具,虽然能处理一部分旧版本,但面对新的 Python 版本时,往往会出现适配滞后。很多时候不是完全不能用,而是会卡在某些函数、某些类体、某些新版本特性上。

而我做这个项目时,最想解决的一个场景就是:

让它能更好地处理 Python 3.13 的字节码。

所以我就想,能不能换一种思路:

  • 原生反编译工具继续负责它擅长的部分
  • 当遇到不支持的字节码节点时
  • 把当前函数、方法或者类体的上下文交给 AI 去做兜底重建

这样一来,就不需要一开始就把所有新字节码都硬适配到原生反编译器里,而是先通过一个更实用的混合方案,把结果做出来。

最后做出来的效果我自己觉得还不错,尤其在 Python 3.13 相关样例上,AI fallback 确实能补上一部分原生反编译不完整的地方。

目前我主要用的是 DeepSeek

  • 量大管饱
  • 成本也比较低
  • 实际反编译出来的效果也还蛮不错的

所以这个项目本质上不是想完全替代传统反编译器,而是想做一个:

面向 Python 3.13 等新版本字节码场景的,原生反编译 + AI fallback 混合工作台。

核心功能

  • 直接打开 .pyc / .pyo
  • 支持拖入单个文件整个文件夹
  • 自动解析并展示 code object 树
    • module
    • class
    • function
    • method
    • lambda / comprehension
  • 对比三种结果:
    • Merged
    • Native
    • AI
  • 查看每个节点对应的:
    • 反汇编结果
    • 元数据
    • AI 提示词
    • 日志
  • 支持将当前文件的 合并结果导出
  • 支持中英文界面切换

AI Fallback

程序默认不会把整个 .pyc 一次性发给 AI。

它会基于当前选中的 code object,组织出更小粒度的上下文,例如:

  • qualified name
  • object type
  • names / locals / consts
  • native error
  • disassembly

这样可以让 AI 更聚焦当前失败节点,而不是整个文件。

当前 AI 配置方式是:

  • Settings / 设置 中填写
    • Base URL
    • API Key
    • Model
  • 接入的是 兼容 OpenAI 的 API

界面预览

主工作区

设置页

AI 重建效果

适合的场景

  • 浏览 .pyc / .pyo 结构
  • 辅助分析 Python 字节码
  • 查看 pycdc 原生反编译结果
  • 对不支持的 code object 做 AI 辅助重建
  • 导出当前文件的 merged 结果继续整理

项目特点

  • 原生桌面界面,轻量直接
  • 不是一次性"全文件 AI 重建",而是节点级 fallback
  • 能同时看到:
    • 原生结果
    • AI 结果
    • 反汇编
    • Prompt 上下文
  • 更适合用来做"分析工具"而不是单纯黑盒反编译

项目地址

如果你觉得这个项目对你有帮助,欢迎给项目点个 Star ,非常感谢。

也非常欢迎任何 IssuePR

相关推荐
工业机器人销售服务12 分钟前
法奥协作机器人:智能避障,安全协作
人工智能·机器人
Quz14 分钟前
在 Claude Code中配置DeepSeek:从报错到成功调用【支持DeepSeekV4】
人工智能
2301_7693406714 分钟前
怎样导出用于负载测试的样本数据_LIMIT限制数据量提取
jvm·数据库·python
搭贝17 分钟前
建筑多分支企业数字化实战:凯驿景澄建设项目管理系统落地案例
大数据·人工智能·低代码·数字化·工程项目技术方案
MediaTea19 分钟前
人工智能通识课:机器学习之监督学习
人工智能·学习·机器学习
这张生成的图像能检测吗27 分钟前
(论文速读)LogInsight:基于大语言模型的准确可解释日志故障诊断
人工智能·计算机视觉·语言模型·自然语言处理·故障诊断
阿里云大数据AI技术29 分钟前
使用Skills一句话完成 Milvus 业务落地
人工智能
爱学习的徐徐30 分钟前
监督学习与无监督学习(机器学习初揭秘)
人工智能·机器学习
2401_8504916535 分钟前
c++如何通过文件映射mmap在多进程间实现高性能数据共享【进阶】
jvm·数据库·python
iuvtsrt35 分钟前
PHP 中高效查找 CSV 行并获取前后指定偏移行的数据
jvm·数据库·python