.endif
sub ecx,edi ;减REALCLIENTID
mov esi,ecx
;invoke wsprintf,offset bufferwndcont,offset wndcontformat,esi
;invoke MessageBox,0,offset bufferwndcont,offset vp,1
add esi,passoffset
invoke Toolhelp32ReadProcessMemory,parid,esi,offset buffer1,4,NULL
.if eax == TRUE
mov ecx,offset buffer1
mov esi,[ecx]
.endif
;invoke wsprintf,offset bufferpassaddr,offset passaddrformat,esi
;invoke MessageBox,0,offset bufferpassaddr,offset vp,1
;得到密码长度
mov ecx,esi
add ecx,lenoffset
invoke Toolhelp32ReadProcessMemory,parid,ecx,offset buffer1,4,NULL
.if eax == TRUE
mov ecx,offset buffer1
mov ecx,[ecx]
mov PASSLEN,ecx
.endif
.if ecx>0 && ecx <32
;invoke wsprintf,offset bufferpasslen,offset passlenformat,ecx
;invoke MessageBox,0,offset bufferpasslen,offset vp,1
.else
invoke MessageBox,0,offset passerr,offset vp,1
ret
.endif
;得到加密密码的变量
mov ecx,esi
add ecx,0ECh
invoke Toolhelp32ReadProcessMemory,parid,ecx,offset buffer1,4,NULL
.if eax == TRUE
mov ecx,offset buffer1
MOV ECX,[ECX]
xor edx,edx
movzx edx,cl
mov ENCODE,EDX
.endif
;invoke wsprintf,offset bufferpass1,offset passformat,edx
;invoke MessageBox,0,offset bufferpass1,offset vp,1
;得到解密后的密码
mov ecx,esi
invoke Toolhelp32ReadProcessMemory,parid,ecx,offset buffer1,4,NULL
.if eax == TRUE
mov ecx,offset buffer1
mov ecx,[ecx]
.endif
invoke Toolhelp32ReadProcessMemory,parid,ecx,offset buffer1,4,NULL
.if eax == TRUE
mov ecx,offset buffer1
mov ecx,[ecx]
.endif
mov ebx,ecx
invoke Toolhelp32ReadProcessMemory,parid,ecx,offset buffer1,PASSLEN,NULL
.if eax == TRUE
mov esi,offset buffer1
.endif
MOV EDX,ENCODE
mov cl,dl
mov edi,PASSLEN
@@nextpass:
CMP EDI,1
JBE @@firstpass
mov eax,esi
add eax,edi
mov dl,[eax-2]
xor dl,[eax-1]
xor dl,cl ;重要
mov [eax-1],dl
dec edi
jmp @@nextpass
@@firstpass:
or cl,43h ;WHY?
mov edx,offset buffer1
xor [edx],cl
;密码可能是UNICODE的
invoke lstrlenA,edx
.if eax<PASSLEN ;密码是UNICODE
mov edx,PASSLEN
add edx,edx
mov ecx,ebx
invoke Toolhelp32ReadProcessMemory,parid,ecx,offset buffer1,edx,NULL
.if eax == TRUE
mov esi,offset buffer1
.endif
mov edi,PASSLEN
add edi,edi
MOV EDX,ENCODE
mov cl,dl
@@nextpass2:
CMP EDI,1
JBE @@firstpass2
mov eax,esi
add eax,edi
mov dl,[eax-2]
xor dl,[eax-1]
xor dl,cl ;重要
mov [eax-1],dl
dec edi
jmp @@nextpass2
上一页 1 2 3 4 5 6 7 8 9 10 下一页 |