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

Disassembly:
push ebx
push edi
push esi
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
movzx eax, byte [0x430008]
cmp al, 1
je 0x40936d
movzx eax, al
cmp eax, 0xff
je 0x40935c
pop esi
pop edi
pop ebx
jmp 0x409740
mov edi, edx
mov ebx, ecx
call fcn.004263e0
mov ecx, ebx
mov edx, edi
test al, al
je 0x409354
push esi
call fcn.00409380
add esp, 4
pop esi
pop edi
pop ebx
ret
push ebp
push ebx
push edi
push esi
sub esp, 0xb4
mov eax, dword [esp + 0xc8]
mov edx, dword [esp + 0xd0]
mov ecx, dword [eax]
test edx, edx
mov ebp, dword [eax + 4]
mov ebx, dword [eax + 8]
mov edi, dword [eax + 0xc]
mov esi, dword [eax + 0x10]
mov dword [esp + 0x78], ecx
mov ecx, edx
mov edx, dword [eax + 0x14]
mov dword [esp + 0x80], edx
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
je 0x40c016
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xcc]
shl ecx, 6
mov dword [esp + 0x88], ebp
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x94], edi
mov dword [esp + 0x90], edx
add ecx, eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x9c], ecx
mov ecx, esi
mov eax, ecx
mov esi, dword [esp + 0x90]
mov ebx, dword [esp + 0x80]
mov edx, ecx
mov dword [esp + 0x84], ecx
rol ecx, 0x15
mov ebp, dword [esp + 0x88]
rol eax, 0x1a
xor ecx, eax
mov eax, edx
rol eax, 7
xor eax, ecx
mov ecx, esi
mov dword [esp + 0x80], ebx
xor ecx, ebx
add eax, dword [esp + 0x98]
and ecx, edx
xor ecx, esi
mov esi, dword [esp + 0x78]
add eax, ecx
mov ecx, esi
mov edx, esi
mov edi, esi
mov dword [esp + 0x78], esi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
mov esi, dword [esp + 0x8c]
rol ecx, 0xa
xor ecx, edx
mov edx, esi
and esi, ebp
xor edx, ebp
and edx, edi
xor esi, edx
add esi, ecx
mov ecx, dword [esp + 0x50]
mov edx, dword [ecx]
mov ebp, ecx
mov dword [esp + 0x50], ecx
bswap edx
lea ecx, [edx + eax + 0x428a2f98]
add eax, edx
mov dword [esp + 0x60], edx
add esi, ecx
mov ecx, dword [esp + 0x94]
mov dword [esp + 8], esi
lea edi, [ecx + eax + 0x428a2f98]
mov eax, dword [ebp + 4]
mov ecx, edi
mov esi, edi
mov edx, edi
mov dword [esp + 0x18], edi
rol ecx, 0x1a
rol esi, 0x15
rol edx, 7
xor esi, ecx
bswap eax
xor edx, esi
mov esi, ebx
mov ecx, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x90]
xor esi, dword [esp + 0x84]
add ecx, eax
mov eax, dword [esp + 8]
and esi, edi
mov edi, dword [esp + 0x78]
xor esi, ebx
add esi, ecx
lea ecx, [esi + edx]
lea esi, [edx + esi + 0x71374491]
mov edx, eax
mov ebx, eax
mov ebp, eax
rol edx, 0x1e
rol ebx, 0x13
rol ebp, 0xa
xor ebx, edx
mov edx, dword [esp + 0x88]
xor ebp, ebx
mov ebx, edx
xor edx, edi
and ebx, edi
and edx, eax
mov edi, eax
mov eax, dword [esp + 0x8c]
xor edx, ebx
add edx, ebp
add edx, esi
lea eax, [eax + ecx + 0x71374491]
mov dword [esp + 4], edx
mov ecx, eax
mov ebx, eax
mov esi, eax
mov ebp, eax
mov dword [esp], eax
mov eax, dword [esp + 0x50]
rol ecx, 0x1a
rol ebx, 0x15
rol esi, 7
xor ebx, ecx
xor esi, ebx
mov ebx, dword [esp + 0x18]
mov ecx, dword [eax + 8]
mov eax, dword [esp + 0x84]
xor ebx, eax
bswap ecx
and ebx, ebp
mov dword [esp + 0x6c], ecx
mov ebp, edx
xor ebx, eax
mov eax, dword [esp + 0x80]
rol ebp, 0x13
add ecx, eax
mov eax, edx
add ebx, ecx
lea ecx, [ebx + esi]
lea esi, [esi + ebx - 0x4a3f0431]
mov ebx, edx
rol ebx, 0x1e
xor ebp, ebx
mov ebx, edx
mov edx, edi
rol ebx, 0xa
xor ebx, ebp
mov ebp, edi
mov edi, dword [esp + 0x78]
xor ebp, edi
and ebp, eax
mov eax, edx
and eax, edi
xor eax, ebp
add eax, ebx
mov ebx, dword [esp]
add eax, esi
mov edi, eax
mov eax, dword [esp + 0x88]
mov ebp, edi
mov dword [esp + 0xc], edi
rol ebp, 0x13
lea eax, [eax + ecx - 0x4a3f0431]
mov ecx, eax
mov esi, eax
mov edx, eax
mov dword [esp + 0x10], eax
rol ecx, 0x1a
rol esi, 0x15
xor esi, ecx
mov ecx, eax
mov eax, dword [esp + 0x50]
rol ecx, 7
xor ecx, esi
mov esi, dword [eax + 0xc]
mov eax, dword [esp + 0x18]
xor ebx, eax
bswap esi
and ebx, edx
mov dword [esp + 0x34], esi
xor ebx, eax
mov eax, dword [esp + 0x84]
add esi, eax
add ebx, esi
lea eax, [ebx + ecx]
lea esi, [ecx + ebx - 0x164a245b]
mov ebx, edi
mov ecx, dword [esp + 8]
rol ebx, 0x1e
mov dword [esp + 0x14], eax
mov eax, edi
xor ebp, ebx
mov ebx, edi
mov edi, dword [esp + 4]
rol eax, 0xa
xor eax, ebp
mov edx, edi
xor edi, ecx
and edx, ecx
and edi, ebx
mov ecx, dword [esp + 0x14]
xor edi, edx
add edi, eax
mov eax, dword [esp + 0x78]
add edi, esi
mov dword [esp + 0x2c], edi
lea ebx, [eax + ecx - 0x164a245b]
mov eax, ebx
mov esi, ebx
mov ecx, ebx
mov edx, ebx
mov dword [esp + 0x14], ebx
mov ebx, dword [esp]
rol eax, 0x1a
rol esi, 0x15
rol ecx, 7
xor esi, eax
mov eax, dword [esp + 0x50]
xor ecx, esi
mov esi, dword [eax + 0x10]
mov eax, dword [esp + 0x10]
xor eax, ebx
bswap esi
and eax, edx
mov dword [esp + 0x5c], esi
mov edx, dword [esp + 4]
xor eax, ebx
mov ebx, dword [esp + 0x18]
add ebx, esi
mov esi, edi
add ebx, eax
rol esi, 0x13
lea ebp, [ecx + ebx + 0x3956c25b]
mov ecx, edi
mov ebx, dword [esp + 0xc]
rol ecx, 0x1e
xor esi, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, esi
mov esi, ebx
and ebx, edx
xor esi, edx
mov edx, dword [esp + 8]
and esi, edi
xor ebx, esi
mov esi, dword [esp]
add ebx, ecx
add edx, ebp
add ebx, ebp
mov eax, edx
mov ecx, edx
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x10]
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 + 0x50]
mov ecx, dword [ecx + 0x14]
bswap ecx
mov dword [esp + 0x58], ecx
add ecx, esi
mov esi, dword [esp + 0x14]
xor esi, ebx
and esi, edx
mov edx, dword [esp + 0x18]
xor esi, ebx
mov ebx, edi
add esi, ecx
mov ecx, dword [esp + 0xc]
lea ebp, [eax + esi + 0x59f111f1]
mov eax, edx
mov esi, edx
rol eax, 0x1e
rol esi, 0x13
xor esi, eax
mov eax, edx
and ebx, ecx
rol eax, 0xa
xor eax, esi
mov esi, edi
mov edi, edx
xor esi, ecx
and esi, edx
mov edx, dword [esp + 0x10]
xor esi, ebx
add esi, eax
add esi, ebp
mov dword [esp], esi
mov esi, dword [esp + 4]
add esi, ebp
mov ebp, dword [esp + 0x50]
mov eax, esi
mov ebx, esi
mov ecx, esi
mov dword [esp + 4], esi
rol eax, 0x1a
rol ebx, 0x15
rol ecx, 7
xor ebx, eax
mov eax, dword [ebp + 0x18]
xor ecx, ebx
mov ebx, dword [esp + 8]
bswap eax
mov dword [esp + 0x3c], eax
add eax, edx
mov edx, dword [esp + 0x14]
xor ebx, edx
and ebx, esi
mov esi, dword [esp]
xor ebx, edx
add ebx, eax
lea edx, [ecx + ebx - 0x6dc07d5c]
mov ecx, edi
mov eax, esi
mov ebx, esi
rol eax, 0x1e
rol ebx, 0x13
xor ebx, eax
mov eax, esi
rol eax, 0xa
xor eax, ebx
mov ebx, edi
mov edi, dword [esp + 0x2c]
xor ebx, edi
and ecx, edi
and ebx, esi
mov esi, dword [esp + 0xc]
xor ecx, ebx
mov ebx, dword [esp + 4]
add ecx, eax
add ecx, edx
add esi, edx
mov edi, ecx
mov edx, dword [esp + 0x14]
mov eax, esi
mov ecx, esi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [ebp + 0x1c]
mov ebp, dword [esp + 8]
xor ebx, ebp
bswap ecx
and ebx, esi
mov dword [esp + 0x38], ecx
add ecx, edx
mov esi, dword [esp + 0x18]
xor ebx, ebp
add ebx, ecx
mov ecx, edi
lea ebx, [eax + ebx - 0x54e3a12b]
mov eax, edi
rol ecx, 0x13
rol eax, 0x1e
xor ecx, eax
mov eax, edi
rol eax, 0xa
xor eax, ecx
mov ecx, dword [esp]
mov edx, ecx
xor ecx, esi
and edx, esi
and ecx, edi
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x10]
xor ecx, edx
add ecx, eax
add ecx, ebx
mov edx, ecx
mov ecx, dword [esp + 0x50]
add edi, ebx
mov eax, edi
mov ebx, edi
mov dword [esp + 0x1c], edx
mov dword [esp + 0x2c], edi
rol eax, 0x1a
rol ebx, 0x15
xor ebx, eax
mov eax, edi
mov ecx, dword [ecx + 0x20]
rol eax, 7
xor eax, ebx
mov ebx, dword [esp + 0xc]
bswap ecx
mov dword [esp + 0x70], ecx
add ebp, ecx
mov ecx, dword [esp + 4]
xor ebx, ecx
and ebx, edi
xor ebx, ecx
mov ecx, edx
add ebx, ebp
rol ecx, 0x13
mov ebp, dword [esp]
lea ebx, [eax + ebx - 0x27f85568]
mov eax, edx
rol eax, 0x1e
xor ecx, eax
mov eax, edx
rol eax, 0xa
xor eax, ecx
mov ecx, esi
and esi, ebp
xor ecx, ebp
and ecx, edx
mov edx, dword [esp + 4]
xor esi, ecx
mov ecx, dword [esp + 0x18]
add esi, eax
add esi, ebx
mov dword [esp + 0x20], esi
add ecx, ebx
mov eax, ecx
mov ebx, ecx
rol ecx, 0x15
rol eax, 0x1a
mov ebp, ebx
mov dword [esp + 0x18], ebx
xor ecx, eax
mov eax, ebx
mov ebx, dword [esp + 0xc]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + 0x24]
bswap ecx
mov dword [esp + 0x30], ecx
add ecx, edx
mov edx, edi
mov edi, ebx
xor edx, ebx
and edx, ebp
mov ebp, dword [esp + 0x10]
xor edx, ebx
add edx, ecx
mov ecx, esi
lea ebx, [eax + edx + 0x12835b01]
mov eax, esi
rol ecx, 0x13
mov edx, esi
rol eax, 0x1e
xor ecx, eax
mov eax, esi
rol eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x1c]
mov esi, ecx
xor ecx, ebp
and esi, ebp
and ecx, edx
xor ecx, esi
add ecx, eax
add ecx, ebx
mov esi, ecx
mov ecx, dword [esp]
mov dword [esp + 4], esi
add ecx, ebx
mov eax, ecx
mov edx, ecx
rol ecx, 0x15
rol eax, 0x1a
mov ebx, edx
mov dword [esp], edx
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x18]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + 0x28]
bswap ecx
mov dword [esp + 0x24], ecx
add ecx, edi
mov edi, dword [esp + 0x2c]
xor edx, edi
and edx, ebx
mov ebx, esi
xor edx, edi
add edx, ecx
mov ecx, esi
lea ebp, [eax + edx + 0x243185be]
mov eax, esi
rol ecx, 0x13
mov edx, dword [esp + 0x1c]
rol eax, 0x1e
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x20]
rol eax, 0xa
xor eax, ecx
mov ecx, esi
xor ecx, edx
and ecx, ebx
mov ebx, esi
and ebx, edx
mov edx, dword [esp]
xor ebx, ecx
add ebx, eax
add ebx, ebp
mov esi, ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x14], esi
add ebx, ebp
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x10], ebx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + 0x2c]
bswap ecx
mov dword [esp + 0x48], ecx
add ecx, edi
mov edi, dword [esp + 0x18]
xor edx, edi
mov ebp, edi
and edx, ebx
xor edx, edi
mov edi, esi
add edx, ecx
mov ecx, esi
lea ebx, [eax + edx + 0x550c7dc3]
mov eax, esi
rol ecx, 0x13
mov edx, dword [esp + 4]
rol eax, 0x1e
xor ecx, eax
mov eax, esi
rol eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x20]
mov esi, edx
xor edx, ecx
and esi, ecx
and edx, edi
xor edx, esi
mov esi, ebp
add edx, eax
add edx, ebx
mov edi, edx
mov edx, dword [esp + 0x1c]
add edx, ebx
mov eax, edx
mov ecx, edx
mov ebx, edx
mov dword [esp + 0x1c], 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 + 0x50]
mov ecx, dword [ecx + 0x30]
bswap ecx
mov dword [esp + 0x28], ecx
add esi, ecx
mov ecx, dword [esp + 0x10]
xor ecx, edx
and ecx, ebx
xor ecx, edx
mov edx, edi
add ecx, esi
mov ebx, edx
mov dword [esp + 0xc], edx
mov esi, dword [esp + 0x1c]
lea ebp, [eax + ecx + 0x72be5d74]
mov ecx, edi
rol edi, 0x13
rol ebx, 0xa
mov eax, dword [esp + 4]
rol ecx, 0x1e
xor edi, ecx
xor ebx, edi
mov edi, dword [esp + 0x14]
mov ecx, edi
and edi, eax
xor ecx, eax
and ecx, edx
mov edx, dword [esp + 0x20]
xor edi, ecx
add edi, ebx
add edi, ebp
add edx, ebp
mov ebx, edi
mov eax, edx
mov ecx, edx
mov ebp, edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ebx
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 + 0x50]
mov ecx, dword [ecx + 0x34]
bswap ecx
mov dword [esp + 0x4c], ecx
add ecx, edx
mov edx, dword [esp + 0x10]
xor esi, edx
and esi, ebp
mov ebp, dword [esp + 0x14]
xor esi, edx
add esi, ecx
mov ecx, ebx
lea edi, [eax + esi - 0x7f214e02]
mov esi, ebx
rol ecx, 0x1e
mov eax, ebx
rol esi, 0x13
xor esi, ecx
mov ecx, ebx
mov ebx, dword [esp + 0xc]
rol ecx, 0xa
xor ecx, esi
mov esi, ebx
xor ebx, ebp
and esi, ebp
mov ebp, dword [esp + 4]
and ebx, eax
xor ebx, esi
mov esi, dword [esp + 0x10]
add ebx, ecx
add ebx, edi
add ebp, edi
mov edi, dword [esp + 0x1c]
mov edx, ebx
mov eax, ebp
mov ecx, ebp
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + 0x38]
bswap ecx
mov dword [esp + 0x40], ecx
add ecx, esi
mov esi, dword [esp + 0x20]
xor esi, edi
and esi, ebp
mov ebp, edx
xor esi, edi
mov edi, edx
add esi, ecx
mov ecx, edx
rol edi, 0x13
lea ebx, [eax + esi - 0x6423f959]
mov esi, edx
rol ecx, 0x1e
mov edx, dword [esp + 0xc]
xor edi, ecx
rol esi, 0xa
xor esi, edi
mov edi, dword [esp + 0x18]
mov ecx, edi
and edi, edx
xor ecx, edx
mov edx, dword [esp + 0x14]
and ecx, ebp
xor edi, ecx
add edi, esi
mov esi, dword [esp + 4]
add edx, ebx
add edi, ebx
mov eax, edx
mov ecx, edx
mov ebp, edx
mov dword [esp + 0x14], edx
mov ebx, edi
mov dword [esp + 0x10], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x1c]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x50]
mov ecx, dword [ecx + 0x3c]
bswap ecx
mov dword [esp + 0x54], ecx
add ecx, edx
mov edx, dword [esp + 0x20]
xor esi, edx
and esi, ebp
mov ebp, dword [esp + 0x5c]
xor esi, edx
mov edx, dword [esp + 0x18]
add esi, ecx
mov ecx, edi
lea eax, [eax + esi - 0x3e640e8c]
mov esi, edi
rol ecx, 0x1e
rol esi, 0x13
add dword [esp + 0xc], eax
xor esi, ecx
mov ecx, edi
mov edi, dword [esp + 8]
rol ecx, 0xa
xor ecx, esi
mov esi, edi
xor edi, edx
and esi, edx
and edi, ebx
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x44]
xor edi, esi
add edi, ecx
mov ecx, ebp
add edi, eax
mov eax, ebp
rol ecx, 0x19
shr ebp, 3
rol eax, 0xe
mov dword [esp], edi
mov edi, edx
xor eax, ecx
mov ecx, dword [esp + 0x34]
rol edi, 0x19
xor ebp, eax
mov esi, ecx
rol ecx, 0xe
rol esi, 0x19
xor ecx, esi
mov esi, edx
rol esi, 0xe
xor esi, edi
mov edi, ebx
rol ebx, 0xe
rol edi, 0x19
xor ebx, edi
mov edi, dword [esp + 0x34]
mov eax, edi
add edi, dword [esp + 0x28]
shr eax, 3
xor eax, ecx
mov ecx, edx
add edx, dword [esp + 0x48]
shr ecx, 3
xor ecx, esi
mov esi, dword [esp + 0x44]
add edi, ebp
mov ebp, edi
add edx, eax
mov eax, dword [esp + 0x60]
shr esi, 3
xor esi, ebx
mov ebx, edx
mov edx, dword [esp + 0x44]
add eax, dword [esp + 0x30]
add edx, dword [esp + 0x24]
add eax, esi
mov esi, dword [esp + 0x40]
mov edi, eax
add edx, ecx
mov eax, esi
mov ecx, esi
shr esi, 0xa
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
xor esi, ecx
add esi, edi
mov edi, dword [esp + 0x54]
mov dword [esp + 0x74], esi
mov eax, edi
mov ecx, edi
shr edi, 0xa
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
mov eax, esi
xor edi, ecx
mov ecx, esi
rol eax, 0xf
rol ecx, 0xd
add edi, edx
mov edx, dword [esp + 4]
xor ecx, eax
mov eax, esi
mov dword [esp + 0x60], edi
shr eax, 0xa
xor eax, ecx
mov ecx, edi
add eax, ebx
rol ecx, 0xd
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x34], eax
mov eax, edi
rol eax, 0xf
xor ecx, eax
mov eax, edi
mov edi, dword [esp + 0xc]
shr eax, 0xa
add ebx, esi
xor eax, ecx
add eax, ebp
mov ebp, dword [esp + 8]
mov ecx, edi
mov dword [esp + 0x44], eax
mov eax, edi
mov dword [esp + 0xc], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x14]
xor ecx, edx
and ecx, edi
xor ecx, edx
add ecx, ebx
mov ebx, dword [esp]
lea edx, [eax + ecx - 0x1b64963f]
mov eax, dword [esp + 0x10]
mov ecx, ebx
mov esi, ebx
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, ebx
rol ecx, 0xa
xor ecx, esi
mov esi, eax
and eax, ebp
xor esi, ebp
and esi, ebx
xor eax, esi
mov esi, dword [esp + 0x18]
add eax, ecx
add eax, edx
mov ebx, eax
add esi, edx
mov eax, esi
mov ecx, esi
mov edx, esi
mov dword [esp + 0x18], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 4]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x60]
add ecx, esi
mov esi, edi
mov edi, dword [esp + 0x14]
xor esi, edi
and esi, edx
mov edx, ebx
xor esi, edi
mov edi, dword [esp]
mov dword [esp + 0x1c], edx
add esi, ecx
mov ecx, ebx
lea eax, [eax + esi - 0x1041b87a]
mov esi, ebx
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, ebx
mov ebx, dword [esp + 0x10]
rol ecx, 0xa
xor ecx, esi
mov esi, edi
xor edi, ebx
and esi, ebx
mov ebx, dword [esp + 0xc]
and edi, edx
xor edi, esi
mov esi, dword [esp + 8]
add edi, ecx
add edi, eax
mov ebp, edi
add esi, eax
mov dword [esp + 0x2c], ebp
mov eax, esi
mov ecx, esi
mov edi, esi
mov dword [esp + 8], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x14]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x34]
add ecx, esi
mov esi, dword [esp + 0x18]
xor esi, ebx
and esi, edi
mov edi, edx
xor esi, ebx
add esi, ecx
mov ecx, ebp
lea ebx, [eax + esi + 0xfc19dc6]
mov esi, ebp
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, esi
mov esi, edx
mov edx, dword [esp]
xor esi, edx
and edi, edx
mov edx, dword [esp + 0xc]
and esi, ebp
xor edi, esi
mov esi, dword [esp + 0x18]
add edi, ecx
add edi, ebx
mov dword [esp + 4], edi
mov edi, dword [esp + 0x10]
add edi, ebx
mov eax, edi
mov ecx, edi
mov dword [esp + 0x10], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x44]
add ecx, edx
mov edx, dword [esp + 8]
xor edx, esi
and edx, edi
mov edi, dword [esp + 4]
xor edx, esi
mov esi, ebp
add edx, ecx
lea ebx, [eax + edx + 0x240ca1cc]
mov eax, esi
mov ecx, edi
mov edx, edi
add dword [esp], ebx
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, ebp
mov ebp, dword [esp + 0x1c]
xor eax, ebp
and edx, ebp
mov ebp, dword [esp + 0x74]
and eax, edi
xor eax, edx
add eax, ecx
mov ecx, dword [esp + 0x70]
add eax, ebx
mov esi, ebp
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0xc], eax
rol esi, 0xe
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x38]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0x14], edx
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x3c]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x6c], ecx
mov ecx, dword [esp + 0x58]
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x28]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0x68], edx
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x48]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x54]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0xb0], ecx
mov ecx, dword [esp + 0x24]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0x30]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, ebp
shr ebp, 3
rol eax, 0x19
mov dword [esp + 0xa8], ecx
xor esi, eax
mov eax, edx
rol edx, 0xe
rol eax, 0x19
xor ebp, esi
xor edx, eax
mov eax, dword [esp + 0x40]
mov edi, eax
mov ecx, eax
mov eax, ebx
rol edi, 0x19
rol ecx, 0xe
rol eax, 0x19
xor ecx, edi
mov edi, ebx
rol edi, 0xe
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 0x54]
xor edi, eax
mov eax, dword [esp + 0x3c]
add ebp, ecx
mov dword [esp + 0xa0], eax
add eax, ecx
shr ecx, 3
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x3c], eax
xor ecx, edx
mov eax, dword [esp + 0x58]
mov edx, dword [esp + 0x40]
mov esi, eax
add eax, edx
add ecx, edx
shr edx, 3
mov ebp, eax
mov eax, ebx
xor edx, dword [esp + 0xa4]
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x28]
shr esi, 3
xor esi, dword [esp + 0x68]
add ebx, eax
add edx, eax
shr eax, 3
xor eax, edi
mov edi, dword [esp + 0x30]
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0xa0]
add ebx, esi
mov esi, dword [esp + 0x34]
add eax, ecx
mov dword [esp + 0x4c], eax
mov eax, ecx
mov ecx, dword [esp + 0x48]
shr eax, 3
xor eax, dword [esp + 0x64]
shr edx, 3
xor edx, dword [esp + 0x6c]
add eax, ecx
shr ecx, 3
mov dword [esp + 0x64], eax
xor ecx, dword [esp + 0xb0]
mov eax, dword [esp + 0x24]
add ebp, edx
mov edx, esi
rol edx, 0xd
add ecx, eax
shr eax, 3
xor eax, dword [esp + 0xac]
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x70]
add eax, edi
shr edi, 3
xor edi, dword [esp + 0xa8]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x38]
add edi, ecx
shr ecx, 3
xor ecx, dword [esp + 0x14]
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x3c]
add ecx, eax
shr eax, 3
xor eax, dword [esp + 0x20]
add ecx, dword [esp + 0x74]
add edi, eax
mov eax, esi
rol eax, 0xf
xor edx, eax
mov eax, esi
mov esi, dword [esp + 0x44]
shr eax, 0xa
xor eax, edx
add eax, ebx
mov ebx, eax
mov eax, esi
mov edx, esi
shr esi, 0xa
rol eax, 0xf
rol edx, 0xd
mov dword [esp + 0x68], ebx
xor edx, eax
mov eax, ebx
xor esi, edx
mov edx, ebx
rol eax, 0xf
rol edx, 0xd
add esi, ebp
mov ebp, dword [esp]
xor edx, eax
mov eax, ebx
mov dword [esp + 0x58], esi
shr eax, 0xa
xor eax, edx
mov edx, esi
add eax, edi
rol edx, 0xd
mov dword [esp], ebp
mov dword [esp + 0x3c], eax
mov eax, esi
rol eax, 0xf
xor edx, eax
mov eax, esi
mov esi, dword [esp + 0x18]
shr eax, 0xa
xor eax, edx
mov edx, dword [esp + 8]
add eax, ecx
mov ecx, ebp
mov dword [esp + 0x20], eax
mov eax, ebp
rol ecx, 0x15
add esi, ebx
mov ebx, dword [esp + 4]
rol eax, 0x1a
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x10]
xor ecx, edx
and ecx, ebp
xor ecx, edx
add ecx, esi
mov esi, dword [esp + 0xc]
lea edi, [eax + ecx + 0x2de92c6f]
mov eax, dword [esp + 0x2c]
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, eax
xor edx, eax
and edx, esi
mov esi, dword [esp + 0x10]
xor ebx, edx
mov edx, dword [esp + 0x1c]
add ebx, ecx
add ebx, edi
mov dword [esp + 0x14], ebx
add edx, edi
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 + 8]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x58]
add ecx, edx
mov edx, ebp
xor edx, esi
and edx, edi
mov edi, dword [esp + 4]
xor edx, esi
mov esi, ebx
add edx, ecx
rol esi, 0xa
lea ebp, [eax + edx + 0x4a7484aa]
mov eax, ebx
mov edx, ebx
rol eax, 0x1e
rol edx, 0x13
xor edx, eax
mov eax, dword [esp + 0xc]
xor esi, edx
mov edx, eax
xor eax, edi
and edx, edi
and eax, ebx
xor eax, edx
add eax, esi
mov esi, dword [esp + 0x10]
add eax, ebp
mov ebx, eax
mov eax, dword [esp + 0x2c]
add eax, ebp
mov ecx, eax
mov edx, eax
mov dword [esp + 0x2c], eax
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, eax
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x3c]
lea edi, [edx + esi]
mov esi, dword [esp + 0x1c]
mov edx, dword [esp]
xor esi, edx
and esi, eax
mov eax, ebx
xor esi, edx
rol eax, 0xa
add esi, edi
mov edi, dword [esp + 0xc]
lea edx, [ecx + esi + 0x5cb0a9dc]
mov ecx, ebx
mov esi, ebx
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, ebx
mov ebx, dword [esp + 0x14]
xor eax, esi
mov ebp, ecx
mov dword [esp + 0x28], ebp
mov esi, ebx
xor esi, edi
and esi, ecx
mov ecx, ebx
and ecx, edi
mov edi, dword [esp + 0x1c]
xor ecx, esi
mov esi, dword [esp + 4]
add ecx, eax
add ecx, edx
mov dword [esp + 8], ecx
add esi, edx
mov eax, esi
mov edx, esi
mov ebx, esi
mov dword [esp + 4], esi
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, esi
mov esi, dword [esp]
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x20]
add edx, esi
mov esi, dword [esp + 0x2c]
xor esi, edi
and esi, ebx
mov ebx, dword [esp + 0x14]
xor esi, edi
mov edi, dword [esp + 0x3c]
add esi, edx
lea edx, [eax + esi + 0x76f988da]
mov eax, ecx
mov esi, ecx
rol eax, 0x1e
rol esi, 0x13
xor esi, eax
mov eax, ecx
rol eax, 0xa
xor eax, esi
mov esi, ebp
and ebp, ebx
xor esi, ebx
mov ebx, dword [esp + 0x2c]
and esi, ecx
mov ecx, dword [esp + 0xc]
xor esi, ebp
mov ebp, edi
add esi, eax
mov eax, edi
shr ebp, 0xa
add esi, edx
rol eax, 0xf
add ecx, edx
mov edx, edi
mov edi, dword [esp + 0x20]
mov dword [esp + 0x38], esi
rol edx, 0xd
mov dword [esp + 0xc], ecx
xor edx, eax
mov eax, dword [esp + 0x30]
xor ebp, edx
mov edx, edi
rol edx, 0xd
add eax, dword [esp + 0x60]
add ebp, eax
mov eax, edi
shr edi, 0xa
rol eax, 0xf
mov dword [esp + 0x6c], ebp
xor edx, eax
mov eax, ebp
xor edi, edx
mov edx, dword [esp + 0x24]
rol eax, 0xf
add edx, dword [esp + 0x34]
add edi, edx
mov edx, ebp
rol edx, 0xd
mov dword [esp + 0x70], edi
xor edx, eax
mov eax, ebp
shr eax, 0xa
xor eax, edx
mov edx, dword [esp + 0x48]
add edx, dword [esp + 0x44]
add eax, edx
mov edx, edi
mov dword [esp + 0x5c], eax
mov eax, edi
rol edx, 0xd
shr edi, 0xa
rol eax, 0xf
xor edx, eax
mov eax, ecx
xor edi, edx
mov edx, dword [esp + 0x64]
rol eax, 0x1a
add edx, dword [esp + 0x68]
add edi, edx
mov edx, ecx
rol edx, 0x15
mov dword [esp + 0x10], edi
mov edi, ecx
xor edx, eax
mov eax, ecx
mov ecx, dword [esp + 0x1c]
rol eax, 7
xor eax, edx
mov edx, dword [esp + 4]
add ecx, ebp
mov ebp, dword [esp + 0x28]
xor edx, ebx
and edx, edi
mov edi, esi
xor edx, ebx
mov ebx, dword [esp + 8]
rol edi, 0x13
add edx, ecx
mov ecx, dword [esp + 0x70]
lea edx, [eax + edx - 0x67c1aeae]
mov eax, esi
rol eax, 0x1e
xor edi, eax
mov eax, esi
rol eax, 0xa
xor eax, edi
mov edi, ebx
and ebx, ebp
xor edi, ebp
and edi, esi
xor ebx, edi
mov edi, dword [esp + 0xc]
add ebx, eax
add ebx, edx
mov ebp, ebx
mov ebx, dword [esp + 0x14]
add ebx, edx
mov eax, ebx
mov edx, ebx
mov dword [esp + 0x14], ebx
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, ebx
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x2c]
add edx, ecx
mov ecx, dword [esp + 4]
xor edi, ecx
and edi, ebx
mov ebx, esi
xor edi, ecx
mov ecx, dword [esp + 8]
add edi, edx
lea edx, [eax + edi - 0x57ce3993]
mov eax, ebp
mov edi, ebp
rol eax, 0x1e
rol edi, 0x13
xor edi, eax
mov eax, ebp
xor ebx, ecx
rol eax, 0xa
and ebx, ebp
xor eax, edi
mov edi, esi
mov esi, ebp
and edi, ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x24], esi
xor ebx, edi
mov edi, dword [esp + 0x14]
add ebx, eax
add ebx, edx
mov ebp, ebx
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x1c], ebp
add ebx, edx
mov eax, ebx
mov edx, ebx
mov dword [esp + 0x28], ebx
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, ebx
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x5c]
add edx, ecx
mov ecx, dword [esp + 0xc]
xor edi, ecx
and edi, ebx
mov ebx, esi
xor edi, ecx
mov ecx, dword [esp + 8]
add edi, edx
lea edx, [eax + edi - 0x4ffcd838]
mov eax, ebp
mov edi, ebp
rol eax, 0x1e
rol edi, 0x13
xor edi, eax
mov eax, ebp
add ecx, edx
rol eax, 0xa
mov dword [esp + 8], ecx
xor eax, edi
mov edi, esi
mov esi, dword [esp + 0x38]
xor edi, esi
and ebx, esi
mov esi, dword [esp + 0xc]
and edi, ebp
xor ebx, edi
mov edi, dword [esp + 0x28]
add ebx, eax
mov eax, ecx
add ebx, edx
mov edx, ecx
rol eax, 0x1a
rol edx, 0x15
mov dword [esp], ebx
xor edx, eax
mov eax, ecx
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x10]
add edx, esi
mov esi, dword [esp + 0x14]
xor edi, esi
and edi, ecx
mov ecx, dword [esp + 0x24]
xor edi, esi
add edi, edx
mov edx, ebx
lea esi, [eax + edi - 0x40a68039]
mov eax, ebx
mov edi, ebx
rol eax, 0x1e
rol edi, 0x13
xor edi, eax
mov eax, ebx
mov ebx, ebp
rol eax, 0xa
xor ebx, ecx
xor eax, edi
mov edi, ebp
mov ebp, dword [esp + 0x5c]
and ebx, edx
and edi, ecx
mov ecx, dword [esp + 0x38]
xor ebx, edi
add ebx, eax
mov eax, ebp
mov edx, ebp
shr ebp, 0xa
add ebx, esi
rol eax, 0xf
rol edx, 0xd
add ecx, esi
xor edx, eax
mov eax, dword [esp + 0x4c]
mov esi, ecx
mov dword [esp + 0x38], ecx
xor ebp, edx
add eax, dword [esp + 0x58]
add ebp, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x64], ebp
mov edi, eax
mov edx, eax
rol edi, 0xf
rol edx, 0xd
xor edx, edi
mov edi, eax
mov eax, dword [esp + 0x40]
shr edi, 0xa
xor edi, edx
mov edx, ebp
rol edx, 0xd
add eax, dword [esp + 0x3c]
add edi, eax
mov eax, ebp
rol eax, 0xf
mov dword [esp + 0x4c], edi
xor edx, eax
mov eax, ebp
shr eax, 0xa
xor eax, edx
mov edx, dword [esp + 0x54]
add edx, dword [esp + 0x20]
add eax, edx
mov edx, edi
mov dword [esp + 0x48], eax
mov eax, edi
rol edx, 0xd
shr edi, 0xa
rol eax, 0xf
xor edx, eax
mov eax, ecx
xor edi, edx
mov edx, dword [esp + 0x7c]
rol eax, 0x1a
add edx, dword [esp + 0x6c]
add edi, edx
mov edx, ecx
rol edx, 0x15
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x14]
xor edx, eax
mov eax, ecx
mov ecx, dword [esp + 0x28]
rol eax, 7
xor eax, edx
mov edx, dword [esp + 8]
add edi, ebp
mov ebp, ebx
mov dword [esp + 4], ebp
xor edx, ecx
and edx, esi
xor edx, ecx
mov ecx, dword [esp + 0x1c]
add edx, edi
mov edi, ebp
lea esi, [eax + edx - 0x391ff40d]
mov eax, ebx
rol ebx, 0x13
rol edi, 0xa
rol eax, 0x1e
xor ebx, eax
xor edi, ebx
mov ebx, dword [esp]
mov eax, ebx
and ebx, ecx
xor eax, ecx
mov ecx, dword [esp + 0x4c]
and eax, ebp
xor ebx, eax
add ebx, edi
mov edi, dword [esp + 0x24]
add ebx, esi
mov dword [esp + 0x30], ebx
add edi, esi
mov eax, edi
mov edx, edi
mov ebp, edi
mov dword [esp + 0x24], edi
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, edi
mov edi, dword [esp + 0x38]
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x28]
add edx, ecx
mov ecx, dword [esp + 8]
xor edi, ecx
mov esi, ecx
and edi, ebp
xor edi, ecx
add edi, edx
mov edx, ebx
lea ecx, [eax + edi - 0x2a586eb9]
mov edi, ebx
rol edx, 0x1e
mov eax, dword [esp]
rol edi, 0x13
xor edi, edx
mov edx, ebx
rol edx, 0xa
xor edx, edi
mov edi, dword [esp + 4]
mov ebp, edi
xor edi, eax
and ebp, eax
and edi, ebx
xor edi, ebp
add edi, edx
add edi, ecx
mov ebp, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x28], ebp
add edi, ecx
mov eax, edi
mov edx, edi
mov dword [esp + 0x1c], edi
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, edi
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x48]
lea ecx, [edx + esi]
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x38]
xor edx, esi
and edx, edi
mov edi, ebp
xor edx, esi
add edx, ecx
mov ecx, ebp
lea eax, [eax + edx + 0x6ca6351]
mov edx, ebp
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, ebp
mov ebp, dword [esp + 4]
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
xor edx, ebp
and edx, edi
mov edi, ebx
and edi, ebp
xor edi, edx
mov edx, dword [esp]
add edi, ecx
add edi, eax
mov dword [esp + 0x2c], edi
add edx, eax
mov eax, edx
mov ecx, edx
mov ebp, edx
mov dword [esp], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x1c]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x18]
add ecx, esi
mov esi, dword [esp + 0x24]
xor edx, esi
and edx, ebp
mov ebp, dword [esp + 0x3c]
xor edx, esi
mov esi, dword [esp + 0x28]
add edx, ecx
mov ecx, edi
lea eax, [eax + edx + 0x14292967]
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 edx, ebx
and esi, edi
mov edi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x58]
xor esi, edx
add esi, ecx
mov ecx, dword [esp + 0x68]
add esi, eax
mov dword [esp + 8], esi
mov esi, ebp
rol esi, 0x19
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0x44]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x34]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x60]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, ebx
mov dword [esp + 0x54], ecx
mov ecx, edi
rol edi, 0xe
rol eax, 0x19
rol ecx, 0x19
xor edi, ecx
mov ecx, dword [esp + 0x20]
mov edx, ecx
rol ecx, 0xe
rol edx, 0x19
xor ecx, edx
mov edx, ebp
rol edx, 0xe
xor edx, esi
mov esi, ebx
rol esi, 0xe
xor esi, eax
mov eax, dword [esp + 0x6c]
shr eax, 3
xor eax, edi
mov edi, eax
mov eax, dword [esp + 0x20]
add edi, eax
shr eax, 3
xor eax, ecx
mov dword [esp + 0x7c], edi
mov edi, dword [esp + 0x34]
mov ecx, dword [esp + 0x60]
add eax, ebp
shr ebp, 3
xor ebp, edx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x48]
add ebp, ebx
shr ebx, 3
mov dword [esp + 0x3c], ebp
mov ebp, dword [esp + 0x68]
xor ebx, esi
mov edx, eax
rol edx, 0xd
add ebx, ebp
shr ebp, 3
mov dword [esp + 0x58], ebx
xor ebp, dword [esp + 0xc]
mov ebx, dword [esp + 0x44]
add ebp, ebx
shr ebx, 3
xor ebx, dword [esp + 0x14]
add ebp, dword [esp + 0x64]
add ebx, edi
shr edi, 3
xor edi, dword [esp + 0x40]
add ebx, dword [esp + 0x10]
add edi, ecx
shr ecx, 3
xor ecx, dword [esp + 0x54]
add edi, dword [esp + 0x5c]
add ecx, dword [esp + 0x74]
mov esi, ecx
mov ecx, eax
shr eax, 0xa
add esi, dword [esp + 0x70]
rol ecx, 0xf
xor edx, ecx
xor eax, edx
add eax, esi
mov esi, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x74], esi
mov ecx, eax
mov edx, eax
rol ecx, 0xf
rol edx, 0xd
xor edx, ecx
mov ecx, eax
mov eax, esi
shr ecx, 0xa
shr eax, 0xa
xor ecx, edx
mov edx, esi
add ecx, edi
rol edx, 0xd
mov edi, ecx
mov ecx, esi
rol ecx, 0xf
mov dword [esp + 0x60], edi
xor edx, ecx
mov ecx, edi
xor eax, edx
mov edx, edi
rol ecx, 0xf
rol edx, 0xd
add eax, ebx
mov ebx, dword [esp + 0x2c]
xor edx, ecx
mov ecx, edi
mov dword [esp + 0x54], eax
mov edi, dword [esp + 0x24]
shr ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0x1c]
add ecx, ebp
mov ebp, dword [esp + 4]
mov dword [esp + 0x14], ecx
add edi, esi
mov esi, dword [esp + 8]
mov eax, ebp
mov ecx, ebp
mov dword [esp + 4], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp]
xor ecx, edx
and ecx, ebp
xor ecx, edx
mov edx, esi
add ecx, edi
rol edx, 0x13
mov edi, dword [esp + 0x28]
lea eax, [eax + ecx + 0x27b70a85]
mov ecx, esi
rol ecx, 0x1e
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
and ebx, edi
xor edx, edi
and edx, esi
mov esi, dword [esp + 0x30]
xor ebx, edx
mov edx, dword [esp + 0x1c]
add ebx, ecx
add ebx, eax
add esi, eax
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 + 0x60]
lea edi, [ecx + edx]
mov ecx, dword [esp]
mov edx, ebp
mov ebp, ebx
mov dword [esp + 0x38], ebp
xor edx, ecx
and edx, esi
mov esi, dword [esp + 8]
xor edx, ecx
mov ecx, ebx
add edx, edi
rol ecx, 0x1e
lea eax, [eax + edx + 0x2e1b2138]
mov edx, ebx
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
mov ebx, dword [esp + 0x2c]
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, ebx
and edx, ebx
and esi, ebp
xor esi, edx
mov edx, dword [esp]
add esi, ecx
add esi, eax
mov ebx, esi
mov esi, dword [esp + 0x28]
mov dword [esp + 0x34], ebx
add esi, eax
mov eax, esi
mov ecx, esi
mov dword [esp + 0x28], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x54]
lea edi, [ecx + edx]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 4]
xor edx, ecx
and edx, esi
mov esi, ebx
xor edx, ecx
mov ecx, ebx
add edx, edi
rol ecx, 0x1e
lea eax, [eax + edx + 0x4d2c6dfc]
mov edx, ebx
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
mov ebx, dword [esp + 8]
rol ecx, 0xa
xor ecx, edx
mov edx, ebp
xor edx, ebx
and edx, esi
mov esi, ebp
and esi, ebx
xor esi, edx
mov edx, dword [esp + 4]
add esi, ecx
add esi, eax
mov ebx, esi
mov esi, dword [esp + 0x2c]
mov dword [esp + 0x1c], ebx
add esi, eax
mov eax, esi
mov ecx, esi
mov dword [esp + 0x2c], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x14]
lea edi, [ecx + edx]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
xor edx, ecx
and edx, esi
mov esi, dword [esp + 0x34]
xor edx, ecx
mov ecx, ebx
add edx, edi
rol ecx, 0x1e
mov edi, dword [esp + 8]
lea eax, [eax + edx + 0x53380d13]
mov edx, ebx
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
rol ecx, 0xa
add edi, eax
xor ecx, edx
mov edx, esi
xor esi, ebp
mov dword [esp + 8], edi
and esi, ebx
mov ebx, dword [esp + 0x54]
and edx, ebp
mov ebp, dword [esp + 0x14]
xor esi, edx
add esi, ecx
add esi, eax
mov eax, ebx
mov ecx, ebx
mov edx, ebx
mov ebx, edi
mov dword [esp], esi
rol eax, 0xf
rol ecx, 0xd
shr edx, 0xa
xor ecx, eax
mov eax, dword [esp + 0x58]
xor edx, ecx
mov ecx, ebp
rol ecx, 0xd
add eax, dword [esp + 0x4c]
add edx, eax
mov eax, ebp
shr ebp, 0xa
rol eax, 0xf
mov dword [esp + 0x68], edx
xor ecx, eax
mov eax, dword [esp + 0x3c]
xor ebp, ecx
mov ecx, edx
rol ecx, 0xd
add eax, dword [esp + 0x48]
add ebp, eax
mov eax, edx
rol eax, 0xf
mov dword [esp + 0x44], ebp
xor ecx, eax
mov eax, edx
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x18]
add eax, ecx
mov ecx, ebp
mov dword [esp + 0xc], eax
mov eax, ebp
rol ecx, 0xd
rol eax, 0xf
xor ecx, eax
mov eax, ebp
mov ebp, dword [esp + 0x28]
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x7c]
add ecx, dword [esp + 0x74]
add eax, ecx
mov ecx, edi
mov dword [esp + 4], eax
mov eax, edi
rol ecx, 0x15
rol eax, 0x1a
xor ecx, eax
mov eax, edi
mov edi, dword [esp + 0x30]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x2c]
add edi, edx
mov edx, esi
rol edx, 0x13
xor ecx, ebp
and ecx, ebx
xor ecx, ebp
add ecx, edi
mov edi, dword [esp + 0x34]
lea ebx, [eax + ecx + 0x650a7354]
mov ecx, esi
mov eax, dword [esp + 0x1c]
rol ecx, 0x1e
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, eax
and eax, edi
xor edx, edi
mov edi, dword [esp + 0x38]
and edx, esi
xor eax, edx
mov edx, dword [esp + 8]
add eax, ecx
add edi, ebx
add eax, ebx
mov ebx, dword [esp + 0x2c]
mov esi, eax
mov eax, edi
mov ecx, edi
mov dword [esp + 0x38], edi
rol eax, 0x1a
rol ecx, 0x15
mov dword [esp + 0x24], esi
xor ecx, eax
mov eax, edi
rol eax, 7
xor edx, ebx
xor eax, ecx
mov ecx, dword [esp + 0x44]
and edx, edi
mov edi, dword [esp + 0x1c]
xor edx, ebx
mov ebx, dword [esp]
add ecx, ebp
add edx, ecx
mov ecx, esi
lea ebp, [eax + edx + 0x766a0abb]
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
xor ebx, edi
and edx, edi
and ebx, esi
xor ebx, edx
mov edx, dword [esp + 0x34]
add ebx, ecx
add ebx, ebp
mov dword [esp + 0x40], ebx
add edx, ebp
mov eax, edx
mov ecx, edx
mov ebp, edx
rol eax, 0x1a
rol ecx, 0x15
mov dword [esp + 0x34], ebp
xor ecx, eax
mov eax, edx
mov edx, dword [esp + 0x2c]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0xc]
lea esi, [ecx + edx]
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 8]
xor edx, ecx
and edx, ebp
xor edx, ecx
mov ecx, ebx
add edx, esi
rol ecx, 0x13
mov esi, dword [esp + 0x24]
lea edi, [eax + edx - 0x7e3d36d2]
mov eax, ebx
mov edx, ebx
rol eax, 0x1e
xor ecx, eax
mov eax, ebx
mov ebx, dword [esp]
rol eax, 0xa
xor eax, ecx
mov ecx, esi
xor ecx, ebx
and esi, ebx
and ecx, edx
mov edx, dword [esp + 0x1c]
xor esi, ecx
add esi, eax
add esi, edi
add edx, edi
mov ebx, esi
mov dword [esp + 0x28], esi
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 + 8]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 4]
add ecx, edx
mov edx, ebp
mov ebp, dword [esp + 0x38]
xor edx, ebp
and edx, edi
mov edi, dword [esp + 0x24]
xor edx, ebp
mov ebp, dword [esp + 0x4c]
add edx, ecx
mov ecx, esi
lea eax, [eax + edx - 0x6d8dd37b]
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
add dword [esp], eax
xor edx, ecx
mov ecx, esi
mov esi, dword [esp + 0x40]
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, edi
and edx, edi
and esi, ebx
mov edi, dword [esp + 0x74]
mov ebx, ebp
xor esi, edx
rol ebx, 0x19
add esi, ecx
mov ecx, dword [esp + 0x64]
add esi, eax
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x48]
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x10]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 8], edx
mov edx, esi
mov eax, ecx
rol ecx, 0xe
rol edx, 0x19
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x20], 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, edi
rol edi, 0xe
rol eax, 0x19
mov dword [esp + 0x3c], ecx
xor edi, eax
mov eax, dword [esp + 0x18]
mov ecx, eax
rol eax, 0xe
rol ecx, 0x19
xor eax, ecx
mov ecx, esi
rol ecx, 0xe
xor ecx, edx
mov edx, ebp
rol edx, 0xe
xor edx, ebx
mov ebx, dword [esp + 0x74]
shr ebx, 3
xor ebx, edi
mov edi, dword [esp + 0x18]
add ebx, edi
shr edi, 3
xor edi, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 4]
add edi, esi
shr esi, 3
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x64]
xor esi, ecx
add esi, ebp
shr ebp, 3
xor ebp, edx
mov edx, dword [esp + 0xc]
mov dword [esp + 0x48], esi
add ebp, edi
shr edi, 3
xor edi, dword [esp + 8]
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x5c]
mov ecx, edx
rol ecx, 0xd
add edi, eax
shr eax, 3
xor eax, dword [esp + 0x20]
add edi, dword [esp + 0x68]
add eax, ebp
shr ebp, 3
mov dword [esp + 0x10], eax
xor ebp, dword [esp + 0x2c]
mov eax, dword [esp + 0x70]
add ebp, eax
shr eax, 3
xor eax, dword [esp + 0x3c]
add ebp, dword [esp + 0x54]
add eax, dword [esp + 0x6c]
mov esi, eax
mov eax, edx
shr edx, 0xa
add esi, dword [esp + 0x60]
rol eax, 0xf
xor ecx, eax
mov eax, ebx
xor edx, ecx
mov ecx, ebx
rol eax, 0xf
rol ecx, 0xd
add edx, esi
mov esi, ebx
xor ecx, eax
mov ebx, dword [esp + 0x28]
shr esi, 0xa
mov eax, edx
mov dword [esp + 0x70], edx
xor esi, ecx
mov ecx, edx
rol eax, 0xf
rol ecx, 0xd
add esi, ebp
xor ecx, eax
mov eax, edx
mov dword [esp + 0x58], esi
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x14]
add eax, ecx
mov ecx, esi
mov dword [esp + 0x2c], eax
mov eax, esi
rol ecx, 0xd
rol eax, 0xf
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x38]
shr eax, 0xa
xor eax, ecx
add eax, edi
mov edi, dword [esp]
mov dword [esp + 0x3c], eax
add esi, edx
mov edx, dword [esp + 0x34]
mov eax, edi
mov ecx, edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x1c]
xor ecx, edx
and ecx, edi
mov edi, dword [esp + 0x24]
xor ecx, edx
add ecx, esi
mov esi, dword [esp + 0x30]
lea ebp, [eax + ecx - 0x5d40175f]
mov eax, dword [esp + 0x40]
add edi, ebp
mov dword [esp + 0x24], edi
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, eax
xor edx, eax
mov eax, edi
and edx, esi
rol eax, 0x1a
mov esi, dword [esp + 0x1c]
xor ebx, edx
mov edx, dword [esp + 0x34]
add ebx, ecx
mov ecx, edi
rol ecx, 0x15
add ebx, ebp
mov ebp, dword [esp + 0x30]
xor ecx, eax
mov eax, edi
mov dword [esp + 0x20], ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x58]
add ecx, edx
mov edx, dword [esp]
xor edx, esi
and edx, edi
mov edi, dword [esp + 0x28]
xor edx, esi
mov esi, ebp
add edx, ecx
mov ecx, ebx
lea eax, [eax + edx - 0x57e599b5]
mov edx, ebx
rol ecx, 0x1e
rol edx, 0x13
xor esi, edi
xor edx, ecx
mov ecx, ebx
and esi, ebx
mov ebx, dword [esp]
rol ecx, 0xa
xor ecx, edx
mov edx, ebp
and edx, edi
mov edi, dword [esp + 0x40]
xor esi, edx
mov edx, dword [esp + 0x1c]
add esi, ecx
add esi, eax
add edi, eax
mov dword [esp + 0x5c], esi
mov eax, edi
mov ecx, edi
mov dword [esp + 0x40], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x2c]
add ecx, edx
mov edx, dword [esp + 0x24]
xor edx, ebx
and edx, edi
mov edi, dword [esp + 0x20]
xor edx, ebx
add edx, ecx
mov ecx, esi
lea ebx, [eax + edx - 0x3db47490]
mov edx, esi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, esi
rol ecx, 0xa
xor ecx, edx
mov edx, edi
and edi, ebp
xor edx, ebp
and edx, esi
xor edi, edx
mov edx, dword [esp]
add edi, ecx
add edi, ebx
mov ebp, edi
mov edi, dword [esp + 0x28]
mov dword [esp + 0x10], ebp
add edi, ebx
mov ebx, dword [esp + 0x30]
mov eax, edi
mov ecx, edi
mov dword [esp + 0x28], edi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, edi
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x3c]
lea esi, [ecx + edx]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x24]
xor edx, ecx
and edx, edi
mov edi, dword [esp + 0x5c]
xor edx, ecx
mov ecx, ebp
add edx, esi
rol ecx, 0x1e
mov esi, dword [esp + 0x20]
lea eax, [eax + edx - 0x3893ae5d]
mov edx, ebp
rol edx, 0x13
add ebx, eax
xor edx, ecx
mov ecx, ebp
mov dword [esp + 0x30], ebx
rol ecx, 0xa
xor ecx, edx
mov edx, edi
xor edi, esi
and edx, esi
mov esi, dword [esp + 0x2c]
and edi, ebp
xor edi, edx
add edi, ecx
add edi, eax
mov eax, esi
mov ecx, esi
shr esi, 0xa
mov ebp, edi
rol eax, 0xf
rol ecx, 0xd
mov edx, ebp
mov dword [esp + 8], ebp
xor ecx, eax
mov eax, dword [esp + 0x3c]
rol edx, 0x13
xor esi, ecx
mov ecx, dword [esp + 0x4c]
mov edi, eax
add ecx, dword [esp + 0x44]
rol edi, 0xf
add esi, ecx
mov ecx, eax
rol ecx, 0xd
mov dword [esp + 0x6c], esi
xor ecx, edi
mov edi, eax
mov eax, dword [esp + 0x48]
shr edi, 0xa
xor edi, ecx
mov ecx, esi
rol ecx, 0xd
add eax, dword [esp + 0xc]
add edi, eax
mov eax, esi
rol eax, 0xf
mov dword [esp + 0x34], edi
xor ecx, eax
mov eax, esi
shr eax, 0xa
xor eax, ecx
mov ecx, dword [esp + 0x18]
add ecx, dword [esp + 4]
add eax, ecx
mov ecx, edi
mov dword [esp + 0x4c], eax
mov eax, edi
rol ecx, 0xd
shr edi, 0xa
rol eax, 0xf
xor ecx, eax
mov eax, dword [esp + 0x7c]
xor edi, ecx
mov ecx, ebx
rol ecx, 0x15
add eax, dword [esp + 0x70]
add edi, eax
mov eax, ebx
mov dword [esp + 0x38], edi
mov edi, dword [esp + 0x24]
rol eax, 0x1a
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x28]
add edi, esi
mov esi, dword [esp + 0x40]
xor ecx, esi
and ecx, ebx
xor ecx, esi
add ecx, edi
mov edi, dword [esp + 0x10]
lea ebx, [eax + ecx - 0x2e6d17e7]
mov eax, ebp
mov ecx, dword [esp + 0x5c]
rol eax, 0x1e
xor edx, eax
mov eax, ebp
rol eax, 0xa
xor eax, edx
mov edx, edi
and edi, ecx
xor edx, ecx
and edx, ebp
xor edi, edx
mov edx, dword [esp + 0x30]
add edi, eax
mov eax, ebx
add edi, ebx
mov ebx, dword [esp + 0x20]
mov dword [esp], edi
add ebx, eax
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x20], ebx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x34]
add ecx, esi
mov esi, dword [esp + 0x28]
xor edx, esi
and edx, ebx
xor edx, esi
mov esi, edi
add edx, ecx
mov ecx, edi
lea ebx, [eax + edx - 0x2966f9dc]
mov edx, edi
rol ecx, 0x1e
mov eax, dword [esp + 0x10]
rol edx, 0x13
xor edx, ecx
mov ecx, edi
mov edi, ebp
rol ecx, 0xa
xor ecx, edx
mov edx, ebp
mov ebp, dword [esp + 0x5c]
xor edi, eax
and edi, esi
and edx, eax
mov esi, dword [esp + 0x30]
xor edi, edx
mov edx, dword [esp + 0x28]
add edi, ecx
add ebp, ebx
add edi, ebx
mov ebx, dword [esp]
mov eax, ebp
mov ecx, ebp
mov dword [esp + 0x48], edi
mov dword [esp + 0x5c], ebp
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebp
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x4c]
add ecx, edx
mov edx, dword [esp + 0x20]
xor edx, esi
and edx, ebp
xor edx, esi
mov esi, dword [esp + 8]
add edx, ecx
mov ecx, edi
lea eax, [eax + edx - 0xbf1ca7b]
mov edx, edi
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, edi
rol ecx, 0xa
xor ecx, edx
mov edx, ebx
xor edx, esi
and edx, edi
mov edi, ebx
mov ebx, dword [esp + 0x20]
and edi, esi
mov esi, dword [esp + 0x10]
xor edi, edx
mov edx, dword [esp + 0x30]
add edi, ecx
add edi, eax
xor ebp, ebx
add esi, eax
mov dword [esp + 0x28], edi
mov eax, esi
mov ecx, esi
and ebp, esi
mov dword [esp + 0x10], esi
rol eax, 0x1a
rol ecx, 0x15
xor ebp, ebx
mov ebx, edi
xor ecx, eax
mov eax, esi
mov esi, dword [esp + 0x48]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x38]
add ecx, edx
mov edx, edi
add ebp, ecx
mov ecx, edi
rol edx, 0x13
rol ecx, 0x1e
lea eax, [eax + ebp + 0x106aa070]
mov ebp, dword [esp + 0xc]
xor edx, ecx
mov ecx, edi
mov edi, dword [esp]
add dword [esp + 8], eax
rol ecx, 0xa
xor ecx, edx
mov edx, esi
xor esi, edi
and edx, edi
mov edi, dword [esp + 0x70]
and esi, ebx
mov ebx, dword [esp + 4]
xor esi, edx
add esi, ecx
mov ecx, dword [esp + 0x68]
add esi, eax
mov dword [esp + 0x18], esi
mov esi, edi
rol esi, 0xe
mov eax, ecx
mov edx, ecx
mov ecx, dword [esp + 0x14]
rol eax, 0x19
rol edx, 0xe
xor edx, eax
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x44]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x54]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x60]
mov eax, ecx
rol ecx, 0xe
rol eax, 0x19
xor ecx, eax
mov eax, edi
shr edi, 3
rol eax, 0x19
mov dword [esp + 0x64], ecx
mov ecx, edx
xor esi, eax
mov eax, ebx
rol ebx, 0xe
rol ecx, 0xe
rol eax, 0x19
xor edi, esi
mov esi, dword [esp + 4]
xor ebx, eax
mov eax, ebp
rol ebp, 0xe
rol eax, 0x19
xor ebp, eax
mov eax, edx
rol eax, 0x19
add edi, esi
shr esi, 3
xor ecx, eax
mov eax, dword [esp + 0xc]
xor esi, ebx
mov ebx, dword [esp + 0x4c]
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x58]
add esi, eax
shr eax, 3
mov dword [esp + 4], esi
mov esi, dword [esp + 0x68]
xor eax, ebp
mov ebp, dword [esp + 0x54]
add eax, edx
shr edx, 3
xor edx, ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x14]
mov ecx, ebx
rol ecx, 0xd
add edx, esi
shr esi, 3
xor esi, dword [esp + 0x1c]
mov dword [esp + 0x44], edx
add esi, eax
shr eax, 3
xor eax, dword [esp + 0x24]
add eax, ebp
shr ebp, 3
mov dword [esp + 0x14], eax
xor ebp, dword [esp + 0x40]
mov eax, dword [esp + 0x60]
add ebp, eax
shr eax, 3
xor eax, dword [esp + 0x64]
add eax, dword [esp + 0x74]
mov edx, eax
mov eax, ebx
shr ebx, 0xa
rol eax, 0xf
add edx, edi
xor ecx, eax
xor ebx, ecx
add ebx, edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x1c], ebx
mov ecx, edx
mov eax, edx
rol ecx, 0xf
rol eax, 0xd
xor eax, ecx
mov ecx, edx
mov edx, dword [esp + 0x2c]
shr ecx, 0xa
xor ecx, eax
mov eax, ebx
rol eax, 0xf
add ebp, edx
add ecx, ebp
mov ebp, ebx
rol ebp, 0xd
mov dword [esp + 0x24], ecx
xor ebp, eax
mov eax, ebx
mov ebx, dword [esp + 0x3c]
shr eax, 0xa
xor eax, ebp
mov ebp, dword [esp + 0x14]
add ebp, ebx
add eax, ebp
mov ebp, ecx
mov dword [esp + 0x14], eax
mov eax, ecx
rol ebp, 0xd
shr ecx, 0xa
rol eax, 0xf
xor ebp, eax
xor ecx, ebp
mov ebp, dword [esp + 0x6c]
add esi, ebp
add ecx, esi
mov esi, dword [esp + 8]
mov dword [esp + 0x40], ecx
mov eax, esi
mov ecx, esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
mov esi, ebp
rol eax, 7
rol esi, 0xe
xor eax, ecx
mov ecx, ebx
mov dword [esp + 0x60], eax
mov eax, ebp
rol ecx, 0xe
mov ebp, dword [esp + 0x38]
rol eax, 0x19
xor esi, eax
mov eax, ebx
mov ebx, dword [esp + 0x1c]
rol eax, 0x19
mov dword [esp + 0x74], esi
xor ecx, eax
mov eax, edx
add dword [esp + 4], ebp
mov dword [esp + 0x68], ecx
mov ecx, edx
rol eax, 0x19
rol ecx, 0xe
mov esi, ebx
xor ecx, eax
mov eax, edi
rol esi, 0xe
mov dword [esp + 0x64], ecx
mov ecx, edi
rol eax, 0x19
rol ecx, 0xe
xor ecx, eax
mov eax, ebx
rol eax, 0x19
mov dword [esp + 0x7c], ecx
mov ecx, ebp
xor esi, eax
mov eax, ebp
rol ecx, 0x19
rol eax, 0xe
xor eax, ecx
mov ecx, dword [esp + 0x4c]
mov edx, ecx
rol ecx, 0xe
rol edx, 0x19
xor ecx, edx
mov edx, dword [esp + 0x34]
mov edi, edx
rol edx, 0xe
rol edi, 0x19
xor edx, edi
mov edi, ebx
mov ebx, dword [esp + 0x20]
add dword [esp + 0x30], edi
add ebx, edi
shr edi, 3
xor edi, esi
add edi, ebp
shr ebp, 3
xor ebp, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x1c], edi
mov esi, eax
add ebp, eax
add dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
shr esi, 3
mov dword [esp + 0x54], ebp
mov ebp, dword [esp + 0x28]
xor esi, ecx
mov ecx, dword [esp + 0x6c]
add esi, eax
add dword [esp + 0x44], eax
shr eax, 3
xor eax, edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x4c], esi
mov edi, ebp
add eax, ecx
shr ecx, 3
mov dword [esp + 0x34], eax
xor ecx, dword [esp + 0x74]
mov eax, dword [esp + 0x3c]
add ecx, eax
shr eax, 3
mov dword [esp + 0x38], ecx
xor eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x2c]
add eax, ecx
shr ecx, 3
mov dword [esp + 0x3c], eax
xor ecx, dword [esp + 0x64]
mov eax, dword [esp + 0x58]
add ecx, eax
shr eax, 3
xor eax, dword [esp + 0x7c]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x24]
add eax, dword [esp + 0x70]
add eax, ecx
mov dword [esp + 0x58], eax
lea eax, [ecx + edx]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x18]
xor ecx, edx
and ecx, dword [esp + 8]
mov esi, eax
rol esi, 0x13
xor ecx, edx
mov edx, dword [esp + 0x60]
add ecx, ebx
mov ebx, ebp
lea ecx, [edx + ecx + 0x19a4c116]
mov edx, eax
rol edx, 0x1e
xor esi, edx
mov edx, eax
rol edx, 0xa
xor edx, esi
mov esi, dword [esp + 0x48]
xor edi, esi
and edi, eax
mov eax, ebp
and eax, esi
mov esi, dword [esp]
xor eax, edi
add eax, edx
add eax, ecx
add esi, ecx
mov edi, eax
mov eax, dword [esp + 0x10]
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 + 8]
xor edx, eax
and edx, esi
mov esi, edi
xor edx, eax
add edx, dword [esp + 0x24]
lea ebp, [ecx + edx + 0x1e376c08]
mov ecx, edi
mov edx, edi
rol edi, 0xa
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
xor edi, edx
mov edx, dword [esp + 0x18]
mov eax, edx
and eax, ebx
mov ebx, edx
xor ebx, ecx
mov ecx, esi
and ebx, esi
mov esi, dword [esp + 0x48]
mov dword [esp + 0x20], ecx
xor ebx, eax
add ebx, edi
mov edi, dword [esp + 0x10]
add ebx, ebp
add esi, ebp
mov ebp, dword [esp + 8]
mov eax, esi
mov edx, esi
mov dword [esp + 0x48], esi
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, esi
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x14]
add edx, edi
mov edi, dword [esp]
xor edi, ebp
and edi, esi
mov esi, dword [esp + 8]
xor edi, ebp
mov ebp, dword [esp + 0x18]
add edi, edx
mov edx, ebx
lea eax, [eax + edi + 0x2748774c]
mov edi, ebx
rol edx, 0x1e
rol edi, 0x13
xor edi, edx
mov edx, ebx
rol edx, 0xa
xor edx, edi
mov edi, ecx
and ecx, ebp
xor edi, ebp
and edi, ebx
xor ecx, edi
mov edi, dword [esp + 0x48]
add ecx, edx
add ecx, eax
mov ebp, ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x10], ebp
add ecx, eax
mov eax, ecx
mov edx, ecx
mov dword [esp + 0x28], ecx
rol eax, 0x1a
rol edx, 0x15
xor edx, eax
mov eax, ecx
rol eax, 7
xor eax, edx
mov edx, dword [esp + 0x40]
add edx, esi
mov esi, dword [esp]
xor edi, esi
and edi, ecx
mov ecx, ebp
xor edi, esi
mov esi, dword [esp + 0x20]
add edi, edx
mov edx, ebp
lea eax, [eax + edi + 0x34b0bcb5]
mov edi, ebp
rol edx, 0x1e
rol edi, 0x13
xor edi, edx
mov edx, ebp
mov ebp, ebx
rol edx, 0xa
xor ebp, esi
xor edx, edi
mov edi, ebx
and ebp, ecx
and edi, esi
mov esi, dword [esp + 0x18]
xor ebp, edi
mov edi, dword [esp + 0x14]
add ebp, edx
add ebp, eax
mov dword [esp + 0x24], ebp
mov ebp, dword [esp + 0x40]
add esi, eax
mov eax, edi
mov edx, edi
add dword [esp + 0x2c], edi
shr edi, 0xa
rol eax, 0xf
rol edx, 0xd
xor edx, eax
xor edi, edx
mov eax, ebp
mov edx, ebp
add dword [esp + 0x3c], ebp
shr ebp, 0xa
add edi, dword [esp + 0x44]
rol eax, 0xf
rol edx, 0xd
xor edx, eax
xor ebp, edx
add ebp, dword [esp + 0xc]
mov eax, edi
mov edx, edi
add dword [esp], edi
add dword [esp + 0x38], edi
shr edi, 0xa
rol eax, 0xf
rol edx, 0xd
xor edx, eax
xor edi, edx
mov edx, ebp
mov eax, ebp
mov ecx, ebp
add dword [esp + 0x34], ebp
rol edx, 0xf
rol eax, 0xd
shr ecx, 0xa
add edi, dword [esp + 4]
xor eax, edx
xor ecx, eax
mov eax, esi
add ecx, dword [esp + 0x30]
rol eax, 0x15
mov dword [esp + 0x44], edi
mov edi, esi
mov dword [esp + 0x18], edi
mov dword [esp + 4], ecx
mov ecx, esi
rol ecx, 0x1a
xor eax, ecx
mov ecx, esi
mov esi, dword [esp + 0x48]
rol ecx, 7
xor ecx, eax
lea eax, [ebp + esi]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x28]
xor eax, esi
and eax, edi
xor eax, esi
add eax, dword [esp]
lea edx, [ecx + eax + 0x391c0cb3]
mov eax, dword [esp + 0x24]
mov ecx, eax
mov esi, eax
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, eax
rol ecx, 0xa
xor ecx, esi
mov esi, ebp
and ebp, ebx
xor esi, ebx
and esi, eax
xor ebp, esi
mov esi, dword [esp + 0x20]
add ebp, ecx
add ebp, edx
mov dword [esp + 0x14], ebp
add esi, edx
mov edx, dword [esp + 0x28]
mov eax, esi
mov ecx, esi
mov dword [esp + 0x20], esi
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, esi
xor edi, edx
rol eax, 7
and edi, esi
mov esi, ebp
xor eax, ecx
mov ecx, ebp
xor edi, edx
rol ecx, 0x1e
rol esi, 0x13
mov edx, dword [esp + 0x24]
add edi, dword [esp + 0xc]
xor esi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, esi
mov esi, dword [esp + 0x28]
lea eax, [eax + edi + 0x4ed8aa4a]
mov edi, ebp
mov ebp, dword [esp + 0x10]
mov dword [esp], eax
mov eax, edx
xor edx, ebp
and eax, ebp
and edx, edi
mov edi, dword [esp + 0x18]
xor edx, eax
mov eax, dword [esp]
add edx, ecx
add ebx, eax
add edx, eax
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x30], edx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x44]
add ecx, esi
mov esi, dword [esp + 0x20]
xor esi, edi
and esi, ebx
xor esi, edi
mov edi, dword [esp + 0x24]
add esi, ecx
mov ecx, edx
lea ebp, [eax + esi + 0x5b9cca4f]
mov esi, edx
mov eax, dword [esp + 0x14]
rol ecx, 0x1e
rol esi, 0x13
xor esi, ecx
mov ecx, edx
rol ecx, 0xa
xor ecx, esi
mov esi, eax
and eax, edi
xor esi, edi
mov edi, dword [esp + 0x20]
and esi, edx
xor eax, esi
mov esi, dword [esp + 0x10]
add eax, ecx
add eax, ebp
mov edx, eax
mov dword [esp + 8], eax
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 + 0x18]
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 4]
add ecx, esi
mov esi, ebx
xor esi, edi
and esi, ebp
mov ebp, dword [esp + 0x30]
xor esi, edi
mov edi, dword [esp + 0x14]
add esi, ecx
mov ecx, edx
lea eax, [eax + esi + 0x682e6ff3]
mov esi, edx
rol ecx, 0x1e
mov dword [esp], eax
mov eax, ebp
rol esi, 0x13
xor ebp, edi
and eax, edi
xor esi, ecx
mov ecx, edx
mov edi, dword [esp + 0x44]
and ebp, edx
rol ecx, 0xa
xor ebp, eax
mov eax, dword [esp]
xor ecx, esi
mov esi, dword [esp + 0x24]
add ebp, ecx
mov ecx, edi
add dword [esp + 0x4c], edi
rol ecx, 0xd
add ebp, eax
add esi, eax
mov eax, edi
shr edi, 0xa
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 4]
rol eax, 0xf
mov dword [esp + 0x24], esi
xor ecx, eax
xor edi, ecx
add edi, dword [esp + 0x58]
mov eax, ebp
mov ecx, ebp
add dword [esp + 0x54], ebp
shr ebp, 0xa
rol eax, 0xf
rol ecx, 0xd
xor ecx, eax
xor ebp, ecx
mov ecx, edi
mov edx, edi
add dword [esp + 0x20], edi
add dword [esp + 0x1c], edi
shr edi, 0xa
add ebp, dword [esp + 0x2c]
rol ecx, 0xf
rol edx, 0xd
xor edx, ecx
xor edi, edx
add edi, dword [esp + 0x3c]
mov ecx, ebp
mov edx, ebp
mov eax, ebp
add ebp, ebx
rol ecx, 0xf
rol edx, 0xd
shr eax, 0xa
xor edx, ecx
mov ecx, esi
xor eax, edx
mov edx, esi
rol ecx, 0x1a
mov dword [esp + 0x2c], edi
mov edi, esi
rol edx, 0x15
add eax, dword [esp + 0x38]
xor edx, ecx
mov ecx, esi
rol ecx, 7
xor ecx, edx
mov edx, dword [esp + 0x10]
mov dword [esp + 0x18], eax
xor edx, ebx
and edx, esi
xor edx, ebx
mov ebx, dword [esp + 0xc]
add edx, dword [esp + 0x20]
mov esi, ebx
lea eax, [ecx + edx + 0x748f82ee]
mov edx, ebx
mov ecx, dword [esp + 8]
rol esi, 0x13
mov dword [esp + 4], eax
rol edx, 0x1e
mov eax, dword [esp + 0x30]
xor esi, edx
mov edx, ebx
rol edx, 0xa
xor edx, esi
mov esi, ecx
xor esi, eax
and esi, ebx
mov ebx, ecx
and ebx, eax
mov eax, dword [esp + 4]
xor ebx, esi
mov esi, dword [esp + 0x14]
add ebx, edx
add ebx, eax
add esi, eax
mov eax, dword [esp + 0x10]
mov dword [esp], ebx
mov ecx, esi
mov edx, esi
mov dword [esp + 0x14], esi
rol ecx, 0x1a
rol edx, 0x15
xor edx, ecx
mov ecx, esi
rol ecx, 7
xor ecx, edx
mov edx, edi
xor edx, eax
and edx, esi
xor edx, eax
add edx, ebp
mov ebp, dword [esp + 8]
lea edi, [ecx + edx + 0x78a5636f]
mov ecx, ebx
mov edx, ebx
rol ecx, 0x1e
rol edx, 0x13
xor edx, ecx
mov ecx, ebx
rol ecx, 0xa
xor ecx, edx
mov edx, dword [esp + 0xc]
mov esi, edx
xor edx, ebp
and edx, ebx
mov ebx, dword [esp + 0x30]
and esi, ebp
xor edx, esi
mov esi, dword [esp + 0x10]
add edx, ecx
add edx, edi
add ebx, edi
mov eax, ebx
mov ecx, ebx
mov dword [esp + 0x30], ebx
rol eax, 0x1a
rol ecx, 0x15
xor ecx, eax
mov eax, ebx
rol eax, 7
xor eax, ecx
mov ecx, dword [esp + 0x2c]
lea edi, [ecx + esi]
mov esi, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
xor esi, ecx
and esi, ebx
mov ebx, edx
xor esi, ecx
mov ecx, edx
rol ebx, 0xa
add esi, edi
rol ecx, 0x1e
mov edi, dword [esp + 0xc]
lea ebp, [eax + esi - 0x7b3787ec]
mov esi, edx
rol esi, 0x13
xor esi, ecx
mov ecx, dword [esp]
xor ebx, esi
mov esi, ecx
and ecx, edi
xor esi, edi
and esi, edx
xor ecx, esi
add ecx, ebx
mov ebx, dword [esp + 0x30]
add ecx, ebp
mov edi, ecx
mov ecx, dword [esp + 8]
mov dword [esp + 4], edi
add ecx, ebp
mov eax, ecx
mov esi, ecx
mov ebp, ecx
mov dword [esp + 8], ecx
rol eax, 0x1a
rol esi, 0x15
xor esi, eax
mov eax, ecx
mov ecx, dword [esp + 0x18]
rol eax, 7
xor eax, esi
mov esi, dword [esp + 0x24]
add esi, ecx
mov ecx, dword [esp + 0x14]
xor ebx, ecx
and ebx, ebp
xor ebx, ecx
mov ecx, edi
add ebx, esi
mov esi, edi
lea ebp, [eax + ebx - 0x7338fdf8]
mov ebx, edi
mov eax, edi
mov edi, dword [esp]
rol esi, 0x1e
rol ebx, 0x13
rol eax, 0xa
xor ebx, esi
mov esi, edx
xor eax, ebx
mov ebx, edx
xor esi, edi
and ebx, edi
mov edi, dword [esp + 0x2c]
and esi, ecx
mov ecx, dword [esp + 0xc]
xor esi, ebx
add esi, eax
mov eax, edi
mov ebx, edi
add esi, ebp
shr edi, 0xa
add ecx, ebp
rol eax, 0xf
rol ebx, 0xd
mov ebp, dword [esp + 0x18]
xor ebx, eax
mov dword [esp + 0xc], ecx
xor edi, ebx
add edi, dword [esp + 0x34]
mov eax, ebp
mov ebx, ebp
shr ebp, 0xa
rol eax, 0xf
rol ebx, 0xd
xor ebx, eax
xor ebp, ebx
mov eax, edi
mov ebx, edi
add ebp, dword [esp + 0x4c]
rol eax, 0xf
rol ebx, 0xd
xor ebx, eax
mov eax, edi
add edi, dword [esp + 0x14]
shr eax, 0xa
xor eax, ebx
mov ebx, ebp
mov dword [esp + 0x20], eax
mov eax, ebp
mov dword [esp + 0x18], ebp
rol eax, 0xf
rol ebx, 0xd
xor ebx, eax
mov eax, ebp
mov ebp, dword [esp + 0x30]
shr eax, 0xa
xor eax, ebx
mov ebx, ecx
mov dword [esp + 0x10], eax
mov eax, ecx
rol ebx, 0x15
rol eax, 0x1a
add dword [esp + 0x18], ebp
xor ebx, eax
mov eax, ecx
rol eax, 7
xor eax, ebx
mov ebx, dword [esp + 8]
xor ebx, ebp
and ebx, ecx
mov ecx, dword [esp]
xor ebx, ebp
add ebx, edi
mov edi, esi
lea ebp, [eax + ebx - 0x6f410006]
mov eax, esi
mov ebx, esi
rol edi, 0xa
rol eax, 0x1e
rol ebx, 0x13
add ecx, ebp
xor ebx, eax
mov eax, dword [esp + 4]
mov dword [esp], ecx
xor edi, ebx
mov ebx, eax
and eax, edx
xor ebx, edx
and ebx, esi
xor eax, ebx
mov ebx, ecx
add eax, edi
mov edi, ecx
rol ebx, 0x15
rol edi, 0x1a
add eax, ebp
mov ebp, dword [esp + 8]
xor ebx, edi
mov edi, ecx
rol edi, 7
xor edi, ebx
mov ebx, dword [esp + 0xc]
xor ebx, ebp
and ebx, ecx
xor ebx, ebp
mov ebp, eax
add ebx, dword [esp + 0x18]
rol ebp, 0x13
lea ecx, [edi + ebx - 0x5baf9315]
mov ebx, eax
mov edi, eax
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 4]
rol ebx, 0x1e
rol edi, 0xa
xor ebp, ebx
mov ebx, esi
xor edi, ebp
mov ebp, esi
xor ebx, ecx
and ebp, ecx
mov ecx, dword [esp + 0x18]
and ebx, eax
xor ebx, ebp
add ebx, edi
add edx, ecx
add ebx, ecx
mov ecx, dword [esp + 0x54]
mov edi, edx
mov ebp, edx
rol edi, 0x1a
rol ebp, 0x15
xor ebp, edi
mov edi, edx
rol edi, 7
add ecx, dword [esp + 0x20]
xor edi, ebp
mov ebp, dword [esp]
add ecx, dword [esp + 8]
xor ebp, dword [esp + 0xc]
and ebp, edx
xor ebp, dword [esp + 0xc]
add ecx, ebp
mov ebp, ebx
lea ecx, [edi + ecx - 0x41065c09]
mov edi, ebx
rol ebp, 0x1e
mov dword [esp + 8], ecx
mov ecx, ebx
rol edi, 0xa
rol ecx, 0x13
xor ecx, ebp
mov ebp, eax
xor edi, ecx
mov ecx, eax
and ebp, esi
xor ecx, esi
add esi, dword [esp + 0x84]
and ecx, ebx
xor ebp, ecx
mov ecx, dword [esp + 4]
add ebp, edi
mov edi, dword [esp + 8]
add ecx, edi
add ebp, edi
mov dword [esp + 4], ecx
rol ecx, 0x1a
mov edi, dword [esp + 4]
rol edi, 0x15
xor edi, ecx
mov ecx, dword [esp + 4]
rol ecx, 7
xor ecx, edi
mov edi, dword [esp + 0x1c]
add edi, dword [esp + 0x10]
add edi, dword [esp + 0xc]
mov dword [esp + 0x1c], edi
mov edi, edx
add edx, dword [esp + 0x90]
xor edi, dword [esp]
mov dword [esp + 0x90], edx
and edi, dword [esp + 4]
xor edi, dword [esp]
add dword [esp + 0x1c], edi
mov edi, dword [esp + 0x1c]
lea ecx, [ecx + edi - 0x398e870e]
mov edi, ebp
mov dword [esp + 0xc], ecx
mov ecx, ebp
rol edi, 0x13
rol ecx, 0x1e
xor edi, ecx
mov ecx, ebp
rol ecx, 0xa
xor ecx, edi
mov edi, ebx
xor edi, eax
mov dword [esp + 8], ecx
mov ecx, ebx
add ebx, dword [esp + 0x8c]
and ecx, eax
and edi, ebp
add ebp, dword [esp + 0x88]
add eax, dword [esp + 0x94]
xor edi, ecx
mov ecx, dword [esp + 0xc]
add edi, dword [esp + 0x78]
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x88], ebp
mov dword [esp + 0x94], eax
add esi, ecx
add edi, dword [esp + 8]
mov dword [esp + 0x84], esi
add edi, ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x78], edi
add ecx, dword [esp + 0x80]
mov dword [esp + 4], ecx
mov ecx, dword [esp]
add ecx, dword [esp + 0x98]
mov dword [esp], ecx
mov ecx, dword [esp + 0x50]
add ecx, 0x40
mov dword [esp + 0x50], ecx
cmp ecx, dword [esp + 0x9c]
mov ecx, dword [esp + 4]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 0x84]
jne 0x4097c0
jmp 0x40c02a
mov dword [esp], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
mov eax, edi
mov edi, dword [esp + 0x78]
mov ecx, dword [esp + 0xc8]
mov dword [ecx], edi
mov dword [ecx + 4], ebp
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], eax
mov dword [ecx + 0x10], esi
mov esi, dword [esp + 4]
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x18], edx
mov edx, dword [esp]
mov dword [ecx + 0x1c], edx
add esp, 0xb4
pop esi
pop edi
pop ebx
pop ebp
ret