Function at 0x511dc0
Capabilities:
Encode data using xor
Hash data using murmur3
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xd4
movzx eax, byte [0x5a1028]
mov esi, ecx
mov ecx, dword [esp + 0xe8]
mov ebp, edx
cmp al, 0xff
je 0x511ded
cmp al, 1
je 0x511e8b
jmp 0x511eb0
lea ecx, [esp + 0xb4]
call fcn.00514720
lea ecx, [esp + 0xc4]
call fcn.00514740
mov ebx, dword [esp + 0xbc]
mov eax, ebx
not eax
test eax, 0xc000000
jne 0x511ea2
call fcn.0040cfa0
mov edi, dword [esp + 0xc8]
mov dword [esp + 0x3c], ebp
mov ebp, eax
shr edi, 0x1d
call fcn.0040cfa0
mov dword [esp + 0x84], esi
mov esi, eax
mov eax, dword [esp + 0xc0]
and esi, ebp
mov ebp, dword [esp + 0x3c]
shr esi, 1
and esi, edi
shr eax, 0x1a
and esi, eax
call fcn.0040cfa0
mov edi, ebx
shr eax, 1
shr edi, 9
and edi, eax
call fcn.0040cfa0
and eax, 2
shr ebx, 0x13
mov ecx, dword [esp + 0xe8]
shr eax, 1
and ebx, eax
and ebx, edi
and ebx, esi
mov esi, dword [esp + 0x84]
mov byte [0x5a1028], bl
je 0x511eb0
mov eax, ecx
mov ecx, esi
mov edx, ebp
push eax
call fcn.00514760
add esp, 0xd8
jmp 0x514712
mov ecx, dword [esp + 0xe8]
mov byte [0x5a1028], 0
mov eax, dword [esi]
mov edx, dword [esi + 0xc]
shl ecx, 6
mov dword [esp + 0x3c], ebp
mov ebx, dword [esi + 0x14]
mov edi, dword [esi + 0x18]
mov dword [esp + 0x84], esi
add ecx, ebp
mov ebp, ecx
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x98], ebp
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 4]
mov dword [esp + 8], edx
mov edx, dword [esi + 0x10]
mov dword [esp + 4], ecx
mov dword [esp], eax
mov eax, dword [esi + 8]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x68], edx
nop word [eax + eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x68]
mov ebp, dword [esp + 4]
mov dword [esp + 0x94], edi
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], eax
mov dword [esp + 0x7c], esi
rol ecx, 0x1a
rol edx, 0x15
mov dword [esp + 0xb0], ebp
xor edx, ecx
mov ecx, dword [esp + 0x68]
rol ecx, 7
xor ecx, edx
mov edx, edi
xor edx, ebx
add ecx, ebp
mov ebx, esi
mov ebp, dword [esp + 0x3c]
and edx, dword [esp + 0x68]
rol ebx, 0xa
mov dword [esp + 0x3c], ebp
xor edx, edi
mov edi, esi
add ecx, edx
mov edx, esi
rol edi, 0x13
rol edx, 0x1e
xor edi, edx
mov edx, eax
xor ebx, edi
mov edi, dword [esp]
xor eax, edi
mov dword [esp + 0x88], edi
and edx, edi
mov edi, dword [ebp]
and eax, esi
xor edx, eax
add edx, ebx
bswap edi
mov ebx, edx
lea eax, [edi + ecx + 0x428a2f98]
add ecx, edi
mov dword [esp + 0x54], edi
add ebx, eax
mov eax, dword [esp + 8]
lea edx, [eax + ecx + 0x428a2f98]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x8c]
mov ecx, edx
mov esi, edx
mov edi, edx
mov dword [esp + 0x14], edx
rol ecx, 0x1a
rol esi, 0x15
rol edi, 7
xor esi, ecx
mov ecx, dword [ebp + 4]
xor edi, esi
mov esi, eax
xor esi, dword [esp + 0x68]
bswap ecx
mov dword [esp + 0x58], ecx
and esi, edx
mov edx, dword [esp + 0x7c]
xor esi, eax
mov eax, dword [esp + 0x94]
add ecx, eax
add esi, ecx
mov ecx, dword [esp + 0x88]
lea eax, [esi + edi]
mov dword [esp], eax
lea eax, [edi + esi + 0x71374491]
mov edi, ebx
mov esi, ebx
rol ebx, 0x13
rol edi, 0x1e
mov dword [esp + 4], eax
mov eax, dword [esp + 0x90]
mov ebp, ecx
xor ecx, edx
xor ebx, edi
mov edi, esi
rol edi, 0xa
and ebp, edx
and ecx, esi
mov edx, esi
xor edi, ebx
xor ecx, ebp
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0xc], edx
add ecx, edi
add ecx, dword [esp + 4]
mov ebp, ecx
mov ecx, dword [esp]
lea eax, [eax + ecx + 0x71374491]
mov ecx, eax
mov esi, eax
mov edi, eax
mov dword [esp], eax
rol ecx, 0x1a
rol esi, 0x15
rol edi, 7
xor esi, ecx
mov ecx, dword [ebx + 8]
xor edi, esi
mov esi, dword [esp + 0x14]
bswap ecx
xor esi, dword [esp + 0x68]
mov dword [esp + 0x20], ecx
and esi, eax
mov eax, dword [esp + 0x8c]
xor esi, dword [esp + 0x68]
add ecx, eax
add esi, ecx
mov ecx, edx
lea eax, [esi + edi]
lea esi, [edi + esi - 0x4a3f0431]
mov edi, ebp
mov dword [esp + 8], eax
mov eax, ebp
rol edi, 0x1e
rol ebp, 0x13
xor ebp, edi
mov edi, eax
mov dword [esp + 4], eax
rol edi, 0xa
xor edi, ebp
mov ebp, edx
mov edx, dword [esp + 0x7c]
xor ebp, edx
and ecx, edx
mov edx, dword [esp + 0x14]
and ebp, eax
mov eax, dword [esp + 0x88]
xor ecx, ebp
add ecx, edi
add ecx, esi
mov ebp, ecx
mov ecx, dword [esp + 8]
lea eax, [eax + ecx - 0x4a3f0431]
mov ecx, eax
mov esi, eax
mov edi, eax
mov dword [esp + 8], eax
rol ecx, 0x1a
rol esi, 0x15
rol edi, 7
xor esi, ecx
mov ecx, dword [ebx + 0xc]
mov ebx, dword [esp + 4]
xor edi, esi
mov esi, dword [esp]
bswap ecx
xor esi, edx
mov dword [esp + 0x4c], ecx
and esi, eax
mov eax, dword [esp + 0x68]
xor esi, edx
mov edx, ebp
mov dword [esp + 0x10], edx
add ecx, eax
add esi, ecx
mov ecx, ebx
lea eax, [esi + edi]
lea edi, [edi + esi - 0x164a245b]
mov esi, ebp
rol ebp, 0x13
rol esi, 0x1e
mov dword [esp + 0x18], eax
mov eax, edx
xor ebp, esi
mov esi, dword [esp + 0xc]
rol eax, 0xa
xor eax, ebp
xor ebx, esi
and ecx, esi
mov esi, dword [esp]
and ebx, edx
xor ebx, ecx
mov ecx, dword [esp + 0x18]
add ebx, eax
mov eax, dword [esp + 0x7c]
add ebx, edi
mov ebp, ebx
mov dword [esp + 0x1c], ebx
rol ebp, 0x13
lea edi, [eax + ecx - 0x164a245b]
mov eax, edi
mov ecx, edi
mov dword [esp + 0x18], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x3c]
mov edx, dword [ecx + 0x10]
mov ecx, dword [esp + 8]
xor ecx, esi
bswap edx
and ecx, edi
mov edi, dword [esp + 0x14]
mov dword [esp + 0x5c], edx
xor ecx, esi
add edi, edx
mov edx, dword [esp + 4]
add edi, ecx
mov ecx, ebx
lea esi, [eax + edi + 0x3956c25b]
mov edi, ebx
rol ecx, 0x1e
xor ebp, ecx
rol edi, 0xa
xor edi, ebp
mov ebp, dword [esp + 0x10]
mov ecx, ebp
and ebp, edx
xor ecx, edx
mov edx, dword [esp + 0xc]
and ecx, ebx
xor ebp, ecx
add ebp, edi
mov edi, dword [esp + 0x18]
add edx, esi
add ebp, esi
mov eax, edx
mov ecx, edx
mov ebx, edx
mov dword [esp + 0xc], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + 0x14]
bswap ecx
mov dword [esp + 0x48], ecx
add ecx, edx
mov edx, dword [esp + 8]
xor edi, edx
and edi, ebx
xor edi, edx
mov edx, dword [esp + 0x10]
add edi, ecx
mov ecx, ebp
lea ebx, [eax + edi + 0x59f111f1]
mov eax, ebp
rol ecx, 0x13
rol eax, 0x1e
xor ecx, eax
mov eax, ebp
rol eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x1c]
mov edi, ecx
xor ecx, edx
and edi, edx
and ecx, ebp
xor ecx, edi
mov edi, dword [esp + 0xc]
add ecx, eax
add ecx, ebx
mov dword [esp], ecx
mov ecx, dword [esp + 4]
add ecx, ebx
mov eax, ecx
mov esi, ecx
mov ebx, ecx
mov dword [esp + 4], ecx
rol eax, 0x1a
rol esi, 0x15
xor esi, eax
mov eax, ecx
mov ecx, dword [esp + 0x3c]
rol eax, 7
xor eax, esi
mov edx, dword [ecx + 0x18]
mov ecx, dword [esp + 8]
bswap edx
lea esi, [edx + ecx]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x1c]
xor edi, ecx
and edi, ebx
mov ebx, dword [esp + 0x10]
xor edi, ecx
mov ecx, dword [esp]
add edi, esi
lea edi, [eax + edi - 0x6dc07d5c]
add ebx, edi
mov eax, ecx
mov esi, ecx
mov dword [esp + 0x10], ebx
rol eax, 0x1e
rol esi, 0x13
xor esi, eax
mov eax, ecx
rol eax, 0xa
xor eax, esi
mov esi, ebp
xor esi, edx
and esi, ecx
mov ecx, ebp
and ecx, edx
xor ecx, esi
mov esi, ebx
add ecx, eax
mov eax, ebx
rol esi, 0x15
add ecx, edi
rol eax, 0x1a
mov edi, dword [esp + 4]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x3c]
xor esi, eax
mov eax, ebx
rol eax, 7
xor eax, esi
mov edx, dword [ecx + 0x1c]
mov ecx, dword [esp + 0x18]
bswap edx
lea esi, [edx + ecx]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 8]
xor edi, ecx
and edi, ebx
mov ebx, dword [esp + 0x1c]
xor edi, ecx
mov ecx, dword [esp]
add edi, esi
mov esi, edx
lea edi, [eax + edi - 0x54e3a12b]
mov eax, edx
rol esi, 0x13
rol eax, 0x1e
xor esi, eax
mov eax, edx
rol eax, 0xa
xor eax, esi
mov esi, ecx
xor ecx, ebp
and esi, ebp
and ecx, edx
xor ecx, esi
add ecx, eax
mov eax, edi
add ebx, eax
add ecx, edi
mov eax, ebx
mov esi, ebx
mov edi, ecx
mov ecx, dword [esp + 0x3c]
mov edx, ebx
mov dword [esp + 0x1c], ebx
rol eax, 0x1a
rol esi, 0x15
xor esi, eax
mov eax, ebx
mov ebx, dword [esp + 0xc]
rol eax, 7
xor eax, esi
mov esi, dword [ecx + 0x20]
mov ecx, dword [esp + 4]
bswap esi
mov dword [esp + 0x70], esi
add ebx, esi
mov esi, dword [esp + 0x10]
xor esi, ecx
and esi, edx
mov edx, dword [esp]
xor esi, ecx
mov ecx, edi
add esi, ebx
mov dword [esp + 0x18], ecx
lea ebx, [eax + esi - 0x27f85568]
mov eax, edi
mov esi, dword [esp + 8]
rol edi, 0x13
rol eax, 0x1e
add ebp, ebx
xor edi, eax
mov eax, ecx
rol eax, 0xa
xor eax, edi
mov edi, esi
and esi, edx
xor edi, edx
and edi, ecx
mov ecx, dword [esp + 0x3c]
xor esi, edi
mov edi, dword [esp + 0x1c]
add esi, eax
mov eax, ebp
add esi, ebx
rol eax, 0x1a
mov edx, esi
mov esi, ebp
rol esi, 0x15
mov ebx, edx
mov dword [esp + 0x14], edx
xor esi, eax
mov eax, ebp
rol eax, 7
xor eax, esi
mov esi, dword [ecx + 0x24]
mov ecx, dword [esp + 4]
bswap esi
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, dword [esp + 0x10]
xor edi, ecx
and edi, ebp
xor edi, ecx
mov ecx, dword [esp + 0x18]
add edi, esi
mov esi, edx
lea eax, [eax + edi + 0x12835b01]
mov edi, edx
rol esi, 0x1e
mov dword [esp + 4], eax
mov eax, dword [esp + 8]
rol edi, 0x13
xor edi, esi
mov esi, edx
mov edx, ecx
rol esi, 0xa
xor esi, edi
mov edi, ecx
xor edx, eax
and edi, eax
mov eax, dword [esp + 4]
and edx, ebx
mov ebx, dword [esp + 0x1c]
xor edx, edi
mov edi, dword [esp]
add edx, esi
add edx, eax
mov dword [esp + 0xc], edx
add edi, eax
mov eax, edi
mov esi, edi
mov ecx, edi
mov dword [esp], edi
rol eax, 0x1a
rol esi, 0x15
xor esi, eax
mov eax, edi
mov edi, dword [esp + 0x10]
rol eax, 7
xor eax, esi
mov esi, dword [esp + 0x3c]
mov esi, dword [esi + 0x28]
bswap esi
mov dword [esp + 0x30], esi
add esi, edi
mov edi, ebp
xor edi, ebx
and edi, ecx
mov ecx, edx
xor edi, ebx
add edi, esi
mov esi, dword [esp + 0x14]
lea ebx, [eax + edi + 0x243185be]
mov eax, edx
mov edi, edx
rol eax, 0x1e
rol edi, 0x13
xor edi, eax
mov eax, edx
mov edx, dword [esp + 0x18]
rol eax, 0xa
xor eax, edi
mov edi, esi
xor edi, edx
and esi, edx
mov edx, dword [esp + 0x1c]
and edi, ecx
mov ecx, dword [esp + 8]
xor esi, edi
mov edi, dword [esp]
add esi, eax
add esi, ebx
add ecx, ebx
mov dword [esp + 4], esi
mov ebx, dword [esp + 0xc]
mov eax, ecx
mov esi, ecx
xor edi, ebp
mov dword [esp + 8], ecx
rol eax, 0x1a
rol esi, 0x15
and edi, ecx
xor esi, eax
mov eax, ecx
xor edi, ebp
mov ecx, dword [esp + 0x14]
rol eax, 7
xor eax, esi
mov esi, dword [esp + 0x3c]
mov esi, dword [esi + 0x2c]
bswap esi
mov dword [esp + 0x40], esi
add esi, edx
add edi, esi
mov esi, dword [esp + 4]
lea edx, [eax + edi + 0x550c7dc3]
mov eax, esi
mov edi, esi
rol eax, 0x1e
rol edi, 0x13
xor edi, eax
mov eax, esi
rol eax, 0xa
xor eax, edi
mov edi, ebx
xor ebx, ecx
and edi, ecx
and ebx, esi
mov ecx, dword [esp + 0x3c]
xor ebx, edi
add ebx, eax
add ebx, edx
mov edi, ebx
mov ebx, dword [esp + 0x18]
add ebx, edx
mov edx, dword [esp + 4]
mov eax, ebx
mov esi, ebx
mov dword [esp + 0x18], ebx
rol eax, 0x1a
rol esi, 0x15
xor esi, eax
mov eax, ebx
rol eax, 7
xor eax, esi
mov esi, dword [ecx + 0x30]
mov ecx, dword [esp]
bswap esi
mov dword [esp + 0x24], esi
add ebp, esi
mov esi, dword [esp + 8]
xor esi, ecx
and esi, ebx
xor esi, ecx
mov ecx, dword [esp + 0xc]
add esi, ebp
mov ebp, edi
lea eax, [eax + esi + 0x72be5d74]
mov esi, edi
rol edi, 0x13
mov dword [esp + 0x10], ebp
rol esi, 0x1e
xor edi, esi
mov esi, ebp
rol esi, 0xa
xor esi, edi
mov edi, edx
and edx, ecx
xor edi, ecx
mov ecx, dword [esp + 0x3c]
and edi, ebp
mov ebp, dword [esp + 8]
xor edx, edi
mov edi, dword [esp + 0x14]
add edx, esi
add edx, eax
mov dword [esp + 0x2c], edx
add edi, eax
mov eax, edi
mov esi, edi
mov dword [esp + 0x14], edi
rol eax, 0x1a
rol esi, 0x15
xor esi, eax
mov eax, edi
rol eax, 7
xor eax, esi
mov esi, dword [ecx + 0x34]
mov ecx, dword [esp]
bswap esi
mov dword [esp + 0x64], esi
add ecx, esi
mov esi, dword [esp + 0x18]
xor esi, ebp
and esi, edi
mov edi, ebp
xor esi, ebp
mov ebp, dword [esp + 0x10]
add esi, ecx
mov ecx, edx
lea ebx, [eax + esi - 0x7f214e02]
mov esi, edx
mov eax, dword [esp + 4]
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, edx
rol ecx, 0xa
xor ecx, esi
mov esi, ebp
xor ebp, eax
and ebp, edx
mov edx, dword [esp + 0xc]
and esi, eax
xor ebp, esi
mov esi, dword [esp + 0x14]
add ebp, ecx
add ebp, ebx
add edx, ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebp
mov eax, edx
mov ecx, edx
mov dword [esp + 0xc], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + 0x38]
bswap ecx
mov dword [esp + 0x50], ecx
add ecx, edi
mov edi, dword [esp + 0x18]
xor esi, edi
and esi, edx
mov edx, dword [esp + 0x10]
xor esi, edi
mov edi, ebx
add esi, ecx
mov ecx, ebp
lea eax, [eax + esi - 0x6423f959]
mov esi, ebp
rol ecx, 0x1e
rol esi, 0x13
and edi, edx
xor esi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, esi
mov esi, ebx
xor esi, edx
mov edx, dword [esp + 4]
and esi, ebp
xor edi, esi
mov esi, dword [esp + 0x14]
add edi, ecx
add edx, eax
add edi, eax
mov eax, edx
mov ecx, edx
mov ebp, edx
mov dword [esp + 4], edx
mov dword [esp + 8], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x18]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ecx + 0x3c]
bswap ecx
mov dword [esp + 0x38], ecx
add ecx, edx
mov edx, dword [esp + 0xc]
xor edx, esi
and edx, ebp
mov ebp, dword [esp + 0x5c]
xor edx, esi
mov esi, dword [esp + 0x1c]
add edx, ecx
mov ecx, edi
lea eax, [eax + edx - 0x3e640e8c]
mov edx, edi
rol ecx, 0x1e
rol edx, 0x13
add dword [esp + 0x10], eax
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, ebx
and edx, ebx
and esi, edi
mov ebx, ebp
xor esi, edx
rol ebx, 0xe
add esi, ecx
mov ecx, ebp
shr ebp, 3
rol ecx, 0x19
add esi, eax
xor ebx, ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp], esi
mov esi, dword [esp + 0x20]
xor ebp, ebx
mov ebx, dword [esp + 0x4c]
mov edx, ecx
rol ecx, 0xe
rol edx, 0x19
xor ecx, edx
mov edx, esi
rol esi, 0xe
rol edx, 0x19
xor esi, edx
mov edx, dword [esp + 0x58]
mov eax, edx
mov edi, edx
rol eax, 0x19
rol edi, 0xe
xor edi, eax
mov eax, ebx
add ebx, dword [esp + 0x24]
shr eax, 3
xor eax, ecx
mov ecx, dword [esp + 0x20]
add ebx, ebp
mov ebp, ebx
mov ebx, dword [esp + 0x20]
shr ecx, 3
xor ecx, esi
mov esi, edx
add edx, dword [esp + 0x30]
shr esi, 3
add ebx, dword [esp + 0x40]
xor esi, edi
add edx, ecx
mov edi, edx
mov edx, dword [esp + 0x50]
add ebx, eax
mov eax, dword [esp + 0x54]
mov ecx, edx
add eax, dword [esp + 0x34]
rol ecx, 0xd
add eax, esi
mov esi, eax
mov eax, edx
shr edx, 0xa
rol eax, 0xf
xor ecx, eax
xor edx, ecx
add edx, esi
mov esi, dword [esp + 0x38]
mov dword [esp + 0x6c], edx
mov eax, esi
mov ecx, esi
shr esi, 0xa
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
mov eax, edx
xor esi, ecx
mov ecx, edx
rol eax, 0xf
rol ecx, 0xd
add esi, edi
mov edi, dword [esp + 0x14]
xor ecx, eax
mov eax, edx
mov dword [esp + 0x58], esi
shr eax, 0xa
xor eax, ecx
mov ecx, esi
add eax, ebx
rol ecx, 0xd
mov ebx, dword [esp + 0x10]
add edi, edx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x54], eax
mov eax, esi
rol eax, 0xf
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 8]
shr eax, 0xa
mov dword [esp + 0x10], ebx
xor eax, ecx
mov ecx, ebx
add eax, ebp
rol ecx, 0x15
mov ebp, dword [esp]
mov dword [esp + 0x4c], eax
mov eax, ebx
rol eax, 0x1a
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 4]
xor ecx, edx
and ecx, ebx
xor ecx, edx
mov edx, ebp
add ecx, edi
rol edx, 0x13
lea edi, [eax + ecx - 0x1b64963f]
mov ecx, ebp
mov eax, dword [esp + 0x1c]
rol ecx, 0x1e
xor edx, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor edx, eax
and edx, ebp
mov ebp, esi
mov esi, dword [esp + 0x2c]
and ebp, eax
xor ebp, edx
mov edx, dword [esp + 0xc]
add ebp, ecx
add esi, edi
add ebp, edi
mov edi, dword [esp + 4]
mov eax, esi
mov ecx, esi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x14], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor ebx, edi
xor eax, ecx
mov ecx, dword [esp + 0x58]
and ebx, esi
mov esi, dword [esp]
xor ebx, edi
add ecx, edx
mov edx, ebp
mov edi, esi
add ebx, ecx
mov ecx, ebp
rol edx, 0x13
lea eax, [eax + ebx - 0x1041b87a]
mov ebx, dword [esp + 8]
rol ecx, 0x1e
xor edx, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor edi, ebx
and edx, ebx
and edi, ebp
xor edi, edx
mov edx, dword [esp + 0x1c]
add edi, ecx
add edi, eax
mov ebp, edi
add edx, eax
mov dword [esp + 0x20], ebp
mov eax, edx
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 4]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x54]
lea esi, [ecx + edx]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x10]
xor edx, ecx
and edx, edi
mov edi, dword [esp + 0x14]
xor edx, ecx
mov ecx, ebp
add edx, esi
rol ecx, 0x1e
lea ebx, [eax + edx + 0xfc19dc6]
mov edx, ebp
mov eax, dword [esp]
rol edx, 0x13
mov esi, edi
xor edx, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edx
mov edx, edi
and esi, eax
xor edx, eax
and edx, ebp
xor esi, edx
mov edx, dword [esp + 0x10]
add esi, ecx
add esi, ebx
mov dword [esp + 4], esi
mov esi, dword [esp + 8]
add esi, ebx
mov ebx, dword [esp + 0x2c]
mov eax, esi
mov ecx, esi
mov dword [esp + 8], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x4c]
add ecx, edx
mov edx, dword [esp + 0x1c]
xor edx, ebx
and edx, esi
mov esi, dword [esp + 4]
xor edx, ebx
add edx, ecx
lea eax, [eax + edx + 0x240ca1cc]
mov ecx, esi
mov edx, esi
add dword [esp], eax
mov ebx, esi
mov ebx, dword [esp + 0x50]
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, ebp
xor ebp, edi
and edx, edi
and ebp, esi
mov esi, ebx
rol ebx, 0xe
mov edi, dword [esp + 0x6c]
xor ebp, edx
rol esi, 0x19
add ebp, ecx
mov ecx, dword [esp + 0x70]
xor ebx, esi
mov esi, dword [esp + 0x64]
add ebp, eax
mov dword [esp + 0xc], ebp
mov eax, ecx
rol ecx, 0xe
mov ebp, esi
rol esi, 0xe
rol eax, 0x19
rol ebp, 0x19
xor ecx, eax
xor esi, ebp
mov ebp, edi
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x44]
shr ebp, 3
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x28]
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x48]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0x78], edx
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x24]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x38]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x40]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x30]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x34]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, edi
mov dword [esp + 0xa4], ecx
mov ecx, edi
rol eax, 0x19
mov edi, dword [esp + 0x5c]
rol ecx, 0xe
xor ecx, eax
mov eax, edx
rol edx, 0xe
rol eax, 0x19
xor ebp, ecx
mov ecx, dword [esp + 0x28]
xor edx, eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x9c], ecx
add ecx, eax
add ebp, eax
shr eax, 3
xor eax, edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0xa0], ebp
mov ebp, dword [esp + 0x48]
mov ecx, eax
mov eax, dword [esp + 0x50]
mov edx, ebp
add ecx, eax
add ebp, eax
shr eax, 3
shr edx, 3
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x64]
xor eax, ebx
xor edx, dword [esp + 0x74]
add eax, ecx
add edi, ecx
shr ecx, 3
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x24]
xor ecx, esi
mov esi, dword [esp + 0x70]
add edi, edx
add ecx, eax
mov dword [esp + 0x64], ecx
mov ecx, eax
mov eax, dword [esp + 0x40]
shr ecx, 3
xor ecx, dword [esp + 0x60]
add ecx, eax
shr eax, 3
mov dword [esp + 0x48], ecx
xor eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x30]
add eax, ecx
shr ecx, 3
mov dword [esp + 0x40], eax
xor ecx, dword [esp + 0xa8]
mov eax, dword [esp + 0x34]
add ecx, eax
shr eax, 3
xor eax, dword [esp + 0xa4]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x9c]
add eax, esi
shr ecx, 3
mov dword [esp + 0x34], eax
mov eax, esi
mov esi, dword [esp + 0x44]
xor ecx, dword [esp + 0x78]
shr eax, 3
xor eax, dword [esp + 0x10]
add ebp, ecx
add eax, esi
shr esi, 3
xor esi, dword [esp + 0x18]
add eax, dword [esp + 0x6c]
add dword [esp + 0x28], esi
mov esi, dword [esp + 0x54]
mov ecx, esi
mov edx, esi
rol ecx, 0xf
rol edx, 0xd
xor edx, ecx
mov ecx, esi
mov esi, dword [esp + 0x4c]
shr ecx, 0xa
xor ecx, edx
add ecx, edi
mov ebx, ecx
mov ecx, esi
mov edx, esi
mov edi, esi
mov esi, dword [esp + 0x2c]
rol ecx, 0xf
rol edx, 0xd
shr edi, 0xa
mov dword [esp + 0x60], ebx
xor edx, ecx
mov ecx, ebx
xor edi, edx
mov edx, ebx
rol ecx, 0xf
rol edx, 0xd
add edi, ebp
add esi, ebx
mov ebp, dword [esp + 0x20]
xor edx, ecx
mov ecx, ebx
mov dword [esp + 0x44], edi
mov ebx, dword [esp + 4]
shr ecx, 0xa
xor ecx, edx
mov edx, edi
add ecx, dword [esp + 0x28]
rol edx, 0xd
mov dword [esp + 0x10], ecx
mov ecx, edi
shr edi, 0xa
rol ecx, 0xf
xor edx, ecx
xor edi, edx
mov edx, dword [esp]
add edi, eax
mov dword [esp + 0x28], edi
mov edi, dword [esp + 0x1c]
mov eax, edx
mov ecx, edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 8]
xor ecx, edi
and ecx, edx
xor ecx, edi
add ecx, esi
mov esi, dword [esp + 0xc]
lea eax, [eax + ecx + 0x2de92c6f]
mov ecx, esi
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
and ebx, ebp
xor edx, ebp
and edx, esi
mov esi, dword [esp + 0x14]
xor ebx, edx
mov edx, dword [esp]
add ebx, ecx
add ebx, eax
add esi, eax
mov dword [esp + 0x2c], ebx
mov eax, esi
mov ecx, esi
mov dword [esp + 0x14], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x44]
add ecx, edi
mov edi, dword [esp + 8]
xor edx, edi
and edx, esi
xor edx, edi
mov edi, dword [esp + 0xc]
add edx, ecx
mov ecx, ebx
lea ebp, [eax + edx + 0x4a7484aa]
mov edx, ebx
rol ecx, 0x1e
mov eax, dword [esp + 4]
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
mov esi, edi
rol ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x20]
xor edi, eax
and esi, eax
and edi, ebx
xor edi, esi
mov esi, dword [esp + 8]
add edi, ecx
add edx, ebp
add edi, ebp
mov ebp, dword [esp]
mov eax, edx
mov ecx, edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x10]
add ecx, esi
mov esi, dword [esp + 0x14]
xor esi, ebp
and esi, edx
mov edx, edi
xor esi, ebp
rol edx, 0xa
mov ebp, ebx
add esi, ecx
mov ecx, edi
lea eax, [eax + esi + 0x5cb0a9dc]
mov esi, edi
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, dword [esp + 0xc]
xor edx, esi
mov esi, ebx
mov ebx, dword [esp + 0x28]
xor esi, ecx
and ebp, ecx
mov ecx, dword [esp + 4]
and esi, edi
xor ebp, esi
mov esi, dword [esp + 0x20]
add ebp, edx
add ecx, eax
add ebp, eax
mov eax, ecx
mov edx, ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x1c], ebp
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, ecx
rol eax, 7
xor eax, edx
mov edx, dword [esp]
lea edi, [ebx + edx]
mov edx, dword [esp + 0x14]
xor esi, edx
and esi, ecx
mov ecx, ebp
xor esi, edx
mov edx, ebp
rol ecx, 0xa
add esi, edi
lea edi, [eax + esi + 0x76f988da]
mov eax, ebp
mov esi, ebp
mov ebp, dword [esp + 0x24]
rol eax, 0x1e
rol esi, 0x13
xor esi, eax
mov eax, dword [esp + 0x2c]
xor ecx, esi
mov esi, ebp
xor ebp, eax
and esi, eax
mov eax, edi
and ebp, edx
xor ebp, esi
mov esi, dword [esp + 0x10]
add ebp, ecx
add ebp, edi
mov edi, dword [esp + 0xc]
mov ecx, esi
mov edx, esi
shr esi, 0xa
rol ecx, 0xf
rol edx, 0xd
add edi, eax
mov eax, dword [esp + 0x34]
xor edx, ecx
mov ecx, ebx
xor esi, edx
mov edx, ebx
rol ecx, 0xf
mov dword [esp + 0xc], edi
rol edx, 0xd
xor edx, ecx
mov ecx, ebx
add eax, dword [esp + 0x58]
shr ecx, 0xa
xor ecx, edx
add esi, eax
mov eax, dword [esp + 0x30]
mov edx, esi
mov dword [esp + 0x78], esi
rol edx, 0xd
add eax, dword [esp + 0x54]
add ecx, eax
mov eax, esi
mov ebx, ecx
mov ecx, esi
rol ecx, 0xf
mov dword [esp + 0x70], ebx
xor edx, ecx
mov ecx, esi
mov esi, ebx
mov esi, edi
shr ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x40]
add edx, dword [esp + 0x4c]
add ecx, edx
mov edx, ebx
mov dword [esp + 0x5c], ecx
mov ecx, ebx
rol edx, 0xd
rol ecx, 0xf
xor edx, ecx
mov ecx, ebx
mov ebx, dword [esp + 0x14]
shr ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x48]
add ebx, eax
mov eax, dword [esp + 0x20]
add edx, dword [esp + 0x60]
add ecx, edx
mov edx, edi
mov dword [esp + 0x48], ecx
mov ecx, edi
rol edx, 0x15
rol ecx, 0x1a
xor edx, ecx
mov ecx, edi
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 4]
xor edx, eax
and edx, esi
mov esi, ebp
xor edx, eax
rol esi, 0x13
mov eax, dword [esp + 0x2c]
add edx, ebx
mov ebx, dword [esp + 0x1c]
lea edi, [ecx + edx - 0x67c1aeae]
mov edx, ebp
mov ecx, dword [esp + 0x24]
rol edx, 0x1e
xor esi, edx
mov edx, ebp
add eax, edi
rol edx, 0xa
mov dword [esp + 0x2c], eax
xor edx, esi
mov esi, ebx
and ebx, ecx
xor esi, ecx
mov ecx, eax
and esi, ebp
rol ecx, 0x1a
xor ebx, esi
mov esi, dword [esp + 0x20]
add ebx, edx
mov edx, eax
rol edx, 0x15
add ebx, edi
mov edi, dword [esp + 4]
xor edx, ecx
mov ecx, eax
mov dword [esp + 0x18], ebx
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x70]
add edx, esi
mov esi, dword [esp + 0xc]
xor esi, edi
and esi, eax
mov eax, ebp
xor esi, edi
mov edi, dword [esp + 0x1c]
add esi, edx
mov edx, ebx
lea ecx, [ecx + esi - 0x57ce3993]
mov esi, ebx
rol edx, 0x1e
rol esi, 0x13
xor esi, edx
mov edx, ebx
xor eax, edi
rol edx, 0xa
and eax, ebx
xor edx, esi
mov esi, ebp
mov ebx, eax
mov eax, dword [esp + 0x5c]
and esi, edi
mov edi, dword [esp + 0x24]
xor ebx, esi
mov esi, dword [esp + 0x2c]
add ebx, edx
add ebx, ecx
add edi, ecx
mov dword [esp + 0x14], ebx
mov ecx, edi
mov edx, edi
mov dword [esp + 0x24], edi
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, edi
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 4]
add edx, eax
mov eax, dword [esp + 0xc]
xor esi, eax
and esi, edi
xor esi, eax
mov eax, dword [esp + 0x18]
add esi, edx
mov edx, ebx
lea ecx, [ecx + esi - 0x4ffcd838]
mov esi, ebx
rol edx, 0x1e
rol esi, 0x13
xor esi, edx
mov edx, ebx
rol edx, 0xa
xor edx, esi
mov esi, eax
xor esi, ebp
and esi, ebx
mov ebx, eax
mov eax, dword [esp + 0x1c]
and ebx, ebp
xor ebx, esi
mov esi, dword [esp + 0xc]
add ebx, edx
add eax, ecx
add ebx, ecx
mov ecx, eax
mov edx, eax
mov dword [esp + 0x1c], eax
mov dword [esp], ebx
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, eax
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x48]
add edx, esi
mov esi, edi
mov dword [esp + 4], edx
mov edx, dword [esp + 0x2c]
xor esi, edx
and esi, eax
xor esi, edx
mov edx, ebx
add esi, dword [esp + 4]
rol edx, 0x1e
lea eax, [ecx + esi - 0x40a68039]
mov esi, ebx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x14]
rol esi, 0x13
xor esi, edx
mov edx, ebx
rol edx, 0xa
xor edx, esi
mov esi, dword [esp + 0x5c]
mov edi, eax
xor eax, ecx
and edi, ecx
mov ecx, dword [esp + 0xc]
and eax, ebx
xor eax, edi
mov edi, dword [esp + 0x24]
add eax, edx
mov edx, esi
rol edx, 0xd
add eax, ecx
add ebp, ecx
mov ecx, esi
rol ecx, 0xf
mov dword [esp + 4], eax
xor edx, ecx
mov ecx, esi
mov esi, dword [esp + 0x48]
shr ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x64]
add edx, dword [esp + 0x44]
add ecx, edx
mov edx, esi
mov ebx, ecx
mov ecx, esi
rol edx, 0xd
shr esi, 0xa
rol ecx, 0xf
mov dword [esp + 0x74], ebx
xor edx, ecx
mov ecx, dword [esp + 0x50]
xor esi, edx
mov edx, ebx
rol edx, 0xd
add ecx, dword [esp + 0x10]
add esi, ecx
mov ecx, ebx
rol ecx, 0xf
mov dword [esp + 0x40], esi
xor edx, ecx
mov ecx, ebx
shr ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x38]
add edx, dword [esp + 0x28]
add ecx, edx
mov edx, esi
mov dword [esp + 8], ecx
mov ecx, esi
rol edx, 0xd
rol ecx, 0xf
xor edx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
shr ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0xa0]
add esi, ebx
mov ebx, dword [esp]
add edx, dword [esp + 0x78]
add ecx, edx
mov edx, ebp
mov dword [esp + 0x38], ecx
mov ecx, ebp
rol edx, 0x15
rol ecx, 0x1a
xor edx, ecx
mov ecx, ebp
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x1c]
xor edx, edi
and edx, ebp
xor edx, edi
add edx, esi
mov esi, eax
lea edi, [ecx + edx - 0x391ff40d]
mov edx, eax
rol esi, 0x13
mov ecx, dword [esp + 0x14]
rol edx, 0x1e
xor esi, edx
mov edx, eax
rol edx, 0xa
xor edx, esi
mov esi, dword [esp]
and ebx, ecx
xor esi, ecx
and esi, eax
mov eax, dword [esp + 0x18]
xor ebx, esi
mov esi, dword [esp + 0x24]
add ebx, edx
add ebx, edi
add eax, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x2c], ebx
mov ecx, eax
mov edx, eax
mov dword [esp + 0x18], eax
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, eax
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x40]
add edx, esi
mov esi, ebp
xor esi, edi
and esi, eax
mov eax, dword [esp + 4]
xor esi, edi
add esi, edx
mov edx, ebx
lea edi, [ecx + esi - 0x2a586eb9]
mov esi, ebx
mov ecx, dword [esp]
rol edx, 0x1e
rol esi, 0x13
xor esi, edx
mov edx, ebx
rol edx, 0xa
xor edx, esi
mov esi, eax
xor eax, ecx
and esi, ecx
and eax, ebx
mov ecx, edi
xor eax, esi
mov esi, dword [esp + 0x1c]
add eax, edx
add eax, edi
mov edi, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x24], edi
add eax, ecx
mov ecx, eax
mov edx, eax
mov dword [esp + 0x14], eax
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, eax
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 8]
add edx, esi
mov esi, dword [esp + 0x18]
xor esi, ebp
and esi, eax
mov eax, dword [esp + 4]
xor esi, ebp
add esi, edx
mov edx, edi
lea ebx, [ecx + esi + 0x6ca6351]
mov esi, edi
mov ecx, dword [esp + 0x2c]
rol edx, 0x1e
rol esi, 0x13
xor esi, edx
mov edx, edi
rol edx, 0xa
xor edx, esi
mov esi, ecx
xor esi, eax
and esi, edi
mov edi, ecx
and edi, eax
mov eax, dword [esp + 0x38]
xor edi, esi
mov esi, dword [esp]
add edi, edx
add edi, ebx
add eax, ebp
mov dword [esp + 0x30], edi
add esi, ebx
mov ebx, dword [esp + 0x18]
mov ecx, esi
mov edx, esi
mov dword [esp], esi
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, esi
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x14]
xor edx, ebx
and edx, esi
mov esi, dword [esp + 0x24]
xor edx, ebx
mov ebx, dword [esp + 0x2c]
add edx, eax
lea eax, [ecx + edx + 0x14292967]
mov ecx, edi
mov edx, edi
rol ecx, 0x1e
rol edx, 0x13
add dword [esp + 4], eax
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, ebx
and esi, edi
and edx, ebx
mov edi, dword [esp + 0x44]
xor esi, edx
add esi, ecx
mov ecx, dword [esp + 0x60]
add esi, eax
mov dword [esp + 0x1c], esi
mov ebp, edi
rol ebp, 0x19
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x4c]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x78]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x54]
mov ebx, edx
shr ebx, 3
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x58]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, edx
mov dword [esp + 0x50], ecx
mov ecx, edx
rol eax, 0xe
rol ecx, 0x19
xor eax, ecx
mov ecx, dword [esp + 0x28]
xor ebx, eax
mov eax, dword [esp + 0x28]
mov edx, ecx
rol ecx, 0xe
rol edx, 0x19
add ebx, eax
shr eax, 3
xor ecx, edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x80], ebx
xor eax, ecx
mov ecx, dword [esp + 0x10]
mov esi, edx
rol edx, 0xe
rol esi, 0x19
add eax, ecx
shr ecx, 3
xor edx, esi
mov esi, edi
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x54]
xor ecx, edx
mov edx, dword [esp + 0x60]
rol esi, 0xe
add ecx, edi
xor esi, ebp
shr edi, 3
mov ebp, dword [esp + 8]
xor edi, esi
mov esi, dword [esp + 0x58]
mov dword [esp + 0x10], ecx
add edi, edx
shr edx, 3
mov dword [esp + 0x44], edi
xor edx, dword [esp + 0xc]
mov edi, dword [esp + 0x4c]
mov ecx, ebp
rol ecx, 0xd
add edx, edi
shr edi, 3
xor edi, dword [esp + 0x20]
add edx, dword [esp + 0x74]
add edi, eax
shr eax, 3
xor eax, dword [esp + 0x34]
add edi, dword [esp + 0x48]
add eax, esi
shr esi, 3
xor esi, dword [esp + 0x50]
mov ebx, eax
mov eax, ebp
shr ebp, 0xa
rol eax, 0xf
add ebx, dword [esp + 0x5c]
xor ecx, eax
xor ebp, ecx
add esi, dword [esp + 0x6c]
add esi, dword [esp + 0x70]
add ebp, esi
mov esi, dword [esp + 0x38]
mov dword [esp + 0x6c], ebp
mov eax, esi
mov ecx, esi
shr esi, 0xa
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
mov eax, ebp
xor esi, ecx
mov ecx, ebp
rol eax, 0xf
rol ecx, 0xd
add esi, ebx
xor ecx, eax
mov eax, ebp
mov dword [esp + 0x64], esi
shr eax, 0xa
xor eax, ecx
mov ecx, esi
add eax, edi
mov edi, dword [esp + 4]
rol ecx, 0xd
mov dword [esp + 0x54], eax
mov eax, esi
shr esi, 0xa
rol eax, 0xf
xor ecx, eax
xor esi, ecx
mov eax, edi
mov ecx, edi
rol eax, 0x1a
rol ecx, 0x15
add esi, edx
mov edx, dword [esp + 0x14]
xor ecx, eax
mov eax, edi
mov dword [esp + 0x58], esi
mov esi, dword [esp + 0x18]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp]
add esi, ebp
mov ebp, dword [esp + 0x1c]
xor ecx, edx
and ecx, edi
mov edi, dword [esp + 0x24]
xor ecx, edx
mov edx, ebp
add ecx, esi
rol edx, 0x13
mov esi, dword [esp + 0x14]
lea ebx, [eax + ecx + 0x27b70a85]
mov ecx, ebp
mov eax, ebp
rol ecx, 0x1e
rol eax, 0xa
xor edx, ecx
mov ecx, dword [esp + 0x30]
xor eax, edx
mov edx, ecx
and ecx, edi
xor edx, edi
mov edi, dword [esp + 0x2c]
and edx, ebp
xor ecx, edx
add ecx, eax
add edi, ebx
add ecx, ebx
mov ebx, dword [esp]
mov eax, edi
mov edx, edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x34], ecx
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, edi
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x64]
add esi, edx
mov edx, dword [esp + 4]
xor edx, ebx
and edx, edi
xor edx, ebx
mov ebx, dword [esp + 0x1c]
add edx, esi
mov esi, ecx
lea ebp, [eax + edx + 0x2e1b2138]
mov eax, dword [esp + 0x30]
mov edx, ecx
rol esi, 0x1e
rol edx, 0x13
mov edi, ebx
xor edx, esi
mov esi, ecx
rol esi, 0xa
xor ebx, eax
and edi, eax
xor esi, edx
mov edx, dword [esp]
and ebx, ecx
xor ebx, edi
mov edi, dword [esp + 4]
add ebx, esi
mov esi, dword [esp + 0x24]
add ebx, ebp
mov dword [esp + 0x18], ebx
add esi, ebp
mov ebp, dword [esp + 0x2c]
mov eax, esi
mov ecx, esi
mov dword [esp + 0x24], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x54]
add ecx, edx
mov edx, ebp
xor edx, edi
and edx, esi
mov esi, dword [esp + 0x1c]
xor edx, edi
mov edi, dword [esp + 0x34]
add edx, ecx
mov ecx, ebx
lea eax, [eax + edx + 0x4d2c6dfc]
mov edx, ebx
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
rol ecx, 0xa
xor ecx, edx
mov edx, edi
xor edx, esi
and edx, ebx
mov ebx, edi
and ebx, esi
mov esi, dword [esp + 0x30]
xor ebx, edx
mov edx, dword [esp + 4]
add ebx, ecx
add ebx, eax
add esi, eax
mov dword [esp + 0x20], ebx
mov eax, esi
mov ecx, esi
mov dword [esp + 0x30], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x58]
add ecx, edx
mov edx, dword [esp + 0x24]
xor edx, ebp
and edx, esi
mov esi, dword [esp + 0x18]
xor edx, ebp
add edx, ecx
mov ecx, ebx
lea ebp, [eax + edx + 0x53380d13]
mov edx, ebx
rol ecx, 0x1e
mov eax, esi
rol edx, 0x13
xor esi, edi
and eax, edi
mov edi, dword [esp + 0x54]
xor edx, ecx
mov ecx, ebx
and esi, ebx
rol ecx, 0xa
xor esi, eax
xor ecx, edx
mov edx, dword [esp + 0x58]
add esi, ecx
mov eax, edi
mov ecx, edi
mov ebx, edi
add esi, ebp
rol eax, 0xf
rol ecx, 0xd
shr ebx, 0xa
mov dword [esp], esi
mov esi, dword [esp + 0x1c]
xor ecx, eax
mov eax, dword [esp + 0x44]
mov edi, dword [esp]
xor ebx, ecx
mov ecx, edx
rol ecx, 0xd
add esi, ebp
mov ebp, dword [esp + 0x18]
add eax, dword [esp + 0x40]
mov dword [esp + 0x1c], esi
add ebx, eax
mov eax, edx
shr edx, 0xa
rol eax, 0xf
mov dword [esp + 0x44], ebx
xor ecx, eax
mov eax, dword [esp + 0x10]
xor edx, ecx
mov ecx, ebx
rol ecx, 0xd
add eax, dword [esp + 8]
add edx, eax
mov eax, ebx
rol eax, 0xf
mov dword [esp + 0x50], edx
xor ecx, eax
mov eax, ebx
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0x38]
add eax, ecx
mov ecx, edx
mov dword [esp + 0x14], eax
mov eax, edx
rol ecx, 0xd
rol eax, 0xf
xor ecx, eax
mov eax, edx
mov edx, esi
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x80]
add ecx, dword [esp + 0x6c]
add eax, ecx
mov ecx, esi
mov dword [esp + 0xc], eax
mov eax, esi
rol ecx, 0x15
rol eax, 0x1a
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x2c]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x30]
add esi, ebx
mov ebx, dword [esp + 0x24]
xor ecx, ebx
and ecx, edx
mov edx, edi
xor ecx, ebx
rol edx, 0x13
add ecx, esi
lea esi, [eax + ecx + 0x650a7354]
mov ecx, edi
mov eax, dword [esp + 0x20]
rol ecx, 0x1e
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, eax
xor edx, ebp
and edx, edi
mov edi, eax
and edi, ebp
mov ebp, dword [esp + 0x34]
xor edi, edx
mov edx, dword [esp + 0x1c]
add edi, ecx
add edi, esi
add ebp, esi
mov esi, dword [esp + 0x30]
mov dword [esp + 4], edi
mov eax, ebp
mov ecx, ebp
mov dword [esp + 0x34], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebp
rol eax, 7
xor edx, esi
xor eax, ecx
mov ecx, dword [esp + 0x50]
and edx, ebp
mov ebp, dword [esp + 0x20]
xor edx, esi
add ecx, ebx
mov ebx, esi
mov esi, dword [esp]
add edx, ecx
mov ecx, edi
lea eax, [eax + edx + 0x766a0abb]
mov edx, edi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, ebp
and edx, ebp
and esi, edi
xor esi, edx
mov edx, dword [esp + 0x34]
add esi, ecx
add esi, eax
mov edi, esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x24], edi
add esi, eax
mov eax, esi
mov ecx, esi
mov dword [esp + 0x18], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x14]
add ecx, ebx
mov ebx, dword [esp + 0x1c]
xor edx, ebx
and edx, esi
mov esi, dword [esp + 4]
xor edx, ebx
add edx, ecx
mov ecx, edi
lea ebp, [eax + edx - 0x7e3d36d2]
mov edx, edi
rol ecx, 0x1e
mov eax, dword [esp]
rol edx, 0x13
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, esi
and esi, eax
xor edx, eax
and edx, edi
xor esi, edx
mov edx, dword [esp + 0x18]
add esi, ecx
add esi, ebp
mov edi, esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x28], edi
add esi, ebp
mov ebp, edi
mov eax, esi
mov ecx, esi
mov dword [esp + 0x20], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0xc]
add ecx, ebx
mov ebx, dword [esp + 0x34]
xor edx, ebx
and edx, esi
mov esi, dword [esp + 0x24]
xor edx, ebx
mov ebx, dword [esp + 4]
add edx, ecx
mov ecx, edi
lea eax, [eax + edx - 0x6d8dd37b]
mov edx, edi
rol ecx, 0x1e
rol edx, 0x13
add dword [esp], eax
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, ebx
and edx, ebx
and esi, edi
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x40]
xor esi, edx
add esi, ecx
mov ecx, dword [esp + 0x74]
add esi, eax
mov edx, edi
mov dword [esp + 0x30], esi
mov ebp, ebx
rol edx, 0x19
rol ebp, 0x19
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x48]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x5c]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x70]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x4c], ecx
mov ecx, eax
rol eax, 0xe
rol ecx, 0x19
xor eax, ecx
mov ecx, edi
rol ecx, 0xe
xor ecx, edx
mov edx, dword [esp + 8]
mov esi, edx
rol edx, 0xe
rol esi, 0x19
xor edx, esi
mov esi, ebx
rol esi, 0xe
xor esi, ebp
mov ebp, dword [esp + 0x6c]
shr ebp, 3
xor ebp, eax
mov eax, dword [esp + 8]
add ebp, edi
shr edi, 3
xor edi, ecx
mov dword [esp + 0x60], ebp
mov ebp, dword [esp + 0x5c]
mov ecx, dword [esp + 0x70]
add edi, eax
shr eax, 3
xor eax, edx
mov dword [esp + 0x38], edi
add eax, ebx
shr ebx, 3
mov dword [esp + 8], eax
mov eax, dword [esp + 0x74]
xor ebx, esi
mov esi, dword [esp + 0x14]
add ebx, eax
shr eax, 3
mov edx, esi
mov dword [esp + 0x40], ebx
xor eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x48]
rol edx, 0xd
add eax, ebx
shr ebx, 3
xor ebx, dword [esp + 0x1c]
add eax, dword [esp + 0x44]
add ebx, ebp
shr ebp, 3
xor ebp, dword [esp + 0x2c]
add ebx, dword [esp + 0x58]
add ebp, ecx
shr ecx, 3
xor ecx, dword [esp + 0x4c]
add ebp, dword [esp + 0x54]
add ecx, dword [esp + 0x78]
mov edi, ecx
mov ecx, esi
shr esi, 0xa
add edi, dword [esp + 0x64]
rol ecx, 0xf
xor edx, ecx
xor esi, edx
add esi, edi
mov edi, dword [esp + 0xc]
mov dword [esp + 0x5c], esi
mov ecx, edi
mov edx, edi
shr edi, 0xa
rol ecx, 0xf
rol edx, 0xd
xor edx, ecx
mov ecx, esi
xor edi, edx
mov edx, esi
rol ecx, 0xf
rol edx, 0xd
add edi, ebp
mov ebp, dword [esp + 0x30]
xor edx, ecx
mov ecx, esi
mov dword [esp + 0x4c], edi
shr ecx, 0xa
xor ecx, edx
mov edx, edi
add ecx, ebx
rol edx, 0xd
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x2c], ecx
mov ecx, edi
shr edi, 0xa
rol ecx, 0xf
xor edx, ecx
xor edi, edx
mov edx, dword [esp + 0x34]
add edi, eax
mov dword [esp + 0x1c], edi
mov edi, dword [esp]
add edx, esi
mov esi, dword [esp + 0x18]
mov eax, edi
mov ecx, edi
mov dword [esp], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x20]
xor ecx, esi
and ecx, edi
xor ecx, esi
add ecx, edx
mov edx, ebp
lea esi, [eax + ecx - 0x5d40175f]
mov ecx, ebp
rol edx, 0x13
mov eax, dword [esp + 0x24]
rol ecx, 0x1e
xor edx, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
xor edx, eax
and edx, ebp
mov ebp, ebx
mov ebx, dword [esp + 0x30]
and ebp, eax
xor ebp, edx
mov edx, dword [esp + 4]
add ebp, ecx
add ebp, esi
add edx, esi
mov eax, edx
mov ecx, edx
mov esi, edx
mov dword [esp + 4], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x18]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x4c]
add ecx, edx
mov edx, edi
mov edi, dword [esp + 0x20]
xor edx, edi
and edx, esi
mov esi, dword [esp + 0x28]
xor edx, edi
mov edi, ebx
add edx, ecx
mov ecx, ebp
lea eax, [eax + edx - 0x57e599b5]
mov edx, ebp
rol ecx, 0x1e
rol edx, 0x13
xor edi, esi
xor edx, ecx
mov ecx, ebp
and edi, ebp
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
and edx, esi
xor edi, edx
mov edx, dword [esp + 0x24]
add edi, ecx
add edi, eax
mov dword [esp + 0x34], edi
add edx, eax
mov eax, edx
mov ecx, edx
mov esi, edx
mov dword [esp + 0x24], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x20]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x2c]
add ecx, edx
mov edx, dword [esp + 4]
mov dword [esp + 0x10], ecx
mov ecx, dword [esp]
xor edx, ecx
and edx, esi
mov esi, dword [esp + 0x28]
xor edx, ecx
mov ecx, edi
add edx, dword [esp + 0x10]
rol ecx, 0x1e
lea eax, [eax + edx - 0x3db47490]
mov edx, edi
rol edx, 0x13
add esi, eax
xor edx, ecx
mov ecx, edi
mov dword [esp + 0x28], esi
rol ecx, 0xa
xor ecx, edx
mov edx, ebp
xor edx, ebx
and edx, edi
mov edi, ebp
and edi, ebx
mov ebx, dword [esp + 4]
xor edi, edx
mov edx, dword [esp]
add edi, ecx
mov ecx, esi
add edi, eax
mov eax, esi
rol ecx, 0x15
rol eax, 0x1a
mov dword [esp + 0x20], edi
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x1c]
add ecx, edx
mov edx, dword [esp + 0x24]
xor edx, ebx
and edx, esi
mov esi, edi
mov esi, dword [esp + 0x2c]
xor edx, ebx
add edx, ecx
mov ecx, edi
lea ebx, [eax + edx - 0x3893ae5d]
mov edx, edi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x34]
mov eax, edx
xor edx, ebp
and edx, edi
and eax, ebp
mov edi, dword [esp + 0x1c]
xor edx, eax
mov eax, esi
add edx, ecx
mov ecx, esi
rol eax, 0xf
rol ecx, 0xd
add edx, ebx
xor ecx, eax
mov eax, esi
mov eax, dword [esp + 0x40]
shr esi, 0xa
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x30]
xor esi, ecx
mov ecx, edi
rol ecx, 0xd
add eax, dword [esp + 0x50]
add edx, ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x30], edx
add esi, eax
mov eax, edi
rol eax, 0xf
mov dword [esp + 0x78], esi
xor ecx, eax
mov eax, edi
mov eax, dword [esp + 8]
shr edi, 0xa
xor edi, ecx
mov ecx, esi
rol ecx, 0xd
add eax, dword [esp + 0x14]
add edi, eax
mov eax, esi
rol eax, 0xf
mov dword [esp + 0x40], edi
xor ecx, eax
mov eax, esi
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0xc]
add eax, ecx
mov ecx, edi
mov dword [esp + 8], eax
mov eax, edi
rol ecx, 0xd
shr edi, 0xa
rol eax, 0xf
xor ecx, eax
mov eax, dword [esp + 0x60]
xor edi, ecx
mov ecx, edx
rol ecx, 0x15
add eax, dword [esp + 0x5c]
add edi, eax
mov eax, edx
rol eax, 0x1a
mov dword [esp + 0x48], edi
mov edi, edx
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 4]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x28]
add edx, esi
mov esi, dword [esp + 0x24]
xor ecx, esi
and ecx, edi
mov edi, ebx
xor ecx, esi
mov esi, dword [esp + 0x10]
add ecx, edx
lea eax, [eax + ecx - 0x2e6d17e7]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x34]
mov ecx, esi
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
and edi, eax
xor ecx, edx
mov edx, ebx
xor edx, eax
mov eax, dword [esp + 4]
and edx, esi
mov esi, ebx
mov ebx, dword [esp + 0x28]
xor edi, edx
mov edx, dword [esp + 0x24]
add edi, ecx
add ebp, eax
add edi, eax
mov eax, ebp
mov ecx, ebp
mov dword [esp + 0x38], ebp
mov dword [esp], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x40]
add ecx, edx
mov edx, dword [esp + 0x30]
xor edx, ebx
and edx, ebp
xor edx, ebx
mov ebx, dword [esp + 0x10]
add edx, ecx
mov ecx, edi
lea ebp, [eax + edx - 0x2966f9dc]
mov edx, edi
rol ecx, 0x1e
mov eax, esi
rol edx, 0x13
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
and edx, esi
mov esi, ebx
xor esi, eax
and esi, edi
xor esi, edx
mov edx, dword [esp + 0x28]
add esi, ecx
add esi, ebp
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x34]
add esi, ebp
mov eax, esi
mov ecx, esi
mov dword [esp + 0x34], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 8]
lea edi, [ecx + edx]
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
xor edx, ecx
and edx, esi
mov esi, dword [esp + 0x24]
xor edx, ecx
add edx, edi
lea ebp, [eax + edx - 0xbf1ca7b]
mov eax, dword [esp]
mov ecx, esi
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, eax
and eax, ebx
xor edx, ebx
mov ebx, dword [esp + 0x38]
and edx, esi
xor eax, edx
mov edx, dword [esp + 0x20]
add eax, ecx
add eax, ebp
mov esi, eax
add edx, ebp
mov dword [esp + 0x18], esi
mov ebp, dword [esp]
mov eax, edx
mov ecx, edx
mov edi, edx
mov dword [esp + 0x20], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x30]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x48]
add ecx, edx
mov edx, dword [esp + 0x34]
xor edx, ebx
and edx, edi
mov edi, esi
xor edx, ebx
mov ebx, dword [esp + 0xc]
add edx, ecx
mov ecx, esi
lea eax, [eax + edx + 0x106aa070]
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
add dword [esp + 0x10], eax
xor edx, ecx
mov ecx, esi
mov esi, dword [esp + 0x24]
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, ebp
and esi, edi
and edx, ebp
mov edi, dword [esp + 0x14]
xor esi, edx
add esi, ecx
mov ecx, dword [esp + 0x44]
add esi, eax
mov dword [esp + 4], esi
mov esi, edi
rol esi, 0xe
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x58]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x54]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 0x64]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0x50]
mov edx, eax
rol eax, 0xe
rol edx, 0x19
mov ebp, ecx
xor eax, edx
mov edx, ebx
rol ebx, 0xe
rol ebp, 0x19
rol edx, 0x19
xor ebx, edx
mov edx, edi
rol edx, 0x19
xor esi, edx
mov edx, ecx
rol edx, 0xe
xor edx, ebp
mov ebp, dword [esp + 0x5c]
shr ebp, 3
xor ebp, eax
mov eax, ebp
mov ebp, dword [esp + 0xc]
add eax, ebp
shr ebp, 3
xor ebp, ebx
mov ebx, dword [esp + 0x58]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x54]
add ebp, edi
shr edi, 3
xor edi, esi
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 8]
add edi, ecx
shr ecx, 3
xor ecx, edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x14], edi
add ecx, edx
shr edx, 3
xor edx, dword [esp + 0x28]
mov dword [esp + 0x50], ecx
mov ecx, esi
rol ecx, 0xd
add edx, ebx
shr ebx, 3
xor ebx, dword [esp + 0x30]
add ebx, eax
shr eax, 3
xor eax, dword [esp + 0x74]
add eax, ebp
shr ebp, 3
xor ebp, dword [esp + 0x60]
mov edi, eax
mov eax, esi
rol eax, 0xf
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x48]
shr eax, 0xa
add ebp, dword [esp + 0x6c]
xor eax, ecx
mov ecx, esi
rol ecx, 0xd
add ebp, dword [esp + 0x4c]
add eax, ebp
mov ebp, esi
mov dword [esp + 0x30], eax
mov eax, esi
mov esi, dword [esp + 0x2c]
shr ebp, 0xa
rol eax, 0xf
xor ecx, eax
xor ebp, ecx
add edi, esi
add ebp, edi
mov edi, dword [esp + 0x30]
mov dword [esp + 0x28], ebp
mov eax, edi
mov ecx, edi
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
mov eax, edi
mov edi, dword [esp + 0x1c]
shr eax, 0xa
xor eax, ecx
mov ecx, ebp
rol ecx, 0xd
add ebx, edi
add eax, ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x54], eax
mov eax, ebp
rol eax, 0xf
xor ecx, eax
mov eax, ebp
mov ebp, dword [esp + 8]
shr eax, 0xa
add edx, ebx
xor eax, ecx
add eax, edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x58], eax
mov eax, edx
mov ecx, edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, ebx
rol eax, 7
rol edx, 0xe
xor eax, ecx
mov ecx, ebx
mov ecx, edi
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x64], eax
mov eax, ebx
rol eax, 0x19
xor edx, eax
mov eax, edi
mov dword [esp + 0x44], edx
mov edx, edi
rol eax, 0x19
mov edi, dword [esp + 0x30]
rol edx, 0xe
xor edx, eax
mov eax, esi
rol esi, 0xe
rol eax, 0x19
mov dword [esp + 0x6c], edx
xor esi, eax
mov eax, ecx
rol ecx, 0xe
add dword [esp + 0x70], edi
rol eax, 0x19
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x40]
xor ecx, eax
mov eax, edi
mov dword [esp + 0x60], ecx
mov ecx, edi
rol eax, 0xe
rol ecx, 0x19
xor eax, ecx
mov ecx, dword [esp + 0x48]
mov edx, ecx
mov ebx, ecx
add dword [esp + 0xc], ecx
rol edx, 0x19
rol ebx, 0xe
xor ebx, edx
mov edx, ebp
rol ebp, 0xe
mov dword [esp + 0x80], ebx
mov ebx, dword [esp + 0x38]
rol edx, 0x19
xor ebp, edx
mov edx, esi
rol esi, 0xe
rol edx, 0x19
xor esi, edx
add ebx, edi
shr edi, 3
xor edi, eax
mov eax, dword [esp + 8]
add edi, ecx
shr ecx, 3
xor ecx, dword [esp + 0x80]
mov dword [esp + 0x30], edi
mov edx, eax
add dword [esp + 0x14], eax
shr edx, 3
add ecx, eax
mov eax, dword [esp + 0x40]
xor edx, ebp
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0x78]
add edx, eax
add dword [esp + 0x50], eax
shr eax, 3
xor eax, esi
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x34]
mov esi, dword [esp + 4]
add eax, ecx
shr ecx, 3
mov dword [esp + 0x40], eax
xor ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x1c]
mov edi, esi
rol edi, 0x13
add ecx, eax
shr eax, 3
mov dword [esp + 0x44], ecx
xor eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x2c]
add eax, ecx
shr ecx, 3
mov dword [esp + 0x1c], eax
xor ecx, dword [esp + 0x74]
mov eax, dword [esp + 0x4c]
add ecx, eax
shr eax, 3
xor eax, dword [esp + 0x60]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x28]
add eax, dword [esp + 0x5c]
add eax, ecx
mov dword [esp + 0x4c], eax
lea eax, [ecx + edx]
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x64]
xor ecx, edx
and ecx, ebp
xor ecx, edx
mov edx, esi
rol edx, 0x1e
add ecx, ebx
xor edi, edx
mov edx, esi
lea ecx, [eax + ecx + 0x19a4c116]
mov eax, dword [esp + 0x18]
rol edx, 0xa
xor edx, edi
mov edi, dword [esp + 0x24]
mov ebx, eax
xor ebx, edi
and ebx, esi
mov esi, eax
mov eax, dword [esp]
and esi, edi
xor esi, ebx
mov ebx, dword [esp + 0x20]
add esi, edx
add eax, ecx
add esi, ecx
mov ecx, eax
mov edx, eax
mov dword [esp], eax
xor ebp, ebx
rol ecx, 0x1a
rol edx, 0x15
and ebp, eax
xor edx, ecx
mov ecx, eax
xor ebp, ebx
rol ecx, 7
mov ebx, dword [esp + 4]
add ebp, dword [esp + 8]
xor ecx, edx
mov edx, esi
rol edx, 0x13
lea eax, [ecx + ebp + 0x1e376c08]
mov ecx, esi
mov ebp, dword [esp + 0x18]
rol ecx, 0x1e
add edi, eax
xor edx, ecx
mov ecx, esi
mov dword [esp + 0x24], edi
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
xor ebx, ebp
and edx, ebp
and ebx, esi
xor ebx, edx
mov edx, dword [esp + 0x20]
add ebx, ecx
mov ecx, edi
add ebx, eax
mov eax, edi
rol ecx, 0x15
rol eax, 0x1a
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x54]
lea ebp, [ecx + edx]
mov edx, dword [esp]
mov ecx, dword [esp + 0x10]
xor edx, ecx
and edx, edi
xor edx, ecx
mov ecx, ebx
add edx, ebp
rol ecx, 0x1e
mov ebp, esi
lea edi, [eax + edx + 0x2748774c]
mov edx, ebx
mov eax, dword [esp + 4]
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
rol ecx, 0xa
xor ecx, edx
mov edx, esi
and ebp, eax
xor edx, eax
and edx, ebx
xor ebp, edx
mov edx, dword [esp + 0x10]
add ebp, ecx
add ebp, edi
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x18]
add ebp, edi
mov edi, dword [esp]
mov eax, ebp
mov ecx, ebp
mov dword [esp + 0x18], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x58]
add ecx, edx
mov edx, dword [esp + 0x24]
xor edx, edi
and edx, ebp
xor edx, edi
mov edi, dword [esp + 8]
add edx, ecx
lea eax, [eax + edx + 0x34b0bcb5]
mov ecx, edi
mov edx, edi
mov ebp, edi
rol ecx, 0x1e
rol edx, 0x13
rol ebp, 0xa
xor edx, ecx
mov ecx, ebx
xor ecx, esi
xor ebp, edx
mov edx, ebx
and ecx, edi
and edx, esi
mov edi, dword [esp + 4]
xor ecx, edx
add ecx, ebp
add ecx, eax
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x54]
add edi, eax
mov dword [esp + 4], edi
mov eax, ecx
mov edx, ecx
add dword [esp + 0x2c], ecx
rol eax, 0xf
rol edx, 0xd
xor edx, eax
mov eax, ecx
mov ecx, dword [esp + 0x58]
shr eax, 0xa
xor eax, edx
add eax, dword [esp + 0x50]
mov ebp, ecx
mov edx, ecx
add dword [esp + 0x1c], ecx
rol ebp, 0xf
rol edx, 0xd
xor edx, ebp
mov ebp, ecx
shr ebp, 0xa
mov ecx, eax
add dword [esp], eax
add dword [esp + 0x44], eax
xor ebp, edx
mov edx, eax
rol ecx, 0xd
shr eax, 0xa
rol edx, 0xf
add ebp, dword [esp + 0x14]
xor ecx, edx
mov edx, dword [esp + 0x24]
xor eax, ecx
add eax, dword [esp + 0xc]
mov ecx, ebp
add dword [esp + 0x40], ebp
rol ecx, 0xd
mov dword [esp + 0x50], eax
mov eax, ebp
rol eax, 0xf
xor ecx, eax
mov eax, ebp
shr eax, 0xa
xor eax, ecx
mov ecx, edi
add eax, dword [esp + 0x70]
rol ecx, 0x1a
mov dword [esp + 0x34], eax
mov eax, edi
rol eax, 0x15
xor eax, ecx
mov ecx, edi
rol ecx, 7
xor ecx, eax
lea eax, [ebp + edx]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x18]
xor eax, edx
and eax, edi
mov edi, dword [esp + 0x28]
xor eax, edx
mov edx, dword [esp + 8]
add eax, dword [esp]
lea ebp, [ecx + eax + 0x391c0cb3]
mov ecx, edi
mov eax, edi
rol ecx, 0x1e
rol eax, 0x13
add esi, ebp
xor eax, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, eax
mov eax, edx
xor eax, ebx
and eax, edi
mov edi, edx
mov edx, dword [esp + 0x18]
and edi, ebx
xor edi, eax
mov eax, esi
add edi, ecx
mov ecx, esi
rol eax, 0x1a
rol ecx, 0x15
add edi, ebp
xor ecx, eax
mov eax, esi
mov ebp, edi
mov dword [esp + 0x20], edi
rol eax, 7
rol ebp, 0x13
xor eax, ecx
mov ecx, dword [esp + 4]
xor ecx, edx
and ecx, esi
xor ecx, edx
mov edx, dword [esp + 0x28]
add ecx, dword [esp + 0xc]
lea eax, [eax + ecx + 0x4ed8aa4a]
mov ecx, edi
rol ecx, 0x1e
mov dword [esp], eax
mov eax, edx
xor ebp, ecx
mov ecx, edi
and eax, dword [esp + 8]
rol ecx, 0xa
xor ecx, ebp
mov ebp, edx
xor ebp, dword [esp + 8]
and ebp, edi
mov edi, dword [esp + 0x18]
xor ebp, eax
mov eax, dword [esp]
add ebp, ecx
add ebx, eax
add ebp, eax
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x14], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x50]
add ecx, edi
mov edi, esi
mov dword [esp], ecx
mov ecx, dword [esp + 4]
xor edi, ecx
and edi, ebx
xor edi, ecx
mov ecx, ebp
add edi, dword [esp]
rol ecx, 0x1e
lea eax, [eax + edi + 0x5b9cca4f]
mov edi, ebp
mov dword [esp], eax
mov eax, dword [esp + 0x20]
rol edi, 0x13
xor edi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edi
mov edi, eax
xor edi, edx
and edi, ebp
mov ebp, eax
mov eax, dword [esp]
and ebp, edx
mov edx, dword [esp + 8]
xor ebp, edi
mov edi, dword [esp + 4]
add ebp, ecx
add ebp, eax
add edx, eax
mov dword [esp + 0x10], ebp
mov eax, edx
mov ecx, edx
mov dword [esp + 8], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x34]
add ecx, edi
mov edi, ebx
xor edi, esi
and edi, edx
mov edx, dword [esp + 0x20]
xor edi, esi
add edi, ecx
mov ecx, ebp
lea eax, [eax + edi + 0x682e6ff3]
mov edi, ebp
rol ecx, 0x1e
mov dword [esp], eax
mov eax, dword [esp + 0x14]
rol edi, 0x13
xor edi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edi
mov edi, eax
xor eax, edx
and edi, edx
and eax, ebp
mov edx, dword [esp + 0x50]
mov ebp, dword [esp + 0x28]
xor eax, edi
mov edi, dword [esp + 0x34]
add eax, ecx
mov ecx, dword [esp]
add dword [esp + 0x48], edx
add dword [esp + 0x38], edi
add eax, ecx
add ebp, ecx
mov ecx, edx
mov dword [esp + 0xc], eax
mov eax, edx
rol ecx, 0xd
shr edx, 0xa
mov dword [esp + 0x28], ebp
rol eax, 0xf
xor ecx, eax
mov eax, edi
xor edx, ecx
mov ecx, edi
rol eax, 0xf
rol ecx, 0xd
add edx, dword [esp + 0x4c]
xor ecx, eax
mov eax, edi
shr eax, 0xa
xor eax, ecx
add eax, dword [esp + 0x2c]
mov ecx, edx
mov edi, edx
add esi, edx
add dword [esp + 0x30], edx
shr edx, 0xa
rol ecx, 0xf
rol edi, 0xd
xor edi, ecx
xor edx, edi
mov ecx, eax
mov edi, eax
add edx, dword [esp + 0x1c]
rol ecx, 0xf
rol edi, 0xd
xor edi, ecx
mov ecx, eax
add eax, ebx
shr ecx, 0xa
xor ecx, edi
mov edi, ebp
add ecx, dword [esp + 0x44]
rol edi, 0x15
mov dword [esp], ecx
mov ecx, ebp
rol ecx, 0x1a
xor edi, ecx
mov ecx, ebp
rol ecx, 7
xor ecx, edi
mov edi, dword [esp + 8]
xor edi, ebx
and edi, ebp
mov ebp, dword [esp + 0xc]
xor edi, ebx
add edi, esi
lea ecx, [ecx + edi + 0x748f82ee]
mov esi, ebp
mov edi, ebp
mov ebx, ebp
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x14]
rol esi, 0x1e
rol edi, 0x13
rol ebx, 0xa
xor edi, esi
mov esi, ebp
mov ebp, dword [esp + 0x10]
xor ebx, edi
mov edi, ebp
xor edi, ecx
and edi, esi
mov esi, ebp
mov ebp, dword [esp + 8]
and esi, ecx
mov ecx, dword [esp + 0x18]
xor esi, edi
add esi, ebx
mov ebx, dword [esp + 0x20]
add esi, ecx
mov dword [esp + 4], esi
add ebx, ecx
mov ecx, ebx
mov edi, ebx
mov dword [esp + 0x20], ebx
rol ecx, 0x1a
rol edi, 0x15
xor edi, ecx
mov ecx, ebx
rol ecx, 7
xor ecx, edi
mov edi, dword [esp + 0x28]
xor edi, ebp
and edi, ebx
xor edi, ebp
add edi, eax
mov eax, dword [esp + 0x10]
lea ebp, [ecx + edi + 0x78a5636f]
mov ecx, esi
mov edi, esi
rol ecx, 0x1e
rol edi, 0x13
xor edi, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edi
mov edi, dword [esp + 0xc]
mov ebx, edi
xor edi, eax
and ebx, eax
and edi, esi
mov eax, ebp
mov esi, dword [esp + 0x28]
xor edi, ebx
mov ebx, dword [esp + 0x20]
add edi, ecx
add edi, ebp
mov ebp, dword [esp + 0x14]
xor ebx, esi
add ebp, eax
mov eax, ebp
mov ecx, ebp
and ebx, ebp
mov dword [esp + 0x14], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ebx, esi
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 8]
add ecx, edx
add ebx, ecx
mov ecx, edi
lea ebp, [eax + ebx - 0x7b3787ec]
mov ebx, edi
rol ecx, 0x1e
mov eax, dword [esp + 0xc]
rol ebx, 0x13
xor ebx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, ebx
mov ebx, dword [esp + 4]
mov esi, ebx
and ebx, eax
xor esi, eax
and esi, edi
xor ebx, esi
mov esi, dword [esp + 0x10]
add ebx, ecx
add ebx, ebp
add esi, ebp
mov eax, esi
mov ecx, esi
mov ebp, esi
mov dword [esp + 0x10], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x28]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp]
add ecx, esi
mov esi, dword [esp + 0x14]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x20]
xor esi, ecx
and esi, ebp
mov ebp, dword [esp + 4]
xor esi, ecx
mov ecx, ebx
add esi, dword [esp + 8]
rol ecx, 0x1e
lea eax, [eax + esi - 0x7338fdf8]
mov esi, ebx
rol esi, 0x13
mov dword [esp + 8], eax
mov eax, ebx
xor esi, ecx
rol eax, 0xa
mov ecx, edi
xor ecx, ebp
xor eax, esi
mov esi, edi
and esi, ebp
and ecx, ebx
mov ebp, dword [esp + 0xc]
xor ecx, esi
mov esi, edx
add ecx, eax
mov eax, dword [esp + 8]
rol esi, 0xd
add ecx, eax
add ebp, eax
mov eax, edx
shr edx, 0xa
rol eax, 0xf
mov dword [esp + 0xc], ebp
add dword [esp + 0x68], ecx
xor esi, eax
mov eax, dword [esp]
xor edx, esi
mov esi, dword [esp]
add edx, dword [esp + 0x40]
rol eax, 0xf
rol esi, 0xd
xor esi, eax
mov eax, dword [esp]
shr eax, 0xa
xor eax, esi
mov esi, edx
add eax, dword [esp + 0x48]
rol esi, 0xd
mov dword [esp], eax
mov eax, edx
rol eax, 0xf
xor esi, eax
mov eax, edx
add edx, dword [esp + 0x20]
shr eax, 0xa
xor eax, esi
mov esi, dword [esp]
mov dword [esp + 0x18], eax
mov eax, dword [esp]
rol esi, 0xd
rol eax, 0xf
xor esi, eax
mov eax, dword [esp]
shr eax, 0xa
xor eax, esi
mov esi, ebp
mov dword [esp + 8], eax
mov eax, ebp
rol esi, 0x15
rol eax, 0x1a
xor esi, eax
mov eax, ebp
rol eax, 7
xor eax, esi
mov esi, dword [esp]
add esi, dword [esp + 0x14]
mov dword [esp], esi
mov esi, dword [esp + 0x10]
xor esi, dword [esp + 0x14]
and esi, ebp
mov ebp, ebx
xor esi, dword [esp + 0x14]
and ebp, edi
add esi, edx
mov edx, ecx
lea eax, [eax + esi - 0x6f410006]
mov esi, ecx
rol edx, 0x1e
rol esi, 0x13
xor esi, edx
mov edx, ecx
rol edx, 0xa
xor edx, esi
mov esi, ebx
xor esi, edi
and esi, ecx
xor ebp, esi
mov esi, dword [esp + 4]
add ebp, edx
add ebp, eax
add esi, eax
mov eax, esi
mov edx, esi
mov dword [esp + 4], esi
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, esi
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0xc]
xor edx, dword [esp + 0x10]
and edx, esi
xor edx, dword [esp + 0x10]
add edx, dword [esp]
lea esi, [eax + edx - 0x5baf9315]
mov eax, ebp
mov edx, ebp
rol eax, 0x1e
rol edx, 0x13
add edi, esi
xor edx, eax
mov eax, ebp
rol eax, 0xa
xor eax, edx
mov edx, eax
mov eax, ebp
xor eax, ecx
mov dword [esp + 0x14], eax
mov eax, ebp
and eax, ecx
mov dword [esp], eax
mov eax, ecx
and ecx, ebx
xor eax, ebx
and eax, ebp
xor eax, ecx
mov ecx, edi
add eax, edx
mov edx, edi
rol ecx, 0x15
rol edx, 0x1a
add eax, esi
mov esi, dword [esp + 0x38]
xor ecx, edx
mov edx, edi
rol edx, 7
xor edx, ecx
mov ecx, dword [esp + 4]
add esi, dword [esp + 0x18]
xor ecx, dword [esp + 0xc]
add esi, dword [esp + 0x10]
and ecx, edi
xor ecx, dword [esp + 0xc]
add esi, ecx
lea ecx, [edx + esi - 0x41065c09]
mov edx, eax
mov esi, dword [esp + 0x14]
mov dword [esp + 0x10], ecx
mov ecx, eax
rol edx, 0x13
rol ecx, 0x1e
xor edx, ecx
mov ecx, eax
rol ecx, 0xa
and esi, eax
xor ecx, edx
mov edx, dword [esp]
xor edx, esi
mov esi, dword [esp + 0x30]
add edx, ecx
mov ecx, dword [esp + 0x10]
add esi, dword [esp + 8]
add edx, ecx
add ebx, ecx
mov ecx, ebx
mov dword [esp], edx
mov edx, ebx
rol edx, 0x1a
rol ecx, 0x15
xor ecx, edx
mov edx, ebx
add esi, dword [esp + 0xc]
rol edx, 7
xor edx, ecx
mov ecx, edi
add edi, dword [esp + 0x94]
xor ecx, dword [esp + 4]
and ecx, ebx
add ebx, dword [esp + 0x8c]
xor ecx, dword [esp + 4]
add esi, ecx
lea ecx, [edx + esi - 0x398e870e]
mov edx, dword [esp]
mov dword [esp + 0xc], ecx
mov ecx, edx
mov esi, edx
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, edx
mov edx, eax
xor edx, ebp
rol ecx, 0xa
and edx, dword [esp]
xor ecx, esi
mov esi, eax
add eax, dword [esp + 0x90]
and esi, ebp
add ebp, dword [esp + 0xac]
xor edx, esi
mov esi, dword [esp]
add edx, dword [esp + 0x7c]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0xc]
add esi, dword [esp + 0x88]
add edx, ecx
add dword [esp + 0x68], ebp
mov dword [esp], esi
mov esi, edx
mov edx, dword [esp + 4]
add esi, ebp
mov ebp, dword [esp + 0x3c]
add edx, dword [esp + 0xb0]
add ebp, 0x40
mov dword [esp + 0x3c], ebp
mov dword [esp + 4], edx
mov edx, dword [esp + 0x98]
cmp ebp, edx
jne 0x511f00
mov ecx, dword [esp + 0x84]
mov edx, dword [esp]
mov dword [ecx], esi
mov dword [ecx + 4], edx
mov edx, dword [esp + 8]
mov dword [ecx + 8], eax
mov esi, dword [esp + 0x68]
mov dword [ecx + 0xc], edx
mov edx, dword [esp + 4]
mov dword [ecx + 0x10], esi
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x1c], edx
add esp, 0xd4
pop esi
pop edi
pop ebx
pop ebp
ret