L
legoog
Unregistered / Unconfirmed
GUEST, unregistred user!
int RXNetCommCore::makeLoginPack(char *sz_pwd,unsigned char *sz_outputPack)
{
DWORD TickCount = GetTickCount();
char countcheckFlag = ((char*)&TickCount)[2];
DWORD lpEncodeKeyStru = (DWORD)EncodeKeyStru;
WORD pwdSubHead = 0;
_asm
{
mov eax,lpEncodeKeyStru
mov dx, word ptr [eax+$EB]
xor dx, $521
mov pwdSubHead,dx
}
*(WORD *)(sz_outputPack) = pwdSubHead;
sz_pwd[$10] = countcheckFlag;
_asm
{
mov edi,lpEncodeKeyStru
add edi,$0DE
mov edx,sz_pwd
mov ecx,1
xor esi,esi
SubLoop:
mov ebx, ecx
and ebx, 1
mov bx, word ptr [edi+ebx*2]
xor bx, word ptr [esi+edx]
add ecx, 1
mov word ptr [edx], bx
add edx, 2
cmp ecx, $0A
jl SubLoop
}
for (int i = 2 ;
i <= $11 + 2;
i ++)
{
sz_outputPack = sz_pwd[i-2];
}
return 0;
}
{
DWORD TickCount = GetTickCount();
char countcheckFlag = ((char*)&TickCount)[2];
DWORD lpEncodeKeyStru = (DWORD)EncodeKeyStru;
WORD pwdSubHead = 0;
_asm
{
mov eax,lpEncodeKeyStru
mov dx, word ptr [eax+$EB]
xor dx, $521
mov pwdSubHead,dx
}
*(WORD *)(sz_outputPack) = pwdSubHead;
sz_pwd[$10] = countcheckFlag;
_asm
{
mov edi,lpEncodeKeyStru
add edi,$0DE
mov edx,sz_pwd
mov ecx,1
xor esi,esi
SubLoop:
mov ebx, ecx
and ebx, 1
mov bx, word ptr [edi+ebx*2]
xor bx, word ptr [esi+edx]
add ecx, 1
mov word ptr [edx], bx
add edx, 2
cmp ecx, $0A
jl SubLoop
}
for (int i = 2 ;
i <= $11 + 2;
i ++)
{
sz_outputPack = sz_pwd[i-2];
}
return 0;
}