Function at 0x4276e0
Capabilities:
Hash data using murmur3

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