ElectrObalz 破解(2)

时间:2005-12-20 来源: 作者: 点击:
; EDI--0042A540 ASCII "ElectrObalz" 00411D99 OR ECX, FFFFFFFF 00411D9C XOR EAX, EAX 00411D9E MOV BYTE PTR SS:[ESP+10], 0 00411DA3 REPNE SCAS BYTE PTR ES:[EDI] 00411DA5 NOT ECX 00411DA7 DEC ECX ; ECX=B 00411DA8 MOV EDI, EBP ; EBP--0012F52C,(ASCII "fxy
  ; EDI<--0042A540 ASCII "ElectrObalz"

00411D99 OR ECX, FFFFFFFF
00411D9C XOR EAX, EAX
00411D9E MOV BYTE PTR SS:[ESP+10], 0
00411DA3 REPNE SCAS BYTE PTR ES:[EDI]
00411DA5 NOT ECX
00411DA7 DEC ECX ; ECX=B
00411DA8 MOV EDI, EBP ; EBP<--0012F52C,(ASCII "fxyang")
00411DAA MOV EBX, ECX
00411DAC OR ECX, FFFFFFFF
00411DAF REPNE SCAS BYTE PTR ES:[EDI]
00411DB1 NOT ECX
00411DB3 DEC ECX ; ECX=6
00411DB4 MOV EDI, EDX ; EDX<--0012F4EC,(ASCII "fxyang@163.com")
00411DB6 ADD EBX, ECX
00411DB8 OR ECX, FFFFFFFF
00411DBB REPNE SCAS BYTE PTR ES:[EDI]
00411DBD NOT ECX
00411DBF DEC ECX ; ECX=E
00411DC0 ADD EBX, ECX ; EBX=1F<--总长度
00411DC2 LEA EDI, DWORD PTR DS:[EBX+1] ; EDI=1F+1=20
00411DC5 PUSH EDI
00411DC6 CALL Electrob.00417478
00411DCB MOV EBP, EAX
00411DCD ADD ESP, 4
00411DD0 TEST EBP, EBP
00411DD2 JE Electrob.00411F77
00411DD8 MOV ECX, EDI
00411DDA XOR EAX, EAX
00411DDC MOV EDX, ECX
00411DDE MOV EDI, EBP
00411DE0 SHR ECX, 2
00411DE3 REP STOS DWORD PTR ES:[EDI]
00411DE5 MOV ECX, EDX
00411DE7 AND ECX, 3
00411DEA REP STOS BYTE PTR ES:[EDI]
00411DEC OR ECX, FFFFFFFF
00411DEF MOV EDI, ESI
00411DF1 XOR EAX, EAX
00411DF3 REPNE SCAS BYTE PTR ES:[EDI]
00411DF5 NOT ECX
00411DF7 SUB EDI, ECX
00411DF9 MOV EAX, ECX
00411DFB MOV ESI, EDI
00411DFD MOV EDI, EBP
00411DFF SHR ECX, 2
00411E02 REP MOVS DWORD PTR ES:[EDI], DWORD P>
00411E04 MOV ECX, EAX
00411E06 XOR EAX, EAX
00411E08 AND ECX, 3
00411E0B REP MOVS BYTE PTR ES:[EDI], BYTE PTR>
00411E0D MOV EDI, DWORD PTR SS:[ESP+20]

; EDI<--0012F52C,(ASCII "fxyang")

00411E11 OR ECX, FFFFFFFF
00411E14 REPNE SCAS BYTE PTR ES:[EDI]
00411E16 NOT ECX
00411E18 SUB EDI, ECX
00411E1A MOV ESI, EDI
00411E1C MOV EDX, ECX
00411E1E MOV EDI, EBP

; EDI<--0042A540 ASCII "ElectrObalz"

00411E20 OR ECX, FFFFFFFF
00411E23 REPNE SCAS BYTE PTR ES:[EDI]
00411E25 MOV ECX, EDX
00411E27 DEC EDI
00411E28 SHR ECX, 2
00411E2B REP MOVS DWORD PTR ES:[EDI], DWORD P>
00411E2D MOV ECX, EDX
00411E2F AND ECX, 3
00411E32 REP MOVS BYTE PTR ES:[EDI], BYTE PTR>
00411E34 MOV EDI, DWORD PTR SS:[ESP+24]

; EDI<--0012F4EC,(ASCII "fxyang@163.com")

00411E38 OR ECX, FFFFFFFF
00411E3B REPNE SCAS BYTE PTR ES:[EDI]
00411E3D NOT ECX
00411E3F SUB EDI, ECX
00411E41 MOV ESI, EDI
00411E43 MOV EDX, ECX
00411E45 MOV EDI, EBP
00411E47 OR ECX, FFFFFFFF
00411E4A SCAS BYTE PTR ES:[EDI]
00411E4C ECX, EDX
00411E4E EDI
00411E4F ECX, 2
00411E52 REP MOVS DWORD PTR ES:[EDI], DWORD P>
00411E54 MOV ECX, EDX
00411E56 AND ECX, 3
00411E59 REP MOVS BYTE PTR ES:[EDI], BYTE PTR>
00411E5B LEA ESI, DWORD PTR DS:[EBX-1]
00411E5E TEST ESI, ESI
00411E60 JBE SHORT Electrob.00411E7B
00411E62 OR EDI, FFFFFFFF
00411E65 LEA EAX, DWORD PTR SS:[EBP+1]
00411E68 SUB EDI, EBP

; EAX<--00F2E1E0 ASCII" ElectrObalzfxyangfxyang@163.com"
; 以上把三个参数连接起来

00411E6A MOV CL, BYTE PTR DS:[EAX-1] ; CL=DS:[EAX-1]=45 ('E')
00411E6D MOV DL, BYTE PTR DS:[EAX] ; DL=DS:[EAX]=6C ('l')
00411E6F ADD DL, CL
00411E71 MOV BYTE PTR DS:[EAX], DL ; DL=B1==>DS:[EAX]
00411E73 INC EAX
00411E74 LEA EDX, DWORD PTR DS:[EDI+EAX] ; EDX=DS:[EDI+EAX]=01
00411E77 CMP EDX, ESI
00411E79 JB SHORT Electrob.00411E6A
00411E7B ADD EBX, -2
00411E7E TEST EBX, EBX
00411E80 JBE SHORT Electrob.00411E91

; 把连接后的字符串的hex值从前向后相加取低位,放在后一位的位置上
; 完成后内存中的字符串是:

00EC23D8 45 B1 16 79 ED 5F AE 10 E?y韄?
00EC23E0 71 DD 57 BD 35 AE 0F 7D q軼??}
00EC23E8 E4 4A C2 3B 9C 0A 71 B1 銳??q?

