Function at 0x14006a984
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 r11, r8
mov rdi, qword [rsp + 0x80]
mov rbx, qword [rcx + 0x18]
mov rsi, qword [rcx + 8]
mov r13, qword [r10]
movsxd rbp, dword [rdi]
movzx eax, byte [rbx + 0x10]
mov r14, qword [rdi + 0x20]
imul r15, rax, 0x70
mov rax, qword [rsp + 0x90]
add r15, qword [r10 + 8]
xor r10d, r10d
mov qword [rbx], rdx
mov rcx, qword [rdi + 8]
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x80], r14
mov dword [rax], r10d
test ebp, ebp
jle 0x14006aa26
add rcx, 5
mov r8d, ebp
movsxd rax, dword [rcx + 3]
imul rdx, rax, 0x38
add rdx, qword [rsi + 0x20]
mov byte [rcx], r10b
mov rax, qword [rdx + 0x28]
and rax, r11
cmp rax, qword [rdx + 0x28]
jne 0x14006aa1c
test word [rdx + 0x14], r9w
jne 0x14006aa1c
mov byte [rcx], 1
add rcx, 0xc
sub r8, 1
jne 0x14006a9f6
lea r8, [rbp*8]
xor edx, edx
mov rcx, r14
call fcn.1400db770
xor ecx, ecx
mov qword [rdi + 0x48], 0x19
mov qword [rdi + 0x30], rcx
movabs rax, 0x546d42aea2879f2e
mov dword [rdi + 0x28], ecx
mov r8, rdi
mov dword [rdi + 0x3c], ecx
mov dword [rdi + 0x50], ecx
mov rcx, r13
mov qword [rdi + 0x40], rax
mov rax, qword [r15 + 0x60]
mov qword [rdi + 0x58], rax
mov rdx, qword [r15 + 0x28]
call fcn.140069110
xor r11d, r11d
test eax, eax
je 0x14006aa87
cmp eax, 0x13
cmove eax, r11d
jmp 0x14006acf0
or r14d, 0xffffffff
mov esi, r11d
test ebp, ebp
jle 0x14006aaed
cmp ebp, 2
jb 0x14006aaed
lea rdx, [rbx + 0x38]
mov r9, qword [rdx]
lea eax, [rbp - 1]
movsxd rcx, eax
lea rax, [r9 + rcx*8]
cmp r9, rdx
ja 0x14006aab2
cmp rax, rdx
jae 0x14006aaed
mov eax, ebp
and eax, 0x80000001
jge 0x14006aac2
dec eax
or eax, 0xfffffffe
inc eax
mov edx, ebp
sub edx, eax
add esi, 2
cmp esi, edx
jl 0x14006aac6
lea eax, [rdx + 1]
mov rcx, r9
cdq
sub eax, edx
xor edx, edx
sar eax, 1
movsxd r8, eax
shl r8, 4
and r8, 0xfffffffffffffff8
call fcn.1400db770
xor r11d, r11d
movsxd rcx, esi
mov esi, 1
cmp rcx, rbp
jge 0x14006ab07
mov rax, qword [rbx + 0x38]
mov qword [rax + rcx*8], r11
add rcx, rsi
jmp 0x14006aaf5
mov word [rbx + 0x1e], r11w
mov r9d, r11d
mov rax, qword [rdi + 8]
test ebp, ebp
jle 0x14006ac11
lea r8, [rax + 5]
mov rcx, r11
mov rax, qword [rsp + 0x80]
movsxd r10, dword [rax + rcx*8]
lea edx, [r10 - 1]
test edx, edx
js 0x14006abfe
cmp edx, ebp
jge 0x14006ac58
movsxd rax, dword [r8 + 3]
test eax, eax
js 0x14006ac58
mov r11, qword [rsp + 0x68]
cmp eax, dword [r11 + 0x14]
jge 0x14006ac58
mov rsi, qword [rbx + 0x38]
mov r11, r10
xor r10d, r10d
cmp qword [rsi + r11*8 - 8], r10
jne 0x14006ac58
cmp byte [r8], r10b
je 0x14006ac58
imul r10, rax, 0x38
mov rax, qword [rsp + 0x68]
add r10, qword [rax + 0x20]
mov rax, qword [r10 + 0x28]
or qword [rbx], rax
mov eax, edx
cmp edx, r14d
mov qword [rsi + r11*8 - 8], r10
cmovle eax, r14d
xor r11d, r11d
mov r14d, eax
mov rax, qword [rsp + 0x80]
cmp byte [rax + rcx*8 + 4], r11b
je 0x14006abd9
cmp r9d, 0x10
jge 0x14006abd9
movzx eax, word [rsp + 0x88]
bt eax, r9d
jb 0x14006abd1
movzx eax, word [rbx + 0x1e]
bts eax, edx
mov word [rbx + 0x1e], ax
mov rax, qword [rsp + 0x80]
mov esi, 1
test byte [r10 + 0x14], sil
je 0x14006abfe
mov rax, qword [rsp + 0x90]
and dword [rdi + 0x50], 0xfffffffe
mov dword [rdi + 0x3c], r11d
mov dword [rax], esi
mov rax, qword [rsp + 0x80]
add r9d, esi
add rcx, rsi
add r8, 0xc
cmp rcx, rbp
jl 0x14006ab2a
lea eax, [rsi + r14]
mov ecx, r11d
mov word [rbx + 0x2c], ax
test r14d, r14d
js 0x14006ac35
mov rax, qword [rbx + 0x38]
cmp qword [rax], r11
je 0x14006ac75
add ecx, esi
add rax, 8
cmp ecx, r14d
jle 0x14006ac25
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 0x14006ac8f
mov eax, dword [rdi + 0x10]
jmp 0x14006ac92
mov r8, qword [r15 + 0x28]
lea rdx, str._s.xBestIndex_malfunction
mov rcx, r13
mov r8, qword [r8]
call fcn.14000a098
mov eax, 1
jmp 0x14006acf0
mov r8, qword [r15 + 0x28]
lea rdx, str._s.xBestIndex_malfunction
mov rcx, r13
mov r8, qword [r8]
call fcn.14000a098
mov eax, esi
jmp 0x14006acf0
mov eax, r11d
mov byte [rbx + 0x1d], al
mov word [rbx + 0x12], r11w
movsd xmm0, qword [rdi + 0x40]
call fcn.14000b2d8
mov word [rbx + 0x14], ax
mov rcx, qword [rdi + 0x48]
call fcn.14000b278
mov edx, dword [rbx + 0x28]
mov word [rbx + 0x16], ax
mov eax, edx
bts edx, 0xc
btr eax, 0xc
test byte [rdi + 0x50], sil
cmove edx, eax
mov dword [rbx + 0x28], edx
mov rdx, rbx
mov rcx, qword [rsp + 0x60]
call fcn.140069700
cmp byte [rbx + 0x1c], 0
mov edi, eax
je 0x14006acee
mov rcx, qword [rbx + 0x20]
call fcn.1400074b8
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