Function at 0x5064e0
Capabilities:
Hash data using murmur3

Disassembly:
push ebp
push edi
push esi
push ebx
mov ebx, eax
sub esp, 0x84
mov eax, dword [eax + 0xa0]
mov edi, dword [ebx + 0xa8]
mov dword [esp], edx
mov edx, dword [ebx + 0xa4]
mov ecx, dword [ebx + 0xac]
mov esi, eax
mov eax, ebx
mov dword [esp + 0x64], edi
mov dword [esp + 0x58], edx
mov edi, dword [eax + 0xb8]
mov edx, dword [eax + 0xb4]
mov ebp, dword [eax + 0xbc]
mov dword [esp + 0x80], eax
mov eax, dword [esp]
mov ebx, dword [ebx + 0xb0]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x68], edi
mov eax, dword [eax]
mov ebp, ebx
ror ebp, 6
mov ecx, eax
bswap ecx
mov dword [esp + 0x78], ecx
mov ecx, ebx
ror ecx, 0xb
xor ecx, ebp
mov ebp, ebx
rol ebx, 7
mov eax, ebx
mov ebx, dword [esp + 0x74]
xor eax, ecx
mov ecx, edx
xor ecx, edi
mov edi, ebp
lea ebx, [ebx + eax + 0x428a2f98]
mov eax, ecx
and eax, ebp
xor eax, dword [esp + 0x68]
mov ebp, dword [esp + 0x78]
add eax, ebx
mov ebx, dword [esp + 0x70]
lea ecx, [eax + ebp]
mov ebp, esi
ror esi, 0xd
mov eax, ebp
ror eax, 2
add ebx, ecx
xor esi, eax
mov eax, ebp
mov dword [esp + 4], ebx
rol eax, 0xa
mov ebx, dword [esp + 0x58]
xor esi, eax
mov eax, dword [esp + 0x58]
and ebx, ebp
xor eax, ebp
and eax, dword [esp + 0x64]
add eax, ebx
mov ebx, edi
add eax, esi
mov esi, dword [esp]
xor ebx, edx
add eax, ecx
mov ecx, dword [esi + 4]
mov esi, dword [esp + 4]
mov dword [esp + 0x5c], edi
mov edi, dword [esp + 0x68]
mov dword [esp + 0x60], ebp
mov dword [esp + 0x7c], edx
bswap ecx
and ebx, esi
mov dword [esp + 0x34], ecx
lea edi, [edi + ecx + 0x71374491]
mov ecx, esi
xor ebx, edx
ror ecx, 0xb
add edi, ebx
mov ebx, ecx
mov ecx, esi
ror ecx, 6
rol esi, 7
xor ebx, ecx
xor ebx, esi
mov esi, dword [esp + 0x64]
add ebx, edi
mov edi, eax
ror edi, 0xd
lea ecx, [esi + ebx]
mov esi, ebp
and esi, eax
mov dword [esp + 8], ecx
mov ecx, eax
ror ecx, 2
xor edi, ecx
mov ecx, eax
rol ecx, 0xa
xor edi, ecx
mov ecx, ebp
mov ebp, dword [esp + 0x5c]
xor ecx, eax
and ecx, dword [esp + 0x58]
add ecx, esi
mov esi, dword [esp]
add ecx, edi
add ecx, ebx
mov ebx, dword [esi + 8]
mov esi, dword [esp + 8]
bswap ebx
mov dword [esp + 0x4c], ebx
mov ebx, dword [esp + 4]
xor ebx, ebp
and ebx, esi
xor ebx, ebp
mov ebp, dword [esp + 0x4c]
lea edi, [edx + ebp - 0x4a3f0431]
mov ebp, esi
mov edx, ecx
ror edx, 0xd
add edi, ebx
mov ebx, esi
ror ebx, 0xb
mov esi, ebx
mov ebx, ebp
rol ebp, 7
ror ebx, 6
xor ebx, esi
xor ebx, ebp
mov ebp, dword [esp + 0x60]
add ebx, edi
mov edi, dword [esp + 0x58]
add edi, ebx
mov dword [esp + 0xc], edi
mov edi, edx
mov edx, ecx
ror edx, 2
xor edi, edx
mov edx, ecx
rol edx, 0xa
xor edi, edx
mov edx, eax
xor edx, ecx
and ebp, edx
mov edx, eax
and edx, ecx
mov esi, edx
mov edx, dword [esp + 0xc]
add esi, ebp
add esi, edi
add ebx, esi
mov esi, dword [esp]
mov ebp, ebx
mov ebx, dword [esi + 0xc]
mov esi, dword [esp + 4]
bswap ebx
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 8]
mov edi, dword [esp + 0x38]
xor ebx, esi
and ebx, edx
xor ebx, esi
mov esi, dword [esp + 0x5c]
lea edi, [esi + edi - 0x164a245b]
add edi, ebx
mov ebx, edx
ror ebx, 0xb
mov esi, ebx
mov ebx, edx
ror ebx, 6
xor ebx, esi
mov esi, edx
mov edx, ebp
rol esi, 7
ror ebp, 0xd
mov dword [esp + 0x14], edx
xor ebx, esi
mov esi, dword [esp + 0x60]
add ebx, edi
lea edi, [esi + ebx]
mov esi, edx
and esi, ecx
mov dword [esp + 0x10], edi
mov edi, ebp
mov ebp, edx
ror ebp, 2
xor edi, ebp
mov ebp, edx
rol ebp, 0xa
xor edi, ebp
mov ebp, edx
xor ebp, ecx
and ebp, eax
add ebp, esi
mov esi, dword [esp]
add ebp, edi
add ebp, ebx
mov ebx, dword [esi + 0x10]
mov edi, dword [esp + 8]
mov esi, dword [esp + 0x10]
bswap ebx
mov edx, ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x44], edx
xor ebx, edi
and ebx, esi
xor ebx, edi
mov edi, dword [esp + 4]
lea edi, [edi + edx + 0x3956c25b]
mov edx, esi
add edi, ebx
mov ebx, esi
ror ebx, 0xb
mov esi, ebx
mov ebx, edx
ror ebx, 6
xor ebx, esi
mov esi, edx
mov edx, ebp
rol esi, 7
xor ebx, esi
add ebx, edi
add eax, ebx
ror edx, 0xd
mov dword [esp + 4], eax
mov eax, dword [esp + 0x14]
mov esi, edx
mov edx, ebp
ror edx, 2
mov edi, eax
and eax, ebp
xor esi, edx
xor edi, ebp
mov edx, ebp
and edi, ecx
rol edx, 0xa
add edi, eax
mov eax, dword [esp]
xor esi, edx
add edi, esi
mov esi, dword [esp + 0xc]
add edi, ebx
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
xor ebx, esi
mov edx, eax
mov eax, dword [esp + 4]
bswap edx
mov dword [esp + 0x3c], edx
and eax, ebx
mov ebx, dword [esp + 8]
xor eax, esi
lea esi, [ebx + edx + 0x59f111f1]
mov edx, dword [esp + 4]
add esi, eax
mov ebx, edx
mov eax, edx
ror ebx, 0xb
ror eax, 6
xor eax, ebx
mov ebx, edx
rol ebx, 7
xor eax, ebx
add eax, esi
mov esi, edi
ror esi, 0xd
add ecx, eax
mov ebx, esi
mov esi, edi
mov dword [esp + 8], ecx
ror esi, 2
mov ecx, ebp
xor ebx, esi
mov esi, edi
and ecx, edi
rol esi, 0xa
xor ebx, esi
mov esi, ebp
xor esi, edi
and esi, dword [esp + 0x14]
add ecx, esi
add ecx, ebx
lea ebx, [ecx + eax]
mov eax, dword [esp]
mov ecx, dword [esp + 0x10]
mov esi, ebx
mov ebx, dword [esp + 4]
mov eax, dword [eax + 0x18]
xor ebx, ecx
mov edx, eax
mov eax, dword [esp + 8]
bswap edx
mov dword [esp + 0x40], edx
and eax, ebx
mov ebx, dword [esp + 0xc]
xor eax, ecx
lea ebx, [ebx + edx - 0x6dc07d5c]
mov edx, dword [esp + 8]
add ebx, eax
mov ecx, edx
mov eax, edx
ror ecx, 0xb
ror eax, 6
xor eax, ecx
mov ecx, edx
mov edx, esi
rol ecx, 7
mov dword [esp + 0x18], edx
xor eax, ecx
mov ecx, dword [esp + 0x14]
add eax, ebx
mov ebx, esi
ror ebx, 0xd
add ecx, eax
mov dword [esp + 0xc], ecx
mov ecx, esi
ror ecx, 2
xor ebx, ecx
mov ecx, esi
rol ecx, 0xa
xor ebx, ecx
mov ecx, esi
xor ecx, edi
mov esi, ecx
mov ecx, edx
and esi, ebp
and ecx, edi
add ecx, esi
add ecx, ebx
lea ebx, [ecx + eax]
mov eax, dword [esp]
mov esi, ebx
mov ebx, dword [esp + 4]
mov eax, dword [eax + 0x1c]
mov edx, eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
bswap edx
mov dword [esp + 0x6c], edx
xor eax, ebx
and eax, ecx
xor eax, ebx
mov ebx, dword [esp + 0x10]
lea ebx, [ebx + edx - 0x54e3a12b]
mov edx, ecx
add ebx, eax
mov eax, ecx
ror eax, 0xb
mov ecx, eax
mov eax, edx
ror eax, 6
xor eax, ecx
mov ecx, edx
mov edx, esi
rol ecx, 7
mov dword [esp + 0x1c], edx
xor eax, ecx
mov ecx, dword [esp + 0x18]
add eax, ebx
mov ebx, esi
add ebp, eax
ror ebx, 0xd
mov dword [esp + 0x10], ebp
mov ebp, esi
ror ebp, 2
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebx, ebp
mov ebp, ecx
and ecx, edx
xor ebp, esi
mov esi, ebp
and esi, edi
add ecx, esi
mov esi, dword [esp + 0x10]
add ecx, ebx
mov ebx, dword [esp + 8]
lea ebp, [ecx + eax]
mov eax, dword [esp]
mov eax, dword [eax + 0x20]
bswap eax
mov edx, eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x54], edx
xor eax, ebx
and eax, esi
xor eax, ebx
mov ebx, dword [esp + 4]
lea ebx, [ebx + edx - 0x27f85568]
add ebx, eax
mov eax, esi
ror eax, 0xb
mov ecx, eax
mov eax, esi
rol esi, 7
ror eax, 6
xor eax, ecx
xor eax, esi
add eax, ebx
add edi, eax
mov dword [esp + 0x14], edi
mov edi, ebp
ror edi, 0xd
mov ebx, edi
mov edi, ebp
ror edi, 2
xor ebx, edi
mov edi, ebp
rol edi, 0xa
xor ebx, edi
mov edi, dword [esp + 0x1c]
mov esi, edi
and edi, ebp
xor esi, ebp
and esi, dword [esp + 0x18]
mov ecx, edi
add ecx, esi
add ecx, ebx
mov ebx, dword [esp + 0xc]
lea edi, [ecx + eax]
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mov eax, dword [eax + 0x24]
mov esi, eax
mov eax, dword [esp + 0x10]
bswap esi
mov dword [esp + 0x48], esi
xor eax, ebx
and eax, ecx
xor eax, ebx
mov ebx, dword [esp + 8]
lea ebx, [ebx + esi + 0x12835b01]
mov esi, ecx
add ebx, eax
mov eax, ecx
ror eax, 0xb
mov ecx, eax
mov eax, esi
ror eax, 6
xor eax, ecx
mov ecx, esi
mov esi, edi
rol ecx, 7
ror esi, 0xd
xor eax, ecx
mov ecx, dword [esp + 0x18]
add eax, ebx
mov ebx, esi
mov esi, edi
ror esi, 2
xor ebx, esi
mov esi, edi
add ecx, eax
rol esi, 0xa
mov dword [esp + 4], ecx
mov ecx, ebp
xor ebx, esi
mov esi, ebp
and ecx, edi
xor esi, edi
and esi, dword [esp + 0x1c]
add ecx, esi
add ecx, ebx
lea ebx, [ecx + eax]
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mov esi, ebx
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0x28]
xor ecx, ebx
bswap eax
mov edx, eax
mov eax, dword [esp + 4]
and eax, ecx
xor eax, ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x20], edx
lea ebx, [ebx + edx + 0x243185be]
mov edx, dword [esp + 4]
add ebx, eax
mov eax, edx
ror eax, 0xb
mov ecx, eax
mov eax, edx
ror eax, 6
xor eax, ecx
mov ecx, edx
mov edx, esi
rol ecx, 7
mov dword [esp + 0xc], edx
xor eax, ecx
mov ecx, esi
add eax, ebx
mov ebx, dword [esp + 0x1c]
add ebx, eax
mov dword [esp + 8], ebx
mov ebx, esi
ror ebx, 0xd
ror ecx, 2
xor ebx, ecx
mov ecx, esi
rol ecx, 0xa
xor ebx, ecx
mov ecx, esi
xor ecx, edi
mov esi, ecx
mov ecx, edx
and esi, ebp
and ecx, edi
add ecx, esi
add ecx, ebx
lea ebx, [ecx + eax]
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mov esi, ebx
mov eax, dword [eax + 0x2c]
mov ebx, eax
mov eax, dword [esp + 8]
bswap ebx
mov edx, ebx
mov ebx, dword [esp + 4]
mov dword [esp + 0x24], edx
xor ebx, ecx
and eax, ebx
mov ebx, dword [esp + 0x10]
xor eax, ecx
lea ebx, [ebx + edx + 0x550c7dc3]
mov edx, dword [esp + 8]
add ebx, eax
mov ecx, edx
mov eax, edx
ror ecx, 0xb
ror eax, 6
xor eax, ecx
mov ecx, edx
mov edx, esi
rol ecx, 7
mov dword [esp + 0x18], edx
xor eax, ecx
mov ecx, dword [esp + 0xc]
add eax, ebx
mov ebx, esi
add ebp, eax
ror ebx, 0xd
mov dword [esp + 0x10], ebp
mov ebp, esi
ror ebp, 2
xor ebx, ebp
mov ebp, esi
rol ebp, 0xa
xor ebx, ebp
mov ebp, ecx
and ecx, edx
xor ebp, esi
mov esi, ebp
and esi, edi
add ecx, esi
add ecx, ebx
mov ebx, dword [esp + 4]
lea ebp, [ecx + eax]
mov eax, dword [esp]
mov eax, dword [eax + 0x30]
mov esi, eax
mov eax, dword [esp + 8]
bswap esi
mov ecx, esi
mov esi, dword [esp + 0x10]
xor eax, ebx
mov dword [esp + 0x28], ecx
and eax, esi
xor eax, ebx
mov ebx, dword [esp + 0x14]
lea ebx, [ebx + ecx + 0x72be5d74]
mov ecx, esi
ror ecx, 0xb
add ebx, eax
mov eax, esi
ror eax, 6
xor eax, ecx
mov ecx, esi
mov esi, edx
rol ecx, 7
xor esi, ebp
and esi, dword [esp + 0xc]
xor eax, ecx
add eax, ebx
add edi, eax
mov dword [esp + 0x1c], edi
mov edi, ebp
ror edi, 0xd
mov ebx, edi
mov edi, ebp
ror edi, 2
xor ebx, edi
mov edi, ebp
rol edi, 0xa
xor ebx, edi
mov edi, edx
and edi, ebp
mov ecx, edi
add ecx, esi
mov esi, dword [esp + 0x1c]
add ecx, ebx
mov ebx, dword [esp + 8]
lea edi, [ecx + eax]
mov eax, dword [esp]
mov eax, dword [eax + 0x34]
bswap eax
mov edx, eax
mov eax, dword [esp + 0x10]
xor eax, ebx
and eax, esi
xor eax, ebx
mov ebx, dword [esp + 4]
mov dword [esp + 0x2c], edx
lea ebx, [ebx + edx - 0x7f214e02]
mov edx, esi
add ebx, eax
mov eax, esi
ror eax, 0xb
mov ecx, eax
mov eax, esi
rol esi, 7
ror eax, 6
xor eax, ecx
mov ecx, dword [esp + 0xc]
xor eax, esi
mov esi, edi
add eax, ebx
ror esi, 2
lea ebx, [ecx + eax]
mov ecx, ebp
mov dword [esp + 0x14], ebx
mov ebx, edi
ror ebx, 0xd
xor ebx, esi
mov esi, edi
and ecx, edi
rol esi, 0xa
xor ebx, esi
mov esi, ebp
xor esi, edi
and esi, dword [esp + 0x18]
add ecx, esi
add ecx, ebx
lea ebx, [ecx + eax]
mov eax, dword [esp]
mov ecx, dword [esp + 0x10]
mov esi, ebx
mov eax, dword [eax + 0x38]
mov ebx, eax
mov eax, ecx
xor eax, edx
mov edx, dword [esp + 0x14]
bswap ebx
mov dword [esp + 0x30], ebx
and eax, edx
xor eax, ecx
mov ecx, dword [esp + 8]
lea ebx, [ecx + ebx - 0x6423f959]
add ebx, eax
mov eax, edx
ror eax, 0xb
mov ecx, eax
mov eax, edx
ror eax, 6
xor eax, ecx
mov ecx, edx
mov edx, esi
rol ecx, 7
mov dword [esp + 8], edx
xor eax, ecx
mov ecx, dword [esp + 0x18]
add eax, ebx
lea ebx, [ecx + eax]
mov ecx, esi
ror ecx, 2
mov dword [esp + 0xc], ebx
mov ebx, esi
ror ebx, 0xd
xor ebx, ecx
mov ecx, esi
rol ecx, 0xa
xor ebx, ecx
mov ecx, esi
xor ecx, edi
mov esi, ecx
mov ecx, edx
and esi, ebp
and ecx, edi
add ecx, esi
add ecx, ebx
mov ebx, dword [esp + 0x1c]
lea esi, [ecx + eax]
mov eax, dword [esp]
mov eax, dword [eax + 0x3c]
mov edx, eax
mov eax, dword [esp + 0x14]
bswap edx
mov dword [esp + 0x50], edx
xor eax, ebx
and eax, dword [esp + 0xc]
xor eax, ebx
mov ebx, dword [esp + 0x10]
lea ecx, [ebx + edx - 0x3e640e8c]
mov ebx, dword [esp + 0xc]
add ecx, eax
mov edx, ebx
mov eax, ebx
ror edx, 0xb
ror eax, 6
xor eax, edx
mov edx, ebx
rol edx, 7
xor eax, edx
mov edx, dword [esp + 8]
add eax, ecx
add ebp, eax
mov dword [esp + 0x18], ebp
mov ebp, esi
mov ebx, edx
ror ebp, 0xd
xor ebx, esi
and edx, esi
mov ecx, ebp
mov ebp, esi
and ebx, edi
ror ebp, 2
add edx, ebx
mov ebx, dword [esp + 0x30]
xor ecx, ebp
mov ebp, esi
rol ebp, 0xa
xor ecx, ebp
add edx, ecx
mov ecx, ebx
rol ecx, 0xd
lea ebp, [edx + eax]
mov edx, ecx
mov ecx, ebx
rol ecx, 0xf
mov eax, ecx
mov ecx, ebx
xor eax, edx
shr ecx, 0xa
mov edx, dword [esp + 0x34]
xor eax, ecx
mov ecx, dword [esp + 0x78]
add ecx, dword [esp + 0x48]
mov ebx, edx
rol ebx, 0xe
add eax, ecx
mov ecx, ebx
mov ebx, edx
ror ebx, 7
xor ecx, ebx
mov ebx, dword [esp + 0x34]
shr ebx, 3
mov edx, ebx
xor edx, ecx
mov ecx, dword [esp + 0x14]
lea ebx, [eax + edx]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x18]
mov dword [esp], ebx
xor eax, ecx
and eax, edx
xor eax, ecx
mov ecx, dword [esp + 0x1c]
lea ecx, [ecx + ebx - 0x1b64963f]
mov ebx, edx
add ecx, eax
mov eax, edx
ror ebx, 0xb
mov edx, ebx
mov ebx, eax
ror eax, 6
xor eax, edx
rol ebx, 7
xor eax, ebx
add eax, ecx
add edi, eax
mov dword [esp + 4], edi
mov edi, ebp
mov ebx, dword [esp + 8]
ror edi, 0xd
mov ecx, edi
mov edi, ebp
ror edi, 2
xor ecx, edi
mov edi, ebp
rol edi, 0xa
xor ecx, edi
mov edi, esi
xor edi, ebp
and ebx, edi
mov edi, esi
and edi, ebp
mov edx, edi
add edx, ebx
add edx, ecx
mov ecx, dword [esp + 0x50]
lea edi, [edx + eax]
mov ebx, ecx
rol ebx, 0xd
mov edx, ebx
mov ebx, ecx
rol ebx, 0xf
mov eax, ebx
mov ebx, ecx
xor eax, edx
shr ebx, 0xa
mov edx, dword [esp + 0x34]
add edx, dword [esp + 0x20]
xor eax, ebx
mov ebx, dword [esp + 0x4c]
add eax, edx
mov edx, ebx
rol edx, 0xe
mov ecx, edx
mov edx, ebx
ror edx, 7
xor ecx, edx
mov edx, ebx
mov ebx, dword [esp + 0xc]
shr edx, 3
xor edx, ecx
mov ecx, dword [esp + 0x14]
add eax, edx
mov edx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x34], edx
xor eax, ebx
and eax, dword [esp + 4]
xor eax, ebx
lea ebx, [ecx + edx - 0x1041b87a]
add ebx, eax
mov eax, dword [esp + 4]
mov edx, eax
ror edx, 0xb
mov ecx, edx
mov edx, eax
ror edx, 6
mov eax, edx
mov edx, dword [esp + 8]
xor eax, ecx
mov ecx, dword [esp + 4]
rol ecx, 7
xor eax, ecx
mov ecx, edi
add eax, ebx
mov ebx, edi
ror ecx, 2
ror ebx, 0xd
add edx, eax
xor ebx, ecx
mov ecx, edi
mov dword [esp + 8], edx
rol ecx, 0xa
xor ebx, ecx
mov ecx, ebp
xor ecx, edi
mov edx, ecx
mov ecx, ebp
and ecx, edi
and edx, esi
add edx, ecx
add edx, ebx
mov ebx, dword [esp + 0x38]
add edx, eax
mov ecx, ebx
mov eax, ebx
rol ecx, 0xe
ror eax, 7
xor eax, ecx
mov ecx, ebx
shr ecx, 3
xor eax, ecx
mov ecx, dword [esp + 0x4c]
add ecx, dword [esp + 0x24]
add eax, ecx
mov ecx, dword [esp]
mov ebx, ecx
rol ecx, 0xf
rol ebx, 0xd
xor ebx, ecx
mov ecx, dword [esp]
shr ecx, 0xa
xor ecx, ebx
lea ebx, [eax + ecx]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 4]
xor ecx, eax
and ecx, dword [esp + 8]
xor ecx, eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0xc], ebx
lea eax, [eax + ebx + 0xfc19dc6]
add ecx, eax
mov eax, dword [esp + 8]
mov ebx, eax
ror eax, 6
ror ebx, 0xb
xor eax, ebx
mov ebx, dword [esp + 8]
rol ebx, 7
xor eax, ebx
mov ebx, edx
add eax, ecx
ror ebx, 2
add esi, eax
mov dword [esp + 0x10], esi
mov esi, edx
ror esi, 0xd
xor esi, ebx
mov ebx, edx
rol ebx, 0xa
xor esi, ebx
mov ebx, edi
xor ebx, edx
mov ecx, ebx
mov ebx, edi
and ebx, edx
and ecx, ebp
add ecx, ebx
add ecx, esi
add ecx, eax
mov eax, dword [esp + 0x44]
mov esi, eax
rol esi, 0xe
mov ebx, esi
mov esi, eax
mov eax, dword [esp + 0x34]
ror esi, 7
xor ebx, esi
mov esi, dword [esp + 0x44]
shr esi, 3
xor ebx, esi
mov esi, dword [esp + 0x38]
add esi, dword [esp + 0x28]
add ebx, esi
mov esi, eax
rol eax, 0xf
rol esi, 0xd
xor esi, eax
mov eax, dword [esp + 0x34]
shr eax, 0xa
xor eax, esi
lea esi, [ebx + eax]
mov eax, dword [esp + 4]
mov ebx, esi
mov esi, dword [esp + 8]
mov dword [esp + 0x38], ebx
xor esi, eax
and esi, dword [esp + 0x10]
xor esi, eax
mov eax, dword [esp + 0x18]
lea eax, [eax + ebx + 0x240ca1cc]
add esi, eax
mov eax, dword [esp + 0x10]
mov ebx, eax
ror eax, 6
ror ebx, 0xb
xor eax, ebx
mov ebx, dword [esp + 0x10]
rol ebx, 7
xor eax, ebx
mov ebx, edx
add eax, esi
mov esi, ecx
and ebx, ecx
add ebp, eax
ror esi, 0xd
mov dword [esp + 0x14], ebp
mov ebp, esi
mov esi, ecx
ror esi, 2
xor ebp, esi
mov esi, ecx
rol esi, 0xa
xor ebp, esi
mov esi, edx
xor esi, ecx
and esi, edi
add esi, ebx
add esi, ebp
add esi, eax
mov eax, dword [esp + 0x3c]
mov ebp, eax
rol ebp, 0xe
mov ebx, ebp
mov ebp, eax
mov eax, dword [esp + 0xc]
ror ebp, 7
xor ebx, ebp
mov ebp, dword [esp + 0x3c]
shr ebp, 3
xor ebx, ebp
mov ebp, dword [esp + 0x44]
add ebp, dword [esp + 0x2c]
add ebx, ebp
mov ebp, eax
rol ebp, 0xd
rol eax, 0xf
xor ebp, eax
mov eax, dword [esp + 0xc]
shr eax, 0xa
xor eax, ebp
lea ebp, [ebx + eax]
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0x10]
xor ebx, eax
and ebx, dword [esp + 0x14]
xor ebx, eax
mov eax, dword [esp + 4]
mov dword [esp + 4], ebp
lea eax, [eax + ebp + 0x2de92c6f]
add ebx, eax
mov eax, dword [esp + 0x14]
mov ebp, eax
ror eax, 6
ror ebp, 0xb
xor eax, ebp
mov ebp, dword [esp + 0x14]
rol ebp, 7
xor eax, ebp
add eax, ebx
lea ebx, [edi + eax]
mov edi, ecx
and edi, esi
mov dword [esp + 0x18], ebx
mov ebx, esi
ror ebx, 0xd
mov ebp, ebx
mov ebx, esi
ror ebx, 2
xor ebp, ebx
mov ebx, esi
rol ebx, 0xa
xor ebp, ebx
mov ebx, ecx
xor ebx, esi
and ebx, edx
add ebx, edi
add ebx, ebp
add ebx, eax
mov eax, dword [esp + 0x40]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
ror ebp, 7
mov eax, ebp
xor eax, edi
mov edi, dword [esp + 0x40]
shr edi, 3
xor eax, edi
mov edi, dword [esp + 0x3c]
add edi, dword [esp + 0x30]
add eax, edi
mov edi, dword [esp + 0x38]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x38]
shr edi, 0xa
xor edi, ebp
lea ebp, [eax + edi]
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
xor eax, edi
and eax, dword [esp + 0x18]
xor eax, edi
mov edi, dword [esp + 8]
mov dword [esp + 0x3c], ebp
lea ebp, [edi + ebp + 0x4a7484aa]
add ebp, eax
mov eax, dword [esp + 0x18]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x18]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x18]
rol edi, 7
xor eax, edi
mov edi, esi
add eax, ebp
and edi, ebx
add edx, eax
mov dword [esp + 8], edx
mov edx, ebx
ror edx, 0xd
mov ebp, edx
mov edx, ebx
ror edx, 2
xor ebp, edx
mov edx, ebx
rol edx, 0xa
xor ebp, edx
mov edx, esi
xor edx, ebx
and edx, ecx
add edx, edi
add edx, ebp
mov ebp, dword [esp + 0x6c]
add edx, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
shr ebp, 3
ror eax, 7
xor eax, edi
mov edi, dword [esp + 0x40]
xor eax, ebp
add edi, dword [esp + 0x50]
add eax, edi
mov edi, dword [esp + 4]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 4]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 0x14]
mov ebp, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], ebp
xor eax, edi
and eax, dword [esp + 8]
xor eax, edi
mov edi, dword [esp + 0x10]
lea ebp, [edi + ebp + 0x5cb0a9dc]
add ebp, eax
mov eax, dword [esp + 8]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 8]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 8]
rol edi, 7
xor eax, edi
mov edi, ebx
add eax, ebp
and edi, edx
add ecx, eax
mov dword [esp + 0x10], ecx
mov ecx, edx
ror ecx, 0xd
mov ebp, ecx
mov ecx, edx
ror ecx, 2
xor ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebp, ecx
mov ecx, ebx
xor ecx, edx
and ecx, esi
add ecx, edi
add ecx, ebp
mov ebp, dword [esp + 0x54]
add ecx, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
ror eax, 7
xor eax, edi
mov edi, ebp
shr edi, 3
xor eax, edi
mov edi, dword [esp + 0x3c]
add eax, dword [esp + 0x6c]
add eax, dword [esp]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x3c]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 0x18]
mov ebp, eax
mov eax, dword [esp + 8]
mov dword [esp + 0x44], ebp
xor eax, edi
and eax, dword [esp + 0x10]
xor eax, edi
mov edi, dword [esp + 0x14]
lea ebp, [edi + ebp + 0x76f988da]
add ebp, eax
mov eax, dword [esp + 0x10]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x10]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x10]
rol edi, 7
xor eax, edi
mov edi, edx
add eax, ebp
and edi, ecx
add esi, eax
mov dword [esp + 0x14], esi
mov esi, ecx
ror esi, 0xd
mov ebp, esi
mov esi, ecx
ror esi, 2
xor ebp, esi
mov esi, ecx
rol esi, 0xa
xor ebp, esi
mov esi, edx
xor esi, ecx
and esi, ebx
add esi, edi
add esi, ebp
mov ebp, dword [esp + 0x48]
add esi, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
shr ebp, 3
ror eax, 7
xor eax, edi
mov edi, dword [esp + 0x40]
xor eax, ebp
add eax, dword [esp + 0x54]
add eax, dword [esp + 0x34]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x40]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 8]
mov ebp, eax
mov eax, dword [esp + 0x10]
xor eax, edi
and eax, dword [esp + 0x14]
xor eax, edi
mov edi, dword [esp + 0x18]
mov dword [esp + 0x18], ebp
lea ebp, [edi + ebp - 0x67c1aeae]
add ebp, eax
mov eax, dword [esp + 0x14]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x14]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x14]
rol edi, 7
xor eax, edi
mov edi, ecx
add eax, ebp
add ebx, eax
mov dword [esp + 0x1c], ebx
mov ebx, esi
ror ebx, 0xd
mov ebp, ebx
mov ebx, esi
ror ebx, 2
xor ebp, ebx
mov ebx, esi
rol ebx, 0xa
xor ebp, ebx
mov ebx, ecx
xor ebx, esi
and ebx, edx
and edi, esi
add ebx, edi
add ebx, ebp
mov ebp, dword [esp + 0x20]
add ebx, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
shr ebp, 3
ror eax, 7
xor eax, edi
mov edi, dword [esp + 0x44]
xor eax, ebp
add eax, dword [esp + 0x48]
add eax, dword [esp + 0xc]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x44]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 0x10]
mov ebp, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x48], ebp
xor eax, edi
and eax, dword [esp + 0x1c]
xor eax, edi
mov edi, dword [esp + 8]
lea ebp, [edi + ebp - 0x57ce3993]
add ebp, eax
mov eax, dword [esp + 0x1c]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x1c]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x1c]
rol edi, 7
xor eax, edi
mov edi, esi
add eax, ebp
add edx, eax
mov dword [esp + 8], edx
mov edx, ebx
ror edx, 0xd
mov ebp, edx
mov edx, ebx
ror edx, 2
xor ebp, edx
mov edx, ebx
rol edx, 0xa
and edi, ebx
xor ebp, edx
mov edx, esi
xor edx, ebx
and edx, ecx
add edx, edi
add edx, ebp
mov ebp, dword [esp + 0x24]
add edx, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
shr ebp, 3
ror eax, 7
xor eax, edi
xor eax, ebp
add eax, dword [esp + 0x20]
add eax, dword [esp + 0x38]
mov edi, dword [esp + 0x18]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x18]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 0x14]
mov ebp, eax
mov eax, dword [esp + 0x1c]
xor eax, edi
and eax, dword [esp + 8]
xor eax, edi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x10], ebp
lea ebp, [edi + ebp - 0x4ffcd838]
add ebp, eax
mov eax, dword [esp + 8]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 8]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 8]
rol edi, 7
xor eax, edi
mov edi, ebx
add eax, ebp
add ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, edx
ror ecx, 0xd
and edi, edx
mov ebp, ecx
mov ecx, edx
ror ecx, 2
xor ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebp, ecx
mov ecx, ebx
xor ecx, edx
and ecx, esi
add ecx, edi
add ecx, ebp
mov ebp, dword [esp + 0x28]
add ecx, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
shr ebp, 3
ror eax, 7
xor eax, edi
mov edi, dword [esp + 0x48]
xor eax, ebp
add eax, dword [esp + 0x24]
add eax, dword [esp + 4]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x48]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 0x1c]
mov ebp, eax
mov eax, dword [esp + 8]
xor eax, edi
and eax, dword [esp + 0x20]
xor eax, edi
mov edi, dword [esp + 0x14]
mov dword [esp + 0x14], ebp
lea ebp, [edi + ebp - 0x40a68039]
add ebp, eax
mov eax, dword [esp + 0x20]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x20]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x20]
rol edi, 7
xor eax, edi
mov edi, edx
add eax, ebp
and edi, ecx
add esi, eax
mov dword [esp + 0x24], esi
mov esi, ecx
ror esi, 0xd
mov ebp, esi
mov esi, ecx
ror esi, 2
xor ebp, esi
mov esi, ecx
rol esi, 0xa
xor ebp, esi
mov esi, edx
xor esi, ecx
and esi, ebx
add esi, edi
add esi, ebp
mov ebp, dword [esp + 0x2c]
add esi, eax
mov eax, ebp
rol eax, 0xe
mov edi, eax
mov eax, ebp
shr ebp, 3
ror eax, 7
xor eax, edi
mov edi, dword [esp + 0x10]
xor eax, ebp
add eax, dword [esp + 0x28]
add eax, dword [esp + 0x3c]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x10]
shr edi, 0xa
xor edi, ebp
add eax, edi
mov edi, dword [esp + 8]
mov ebp, eax
mov eax, dword [esp + 0x20]
xor eax, edi
and eax, dword [esp + 0x24]
xor eax, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x1c], ebp
lea ebp, [edi + ebp - 0x391ff40d]
add ebp, eax
mov eax, dword [esp + 0x24]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x24]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x24]
rol edi, 7
xor eax, edi
mov edi, ecx
add eax, ebp
and edi, esi
add ebx, eax
mov dword [esp + 0x28], ebx
mov ebx, esi
ror ebx, 0xd
mov ebp, ebx
mov ebx, esi
ror ebx, 2
xor ebp, ebx
mov ebx, esi
rol ebx, 0xa
xor ebp, ebx
mov ebx, ecx
xor ebx, esi
and ebx, edx
add ebx, edi
add ebx, ebp
add ebx, eax
mov eax, dword [esp + 0x30]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
ror ebp, 7
mov eax, ebp
mov ebp, dword [esp + 0x30]
xor eax, edi
mov edi, dword [esp + 0x14]
shr ebp, 3
xor eax, ebp
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
add eax, dword [esp + 0x2c]
xor ebp, edi
mov edi, dword [esp + 0x14]
add eax, dword [esp + 0x40]
shr edi, 0xa
xor edi, ebp
mov ebp, dword [esp + 0x20]
xor ebp, dword [esp + 0x24]
add eax, edi
mov edi, dword [esp + 0x28]
and edi, ebp
mov ebp, dword [esp + 8]
xor edi, dword [esp + 0x20]
mov dword [esp + 8], eax
lea eax, [ebp + eax - 0x2a586eb9]
add edi, eax
mov eax, dword [esp + 0x28]
ror eax, 0xb
mov ebp, eax
mov eax, dword [esp + 0x28]
ror eax, 6
xor eax, ebp
mov ebp, dword [esp + 0x28]
rol ebp, 7
xor eax, ebp
add eax, edi
add edx, eax
mov dword [esp + 0x2c], edx
mov edx, ebx
ror edx, 0xd
mov ebp, edx
mov edx, ebx
ror edx, 2
xor ebp, edx
mov edx, ebx
rol edx, 0xa
xor ebp, edx
mov edx, esi
xor edx, ebx
mov edi, edx
mov edx, esi
and edx, ebx
and edi, ecx
add edi, edx
add edi, ebp
mov ebp, dword [esp + 0x50]
add edi, eax
mov edx, ebp
mov eax, ebp
rol edx, 0xe
ror eax, 7
xor eax, edx
mov edx, ebp
shr edx, 3
xor eax, edx
mov edx, dword [esp + 0x1c]
add eax, dword [esp + 0x30]
add eax, dword [esp + 0x44]
rol edx, 0xd
mov ebp, edx
mov edx, dword [esp + 0x1c]
rol edx, 0xf
xor ebp, edx
mov edx, dword [esp + 0x1c]
shr edx, 0xa
xor edx, ebp
add edx, eax
mov eax, dword [esp + 0x24]
xor eax, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov dword [esp + 0x4c], edx
and ebp, eax
mov eax, dword [esp + 0x20]
xor ebp, dword [esp + 0x24]
lea eax, [eax + edx + 0x6ca6351]
add ebp, eax
mov eax, dword [esp + 0x2c]
mov edx, eax
ror eax, 6
ror edx, 0xb
xor eax, edx
mov edx, dword [esp + 0x2c]
rol edx, 7
xor eax, edx
mov edx, ebx
add eax, ebp
mov ebp, edi
and edx, edi
add ecx, eax
ror ebp, 2
mov dword [esp + 0x20], ecx
mov ecx, edi
ror ecx, 0xd
xor ecx, ebp
mov ebp, edi
rol ebp, 0xa
xor ecx, ebp
mov ebp, ebx
xor ebp, edi
and ebp, esi
add ebp, edx
add ebp, ecx
mov ecx, dword [esp]
add ebp, eax
mov edx, ecx
ror ecx, 7
rol edx, 0xe
mov eax, ecx
xor eax, edx
mov edx, dword [esp]
shr edx, 3
xor eax, edx
mov edx, dword [esp + 8]
add eax, dword [esp + 0x50]
add eax, dword [esp + 0x18]
mov ecx, edx
rol edx, 0xf
rol ecx, 0xd
xor ecx, edx
mov edx, dword [esp + 8]
shr edx, 0xa
xor edx, ecx
lea ecx, [eax + edx]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
xor eax, edx
and eax, dword [esp + 0x20]
xor eax, edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0x24], ecx
lea ecx, [edx + ecx + 0x14292967]
add ecx, eax
mov eax, dword [esp + 0x20]
mov edx, eax
ror eax, 6
ror edx, 0xb
xor eax, edx
mov edx, dword [esp + 0x20]
rol edx, 7
xor eax, edx
mov edx, edi
add eax, ecx
and edx, ebp
add esi, eax
mov dword [esp + 0x30], esi
mov esi, ebp
ror esi, 0xd
mov ecx, esi
mov esi, ebp
ror esi, 2
xor ecx, esi
mov esi, ebp
rol esi, 0xa
xor ecx, esi
mov esi, edi
xor esi, ebp
and esi, ebx
add esi, edx
add esi, ecx
mov ecx, dword [esp + 0x34]
add esi, eax
mov edx, ecx
mov eax, ecx
ror eax, 7
rol edx, 0xe
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
mov eax, dword [esp + 0x4c]
add edx, dword [esp]
add edx, dword [esp + 0x48]
mov ecx, eax
rol ecx, 0xd
rol eax, 0xf
xor ecx, eax
mov eax, dword [esp + 0x4c]
shr eax, 0xa
xor eax, ecx
lea ecx, [edx + eax]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x20]
mov dword [esp + 0x50], ecx
xor edx, eax
and edx, dword [esp + 0x30]
xor edx, eax
mov eax, dword [esp + 0x28]
lea eax, [eax + ecx + 0x27b70a85]
add edx, eax
mov eax, dword [esp + 0x30]
mov ecx, eax
ror eax, 6
ror ecx, 0xb
xor eax, ecx
mov ecx, dword [esp + 0x30]
rol ecx, 7
xor eax, ecx
mov ecx, esi
add eax, edx
ror ecx, 2
add ebx, eax
mov dword [esp], ebx
mov ebx, esi
ror ebx, 0xd
xor ebx, ecx
mov ecx, esi
rol ecx, 0xa
xor ebx, ecx
mov ecx, ebp
xor ecx, esi
mov edx, ecx
mov ecx, ebp
and ecx, esi
and edx, edi
add edx, ecx
add edx, ebx
mov ebx, dword [esp + 0xc]
add edx, eax
mov eax, dword [esp + 0x24]
mov ecx, ebx
ror ebx, 7
rol ecx, 0xe
xor ecx, ebx
mov ebx, dword [esp + 0xc]
shr ebx, 3
xor ecx, ebx
mov ebx, eax
add ecx, dword [esp + 0x34]
rol eax, 0xf
rol ebx, 0xd
add ecx, dword [esp + 0x10]
xor ebx, eax
mov eax, dword [esp + 0x24]
shr eax, 0xa
xor eax, ebx
lea ebx, [ecx + eax]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x28], ebx
xor ecx, eax
and ecx, dword [esp]
xor ecx, eax
mov eax, dword [esp + 0x2c]
lea eax, [eax + ebx + 0x2e1b2138]
add ecx, eax
mov eax, dword [esp]
mov ebx, eax
ror eax, 6
ror ebx, 0xb
xor eax, ebx
mov ebx, dword [esp]
rol ebx, 7
xor eax, ebx
mov ebx, esi
add eax, ecx
and ebx, edx
lea ecx, [edi + eax]
mov dword [esp + 0x2c], ecx
mov ecx, edx
ror ecx, 0xd
mov edi, ecx
mov ecx, edx
ror ecx, 2
xor edi, ecx
mov ecx, edx
rol ecx, 0xa
xor edi, ecx
mov ecx, esi
xor ecx, edx
and ecx, ebp
add ecx, ebx
add ecx, edi
mov edi, dword [esp + 0x38]
add ecx, eax
mov ebx, edi
mov eax, edi
ror eax, 7
rol ebx, 0xe
xor ebx, eax
mov eax, edi
shr eax, 3
xor ebx, eax
mov eax, dword [esp + 0x50]
add ebx, dword [esp + 0xc]
add ebx, dword [esp + 0x14]
mov edi, eax
rol eax, 0xf
rol edi, 0xd
xor edi, eax
mov eax, dword [esp + 0x50]
shr eax, 0xa
xor eax, edi
add ebx, eax
mov eax, dword [esp + 0x30]
mov edi, ebx
mov ebx, dword [esp]
mov dword [esp + 0x34], edi
xor ebx, eax
and ebx, dword [esp + 0x2c]
xor ebx, eax
mov eax, dword [esp + 0x20]
lea eax, [eax + edi + 0x4d2c6dfc]
add ebx, eax
mov eax, dword [esp + 0x2c]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x2c]
rol edi, 7
xor eax, edi
mov edi, edx
add eax, ebx
and edi, ecx
lea ebx, [ebp + eax]
mov dword [esp + 0xc], ebx
mov ebx, ecx
ror ebx, 0xd
mov ebp, ebx
mov ebx, ecx
ror ebx, 2
xor ebp, ebx
mov ebx, ecx
rol ebx, 0xa
xor ebp, ebx
mov ebx, edx
xor ebx, ecx
and ebx, esi
add ebx, edi
add ebx, ebp
add ebx, eax
mov eax, dword [esp + 4]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
ror ebp, 7
mov eax, ebp
mov ebp, dword [esp + 4]
xor eax, edi
shr ebp, 3
xor eax, ebp
add eax, dword [esp + 0x38]
add eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x28]
shr edi, 0xa
xor edi, ebp
lea ebp, [eax + edi]
mov edi, dword [esp]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x38], ebp
xor eax, edi
and eax, dword [esp + 0xc]
xor eax, edi
mov edi, dword [esp + 0x30]
lea ebp, [edi + ebp + 0x53380d13]
add ebp, eax
mov eax, dword [esp + 0xc]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0xc]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0xc]
rol edi, 7
xor eax, edi
mov edi, ecx
add eax, ebp
and edi, ebx
add esi, eax
mov dword [esp + 0x20], esi
mov esi, ebx
ror esi, 0xd
mov ebp, esi
mov esi, ebx
ror esi, 2
xor ebp, esi
mov esi, ebx
rol esi, 0xa
xor ebp, esi
mov esi, ecx
xor esi, ebx
and esi, edx
add esi, edi
add esi, ebp
mov ebp, dword [esp + 0x3c]
add esi, eax
mov edi, ebp
mov eax, ebp
rol edi, 0xe
ror eax, 7
xor eax, edi
mov edi, ebp
shr edi, 3
xor eax, edi
mov edi, dword [esp + 0x34]
add eax, dword [esp + 4]
add eax, dword [esp + 8]
mov ebp, edi
rol edi, 0xf
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x34]
shr edi, 0xa
xor edi, ebp
lea ebp, [eax + edi]
mov edi, dword [esp + 0x2c]
mov eax, dword [esp + 0xc]
mov dword [esp + 0x54], ebp
xor eax, edi
and eax, dword [esp + 0x20]
xor eax, edi
mov edi, dword [esp]
lea ebp, [edi + ebp + 0x650a7354]
add ebp, eax
mov eax, dword [esp + 0x20]
ror eax, 0xb
mov edi, eax
mov eax, dword [esp + 0x20]
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x20]
rol edi, 7
xor eax, edi
mov edi, ebx
add eax, ebp
and edi, esi
add edx, eax
mov dword [esp], edx
mov edx, esi
ror edx, 0xd
mov ebp, edx
mov edx, esi
ror edx, 2
xor ebp, edx
mov edx, esi
rol edx, 0xa
xor ebp, edx
mov edx, ebx
xor edx, esi
and edx, ecx
add edx, edi
add edx, ebp
add edx, eax
mov eax, dword [esp + 0x40]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
ror eax, 7
xor edi, eax
mov eax, dword [esp + 0x38]
shr ebp, 3
xor edi, ebp
add edi, dword [esp + 0x3c]
add edi, dword [esp + 0x4c]
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
xor ebp, eax
mov eax, dword [esp + 0x38]
shr eax, 0xa
xor eax, ebp
lea ebp, [edi + eax]
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0x20]
mov dword [esp + 4], ebp
xor eax, edi
and eax, dword [esp]
xor eax, edi
mov edi, dword [esp + 0x2c]
lea ebp, [edi + ebp + 0x766a0abb]
add ebp, eax
mov eax, dword [esp]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp]
rol edi, 7
xor eax, edi
mov edi, esi
add eax, ebp
add ecx, eax
mov dword [esp + 0x2c], ecx
mov ecx, edx
ror ecx, 0xd
mov ebp, ecx
mov ecx, edx
ror ecx, 2
xor ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebp, ecx
mov ecx, esi
xor ecx, edx
and ecx, ebx
and edi, edx
add ecx, edi
add ecx, ebp
mov ebp, dword [esp + 0x44]
add ecx, eax
mov edi, ebp
mov eax, ebp
ror eax, 7
rol edi, 0xe
xor edi, eax
mov eax, ebp
shr eax, 3
xor edi, eax
mov eax, dword [esp + 0x54]
add edi, dword [esp + 0x40]
add edi, dword [esp + 0x24]
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
xor ebp, eax
mov eax, dword [esp + 0x54]
shr eax, 0xa
xor eax, ebp
lea ebp, [edi + eax]
mov edi, dword [esp + 0x20]
xor edi, dword [esp]
mov eax, dword [esp + 0x2c]
and eax, edi
mov edi, dword [esp + 0xc]
xor eax, dword [esp + 0x20]
mov dword [esp + 0xc], ebp
lea ebp, [edi + ebp - 0x7e3d36d2]
add ebp, eax
mov eax, dword [esp + 0x2c]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x2c]
rol edi, 7
xor eax, edi
mov edi, edx
add eax, ebp
add ebx, eax
mov dword [esp + 0x30], ebx
mov ebx, ecx
ror ebx, 0xd
mov ebp, ebx
mov ebx, ecx
ror ebx, 2
xor ebp, ebx
mov ebx, ecx
rol ebx, 0xa
xor ebp, ebx
mov ebx, edx
xor ebx, ecx
and edi, ecx
and ebx, esi
add ebx, edi
add ebx, ebp
add ebx, eax
mov eax, dword [esp + 0x18]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
mov eax, dword [esp + 4]
ror ebp, 7
xor edi, ebp
mov ebp, dword [esp + 0x18]
shr ebp, 3
xor edi, ebp
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
add edi, dword [esp + 0x44]
xor ebp, eax
mov eax, dword [esp + 4]
add edi, dword [esp + 0x50]
shr eax, 0xa
xor eax, ebp
mov ebp, dword [esp]
xor ebp, dword [esp + 0x2c]
add edi, eax
mov eax, dword [esp + 0x30]
and eax, ebp
mov ebp, dword [esp + 0x20]
xor eax, dword [esp]
mov dword [esp + 0x3c], edi
lea ebp, [ebp + edi - 0x6d8dd37b]
add ebp, eax
mov eax, dword [esp + 0x30]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x30]
rol edi, 7
xor eax, edi
mov edi, ecx
add eax, ebp
add esi, eax
mov dword [esp + 0x20], esi
mov esi, ebx
ror esi, 0xd
mov ebp, esi
mov esi, ebx
ror esi, 2
xor ebp, esi
mov esi, ebx
and edi, ebx
rol esi, 0xa
xor ebp, esi
mov esi, ecx
xor esi, ebx
and esi, edx
add esi, edi
add esi, ebp
mov ebp, dword [esp + 0x48]
add esi, eax
mov edi, ebp
mov eax, ebp
ror eax, 7
rol edi, 0xe
xor edi, eax
mov eax, ebp
shr eax, 3
xor edi, eax
mov eax, dword [esp + 0xc]
add edi, dword [esp + 0x18]
add edi, dword [esp + 0x28]
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
xor ebp, eax
mov eax, dword [esp + 0xc]
shr eax, 0xa
xor eax, ebp
lea ebp, [edi + eax]
mov edi, dword [esp + 0x2c]
xor edi, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
and eax, edi
mov edi, dword [esp]
xor eax, dword [esp + 0x2c]
mov dword [esp], ebp
lea ebp, [edi + ebp - 0x5d40175f]
add ebp, eax
mov eax, dword [esp + 0x20]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x20]
rol edi, 7
xor eax, edi
mov edi, ebx
add eax, ebp
add edx, eax
mov dword [esp + 0x18], edx
mov edx, esi
ror edx, 0xd
and edi, esi
mov ebp, edx
mov edx, esi
ror edx, 2
xor ebp, edx
mov edx, esi
rol edx, 0xa
xor ebp, edx
mov edx, ebx
xor edx, esi
and edx, ecx
add edx, edi
mov edi, dword [esp + 0x10]
add edx, ebp
add edx, eax
mov eax, dword [esp + 0x3c]
mov ebp, edi
ror edi, 7
rol ebp, 0xe
xor ebp, edi
mov edi, dword [esp + 0x10]
shr edi, 3
xor ebp, edi
mov edi, eax
rol eax, 0xf
rol edi, 0xd
add ebp, dword [esp + 0x48]
xor edi, eax
mov eax, dword [esp + 0x3c]
add ebp, dword [esp + 0x34]
shr eax, 0xa
xor eax, edi
lea edi, [ebp + eax]
mov ebp, dword [esp + 0x30]
xor ebp, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], edi
and eax, ebp
mov ebp, dword [esp + 0x2c]
xor eax, dword [esp + 0x30]
lea ebp, [ebp + edi - 0x57e599b5]
add ebp, eax
mov eax, dword [esp + 0x18]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x18]
rol edi, 7
xor eax, edi
mov edi, esi
add eax, ebp
and edi, edx
add ecx, eax
mov dword [esp + 0x2c], ecx
mov ecx, edx
ror ecx, 0xd
mov ebp, ecx
mov ecx, edx
ror ecx, 2
xor ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebp, ecx
mov ecx, esi
xor ecx, edx
and ecx, ebx
add ecx, edi
add ecx, ebp
add ecx, eax
mov eax, dword [esp + 0x14]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
mov eax, dword [esp]
ror ebp, 7
xor edi, ebp
mov ebp, dword [esp + 0x14]
shr ebp, 3
xor edi, ebp
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
add edi, dword [esp + 0x10]
xor eax, ebp
mov ebp, dword [esp]
add edi, dword [esp + 0x38]
shr ebp, 0xa
xor ebp, eax
mov eax, dword [esp + 0x2c]
add edi, ebp
mov ebp, dword [esp + 0x20]
xor ebp, dword [esp + 0x18]
and eax, ebp
mov ebp, dword [esp + 0x30]
xor eax, dword [esp + 0x20]
mov dword [esp + 0x30], edi
lea ebp, [ebp + edi - 0x3db47490]
add ebp, eax
mov eax, dword [esp + 0x2c]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x2c]
rol edi, 7
xor eax, edi
mov edi, edx
add eax, ebp
and edi, ecx
add ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, ecx
ror ebx, 0xd
mov ebp, ebx
mov ebx, ecx
ror ebx, 2
xor ebp, ebx
mov ebx, ecx
rol ebx, 0xa
xor ebp, ebx
mov ebx, edx
xor ebx, ecx
and ebx, esi
add ebx, edi
mov edi, dword [esp + 0x1c]
add ebx, ebp
add ebx, eax
mov eax, dword [esp + 0x40]
mov ebp, edi
ror edi, 7
rol ebp, 0xe
xor ebp, edi
mov edi, dword [esp + 0x1c]
shr edi, 3
xor ebp, edi
mov edi, eax
rol eax, 0xf
rol edi, 0xd
add ebp, dword [esp + 0x14]
xor edi, eax
mov eax, dword [esp + 0x40]
add ebp, dword [esp + 0x54]
shr eax, 0xa
xor eax, edi
lea edi, [ebp + eax]
mov ebp, dword [esp + 0x18]
xor ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
and eax, ebp
mov ebp, dword [esp + 0x20]
xor eax, dword [esp + 0x18]
mov dword [esp + 0x20], edi
lea ebp, [ebp + edi - 0x3893ae5d]
add ebp, eax
mov eax, dword [esp + 0x10]
mov edi, eax
ror edi, 0xb
ror eax, 6
xor eax, edi
mov edi, dword [esp + 0x10]
rol edi, 7
xor eax, edi
mov edi, ecx
add eax, ebp
and edi, ebx
add esi, eax
mov dword [esp + 0x14], esi
mov esi, ebx
ror esi, 0xd
mov ebp, esi
mov esi, ebx
ror esi, 2
xor ebp, esi
mov esi, ebx
rol esi, 0xa
xor ebp, esi
mov esi, ecx
xor esi, ebx
and esi, edx
add esi, edi
add esi, ebp
add esi, eax
mov eax, dword [esp + 8]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
ror ebp, 7
xor edi, ebp
mov ebp, dword [esp + 8]
shr ebp, 3
xor edi, ebp
add edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
add edi, dword [esp + 4]
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
xor ebp, eax
mov eax, dword [esp + 0x30]
shr eax, 0xa
xor eax, ebp
add edi, eax
mov eax, dword [esp + 0x2c]
mov ebp, edi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x1c], ebp
xor edi, eax
and edi, dword [esp + 0x14]
xor edi, eax
mov eax, dword [esp + 0x18]
lea eax, [eax + ebp - 0x2e6d17e7]
add edi, eax
mov eax, dword [esp + 0x14]
mov ebp, eax
ror eax, 6
ror ebp, 0xb
xor eax, ebp
mov ebp, dword [esp + 0x14]
rol ebp, 7
xor eax, ebp
add eax, edi
add edx, eax
mov dword [esp + 0x18], edx
mov edx, esi
ror edx, 0xd
mov ebp, edx
mov edx, esi
ror edx, 2
xor ebp, edx
mov edx, esi
rol edx, 0xa
xor ebp, edx
mov edx, ebx
xor edx, esi
mov edi, edx
mov edx, ebx
and edx, esi
and edi, ecx
add edi, edx
add edi, ebp
mov ebp, dword [esp + 0x4c]
add edi, eax
mov edx, ebp
mov eax, ebp
ror eax, 7
rol edx, 0xe
xor edx, eax
mov eax, ebp
shr eax, 3
xor edx, eax
mov eax, dword [esp + 0x20]
add edx, dword [esp + 8]
add edx, dword [esp + 0xc]
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
xor ebp, eax
mov eax, dword [esp + 0x20]
shr eax, 0xa
xor eax, ebp
mov ebp, dword [esp + 0x14]
add edx, eax
mov eax, dword [esp + 0x10]
xor ebp, eax
and ebp, dword [esp + 0x18]
xor ebp, eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x2c], edx
lea eax, [eax + edx - 0x2966f9dc]
add ebp, eax
mov eax, dword [esp + 0x18]
mov edx, eax
ror eax, 6
ror edx, 0xb
xor eax, edx
mov edx, dword [esp + 0x18]
rol edx, 7
xor eax, edx
add eax, ebp
lea edx, [ecx + eax]
mov ecx, edi
ror ecx, 0xd
mov dword [esp + 8], edx
mov edx, edi
ror edx, 2
xor ecx, edx
mov edx, edi
rol edx, 0xa
xor ecx, edx
mov edx, esi
xor edx, edi
mov ebp, edx
mov edx, esi
and edx, edi
and ebp, ebx
add ebp, edx
add ebp, ecx
mov ecx, dword [esp + 0x24]
add ebp, eax
mov eax, dword [esp + 0x1c]
mov edx, ecx
ror ecx, 7
rol edx, 0xe
xor edx, ecx
mov ecx, dword [esp + 0x24]
shr ecx, 3
xor edx, ecx
mov ecx, eax
add edx, dword [esp + 0x4c]
rol eax, 0xf
rol ecx, 0xd
add edx, dword [esp + 0x3c]
xor ecx, eax
mov eax, dword [esp + 0x1c]
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x14]
xor ecx, dword [esp + 0x18]
add edx, eax
mov eax, dword [esp + 8]
mov dword [esp + 0x44], edx
and eax, ecx
mov ecx, dword [esp + 0x10]
xor eax, dword [esp + 0x14]
lea ecx, [ecx + edx - 0xbf1ca7b]
add ecx, eax
mov eax, dword [esp + 8]
mov edx, eax
ror eax, 6
ror edx, 0xb
xor eax, edx
mov edx, dword [esp + 8]
rol edx, 7
xor eax, edx
mov edx, edi
add eax, ecx
and edx, ebp
add ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, ebp
ror ebx, 0xd
mov ecx, ebx
mov ebx, ebp
ror ebx, 2
xor ecx, ebx
mov ebx, ebp
rol ebx, 0xa
xor ecx, ebx
mov ebx, edi
xor ebx, ebp
and ebx, esi
add ebx, edx
add ebx, ecx
mov ecx, dword [esp + 0x50]
add ebx, eax
mov edx, ecx
mov eax, ecx
ror eax, 7
rol edx, 0xe
xor edx, eax
mov eax, ecx
shr eax, 3
xor edx, eax
mov eax, dword [esp + 0x2c]
add edx, dword [esp + 0x24]
add edx, dword [esp]
mov ecx, eax
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
mov eax, dword [esp + 0x2c]
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x18]
xor ecx, dword [esp + 8]
add edx, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x24], edx
and eax, ecx
mov ecx, dword [esp + 0x14]
xor eax, dword [esp + 0x18]
lea ecx, [ecx + edx + 0x106aa070]
add ecx, eax
mov eax, dword [esp + 0x10]
mov edx, eax
ror eax, 6
ror edx, 0xb
xor eax, edx
mov edx, dword [esp + 0x10]
rol edx, 7
xor eax, edx
mov edx, ebp
add eax, ecx
and edx, ebx
add esi, eax
mov dword [esp + 0x14], esi
mov esi, ebx
ror esi, 0xd
mov ecx, esi
mov esi, ebx
ror esi, 2
xor ecx, esi
mov esi, ebx
rol esi, 0xa
xor ecx, esi
mov esi, ebp
xor esi, ebx
and esi, edi
add esi, edx
add esi, ecx
mov ecx, dword [esp + 0x28]
add esi, eax
mov edx, ecx
ror ecx, 7
rol edx, 0xe
mov eax, ecx
xor eax, edx
mov edx, dword [esp + 0x28]
shr edx, 3
xor eax, edx
mov edx, dword [esp + 0x44]
add eax, dword [esp + 0x50]
add eax, dword [esp + 0x40]
rol edx, 0xd
mov ecx, edx
mov edx, dword [esp + 0x44]
rol edx, 0xf
xor ecx, edx
mov edx, dword [esp + 0x44]
shr edx, 0xa
xor edx, ecx
add edx, eax
mov eax, dword [esp + 8]
mov ecx, edx
mov edx, dword [esp + 0x10]
xor edx, eax
and edx, dword [esp + 0x14]
xor edx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x48], ecx
lea eax, [eax + ecx + 0x19a4c116]
add edx, eax
mov eax, dword [esp + 0x14]
mov ecx, eax
ror eax, 6
ror ecx, 0xb
xor eax, ecx
mov ecx, dword [esp + 0x14]
rol ecx, 7
xor eax, ecx
mov ecx, esi
add eax, edx
ror ecx, 0xd
lea edx, [edi + eax]
mov edi, ecx
mov ecx, ebx
and ecx, esi
mov dword [esp + 0x18], edx
mov edx, esi
ror edx, 2
xor edi, edx
mov edx, esi
rol edx, 0xa
xor edi, edx
mov edx, ebx
xor edx, esi
and edx, ebp
add edx, ecx
add edx, edi
mov edi, dword [esp + 0x34]
add edx, eax
mov ecx, edi
mov eax, edi
rol ecx, 0xe
ror eax, 7
xor eax, ecx
mov ecx, edi
shr ecx, 3
xor eax, ecx
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x28]
add eax, dword [esp + 0x30]
rol ecx, 0xd
mov edi, ecx
mov ecx, dword [esp + 0x24]
rol ecx, 0xf
xor edi, ecx
mov ecx, dword [esp + 0x24]
shr ecx, 0xa
xor ecx, edi
lea edi, [eax + ecx]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
xor ecx, edi
and ecx, dword [esp + 0x18]
xor ecx, edi
mov edi, dword [esp + 8]
lea eax, [edi + eax + 0x1e376c08]
add ecx, eax
mov eax, dword [esp + 0x18]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x18]
rol edi, 7
xor eax, edi
mov edi, esi
add eax, ecx
mov ecx, edx
and edi, edx
add ebp, eax
ror ecx, 0xd
mov dword [esp + 8], ebp
mov ebp, ecx
mov ecx, edx
ror ecx, 2
xor ebp, ecx
mov ecx, edx
rol ecx, 0xa
xor ebp, ecx
mov ecx, esi
xor ecx, edx
and ecx, ebx
add ecx, edi
mov edi, dword [esp + 0x38]
add ecx, ebp
add ecx, eax
mov ebp, edi
mov eax, edi
rol ebp, 0xe
ror eax, 7
xor eax, ebp
mov ebp, edi
mov edi, dword [esp + 0x48]
shr ebp, 3
xor eax, ebp
add eax, dword [esp + 0x34]
mov ebp, edi
rol edi, 0xf
add eax, dword [esp + 0x20]
rol ebp, 0xd
xor ebp, edi
mov edi, dword [esp + 0x48]
shr edi, 0xa
xor edi, ebp
lea ebp, [eax + edi]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 8]
mov dword [esp + 0x34], ebp
mov ebp, dword [esp + 0x18]
xor ebp, edi
and eax, ebp
mov ebp, dword [esp + 0x10]
xor eax, edi
mov edi, dword [esp + 0x34]
lea ebp, [ebp + edi + 0x2748774c]
add ebp, eax
mov eax, dword [esp + 8]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 8]
rol edi, 7
xor eax, edi
mov edi, edx
add eax, ebp
and edi, ecx
add ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, ecx
ror ebx, 0xd
mov ebp, ebx
mov ebx, ecx
ror ebx, 2
xor ebp, ebx
mov ebx, ecx
rol ebx, 0xa
xor ebp, ebx
mov ebx, edx
xor ebx, ecx
and ebx, esi
add ebx, edi
add ebx, ebp
add ebx, eax
mov eax, dword [esp + 0x54]
mov ebp, eax
rol ebp, 0xe
mov edi, ebp
mov ebp, eax
ror eax, 7
xor edi, eax
mov eax, ebp
shr eax, 3
xor edi, eax
mov eax, dword [esp + 0x28]
add edi, dword [esp + 0x38]
add edi, dword [esp + 0x1c]
mov ebp, eax
rol eax, 0xf
rol ebp, 0xd
xor eax, ebp
mov ebp, dword [esp + 0x28]
shr ebp, 0xa
xor ebp, eax
mov eax, dword [esp + 0x10]
add ebp, edi
mov edi, dword [esp + 8]
mov dword [esp + 0x38], ebp
mov ebp, dword [esp + 0x18]
xor edi, ebp
and eax, edi
mov edi, dword [esp + 0x38]
xor eax, ebp
mov ebp, dword [esp + 0x14]
lea ebp, [ebp + edi + 0x34b0bcb5]
add ebp, eax
mov eax, dword [esp + 0x10]
mov edi, eax
ror eax, 6
ror edi, 0xb
xor eax, edi
mov edi, dword [esp + 0x10]
rol edi, 7
xor eax, edi
mov edi, ecx
add eax, ebp
add esi, eax
mov dword [esp + 0x14], esi
mov esi, ebx
ror esi, 0xd
mov ebp, esi
mov esi, ebx
ror esi, 2
xor ebp, esi
mov esi, ebx
rol esi, 0xa
xor ebp, esi
mov esi, ecx
xor esi, ebx
and edi, ebx
and esi, edx
add esi, edi
mov edi, dword [esp + 4]
add esi, ebp
add esi, eax
mov eax, dword [esp + 0x34]
mov ebp, edi
ror edi, 7
rol ebp, 0xe
xor ebp, edi
mov edi, dword [esp + 4]
rol eax, 0xd
shr edi, 3
xor ebp, edi
mov edi, eax
mov eax, dword [esp + 0x34]
add ebp, dword [esp + 0x54]
add ebp, dword [esp + 0x2c]
rol eax, 0xf
xor edi, eax
mov eax, dword [esp + 0x34]
shr eax, 0xa
xor eax, edi
mov edi, dword [esp + 0x14]
add ebp, eax
mov eax, dword [esp + 8]
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x10]
xor ebp, eax
and edi, ebp
mov ebp, dword [esp + 0x18]
xor edi, eax
mov eax, dword [esp + 0x4c]
lea eax, [ebp + eax + 0x391c0cb3]
add edi, eax
mov eax, dword [esp + 0x14]
mov ebp, eax
ror eax, 6
ror ebp, 0xb
xor eax, ebp
mov ebp, dword [esp + 0x14]
rol ebp, 7
xor eax, ebp
add eax, edi
add edx, eax
mov dword [esp + 0x18], edx
mov edx, esi
ror edx, 0xd
mov ebp, edx
mov edx, esi
ror edx, 2
xor ebp, edx
mov edx, esi
rol edx, 0xa
xor ebp, edx
mov edx, ebx
xor edx, esi
mov edi, edx
mov edx, ebx
and edx, esi
and edi, ecx
add edi, edx
add edi, ebp
mov ebp, dword [esp + 0xc]
add edi, eax
mov edx, ebp
ror ebp, 7
rol edx, 0xe
mov eax, ebp
xor eax, edx
mov edx, dword [esp + 0xc]
shr edx, 3
xor eax, edx
mov edx, dword [esp + 0x38]
add eax, dword [esp + 4]
add eax, dword [esp + 0x44]
rol edx, 0xd
mov ebp, edx
mov edx, dword [esp + 0x38]
rol edx, 0xf
xor edx, ebp
mov ebp, dword [esp + 0x38]
shr ebp, 0xa
xor ebp, edx
lea edx, [eax + ebp]
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x14]
xor edx, ebp
and eax, edx
mov edx, dword [esp + 0x50]
xor eax, ebp
mov ebp, dword [esp + 8]
lea edx, [ebp + edx + 0x4ed8aa4a]
add eax, edx
mov edx, dword [esp + 0x18]
ror edx, 0xb
mov ebp, edx
mov edx, dword [esp + 0x18]
ror edx, 6
xor edx, ebp
mov ebp, dword [esp + 0x18]
rol ebp, 7
xor edx, ebp
add edx, eax
add ecx, edx
mov dword [esp + 4], ecx
mov ecx, edi
ror ecx, 0xd
mov ebp, ecx
mov ecx, edi
ror ecx, 2
xor ebp, ecx
mov ecx, edi
rol ecx, 0xa
xor ebp, ecx
mov ecx, esi
xor ecx, edi
mov eax, ecx
mov ecx, esi
and ecx, edi
and eax, ebx
add eax, ecx
add eax, ebp
mov ebp, dword [esp + 0x3c]
add eax, edx
mov ecx, ebp
mov edx, ebp
rol ecx, 0xe
ror edx, 7
xor edx, ecx
mov ecx, ebp
shr ecx, 3
xor edx, ecx
mov ecx, dword [esp + 0x4c]
add edx, dword [esp + 0xc]
add edx, dword [esp + 0x24]
rol ecx, 0xd
mov ebp, ecx
mov ecx, dword [esp + 0x4c]
rol ecx, 0xf
xor ebp, ecx
mov ecx, dword [esp + 0x4c]
shr ecx, 0xa
xor ecx, ebp
mov ebp, dword [esp + 0x14]
add edx, ecx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x54]
xor edx, ebp
and edx, dword [esp + 4]
xor edx, ebp
mov ebp, dword [esp + 0x10]
lea ecx, [ebp + ecx + 0x5b9cca4f]
add edx, ecx
mov ecx, dword [esp + 4]
mov ebp, ecx
ror ecx, 6
ror ebp, 0xb
xor ecx, ebp
mov ebp, dword [esp + 4]
rol ebp, 7
xor ecx, ebp
add ecx, edx
lea edx, [ebx + ecx]
mov ebx, eax
ror ebx, 0xd
mov ebp, ebx
mov ebx, eax
mov dword [esp + 8], edx
ror ebx, 2
xor ebp, ebx
mov ebx, eax
rol ebx, 0xa
xor ebp, ebx
mov ebx, edi
xor ebx, eax
mov edx, ebx
mov ebx, edi
and ebx, eax
and edx, esi
add edx, ebx
mov ebx, dword [esp]
add edx, ebp
add edx, ecx
mov ecx, dword [esp + 0x50]
mov ebp, ebx
ror ebx, 7
rol ebp, 0xe
xor ebp, ebx
mov ebx, dword [esp]
shr ebx, 3
xor ebp, ebx
mov ebx, ecx
rol ecx, 0xf
rol ebx, 0xd
add ebp, dword [esp + 0x3c]
xor ebx, ecx
mov ecx, dword [esp + 0x50]
add ebp, dword [esp + 0x48]
shr ecx, 0xa
xor ecx, ebx
lea ebx, [ebp + ecx]
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 4]
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 8]
xor ebp, ecx
and ebx, ebp
mov ebp, dword [esp + 0x14]
xor ebx, ecx
mov ecx, dword [esp + 0x3c]
lea ecx, [ebp + ecx + 0x682e6ff3]
add ebx, ecx
mov ecx, dword [esp + 8]
mov ebp, ecx
ror ecx, 6
ror ebp, 0xb
xor ecx, ebp
mov ebp, dword [esp + 8]
rol ebp, 7
xor ecx, ebp
add ecx, ebx
mov ebx, edx
ror ebx, 0xd
add esi, ecx
mov ebp, ebx
mov ebx, edx
mov dword [esp + 0xc], esi
ror ebx, 2
mov esi, eax
xor ebp, ebx
mov ebx, edx
and esi, edx
rol ebx, 0xa
xor ebp, ebx
mov ebx, eax
xor ebx, edx
and ebx, edi
add ebx, esi
mov esi, dword [esp + 0x40]
add ebx, ebp
add ebx, ecx
mov ebp, esi
mov ecx, esi
shr esi, 3
ror ecx, 7
rol ebp, 0xe
xor ebp, ecx
mov ecx, dword [esp + 0x54]
xor ebp, esi
add ebp, dword [esp]
add ebp, dword [esp + 0x28]
mov esi, ecx
rol ecx, 0xf
rol esi, 0xd
xor ecx, esi
mov esi, dword [esp + 0x54]
shr esi, 0xa
xor esi, ecx
mov ecx, dword [esp + 0xc]
add ebp, esi
mov esi, dword [esp + 4]
mov dword [esp + 0x28], ebp
mov ebp, dword [esp + 8]
xor ebp, esi
and ecx, ebp
mov ebp, dword [esp + 0x18]
xor ecx, esi
mov esi, dword [esp + 0x28]
lea ebp, [ebp + esi + 0x748f82ee]
add ebp, ecx
mov ecx, dword [esp + 0xc]
mov esi, ecx
ror esi, 0xb
ror ecx, 6
xor ecx, esi
mov esi, dword [esp + 0xc]
rol esi, 7
xor ecx, esi
mov esi, edx
add ecx, ebp
and esi, ebx
lea ebp, [edi + ecx]
mov edi, ebx
ror edi, 2
mov dword [esp + 0x10], ebp
mov ebp, ebx
ror ebp, 0xd
xor edi, ebp
mov ebp, ebx
rol ebp, 0xa
xor edi, ebp
mov ebp, edx
xor ebp, ebx
and ebp, eax
add esi, ebp
add esi, edi
mov edi, dword [esp + 0x30]
lea ebp, [esi + ecx]
mov ecx, edi
mov dword [esp], ebp
mov ebp, edi
rol ecx, 0xe
ror ebp, 7
xor ebp, ecx
mov ecx, edi
shr ecx, 3
xor ebp, ecx
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x34]
lea edi, [ebp + ecx]
mov ecx, dword [esp + 0x10]
lea ebp, [edi + esi]
mov esi, dword [esp + 0x3c]
mov edi, esi
rol esi, 0xd
rol edi, 0xf
xor edi, esi
mov esi, dword [esp + 0x3c]
shr esi, 0xa
xor edi, esi
mov esi, dword [esp + 0xc]
add edi, ebp
mov ebp, dword [esp + 8]
xor esi, ebp
and ecx, esi
xor ecx, ebp
mov ebp, dword [esp + 4]
lea ebp, [ebp + edi + 0x78a5636f]
add ebp, ecx
mov ecx, dword [esp + 0x10]
mov esi, ecx
ror esi, 6
ror ecx, 0xb
xor ecx, esi
mov esi, dword [esp + 0x10]
rol esi, 7
xor ecx, esi
add ecx, ebp
lea ebp, [eax + ecx]
mov eax, dword [esp]
mov dword [esp + 4], ebp
mov ebp, eax
ror ebp, 2
mov esi, ebp
mov ebp, eax
mov eax, dword [esp]
ror ebp, 0xd
xor esi, ebp
mov ebp, dword [esp]
rol ebp, 0xa
xor esi, ebp
mov ebp, eax
and eax, ebx
xor ebp, ebx
and ebp, edx
add eax, ebp
add eax, esi
lea ebp, [eax + ecx]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x14], ebp
mov ebp, ecx
ror ebp, 7
mov esi, ebp
mov ebp, ecx
rol ebp, 0xe
mov eax, ebp
mov ebp, ecx
mov ecx, dword [esp + 0x30]
shr ebp, 3
xor eax, esi
mov esi, ebp
mov ebp, dword [esp + 0x38]
xor esi, eax
lea eax, [esi + ecx]
lea ecx, [eax + ebp]
mov eax, dword [esp + 0x28]
mov ebp, eax
rol ebp, 0xf
mov esi, ebp
mov ebp, eax
rol eax, 0xd
xor eax, esi
shr ebp, 0xa
mov esi, dword [esp + 8]
xor eax, ebp
mov ebp, dword [esp + 0xc]
add eax, ecx
mov ecx, dword [esp + 0x10]
lea esi, [esi + eax - 0x7b3787ec]
xor ecx, ebp
and ecx, dword [esp + 4]
xor ecx, ebp
add esi, ecx
mov ecx, dword [esp + 4]
mov ebp, ecx
ror ecx, 0xb
ror ebp, 6
xor ecx, ebp
mov ebp, dword [esp + 4]
rol ebp, 7
xor ecx, ebp
add ecx, esi
mov esi, dword [esp + 0x14]
add edx, ecx
mov dword [esp + 8], edx
mov edx, esi
ror edx, 2
mov ebp, edx
mov edx, esi
ror edx, 0xd
xor ebp, edx
mov edx, esi
rol edx, 0xa
xor ebp, edx
mov edx, dword [esp]
xor edx, dword [esp + 0x14]
mov esi, edx
mov edx, dword [esp]
and edx, dword [esp + 0x14]
and esi, ebx
add edx, esi
lea esi, [ebp + edx]
lea ebp, [esi + ecx]
mov esi, dword [esp + 0x1c]
mov edx, esi
ror edx, 7
mov ecx, edx
mov edx, esi
rol edx, 0xe
xor edx, ecx
mov ecx, esi
mov esi, edi
shr ecx, 3
rol esi, 0xf
xor edx, ecx
add edx, dword [esp + 0x20]
mov ecx, edi
add edx, dword [esp + 0x4c]
rol ecx, 0xd
shr edi, 0xa
xor ecx, esi
mov esi, dword [esp + 4]
xor edi, ecx
mov ecx, dword [esp + 0x10]
add edi, edx
mov edx, dword [esp + 8]
xor esi, ecx
and edx, esi
xor edx, ecx
mov ecx, dword [esp + 0xc]
lea esi, [ecx + edi - 0x7338fdf8]
add esi, edx
mov edx, dword [esp + 8]
mov ecx, edx
ror ecx, 6
ror edx, 0xb
xor edx, ecx
mov ecx, dword [esp + 8]
rol ecx, 7
xor edx, ecx
mov ecx, ebp
add edx, esi
ror ecx, 0xd
add ebx, edx
mov dword [esp + 0xc], ebx
mov ebx, ebp
ror ebx, 2
xor ebx, ecx
mov ecx, ebp
rol ecx, 0xa
xor ebx, ecx
mov ecx, dword [esp + 0x14]
mov esi, ecx
and ecx, ebp
xor esi, ebp
and esi, dword [esp]
add ecx, esi
add ecx, ebx
lea ebx, [ecx + edx]
mov ecx, dword [esp + 0x2c]
mov esi, ecx
mov edx, ecx
shr ecx, 3
rol edx, 0xe
ror esi, 7
xor esi, edx
mov edx, dword [esp + 0x1c]
xor ecx, esi
lea esi, [ecx + edx]
mov edx, dword [esp + 0x50]
mov ecx, eax
rol ecx, 0xd
add edx, esi
mov esi, eax
shr eax, 0xa
rol esi, 0xf
xor ecx, esi
xor ecx, eax
mov eax, dword [esp + 8]
lea esi, [edx + ecx]
mov edx, dword [esp + 4]
xor eax, edx
and eax, dword [esp + 0xc]
xor eax, edx
mov edx, dword [esp + 0x10]
lea ecx, [edx + esi - 0x6f410006]
add ecx, eax
mov eax, dword [esp + 0xc]
ror eax, 6
mov edx, eax
mov eax, dword [esp + 0xc]
ror eax, 0xb
xor eax, edx
mov edx, dword [esp + 0xc]
rol edx, 7
xor eax, edx
mov edx, dword [esp]
add eax, ecx
mov ecx, ebx
ror ecx, 2
add edx, eax
mov dword [esp + 0x10], edx
mov edx, ebx
ror edx, 0xd
xor ecx, edx
mov edx, ebx
rol edx, 0xa
xor ecx, edx
mov edx, ebx
xor ebx, ebp
and ebx, dword [esp + 0x14]
mov dword [esp + 0x18], edx
and edx, ebp
add edx, ebx
add edx, ecx
mov ecx, dword [esp + 0x44]
add eax, edx
mov dword [esp], eax
mov ebx, ecx
ror ebx, 7
mov edx, ebx
mov ebx, ecx
rol ebx, 0xe
mov eax, ebx
mov ebx, ecx
mov ecx, edi
xor eax, edx
shr ebx, 3
rol ecx, 0xf
xor eax, ebx
mov ebx, edi
add eax, dword [esp + 0x2c]
add eax, dword [esp + 0x54]
rol ebx, 0xd
shr edi, 0xa
mov edx, ebx
xor edx, ecx
mov ecx, dword [esp + 8]
xor edx, edi
lea edi, [eax + edx]
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 4]
xor edx, ecx
and edx, eax
xor edx, ecx
mov ecx, dword [esp + 0x1c]
lea ebx, [edi + ecx - 0x5baf9315]
mov ecx, eax
mov edi, dword [esp + 0x18]
add ebx, edx
mov edx, eax
ror eax, 0xb
ror edx, 6
rol ecx, 7
xor edx, eax
xor edx, ecx
mov ecx, dword [esp + 0x14]
add edx, ebx
lea eax, [ecx + edx]
mov dword [esp + 4], eax
mov eax, dword [esp]
mov ecx, eax
ror ecx, 2
mov ebx, ecx
mov ecx, eax
ror eax, 0xd
xor ebx, eax
mov eax, ecx
mov ecx, dword [esp]
rol eax, 0xa
xor ebx, eax
xor ecx, edi
mov eax, ecx
mov ecx, dword [esp]
and eax, ebp
and ecx, edi
mov edi, dword [esp + 4]
add eax, ecx
add eax, ebx
mov ebx, dword [esp + 0x24]
add eax, edx
mov edx, ebx
ror edx, 7
mov ecx, edx
mov edx, ebx
rol edx, 0xe
xor ecx, edx
mov edx, ebx
mov ebx, dword [esp + 0x44]
shr edx, 3
xor edx, ecx
mov ecx, esi
lea ebx, [ebx + edx - 0x41065c09]
mov edx, esi
add ebx, dword [esp + 0x3c]
rol ecx, 0xf
rol edx, 0xd
shr esi, 0xa
xor edx, ecx
xor edx, esi
add edx, ebx
mov ebx, dword [esp + 8]
lea esi, [edx + ebx]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
xor ebx, edx
and ebx, edi
xor ebx, edx
mov edx, edi
add ebx, esi
mov esi, edi
ror edx, 0xb
ror esi, 6
mov ecx, esi
mov esi, edi
xor ecx, edx
rol esi, 7
xor ecx, esi
add ecx, ebx
mov ebx, eax
lea esi, [ebp + ecx]
mov ebp, dword [esp]
ror ebx, 2
mov edi, ebx
mov ebx, eax
ror ebx, 0xd
mov edx, ebp
xor edi, ebx
and ebp, eax
xor edx, eax
and edx, dword [esp + 0x18]
mov ebx, eax
rol ebx, 0xa
xor edi, ebx
add edx, ebp
mov ebp, dword [esp + 0x48]
add edx, edi
add edx, ecx
mov ebx, ebp
mov ecx, ebp
rol ecx, 0xe
ror ebx, 7
xor ebx, ecx
mov ecx, ebp
mov ebp, dword [esp + 0x24]
shr ecx, 3
xor ecx, ebx
lea ecx, [ebp + ecx - 0x398e870e]
mov ebp, dword [esp + 0x1c]
add ecx, dword [esp + 0x28]
mov ebx, ebp
rol ebx, 0xf
mov edi, ebx
mov ebx, ebp
shr ebp, 0xa
rol ebx, 0xd
xor ebx, edi
xor ebx, ebp
add ebx, ecx
mov ecx, dword [esp + 0xc]
lea ebp, [ebx + ecx]
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 4]
xor ebx, ecx
and ebx, esi
xor ebx, ecx
lea ecx, [ebp + ebx]
mov ebx, esi
mov ebp, esi
ror ebx, 6
rol ebp, 7
mov edi, ebx
mov ebx, esi
ror ebx, 0xb
xor ebx, edi
xor ebx, ebp
mov ebp, eax
add ebx, ecx
mov ecx, edx
xor ebp, edx
ror ecx, 2
and ebp, dword [esp]
mov edi, ecx
mov ecx, edx
ror ecx, 0xd
xor edi, ecx
mov ecx, edx
rol ecx, 0xa
xor edi, ecx
mov ecx, eax
add eax, dword [esp + 0x64]
and ecx, edx
add ecx, dword [esp + 0x60]
add edx, dword [esp + 0x58]
add ecx, ebp
add ecx, edi
mov edi, dword [esp + 0x80]
add ecx, ebx
mov dword [edi + 0xa0], ecx
mov dword [edi + 0xa4], edx
mov dword [edi + 0xa8], eax
mov eax, dword [esp + 0x70]
add eax, dword [esp]
mov ecx, dword [esp + 0x5c]
add ecx, dword [esp + 0x18]
add esi, dword [esp + 0x7c]
mov dword [edi + 0xac], eax
mov eax, dword [esp + 0x68]
add eax, dword [esp + 4]
add ecx, ebx
mov dword [edi + 0xb4], esi
mov dword [edi + 0xb0], ecx
mov dword [edi + 0xb8], eax
mov eax, dword [esp + 0x74]
add eax, dword [esp + 0x10]
mov dword [edi + 0xbc], eax
add esp, 0x84
mov eax, 0x88
pop ebx
pop esi
pop edi
pop ebp
ret