00EC23F0 E2 18 4B 79 DC 4B B8 00 ?Ky躃?

-----------------------
|
00411E82 MOV AL, BYTE PTR DS:[EBX+EBP+1] ; AL=B8
00411E86 MOV CL, BYTE PTR DS:[EBX+EBP] ; CL=4B
00411E89 ADD CL, AL
00411E8B MOV BYTE PTR DS:[EBX+EBP], CL ; CL=03
00411E8E DEC EBX
00411E8F JNZ SHORT Electrob.00411E82

; 把连接后的字符串的hex值从后向前相加取低位
; 完成后内存中的字符串是:

00EC23D8 45 AB FA E4 6B 7E 1F 71 E鋕~q
00EC23E0 61 F0 13 BC FF CA 1C 0D a???.
00EC23E8 90 AC 62 A0 65 C9 BF 4E 惉b爀煽N
00EC23F0 9D BB A3 58 DF 03 B8 00 澔??

-----------------------
|
00411E91 MOV ESI, DWORD PTR SS:[ESP+1C]
00411E95 OR ECX, FFFFFFFF
00411E98 MOV EDI, ESI
00411E9A XOR EAX, EAX
00411E9C XOR EDX, EDX
00411E9E REPNE SCAS BYTE PTR ES:[EDI]
00411EA0 NOT ECX
00411EA2 DEC ECX
00411EA3 JE SHORT Electrob.00411EC3
00411EA5 MOV CL, BYTE PTR DS:[EDX+ESI] ; CL=DS:[EDX+ESI]=45 ('E')
00411EA8 MOV BL, BYTE PTR SS:[ESP+10] ; BL=SS:[0012F48C]=00
00411EAC ADD BL, CL
00411EAE MOV EDI, ESI ; EDI<--0042A540 ASCII "ElectrObalz"
00411EB0 OR ECX, FFFFFFFF
00411EB3 XOR EAX, EAX
00411EB5 INC EDX
00411EB6 MOV BYTE PTR SS:[ESP+10], BL ; BL=45
00411EBA REPNE SCAS BYTE PTR ES:[EDI]
00411EBC NOT ECX
00411EBE DEC ECX
00411EBF CMP EDX, ECX
00411EC1 JB SHORT Electrob.00411EA5

------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容