Function at 0x4113a0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x5c05a8]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0xa4]
cmp eax, dword [ecx + 8]
jbe 0x412f69
sub esp, 0x124
movzx eax, byte [0x5c048f]
test al, al
jne 0x41143b
lea eax, [0x4d0020]
mov dword [esp], eax
mov dword [esp + 4], 0x44
mov dword [esp + 8], 0x45
call fcn.004679d0
mov eax, dword [esp + 0xc]
mov dword [0x5a1a0c], 0x44
mov dword [0x5a1a10], 0x45
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x41141c
call fcn.0046c610
mov dword [edi], eax
mov edx, dword [0x5a1a08]
mov dword [edi + 4], edx
mov dword [0x5a1a08], eax
mov edx, dword [0x5a1a08]
movsd xmm0, qword [0x50d818]
movsd qword [edx], xmm0
mov eax, 1
jmp 0x411457
add esp, 0x124
ret
mov ebp, dword [0x5a1a08]
inc ebx
movzx ebx, bx
cvtsi2sd xmm0, ebx
movsd qword [ebp + eax*8], xmm0
inc eax
cmp eax, 0x44
jge 0x411475
mov ecx, dword [0x5a1a0c]
lea edx, [0x594d20]
movzx ebx, word [edx + eax*2]
cmp eax, ecx
jb 0x411442
jmp 0x412f63
mov dword [esp + 0xdc], 0
mov dword [esp + 0xe0], 0x7ff00000
mov eax, dword [0x5a1a10]
mov ecx, dword [0x5a1a0c]
inc ecx
mov edx, dword [0x5a1a08]
movsd xmm0, qword [esp + 0xdc]
cmp eax, ecx
jae 0x411511
movsd qword [esp + 0x24], xmm0
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x4d0020]
mov dword [esp + 0x10], eax
call fcn.00467a80
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [0x5a1a10], eax
mov eax, dword [0x5c06a0]
test eax, eax
je 0x4114ff
call fcn.0046c610
mov dword [edi], ecx
mov eax, dword [0x5a1a08]
mov dword [edi + 4], eax
mov dword [0x5a1a08], ecx
movsd xmm0, qword [esp + 0x24]
mov eax, ecx
mov ecx, edx
mov edx, eax
mov dword [0x5a1a0c], ecx
movsd qword [edx + ecx*8 - 8], xmm0
call fcn.00408d70
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp]
mov dword [0x5a1a1c], eax
mov dword [0x5a1a20], ecx
mov eax, dword [0x5c06a0]
test eax, eax
je 0x411553
call fcn.0046c610
mov dword [edi], edx
mov eax, dword [0x5a1a18]
mov dword [edi + 4], eax
mov dword [0x5a1a18], edx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov dword [esp + 4], 0x38
mov dword [esp + 8], 0
call fcn.00463600
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], eax
lea ecx, [0x4d0fe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [0x4e848b]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x18
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4115cb
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa84]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4115e2
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4115da
mov dword [esp + 0xd0], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ec3a2]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x27
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xd0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411640
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efab0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411657
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41164f
mov dword [esp + 0xcc], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ecd65]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x2a
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xcc]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4116b5
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efadc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4116cc
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4116c4
mov dword [esp + 0xc8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ebe53]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x25
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc8]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x41172a
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efb08]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411741
or ecx, 4
mov eax, 1
test eax, eax
jle 0x411739
mov dword [esp + 0xc4], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4eaf63]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc4]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x41179f
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efb34]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4117b6
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4117ae
mov dword [esp + 0xc0], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4eaf84]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411814
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efb54]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41182b
or ecx, 4
mov eax, 1
test eax, eax
jle 0x411823
mov dword [esp + 0xbc], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e9c03]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xbc]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411889
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efb58]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4118a0
or ecx, 4
mov eax, 1
test eax, eax
jle 0x411898
mov dword [esp + 0xb8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ec72d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x28
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb8]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4118fe
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efb5c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411915
or ecx, 4
mov eax, 1
test eax, eax
jle 0x41190d
mov dword [esp + 0xb4], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ed317]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x2c
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb4]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411973
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efb60]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x41198a
or ecx, 4
mov eax, 1
test eax, eax
jle 0x411982
mov dword [esp + 0xb0], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ec3c9]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x27
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xb0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4119e8
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa88]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4119ff
or ecx, 4
mov eax, 1
test eax, eax
jle 0x4119f7
mov dword [esp + 0xac], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ea26a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1e
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xac]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411a5d
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa8c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411a74
or ecx, 4
mov eax, 1
test eax, eax
jle 0x411a6c
mov dword [esp + 0xa8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e9c20]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa8]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411ad2
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa90]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411ae9
or ecx, 2
mov eax, 1
test eax, eax
jle 0x411ae1
mov dword [esp + 0xa4], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ea288]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1e
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411b47
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa94]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411b5e
or ecx, 2
mov eax, 1
test eax, eax
jle 0x411b56
mov dword [esp + 0xa0], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e9346]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1b
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa0]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411bbc
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa98]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411bd3
or ecx, 2
mov eax, 1
test eax, eax
jle 0x411bcb
mov dword [esp + 0x9c], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e8ef9]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1a
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x9c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411c31
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efa9c]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411c48
or ecx, 8
mov eax, 1
test eax, eax
jle 0x411c40
mov dword [esp + 0x98], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e799f]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x16
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x98]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411ca6
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efaa0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411cbd
or ecx, 8
mov eax, 1
test eax, eax
jle 0x411cb5
mov dword [esp + 0x94], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e69dc]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411d1b
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efaa4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411d32
or ecx, 8
mov eax, 1
test eax, eax
jle 0x411d2a
mov dword [esp + 0x90], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e6fb5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x90]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411d90
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efaa8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411da7
or ecx, 8
mov eax, 1
test eax, eax
jle 0x411d9f
mov dword [esp + 0x8c], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e6fc9]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x8c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411e05
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efaac]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411e1c
or ecx, 1
mov eax, 1
test eax, eax
jle 0x411e14
mov dword [esp + 0x88], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e9c3d]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x88]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411e7a
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efab4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411e91
or ecx, 1
mov eax, 1
test eax, eax
jle 0x411e89
mov dword [esp + 0x84], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e7477]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x15
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x84]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411eef
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efab8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411f06
or ecx, 1
mov eax, 1
test eax, eax
jle 0x411efe
mov dword [esp + 0x80], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e7f07]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x17
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x80]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411f64
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efabc]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411f7b
or ecx, 1
mov eax, 1
test eax, eax
jle 0x411f73
mov dword [esp + 0x7c], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e97f2]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1c
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x7c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x411fd3
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efac0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x411fea
or ecx, 1
mov eax, 1
test eax, eax
jle 0x411fe2
mov dword [esp + 0x78], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e6fdd]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x412042
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efac4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x412059
or ecx, 1
mov eax, 1
test eax, eax
jle 0x412051
mov dword [esp + 0x74], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e79b5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x16
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x74]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4120b1
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efac8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4120c8
or ecx, 2
mov eax, 1
test eax, eax
jle 0x4120c0
mov dword [esp + 0x70], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e69ef]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x412120
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efacc]
mov dword [eax + 8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e6ff1]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x14
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x412179
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efad0]
mov dword [eax + 8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e5d2b]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x10
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4121d2
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efad4]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4121e9
or ecx, 1
mov eax, 1
test eax, eax
jle 0x4121e1
mov dword [esp + 0x6c], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e6a02]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x13
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x6c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x412241
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efad8]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x412258
or ecx, 1
mov eax, 1
test eax, eax
jle 0x412250
mov dword [esp + 0x68], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e84a3]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x18
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x68]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4122b0
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efae0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x4122c7
or ecx, 1
mov eax, 1
test eax, eax
jle 0x4122bf
mov dword [esp + 0x64], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e980e]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1c
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x64]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x41231f
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efae4]
mov dword [eax + 8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4eafa5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x21
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x412378
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efae8]
mov dword [eax + 8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e65b5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x12
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x4123d1
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efaec]
mov dword [eax + 8], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4e9c5a]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1d
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x41242a
mov ecx, dword [eax + 8]
call fcn.0046c600
mov dword [edi], ecx
lea ecx, [0x4efaf0]
mov dword [eax + 8], ecx
xor eax, eax
xor ecx, ecx
jmp 0x412441
or ecx, 1
mov eax, 1
test eax, eax
jle 0x412439
mov dword [esp + 0x60], ecx
lea eax, [0x4d0fe0]
mov dword [esp], eax
mov ecx, dword [esp + 0x120]
mov dword [esp + 4], ecx
lea edx, [0x4ea764]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x1f
call fcn.004652f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x60]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov ecx, dword [0x5c06a0]
test ecx, ecx
je 0x412499
call fcn.0046c680
nop
call fcn.0046b200
jmp fcn.004113a0