Function at 0x45ca4e
Capabilities:
Hash data using murmur3
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x7c
push ebx
push ebp
push esi
push edi
mov ecx, dword [esp + 0x94]
movzx edx, byte [ecx]
movzx eax, byte [ecx + 1]
movzx ebx, byte [ecx + 4]
shl ebx, 8
shl edx, 8
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 8
or edx, eax
movzx eax, byte [ecx + 5]
or ebx, eax
mov dword [esp + 0x64], edx
shl ebx, 8
movzx eax, byte [ecx + 6]
or ebx, eax
movzx eax, byte [ecx + 7]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 9]
mov dword [esp + 0x80], ebx
movzx ebx, byte [ecx + 8]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xa]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xb]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xd]
mov dword [esp + 0x7c], ebx
movzx ebx, byte [ecx + 0xc]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xe]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0xf]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x11]
mov dword [esp + 0x78], ebx
movzx ebx, byte [ecx + 0x10]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x12]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x13]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x15]
mov dword [esp + 0x74], ebx
movzx ebx, byte [ecx + 0x14]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x16]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x17]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x19]
mov dword [esp + 0x70], ebx
movzx ebx, byte [ecx + 0x18]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x1a]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x1b]
shl ebx, 8
or ebx, eax
mov dword [esp + 0x6c], ebx
movzx ebx, byte [ecx + 0x1c]
shl ebx, 8
movzx eax, byte [ecx + 0x1d]
or ebx, eax
movzx eax, byte [ecx + 0x1e]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x1f]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x21]
mov dword [esp + 0x84], ebx
movzx ebx, byte [ecx + 0x20]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x22]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x23]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x25]
mov dword [esp + 0x88], ebx
movzx ebx, byte [ecx + 0x24]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x26]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x27]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x29]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ecx + 0x28]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x2a]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x2b]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x2d]
mov dword [esp + 0x40], ebx
movzx ebx, byte [ecx + 0x2c]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x2e]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x2f]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x31]
mov dword [esp + 0x48], ebx
movzx ebx, byte [ecx + 0x30]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x32]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x33]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x35]
mov dword [esp + 0x4c], ebx
movzx ebx, byte [ecx + 0x34]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x36]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x37]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x39]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ecx + 0x38]
shl ebx, 8
or ebx, eax
mov esi, dword [esp + 0x90]
movzx eax, byte [ecx + 0x3a]
mov edx, esi
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 0x3b]
shl ebx, 8
or ebx, eax
mov ebp, dword [esi]
movzx eax, byte [ecx + 0x3d]
mov dword [esp + 0x38], ebx
movzx ebx, byte [ecx + 0x3c]
shl ebx, 8
or ebx, eax
mov edi, dword [esi + 8]
movzx eax, byte [ecx + 0x3e]
shl ebx, 8
or ebx, eax
mov dword [esp + 0x30], ebp
movzx eax, byte [ecx + 0x3f]
mov ecx, dword [esi + 0x10]
ror ecx, 0xb
shl ebx, 8
or ebx, eax
mov eax, dword [edx + 0x10]
rol eax, 7
xor ecx, eax
mov dword [esp + 0x3c], ebx
mov eax, dword [edx + 0x10]
ror eax, 6
xor ecx, eax
mov ebx, dword [esi + 4]
add ecx, dword [esi + 0x1c]
mov eax, dword [edx + 0x18]
xor eax, dword [edx + 0x14]
and eax, dword [edx + 0x10]
xor eax, dword [edx + 0x18]
mov edx, dword [esp + 0x64]
add eax, ecx
add edx, 0x428a2f98
mov ecx, ebp
add edx, eax
ror ecx, 0xd
mov eax, esi
mov esi, dword [eax + 0xc]
mov eax, ebp
rol eax, 0xa
add esi, edx
xor ecx, eax
mov dword [esp + 0x68], esi
mov eax, ebp
mov ebp, ebx
or ebp, dword [esp + 0x30]
ror eax, 2
and ebp, edi
xor ecx, eax
mov eax, ebx
and eax, dword [esp + 0x30]
add ecx, edx
or ebp, eax
mov eax, esi
add ebp, ecx
rol eax, 7
mov ecx, esi
ror ecx, 0xb
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x90]
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x90]
add ecx, dword [esp + 0x80]
mov edx, dword [eax + 0x14]
mov eax, edx
xor eax, dword [esi + 0x10]
mov esi, dword [esp + 0x68]
and eax, esi
xor eax, edx
mov edx, dword [esp + 0x90]
add eax, ecx
mov edx, dword [edx + 0x18]
mov ecx, ebp
ror ecx, 0xd
add edx, 0x71374491
add edx, eax
mov eax, ebp
rol eax, 0xa
add edi, edx
xor ecx, eax
mov eax, ebp
ror eax, 2
xor ecx, eax
mov eax, ebp
or eax, dword [esp + 0x30]
add ecx, edx
and eax, ebx
mov dword [esp + 0x28], eax
mov eax, ebp
and eax, dword [esp + 0x30]
or dword [esp + 0x28], eax
mov eax, edi
add dword [esp + 0x28], ecx
mov ecx, edi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x90]
add ecx, dword [esp + 0x7c]
mov edx, dword [eax + 0x10]
mov eax, edx
xor eax, esi
and eax, edi
xor eax, edx
mov edx, dword [esp + 0x90]
add eax, ecx
mov edx, dword [edx + 0x14]
add edx, 0xb5c0fbcf
add edx, eax
mov eax, dword [esp + 0x28]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x28]
ror eax, 2
xor ecx, eax
mov eax, ebp
or eax, dword [esp + 0x28]
add ecx, edx
and eax, dword [esp + 0x30]
mov edx, dword [esp + 0x90]
mov dword [esp + 0x24], eax
mov eax, ebp
and eax, dword [esp + 0x28]
or dword [esp + 0x24], eax
mov eax, ebx
add dword [esp + 0x24], ecx
mov ecx, ebx
mov edx, dword [edx + 0x10]
rol eax, 7
add edx, 0xe9b5dba5
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [esp + 0x78]
xor eax, edi
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x24]
add dword [esp + 0x30], edx
mov ecx, eax
ror ecx, 0xd
rol eax, 0xa
xor ecx, eax
mov eax, dword [esp + 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x28]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x24]
or esi, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
and esi, ebp
or esi, eax
mov eax, edx
rol eax, 7
mov dword [esp + 0x1c], esi
add dword [esp + 0x1c], ecx
mov ecx, edx
mov esi, dword [esp + 0x1c]
ror ecx, 0xb
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [esp + 0x74]
xor eax, ebx
and eax, edx
mov edx, dword [esp + 0x68]
xor eax, edi
add edx, 0x3956c25b
add eax, ecx
mov ecx, esi
add edx, eax
ror ecx, 0xd
mov eax, esi
add ebp, edx
rol eax, 0xa
xor ecx, eax
mov dword [esp + 0x68], ebp
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x14], eax
add ecx, edx
and eax, dword [esp + 0x1c]
lea edx, [edi + 0x59f111f1]
or dword [esp + 0x14], esi
mov esi, dword [esp + 0x28]
and dword [esp + 0x14], esi
or dword [esp + 0x14], eax
mov eax, ebp
add dword [esp + 0x14], ecx
mov ecx, ebp
mov edi, dword [esp + 0x14]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, dword [esp + 0x30]
add ecx, dword [esp + 0x70]
and eax, ebp
xor eax, ebx
add eax, ecx
mov ecx, edi
add edx, eax
ror ecx, 0xd
mov eax, edi
add esi, edx
rol eax, 0xa
xor ecx, eax
mov dword [esp + 0x28], esi
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
and eax, dword [esp + 0x14]
add ecx, edx
or dword [esp + 0x18], edi
lea edx, [ebx - 0x6dc07d5c]
mov edi, dword [esp + 0x24]
and dword [esp + 0x18], edi
or dword [esp + 0x18], eax
mov eax, esi
add dword [esp + 0x18], ecx
mov ecx, esi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov ebx, dword [esp + 0x18]
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, dword [esp + 0x30]
add ecx, dword [esp + 0x6c]
and eax, esi
xor eax, dword [esp + 0x30]
add eax, ecx
mov ecx, ebx
add edx, eax
ror ecx, 0xd
mov eax, ebx
add edi, edx
rol eax, 0xa
xor ecx, eax
mov dword [esp + 0x24], edi
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x10], eax
add ecx, edx
and eax, dword [esp + 0x18]
or dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x1c]
and dword [esp + 0x10], ebx
or dword [esp + 0x10], eax
mov eax, edi
add dword [esp + 0x10], ecx
mov ecx, edi
mov edx, dword [esp + 0x30]
rol eax, 7
add edx, 0xab1c5ed5
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
add ecx, dword [esp + 0x84]
xor eax, esi
and eax, edi
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x10]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x18]
mov ebp, eax
add ecx, edx
or ebp, dword [esp + 0x10]
and ebp, dword [esp + 0x14]
and eax, dword [esp + 0x10]
or ebp, eax
mov dword [esp + 0x20], ebp
add dword [esp + 0x20], ecx
mov ecx, ebx
ror ecx, 0xb
mov edx, dword [esp + 0x68]
mov eax, ebx
rol eax, 7
add edx, 0xd807aa98
xor ecx, eax
mov ebp, dword [esp + 0x14]
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [esp + 0x88]
xor eax, edi
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x20]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x14], ebp
mov eax, dword [esp + 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x10]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x20]
or esi, dword [esp + 0x20]
and esi, dword [esp + 0x18]
or esi, eax
mov edx, dword [esp + 0x28]
mov dword [esp + 0x34], esi
mov eax, ebp
add dword [esp + 0x34], ecx
add edx, 0x12835b01
rol eax, 7
mov ecx, ebp
ror ecx, 0xb
xor ecx, eax
mov esi, dword [esp + 0x18]
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [esp + 0x44]
xor eax, ebx
and eax, ebp
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x34]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x34]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov edi, eax
add ecx, edx
and eax, dword [esp + 0x20]
or edi, dword [esp + 0x20]
and edi, dword [esp + 0x10]
or edi, eax
mov eax, esi
mov dword [esp + 0x30], edi
add dword [esp + 0x30], ecx
mov ecx, esi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
add ecx, dword [esp + 0x40]
xor eax, ebp
and eax, esi
mov edx, dword [esp + 0x24]
xor eax, ebx
mov edi, dword [esp + 0x10]
add eax, ecx
add edx, 0x243185be
add edx, eax
mov eax, dword [esp + 0x30]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x30]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x30]
or ebx, dword [esp + 0x30]
and ebx, dword [esp + 0x20]
or ebx, eax
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x2c], ebx
mov eax, edi
add dword [esp + 0x2c], ecx
add edx, 0x550c7dc3
rol eax, 7
mov ecx, edi
ror ecx, 0xb
xor ecx, eax
mov ebx, dword [esp + 0x20]
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
add ecx, dword [esp + 0x48]
xor eax, esi
and eax, edi
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x30]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x2c]
or ebp, dword [esp + 0x2c]
and ebp, dword [esp + 0x34]
or ebp, eax
mov edx, dword [esp + 0x14]
mov dword [esp + 0x24], ebp
mov eax, ebx
add dword [esp + 0x24], ecx
mov ecx, ebx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
add ecx, dword [esp + 0x4c]
xor eax, edi
and eax, ebx
xor eax, esi
add eax, ecx
add edx, 0x72be5d74
add edx, eax
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x24]
add ebp, edx
mov ecx, eax
mov dword [esp + 0x34], ebp
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x2c]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x24]
or esi, dword [esp + 0x24]
and esi, dword [esp + 0x30]
or esi, eax
mov edx, dword [esp + 0x18]
mov dword [esp + 0x1c], esi
mov eax, ebp
add dword [esp + 0x1c], ecx
add edx, 0x80deb1fe
rol eax, 7
mov ecx, ebp
ror ecx, 0xb
xor ecx, eax
mov esi, dword [esp + 0x30]
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
add ecx, dword [esp + 0x50]
xor eax, ebx
and eax, ebp
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x24]
mov edi, eax
add ecx, edx
and eax, dword [esp + 0x1c]
or edi, dword [esp + 0x1c]
and edi, dword [esp + 0x2c]
or edi, eax
mov edx, dword [esp + 0x10]
mov dword [esp + 0x18], edi
mov eax, esi
add dword [esp + 0x18], ecx
add edx, 0x9bdc06a7
mov edi, dword [esp + 0x2c]
mov ecx, esi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebp
add ecx, dword [esp + 0x38]
xor eax, ebx
and eax, esi
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x18]
add edi, edx
mov ecx, eax
mov dword [esp + 0x2c], edi
ror ecx, 0xd
rol eax, 0xa
xor ecx, eax
mov eax, dword [esp + 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x18]
or ebx, dword [esp + 0x18]
and ebx, dword [esp + 0x24]
or ebx, eax
mov edx, dword [esp + 0x20]
mov dword [esp + 0x14], ebx
mov eax, edi
add dword [esp + 0x14], ecx
add edx, 0xc19bf174
rol eax, 7
mov ecx, edi
ror ecx, 0xb
xor ecx, eax
mov ebx, dword [esp + 0x24]
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
add ecx, dword [esp + 0x3c]
xor eax, esi
and eax, edi
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x14]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x18]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x14]
or ebp, dword [esp + 0x14]
and ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
or ebp, eax
mov dword [esp + 0x28], ebp
mov eax, edx
add dword [esp + 0x28], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x80]
mov ebp, edx
shr eax, 0xa
xor ecx, eax
rol ebp, 0xe
add ecx, dword [esp + 0x44]
mov eax, edx
ror eax, 7
xor ebp, eax
mov eax, edx
shr eax, 3
xor ebp, eax
mov eax, ebx
add ebp, ecx
rol eax, 7
add ebp, dword [esp + 0x64]
mov ecx, ebx
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x10], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov edx, dword [esp + 0x34]
add ecx, ebp
mov eax, esi
mov ebp, dword [esp + 0x1c]
xor eax, edi
add edx, 0xe49b69c1
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x28]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x1c], ebp
mov eax, dword [esp + 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x14]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x28]
or esi, dword [esp + 0x28]
and esi, dword [esp + 0x18]
or esi, eax
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x34], esi
mov eax, edx
add dword [esp + 0x34], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x7c]
mov esi, edx
shr eax, 0xa
xor ecx, eax
rol esi, 0xe
add ecx, dword [esp + 0x80]
mov eax, edx
ror eax, 7
xor esi, eax
mov eax, edx
shr eax, 3
xor esi, eax
mov edx, dword [esp + 0x30]
add esi, ecx
mov eax, ebp
add esi, dword [esp + 0x40]
mov ecx, ebp
rol eax, 7
add edx, 0xefbe4786
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x54], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
mov esi, dword [esp + 0x18]
and eax, ebp
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x34]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x18], esi
mov eax, dword [esp + 0x34]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov edi, eax
and eax, dword [esp + 0x28]
add ecx, edx
or edi, dword [esp + 0x28]
and edi, dword [esp + 0x14]
or edi, eax
mov edx, dword [esp + 0x78]
mov dword [esp + 0x30], edi
mov eax, edx
add dword [esp + 0x30], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x10]
mov edi, edx
shr eax, 3
xor ecx, eax
rol edi, 0xf
add ecx, dword [esp + 0x7c]
mov eax, edx
rol eax, 0xd
xor edi, eax
mov eax, edx
shr eax, 0xa
xor edi, eax
mov edx, dword [esp + 0x2c]
add edi, ecx
mov eax, esi
add edi, dword [esp + 0x48]
mov ecx, esi
rol eax, 7
add edx, 0xfc19dc6
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x58], edi
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, ebp
add ecx, edi
and eax, esi
mov edi, dword [esp + 0x14]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x30]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0x30]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x30]
or ebx, dword [esp + 0x30]
and ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x74]
or ebx, eax
mov dword [esp + 0x2c], ebx
mov eax, edx
add dword [esp + 0x2c], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
mov ebx, edx
shr eax, 3
xor ecx, eax
rol ebx, 0xf
mov eax, edx
rol eax, 0xd
xor ebx, eax
add ecx, dword [esp + 0x78]
mov eax, edx
shr eax, 0xa
xor ebx, eax
mov edx, dword [esp + 0x24]
add ebx, ecx
mov eax, edi
rol eax, 7
mov ecx, edi
add ebx, dword [esp + 0x4c]
add edx, 0x240ca1cc
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x5c], ebx
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, esi
add ecx, ebx
and eax, edi
mov ebx, dword [esp + 0x28]
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x30]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x2c]
or ebp, dword [esp + 0x2c]
and ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x70]
or ebp, eax
mov dword [esp + 0x24], ebp
mov eax, edx
add dword [esp + 0x24], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x58]
mov ebp, edx
shr eax, 3
xor ecx, eax
rol ebp, 0xf
add ecx, dword [esp + 0x74]
mov eax, edx
rol eax, 0xd
xor ebp, eax
mov eax, edx
shr eax, 0xa
mov edx, dword [esp + 0x1c]
xor ebp, eax
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x50]
mov ecx, ebx
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x60], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
and eax, ebx
xor eax, esi
add eax, ecx
mov ebp, dword [esp + 0x34]
add edx, 0x2de92c6f
add edx, eax
mov eax, dword [esp + 0x24]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x34], ebp
mov eax, dword [esp + 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x2c]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x24]
or esi, dword [esp + 0x24]
and esi, dword [esp + 0x30]
or esi, eax
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x20], esi
mov eax, edx
add dword [esp + 0x20], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x5c]
mov esi, edx
shr eax, 3
xor ecx, eax
rol esi, 0xf
add ecx, dword [esp + 0x38]
mov eax, edx
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
xor esi, eax
mov edx, dword [esp + 0x18]
add esi, ecx
mov eax, ebp
add esi, dword [esp + 0x70]
mov ecx, ebp
rol eax, 7
add edx, 0x4a7484aa
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x64], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
and eax, ebp
mov esi, dword [esp + 0x30]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x20]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x24]
mov edi, eax
add ecx, edx
or edi, dword [esp + 0x20]
and edi, dword [esp + 0x2c]
and eax, dword [esp + 0x20]
or edi, eax
mov dword [esp + 0x1c], edi
add dword [esp + 0x1c], ecx
mov edx, dword [esp + 0x60]
mov ecx, edx
mov edi, dword [esp + 0x84]
mov eax, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
shr eax, 0xa
mov edx, edi
xor ecx, eax
rol edx, 0xe
add ecx, dword [esp + 0x3c]
mov eax, edi
ror eax, 7
xor edx, eax
mov eax, edi
shr eax, 3
xor edx, eax
mov edi, dword [esp + 0x2c]
add edx, ecx
mov eax, esi
add edx, dword [esp + 0x6c]
mov ecx, esi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x68], edx
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, ebx
add ecx, edx
mov edx, dword [esp + 0x14]
and eax, esi
xor eax, ebx
add edx, 0x5cb0a9dc
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x20]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x1c]
or ebx, dword [esp + 0x1c]
and ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x64]
or ebx, eax
mov eax, edx
mov dword [esp + 0x18], ebx
add dword [esp + 0x18], ecx
mov ecx, edx
mov ebx, dword [esp + 0x88]
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
shr eax, 0xa
mov edx, ebx
xor ecx, eax
rol edx, 0xe
add ecx, dword [esp + 0x84]
mov eax, ebx
ror eax, 7
xor edx, eax
mov eax, ebx
shr eax, 3
xor edx, eax
add edx, ecx
add edx, dword [esp + 0x10]
mov dword [esp + 0x14], edx
mov ecx, edi
mov ebx, dword [esp + 0x24]
ror ecx, 0xb
mov eax, edi
rol eax, 7
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, esi
add ecx, edx
mov edx, dword [esp + 0x28]
and eax, edi
xor eax, ebp
add edx, 0x76f988da
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x18]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x18]
or ebp, dword [esp + 0x18]
and ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x44]
or ebp, eax
mov dword [esp + 0x28], ebp
mov eax, edx
add dword [esp + 0x28], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x68]
mov ebp, edx
shr eax, 3
xor ecx, eax
rol ebp, 0xf
add ecx, dword [esp + 0x88]
mov eax, edx
rol eax, 0xd
xor ebp, eax
mov eax, edx
shr eax, 0xa
xor ebp, eax
mov edx, dword [esp + 0x34]
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x54]
mov ecx, ebx
rol eax, 7
add edx, 0x983e5152
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x6c], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
mov ebp, dword [esp + 0x20]
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x28]
add ebp, edx
mov ecx, eax
mov dword [esp + 0x20], ebp
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x18]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x28]
or esi, dword [esp + 0x28]
and esi, dword [esp + 0x1c]
or esi, eax
mov edx, dword [esp + 0x40]
mov dword [esp + 0x34], esi
mov eax, edx
add dword [esp + 0x34], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x14]
mov esi, edx
shr eax, 3
xor ecx, eax
rol esi, 0xf
add ecx, dword [esp + 0x44]
mov eax, edx
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
xor esi, eax
mov edx, dword [esp + 0x30]
add esi, ecx
mov eax, ebp
add esi, dword [esp + 0x58]
mov ecx, ebp
rol eax, 7
add edx, 0xa831c66d
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x44], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
and eax, ebp
mov esi, dword [esp + 0x1c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x34]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x1c], esi
mov eax, dword [esp + 0x34]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov edi, eax
add ecx, edx
or edi, dword [esp + 0x28]
and eax, dword [esp + 0x28]
and edi, dword [esp + 0x18]
mov edx, dword [esp + 0x48]
or edi, eax
mov dword [esp + 0x30], edi
mov eax, edx
add dword [esp + 0x30], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x6c]
mov edi, edx
shr eax, 3
xor ecx, eax
rol edi, 0xf
add ecx, dword [esp + 0x40]
mov eax, edx
rol eax, 0xd
xor edi, eax
mov eax, edx
shr eax, 0xa
xor edi, eax
mov edx, dword [esp + 0x2c]
add edi, ecx
mov eax, esi
rol eax, 7
mov ecx, esi
add edi, dword [esp + 0x5c]
add edx, 0xb00327c8
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x40], edi
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, ebp
add ecx, edi
and eax, esi
mov edi, dword [esp + 0x18]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x30]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x30]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x30]
or ebx, dword [esp + 0x30]
and ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x4c]
or ebx, eax
mov dword [esp + 0x2c], ebx
mov eax, edx
add dword [esp + 0x2c], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x44]
mov ebx, edx
shr eax, 3
xor ecx, eax
rol ebx, 0xf
add ecx, dword [esp + 0x48]
mov eax, edx
rol eax, 0xd
xor ebx, eax
mov eax, edx
shr eax, 0xa
xor ebx, eax
mov eax, edi
add ebx, ecx
rol eax, 7
add ebx, dword [esp + 0x60]
mov ecx, edi
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x48], ebx
mov eax, edi
ror eax, 6
xor ecx, eax
mov edx, dword [esp + 0x24]
add ecx, ebx
mov eax, ebp
xor eax, esi
mov ebx, dword [esp + 0x28]
and eax, edi
add edx, 0xbf597fc7
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x30]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x2c]
or ebp, dword [esp + 0x2c]
and ebp, dword [esp + 0x34]
or ebp, eax
mov edx, dword [esp + 0x50]
mov dword [esp + 0x24], ebp
mov eax, edx
add dword [esp + 0x24], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x40]
mov ebp, edx
shr eax, 3
xor ecx, eax
rol ebp, 0xf
add ecx, dword [esp + 0x64]
mov eax, edx
rol eax, 0xd
xor ebp, eax
mov eax, edx
shr eax, 0xa
xor ebp, eax
mov edx, dword [esp + 0x20]
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x4c]
mov ecx, ebx
rol eax, 7
add edx, 0xc6e00bf3
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x4c], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
mov ebp, dword [esp + 0x34]
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x24]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x34], ebp
mov eax, dword [esp + 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x2c]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x24]
or esi, dword [esp + 0x24]
and esi, dword [esp + 0x30]
or esi, eax
mov edx, dword [esp + 0x38]
mov eax, edx
mov dword [esp + 0x20], esi
add dword [esp + 0x20], ecx
mov ecx, edx
mov esi, dword [esp + 0x48]
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
shr eax, 3
mov edx, esi
xor ecx, eax
rol edx, 0xf
add ecx, dword [esp + 0x68]
mov eax, esi
rol eax, 0xd
xor edx, eax
mov eax, esi
shr eax, 0xa
xor edx, eax
mov esi, dword [esp + 0x30]
add edx, ecx
mov eax, ebp
add edx, dword [esp + 0x50]
mov ecx, ebp
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x50], edx
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, edx
mov edx, dword [esp + 0x1c]
and eax, ebp
xor eax, edi
add edx, 0xd5a79147
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x20]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x24]
mov edi, eax
add ecx, edx
and eax, dword [esp + 0x20]
or edi, dword [esp + 0x20]
and edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x3c]
or edi, eax
mov dword [esp + 0x1c], edi
mov eax, edx
add dword [esp + 0x1c], ecx
mov ecx, edx
mov edi, dword [esp + 0x4c]
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
shr eax, 3
mov edx, edi
xor ecx, eax
rol edx, 0xf
mov eax, edi
rol eax, 0xd
add ecx, dword [esp + 0x38]
xor edx, eax
mov eax, edi
mov edi, dword [esp + 0x2c]
shr eax, 0xa
xor edx, eax
mov eax, esi
rol eax, 7
add edx, ecx
add edx, dword [esp + 0x14]
mov ecx, esi
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x70], edx
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, ebx
add ecx, edx
mov edx, dword [esp + 0x18]
and eax, esi
xor eax, ebx
add edx, 0x6ca6351
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x20]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x1c]
or ebx, dword [esp + 0x1c]
and ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x10]
or ebx, eax
mov dword [esp + 0x18], ebx
mov eax, edx
add dword [esp + 0x18], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x50]
mov ebx, edx
shr eax, 3
xor ecx, eax
rol ebx, 0xf
add ecx, dword [esp + 0x3c]
mov eax, edx
rol eax, 0xd
xor ebx, eax
mov eax, edx
shr eax, 0xa
xor ebx, eax
mov eax, edi
add ebx, ecx
rol eax, 7
add ebx, dword [esp + 0x6c]
mov ecx, edi
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x74], ebx
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, esi
add ecx, ebx
and eax, edi
xor eax, ebp
add eax, ecx
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
add edx, 0x14292967
add edx, eax
mov eax, dword [esp + 0x18]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x18]
or ebp, dword [esp + 0x18]
and ebp, dword [esp + 0x20]
or ebp, eax
mov edx, dword [esp + 0x70]
mov dword [esp + 0x28], ebp
mov eax, edx
add dword [esp + 0x28], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
mov ebp, edx
shr eax, 0xa
xor ecx, eax
rol ebp, 0xe
add ecx, dword [esp + 0x10]
mov eax, edx
ror eax, 7
xor ebp, eax
mov eax, edx
shr eax, 3
xor ebp, eax
mov edx, dword [esp + 0x34]
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x44]
mov ecx, ebx
rol eax, 7
add edx, 0x27b70a85
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x78], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
mov ebp, dword [esp + 0x20]
and eax, ebx
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x28]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x20], ebp
mov eax, dword [esp + 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x18]
mov esi, eax
and eax, dword [esp + 0x28]
or esi, dword [esp + 0x28]
and esi, dword [esp + 0x1c]
or esi, eax
add ecx, edx
mov dword [esp + 0x34], esi
add dword [esp + 0x34], ecx
mov edx, dword [esp + 0x74]
mov ecx, edx
rol ecx, 0xf
mov eax, edx
rol eax, 0xd
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x58]
mov esi, edx
shr eax, 0xa
xor ecx, eax
rol esi, 0xe
add ecx, dword [esp + 0x54]
mov eax, edx
ror eax, 7
xor esi, eax
mov eax, edx
shr eax, 3
xor esi, eax
mov edx, dword [esp + 0x30]
add esi, ecx
mov eax, ebp
add esi, dword [esp + 0x40]
mov ecx, ebp
rol eax, 7
add edx, 0x2e1b2138
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x54], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
and eax, ebp
mov esi, dword [esp + 0x1c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x34]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x1c], esi
mov eax, dword [esp + 0x34]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov edi, eax
add ecx, edx
or edi, dword [esp + 0x28]
and eax, dword [esp + 0x28]
and edi, dword [esp + 0x18]
mov edx, dword [esp + 0x78]
or edi, eax
mov dword [esp + 0x30], edi
mov eax, edx
add dword [esp + 0x30], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x5c]
mov edi, edx
shr eax, 0xa
xor ecx, eax
rol edi, 0xe
add ecx, dword [esp + 0x58]
mov eax, edx
ror eax, 7
xor edi, eax
mov eax, edx
shr eax, 3
xor edi, eax
add edi, ecx
add edi, dword [esp + 0x48]
mov edx, dword [esp + 0x2c]
mov ecx, esi
ror ecx, 0xb
mov eax, esi
rol eax, 7
add edx, 0x4d2c6dfc
xor ecx, eax
mov dword [esp + 0x58], edi
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, ebp
add ecx, edi
and eax, esi
mov edi, dword [esp + 0x18]
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x30]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x18], edi
mov eax, dword [esp + 0x30]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x30]
or ebx, dword [esp + 0x30]
and ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x60]
or ebx, eax
mov dword [esp + 0x2c], ebx
mov eax, edx
add dword [esp + 0x2c], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x54]
mov ebx, edx
shr eax, 3
xor ecx, eax
rol ebx, 0xf
add ecx, dword [esp + 0x5c]
mov eax, edx
rol eax, 0xd
xor ebx, eax
mov eax, edx
shr eax, 0xa
xor ebx, eax
mov edx, dword [esp + 0x24]
add ebx, ecx
mov eax, edi
add ebx, dword [esp + 0x4c]
mov ecx, edi
rol eax, 7
add edx, 0x53380d13
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x5c], ebx
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, esi
add ecx, ebx
mov ebx, dword [esp + 0x28]
and eax, edi
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x2c]
add ebx, edx
mov dword [esp + 0x28], ebx
mov ecx, eax
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x30]
mov ebp, eax
add ecx, edx
and eax, dword [esp + 0x2c]
or ebp, dword [esp + 0x2c]
and ebp, dword [esp + 0x34]
or ebp, eax
mov edx, dword [esp + 0x64]
mov dword [esp + 0x24], ebp
mov eax, edx
add dword [esp + 0x24], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x58]
mov ebp, edx
shr eax, 3
xor ecx, eax
rol ebp, 0xf
add ecx, dword [esp + 0x50]
mov eax, edx
rol eax, 0xd
xor ebp, eax
mov eax, edx
shr eax, 0xa
xor ebp, eax
mov edx, dword [esp + 0x20]
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x60]
mov ecx, ebx
rol eax, 7
add edx, 0x650a7354
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x60], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
and eax, ebx
mov ebp, dword [esp + 0x34]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x24]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x34], ebp
mov eax, dword [esp + 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x2c]
mov esi, eax
add ecx, edx
or esi, dword [esp + 0x24]
and eax, dword [esp + 0x24]
and esi, dword [esp + 0x30]
mov edx, dword [esp + 0x68]
or esi, eax
mov dword [esp + 0x20], esi
mov eax, edx
add dword [esp + 0x20], ecx
mov ecx, edx
rol ecx, 0xe
ror eax, 7
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x5c]
shr eax, 3
mov esi, edx
xor ecx, eax
rol esi, 0xf
add ecx, dword [esp + 0x64]
mov eax, edx
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
xor esi, eax
mov edx, dword [esp + 0x1c]
add esi, ecx
mov eax, ebp
rol eax, 7
mov ecx, ebp
add esi, dword [esp + 0x70]
add edx, 0x766a0abb
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x64], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
and eax, ebp
mov esi, dword [esp + 0x30]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x20]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x20]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x24]
mov edi, eax
add ecx, edx
and eax, dword [esp + 0x20]
or edi, dword [esp + 0x20]
and edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x60]
or edi, eax
mov dword [esp + 0x1c], edi
mov eax, edx
add dword [esp + 0x1c], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x14]
mov edi, edx
shr eax, 0xa
xor ecx, eax
rol edi, 0xe
add ecx, dword [esp + 0x68]
mov eax, edx
ror eax, 7
xor edi, eax
mov eax, edx
shr eax, 3
xor edi, eax
mov eax, esi
add edi, ecx
rol eax, 7
add edi, dword [esp + 0x74]
mov ecx, esi
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x68], edi
mov eax, esi
ror eax, 6
xor ecx, eax
mov edx, dword [esp + 0x18]
add ecx, edi
mov eax, ebp
xor eax, ebx
mov edi, dword [esp + 0x2c]
and eax, esi
add edx, 0x81c2c92e
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x2c], edi
mov eax, dword [esp + 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x20]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x1c]
or ebx, dword [esp + 0x1c]
and ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x64]
or ebx, eax
mov dword [esp + 0x10], ebx
mov eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x6c]
mov ebx, edx
shr eax, 0xa
xor ecx, eax
rol ebx, 0xe
add ecx, dword [esp + 0x14]
mov eax, edx
ror eax, 7
xor ebx, eax
mov eax, edx
shr eax, 3
xor ebx, eax
mov edx, dword [esp + 0x28]
add ebx, ecx
mov eax, edi
add ebx, dword [esp + 0x78]
mov ecx, edi
rol eax, 7
add edx, 0x92722c85
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x7c], ebx
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, esi
add ecx, ebx
mov ebx, dword [esp + 0x24]
and eax, edi
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x10]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
add ecx, edx
mov ebp, eax
mov edx, dword [esp + 0x44]
and eax, dword [esp + 0x10]
or ebp, dword [esp + 0x10]
and ebp, dword [esp + 0x20]
or ebp, eax
mov eax, edx
ror eax, 7
mov dword [esp + 0x14], ebp
add dword [esp + 0x14], ecx
mov ecx, edx
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x68]
mov ebp, edx
shr eax, 3
xor ecx, eax
rol ebp, 0xf
add ecx, dword [esp + 0x6c]
mov eax, edx
rol eax, 0xd
xor ebp, eax
mov eax, edx
shr eax, 0xa
xor ebp, eax
mov edx, dword [esp + 0x34]
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x54]
mov ecx, ebx
rol eax, 7
add edx, 0xa2bfe8a1
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x3c], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
and eax, ebx
mov ebp, dword [esp + 0x20]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x14]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x20], ebp
mov eax, dword [esp + 0x14]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x10]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x14]
or esi, dword [esp + 0x14]
and esi, dword [esp + 0x1c]
mov edx, dword [esp + 0x40]
or esi, eax
mov dword [esp + 0x38], esi
mov eax, edx
add dword [esp + 0x38], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x7c]
mov esi, edx
shr eax, 3
xor ecx, eax
rol esi, 0xf
mov eax, edx
add ecx, dword [esp + 0x44]
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
xor esi, eax
mov edx, dword [esp + 0x30]
add esi, ecx
mov eax, ebp
rol eax, 7
mov ecx, ebp
add esi, dword [esp + 0x58]
add edx, 0xa81a664b
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x6c], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
and eax, ebp
mov esi, dword [esp + 0x1c]
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x38]
mov ecx, eax
add esi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov dword [esp + 0x1c], esi
mov eax, dword [esp + 0x38]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x38]
mov edi, eax
add ecx, edx
and eax, dword [esp + 0x14]
or edi, dword [esp + 0x14]
and edi, dword [esp + 0x10]
mov edx, dword [esp + 0x48]
or edi, eax
mov dword [esp + 0x18], edi
mov eax, edx
add dword [esp + 0x18], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x3c]
mov edi, edx
shr eax, 3
xor ecx, eax
rol edi, 0xf
add ecx, dword [esp + 0x40]
mov eax, edx
rol eax, 0xd
xor edi, eax
mov eax, edx
shr eax, 0xa
xor edi, eax
mov eax, esi
add edi, ecx
rol eax, 7
add edi, dword [esp + 0x5c]
mov ecx, esi
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x80], edi
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, ebp
and eax, esi
xor eax, ebx
add ecx, edi
add eax, ecx
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x10]
add edx, 0xc24b8b70
add edx, eax
mov eax, dword [esp + 0x18]
mov ecx, eax
add edi, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x18]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x38]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x18]
or ebx, dword [esp + 0x18]
and ebx, dword [esp + 0x14]
or ebx, eax
mov edx, dword [esp + 0x6c]
mov dword [esp + 0x28], ebx
mov eax, edx
add dword [esp + 0x28], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x4c]
mov ebx, edx
shr eax, 0xa
xor ecx, eax
rol ebx, 0xe
add ecx, dword [esp + 0x60]
mov eax, edx
ror eax, 7
xor ebx, eax
mov eax, edx
shr eax, 3
xor ebx, eax
mov edx, dword [esp + 0x24]
add ebx, ecx
mov eax, edi
add ebx, dword [esp + 0x48]
mov ecx, edi
rol eax, 7
add edx, 0xc76c51a3
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x48], ebx
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, esi
add ecx, ebx
and eax, edi
mov ebx, dword [esp + 0x14]
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x28]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x28]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x18]
mov ebp, eax
add ecx, edx
or ebp, dword [esp + 0x28]
and ebp, dword [esp + 0x38]
and eax, dword [esp + 0x28]
or ebp, eax
mov dword [esp + 0x34], ebp
add dword [esp + 0x34], ecx
mov edx, dword [esp + 0x80]
mov ecx, edx
rol ecx, 0xf
mov eax, edx
rol eax, 0xd
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x50]
mov ebp, edx
shr eax, 0xa
xor ecx, eax
rol ebp, 0xe
add ecx, dword [esp + 0x64]
mov eax, edx
ror eax, 7
xor ebp, eax
mov eax, edx
shr eax, 3
xor ebp, eax
mov edx, dword [esp + 0x20]
add ebp, ecx
mov eax, ebx
add ebp, dword [esp + 0x4c]
mov ecx, ebx
rol eax, 7
add edx, 0xd192e819
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x4c], ebp
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, esi
xor eax, edi
add ecx, ebp
and eax, ebx
mov ebp, dword [esp + 0x38]
xor eax, esi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x34]
mov ecx, eax
add ebp, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x34]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x28]
mov esi, eax
add ecx, edx
or esi, dword [esp + 0x34]
and eax, dword [esp + 0x34]
and esi, dword [esp + 0x18]
mov edx, dword [esp + 0x48]
or esi, eax
mov dword [esp + 0x2c], esi
mov eax, edx
add dword [esp + 0x2c], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x70]
mov esi, edx
shr eax, 0xa
xor ecx, eax
rol esi, 0xe
add ecx, dword [esp + 0x50]
mov eax, edx
ror eax, 7
xor esi, eax
mov eax, edx
shr eax, 3
xor esi, eax
add esi, ecx
mov ecx, ebp
add esi, dword [esp + 0x68]
mov dword [esp + 0x50], esi
ror ecx, 0xb
mov eax, ebp
rol eax, 7
xor ecx, eax
mov edx, dword [esp + 0x1c]
mov eax, ebp
add edx, 0xd6990624
ror eax, 6
xor ecx, eax
mov eax, edi
xor eax, ebx
add ecx, esi
and eax, ebp
xor eax, edi
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, eax
add dword [esp + 0x18], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x2c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x2c]
or esi, dword [esp + 0x2c]
and esi, dword [esp + 0x28]
mov edx, dword [esp + 0x74]
or esi, eax
mov dword [esp + 0x1c], esi
mov eax, edx
add dword [esp + 0x1c], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x4c]
mov esi, edx
shr eax, 3
xor ecx, eax
rol esi, 0xf
add ecx, dword [esp + 0x70]
mov eax, edx
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
lea edx, [edi - 0xbf1ca7b]
xor esi, eax
mov edi, dword [esp + 0x28]
add esi, ecx
add esi, dword [esp + 0x7c]
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0x18]
mov ecx, esi
ror ecx, 0xb
mov eax, esi
rol eax, 7
xor ecx, eax
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, ebp
add ecx, dword [esp + 0x40]
xor eax, ebx
and eax, esi
xor eax, ebx
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
add edi, edx
ror ecx, 0xd
rol eax, 0xa
mov dword [esp + 0x28], edi
xor ecx, eax
mov eax, dword [esp + 0x1c]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x2c]
mov esi, eax
add ecx, edx
and eax, dword [esp + 0x1c]
or esi, dword [esp + 0x1c]
and esi, dword [esp + 0x34]
or esi, eax
mov edx, dword [esp + 0x78]
mov dword [esp + 0x10], esi
mov eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x50]
mov esi, edx
shr eax, 3
xor ecx, eax
rol esi, 0xf
add ecx, dword [esp + 0x74]
mov eax, edx
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
lea edx, [ebx + 0x106aa070]
xor esi, eax
mov ebx, dword [esp + 0x34]
add esi, ecx
mov eax, edi
add esi, dword [esp + 0x3c]
mov ecx, edi
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x44], esi
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, ebp
xor eax, dword [esp + 0x18]
add ecx, esi
and eax, edi
xor eax, ebp
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x10]
mov ecx, eax
add ebx, edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
mov esi, eax
add ecx, edx
or esi, dword [esp + 0x10]
and eax, dword [esp + 0x10]
and esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x54]
or esi, eax
mov dword [esp + 0x30], esi
mov eax, edx
add dword [esp + 0x30], ecx
mov ecx, edx
mov esi, dword [esp + 0x40]
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, edx
shr eax, 3
mov edx, esi
xor ecx, eax
rol edx, 0xf
add ecx, dword [esp + 0x78]
mov eax, esi
rol eax, 0xd
xor edx, eax
mov eax, esi
shr eax, 0xa
xor edx, eax
mov esi, dword [esp + 0x30]
add edx, ecx
mov eax, ebx
rol eax, 7
mov ecx, ebx
add edx, dword [esp + 0x6c]
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x78], edx
mov eax, ebx
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x18]
xor eax, edi
add ecx, edx
and eax, ebx
lea edx, [ebp + 0x19a4c116]
xor eax, dword [esp + 0x18]
add eax, ecx
mov ebp, dword [esp + 0x2c]
add edx, eax
mov ecx, esi
ror ecx, 0xd
mov eax, esi
rol eax, 0xa
add ebp, edx
xor ecx, eax
mov dword [esp + 0x2c], ebp
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x10]
mov edi, eax
add ecx, edx
mov edx, dword [esp + 0x44]
and eax, esi
or edi, esi
and edi, dword [esp + 0x1c]
mov esi, edi
or esi, eax
mov eax, edx
add esi, ecx
rol eax, 0xd
mov ecx, edx
mov dword [esp + 0x14], esi
rol ecx, 0xf
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x58]
mov esi, edx
shr eax, 0xa
xor ecx, eax
rol esi, 0xe
add ecx, dword [esp + 0x54]
mov eax, edx
ror eax, 7
xor esi, eax
mov eax, edx
shr eax, 3
xor esi, eax
mov eax, ebp
add esi, ecx
rol eax, 7
add esi, dword [esp + 0x80]
mov ecx, ebp
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x74], esi
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x28]
xor eax, ebx
and eax, ebp
xor eax, dword [esp + 0x28]
add ecx, esi
add eax, ecx
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
add edx, 0x1e376c08
add edx, eax
mov ecx, edi
add dword [esp + 0x1c], edx
mov eax, edi
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, edi
ror eax, 2
xor ecx, eax
mov eax, edi
or eax, dword [esp + 0x30]
add ecx, edx
and eax, dword [esp + 0x10]
mov dword [esp + 0x20], eax
mov eax, edi
and eax, dword [esp + 0x30]
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x78]
or edi, eax
add edi, ecx
mov eax, edx
rol eax, 0xd
mov ecx, edx
rol ecx, 0xf
xor ecx, eax
mov dword [esp + 0x20], edi
mov eax, edx
mov edx, dword [esp + 0x5c]
shr eax, 0xa
mov edi, edx
xor ecx, eax
rol edi, 0xe
add ecx, dword [esp + 0x48]
mov eax, edx
ror eax, 7
xor edi, eax
mov eax, edx
mov edx, dword [esp + 0x1c]
shr eax, 3
xor edi, eax
mov eax, edx
rol eax, 7
add edi, ecx
add edi, dword [esp + 0x58]
mov ecx, edx
ror ecx, 0xb
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, ebx
xor eax, ebp
add ecx, edi
mov ebp, dword [esp + 0x20]
and eax, edx
mov edx, dword [esp + 0x28]
xor eax, ebx
add eax, ecx
add edx, 0x2748774c
add edx, eax
mov ecx, ebp
add dword [esp + 0x10], edx
mov eax, ebp
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, ebp
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x14]
or eax, ebp
and eax, dword [esp + 0x30]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x14]
and eax, ebp
add ecx, edx
mov ebp, dword [esp + 0x18]
or ebp, eax
mov edx, dword [esp + 0x60]
add ebp, ecx
mov eax, edx
ror eax, 7
mov ecx, edx
rol ecx, 0xe
xor ecx, eax
mov dword [esp + 0x18], ebp
mov eax, edx
mov ebp, esi
shr eax, 3
xor ecx, eax
mov edx, dword [esp + 0x10]
add ecx, dword [esp + 0x4c]
mov eax, esi
rol eax, 0xd
rol ebp, 0xf
xor ebp, eax
mov eax, esi
shr eax, 0xa
xor ebp, eax
mov eax, edx
rol eax, 7
add ebp, ecx
add ebp, dword [esp + 0x5c]
mov ecx, edx
ror ecx, 0xb
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x2c]
xor eax, dword [esp + 0x1c]
add ecx, ebp
and eax, edx
lea edx, [ebx + 0x34b0bcb5]
xor eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x18]
add eax, ecx
add edx, eax
mov ecx, ebx
add dword [esp + 0x30], edx
mov eax, ebx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x20]
mov esi, eax
add ecx, edx
mov edx, dword [esp + 0x64]
and eax, ebx
or esi, ebx
and esi, dword [esp + 0x14]
mov ebx, esi
or ebx, eax
mov eax, edx
add ebx, ecx
ror eax, 7
mov ecx, edx
mov dword [esp + 0x24], ebx
rol ecx, 0xe
mov ebx, edi
xor ecx, eax
rol ebx, 0xf
mov eax, edx
shr eax, 3
xor ecx, eax
mov eax, edi
rol eax, 0xd
xor ebx, eax
mov eax, edi
shr eax, 0xa
xor ebx, eax
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x30]
add ebx, ecx
add ebx, dword [esp + 0x60]
mov ecx, edx
ror ecx, 0xb
mov eax, edx
rol eax, 7
xor ecx, eax
mov dword [esp + 0x88], ebx
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x1c]
xor eax, dword [esp + 0x10]
add ecx, ebx
and eax, edx
mov edx, dword [esp + 0x2c]
xor eax, dword [esp + 0x1c]
add edx, 0x391c0cb3
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x24]
mov ecx, eax
add dword [esp + 0x14], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x24]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x18]
mov ebx, eax
add ecx, edx
and eax, dword [esp + 0x24]
or ebx, dword [esp + 0x24]
and ebx, dword [esp + 0x20]
mov esi, ebx
mov ebx, dword [esp + 0x68]
or esi, eax
mov edx, ebx
add esi, ecx
rol edx, 0xe
mov ecx, ebp
mov dword [esp + 0x2c], esi
rol ecx, 0xf
mov eax, ebp
rol eax, 0xd
xor ecx, eax
mov eax, ebp
shr eax, 0xa
xor ecx, eax
mov eax, ebx
add ecx, dword [esp + 0x40]
ror eax, 7
xor edx, eax
mov eax, ebx
shr eax, 3
xor edx, eax
mov eax, dword [esp + 0x14]
add edx, ecx
mov ecx, eax
add edx, dword [esp + 0x64]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x84], edx
mov eax, dword [esp + 0x14]
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x30]
add ecx, edx
and eax, dword [esp + 0x14]
xor eax, dword [esp + 0x10]
mov edx, dword [esp + 0x1c]
add eax, ecx
add edx, 0x4ed8aa4a
mov ecx, esi
add edx, eax
add dword [esp + 0x20], edx
ror ecx, 0xd
mov eax, esi
rol eax, 0xa
xor ecx, eax
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x24]
mov ebx, eax
add ecx, edx
and eax, esi
mov edx, dword [esp + 0x7c]
or ebx, esi
and ebx, dword [esp + 0x18]
or ebx, eax
add ebx, ecx
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x88]
mov ecx, ebx
rol ecx, 0xf
mov eax, ebx
rol eax, 0xd
xor ecx, eax
mov eax, ebx
shr eax, 0xa
mov ebx, edx
xor ecx, eax
rol ebx, 0xe
add ecx, dword [esp + 0x44]
mov eax, edx
ror eax, 7
xor ebx, eax
mov eax, edx
mov edx, dword [esp + 0x20]
shr eax, 3
xor ebx, eax
mov eax, edx
rol eax, 7
add ebx, ecx
add ebx, dword [esp + 0x68]
mov ecx, edx
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x70], ebx
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x14]
xor eax, dword [esp + 0x30]
add ecx, ebx
and eax, edx
mov edx, dword [esp + 0x10]
xor eax, dword [esp + 0x30]
add edx, 0x5b9cca4f
add eax, ecx
add edx, eax
mov eax, dword [esp + 0x1c]
mov ecx, eax
add dword [esp + 0x18], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x1c]
ror eax, 2
xor ecx, eax
mov eax, esi
or eax, dword [esp + 0x1c]
add ecx, edx
and eax, dword [esp + 0x24]
mov edx, dword [esp + 0x84]
mov dword [esp + 0x10], eax
mov eax, esi
and eax, dword [esp + 0x1c]
or dword [esp + 0x10], eax
mov eax, edx
add dword [esp + 0x10], ecx
mov ecx, edx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, edx
shr eax, 0xa
xor ecx, eax
mov eax, dword [esp + 0x3c]
add ecx, dword [esp + 0x78]
mov edx, eax
ror eax, 7
rol edx, 0xe
xor edx, eax
mov eax, dword [esp + 0x3c]
shr eax, 3
xor edx, eax
mov eax, dword [esp + 0x18]
add edx, ecx
mov ecx, eax
add edx, dword [esp + 0x7c]
rol eax, 7
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0x18]
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x14]
xor eax, dword [esp + 0x20]
add ecx, edx
and eax, dword [esp + 0x18]
xor eax, dword [esp + 0x14]
add eax, ecx
mov edx, dword [esp + 0x30]
add edx, 0x682e6ff3
add edx, eax
mov eax, dword [esp + 0x10]
mov ecx, eax
add dword [esp + 0x24], edx
rol eax, 0xa
ror ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x1c]
or eax, dword [esp + 0x10]
add ecx, edx
and eax, esi
mov esi, dword [esp + 0x24]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c]
and eax, dword [esp + 0x10]
or dword [esp + 0x28], eax
mov eax, ebx
add dword [esp + 0x28], ecx
mov ecx, ebx
rol eax, 0xd
rol ecx, 0xf
xor ecx, eax
mov eax, ebx
mov ebx, dword [esp + 0x6c]
mov edx, ebx
shr eax, 0xa
xor ecx, eax
rol edx, 0xe
add ecx, dword [esp + 0x74]
mov eax, ebx
ror eax, 7
xor edx, eax
mov eax, ebx
shr eax, 3
xor edx, eax
mov eax, esi
add edx, ecx
rol eax, 7
add edx, dword [esp + 0x3c]
mov ecx, esi
ror ecx, 0xb
xor ecx, eax
mov dword [esp + 0x74], edx
mov eax, esi
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x20]
xor eax, dword [esp + 0x18]
and eax, esi
xor eax, dword [esp + 0x20]
add ecx, edx
add eax, ecx
mov esi, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
mov ecx, esi
ror ecx, 0xd
add edx, 0x748f82ee
add edx, eax
mov eax, esi
rol eax, 0xa
xor ecx, eax
add dword [esp + 0x2c], edx
mov eax, esi
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x10]
mov ebx, eax
add ecx, edx
mov edx, dword [esp + 0x80]
and eax, esi
or ebx, esi
and ebx, dword [esp + 0x1c]
or ebx, eax
mov eax, edx
add ebx, ecx
ror eax, 7
mov ecx, edx
mov dword [esp + 0x34], ebx
rol ecx, 0xe
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x7c]
mov esi, edx
shr eax, 3
xor ecx, eax
rol esi, 0xf
mov eax, edx
add ecx, edi
mov edi, dword [esp + 0x2c]
rol eax, 0xd
xor esi, eax
mov eax, edx
shr eax, 0xa
xor esi, eax
mov edx, dword [esp + 0x20]
add esi, ecx
mov eax, edi
add esi, dword [esp + 0x6c]
mov ecx, edi
rol eax, 7
add edx, 0x78a5636f
ror ecx, 0xb
xor ecx, eax
mov eax, edi
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x18]
xor eax, dword [esp + 0x24]
add ecx, esi
and eax, edi
xor eax, dword [esp + 0x18]
add eax, ecx
mov ecx, ebx
add edx, eax
ror ecx, 0xd
add dword [esp + 0x1c], edx
mov eax, ebx
rol eax, 0xa
xor ecx, eax
mov eax, ebx
or ebx, dword [esp + 0x28]
and ebx, dword [esp + 0x10]
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
and eax, dword [esp + 0x28]
add ecx, edx
or ebx, eax
add ebx, ecx
mov dword [esp + 0x38], ebx
mov edx, dword [esp + 0x48]
mov ecx, edx
rol ecx, 0xe
mov eax, edx
ror eax, 7
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x74]
mov edi, edx
shr eax, 3
xor ecx, eax
rol edi, 0xf
add ecx, ebp
mov eax, edx
mov ebp, dword [esp + 0x1c]
rol eax, 0xd
xor edi, eax
mov eax, edx
shr eax, 0xa
xor edi, eax
mov edx, dword [esp + 0x18]
add edi, ecx
mov eax, ebp
add edi, dword [esp + 0x80]
mov ecx, ebp
rol eax, 7
add edx, 0x84c87814
ror ecx, 0xb
xor ecx, eax
mov eax, ebp
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x24]
xor eax, dword [esp + 0x2c]
add ecx, edi
and eax, ebp
xor eax, dword [esp + 0x24]
add eax, ecx
mov ecx, ebx
add edx, eax
ror ecx, 0xd
add dword [esp + 0x10], edx
mov eax, ebx
rol eax, 0xa
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x34]
mov ebp, eax
add ecx, edx
mov edx, dword [esp + 0x4c]
and eax, ebx
or ebp, ebx
and ebp, dword [esp + 0x28]
or ebp, eax
mov eax, esi
add ebp, ecx
rol eax, 0xd
mov ecx, esi
mov dword [esp + 0x30], ebp
rol ecx, 0xf
xor ecx, eax
shr esi, 0xa
xor ecx, esi
mov eax, edx
add ecx, dword [esp + 0x88]
mov esi, edx
rol esi, 0xe
ror eax, 7
xor esi, eax
mov eax, edx
mov edx, dword [esp + 0x10]
shr eax, 3
xor esi, eax
mov eax, edx
add esi, ecx
mov ecx, edx
add esi, dword [esp + 0x48]
ror ecx, 0xb
rol eax, 7
xor ecx, eax
or ebx, ebp
mov eax, edx
and ebx, dword [esp + 0x34]
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x2c]
xor eax, dword [esp + 0x1c]
add ecx, esi
and eax, edx
mov edx, dword [esp + 0x24]
xor eax, dword [esp + 0x2c]
add edx, 0x8cc70208
add eax, ecx
mov ecx, ebp
add edx, eax
ror ecx, 0xd
add dword [esp + 0x28], edx
mov eax, ebp
rol eax, 0xa
xor ecx, eax
mov eax, ebp
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x38]
and eax, ebp
add ecx, edx
mov edx, dword [esp + 0x50]
or ebx, eax
add ebx, ecx
mov eax, edi
rol eax, 0xd
mov ecx, edi
rol ecx, 0xf
or ebp, ebx
xor ecx, eax
shr edi, 0xa
xor ecx, edi
and ebp, dword [esp + 0x38]
add ecx, dword [esp + 0x84]
mov edi, edx
mov eax, edx
rol edi, 0xe
ror eax, 7
xor edi, eax
mov dword [esp + 0x88], ebx
mov eax, edx
mov edx, dword [esp + 0x28]
shr eax, 3
xor edi, eax
mov eax, edx
rol eax, 7
add edi, ecx
add edi, dword [esp + 0x4c]
mov ecx, edx
ror ecx, 0xb
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x1c]
xor eax, dword [esp + 0x10]
add ecx, edi
and eax, edx
mov edx, dword [esp + 0x2c]
xor eax, dword [esp + 0x1c]
add edx, 0x90befffa
add eax, ecx
mov ecx, ebx
add edx, eax
ror ecx, 0xd
add dword [esp + 0x34], edx
mov eax, ebx
rol eax, 0xa
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x30]
and eax, ebx
or ebp, eax
add ecx, edx
mov eax, esi
mov edx, dword [esp + 0x40]
add ebp, ecx
rol eax, 0xd
mov ecx, esi
rol ecx, 0xf
or ebx, ebp
xor ecx, eax
shr esi, 0xa
xor ecx, esi
and ebx, dword [esp + 0x30]
add ecx, dword [esp + 0x70]
mov esi, edx
mov eax, edx
rol esi, 0xe
ror eax, 7
xor esi, eax
mov eax, edx
mov edx, dword [esp + 0x34]
shr eax, 3
xor esi, eax
mov eax, edx
rol eax, 7
add esi, ecx
add esi, dword [esp + 0x50]
mov ecx, edx
ror ecx, 0xb
xor ecx, eax
mov eax, edx
ror eax, 6
xor ecx, eax
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x28]
add ecx, esi
and eax, edx
mov edx, dword [esp + 0x1c]
xor eax, dword [esp + 0x10]
add edx, 0xa4506ceb
add eax, ecx
mov ecx, ebp
add edx, eax
ror ecx, 0xd
add dword [esp + 0x38], edx
mov eax, ebp
rol eax, 0xa
xor ecx, eax
mov eax, ebp
ror eax, 2
xor ecx, eax
mov eax, dword [esp + 0x88]
add ecx, edx
and eax, ebp
or ebx, eax
add ebx, ecx
mov ecx, dword [esp + 0x38]
mov edx, ecx
mov eax, ecx
rol eax, 7
ror edx, 0xb
xor edx, eax
mov eax, ecx
ror eax, 6
mov ecx, edi
xor edx, eax
rol ecx, 0xf
mov eax, edi
shr edi, 0xa
rol eax, 0xd
xor ecx, eax
xor ecx, edi
mov edi, dword [esp + 0x44]
add edx, ecx
mov eax, edi
ror eax, 7
mov ecx, edi
rol ecx, 0xe
xor ecx, eax
mov eax, edi
shr eax, 3
xor ecx, eax
add ecx, dword [esp + 0x7c]
mov edi, ebp
mov eax, dword [esp + 0x34]
add ecx, edx
xor eax, dword [esp + 0x28]
or edi, ebx
and eax, dword [esp + 0x38]
xor eax, dword [esp + 0x28]
add eax, ecx
mov edx, dword [esp + 0x10]
add eax, dword [esp + 0x40]
add edx, 0xbef9a3f7
add edx, eax
and edi, dword [esp + 0x88]
add dword [esp + 0x30], edx
mov ecx, ebx
ror ecx, 0xd
mov eax, ebx
rol eax, 0xa
xor ecx, eax
mov eax, ebx
ror eax, 2
xor ecx, eax
mov eax, ebp
and eax, ebx
add ecx, edx
or edi, eax
add edi, ecx
mov ecx, dword [esp + 0x30]
mov edx, ecx
mov eax, ecx
rol eax, 7
ror edx, 0xb
xor edx, eax
mov eax, ecx
ror eax, 6
xor edx, eax
mov eax, dword [esp + 0x78]
mov ecx, eax
ror eax, 7
rol ecx, 0xe
xor ecx, eax
mov eax, dword [esp + 0x78]
shr eax, 3
xor ecx, eax
mov eax, esi
add edx, ecx
rol eax, 0xd
mov ecx, esi
shr esi, 0xa
rol ecx, 0xf
xor ecx, eax
mov eax, dword [esp + 0x34]
xor eax, dword [esp + 0x38]
xor ecx, esi
and eax, dword [esp + 0x30]
xor eax, dword [esp + 0x34]
add ecx, dword [esp + 0x74]
mov esi, dword [esp + 0x28]
add ecx, edx
add eax, ecx
add esi, 0xc67178f2
add eax, dword [esp + 0x44]
mov edx, edi
add esi, eax
ror edx, 0xd
mov eax, edi
mov ecx, ebx
rol eax, 0xa
or ecx, edi
xor edx, eax
and ecx, ebp
mov eax, edi
ror eax, 2
xor edx, eax
mov eax, ebx
and eax, edi
or ecx, eax
mov eax, dword [esp + 0x90]
add edx, dword [eax]
add ecx, edx
mov edx, eax
add ecx, esi
mov eax, dword [edx + 0x10]
add dword [edx + 4], edi
add eax, esi
add eax, dword [esp + 0x88]
add dword [edx + 0xc], ebp
add dword [edx + 8], ebx
mov dword [edx + 0x10], eax
mov eax, dword [esp + 0x30]
add dword [edx + 0x14], eax
mov eax, dword [esp + 0x38]
add dword [edx + 0x18], eax
mov eax, dword [esp + 0x34]
add dword [edx + 0x1c], eax
pop edi
pop esi
pop ebp
mov dword [edx], ecx
pop ebx
add esp, 0x7c
ret