Function at 0x1402030d0
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, 0x40
mov rax, qword [rcx + 8]
xor ebp, ebp
mov r10, qword [rcx]
movzx r11d, r9w
mov rbx, qword [rcx + 0x18]
mov rdi, r8
mov rsi, qword [rsp + 0xa0]
mov qword [rsp + 0x20], rax
mov r15, qword [r10]
movzx eax, byte [rbx + 0x10]
mov r14, qword [rsi + 0x20]
movsxd r13, dword [rsi]
imul rax, rax, 0x70
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x28], rax
mov rax, qword [r10 + 8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x38], r15
mov dword [rax], ebp
mov qword [rbx], rdx
mov rdx, qword [rsi + 8]
test r13d, r13d
jle 0x140203198
mov rsi, qword [rsp + 0x20]
add rdx, 5
mov r9d, r13d
nop dword [rax]
movsxd rax, dword [rdx + 3]
imul r8, rax, 0x38
add r8, qword [rsi + 0x20]
mov byte [rdx], bpl
mov rax, qword [r8 + 0x28]
and rax, rdi
cmp rax, qword [r8 + 0x28]
jne 0x140203186
test word [r8 + 0x14], r11w
jne 0x140203186
mov byte [rdx], 1
add rdx, 0xc
sub r9, 1
jne 0x140203160
mov rsi, qword [rsp + 0xa0]
lea r8, [r13*8]
xor edx, edx
mov rcx, r14
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [rsp + 0x28]
movabs rax, 0x546d42aea2879f2e
mov rdx, qword [rsp + 0x30]
mov qword [rsi + 0x30], rbp
mov dword [rsi + 0x28], ebp
mov dword [rsi + 0x3c], ebp
mov qword [rsi + 0x40], rax
mov qword [rsi + 0x48], 0x19
mov dword [rsi + 0x50], ebp
mov rax, qword [rcx + rdx + 0x60]
mov qword [rsi + 0x58], rax
mov rax, qword [rcx + rdx + 0x28]
mov rcx, qword [rax + 0x60]
test rcx, rcx
je 0x1402031ff
mov rax, qword [r15]
cmp qword [rcx], rax
je 0x1402031ff
mov rcx, qword [rcx + 0x28]
test rcx, rcx
jne 0x1402031f1
mov r14, qword [rcx + 0x10]
mov rdx, rsi
mov rcx, r14
mov rax, qword [r14]
call qword [rax + 0x18]
mov edi, eax
test eax, eax
je 0x14020324b
cmp eax, 0x13
je 0x14020324b
cmp eax, 7
jne 0x140203229
mov rcx, qword [r15]
call fcn.1401c5f10
jmp 0x14020324b
mov r8, qword [r14 + 0x10]
test r8, r8
jne 0x14020323c
mov ecx, edi
call fcn.14016f740
mov r8, rax
lea rdx, [0x140227410]
mov rcx, r15
call fcn.1401b29d0
mov r15, qword [r14 + 0x10]
test r15, r15
je 0x1402032ae
cmp dword [0x1402da030], ebp
je 0x1402032a5
mov rcx, qword [0x1402dfbb0]
test rcx, rcx
je 0x14020326e
call qword [0x1402da0b0]
mov rcx, r15
call qword [0x1402da068]
dec qword [0x1402dfb38]
mov rcx, r15
movsxd rdx, eax
sub qword [0x1402dfaf0], rdx
call qword [0x1402da058]
mov rcx, qword [0x1402dfbb0]
test rcx, rcx
je 0x1402032ae
call qword [0x1402da0c0]
jmp 0x1402032ae
mov rcx, r15
call qword [0x1402da058]
mov qword [r14 + 0x10], rbp
test edi, edi
je 0x1402032c3
cmp edi, 0x13
cmove edi, ebp
mov eax, edi
jmp 0x14020366e
mov r14d, 0xffffffff
mov edi, ebp
test r13d, r13d
jle 0x140203334
cmp r13d, 2
jb 0x140203334
mov r9, qword [rbx + 0x38]
lea rdx, [rbx + 0x38]
lea eax, [r13 - 1]
movsxd rcx, eax
lea rax, [r9 + rcx*8]
cmp r9, rdx
ja 0x1402032f3
cmp rax, rdx
jae 0x140203334
mov eax, r13d
and eax, 0x80000001
jge 0x140203304
dec eax
or eax, 0xfffffffe
inc eax
mov edx, r13d
sub edx, eax
nop dword [rax]
add edi, 2
cmp edi, edx
jl 0x140203310
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 sub.VCRUNTIME140.dll_memset
movsxd rcx, edi
cmp rcx, r13
jge 0x140203350
nop dword [rax]
mov rax, qword [rbx + 0x38]
mov qword [rax + rcx*8], rbp
inc rcx
cmp rcx, r13
jl 0x140203340
mov word [rbx + 0x1e], bp
mov r8d, ebp
mov r9, qword [rsi + 8]
test r13d, r13d
jle 0x140203453
movzx r15d, word [rsp + 0xa8]
mov rdx, rbp
mov rax, qword [rsp + 0x88]
add r9, 5
nop dword [rax]
movsxd r10, dword [rax + rdx*8]
lea ecx, [r10 - 1]
test ecx, ecx
js 0x140203440
cmp ecx, r13d
jge 0x140203498
movsxd rax, dword [r9 + 3]
test eax, eax
js 0x140203498
mov r11, qword [rsp + 0x20]
cmp eax, dword [r11 + 0x14]
jge 0x140203498
mov rdi, qword [rbx + 0x38]
mov r11, r10
cmp qword [rdi + r10*8 - 8], rbp
jne 0x140203498
cmp byte [r9], bpl
je 0x140203498
imul r10, rax, 0x38
mov rax, qword [rsp + 0x20]
add r10, qword [rax + 0x20]
mov rax, qword [r10 + 0x28]
or qword [rbx], rax
mov eax, ecx
cmp ecx, r14d
mov qword [rdi + r11*8 - 8], r10
cmovle eax, r14d
mov r14d, eax
mov rax, qword [rsp + 0x88]
cmp byte [rax + rdx*8 + 4], bpl
je 0x140203424
cmp r8d, 0x10
jge 0x140203424
bt r15d, r8d
jb 0x140203424
movzx eax, word [rbx + 0x1e]
bts eax, ecx
mov word [rbx + 0x1e], ax
mov rax, qword [rsp + 0x88]
jmp 0x140203424
test byte [r10 + 0x14], 1
je 0x140203440
mov rcx, qword [rsp + 0xb0]
and dword [rsi + 0x50], 0xfffffffe
mov dword [rsi + 0x3c], ebp
mov dword [rcx], 1
inc r8d
inc rdx
add r9, 0xc
cmp rdx, r13
jl 0x140203380
lea eax, [r14 + 1]
mov ecx, ebp
mov word [rbx + 0x2c], ax
test r14d, r14d
js 0x140203476
mov rax, qword [rbx + 0x38]
cmp qword [rax], rbp
je 0x140203498
inc ecx
add rax, 8
cmp ecx, r14d
jle 0x140203466
mov eax, dword [rsi + 0x28]
mov dword [rbx + 0x18], eax
movzx eax, byte [rsi + 0x38]
mov byte [rbx + 0x1c], al
mov rax, qword [rsi + 0x30]
mov dword [rsi + 0x38], ebp
mov qword [rbx + 0x20], rax
cmp dword [rsi + 0x3c], ebp
je 0x1402034c5
mov eax, dword [rsi + 0x10]
jmp 0x1402034c7
mov rcx, qword [rsp + 0x30]
lea rdx, str._s.xBestIndex_malfunction
mov r8, qword [rsp + 0x28]
mov r8, qword [r8 + rcx + 0x28]
mov rcx, qword [rsp + 0x38]
mov r8, qword [r8]
call fcn.1401b29d0
mov eax, 1
jmp 0x14020366e
mov eax, ebp
movsd xmm0, qword [0x14022bb30]
mov byte [rbx + 0x1d], al
mov word [rbx + 0x12], bp
movsd xmm1, qword [rsi + 0x40]
comisd xmm0, xmm1
movsd qword [rsp + 0xa0], xmm1
jb 0x1402034ef
movzx ecx, bp
jmp 0x140203557
movsd xmm0, qword [0x14022bbb0]
comisd xmm0, xmm1
jb 0x140203536
movsd xmm0, qword [0x14022bbd8]
xor eax, eax
comisd xmm1, xmm0
jb 0x140203524
subsd xmm1, xmm0
comisd xmm1, xmm0
jae 0x140203524
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si rcx, xmm1
add rcx, rax
call fcn.1401c5150
movzx ecx, ax
jmp 0x140203557
mov rcx, qword [rsp + 0xa0]
mov eax, 0x3fe
shr rcx, 0x34
sub cx, ax
movzx eax, cx
shl ax, 2
add cx, ax
add cx, cx
mov word [rbx + 0x14], cx
mov ecx, 0x28
mov rax, qword [rsi + 0x48]
cmp rax, 8
jae 0x14020357f
cmp rax, 2
jb 0x1402035ce
add cx, 0xfff6
add rax, rax
cmp rax, 8
jb 0x140203570
jmp 0x1402035bd
cmp rax, 0xff
jbe 0x1402035a0
nop word [rax + rax]
add cx, 0x28
shr rax, 4
cmp rax, 0xff
ja 0x140203590
cmp rax, 0xf
jbe 0x1402035bd
nop word [rax + rax]
add cx, 0xa
shr rax, 1
cmp rax, 0xf
ja 0x1402035b0
and eax, 7
lea rdx, [0x1402da680]
add cx, word [rdx + rax*2]
lea ebp, [rcx - 0xa]
mov ecx, dword [rbx + 0x28]
mov rdx, rbx
mov eax, ecx
mov word [rbx + 0x16], bp
bts ecx, 0xc
btr eax, 0xc
test dword [rsi + 0x50], 1
cmove ecx, eax
mov dword [rbx + 0x28], ecx
mov rcx, qword [rsp + 0x80]
call fcn.1402039b0
cmp byte [rbx + 0x1c], 0
mov esi, eax
je 0x14020366c
mov rdi, qword [rbx + 0x20]
test rdi, rdi
je 0x140203668
cmp dword [0x1402da030], 0
je 0x14020365f
mov rcx, qword [0x1402dfbb0]
test rcx, rcx
je 0x140203628
call qword [0x1402da0b0]
mov rcx, rdi
call qword [0x1402da068]
dec qword [0x1402dfb38]
mov rcx, rdi
movsxd rdx, eax
sub qword [0x1402dfaf0], rdx
call qword [0x1402da058]
mov rcx, qword [0x1402dfbb0]
test rcx, rcx
je 0x140203668
call qword [0x1402da0c0]
jmp 0x140203668
mov rcx, rdi
call qword [0x1402da058]
mov byte [rbx + 0x1c], 0
mov eax, esi
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret