首页
社区
课程
招聘
[注册码常出现的地方
发表于: 2006-4-7 09:15 4442

[注册码常出现的地方

2006-4-7 09:15
4442
1)经典比较组合,常为注册码出现处(by programhunter) R6v
1 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  V.Wv,
   mov  eax [      ]  这里可以是地址,也可以是其它寄存器 (P
   mov  edx [      ]  同上  通常这两个地址就储存着重要信息 v6
   call 00?????? kPC~N]
   test eax eax Gl+E
   jz(jnz) U]
2 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  U46AZ!
   mov  eax [      ]  这里可以是地址,也可以是其它寄存器 1<;*B
   mov  edx [      ]  同上  通常这两个地址就储存着重要信息 &wMRM%
   call 00?????? Z "D
   jne(je) %SW<
3 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  9
mov eax [  ] fCI3'
mov edx [  ] t
cmp eax,edx ,dCt:
jnz(jz) MD@r5
或者 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  f&SF
begin  mov al [  ] /fI@
     mov cl [  ] 3Y
     cmp al,cl :<E
     jnz(jz) YzmG
     mov al [  +1] an`$
     mov cl [  +1] #A?4
     cmp al,cl jdE9Fs
     jnz(jz) :ae!}
     cmp eax ecx (eax为计数器) B
     jnl begin 6\j&7
     mov al 01 ?>c
4 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  DIJl
   lea edi [    ] ikw
   lea esi [    ] iWb,
   repz cmpsd s?\<>W
   jz(jnz) HJ
5 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  `
   mov  eax [      ]  这里可以是地址,也可以是其它寄存器 Rr?
   mov  edx [      ]  同上  通常这两个地址就储存着重要信息 N
   call 00?????? j#P6
   setz (setnz) al (bl,cl…) 1T-*
6 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  r*}BC'
   mov  eax [      ]  这里可以是地址,也可以是其它寄存器 a~8P7.
   mov  edx [      ]  同上  通常这两个地址就储存着重要信息 zI*N;)
   call 00?????? dzU#
   test eax eax w6#
   setz (setnz) bl,cl… 12
7 ©≡ 零位空间 ≡ -- ≡ 零位空间 ≡∽感受软件的绝对“零”度  ^``>
   call 00??????  *** p8
   push eax (ebx,ecx…) 4mu
   …… w5BL~
   …… V{7
   call 00?????? gU
   pop eax (ebx,ecx…) ;L
   test eax eax MmtZ
   jz(jnz) xax0
   这个形式比较特别,它的关键比较地方不在第二call中,而在第一call中。:~A

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
谢谢总结!
提个小问题:
test eax eax---这个是作何解?eax和eax自己比较?
盼复!
2006-4-7 20:45
0
雪    币: 1022
活跃值: (31)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
逻辑与测试,若EAX为0则设置ZF
2006-4-8 00:16
0
雪    币: 108
活跃值: (42)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
最好整理好了在发来.
2006-4-8 00:59
0
雪    币: 277
活跃值: (312)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
5
怎么这么多人喜欢抄袭?应该成立一个打假办了。
标 题:破解圣经之------滚瓜烂熟篇(背50遍)(高手莫入) (4千字)
发信人:风飘雪
时 间:2001-3-17 14:23:09
详细信息:

破解圣经之------滚瓜烂熟篇(背50遍)(高手莫入)

(1)经典比较组合,常为注册码出现处(by programhunter)
1
    mov  eax [      ]  这里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常这两个地址就储存着重要信息
    call 00??????
    test eax eax
    jz(jnz)
2
    mov  eax [      ]  这里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常这两个地址就储存着重要信息
    call 00??????
    jne(je)
3
  mov eax [  ]
  mov edx [  ]
  cmp eax,edx
  jnz(jz)
或者
begin  mov al [  ]
      mov cl [  ]
      cmp al,cl
      jnz(jz)
      mov al [  +1]
      mov cl [  +1]
      cmp al,cl
      jnz(jz)
      cmp eax ecx (eax为计数器)
      jnl begin
      mov al 01
4
    lea edi [    ]
    lea esi [    ]
    repz cmpsd
    jz(jnz)
5
    mov  eax [      ]  这里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常这两个地址就储存着重要信息
    call 00??????
    setz (setnz) al (bl,cl…)
6
    mov  eax [      ]  这里可以是地址,也可以是其它寄存器
    mov  edx [      ]  同上  通常这两个地址就储存着重要信息
    call 00??????
    test eax eax
    setz (setnz) bl,cl…
7
    call 00??????  ***
    push eax (ebx,ecx…)
    ……
    ……
    call 00??????
    pop eax (ebx,ecx…)
    test eax eax
    jz(jnz)
    这个形式比较特别,它的关键比较地方不在第二call中,而在第一call中

(2)注册码按字节依次给出
:0042A159 0FBE03                  movsx eax, byte ptr [ebx]
:0042A15C 50                      push eax            ^^^^^
:0042A15D E8228C0400              call 00472D84
:0042A162 59                      pop ecx
:0042A163 83F84A                  cmp eax, 0000004A ---->J
:0042A166 7559                    jne 0042A1C1
:0042A168 0FBE5301                movsx edx, byte ptr [ebx+01]
:0042A16C 52                      push edx            ^^^^^^^
:0042A16D E8128C0400              call 00472D84
:0042A172 59                      pop ecx
:0042A173 83F853                  cmp eax, 00000053
                                  ^^^^^^^^^^^^^^^^^----> S
:0042A176 7549                    jne 0042A1C1
:0042A178 0FBE4B02                movsx ecx, byte ptr [ebx+02]
:0042A17C 83F924                  cmp ecx, 00000024    ^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> $
:0042A17F 7540                    jne 0042A1C1
:0042A181 0FBE4303                movsx eax, byte ptr [ebx+03]
:0042A185 83F832                  cmp eax, 00000032  ^^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 2
:0042A188 7537                    jne 0042A1C1
:0042A18A 0FBE5304                movsx edx, byte ptr [ebx+04]
:0042A18E 83FA38                  cmp edx, 00000038  ^^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 8
:0042A191 752E                    jne 0042A1C1
:0042A193 0FBE4B05                movsx ecx, byte ptr [ebx+05]
:0042A197 83F939                  cmp ecx, 00000039  ^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 9
:0042A19A 7525                    jne 0042A1C1
:0042A19C 0FBE4306                movsx eax, byte ptr [ebx+06]
:0042A1A0 83F832                  cmp eax, 00000032  ^^^^^^^^
                                  ^^^^^^^^^^^^^^^^^----> 2
:0042A1A3 751C                    jne 0042A1C1
:0042A1A5 0FBE5307                movsx edx, byte ptr [ebx+07]
:0042A1A9 83FA31                  cmp edx, 00000031  ^^^^^^^^                                                                                                                                                                                                            
                                  ^^^^^^^^^^^^^^^^^
                                                  ----->1
(3)比较位数
cmp dword ptr[ebp-04],0000000A
jne/jge/jle/je 00xxxx

mov eax, dword ptr [ebp-04]
call 00xxxx
cmp eax, 0000000A <----比较注册码是否为10位
jne 00xxxxx  <----不是,错
(4)VB程序经典比较
PUSH      XXX                      //假注册码
PUSH      XXX                      //真注册码
CALL      [MSVBVM60!__vbaStrCmp]
TEST      EAX,EAX
JNZ      00XXXXX
(5)SmartCheck中,注册码常出现处
__vbasrtcmp(String:"zzzzz",String:"yyyyy")returns
__vbaStrVarVal(VARIATN:String"a") returns
__vbaVarTstEq(VARIANT:****, VARIANT:****) returns
(6)依次取两位比较
:004044D8 8A10    mov dl, byte ptr [eax]
:004044DA 8ACA    mov cl, dl
:004044DC 3A16    cmp dl, byte ptr [esi]
:004044DE 751C    jne 004044FC
:004044E0 84C9    test cl, cl
:004044E2 7414    je 004044F8
:004044E4 8A5001  mov dl, byte ptr [eax+01]
:004044E7 8ACA    mov cl, dl
:004044E9 3A5601  cmp dl, byte ptr [esi+01]
:004044EC 750E    jne 004044FC
:004044EE 83C002  add eax, 00000002 ***
:004044F1 83C602  add esi, 00000002 ***
:004044F4 84C9    test cl, cl
:004044F6 75E0    jne 004044D8
每次程序依次取两位,放入byte ptr [esi],byte ptr [esi+1],与eax, eax+1比较。如此循环
(7)小写转大写(一时找不到,自己补充)
(8)大写转小写(一时找不到,自己补充)

整理By风飘雪 gd1@yeah.net  http://duba.126.com
2006-4-8 09:17
0
雪    币: 247
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
学习一下,建议注明来源
2006-4-8 09:51
0
雪    币: 169
活跃值: (245)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
我就感觉看着有些熟!
2006-4-8 11:30
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
悟到了就不用背这些了
找一下感觉就行了
2006-4-8 14:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
收藏学习一下,谢谢。
2006-4-8 16:56
0
雪    币: 222
活跃值: (40)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
10
看标题就觉得又要有人抄袭了
2006-4-8 23:37
0
雪    币: 454
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
原来我的只收集了前面的,漏了后面的,谢谢5楼的兄弟了。
2006-4-8 23:57
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
误人子弟
2006-4-9 14:51
0
游客
登录 | 注册 方可回帖
返回
//