00401984 .- FF25 7C104000 jmp dword ptr ds:[<&MSVBVM60.#528>] ; msvbvm60.rtcUpperCaseVar
0040198A .- FF25 A8104000 jmp dword ptr ds:[<&MSVBVM60.EVENT_SINK_>; msvbvm60.EVENT_SINK_QueryIntece
00401990 .- FF25 78104000 jmp dword ptr ds:[<&MSVBVM60.EVENT_SINK_>; msvbvm60.EVENT_SINK_AddRef
00401996 .- FF25 9C104000 jmp dword ptr ds:[<&MSVBVM60.EVENT_SINK_>; msvbvm60.EVENT_SINK_Release
0040199C $- FF25 08114000 jmp dword ptr ds:[<&MSVBVM60.#100>] ; msvbvm60.ThunRTMain
004019A2 00 db 00
004019A3 00 db 00
004019A4 > $ 68 5C284000 push VB.0040285C ; ASCII "VB5!6&vb6chs.dll"
004019A9 . E8 EEFFFFFF call <jmp.&MSVBVM60.#100>
004019AE . 0000 add byte ptr ds:[eax],al
004019B0 . 0000 add byte ptr ds:[eax],al
004019B2 . 0000 add byte ptr ds:[eax],al
004019B4 . 3000 xor byte ptr ds:[eax],al
004019B6 . 0000 add byte ptr ds:[eax],al
VB入口特征查找函数 ThunRTMain
VB 查找字符串时采用二进制字符串816C2404??000000
注:识别VB P-code编译时,只需要查找不到按钮事件就是P-CODE编译
P-CODE代码是虚拟代码,需要独立的调试器
Vb 查找字符串采用 UNICODE码查找
DIE64类似于PEID的功能,但是他强大之处,在于他可以不管是任何壳保护的情况下,都可以识别出他的编写语言
当程序提示说有压缩代码时,就表示程序已经被压缩或者加密
VMP入口,就是看起来很凌乱,就像未解码的代码一样,但是VMP保护分两种代码
乱序
虚拟
VMP在默认保护的情况下是不会保护功能代码的,并且VMP保护功能代码只是一个区段,如果大家看到的.VMP区段有三条的话,就表示此程序已经被VMP进行了最大保护,如果只是一条区段的话,那就是乱序保护,两条区段的话,就是乱序加虚拟保护
2.10以后的版本和WL的版本入口都是一样
00600000 > 83EC 04 sub esp,0x4
00600003 50 push eax
00600004 53 push ebx
00600005 E8 01000000 call 易语言.0060000B
0060000A CC int3
0060000B 58 pop eax ; kernel32.7C817027
0060000C 89C3 mov ebx,eax
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/jisuanjixue/article-33496-4.html
逻辑真假他全然不管的