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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov r10, qword [rcx]
mov rdi, qword [rsp + 0x80]
mov rbx, qword [rcx + 0x18]
mov rax, qword [rdi + 0x20]
movsxd r13, dword [rdi]
mov r12, qword [r10]
mov r15, qword [r10 + 8]
mov rbp, qword [rcx + 8]
mov qword [rsp + 0x80], rax
movzx eax, byte [rbx + 0x10]
xor r10d, r10d
mov rsi, rcx
mov r11, r8
imul r14, rax, 0x70
mov rax, qword [rsp + 0x90]
mov dword [rax], r10d
mov qword [rbx], rdx
mov rcx, qword [rdi + 8]
test r13d, r13d
jle 0x1800c2101
add rcx, 5
mov r8d, r13d
lea esi, [r10 + 1]
movsxd rdx, dword [rcx + 3]
shl rdx, 6
add rdx, qword [rbp + 0x20]
mov byte [rcx], r10b
mov rax, qword [rdx + 0x30]
and rax, r11
cmp rax, qword [rdx + 0x30]
jne 0x1800c20f3
test word [rdx + 0x14], r9w
movzx eax, r10b
cmove eax, esi
mov byte [rcx], al
add rcx, 0xc
sub r8, rsi
jne 0x1800c20c9
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x80]
mov r8, r13
xor edx, edx
shl r8, 3
call fcn.1800cadf0
xor ecx, ecx
mov qword [rdi + 0x48], Ordinal_27
mov qword [rdi + 0x30], rcx
mov dword [rdi + 0x28], ecx
mov dword [rdi + 0x3c], ecx
mov dword [rdi + 0x50], ecx
movabs rax, 0x546d42aea2879f2e
mov r8, rdi
mov qword [rdi + 0x40], rax
mov rax, qword [r14 + r15 + 0x60]
mov rcx, r12
mov qword [rdi + 0x58], rax
mov rdx, qword [r14 + r15 + 0x28]
call fcn.1800c07f4
xor r11d, r11d
test eax, eax
je 0x1800c2168
cmp eax, 0x13
cmove eax, r11d
jmp 0x1800c2361
or r9d, 0xffffffff
mov rcx, r11
test r13d, r13d
jle 0x1800c218d
lea esi, [r9 + 2]
mov rax, qword [rbx + 0x38]
mov qword [rax + rcx*8], r11
add rcx, rsi
cmp rcx, r13
jl 0x1800c2178
mov rsi, qword [rsp + 0x60]
mov word [rbx + 0x1e], r11w
mov r10, qword [rdi + 8]
mov rdx, r11
test r13d, r13d
jle 0x1800c2273
mov rax, qword [rsp + 0x80]
add r10, 5
mov ecx, dword [rax + rdx*8]
dec ecx
js 0x1800c225e
movsxd rax, dword [r10 + 3]
cmp ecx, r13d
jge 0x1800c22ce
test eax, eax
js 0x1800c22ce
mov r8, rbp
cmp eax, dword [rbp + 0x14]
jge 0x1800c22ce
mov rsi, qword [rbx + 0x38]
movsxd r11, ecx
xor r8d, r8d
cmp qword [rsi + r11*8], r8
jne 0x1800c22ce
cmp byte [r10], r8b
je 0x1800c22ce
mov r8, rax
mov rax, rbp
shl r8, 6
add r8, qword [rax + 0x20]
mov rax, qword [r8 + 0x30]
or qword [rbx], rax
mov rax, qword [rsp + 0x80]
cmp ecx, r9d
cmovg r9d, ecx
mov qword [rsi + r11*8], r8
xor r11d, r11d
cmp ecx, 0x10
jge 0x1800c2241
cmp byte [rax + rdx*8 + 4], r11b
je 0x1800c2241
lea eax, [r11 + 1]
shl ax, cl
or word [rbx + 0x1e], ax
mov rax, qword [rsp + 0x80]
test byte [r8 + 0x14], 1
je 0x1800c225e
mov rcx, qword [rsp + 0x90]
and dword [rdi + 0x50], 0xfffffffe
mov dword [rdi + 0x3c], r11d
mov dword [rcx], 1
inc rdx
add r10, 0xc
cmp rdx, r13
jl 0x1800c21ae
mov rsi, qword [rsp + 0x60]
movzx eax, word [rsp + 0x88]
mov ebp, 1
mov ecx, r11d
not ax
and word [rbx + 0x1e], ax
lea eax, [r9 + rbp]
mov word [rbx + 0x2c], ax
test r9d, r9d
js 0x1800c22ab
mov rax, qword [rbx + 0x38]
cmp qword [rax], r11
je 0x1800c22ec
add ecx, ebp
add rax, 8
cmp ecx, r9d
jle 0x1800c229b
mov eax, dword [rdi + 0x28]
mov dword [rbx + 0x18], eax
mov al, byte [rdi + 0x38]
mov byte [rbx + 0x1c], al
mov rax, qword [rdi + 0x30]
mov dword [rdi + 0x38], r11d
mov qword [rbx + 0x20], rax
cmp dword [rdi + 0x3c], r11d
je 0x1800c2307
mov eax, dword [rdi + 0x10]
jmp 0x1800c230a
mov r8, qword [r14 + r15 + 0x28]
lea rdx, str._s.xBestIndex_malfunction
mov rcx, r12
mov r8, qword [r8]
call fcn.180068e38
mov eax, 1
jmp 0x1800c2361
mov r8, qword [r14 + r15 + 0x28]
lea rdx, str._s.xBestIndex_malfunction
mov rcx, r12
mov r8, qword [r8]
call fcn.180068e38
mov eax, ebp
jmp 0x1800c2361
mov eax, r11d
mov byte [rbx + 0x1d], al
mov word [rbx + 0x12], r11w
movsd xmm0, qword [rdi + 0x40]
call fcn.18007e77c
mov word [rbx + 0x14], ax
mov rcx, qword [rdi + 0x48]
call fcn.18007e6a4
mov word [rbx + 0x16], ax
test byte [rdi + 0x50], bpl
je 0x1800c233a
bts dword [rbx + 0x28], 0xc
jmp 0x1800c233f
btr dword [rbx + 0x28], 0xc
mov rdx, rbx
mov rcx, rsi
call fcn.1800c0d8c
cmp byte [rbx + 0x1c], 0
mov edi, eax
je 0x1800c235f
mov rcx, qword [rbx + 0x20]
call fcn.180059c0c
mov byte [rbx + 0x1c], 0
mov eax, edi
mov rbx, qword [rsp + 0x70]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret