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

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x68
mov rax, qword [rsp + 0x98]
mov qword [rax], 0
cmp qword [rsp + 0x78], 0
jne 0x18003f00e
cmp qword [rsp + 0x88], 0
jne 0x18003f00e
cmp dword [rsp + 0x80], 0
jne 0x18003efce
cmp dword [rsp + 0x90], 0
je 0x18003f007
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x14], 1
jle 0x18003efe3
mov dword [rsp + 0x28], 0
jmp 0x18003efeb
mov dword [rsp + 0x28], 0x80
mov r8d, 0xffffffff
mov edx, dword [rsp + 0x28]
mov rcx, qword [rsp + 0x98]
call fcn.18003e6c0
jmp 0x18003f25a
xor eax, eax
jmp 0x18003f25a
mov dword [rsp + 0x20], 0
cmp qword [rsp + 0x88], 0
jne 0x18003f06f
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x88], rax
xor eax, eax
test eax, eax
jne 0x18003f021
cmp qword [rsp + 0x78], 0
jne 0x18003f105
cmp dword [rsp + 0x80], 0
je 0x18003f0c0
mov rax, qword [rsp + 0x70]
cmp dword [rax + 0x14], 1
jle 0x18003f09a
mov dword [rsp + 0x2c], 0
jmp 0x18003f0a2
mov dword [rsp + 0x2c], 0x80
mov r8d, 0xffffffff
mov edx, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x98]
call fcn.18003e6c0
jmp 0x18003f25a
cmp dword [rsp + 0x90], 0
jne 0x18003f0e6
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x98]
call fcn.18003c9b0
jmp 0x18003f25a
mov r8, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x70]
call fcn.18003edf0
jmp 0x18003f25a
cmp dword [rsp + 0x80], 0
je 0x18003f15d
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x80], eax
mov eax, dword [rsp + 0x3c]
mov dword [rsp + 0x90], eax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x88], rax
xor eax, eax
test eax, eax
jne 0x18003f10f
mov rax, qword [rsp + 0x78]
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax]
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x30]
add rax, 4
mov qword [rsp + 0x30], rax
cmp dword [rsp + 0x90], 0
jne 0x18003f1b2
cmp dword [rsp + 0x80], 0
jne 0x18003f1b2
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x98]
call fcn.18003c9b0
mov dword [rsp + 0x20], eax
jmp 0x18003f1da
cmp dword [rsp + 0x80], 0
jne 0x18003f1da
mov r8, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x70]
call fcn.18003edf0
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
je 0x18003f1e7
mov eax, dword [rsp + 0x20]
jmp 0x18003f25a
mov dword [rsp + 0x24], 0
jmp 0x18003f1fb
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x40]
cmp dword [rsp + 0x24], eax
jae 0x18003f258
mov eax, dword [rsp + 0x24]
add eax, eax
mov eax, eax
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx + rax*4]
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x24]
lea eax, [rax + rax + 1]
mov eax, eax
mov rcx, qword [rsp + 0x30]
mov eax, dword [rcx + rax*4]
mov dword [rsp + 0x44], eax
mov r8d, dword [rsp + 0x44]
mov edx, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x98]
call fcn.18003e6c0
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 0
je 0x18003f256
mov eax, dword [rsp + 0x20]
jmp 0x18003f25a
jmp 0x18003f1f1
xor eax, eax
add rsp, 0x68
ret