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

Disassembly:
mov qword [rsp + 8], rcx
mov eax, 0x1cb8
call fcn.18004c9a0
sub rsp, rax
mov rax, qword [0x1800950e8]
xor rax, rsp
mov qword [rsp + 0x1ca0], rax
mov rax, qword [rsp + 0x1cc0]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0x24]
jae 0x18003ef56
mov rax, qword [rsp + 0x1cc0]
xorps xmm0, xmm0
comiss xmm0, dword [rax + 0x28]
jb 0x18003ef5b
jmp 0x18003fdde
mov rax, qword [0x180096730]
mov qword [rsp + 0x30], rax
cmp qword [0x180096740], 0
je 0x18003ef88
mov rax, qword [rsp + 0x1cc0]
mov eax, dword [rax + 0x18]
cmp dword [0x180095030], eax
jge 0x18003f049
cmp qword [0x180096740], 0
je 0x18003efb1
mov rax, qword [0x180096740]
mov rax, qword [rax]
mov rcx, qword [0x180096740]
call qword [rax + 0x10]
mov qword [0x180096740], 0
mov rax, qword [rsp + 0x1cc0]
mov eax, dword [rax + 0x18]
add eax, 0x1388
mov dword [0x180095030], eax
mov r8d, 0x18
xor edx, edx
lea rcx, [rsp + 0x1c28]
call fcn.18004ddd0
mov dword [rsp + 0x1c2c], 2
movsxd rax, dword [0x180095030]
imul rax, rax, 0x14
mov dword [rsp + 0x1c28], eax
mov dword [rsp + 0x1c30], 1
mov dword [rsp + 0x1c34], 0x10000
mov dword [rsp + 0x1c38], 0
mov rax, qword [0x180096728]
mov rax, qword [rax]
lea r9, [0x180096740]
xor r8d, r8d
lea rdx, [rsp + 0x1c28]
mov rcx, qword [0x180096728]
call qword [rax + 0x18]
test eax, eax
jge 0x18003f049
jmp 0x18003fdde
cmp qword [0x180096748], 0
je 0x18003f06a
mov rax, qword [rsp + 0x1cc0]
mov eax, dword [rax + 0x14]
cmp dword [0x180095034], eax
jge 0x18003f11f
cmp qword [0x180096748], 0
je 0x18003f093
mov rax, qword [0x180096748]
mov rax, qword [rax]
mov rcx, qword [0x180096748]
call qword [rax + 0x10]
mov qword [0x180096748], 0
mov rax, qword [rsp + 0x1cc0]
mov eax, dword [rax + 0x14]
add eax, 0x2710
mov dword [0x180095034], eax
mov r8d, 0x18
xor edx, edx
lea rcx, [rsp + 0x1c40]
call fcn.18004ddd0
mov dword [rsp + 0x1c44], 2
movsxd rax, dword [0x180095034]
shl rax, 1
mov dword [rsp + 0x1c40], eax
mov dword [rsp + 0x1c48], 2
mov dword [rsp + 0x1c4c], 0x10000
mov rax, qword [0x180096728]
mov rax, qword [rax]
lea r9, [0x180096748]
xor r8d, r8d
lea rdx, [rsp + 0x1c40]
mov rcx, qword [0x180096728]
call qword [rax + 0x18]
test eax, eax
jge 0x18003f11f
jmp 0x18003fdde
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rcx, [rsp + 0xa8]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9d, 4
xor r8d, r8d
mov rdx, qword [0x180096740]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x70]
test eax, eax
je 0x18003f15d
jmp 0x18003fdde
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rcx, [rsp + 0xb8]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9d, 4
xor r8d, r8d
mov rdx, qword [0x180096748]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x70]
test eax, eax
je 0x18003f19b
jmp 0x18003fdde
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x48], 0
jmp 0x18003f1cf
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x1cc0]
mov eax, dword [rax + 0x10]
cmp dword [rsp + 0x48], eax
jge 0x18003f28e
movsxd rax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x1cc0]
mov rcx, qword [rcx + 8]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
movsxd rax, dword [rax + 0x20]
imul rax, rax, 0x14
mov r8, rax
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x28]
mov rcx, qword [rsp + 0x80]
call fcn.18004d720
mov rax, qword [rsp + 0x70]
movsxd rax, dword [rax + 0x10]
shl rax, 1
mov r8, rax
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rsp + 0x88]
call fcn.18004d720
mov rax, qword [rsp + 0x70]
movsxd rax, dword [rax + 0x20]
imul rax, rax, 0x14
mov rcx, qword [rsp + 0x80]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x70]
movsxd rax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x88]
lea rax, [rcx + rax*2]
mov qword [rsp + 0x88], rax
jmp 0x18003f1c5
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
xor r8d, r8d
mov rdx, qword [0x180096740]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x78]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
xor r8d, r8d
mov rdx, qword [0x180096748]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x78]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rcx, [rsp + 0xc8]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9d, 4
xor r8d, r8d
mov rdx, qword [0x180096760]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x70]
test eax, eax
je 0x18003f300
jmp 0x18003fdde
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x1cc0]
movss xmm0, dword [rax + 0x1c]
movss dword [rsp + 0x54], xmm0
mov rax, qword [rsp + 0x1cc0]
mov rcx, qword [rsp + 0x1cc0]
movss xmm0, dword [rax + 0x1c]
addss xmm0, dword [rcx + 0x24]
movss dword [rsp + 0x58], xmm0
mov rax, qword [rsp + 0x1cc0]
movss xmm0, dword [rax + 0x20]
movss dword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x1cc0]
mov rcx, qword [rsp + 0x1cc0]
movss xmm0, dword [rax + 0x20]
addss xmm0, dword [rcx + 0x28]
movss dword [rsp + 0x5c], xmm0
movss xmm0, dword [rsp + 0x58]
subss xmm0, dword [rsp + 0x54]
movss xmm1, dword [0x180078cb0]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x1c60], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c64], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c68], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c6c], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c70], xmm0
movss xmm0, dword [rsp + 0x60]
subss xmm0, dword [rsp + 0x5c]
movss xmm1, dword [0x180078cb0]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x1c74], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c78], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c7c], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c80], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c84], xmm0
movss xmm0, dword [0x18007a8f4]
movss dword [rsp + 0x1c88], xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x1c8c], xmm0
movss xmm0, dword [rsp + 0x58]
addss xmm0, dword [rsp + 0x54]
movss xmm1, dword [rsp + 0x54]
subss xmm1, dword [rsp + 0x58]
divss xmm0, xmm1
movss dword [rsp + 0x1c90], xmm0
movss xmm0, dword [rsp + 0x60]
addss xmm0, dword [rsp + 0x5c]
movss xmm1, dword [rsp + 0x5c]
subss xmm1, dword [rsp + 0x60]
divss xmm0, xmm1
movss dword [rsp + 0x1c94], xmm0
movss xmm0, dword [0x18007a8f4]
movss dword [rsp + 0x1c98], xmm0
movss xmm0, dword [0x180077b40]
movss dword [rsp + 0x1c9c], xmm0
mov rax, qword [rsp + 0x90]
mov r8d, 0x40
lea rdx, [rsp + 0x1c60]
mov rcx, rax
call fcn.18004d720
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
xor r8d, r8d
mov rdx, qword [0x180096760]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x78]
mov dword [rsp + 0xe4], 0x10
mov eax, dword [rsp + 0xe4]
mov dword [rsp + 0xe0], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r8, [rsp + 0xe8]
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x300]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r8, [rsp + 0x1e8]
lea rdx, [rsp + 0xe4]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x2f8]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rdx, [rsp + 0x368]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x2f0]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x388]
lea r8, [rsp + 0x378]
lea rdx, [rsp + 0x370]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x2d8]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r8, [rsp + 0x38c]
lea rdx, [rsp + 0x390]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x2e0]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x398]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x248]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x3a0]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x258]
mov dword [rsp + 0x3c8], 0x100
mov eax, dword [rsp + 0x3c8]
mov dword [rsp + 0x3c4], eax
mov eax, dword [rsp + 0x3c4]
mov dword [rsp + 0x3c0], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x3c0]
lea r8, [rsp + 0x3d0]
lea rdx, [rsp + 0x3a8]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x250]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x3c4]
lea r8, [rsp + 0xbd0]
lea rdx, [rsp + 0x3b0]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x260]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x1be8]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x240]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x3c8]
lea r8, [rsp + 0x13d0]
lea rdx, [rsp + 0x3b8]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x290]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rdx, [rsp + 0x1bd0]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x298]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x1bf0]
lea r8, [rsp + 0x1bfc]
lea rdx, [rsp + 0x1bd8]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x280]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rcx, [rsp + 0x1bf8]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x1bf4]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x1be0]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x278]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rdx, [rsp + 0x1c00]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x270]
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x1cc0]
call fcn.18003fe00
mov dword [rsp + 0x64], 0
mov dword [rsp + 0x68], 0
mov rax, qword [rsp + 0x1cc0]
mov rax, qword [rax + 0x1c]
mov qword [rsp + 0x1c10], rax
mov dword [rsp + 0x4c], 0
jmp 0x18003f7a0
mov eax, dword [rsp + 0x4c]
inc eax
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x1cc0]
mov eax, dword [rax + 0x10]
cmp dword [rsp + 0x4c], eax
jge 0x18003f98d
movsxd rax, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x1cc0]
mov rcx, qword [rcx + 8]
mov rax, qword [rcx + rax*8]
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x50], 0
jmp 0x18003f7e3
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
cmp dword [rsp + 0x50], eax
jge 0x18003f960
mov rax, qword [rsp + 0x78]
mov edx, dword [rsp + 0x50]
mov rcx, rax
call fcn.180025b00
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x28], 0
je 0x18003f84d
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x28], 0xffffffffffffffff
jne 0x18003f836
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x1cc0]
call fcn.18003fe00
jmp 0x18003f848
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x40]
call qword [rax + 0x28]
jmp 0x18003f95b
mov rax, qword [rsp + 0x40]
movss xmm0, dword [rax]
subss xmm0, dword [rsp + 0x1c10]
cvttss2si eax, xmm0
mov dword [rsp + 0x1c18], eax
mov rax, qword [rsp + 0x40]
movss xmm0, dword [rax + 4]
subss xmm0, dword [rsp + 0x1c14]
cvttss2si eax, xmm0
mov dword [rsp + 0x1c1c], eax
mov rax, qword [rsp + 0x40]
movss xmm0, dword [rax + 8]
subss xmm0, dword [rsp + 0x1c10]
cvttss2si eax, xmm0
mov dword [rsp + 0x1c20], eax
mov rax, qword [rsp + 0x40]
movss xmm0, dword [rax + 0xc]
subss xmm0, dword [rsp + 0x1c14]
cvttss2si eax, xmm0
mov dword [rsp + 0x1c24], eax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r8, [rsp + 0x1c18]
mov edx, 1
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x168]
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0xa0]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x40]
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x18]
add eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0x1c]
add ecx, dword [rsp + 0x64]
mov rdx, qword [rsp + 0x30]
mov rdx, qword [rdx]
mov qword [rsp + 0x98], rdx
mov r9d, eax
mov r8d, ecx
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 0x20]
mov rcx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x98]
call qword [rax + 0x60]
jmp 0x18003f7d9
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x10]
mov ecx, dword [rsp + 0x64]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x78]
mov eax, dword [rax + 0x20]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
jmp 0x18003f796
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r8, [rsp + 0xe8]
mov edx, dword [rsp + 0xe0]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x168]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r8, [rsp + 0x1e8]
mov edx, dword [rsp + 0xe4]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x160]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x368]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x158]
cmp qword [rsp + 0x368], 0
je 0x18003fa0d
mov rax, qword [rsp + 0x368]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x368]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r9d, dword [rsp + 0x388]
lea r8, [rsp + 0x378]
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x118]
cmp qword [rsp + 0x370], 0
je 0x18003fa59
mov rax, qword [rsp + 0x370]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x370]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r8d, dword [rsp + 0x38c]
mov rdx, qword [rsp + 0x390]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x120]
cmp qword [rsp + 0x390], 0
je 0x18003fa9d
mov rax, qword [rsp + 0x390]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x390]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x398]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x40]
cmp qword [rsp + 0x398], 0
je 0x18003fade
mov rax, qword [rsp + 0x398]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x398]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x3a0]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x50]
cmp qword [rsp + 0x3a0], 0
je 0x18003fb1f
mov rax, qword [rsp + 0x3a0]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a0]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r9d, dword [rsp + 0x3c0]
lea r8, [rsp + 0x3d0]
mov rdx, qword [rsp + 0x3a8]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x48]
cmp qword [rsp + 0x3a8], 0
je 0x18003fb68
mov rax, qword [rsp + 0x3a8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3a8]
call qword [rax + 0x10]
mov dword [rsp + 0x38], 0
jmp 0x18003fb7c
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x3c0]
cmp dword [rsp + 0x38], eax
jae 0x18003fbb8
mov eax, dword [rsp + 0x38]
cmp qword [rsp + rax*8 + 0x3d0], 0
je 0x18003fbb6
mov eax, dword [rsp + 0x38]
mov rax, qword [rsp + rax*8 + 0x3d0]
mov ecx, dword [rsp + 0x38]
mov rcx, qword [rsp + rcx*8 + 0x3d0]
mov rax, qword [rax]
call qword [rax + 0x10]
jmp 0x18003fb72
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r9d, dword [rsp + 0x3c4]
lea r8, [rsp + 0xbd0]
mov rdx, qword [rsp + 0x3b0]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x58]
cmp qword [rsp + 0x3b0], 0
je 0x18003fc01
mov rax, qword [rsp + 0x3b0]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3b0]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea r9, [rsp + 0x1be8]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x38]
cmp qword [rsp + 0x1be8], 0
je 0x18003fc42
mov rax, qword [rsp + 0x1be8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x1be8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r9d, dword [rsp + 0x3c8]
lea r8, [rsp + 0x13d0]
mov rdx, qword [rsp + 0x3b8]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0xb8]
cmp qword [rsp + 0x3b8], 0
je 0x18003fc8e
mov rax, qword [rsp + 0x3b8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x3b8]
call qword [rax + 0x10]
mov dword [rsp + 0x3c], 0
jmp 0x18003fca2
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x3c4]
cmp dword [rsp + 0x3c], eax
jae 0x18003fcde
mov eax, dword [rsp + 0x3c]
cmp qword [rsp + rax*8 + 0xbd0], 0
je 0x18003fcdc
mov eax, dword [rsp + 0x3c]
mov rax, qword [rsp + rax*8 + 0xbd0]
mov ecx, dword [rsp + 0x3c]
mov rcx, qword [rsp + rcx*8 + 0xbd0]
mov rax, qword [rax]
call qword [rax + 0x10]
jmp 0x18003fc98
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov edx, dword [rsp + 0x1bd0]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0xc0]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r9d, dword [rsp + 0x1bf0]
mov r8d, dword [rsp + 0x1bfc]
mov rdx, qword [rsp + 0x1bd8]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x98]
cmp qword [rsp + 0x1bd8], 0
je 0x18003fd44
mov rax, qword [rsp + 0x1bd8]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x1bd8]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
lea rcx, [rsp + 0x1bf8]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x1bf4]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x1be0]
mov r8d, 1
xor edx, edx
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x90]
cmp qword [rsp + 0x1be0], 0
je 0x18003fda2
mov rax, qword [rsp + 0x1be0]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x1be0]
call qword [rax + 0x10]
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov rdx, qword [rsp + 0x1c00]
mov rcx, qword [rsp + 0x30]
call qword [rax + 0x88]
cmp qword [rsp + 0x1c00], 0
je 0x18003fdde
mov rax, qword [rsp + 0x1c00]
mov rax, qword [rax]
mov rcx, qword [rsp + 0x1c00]
call qword [rax + 0x10]
mov rcx, qword [rsp + 0x1ca0]
xor rcx, rsp
call fcn.18004c880
add rsp, 0x1cb8
ret