📄 dechash.inc
字号:
mov ebp, ebx
lea edx, [edx+edi+5A827999h]
mov edi, ebx
rol edx, 5
or edi, eax
and ebp, eax
and edi, edx
add ecx, [esi+2Ch]
or edi, ebp
mov ebp, eax
lea ecx, [ecx+edi+5A827999h]
mov edi, eax
rol ecx, 9
or edi, edx
and ebp, edx
and edi, ecx
add ebx, [esi+3Ch]
or edi, ebp
mov ebp, edx
lea ebx, [ebx+edi+5A827999h]
mov edi, edx
rol ebx, 0Dh
xor edi, ecx
mov ebp, [esi]
xor edi, ebx
add eax, ebp
lea eax, [eax+edi+6ED9EBA1h]
mov ebp, ecx
rol eax, 3
xor ebp, ebx
mov edi, [esi+20h]
xor ebp, eax
add edx, edi
lea edx, [edx+ebp+6ED9EBA1h]
mov edi, ebx
rol edx, 9
xor edi, eax
mov ebp, [esi+10h]
xor edi, edx
add ecx, ebp
lea ecx, [ecx+edi+6ED9EBA1h]
mov ebp, eax
rol ecx, 0Bh
xor ebp, edx
mov edi, [esi+30h]
xor ebp, ecx
add ebx, edi
lea ebx, [ebx+ebp+6ED9EBA1h]
mov edi, edx
rol ebx, 0Fh
xor edi, ecx
mov ebp, [esi+8]
xor edi, ebx
add eax, ebp
lea eax, [eax+edi+6ED9EBA1h]
mov ebp, ecx
rol eax, 3
xor ebp, ebx
mov edi, [esi+28h]
xor ebp, eax
add edx, edi
lea edx, [edx+ebp+6ED9EBA1h]
mov edi, ebx
rol edx, 9
xor edi, eax
mov ebp, [esi+18h]
xor edi, edx
add ecx, ebp
lea ecx, [ecx+edi+6ED9EBA1h]
mov ebp, eax
rol ecx, 0Bh
xor ebp, edx
mov edi, [esi+38h]
xor ebp, ecx
add ebx, edi
lea ebx, [ebx+ebp+6ED9EBA1h]
mov edi, edx
rol ebx, 0Fh
xor edi, ecx
mov ebp, [esi+4]
xor edi, ebx
add eax, ebp
lea eax, [eax+edi+6ED9EBA1h]
mov ebp, ecx
rol eax, 3
xor ebp, ebx
mov edi, [esi+24h]
xor ebp, eax
add edx, edi
lea edx, [edx+ebp+6ED9EBA1h]
mov edi, ebx
rol edx, 9
xor edi, eax
mov ebp, [esi+14h]
xor edi, edx
add ecx, ebp
lea ecx, [ecx+edi+6ED9EBA1h]
mov ebp, eax
rol ecx, 0Bh
xor ebp, edx
mov edi, [esi+34h]
xor ebp, ecx
add ebx, edi
lea ebx, [ebx+ebp+6ED9EBA1h]
mov edi, edx
rol ebx, 0Fh
xor edi, ecx
mov ebp, [esi+0Ch]
xor edi, ebx
add eax, ebp
lea eax, [eax+edi+6ED9EBA1h]
mov ebp, ecx
rol eax, 3
xor ebp, ebx
mov edi, [esi+2Ch]
xor ebp, eax
add edx, edi
lea edx, [edx+ebp+6ED9EBA1h]
mov edi, ebx
rol edx, 9
xor edi, eax
mov ebp, [esi+1Ch]
xor edi, edx
add ecx, ebp
lea ecx, [ecx+edi+6ED9EBA1h]
mov ebp, eax
rol ecx, 0Bh
xor ebp, edx
mov edi, [esi+3Ch]
xor ebp, ecx
add ebx, edi
lea ebx, [ebx+ebp+6ED9EBA1h]
rol ebx, 0Fh
pop edi
add [edi], eax
add [edi+4], ebx
add [edi+8], ecx
add [edi+0Ch], edx
pop ebp
pop edi
pop esi
pop ebx
end;
{$ENDIF}
{$IFDEF THash_MD5_asm}
procedure THash_MD5.DoTransform(Buffer: PLongArray);
asm
push ebx
push esi
push edi
lea edi, [eax].THash_MD5.FDigest // let edi points to A,B ..
mov esi, edx // let esi points to Buffer
push ebp
mov eax, [edi]
mov ebx, [edi+4]
push edi
mov ecx, [edi+8]
mov edx, [edi+0Ch]
mov edi, ecx
mov ebp, [esi]
xor edi, edx
lea eax, [eax+ebp-28955B88h]
and edi, ebx
mov ebp, [esi+4]
xor edi, edx
add eax, edi
mov edi, ebx
rol eax, 7
xor edi, ecx
add eax, ebx
lea edx, [edx+ebp-173848AAh]
and edi, eax
mov ebp, [esi+8]
xor edi, ecx
add edx, edi
mov edi, eax
rol edx, 0Ch
xor edi, ebx
add edx, eax
lea ecx, [ecx+ebp+242070DBh]
and edi, edx
mov ebp, [esi+0Ch]
xor edi, ebx
add ecx, edi
mov edi, edx
ror ecx, 0Fh
xor edi, eax
add ecx, edx
lea ebx, [ebx+ebp-3E423112h]
and edi, ecx
mov ebp, [esi+10h]
xor edi, eax
add ebx, edi
mov edi, ecx
ror ebx, 0Ah
xor edi, edx
add ebx, ecx
lea eax, [eax+ebp-0A83F051h]
and edi, ebx
mov ebp, [esi+14h]
xor edi, edx
add eax, edi
mov edi, ebx
rol eax, 7
xor edi, ecx
add eax, ebx
lea edx, [edx+ebp+4787C62Ah]
and edi, eax
mov ebp, [esi+18h]
xor edi, ecx
add edx, edi
mov edi, eax
rol edx, 0Ch
xor edi, ebx
add edx, eax
lea ecx, [ecx+ebp-57CFB9EDh]
and edi, edx
mov ebp, [esi+1Ch]
xor edi, ebx
add ecx, edi
mov edi, edx
ror ecx, 0Fh
xor edi, eax
add ecx, edx
lea ebx, [ebx+ebp-2B96AFFh]
and edi, ecx
mov ebp, [esi+20h]
xor edi, eax
add ebx, edi
mov edi, ecx
ror ebx, 0Ah
xor edi, edx
add ebx, ecx
lea eax, [eax+ebp+698098D8h]
and edi, ebx
mov ebp, [esi+24h]
xor edi, edx
add eax, edi
mov edi, ebx
rol eax, 7
xor edi, ecx
add eax, ebx
lea edx, [edx+ebp-74BB0851h]
and edi, eax
mov ebp, [esi+28h]
xor edi, ecx
add edx, edi
mov edi, eax
rol edx, 0Ch
xor edi, ebx
add edx, eax
lea ecx, [ecx+ebp-0A44Fh]
and edi, edx
mov ebp, [esi+2Ch]
xor edi, ebx
add ecx, edi
mov edi, edx
ror ecx, 0Fh
xor edi, eax
add ecx, edx
lea ebx, [ebx+ebp-76A32842h]
and edi, ecx
mov ebp, [esi+30h]
xor edi, eax
add ebx, edi
mov edi, ecx
ror ebx, 0Ah
xor edi, edx
add ebx, ecx
lea eax, [eax+ebp+6B901122h]
and edi, ebx
mov ebp, [esi+34h]
xor edi, edx
add eax, edi
mov edi, ebx
rol eax, 7
xor edi, ecx
add eax, ebx
lea edx, [edx+ebp-2678E6Dh]
and edi, eax
mov ebp, [esi+38h]
xor edi, ecx
add edx, edi
mov edi, eax
rol edx, 0Ch
xor edi, ebx
add edx, eax
lea ecx, [ecx+ebp-5986BC72h]
and edi, edx
mov ebp, [esi+3Ch]
xor edi, ebx
add ecx, edi
mov edi, edx
ror ecx, 0Fh
xor edi, eax
add ecx, edx
lea ebx, [ebx+ebp+49B40821h]
and edi, ecx
mov ebp, [esi+4]
xor edi, eax
add ebx, edi
mov edi, ecx
ror ebx, 0Ah
xor edi, edx
add ebx, ecx
mov edi, ecx
xor edi, ebx
lea eax, [eax+ebp-9E1DA9Eh]
and edi, edx
mov ebp, [esi+18h]
xor edi, ecx
add eax, edi
mov edi, ebx
rol eax, 5
add eax, ebx
xor edi, eax
lea edx, [edx+ebp-3FBF4CC0h]
and edi, ecx
mov ebp, [esi+2Ch]
xor edi, ebx
add edx, edi
mov edi, eax
rol edx, 9
add edx, eax
xor edi, edx
lea ecx, [ecx+ebp+265E5A51h]
and edi, ebx
mov ebp, [esi]
xor edi, eax
add ecx, edi
mov edi, edx
rol ecx, 0Eh
add ecx, edx
xor edi, ecx
lea ebx, [ebx+ebp-16493856h]
and edi, eax
mov ebp, [esi+14h]
xor edi, edx
add ebx, edi
mov edi, ecx
ror ebx, 0Ch
add ebx, ecx
xor edi, ebx
lea eax, [eax+ebp-29D0EFA3h]
and edi, edx
mov ebp, [esi+28h]
xor edi, ecx
add eax, edi
mov edi, ebx
rol eax, 5
add eax, ebx
xor edi, eax
lea edx, [edx+ebp+2441453h]
and edi, ecx
mov ebp, [esi+3Ch]
xor edi, ebx
add edx, edi
mov edi, eax
rol edx, 9
add edx, eax
xor edi, edx
lea ecx, [ecx+ebp-275E197Fh]
and edi, ebx
mov ebp, [esi+10h]
xor edi, eax
add ecx, edi
mov edi, edx
rol ecx, 0Eh
add ecx, edx
xor edi, ecx
lea ebx, [ebx+ebp-182C0438h]
and edi, eax
mov ebp, [esi+24h]
xor edi, edx
add ebx, edi
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -