反编译python 生成的exe源码

news2025/1/15 7:00:21

反编译python 生成的exe源码

记录反编译exe工具使用

  • 工具准备
    – pyinstxtractor.py
    – uncompyle6
    – sublime Text(或者其他的二进制编辑工具)

一、解包(exe)
①:先把下载的pyinstxtractor.py文件和需要进行反编译的exe文件放在一个目录中
在这里插入图片描述
②:然后使用终端(cmd)执行:python3 pyinstxtractor.py main.exe
这样会得到上图中的带有"_extracted"后缀的文件夹
执行后应该得到下图:
在这里插入图片描述
进入到文件夹中,找到没有pyc的文件,我的是main文件,添加.pyc后缀,添加完成后如下图:
在这里插入图片描述
分别把这俩个文件使用编辑工具打开,打开后得到一堆二进制,注意看俩个文件的区别,struct比main多一行,这时需要把struct第一行复制到main第一行保存。
在这里插入图片描述
二、解码反编译
前期工作都准备完成了,现在开始解析,有的人说直接去什么在线解析或者在线解码之类的就行了,我试了有的地方全是乱码或解析错误,如下图:
在这里插入图片描述
推荐使用uncompyle6进行解析
①:pip3 install uncompyle6安装uncompyle6
安装完成后,使用uncompyle6可以进行反编译.pyc后缀的文件了
②:uncompyle6 main.pyc > test.py (这里的test.py就是重命名后的解析文件,可以自己重命名)
执行后会得到你想要的文件

注:如果是mac 直接运行uncompyle6 会提示:zsh: command not found:uncompyle6
在这里插入图片描述
终端切换 cd /Users/*****/Library/Python/2.7/bin/目录下
运行 uncompyle6 +需要反编译pyc的绝对路径即可:

uncompyle6 /Users/****/Downloads/dds/main.exe_extracted/main.pyc > /Users/****/PycharmProjects/shares_exe/test.py

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/117625.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

π120M60代替ADuM2210SRIZ 双通道数字隔离器 电路简单速度快

π120M60代替ADuM2210SRIZ 双通道数字隔离器 电路简单速度快。具有出色的性能特征和可靠性,整体性能优于光耦和基于其他原理的数字隔离器产品。传输通道间彼此独立,可实现多种传输方向的配置,可实现 5.0kV rms 隔离耐压等级和 DC 到 10Mbps 信…

下载和安装MySQL官方提供的示例数据库(Employees)

一、前言 在此之前笔者写过一篇博客《你说精通MySQL其实很菜jī(1):你不一定会的基本技巧或知识点(值得一看)》,本文内容是从那篇博客截取出来的。我们要学习MySQL相关的技术点,使用官方提供的测…

构造HTTP请求

构造HTTP请求一、浏览器自己构造二、通过 form 表单构造三、通过 ajax 构造一、浏览器自己构造 1)地址栏里写URL,构造出GET请求 2)点击a标签等,也会构造GET请求 3)img、link、script也会构造GET请求 二、通过 form 表…

Java中的常用队列

🏆今日学习目标: 🍀Java中的常用队列 ✅创作者:林在闪闪发光 ⏰预计时间:30分钟 🎉个人主页:林在闪闪发光的个人主页 🍁林在闪闪发光的个人社区,欢迎你的加入: 林在闪闪…

【Django】第二课 基于Django图书借阅管理网站平台

概念 本文在上一篇文章之上完成登录,图书显示,关键字搜索以及分页功能 登录功能实现 当用户在首页进行输入学生用户信息后,点击登录按钮发送请求给服务器,地址请求为: /toLogin/ urls.py path(toLogin/,views.toLogin), 将接…

ArcGIS基础实验操作100例--实验3旋转矢量要素

实验平台:ArcGIS 10.6 实验数据:请访问实验1(传送门) 基础编辑篇--实验3 旋转矢量要素 目录 一、实验背景 二、实验数据 三、实验步骤 (1)加载【旋转】工具 (2)旋转矢量要素 一…

灵龟八法推算

很久之前就对这个算法感兴趣了,但是一直没搞定,网上公说公的,婆说婆的,搞得你头晕眼睛花,最后东拼西凑研究了好久才研究出来,在这里给大家分享。 第一步,掏出你的老黄历,如果你没有老黄历问题不…

BUUCTF Misc 弱口令 [RoarCTF2019]黄金6年 小易的U盘 [WUSTCTF2020]alison_likes

