导航:首页 > 源码编译 > vbaexe反编译

vbaexe反编译

发布时间:2024-07-05 00:59:14

㈠ VB反编译还原代码 求助

如果说 VB3、VB4 还有可能的话,那么 VB5、VB6 反编译就是完全的痴人说梦了,VB6 已经不是纯粹的解释性语言了,根本不可能反编译出完整的源代码,对于这种语言写出来的程序,只能获得中间语言或低级语言。一般来说 VB6 都是 P 代码,而 P-Code 的代码逆向回来只能自己看,机器是识别不了的。

举个例子:

比如在 VB6 中有一句代码 : MsgBox "Decompile Test."

那么反编译出来的结果就是:

(代码太长不贴,这里贴主要的)
...

mov dword ptr [ebp-58], 004012E4 ; 这里把 "Decompile Test."的地址弄进去了。
...

call dword ptr [<&MSVBVM60.__vbaVarDup>]; 可以清楚的看出来,复制了一份变量的句柄。因为VB里字符串指向的是内存地址。
...

call dword ptr [<&MSVBVM60.#595>] ; 这一句弹出了MsgBox.这里如果跟进去的话是一大堆API 。
...

所以正常反编译(学汇编语言和计算机编译原理去吧)的话,看到段了就会知道这是一个 Msgbox 函数,但是具体显示的内容是什么,那是根本看不出来的。

P.S. 针对楼上[你不懂就别乱说]说的插一嘴,未加壳的 .NET 为何能被反编译出源代码,那是因为 .NET 是托管,而托管有中间语言,所以它的源代码被编译成 msil 这种中间语言而非像 VB6 直接编译成机器语言了。

阅读全文

与vbaexe反编译相关的资料

热点内容
在回收站中可以恢复几个文件夹 浏览:916
phpget转义 浏览:322
我的世界宝可梦服务器叫什么名字 浏览:748
新闻编译难吗 浏览:582
ia架构服务器是什么意思 浏览:220
linux查看局域网 浏览:77
金蝶启动命令 浏览:480
安卓如何执行shell命令 浏览:947
linux路由控制 浏览:434
碧蓝航线压缩包解压密码 浏览:439
抗性提升命令方块指令 浏览:769
程序员那么可爱第30集免费看 浏览:637
如何下载老友麻将app 浏览:445
java路径参数 浏览:592
php命名空间使用 浏览:298
app的竞争力如何写 浏览:587
linux删除swp 浏览:590
pdfxchange40 浏览:77
车牌号码是哪个app 浏览:50
文件夹如何添加圆点 浏览:731