Function at 0x1003a4d0
Capabilities:
Hash data using sha1

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9c
mov eax, ecx
push ebx
push esi
push edi
mov ecx, dword [eax + 4]
mov esi, 0x10
mov edi, dword [eax]
mov ebx, dword [eax + 8]
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x9c], eax
mov eax, dword [eax + 0x10]
mov dword [ebp - 4], ecx
lea ecx, [ebp - 0x92]
mov dword [ebp - 0x98], edi
mov dword [ebp - 8], ebx
mov dword [ebp - 0x10], eax
nop
movzx eax, byte [edx]
lea edx, [edx + 4]
mov byte [ecx + 1], al
lea ecx, [ecx + 4]
movzx eax, byte [edx - 3]
mov byte [ecx - 4], al
movzx eax, byte [edx - 2]
mov byte [ecx - 5], al
movzx eax, byte [edx - 1]
mov byte [ecx - 6], al
sub esi, 1
jne 0x1003a510
mov edx, dword [ebp - 4]
mov ecx, edi
mov esi, dword [ebp - 0xc]
mov eax, edx
xor eax, ebx
ror ecx, 0x1b
add ecx, dword [ebp - 0x94]
and eax, esi
xor edx, eax
mov ebx, esi
add edx, ecx
shl ebx, 0x1e
mov ecx, dword [ebp - 0x10]
mov eax, esi
mov esi, dword [ebp - 8]
add ecx, 0x5a827999
add edx, ecx
shr eax, 2
or ebx, eax
mov ecx, edx
ror ecx, 0x1b
mov eax, esi
add ecx, dword [ebp - 0x90]
xor eax, ebx
and eax, edi
shl edi, 0x1e
xor esi, eax
mov eax, dword [ebp - 0x98]
add esi, ecx
shr eax, 2
mov ecx, dword [ebp - 4]
or edi, eax
add ecx, 0x5a827999
mov dword [ebp - 4], edi
add esi, ecx
xor edi, ebx
mov ecx, esi
and edi, edx
ror ecx, 0x1b
xor edi, ebx
add ecx, dword [ebp - 0x8c]
mov eax, edx
add edi, ecx
shl eax, 0x1e
mov ecx, dword [ebp - 8]
add ebx, 0x5a827999
add ecx, 0x5a827999
shr edx, 2
or eax, edx
add edi, ecx
mov edx, dword [ebp - 4]
mov ecx, edi
mov dword [ebp - 8], eax
xor eax, edx
and eax, esi
ror ecx, 0x1b
add ecx, dword [ebp - 0x88]
xor edx, eax
mov eax, esi
add edx, ecx
shr esi, 2
add edx, ebx
mov ebx, dword [ebp - 8]
mov ecx, edx
shl eax, 0x1e
or eax, esi
ror ecx, 0x1b
add ecx, dword [ebp - 0x84]
mov esi, ebx
xor esi, eax
mov dword [ebp - 0xc], eax
and esi, edi
mov eax, edi
xor esi, ebx
shl eax, 0x1e
add esi, ecx
shr edi, 2
mov ecx, dword [ebp - 4]
add ecx, 0x5a827999
add esi, ecx
or eax, edi
mov edi, dword [ebp - 0xc]
mov ecx, esi
mov dword [ebp - 4], eax
add ebx, 0x5a827999
ror ecx, 0x1b
mov eax, edi
xor eax, dword [ebp - 4]
add ecx, dword [ebp - 0x80]
and eax, edx
xor edi, eax
mov eax, edx
add edi, ecx
shl eax, 0x1e
add edi, ebx
shr edx, 2
mov ebx, dword [ebp - 4]
or eax, edx
mov dword [ebp - 0x10], eax
mov ecx, edi
ror ecx, 0x1b
mov edx, ebx
add ecx, dword [ebp - 0x7c]
xor edx, eax
and edx, esi
mov eax, esi
shl eax, 0x1e
xor edx, ebx
add edx, ecx
shr esi, 2
mov ecx, dword [ebp - 0xc]
or eax, esi
mov esi, dword [ebp - 0x10]
add ecx, 0x5a827999
mov dword [ebp - 4], eax
add edx, ecx
mov eax, esi
mov ecx, edx
xor eax, dword [ebp - 4]
add ebx, 0x5a827999
and eax, edi
ror ecx, 0x1b
add ecx, dword [ebp - 0x78]
xor esi, eax
mov eax, edi
add esi, ecx
mov ecx, dword [ebp - 0x10]
add esi, ebx
mov ebx, dword [ebp - 4]
add ecx, 0x5a827999
shl eax, 0x1e
shr edi, 2
or eax, edi
mov edi, esi
mov dword [ebp - 8], eax
xor eax, ebx
and eax, edx
ror edi, 0x1b
add edi, dword [ebp - 0x74]
xor eax, ebx
add edi, eax
add ebx, 0x5a827999
mov eax, edx
add edi, ecx
shl eax, 0x1e
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov edx, dword [ebp - 8]
add ecx, dword [ebp - 0x70]
mov dword [ebp - 4], eax
mov eax, edx
xor eax, dword [ebp - 4]
and eax, esi
xor edx, eax
mov eax, esi
add edx, ecx
shl eax, 0x1e
shr esi, 2
add edx, ebx
or eax, esi
mov ebx, dword [ebp - 4]
mov ecx, edx
ror ecx, 0x1b
mov esi, ebx
add ecx, dword [ebp - 0x6c]
xor esi, eax
mov dword [ebp - 0xc], eax
and esi, edi
xor esi, ebx
mov eax, edi
add esi, ecx
shl eax, 0x1e
mov ecx, dword [ebp - 8]
add ebx, 0x5a827999
add ecx, 0x5a827999
shr edi, 2
add esi, ecx
or eax, edi
mov edi, dword [ebp - 0xc]
mov ecx, esi
mov dword [ebp - 4], eax
mov eax, edi
xor eax, dword [ebp - 4]
and eax, edx
ror ecx, 0x1b
add ecx, dword [ebp - 0x68]
xor edi, eax
add edi, ecx
mov eax, edx
add edi, ebx
shl eax, 0x1e
mov ebx, dword [ebp - 4]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
add ecx, dword [ebp - 0x64]
mov edx, ebx
xor edx, eax
mov dword [ebp - 0x10], eax
and edx, esi
mov eax, esi
xor edx, ebx
shl eax, 0x1e
add edx, ecx
shr esi, 2
mov ecx, dword [ebp - 0xc]
or eax, esi
mov esi, dword [ebp - 0x10]
add ecx, 0x5a827999
add edx, ecx
mov dword [ebp - 4], eax
xor eax, esi
add ebx, 0x5a827999
and eax, edi
mov ecx, edx
ror ecx, 0x1b
xor esi, eax
add ecx, dword [ebp - 0x60]
mov eax, edx
add esi, ecx
shl eax, 0x1e
add esi, ebx
mov ebx, edi
shl ebx, 0x1e
mov ecx, esi
shr edi, 2
or ebx, edi
ror ecx, 0x1b
mov edi, dword [ebp - 4]
add ecx, dword [ebp - 0x5c]
mov dword [ebp - 8], ebx
xor ebx, edi
and ebx, edx
shr edx, 2
xor ebx, edi
add ebx, ecx
mov ecx, dword [ebp - 0x10]
add ecx, 0x5a827999
add ebx, ecx
or eax, edx
mov dword [ebp - 4], eax
mov ecx, ebx
mov edx, dword [ebp - 8]
add edi, 0x5a827999
ror ecx, 0x1b
mov eax, edx
xor eax, dword [ebp - 4]
add ecx, dword [ebp - 0x58]
and eax, esi
xor eax, edx
add edx, 0x5a827999
add eax, ecx
add edi, eax
mov eax, esi
shl eax, 0x1e
shr esi, 2
or eax, esi
mov esi, dword [ebp - 4]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x60]
xor eax, dword [ebp - 0x74]
xor eax, dword [ebp - 0x8c]
xor eax, dword [ebp - 0x94]
mov ecx, eax
add eax, eax
shr ecx, 0x1f
or ecx, eax
mov eax, esi
xor eax, dword [ebp - 0xc]
and eax, ebx
mov dword [ebp - 0x18], ecx
xor eax, esi
mov ecx, edi
ror ecx, 0x1b
add esi, 0x5a827999
add ecx, dword [ebp - 0x18]
add eax, ecx
add edx, eax
mov eax, ebx
shl eax, 0x1e
shr ebx, 2
or eax, ebx
mov ebx, edi
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x5c]
xor eax, dword [ebp - 0x70]
xor eax, dword [ebp - 0x88]
xor eax, dword [ebp - 0x90]
mov ecx, eax
shl ebx, 0x1e
add eax, eax
shr ecx, 0x1f
or ecx, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x10]
and eax, edi
mov dword [ebp - 0x28], ecx
xor eax, dword [ebp - 0xc]
mov ecx, edx
ror ecx, 0x1b
add ecx, dword [ebp - 0x28]
add eax, ecx
shr edi, 2
add esi, eax
or ebx, edi
mov eax, dword [ebp - 0x58]
mov ecx, esi
xor eax, dword [ebp - 0x6c]
xor eax, dword [ebp - 0x84]
xor eax, dword [ebp - 0x8c]
mov dword [ebp - 4], ebx
mov edi, eax
xor ebx, dword [ebp - 0x10]
add eax, eax
shr edi, 0x1f
and ebx, edx
xor ebx, dword [ebp - 0x10]
or edi, eax
ror ecx, 0x1b
mov dword [ebp - 0x2c], edi
add edi, ecx
mov eax, dword [ebp - 0x68]
add edi, ebx
xor eax, dword [ebp - 0x18]
mov ebx, edx
xor eax, dword [ebp - 0x80]
xor eax, dword [ebp - 0x88]
mov ecx, dword [ebp - 0xc]
add ecx, 0x5a827999
shr edx, 2
add edi, ecx
shl ebx, 0x1e
mov ecx, eax
or ebx, edx
mov edx, dword [ebp - 4]
add eax, eax
shr ecx, 0x1f
or ecx, eax
mov dword [ebp - 8], ebx
mov dword [ebp - 0x20], ecx
mov eax, edx
xor eax, ebx
mov ecx, edi
and eax, esi
ror ecx, 0x1b
add ecx, dword [ebp - 0x20]
xor edx, eax
mov eax, dword [ebp - 0x64]
add edx, ecx
xor eax, dword [ebp - 0x28]
mov ebx, esi
xor eax, dword [ebp - 0x7c]
xor eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x10]
shr esi, 2
add ecx, 0x5a827999
add edx, ecx
shl ebx, 0x1e
or ebx, esi
mov ecx, edx
mov esi, eax
ror ecx, 0x1b
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, dword [ebp - 8]
xor eax, ebx
mov dword [ebp - 0x38], esi
xor eax, edi
add esi, ecx
mov ecx, dword [ebp - 4]
add esi, eax
mov eax, edi
add ecx, 0x6ed9eba1
shl eax, 0x1e
add esi, ecx
shr edi, 2
mov ecx, esi
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x60]
xor eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x78]
xor eax, dword [ebp - 0x80]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, ebx
xor eax, dword [ebp - 0xc]
xor eax, edx
mov dword [ebp - 0x24], edi
add edi, ecx
mov ecx, dword [ebp - 8]
add edi, eax
add ecx, 0x6ed9eba1
mov eax, edx
add edi, ecx
shl eax, 0x1e
shr edx, 2
or eax, edx
mov dword [ebp - 4], eax
mov ecx, edi
mov eax, dword [ebp - 0x5c]
add ebx, 0x6ed9eba1
xor eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x74]
xor eax, dword [ebp - 0x7c]
mov edx, eax
ror ecx, 0x1b
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, esi
xor eax, dword [ebp - 0xc]
xor eax, dword [ebp - 4]
mov dword [ebp - 0x3c], edx
add edx, ecx
add edx, eax
mov eax, dword [ebp - 0x58]
xor eax, dword [ebp - 0x38]
add edx, ebx
xor eax, dword [ebp - 0x70]
mov ebx, esi
xor eax, dword [ebp - 0x78]
mov ecx, edx
shr esi, 2
shl ebx, 0x1e
or ebx, esi
ror ecx, 0x1b
mov esi, eax
mov dword [ebp - 8], ebx
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, ebx
mov ebx, dword [ebp - 4]
xor eax, edi
xor eax, ebx
mov dword [ebp - 0x30], esi
add esi, ecx
add ebx, 0x6ed9eba1
add esi, eax
mov ecx, dword [ebp - 0xc]
mov eax, edi
add ecx, 0x6ed9eba1
shl eax, 0x1e
add esi, ecx
shr edi, 2
mov ecx, esi
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x6c]
xor eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x74]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 0x14], edi
add edi, ecx
add edi, eax
mov eax, edx
shl eax, 0x1e
add edi, ebx
shr edx, 2
or eax, edx
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x68]
xor eax, dword [ebp - 0x28]
xor eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x70]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov dword [ebp - 0x34], edx
mov ebx, dword [ebp - 4]
mov ecx, edi
ror ecx, 0x1b
mov eax, ebx
xor eax, dword [ebp - 0xc]
add edx, ecx
xor eax, esi
mov ecx, dword [ebp - 8]
add edx, eax
add ecx, 0x6ed9eba1
mov eax, esi
add edx, ecx
shl eax, 0x1e
mov ecx, edx
shr esi, 2
add ebx, 0x6ed9eba1
or eax, esi
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x64]
xor eax, dword [ebp - 0x6c]
xor eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x30]
mov esi, eax
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 4]
xor eax, edi
mov dword [ebp - 0x1c], esi
add esi, ecx
add esi, eax
mov eax, edi
shl eax, 0x1e
add esi, ebx
mov ebx, dword [ebp - 4]
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x60]
xor eax, dword [ebp - 0x68]
xor eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x14]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, edx
xor eax, ebx
mov dword [ebp - 0x48], edi
xor eax, dword [ebp - 0x10]
add edi, ecx
mov ecx, dword [ebp - 0xc]
add edi, eax
mov eax, edx
add ecx, 0x6ed9eba1
shl eax, 0x1e
add edi, ecx
shr edx, 2
mov ecx, edi
or eax, edx
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x34]
xor eax, dword [ebp - 0x5c]
xor eax, dword [ebp - 0x64]
xor eax, dword [ebp - 0x38]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, dword [ebp - 4]
xor eax, esi
mov dword [ebp - 0x40], edx
xor eax, dword [ebp - 0x10]
add edx, ecx
add edx, eax
add ebx, 0x6ed9eba1
mov eax, esi
add edx, ebx
shl eax, 0x1e
mov ecx, edx
mov ebx, dword [ebp - 4]
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x58]
xor eax, dword [ebp - 0x60]
xor eax, dword [ebp - 0x24]
mov esi, eax
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, ebx
xor eax, dword [ebp - 0xc]
add ebx, 0x6ed9eba1
xor eax, edi
mov dword [ebp - 0x4c], esi
add esi, ecx
mov ecx, dword [ebp - 0x10]
add esi, eax
add ecx, 0x6ed9eba1
mov eax, edi
add esi, ecx
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x5c]
xor eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x3c]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 0x50], edi
add edi, ecx
add edi, eax
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [ebp - 4]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x58]
xor eax, dword [ebp - 0x28]
xor eax, dword [ebp - 0x30]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, ebx
xor eax, dword [ebp - 8]
xor eax, esi
mov dword [ebp - 0x44], edx
add edx, ecx
mov ecx, dword [ebp - 0xc]
add edx, eax
add ecx, 0x6ed9eba1
mov eax, esi
add edx, ecx
shl eax, 0x1e
shr esi, 2
or eax, esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x2c]
mov ecx, edx
xor eax, dword [ebp - 0x14]
add ebx, 0x6ed9eba1
mov esi, eax
ror ecx, 0x1b
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, edi
xor eax, dword [ebp - 8]
xor eax, dword [ebp - 4]
mov dword [ebp - 0x54], esi
add esi, ecx
add esi, eax
mov eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x34]
add esi, ebx
xor eax, dword [ebp - 0x28]
mov ebx, edi
xor eax, dword [ebp - 0x20]
mov ecx, esi
shr edi, 2
shl ebx, 0x1e
or ebx, edi
ror ecx, 0x1b
mov edi, eax
mov dword [ebp - 0x18], ebx
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, ebx
mov ebx, dword [ebp - 4]
xor eax, edx
xor eax, ebx
mov dword [ebp - 0x10], edi
add edi, ecx
add ebx, 0x6ed9eba1
add edi, eax
mov ecx, dword [ebp - 8]
mov eax, edx
add ecx, 0x6ed9eba1
shl eax, 0x1e
add edi, ecx
shr edx, 2
mov ecx, edi
or eax, edx
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x38]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 4]
xor eax, esi
mov dword [ebp - 0x2c], edx
add edx, ecx
add edx, eax
mov eax, esi
shl eax, 0x1e
add edx, ebx
mov ebx, dword [ebp - 4]
mov ecx, edx
shr esi, 2
or eax, esi
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x24]
mov esi, eax
add eax, eax
shr esi, 0x1f
or esi, eax
ror ecx, 0x1b
mov dword [ebp - 0xc], esi
add esi, ecx
mov eax, ebx
xor eax, dword [ebp - 8]
add ebx, 0x6ed9eba1
xor eax, edi
mov ecx, dword [ebp - 0x18]
add esi, eax
add ecx, 0x6ed9eba1
mov eax, edi
add esi, ecx
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0x3c]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 4]
xor eax, edx
mov dword [ebp - 0x38], edi
add edi, ecx
add edi, eax
mov eax, edx
shl eax, 0x1e
add edi, ebx
mov ebx, dword [ebp - 4]
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x30]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, esi
xor eax, ebx
mov dword [ebp - 0x24], edx
xor eax, dword [ebp - 0x20]
add edx, ecx
mov ecx, dword [ebp - 8]
add edx, eax
mov eax, esi
add ecx, 0x6ed9eba1
shl eax, 0x1e
add edx, ecx
shr esi, 2
mov ecx, edx
or eax, esi
ror ecx, 0x1b
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x14]
mov esi, eax
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, dword [ebp - 4]
xor eax, edi
mov dword [ebp - 0x3c], esi
xor eax, dword [ebp - 0x20]
add esi, ecx
add eax, 0x6ed9eba1
add esi, eax
mov eax, edi
add esi, ebx
shl eax, 0x1e
shr edi, 2
mov ecx, esi
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x34]
xor eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0x30]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 8]
xor eax, edx
mov dword [ebp - 0x30], edi
add edi, ecx
mov ecx, dword [ebp - 0x20]
add edi, eax
add ecx, 0x6ed9eba1
mov eax, dword [ebp - 0x54]
add edi, ecx
xor eax, dword [ebp - 0x24]
mov ecx, edx
xor eax, dword [ebp - 0x1c]
mov ebx, edi
xor eax, dword [ebp - 0x14]
shl ecx, 0x1e
shr edx, 2
or ecx, edx
ror ebx, 0x1b
mov edx, eax
mov dword [ebp - 0x18], ecx
add eax, eax
shr edx, 0x1f
or edx, eax
or ecx, esi
and ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x18]
and eax, esi
mov dword [ebp - 0x20], edx
or ecx, eax
mov eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x10]
add ecx, 0x8f1bbcdc
xor eax, dword [ebp - 0x34]
add ecx, edx
add ecx, dword [ebp - 4]
xor eax, dword [ebp - 0x3c]
add ebx, ecx
mov ecx, esi
mov edx, ebx
shr esi, 2
shl ecx, 0x1e
or ecx, esi
ror edx, 0x1b
mov esi, eax
mov dword [ebp - 0x14], ecx
add eax, eax
shr esi, 0x1f
or esi, eax
or ecx, edi
mov eax, dword [ebp - 0x14]
and ecx, dword [ebp - 0x18]
and eax, edi
or ecx, eax
mov dword [ebp - 0x34], esi
add esi, 0x8f1bbcdc
mov eax, edi
shl eax, 0x1e
add esi, ecx
add esi, dword [ebp - 8]
shr edi, 2
add esi, edx
or eax, edi
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x30]
mov ecx, eax
mov edi, esi
shr ecx, 0x1f
add eax, eax
or ecx, eax
ror edi, 0x1b
mov dword [ebp - 0x28], ecx
mov eax, ebx
and eax, dword [ebp - 8]
mov ecx, ebx
or ecx, dword [ebp - 8]
and ecx, dword [ebp - 0x14]
or ecx, eax
mov eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x4c]
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x18]
xor eax, dword [ebp - 0xc]
add edi, ecx
xor eax, dword [ebp - 0x20]
mov ecx, ebx
shl ecx, 0x1e
mov edx, edi
shr ebx, 2
or ecx, ebx
ror edx, 0x1b
mov ebx, eax
mov dword [ebp - 0x1c], ecx
or ecx, esi
shr ebx, 0x1f
and ecx, dword [ebp - 8]
add eax, eax
or ebx, eax
mov eax, dword [ebp - 0x1c]
and eax, esi
mov dword [ebp - 0x48], ebx
or ecx, eax
mov eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x38]
add ecx, ebx
add ecx, dword [ebp - 0x14]
lea ebx, [edx - 0x70e44324]
xor eax, dword [ebp - 0x40]
add ebx, ecx
xor eax, dword [ebp - 0x34]
mov ecx, esi
shl ecx, 0x1e
mov edx, ebx
shr esi, 2
or ecx, esi
ror edx, 0x1b
mov esi, eax
mov dword [ebp - 0x14], ecx
add eax, eax
shr esi, 0x1f
or esi, eax
or ecx, edi
and ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
and eax, edi
mov dword [ebp - 0x40], esi
or ecx, eax
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x4c]
add ecx, esi
add ecx, dword [ebp - 8]
lea esi, [edx - 0x70e44324]
xor eax, dword [ebp - 0x24]
add esi, ecx
xor eax, dword [ebp - 0x28]
mov ecx, edi
shr edi, 2
shl ecx, 0x1e
or ecx, edi
mov edi, eax
shr edi, 0x1f
add eax, eax
or edi, eax
mov dword [ebp - 8], ecx
mov dword [ebp - 0x4c], edi
mov eax, dword [ebp - 8]
or ecx, ebx
and ecx, dword [ebp - 0x14]
and eax, ebx
or ecx, eax
mov edx, esi
mov eax, dword [ebp - 0x50]
add ecx, edi
add ecx, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x48]
ror edx, 0x1b
lea edi, [edx - 0x70e44324]
add edi, ecx
mov ecx, ebx
shl ecx, 0x1e
mov edx, edi
shr ebx, 2
or ecx, ebx
ror edx, 0x1b
mov ebx, eax
mov dword [ebp - 0x1c], ecx
add eax, eax
shr ebx, 0x1f
or ebx, eax
or ecx, esi
and ecx, dword [ebp - 8]
mov eax, dword [ebp - 0x1c]
and eax, esi
mov dword [ebp - 0x50], ebx
or ecx, eax
add ebx, 0x8f1bbcdc
add ebx, ecx
mov eax, esi
add ebx, dword [ebp - 0x14]
shl eax, 0x1e
add ebx, edx
shr esi, 2
or eax, esi
mov esi, ebx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x30]
xor eax, dword [ebp - 0x40]
mov ecx, eax
ror esi, 0x1b
shr ecx, 0x1f
add eax, eax
or ecx, eax
mov eax, edi
and eax, dword [ebp - 0x14]
mov dword [ebp - 0x18], ecx
mov ecx, edi
or ecx, dword [ebp - 0x14]
and ecx, dword [ebp - 0x1c]
or ecx, eax
mov eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x2c]
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x18]
add ecx, dword [ebp - 8]
xor eax, dword [ebp - 0x20]
add esi, ecx
xor eax, dword [ebp - 0x4c]
mov ecx, edi
shr edi, 2
mov edx, esi
shl ecx, 0x1e
or ecx, edi
ror edx, 0x1b
mov edi, eax
mov dword [ebp - 8], ecx
add eax, eax
shr edi, 0x1f
or edi, eax
or ecx, ebx
and ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 8]
mov dword [ebp - 0x54], edi
and eax, ebx
or ecx, eax
mov eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0xc]
add ecx, edi
add ecx, dword [ebp - 0x1c]
lea edi, [edx - 0x70e44324]
xor eax, dword [ebp - 0x34]
add edi, ecx
xor eax, dword [ebp - 0x50]
mov ecx, ebx
shl ecx, 0x1e
mov edx, edi
shr ebx, 2
or ecx, ebx
ror edx, 0x1b
mov dword [ebp - 0x1c], ecx
mov ebx, eax
or ecx, esi
shr ebx, 0x1f
and ecx, dword [ebp - 8]
add eax, eax
or ebx, eax
mov eax, dword [ebp - 0x1c]
and eax, esi
mov dword [ebp - 0x10], ebx
or ecx, eax
mov eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x38]
add ecx, ebx
add ecx, dword [ebp - 0x14]
lea ebx, [edx - 0x70e44324]
xor eax, dword [ebp - 0x28]
add ebx, ecx
xor eax, dword [ebp - 0x18]
mov ecx, esi
shl ecx, 0x1e
mov edx, ebx
shr esi, 2
or ecx, esi
ror edx, 0x1b
mov esi, eax
mov dword [ebp - 0x14], ecx
or ecx, edi
shr esi, 0x1f
and ecx, dword [ebp - 0x1c]
add eax, eax
or esi, eax
mov eax, dword [ebp - 0x14]
and eax, edi
mov dword [ebp - 0x44], esi
or ecx, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x24]
add ecx, esi
add ecx, dword [ebp - 8]
lea esi, [edx - 0x70e44324]
xor eax, dword [ebp - 0x54]
add esi, ecx
xor eax, dword [ebp - 0x48]
mov ecx, edi
shr edi, 2
mov edx, esi
shl ecx, 0x1e
or ecx, edi
ror edx, 0x1b
mov edi, eax
mov dword [ebp - 8], ecx
shr edi, 0x1f
add eax, eax
or edi, eax
or ecx, ebx
mov eax, dword [ebp - 8]
and ecx, dword [ebp - 0x14]
and eax, ebx
mov dword [ebp - 0xc], edi
or ecx, eax
add edi, 0x8f1bbcdc
add edi, ecx
add edi, dword [ebp - 0x1c]
add edi, edx
mov eax, ebx
shr ebx, 2
shl eax, 0x1e
or eax, ebx
mov ebx, edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x40]
mov ecx, eax
ror ebx, 0x1b
shr ecx, 0x1f
add eax, eax
or ecx, eax
mov eax, esi
and eax, dword [ebp - 4]
mov dword [ebp - 0x2c], ecx
mov ecx, esi
or ecx, dword [ebp - 4]
and ecx, dword [ebp - 8]
or ecx, eax
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x30]
add ecx, 0x8f1bbcdc
add ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x14]
xor eax, dword [ebp - 0x44]
add ebx, ecx
xor eax, dword [ebp - 0x4c]
mov ecx, esi
shl ecx, 0x1e
mov edx, ebx
shr esi, 2
or ecx, esi
ror edx, 0x1b
mov dword [ebp - 0x38], ecx
mov esi, eax
or ecx, edi
shr esi, 0x1f
and ecx, dword [ebp - 4]
add eax, eax
or esi, eax
mov eax, dword [ebp - 0x38]
and eax, edi
mov dword [ebp - 0x1c], esi
or ecx, eax
mov eax, dword [ebp - 0x3c]
xor eax, dword [ebp - 0x20]
add ecx, esi
add ecx, dword [ebp - 8]
lea esi, [edx - 0x70e44324]
xor eax, dword [ebp - 0x50]
add esi, ecx
xor eax, dword [ebp - 0xc]
mov ecx, edi
shl ecx, 0x1e
mov edx, esi
shr edi, 2
or ecx, edi
ror edx, 0x1b
mov dword [ebp - 8], ecx
mov edi, eax
or ecx, ebx
shr edi, 0x1f
and ecx, dword [ebp - 0x38]
add eax, eax
or edi, eax
mov eax, dword [ebp - 8]
and eax, ebx
mov dword [ebp - 0x14], edi
or ecx, eax
add ecx, edi
lea edi, [edx - 0x70e44324]
add ecx, dword [ebp - 4]
add edi, ecx
mov ecx, ebx
shl ecx, 0x1e
shr ebx, 2
or ecx, ebx
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 0x30]
or ecx, esi
xor eax, dword [ebp - 0x34]
mov edx, edi
xor eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x2c]
and ecx, dword [ebp - 8]
mov ebx, eax
add eax, eax
shr ebx, 0x1f
or ebx, eax
ror edx, 0x1b
mov eax, dword [ebp - 4]
and eax, esi
mov dword [ebp - 0x30], ebx
or ecx, eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x28]
add ecx, ebx
add ecx, dword [ebp - 0x38]
lea ebx, [edx - 0x70e44324]
xor eax, dword [ebp - 0x54]
add ebx, ecx
xor eax, dword [ebp - 0x1c]
mov ecx, esi
shl ecx, 0x1e
mov edx, ebx
shr esi, 2
or ecx, esi
ror edx, 0x1b
mov esi, eax
mov dword [ebp - 0x24], ecx
add eax, eax
shr esi, 0x1f
or esi, eax
or ecx, edi
and ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x24]
and eax, edi
mov dword [ebp - 0x3c], esi
or ecx, eax
mov eax, edi
shl eax, 0x1e
add ecx, esi
add ecx, dword [ebp - 8]
lea esi, [edx - 0x70e44324]
shr edi, 2
add esi, ecx
or eax, edi
mov edx, esi
mov dword [ebp - 8], eax
mov edi, ebx
mov eax, dword [ebp - 0x34]
xor eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x14]
mov ecx, eax
shl edi, 0x1e
shr ecx, 0x1f
add eax, eax
or ecx, eax
ror edx, 0x1b
mov dword [ebp - 0x20], ecx
mov eax, ebx
and eax, dword [ebp - 8]
mov ecx, ebx
or ecx, dword [ebp - 8]
and ecx, dword [ebp - 0x24]
or ecx, eax
shr ebx, 2
mov eax, dword [ebp - 0x28]
or edi, ebx
xor eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x30]
add ecx, dword [ebp - 0x20]
mov ebx, eax
add ecx, dword [ebp - 4]
shr ebx, 0x1f
add eax, eax
mov dword [ebp - 0x34], edi
or ebx, eax
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x3c]
mov dword [ebp - 0x28], ebx
lea ebx, [edx - 0x70e44324]
add ebx, ecx
mov ecx, edi
or ecx, esi
and edi, esi
and ecx, dword [ebp - 8]
mov edx, ebx
or ecx, edi
ror edx, 0x1b
add ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x24]
lea edi, [edx - 0x70e44324]
add edi, ecx
mov ecx, esi
shl ecx, 0x1e
mov edx, edi
shr esi, 2
or ecx, esi
ror edx, 0x1b
mov esi, eax
mov dword [ebp - 4], ecx
add eax, eax
shr esi, 0x1f
or esi, eax
or ecx, ebx
and ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 4]
and eax, ebx
mov dword [ebp - 0x48], esi
or ecx, eax
add esi, 0x8f1bbcdc
mov eax, dword [ebp - 0x20]
add ecx, esi
xor eax, dword [ebp - 0x50]
mov esi, ebx
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x2c]
add ecx, dword [ebp - 8]
shr ebx, 2
add edx, ecx
shl esi, 0x1e
mov ecx, edx
or esi, ebx
ror ecx, 0x1b
mov ebx, eax
mov dword [ebp - 0x24], esi
add eax, eax
shr ebx, 0x1f
or ebx, eax
mov eax, dword [ebp - 4]
xor eax, esi
mov dword [ebp - 0x40], ebx
xor eax, edi
lea esi, [ecx - 0x359d3e2a]
add eax, ebx
add eax, dword [ebp - 0x34]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x28]
xor eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x1c]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 8]
mov dword [ebp - 0x4c], edi
xor eax, edx
mov ebx, esi
add eax, edi
shl ebx, 0x1e
add eax, dword [ebp - 4]
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 dword [ebp - 4], eax
mov eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x14]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, esi
xor eax, dword [ebp - 8]
xor eax, dword [ebp - 4]
add eax, edx
mov dword [ebp - 0x50], edx
add eax, dword [ebp - 0x24]
lea edx, [ecx - 0x359d3e2a]
add edx, eax
shr esi, 2
mov eax, dword [ebp - 0x40]
or ebx, esi
xor eax, dword [ebp - 0x18]
mov ecx, edx
xor eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x30]
mov esi, eax
ror ecx, 0x1b
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, ebx
xor eax, edi
mov dword [ebp - 0x34], esi
xor eax, dword [ebp - 4]
add eax, esi
lea esi, [ecx - 0x359d3e2a]
add eax, dword [ebp - 8]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x3c]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, ebx
xor eax, dword [ebp - 8]
xor eax, edx
mov dword [ebp - 0x54], edi
add eax, edi
lea edi, [ecx - 0x359d3e2a]
add eax, dword [ebp - 4]
add edi, eax
mov eax, edx
shl eax, 0x1e
shr edx, 2
or eax, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0xc]
mov ecx, edi
mov edx, eax
ror ecx, 0x1b
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 4]
xor eax, esi
mov dword [ebp - 0x18], edx
add eax, edx
lea edx, [ecx - 0x359d3e2a]
add eax, ebx
add edx, eax
mov eax, esi
shl eax, 0x1e
mov ecx, edx
shr esi, 2
or eax, esi
ror ecx, 0x1b
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x28]
xor eax, dword [ebp - 0x34]
xor eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x2c]
mov esi, eax
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 0x10]
xor eax, edi
mov dword [ebp - 0x44], esi
add eax, esi
lea esi, [ecx - 0x359d3e2a]
add eax, dword [ebp - 8]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0xc]
xor eax, dword [ebp - 0x1c]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, edx
xor eax, dword [ebp - 0x10]
xor eax, dword [ebp - 8]
add eax, edi
mov dword [ebp - 0x24], edi
add eax, dword [ebp - 4]
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 dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x2c]
xor eax, dword [ebp - 0x14]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, dword [ebp - 0xc]
xor eax, esi
mov dword [ebp - 0x38], edx
xor eax, dword [ebp - 8]
add eax, edx
add eax, dword [ebp - 0x10]
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 [ebp - 4], eax
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x30]
mov esi, eax
add eax, eax
shr esi, 0x1f
or esi, eax
mov eax, dword [ebp - 0xc]
xor eax, dword [ebp - 4]
xor eax, edi
mov dword [ebp - 0x1c], esi
add eax, esi
lea esi, [ecx - 0x359d3e2a]
add eax, dword [ebp - 8]
add esi, eax
mov eax, edi
shl eax, 0x1e
mov ecx, esi
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x24]
xor eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x14]
xor eax, dword [ebp - 0x3c]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 8]
xor eax, edx
mov dword [ebp - 0x14], edi
add eax, edi
lea edi, [ecx - 0x359d3e2a]
add eax, dword [ebp - 0xc]
add edi, eax
mov eax, edx
shl eax, 0x1e
mov ecx, edi
shr edx, 2
or eax, edx
ror ecx, 0x1b
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x34]
xor eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0x30]
mov edx, eax
add eax, eax
shr edx, 0x1f
or edx, eax
mov eax, dword [ebp - 8]
xor eax, dword [ebp - 0xc]
xor eax, esi
mov dword [ebp - 0x30], edx
add eax, edx
lea edx, [ecx - 0x359d3e2a]
add eax, dword [ebp - 4]
add edx, eax
mov eax, esi
shl eax, 0x1e
shr esi, 2
or eax, esi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 0x28]
xor eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x1c]
xor eax, dword [ebp - 0x3c]
mov ecx, eax
mov ebx, edx
add eax, eax
shr ecx, 0x1f
or ecx, eax
ror ebx, 0x1b
mov eax, edi
mov dword [ebp - 0x10], ecx
xor eax, dword [ebp - 0xc]
mov esi, edx
xor eax, dword [ebp - 4]
add eax, 0xca62c1d6
shl esi, 0x1e
add eax, ecx
add eax, dword [ebp - 8]
add ebx, eax
mov eax, edi
shl eax, 0x1e
mov ecx, ebx
shr edi, 2
or eax, edi
ror ecx, 0x1b
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x14]
xor eax, dword [ebp - 0x48]
mov edi, eax
add eax, eax
shr edi, 0x1f
or edi, eax
mov eax, dword [ebp - 8]
xor eax, edx
mov dword [ebp - 0x3c], edi
xor eax, dword [ebp - 4]
add eax, edi
shr edx, 2
add eax, dword [ebp - 0xc]
lea edi, [ecx - 0x359d3e2a]
add edi, eax
or esi, edx
mov eax, dword [ebp - 0x28]
mov ecx, edi
xor eax, dword [ebp - 0x44]
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x30]
mov edx, eax
ror ecx, 0x1b
add eax, eax
shr edx, 0x1f
or edx, eax
mov dword [ebp - 0xc], esi
mov eax, dword [ebp - 8]
xor eax, esi
mov dword [ebp - 0x2c], edx
xor eax, ebx
lea esi, [ecx - 0x359d3e2a]
add eax, edx
mov edx, ebx
add eax, dword [ebp - 4]
add esi, eax
shr ebx, 2
mov eax, dword [ebp - 0x24]
mov ecx, esi
xor eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x48]
xor eax, dword [ebp - 0x10]
shl edx, 0x1e
or edx, ebx
ror ecx, 0x1b
mov ebx, eax
mov dword [ebp - 0x44], edx
add eax, eax
shr ebx, 0x1f
or ebx, eax
mov eax, dword [ebp - 0xc]
xor eax, edx
mov dword [ebp - 0x10], ebx
xor eax, edi
add eax, ebx
add eax, dword [ebp - 8]
lea edx, [ecx - 0x359d3e2a]
mov ecx, dword [ebp - 0x34]
add edx, eax
xor ecx, dword [ebp - 0x4c]
xor ecx, dword [ebp - 0x1c]
mov eax, edi
shl eax, 0x1e
xor ecx, dword [ebp - 0x2c]
shr edi, 2
or eax, edi
ror ecx, 0x1f
mov dword [ebp - 4], eax
mov edi, edx
mov eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x38]
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x3c]
mov ebx, eax
ror edi, 0x1b
add eax, eax
shr ebx, 0x1f
or ebx, eax
mov eax, dword [ebp - 0x44]
xor eax, dword [ebp - 4]
xor eax, esi
mov dword [ebp - 0x40], ebx
add ebx, 0xca62c1d6
add eax, ebx
mov ebx, esi
add eax, dword [ebp - 0xc]
add edi, eax
shr esi, 2
mov eax, edi
shl ebx, 0x1e
ror eax, 0x1b
or ebx, esi
mov esi, dword [ebp - 4]
add ecx, eax
mov eax, edx
mov dword [ebp - 8], ebx
xor eax, esi
add esi, 0xca62c1d6
xor eax, ebx
add eax, dword [ebp - 0x44]
lea ebx, [ecx - 0x359d3e2a]
mov ecx, edx
add ebx, eax
shr edx, 2
mov eax, ebx
shl ecx, 0x1e
or ecx, edx
ror eax, 0x1b
mov edx, dword [ebp - 0x54]
xor edx, dword [ebp - 0x50]
xor edx, dword [ebp - 0x14]
xor edx, dword [ebp - 0x10]
ror edx, 0x1f
add edx, eax
mov dword [ebp - 4], ecx
mov eax, dword [ebp - 0x18]
xor ecx, edi
xor eax, dword [ebp - 0x40]
xor eax, dword [ebp - 0x34]
xor ecx, dword [ebp - 8]
xor eax, dword [ebp - 0x30]
add ecx, esi
ror eax, 0x1f
mov esi, edi
add eax, dword [ebp - 8]
add edx, ecx
shr edi, 2
mov ecx, edx
shl esi, 0x1e
or esi, edi
mov dword [ebp - 0x18], eax
mov edi, dword [ebp - 4]
mov eax, edi
xor eax, esi
ror ecx, 0x1b
xor eax, ebx
add eax, dword [ebp - 0x98]
add ecx, 0xca62c1d6
ror ebx, 2
add ecx, dword [ebp - 0x18]
add eax, ecx
mov ecx, dword [ebp - 0x9c]
add dword [ecx + 8], ebx
add dword [ecx + 0xc], esi
add dword [ecx + 4], edx
add dword [ecx + 0x10], edi
pop edi
pop esi
mov dword [ecx], eax
pop ebx
mov esp, ebp
pop ebp
ret