lal978112 发表于 2009-8-5 09:30:11

VMProtect SDK保护的代码如何修改?

请教一下:如下代码:采用了VMProtect SDK进行保护
想进行修改“VMProtect begin”和"VMProtect end"之间的任意代码都会出错,请问有解决的办法吗?

00803E44/$55            push    ebp
00803E45|.8BEC          mov   ebp, esp
00803E47|.83C4 F8       add   esp, -8
00803E4A|.8945 FC       mov   dword ptr , eax
00803E4D|.C645 FB 00    mov   byte ptr , 0
00803E51|.8B45 FC       mov   eax, dword ptr
00803E54|.E8 BB040000   call    00804314
00803E59|.84C0          test    al, al
00803E5B|.74 7C         je      short 00803ED9
00803E5D|.EB 10         jmp   short 00803E6F
00803E5F|.56 4D 50 72 6>ascii   "VMProtect begin",0
00803E6F|>8B45 FC       mov   eax, dword ptr
00803E72|.83C0 04       add   eax, 4
00803E75|.50            push    eax                              ; /Arg1
00803E76|.E8 F509FFFF   call    007F4870                         ; \dump.007F4870
00803E7B|.83F8 01       cmp   eax, 1
00803E7E|.1BC0          sbb   eax, eax
00803E80|.40            inc   eax
00803E81|.8845 FA       mov   byte ptr , al
00803E84|.EB 2B         jmp   short 00803EB1
00803E86|>8B45 FC       /mov   eax, dword ptr
00803E89|.E8 AE000000   |call    00803F3C
00803E8E|.84C0          |test    al, al
00803E90|.74 0A         |je      short 00803E9C
00803E92|.8B45 FC       |mov   eax, dword ptr
00803E95|.E8 4E050000   |call    008043E8
00803E9A|.EB 1B         |jmp   short 00803EB7
00803E9C|>8B45 FC       |mov   eax, dword ptr
00803E9F|.83C0 04       |add   eax, 4
00803EA2|.50            |push    eax                           ; /Arg1
00803EA3|.E8 C809FFFF   |call    007F4870                        ; \dump.007F4870
00803EA8|.83F8 01       |cmp   eax, 1
00803EAB|.1BC0          |sbb   eax, eax
00803EAD|.40            |inc   eax
00803EAE|.8845 FA       |mov   byte ptr , al
00803EB1|>807D FA 00   cmp   byte ptr , 0
00803EB5|.^ 75 CF         \jnz   short 00803E86
00803EB7|>8A45 FA       mov   al, byte ptr
00803EBA|.8B55 FC       mov   edx, dword ptr
00803EBD|.8842 3C       mov   byte ptr , al
00803EC0|.8B45 FC       mov   eax, dword ptr
00803EC3|.8A40 3C       mov   al, byte ptr
00803EC6|.8845 FB       mov   byte ptr , al
00803EC9|.EB 0E         jmp   short 00803ED9
00803ECB|.56 4D 50 72 6>ascii   "VMProtect end",0
00803ED9|>8A45 FB       mov   al, byte ptr
00803EDC|.59            pop   ecx
00803EDD|.59            pop   ecx
00803EDE|.5D            pop   ebp
00803EDF\.C3            retn

lgjxj 发表于 2010-12-10 14:59:06

那是它的文件效验,没有什么不可修改的,并且你有此一问就是说你还暂时不要去碰他
并且一旦被 VMP 虚拟了的代码,你还得去还原,这里面涉及的就比较麻烦了
页: [1]
查看完整版本: VMProtect SDK保护的代码如何修改?