PBSpy简介
PBSpy是由Hucxy(QQ:992716161)正在开发中的一款PB辅助工具。
该工具开发语言将采用C#、PB、易语言三种语言。
第一步实现:使用新的语言和架构重构Pbdviewer、PBDWEDIT现有功能。
第二步实现:对象源码导出、PBD转PBL。
后期计划(不一定可以实现):p-code修改(局部编译)、PB混淆与反混淆、PBD加密与解密、p-code动态调试、数据库表结构还原。
PBSpy是否收费?首先Pbdviewer和PBDWEDIT现有功能肯定不收费,其它功能待定。
PBSpy研发记录
2020.01.02-2020.01.07
1.对比了一下shudepb、pb decompiler、pbdviewer分支语句还原方法,发现shudepb准确度最高,pb decompiler某些极端情况下会还原错误(逻辑跟源码不一致),pbdviewer错误率最高。
2.衡量分支语句还原好坏的标准是在百分百确保逻辑正确的前提下,尽量把伪码中的跳转指令还原为分支语句。思考了好几天,总算设计了一种自我感觉较完美的分支语句的还原方法,该方法准确度理论上应该媲美shudepb(我甚至怀疑它也是用的这种方法)。
2019.12.29-2020.01.01
1.完成函数事件定义解析。
2.正在使用线性扫描算法反伪码,考虑如何使用递归下降算法反伪码。
2019.07.27-2019.12.28
1.参考www.dwox.com中PB库文件结构,实现对PB库文件的解析,对象数据的读取以及对象数据的导出。
2.通过研究PBAPI,编写导入对象数据代码,这个要比自己写代码导入节省很多时间。
3.通过研究pbdviewer,编写代码分析PB编译后对象结构,发现了一些pbdviewer分析不精准的地方。
4.感谢大自在提供的资料,分析出许多pbdviewer中没有的数据含义!
5.完成对象对象属性解析。
6.完成变量定义解析。
2019.07.26
1.研究大自在最新版本的PB加密,针对最新版本写出对应的PBD解密器。
2019.07.25
1.写出PBD解密器,可以还原加密测试程序"PB9程序,欢迎破解,看看谁能反编译本程序!!!"中被加密的PBD文件。
2019.07.24
1.研究大自在的PB加密例子"PB9程序,欢迎破解,看看谁能反编译本程序!!!"。
2019.07.23
1.分析出LMI_OpenLibrary、LMI_OpenEntry、LMI_EntryInformation、LMI_ReadEntry这几个API函数的调用方法。
2.网站备案已经通过,官网可以正常访问。
2019.07.22
1.参考pborca官网文档,自己用易语言编写程序调用pborcxx.dll的API。
2019.07.21
1.PB密探 PB解密小组招募。
2.通过pborcxx.dll分析出PB一些基础运行机理。如需要先创建一个会话,设置库列表,设置默认应用等等。
2019.07.20
1.整理了一下国内PB反编译工具的历程。
2019.07.19
1.通过研究pb运行原理,猜测是否可以利用pb本身的dll完成编译以及部分反编译的功能。
2.研究pborcxx.dll,该dll为Pb对外开放的一些底层api,通过研究该dll文件可以理解pbvmxx.dll部分编译的核心api。
3.编译:pborcxx.dll--->pbcmpxx。
4.分析出事件相关的四个函数及调用方法:FN_SysEvtCount、FN_SysEvtName、FN_SysEvtNameSorted、FN_SysEvtSrch。
2019.07.18
1.获取pcode函数名及参数长度。
2.获取PB事件总数、根据事件id获取事件名称、根据事件名称获取事件id。
3.获取变量类型名称。
2019.07.17
1.研究pbvmxx.dll中pcode的运行原理。
2.找到pcode函数表及函数表定位特征码。
2019.07.16
1.修复pbdviewer_Fix几个问题。
2019.07.13-2019.07.15
1.研究pbdviewer反编译原理。
2019.07.12
1.研究域名备案并提交备案申请。
2019.07.11
1.整理以前研究的反编译方面的文档
2.画系统结构图。
3.设计PB项目类以及PB库文件类。
2019.07.10
1.确定基本功能及开发语言,并命名为PBSpy。
2.购买域名,租用服务器。
3.QQ群(658840632)正式改名为PBSpy。
国内PB反编译历程
据我了解国内目前PB反编译软件有depb、pbkiller、shudepb、pb decompiler、pbdviewer。
2003年中,ljtt发布了国内首款PB反编译工具depb,该工具支持反编译PB6-7,但该工具为demo版且只显示前几行代码,后来由于作者比较忙最后一直没再更新。
2005年初,freecat破解了depb的代码显示行数限制,并发布为depb_fix。
2005年中,kivens参考litt的depb并得到freecat的帮助研发并发布了pbkiller,这是第一款PB商业反编译工具,支持PB6-9,不过后来被人破解,作者最后免费并停止更新了。
2006年,shu发布了PB反编译工具shudepb,并且一直持续更新至今,目前来说shudepb应该是最强大的PB商业反编译工具。
2009年中,chengg0769发布了PB反编译工具pb decompiler,该工具跟shudepb同样很强大,同样是收费软件,并且一直持续更新至今。
2018年底,不懂算法发布了新的PB反编译工具pbdviewer,该程序支持PB5-PB12.6,不过作者不在更新。值得一提的是该程序是用c#写的,并且无加密混淆(相当于开源)。
2019年初,hucxy对pbdviewer进行问题修复,并发布为pbdviewer_fix。
PBSpy
PB Spy
PB反编译
pb反编译
>pb 反编译
powerbuilder反编译
powerbuilder 反编译
反编译
PBD还原
pbdviewer
pb+反编译+源代码
pb-decompiler
pb decompile
PBDeCompiler
PB Decompiler
PBKILLER
depb
冀公网安备13010202004258号
冀ICP备19021902号-1