Function at 0x100c51e0
Capabilities:
Hash data using sha1

Disassembly:
sub esp, 0x14
mov dword [esp + 4], ecx
push ebx
mov ebx, dword [ecx + 0xc]
push ebp
mov ebp, dword [ecx + 4]
mov dword [esp + 8], edx
mov edx, dword [ecx + 0x10]
push esi
mov esi, dword [ecx]
mov eax, esi
ror eax, 0x1b
mov ecx, ebx
add eax, edx
push edi
mov edi, dword [esp + 0x14]
xor ecx, dword [edi + 8]
mov edi, dword [esp + 0x10]
and ecx, ebp
xor ecx, ebx
mov ebx, ebp
add ecx, eax
shl ebx, 0x1e
mov eax, ebp
mov ebp, dword [esp + 0x14]
mov edi, dword [edi]
shr eax, 2
add edi, 0x5a827999
or ebx, eax
add edi, ecx
mov edx, dword [ebp + 8]
mov ecx, edi
mov eax, edx
ror ecx, 0x1b
xor eax, ebx
and eax, esi
xor edx, eax
mov eax, dword [esp + 0x10]
add edx, ecx
add edx, dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov ebp, esi
add eax, 0x5a827999
shl ebp, 0x1e
add edx, eax
mov eax, esi
mov esi, dword [esp + 0x14]
mov ecx, edx
shr eax, 2
or ebp, eax
ror ecx, 0x1b
mov eax, ebx
mov esi, dword [esi + 8]
xor eax, ebp
and eax, edi
add esi, 0x5a827999
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 8]
mov eax, edi
shl eax, 0x1e
add esi, ecx
shr edi, 2
or eax, edi
mov edi, esi
mov dword [esp + 0x20], eax
xor eax, ebp
and eax, edx
ror edi, 0x1b
xor eax, ebp
add edi, eax
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0xc]
mov eax, edx
add edi, ebx
shl eax, 0x1e
shr edx, 2
mov ecx, edi
or eax, edx
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x20]
lea edx, [ebp + 0x5a827999]
mov ebp, dword [esp + 0x18]
mov eax, ebx
xor eax, dword [esp + 0x18]
and eax, esi
ror ecx, 0x1b
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x10]
mov eax, esi
shl eax, 0x1e
add edx, ecx
shr esi, 2
or eax, esi
mov esi, edx
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
and eax, edi
ror esi, 0x1b
xor eax, ebp
add esi, eax
mov eax, dword [esp + 0x10]
add esi, dword [eax + 0x14]
mov eax, edi
shl eax, 0x1e
add esi, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea edi, [ebp + 0x5a827999]
mov ebp, dword [esp + 0x18]
mov eax, ebx
xor eax, dword [esp + 0x18]
and eax, edx
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x18]
mov eax, edx
shl eax, 0x1e
add edi, ecx
shr edx, 2
or eax, edx
mov edx, edi
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
and eax, esi
ror edx, 0x1b
xor eax, ebp
add edx, eax
mov eax, dword [esp + 0x10]
add edx, dword [eax + 0x1c]
mov eax, esi
shl eax, 0x1e
add edx, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [esp + 0x20], eax
lea esi, [ebp + 0x5a827999]
xor eax, ebx
and eax, edi
xor eax, ebx
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x20]
mov eax, edi
add esi, ecx
shl eax, 0x1e
shr edi, 2
or eax, edi
mov ebp, dword [esp + 0x20]
mov dword [esp + 0x1c], eax
mov edi, esi
mov eax, ebp
ror edi, 0x1b
xor eax, dword [esp + 0x1c]
add ebx, 0x5a827999
and eax, edx
xor eax, ebp
add edi, eax
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0x24]
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea edx, [ebp + 0x5a827999]
mov ebp, dword [esp + 0x18]
mov eax, ebx
xor eax, dword [esp + 0x18]
and eax, esi
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x28]
mov eax, esi
shl eax, 0x1e
add edx, ecx
shr esi, 2
or eax, esi
mov esi, edx
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
and eax, edi
ror esi, 0x1b
xor eax, ebp
add esi, eax
mov eax, dword [esp + 0x10]
add esi, dword [eax + 0x2c]
mov eax, edi
shl eax, 0x1e
add esi, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea edi, [ebp + 0x5a827999]
mov ebp, dword [esp + 0x18]
mov eax, ebx
xor eax, dword [esp + 0x18]
and eax, edx
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x30]
mov eax, edx
shl eax, 0x1e
add edi, ecx
shr edx, 2
or eax, edx
mov edx, edi
mov dword [esp + 0x20], eax
xor eax, ebp
and eax, esi
ror edx, 0x1b
xor eax, ebp
add edx, eax
mov eax, dword [esp + 0x10]
add edx, dword [eax + 0x34]
add edx, ebx
mov ebx, dword [esp + 0x20]
mov eax, esi
shl eax, 0x1e
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [esp + 0x1c], eax
lea esi, [ebp + 0x5a827999]
mov ebp, dword [esp + 0x1c]
mov eax, ebx
xor eax, dword [esp + 0x1c]
and eax, edi
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x38]
mov eax, edi
shl eax, 0x1e
add esi, ecx
shr edi, 2
or eax, edi
mov edi, esi
mov dword [esp + 0x18], eax
mov eax, ebp
xor eax, dword [esp + 0x18]
and eax, edx
ror edi, 0x1b
xor eax, ebp
add edi, eax
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0x3c]
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [esp + 0x18]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [esp + 0x1c], eax
lea edx, [ebp + 0x5a827999]
mov ebp, dword [esp + 0x1c]
mov eax, ebx
xor eax, dword [esp + 0x1c]
and eax, esi
xor eax, ebx
add ebx, 0x5a827999
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x40]
mov eax, esi
shl eax, 0x1e
add edx, ecx
shr esi, 2
or eax, esi
mov esi, edx
mov dword [esp + 0x18], eax
mov eax, ebp
xor eax, dword [esp + 0x18]
and eax, edi
ror esi, 0x1b
xor eax, ebp
add esi, eax
mov eax, dword [esp + 0x10]
add esi, dword [eax + 0x44]
add esi, ebx
mov ebx, edi
shl ebx, 0x1e
mov ecx, esi
shr edi, 2
or ebx, edi
ror ecx, 0x1b
mov eax, ebx
mov dword [esp + 0x20], ebx
xor eax, dword [esp + 0x18]
and eax, edx
xor eax, dword [esp + 0x18]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x48]
lea edi, [ebp + 0x5a827999]
mov ebp, edx
add edi, ecx
shr edx, 2
mov eax, ebx
shl ebp, 0x1e
or ebp, edx
mov edx, edi
xor eax, ebp
ror edx, 0x1b
and eax, esi
mov dword [esp + 0x1c], ebp
xor eax, ebx
mov ebx, esi
add edx, eax
shr esi, 2
mov eax, dword [esp + 0x10]
shl ebx, 0x1e
or ebx, esi
xor ebp, ebx
add edx, dword [eax + 0x4c]
xor ebp, edi
mov eax, dword [esp + 0x18]
add eax, 0x5a827999
add edx, eax
mov eax, dword [esp + 0x10]
mov esi, edx
ror esi, 0x1b
add esi, ebp
mov ebp, edi
add esi, dword [eax + 0x50]
mov eax, dword [esp + 0x20]
add eax, 0x6ed9eba1
shr edi, 2
add esi, eax
shl ebp, 0x1e
or ebp, edi
mov eax, ebx
xor eax, ebp
mov edi, esi
xor eax, edx
ror edi, 0x1b
add edi, eax
add ebx, 0x6ed9eba1
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0x54]
mov eax, dword [esp + 0x1c]
add eax, 0x6ed9eba1
add edi, eax
mov eax, edx
shl eax, 0x1e
shr edx, 2
or eax, edx
mov edx, edi
mov dword [esp + 0x1c], eax
mov eax, esi
xor eax, ebp
ror edx, 0x1b
xor eax, dword [esp + 0x1c]
add edx, eax
mov eax, dword [esp + 0x10]
add edx, dword [eax + 0x58]
mov eax, esi
shl eax, 0x1e
add edx, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [esp + 0x20], eax
lea esi, [ebp + 0x6ed9eba1]
xor eax, edi
xor eax, ebx
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x5c]
mov eax, edi
add esi, ecx
shl eax, 0x1e
mov ebp, dword [esp + 0x20]
add ebx, 0x6ed9eba1
shr edi, 2
or eax, edi
mov edi, esi
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
xor eax, edx
ror edi, 0x1b
add edi, eax
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0x60]
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea edx, [ebp + 0x6ed9eba1]
mov ebp, dword [esp + 0x18]
mov eax, ebx
xor eax, dword [esp + 0x18]
add ebx, 0x6ed9eba1
xor eax, esi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x64]
mov eax, esi
shl eax, 0x1e
add edx, ecx
shr esi, 2
or eax, esi
mov esi, edx
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
xor eax, edi
ror esi, 0x1b
add esi, eax
mov eax, dword [esp + 0x10]
add esi, dword [eax + 0x68]
mov eax, edi
shl eax, 0x1e
add esi, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea edi, [ebp + 0x6ed9eba1]
mov ebp, dword [esp + 0x18]
mov eax, edx
xor eax, ebx
add ebx, 0x6ed9eba1
xor eax, dword [esp + 0x18]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x6c]
mov eax, edx
shl eax, 0x1e
add edi, ecx
shr edx, 2
or eax, edx
mov edx, edi
mov dword [esp + 0x20], eax
xor eax, esi
xor eax, ebp
ror edx, 0x1b
add edx, eax
mov eax, dword [esp + 0x10]
add edx, dword [eax + 0x70]
mov eax, esi
shl eax, 0x1e
add edx, ebx
shr esi, 2
or eax, esi
mov dword [esp + 0x1c], eax
lea esi, [ebp + 0x6ed9eba1]
mov ebx, dword [esp + 0x20]
mov ecx, edx
mov ebp, dword [esp + 0x1c]
mov eax, ebx
xor eax, dword [esp + 0x1c]
add ebx, 0x6ed9eba1
xor eax, edi
ror ecx, 0x1b
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x74]
mov eax, edi
shl eax, 0x1e
add esi, ecx
shr edi, 2
or eax, edi
mov edi, esi
mov dword [esp + 0x18], eax
mov eax, ebp
xor eax, dword [esp + 0x18]
xor eax, edx
ror edi, 0x1b
add edi, eax
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0x78]
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [esp + 0x18]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [esp + 0x1c], eax
lea edx, [ebp + 0x6ed9eba1]
mov ebp, dword [esp + 0x1c]
mov eax, ebx
xor eax, dword [esp + 0x1c]
add ebx, 0x6ed9eba1
xor eax, esi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x7c]
mov eax, esi
shl eax, 0x1e
add edx, ecx
shr esi, 2
or eax, esi
mov esi, edx
mov dword [esp + 0x18], eax
mov eax, edi
xor eax, ebp
ror esi, 0x1b
xor eax, dword [esp + 0x18]
add esi, eax
mov eax, dword [esp + 0x10]
add esi, dword [eax + 0x80]
mov eax, edi
shl eax, 0x1e
add esi, ebx
mov ebx, dword [esp + 0x18]
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x20], eax
lea edi, [ebp + 0x6ed9eba1]
xor eax, edx
xor eax, ebx
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x84]
mov eax, edx
shr edx, 2
add edi, ecx
shl eax, 0x1e
or eax, edx
mov edx, edi
mov dword [esp + 0x1c], eax
mov ebp, dword [esp + 0x20]
add ebx, 0x6ed9eba1
ror edx, 0x1b
mov eax, ebp
xor eax, dword [esp + 0x1c]
xor eax, esi
add edx, eax
mov eax, dword [esp + 0x10]
add edx, dword [eax + 0x88]
mov eax, esi
shl eax, 0x1e
add edx, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea esi, [ebp + 0x6ed9eba1]
mov ebp, dword [esp + 0x18]
mov eax, ebx
xor eax, dword [esp + 0x18]
add ebx, 0x6ed9eba1
xor eax, edi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x8c]
mov eax, edi
shl eax, 0x1e
add esi, ecx
shr edi, 2
or eax, edi
mov edi, esi
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
xor eax, edx
ror edi, 0x1b
add edi, eax
mov eax, dword [esp + 0x10]
add edi, dword [eax + 0x90]
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [esp + 0x18], eax
lea edx, [ebp + 0x6ed9eba1]
mov ebp, dword [esp + 0x18]
mov eax, esi
xor eax, ebx
add ebx, 0x6ed9eba1
xor eax, dword [esp + 0x18]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x94]
mov eax, esi
shl eax, 0x1e
add edx, ecx
shr esi, 2
or eax, esi
mov esi, edx
mov dword [esp + 0x20], eax
xor eax, edi
xor eax, ebp
ror esi, 0x1b
add esi, eax
mov eax, dword [esp + 0x10]
add esi, dword [eax + 0x98]
mov eax, edi
add esi, ebx
shl eax, 0x1e
mov ebx, dword [esp + 0x20]
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x1c], eax
mov eax, ebx
lea edi, [ebp + 0x6ed9eba1]
xor eax, dword [esp + 0x1c]
add ebx, 0x8f1bbcdc
xor eax, edx
mov ebp, dword [esp + 0x1c]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0x9c]
mov eax, edx
add edi, ecx
shl eax, 0x1e
shr edx, 2
or eax, edx
mov edx, edi
mov ecx, eax
mov dword [esp + 0x20], eax
xor ecx, esi
ror edx, 0x1b
and ecx, ebp
and eax, esi
add ecx, eax
add ebp, 0x8f1bbcdc
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xa0]
mov eax, esi
add ebx, ecx
shl eax, 0x1e
shr esi, 2
add ebx, edx
or eax, esi
mov esi, ebx
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, edi
ror esi, 0x1b
and ecx, dword [esp + 0x20]
and eax, edi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xa4]
mov eax, edi
add ecx, ebp
shl eax, 0x1e
mov ebp, dword [esp + 0x1c]
add esi, ecx
shr edi, 2
mov ecx, ebx
or eax, edi
mov edi, esi
xor ecx, eax
mov dword [esp + 0x18], eax
and ecx, ebp
ror edi, 0x1b
mov eax, ebx
add ebp, 0x8f1bbcdc
and eax, dword [esp + 0x18]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xa8]
mov eax, ebx
add ecx, dword [esp + 0x20]
add edi, ecx
shl eax, 0x1e
shr ebx, 2
or eax, ebx
mov ebx, edi
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, esi
ror ebx, 0x1b
and ecx, dword [esp + 0x18]
and eax, esi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xac]
mov eax, esi
add ecx, ebp
add ebx, ecx
shl eax, 0x1e
mov ebp, dword [esp + 0x1c]
shr esi, 2
or eax, esi
mov esi, ebx
mov ecx, eax
mov dword [esp + 0x20], eax
xor ecx, edi
ror esi, 0x1b
and ecx, ebp
and eax, edi
add ecx, eax
add ebp, 0x8f1bbcdc
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xb0]
mov eax, edi
add ecx, dword [esp + 0x18]
add esi, ecx
shl eax, 0x1e
shr edi, 2
or eax, edi
mov edi, esi
mov ecx, eax
mov dword [esp + 0x18], eax
xor ecx, ebx
ror edi, 0x1b
and ecx, dword [esp + 0x20]
and eax, ebx
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xb4]
mov eax, ebx
add ecx, ebp
shl eax, 0x1e
mov ebp, dword [esp + 0x18]
add edi, ecx
shr ebx, 2
or eax, ebx
mov ebx, edi
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, esi
ror ebx, 0x1b
and ecx, ebp
and eax, esi
add ecx, eax
add ebp, 0x8f1bbcdc
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xb8]
mov eax, esi
add ecx, dword [esp + 0x20]
add ebx, ecx
shl eax, 0x1e
shr esi, 2
mov ecx, edi
or eax, esi
mov esi, ebx
xor ecx, eax
mov dword [esp + 0x20], eax
and ecx, dword [esp + 0x1c]
mov eax, edi
and eax, dword [esp + 0x20]
add ecx, eax
ror esi, 0x1b
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xbc]
mov eax, edi
add ecx, ebp
shr edi, 2
mov ebp, dword [esp + 0x20]
add esi, ecx
shl eax, 0x1e
or eax, edi
mov edi, esi
mov ecx, eax
mov dword [esp + 0x18], eax
xor ecx, ebx
ror edi, 0x1b
and ecx, ebp
and eax, ebx
add ecx, eax
add ebp, 0x8f1bbcdc
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xc0]
mov eax, ebx
add ecx, dword [esp + 0x1c]
add edi, ecx
shl eax, 0x1e
shr ebx, 2
or eax, ebx
mov ebx, edi
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, esi
ror ebx, 0x1b
and ecx, dword [esp + 0x18]
and eax, esi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xc4]
mov eax, esi
add ecx, ebp
shl eax, 0x1e
mov ebp, dword [esp + 0x1c]
add ebx, ecx
shr esi, 2
or eax, esi
mov esi, ebx
mov ecx, eax
mov dword [esp + 0x20], eax
xor ecx, edi
ror esi, 0x1b
and ecx, ebp
and eax, edi
add ecx, eax
add ebp, 0x8f1bbcdc
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xc8]
mov eax, edi
add ecx, dword [esp + 0x18]
add esi, ecx
shl eax, 0x1e
shr edi, 2
or eax, edi
mov edi, esi
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, ebx
ror edi, 0x1b
and ecx, dword [esp + 0x20]
and eax, ebx
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xcc]
mov eax, ebx
add ecx, ebp
shl eax, 0x1e
mov ebp, dword [esp + 0x1c]
add edi, ecx
shr ebx, 2
mov ecx, esi
or eax, ebx
mov ebx, edi
xor ecx, eax
mov dword [esp + 0x18], eax
and ecx, ebp
ror ebx, 0x1b
mov eax, esi
and eax, dword [esp + 0x18]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xd0]
mov eax, esi
add ecx, dword [esp + 0x20]
shl eax, 0x1e
add ebx, ecx
shr esi, 2
or eax, esi
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, edi
and eax, edi
and ecx, dword [esp + 0x18]
mov esi, ebx
add ecx, eax
ror esi, 0x1b
mov eax, dword [esp + 0x10]
add ebp, 0x8f1bbcdc
add ecx, dword [eax + 0xd4]
mov eax, edi
add ecx, ebp
shl eax, 0x1e
add esi, ecx
mov ebp, dword [esp + 0x1c]
shr edi, 2
or eax, edi
mov edi, esi
mov ecx, eax
mov dword [esp + 0x20], eax
xor ecx, ebx
ror edi, 0x1b
and ecx, ebp
and eax, ebx
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xd8]
mov eax, ebx
add ecx, dword [esp + 0x18]
add edi, ecx
shl eax, 0x1e
shr ebx, 2
or eax, ebx
mov ebx, edi
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, esi
ror ebx, 0x1b
and ecx, dword [esp + 0x20]
and eax, esi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xdc]
mov eax, esi
add ecx, ebp
shl eax, 0x1e
add ebx, ecx
shr esi, 2
or eax, esi
mov esi, ebx
mov ecx, eax
mov dword [esp + 0x18], eax
xor ecx, edi
ror esi, 0x1b
and ecx, dword [esp + 0x1c]
and eax, edi
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xe0]
mov eax, edi
add ecx, dword [esp + 0x20]
add esi, ecx
shl eax, 0x1e
shr edi, 2
mov ecx, ebx
or eax, edi
mov ebp, esi
xor ecx, eax
mov dword [esp + 0x20], eax
and ecx, dword [esp + 0x18]
mov eax, ebx
and eax, dword [esp + 0x20]
add ecx, eax
ror ebp, 0x1b
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xe4]
add ecx, dword [esp + 0x1c]
mov eax, ebx
shl eax, 0x1e
add ebp, ecx
shr ebx, 2
mov edi, ebp
or eax, ebx
ror edi, 0x1b
mov ebx, dword [esp + 0x20]
mov ecx, eax
mov dword [esp + 0x1c], eax
xor ecx, esi
and eax, esi
and ecx, ebx
add ecx, eax
add ebx, 0x8f1bbcdc
mov eax, dword [esp + 0x10]
add ecx, 0x8f1bbcdc
add ecx, dword [eax + 0xe8]
mov eax, esi
add ecx, dword [esp + 0x18]
shl eax, 0x1e
add edi, ecx
shr esi, 2
mov edx, edi
or eax, esi
ror edx, 0x1b
mov ecx, eax
mov dword [esp + 0x20], eax
and eax, ebp
xor ecx, ebp
and ecx, dword [esp + 0x1c]
add ecx, eax
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 0xec]
mov eax, dword [esp + 0x20]
add ecx, ebx
mov ebx, ebp
add edx, ecx
shr ebp, 2
mov esi, edx
shl ebx, 0x1e
or ebx, ebp
ror esi, 0x1b
mov ebp, dword [esp + 0x10]
xor eax, ebx
xor eax, edi
add eax, 0xca62c1d6
add eax, dword [ebp + 0xf0]
mov ebp, edi
add eax, dword [esp + 0x1c]
add esi, eax
shr edi, 2
shl ebp, 0x1e
mov eax, ebx
or ebp, edi
mov ecx, esi
mov edi, dword [esp + 0x10]
xor eax, ebp
xor eax, edx
ror ecx, 0x1b
add eax, dword [edi + 0xf4]
add eax, dword [esp + 0x20]
lea edi, [ecx - 0x359d3e2a]
add edi, eax
mov eax, edx
shl eax, 0x1e
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov edx, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov eax, esi
xor eax, ebp
xor eax, dword [esp + 0x20]
add eax, dword [edx + 0xf8]
lea edx, [ecx - 0x359d3e2a]
add eax, ebx
add edx, eax
mov eax, esi
shl eax, 0x1e
mov ecx, edx
mov ebx, dword [esp + 0x20]
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [esp + 0x1c], eax
xor eax, edi
xor eax, ebx
mov esi, dword [esp + 0x10]
add eax, dword [esi + 0xfc]
lea esi, [ecx - 0x359d3e2a]
add eax, ebp
mov ebp, dword [esp + 0x1c]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x20], eax
mov eax, ebp
xor eax, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
xor eax, edx
add eax, dword [edi + 0x100]
lea edi, [ecx - 0x359d3e2a]
add eax, ebx
mov ebx, dword [esp + 0x20]
add edi, eax
mov eax, edx
shl eax, 0x1e
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov edx, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, ebx
xor eax, dword [esp + 0x1c]
xor eax, esi
add eax, dword [edx + 0x104]
lea edx, [ecx - 0x359d3e2a]
add eax, ebp
mov ebp, dword [esp + 0x1c]
add edx, eax
mov eax, esi
shl eax, 0x1e
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov esi, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov eax, ebp
xor eax, dword [esp + 0x20]
xor eax, edi
add eax, dword [esi + 0x108]
lea esi, [ecx - 0x359d3e2a]
add eax, ebx
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov edi, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, edx
xor eax, dword [esp + 0x20]
xor eax, dword [esp + 0x1c]
add eax, dword [edi + 0x10c]
lea edi, [ecx - 0x359d3e2a]
add eax, ebp
add edi, eax
mov eax, edx
shl eax, 0x1e
shr edx, 2
or eax, edx
mov dword [esp + 0x18], eax
mov ecx, edi
xor eax, esi
mov edx, dword [esp + 0x10]
xor eax, dword [esp + 0x1c]
ror ecx, 0x1b
add eax, dword [edx + 0x110]
add eax, dword [esp + 0x20]
lea edx, [ecx - 0x359d3e2a]
add edx, eax
mov eax, esi
shl eax, 0x1e
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
xor eax, dword [esp + 0x20]
mov esi, dword [esp + 0x10]
xor eax, edi
mov ebp, dword [esp + 0x20]
add eax, dword [esi + 0x114]
lea esi, [ecx - 0x359d3e2a]
add eax, dword [esp + 0x1c]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov edi, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, ebp
xor eax, dword [esp + 0x1c]
xor eax, edx
mov ebx, dword [esp + 0x1c]
add eax, dword [edi + 0x118]
lea edi, [ecx - 0x359d3e2a]
add eax, dword [esp + 0x18]
add edi, eax
mov eax, edx
shl eax, 0x1e
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov edx, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov eax, ebx
xor eax, dword [esp + 0x20]
xor eax, esi
add eax, dword [edx + 0x11c]
lea edx, [ecx - 0x359d3e2a]
add eax, ebp
add edx, eax
mov eax, esi
shl eax, 0x1e
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov esi, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, edi
xor eax, dword [esp + 0x20]
xor eax, dword [esp + 0x1c]
add eax, dword [esi + 0x120]
lea esi, [ecx - 0x359d3e2a]
add eax, ebx
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [esp + 0x18], eax
xor eax, edx
xor eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x10]
add eax, dword [edi + 0x124]
lea edi, [ecx - 0x359d3e2a]
add eax, dword [esp + 0x20]
add edi, eax
mov eax, edx
shl eax, 0x1e
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x18]
xor eax, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
xor eax, esi
mov ebx, dword [esp + 0x20]
add eax, dword [edx + 0x128]
lea edx, [ecx - 0x359d3e2a]
add eax, dword [esp + 0x1c]
add edx, eax
mov eax, esi
shl eax, 0x1e
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov esi, dword [esp + 0x10]
mov dword [esp + 0x1c], eax
mov eax, ebx
xor eax, dword [esp + 0x1c]
xor eax, edi
mov ebp, dword [esp + 0x1c]
add eax, dword [esi + 0x12c]
lea esi, [ecx - 0x359d3e2a]
add eax, dword [esp + 0x18]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov edi, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov eax, ebp
xor eax, dword [esp + 0x20]
xor eax, edx
add eax, dword [edi + 0x130]
lea edi, [ecx - 0x359d3e2a]
add eax, ebx
mov ebx, edx
add edi, eax
shl ebx, 0x1e
shr edx, 2
mov eax, esi
xor eax, dword [esp + 0x20]
or ebx, edx
xor eax, ebx
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x10]
mov ecx, edi
ror ecx, 0x1b
add eax, dword [ebx + 0x134]
add eax, ebp
lea ebx, [ecx - 0x359d3e2a]
add ebx, eax
mov ebp, esi
shr esi, 2
mov edx, ebx
shl ebp, 0x1e
or ebp, esi
ror edx, 0x1b
mov esi, dword [esp + 0x10]
mov eax, ebp
xor eax, edi
xor eax, dword [esp + 0x1c]
add eax, 0xca62c1d6
add eax, dword [esi + 0x138]
add eax, dword [esp + 0x20]
add edx, eax
mov esi, edi
mov eax, ebp
shr edi, 2
mov ecx, edx
shl esi, 0x1e
or esi, edi
ror ecx, 0x1b
mov edi, dword [esp + 0x10]
xor eax, esi
add ecx, dword [esp + 0x1c]
xor eax, ebx
ror ebx, 2
add eax, dword [edi + 0x13c]
mov edi, dword [esp + 0x14]
add eax, 0xca62c1d6
add eax, dword [edi]
add dword [edi + 8], ebx
add eax, ecx
add dword [edi + 0xc], esi
add dword [edi + 4], edx
add dword [edi + 0x10], ebp
mov dword [edi], eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret