Function at 0x40fcb0
Capabilities:
Encode data using xor
Hash data using murmur3

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