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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x48
lea rbp, [rsp + 0x40]
mov qword [rbp], 0xfffffffffffffffe
mov rax, qword [rcx + 0x10]
mov qword [rbp - 8], rcx
mov rdx, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov rcx, rax
mov qword [rbp - 0x18], rdx
call qword [rdx]
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x180016d50
mov r8, qword [rax + 0x10]
mov rcx, qword [rbp - 0x10]
call fcn.1800052b0
mov rax, qword [rbp - 8]
mov rcx, qword [rax + 0x20]
mov rax, qword [rax + 0x28]
mov qword [rbp - 0x10], rcx
mov qword [rbp - 0x18], rax
call qword [rax]
mov rax, qword [rbp - 0x18]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x180016d80
mov r8, qword [rax + 0x10]
mov rcx, qword [rbp - 0x10]
call fcn.1800052b0
mov r15, qword [rbp - 8]
mov rcx, qword [r15 + 0x2d8]
test rcx, rcx
je 0x180016da7
mov rdx, qword [r15 + 0x2e0]
test rdx, rdx
je 0x180016da7
mov r8d, 1
call fcn.1800052b0
mov rsi, qword [r15 + 0x2f0]
test rsi, rsi
je 0x180016e19
mov rdi, qword [r15 + 0x300]
test rdi, rdi
je 0x180016df7
lea rbx, [rsi + 8]
jmp 0x180016dd9
add rbx, 0x18
dec rdi
je 0x180016df7
mov rcx, qword [rbx - 8]
test rcx, rcx
je 0x180016dd0
mov rdx, qword [rbx]
test rdx, rdx
je 0x180016dd0
mov r8d, 1
call fcn.1800052b0
jmp 0x180016dd0
mov rax, qword [r15 + 0x2f8]
test rax, rax
je 0x180016e19
shl rax, 3
lea rdx, [rax + rax*2]
mov r8d, 8
mov rcx, rsi
call fcn.1800052b0
mov rsi, qword [r15 + 0x60]
mov r14, qword [r15 + 0x70]
test r14, r14
je 0x180016ea2
mov rdi, qword [r15 + 0x58]
mov rax, qword [r15 + 0x68]
xor edx, edx
cmp rax, rsi
mov rcx, rsi
cmovb rcx, rdx
mov r8, rax
sub r8, rcx
mov r15, rsi
sub r15, r8
lea r12, [r8 + r14]
cmp r15, r14
cmovb r12, rsi
mov rbx, r14
sub rbx, r15
cmovb rbx, rdx
sub r12, r8
jne 0x180017063
cmp r15, r14
mov r15, qword [rbp - 8]
jae 0x180016ea2
add rdi, 8
jmp 0x180016e89
add rdi, 0x18
dec rbx
je 0x180016ea2
mov rdx, qword [rdi]
test rdx, rdx
je 0x180016e80
mov rcx, qword [rdi - 8]
mov r8d, 1
call fcn.1800052b0
jmp 0x180016e80
test rsi, rsi
je 0x180016ebe
mov rcx, qword [r15 + 0x58]
shl rsi, 3
lea rdx, [rsi + rsi*2]
mov r8d, 8
call fcn.1800052b0
mov rsi, qword [r15 + 0x90]
mov r14, qword [r15 + 0xa0]
test r14, r14
je 0x180016f52
mov rdi, qword [r15 + 0x88]
mov rax, qword [r15 + 0x98]
xor edx, edx
cmp rax, rsi
mov rcx, rsi
cmovb rcx, rdx
mov r8, rax
sub r8, rcx
mov r15, rsi
sub r15, r8
lea r12, [r8 + r14]
cmp r15, r14
cmovb r12, rsi
mov rbx, r14
sub rbx, r15
cmovb rbx, rdx
sub r12, r8
jne 0x1800170a7
cmp r15, r14
mov r15, qword [rbp - 8]
jae 0x180016f52
add rdi, 8
jmp 0x180016f39
add rdi, 0x18
dec rbx
je 0x180016f52
mov rdx, qword [rdi]
test rdx, rdx
je 0x180016f30
mov rcx, qword [rdi - 8]
mov r8d, 1
call fcn.1800052b0
jmp 0x180016f30
test rsi, rsi
je 0x180016f71
mov rcx, qword [r15 + 0x88]
shl rsi, 3
lea rdx, [rsi + rsi*2]
mov r8d, 8
call fcn.1800052b0
mov rsi, qword [r15 + 0xc0]
mov r14, qword [r15 + 0xd0]
test r14, r14
je 0x180017002
mov rdi, qword [r15 + 0xb8]
mov rax, qword [r15 + 0xc8]
xor edx, edx
cmp rax, rsi
mov rcx, rsi
cmovb rcx, rdx
mov r8, rax
sub r8, rcx
mov r15, rsi
sub r15, r8
lea r12, [r8 + r14]
cmp r15, r14
cmovb r12, rsi
mov rbx, r14
sub rbx, r15
cmovb rbx, rdx
sub r12, r8
jne 0x1800170f7
cmp r15, r14
mov r15, qword [rbp - 8]
jae 0x180017002
add rdi, 8
jmp 0x180016fe9
add rdi, 0x18
dec rbx
je 0x180017002
mov rdx, qword [rdi]
test rdx, rdx
je 0x180016fe0
mov rcx, qword [rdi - 8]
mov r8d, 1
call fcn.1800052b0
jmp 0x180016fe0
test rsi, rsi
je 0x180017021
mov rcx, qword [r15 + 0xb8]
shl rsi, 3
lea rdx, [rsi + rsi*2]
mov r8d, 8
call fcn.1800052b0
mov rcx, qword [r15 + 0x310]
test rcx, rcx
je 0x180017044
mov rdx, qword [r15 + 0x318]
test rdx, rdx
je 0x180017044
mov r8d, 1
call fcn.1800052b0
add r15, 0xd8
mov rcx, r15
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp fcn.180016700
shl rax, 3
lea rax, [rax + rax*2]
shl rcx, 3
lea rcx, [rcx + rcx*2]
sub rax, rcx
lea r13, [rax + rdi]
add r13, 8
jmp 0x18001708d
add r13, 0x18
dec r12
je 0x180016e64
mov rdx, qword [r13]
test rdx, rdx
je 0x180017080
mov rcx, qword [r13 - 8]
mov r8d, 1
call fcn.1800052b0
jmp 0x180017080
shl rax, 3
lea rax, [rax + rax*2]
shl rcx, 3
lea rcx, [rcx + rcx*2]
sub rax, rcx
lea r13, [rax + rdi]
add r13, 8
jmp 0x1800170dd
add r13, 0x18
dec r12
je 0x180016f19
mov rdx, qword [r13]
test rdx, rdx
je 0x1800170d0
mov rcx, qword [r13 - 8]
mov r8d, 1
call fcn.1800052b0
jmp 0x1800170d0
shl rax, 3
lea rax, [rax + rax*2]
shl rcx, 3
lea rcx, [rcx + rcx*2]
sub rax, rcx
lea r13, [rax + rdi]
add r13, 8
jmp 0x18001712d
add r13, 0x18
dec r12
je 0x180016fc8
mov rdx, qword [r13]
test rdx, rdx
je 0x180017120
mov rcx, qword [r13 - 8]
mov r8d, 1
call fcn.1800052b0
jmp 0x180017120