目录 弱口令 [RoarCTF2019]黄金6年 小易的U盘 [WUSTCTF2020]alison_likes 弱口令 下载文件 一个压缩包,需要密码,爆破了一会没出结果,百度了一下竟然有提示 蓝色内容复制到sublime查看(记事本也不能看) 摩斯密码&…

vue-cli2配置webpack生产环境.env.production、测试环境.env.development(配置不同环境的打包访问地址)

vue-cli区分办法 vue配置生产环境.env.production、测试环境.env.development vue配置webpack生产环境、测试环境 在使用webpack创建完vue2项目的时候,为了解决生产打包、测试打包对应的全局变量不一致的问题。 首先看一下package.json的改动: "…

【Git】一文带你入门Git分布式版本控制系统(创建版本库、 版本回退)

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端 📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招) 🚀未…

改变您对Fedora的印象

导读我是 Fedora 的老用户了,从四年前接触嵌入式 Linux 开始,Fedora 就是我的桌面操作系统,期间从未被其他操作系统替代过,偶尔尝试也会第二天就装回来。用得愈久愈是喜欢,简洁、漂亮、稳定,无一不击中我&a…

OpenGL学习(基础光照)

这些光照模型都是基于我们对光的物理特性的理解。其中一个模型被称为冯氏光照模型(Phong Lighting Model)。冯氏光照模型的主要结构由3个分量组成:环境(Ambient)、漫反射(Diffuse)和镜面(Specular)光照 环境光照 全局照明(Global Illumination)算法,但是…

吴恩达《机器学习》——线性回归代码实现

线性回归1. 单变量线性回归单变量线性回归公式损失函数优化算法——批梯度下降(BGD)2. 多变量线性回归特征缩放(标准化)参数的逆缩放3. 线性回归算法代码实现向量实现Python代码4. 实验结果单变量回归多变量回归实验总结数据集、源…

使用C#开发Word VSTO外接程序示例

目标:实现类似word中导航栏视图的功能。 创建新项目,选择模板“Word VSTO 外接程序”。选择工程,新建项目---新建功能区(可视化设计器)双击打开新建的可视化编辑器,编辑容器RibbonGroup在容器RibbonGroup里…

ReactJS入门之Model层

目录 一:分层 二:使用DVA进行数据分层管理 三:在model中请求数据 四:mock数据 一:分层 上图中,左侧是服务端代码的层次结构,由Controller、Service、Data Access 三层组成服务端系统&#…

Docker图文 | Docker、Dockerfile、Docker-compose、Docker镜像仓库操作 | 系统性学习 | 无知的我费曼笔记

Dokcer和Linux一样都是一些死命令,不必花费过多的时间去学习。 也不必花费过多时间专项地记忆,在实际运用中随用随取即可。 还不如将省下来的时间更多地花费在于培养思维上。 文章目录Docker1.初识Docker1.1.Docker意义1.1.1.应用部署的环境问题描述1.1…

Antd UI Switch组件 中 checked与defaultChecked踩坑记录

目录 需求分析 问题发现 解决方法 总结 需求分析 需求其实很简单,就是在对应的表格行内添加一个人switch 滑块,用于开启或关闭单点登录入口。只需要修改一下对应的表格,添加一个滑块组件,新增一个接口。于是菜鸡博主&#xf…

MySQL库的基本操作与数据库的备份

目录 1、什么是数据库 2、数据库的基本使用 <1>本地连接服务器 <2>创建数据库 <3>创建数据库实例 <4>字符集和校验规则 3、操纵数据库 <1> 查看数据库 <2> 显示创建语句 <3> 修改数据库 <4> 数据库删除 <5>…

遇到的问题

一、git 1. git push之前忘记git pull:需要指定如何协调不同的分支。 解决&#xff1a; (1) git config pull.rebase false (2) git status 用于查看在你上次提交之后是否有对文件进行再次修改 (3) git stash 将当前的工作状态保存到git栈 2. 删除本地分支 # 删除本地分支 git…

【C++初阶】C++的IO流

文章目录C语言的输入输出流CIO流C标准IO流C文件IO流stringstream的简单介绍所有的测试代码C语言的输入输出 C语言中我们用到的最频繁的输入输出方式就是scanf ()与printf()。 scanf(): 从标准输入设备(键盘)读取数据&#xff0c;并将值存放在变量中。printf(): 将指定的文字/字…