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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov rax, qword [0x180127a40]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov r12, qword [0x180128540]
mov r15, qword [r12 + 0x4008]
movzx ebp, byte [r15 + 0xc3]
test bpl, bpl
jne 0x1800c9366
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
test r8d, 0x100000
jne 0x1800c9129
mov ecx, dword [rsi + 0x14]
call fcn.18005a250
lea rcx, [rsp + 0x40]
mov rdx, rsi
call fcn.1800c9390
mov eax, dword [r12 + 0x4e60]
cmp eax, dword [r12 + 0x4e64]
jne 0x1800c915d
lea r13d, [rax + 1]
test eax, eax
je 0x1800c9167
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
add ecx, eax
jmp 0x1800c916c
mov r14, qword [r12 + 0x4e68]
jmp 0x1800c91c8
mov ecx, 8
cmp ecx, r13d
cmovg r13d, ecx
movsxd rcx, r13d
shl rcx, 4
call fcn.180045410
mov r14, rax
mov rdx, qword [r12 + 0x4e68]
test rdx, rdx
je 0x1800c91b0
movsxd r8, dword [r12 + 0x4e60]
shl r8, 4
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r12 + 0x4e68]
call fcn.1800454e0
mov qword [r12 + 0x4e68], r14
mov dword [r12 + 0x4e64], r13d
mov eax, dword [r12 + 0x4e60]
cdqe
shl rax, 4
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [r14 + rax], xmm0
inc dword [r12 + 0x4e60]
mov qword [r12 + 0x4e30], rsi
mov rax, qword [r15 + 0x110]
mov qword [rsi + 0x88], rax
mov eax, dword [rsi + 0x24]
cmp eax, dword [r12 + 0x3f60]
jne 0x1800c9228
movss xmm0, dword [rsi + 0x38]
addss xmm0, dword [rsi + 0x7c]
mov eax, dword [rsi + 0x2c]
mov dword [r15 + 0x110], eax
movss dword [r15 + 0x114], xmm0
inc byte [rsi + 0x72]
jmp 0x1800c9366
mov ecx, ebx
and ecx, 1
mov edx, dword [rsi + 0x10]
and edx, 1
cmp ecx, edx
jne 0x1800c9241
test ecx, ecx
jne 0x1800c9264
cmp byte [rsi + 0x75], 0
je 0x1800c9264
movsxd rdx, dword [rsi]
cmp rdx, 2
jb 0x1800c9264
mov rcx, qword [rsi + 8]
lea r9, [0x1800c93e0]
mov r8d, 0x2c
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_qsort]
mov eax, dword [rsi + 0x24]
mov byte [rsi + 0x75], 0
mov ecx, ebx
or ecx, 0x40
test bl, 0xc0
cmovne ecx, ebx
mov dword [rsi + 0x10], ecx
movups xmm0, xmmword [rdi]
movups xmmword [rsi + 0x2c], xmm0
mov byte [rsi + 0x73], 1
mov dword [rsi + 0x28], eax
mov eax, dword [r12 + 0x3f60]
mov dword [rsi + 0x24], eax
movss xmm0, dword [rsi + 0x3c]
movss dword [rsi + 0x40], xmm0
mov dword [rsi + 0x3c], 0
movss xmm0, dword [r12 + 0x3940]
movss dword [rsi + 0x7c], xmm0
mov rax, qword [r12 + 0x392c]
mov qword [rsi + 0x80], rax
mov dword [rsi + 0x76], 0xffff0000
mov byte [rsi + 0x72], 1
addss xmm0, dword [rsi + 0x38]
mov eax, dword [rsi + 0x2c]
mov dword [r15 + 0x110], eax
movss dword [r15 + 0x114], xmm0
xor eax, eax
test ecx, 0x200000
sete al
lea ecx, [rax*2 + 0x23]
movss xmm1, dword [0x1800d5260]
call fcn.1800482e0
movss xmm0, dword [r12 + 0x3984]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
jbe 0x1800c9366
movss xmm1, dword [rsi + 0x38]
mov rcx, qword [r15 + 0x2a8]
movss xmm2, dword [rsi + 0x68]
movss dword [rsp + 0x40], xmm2
movss dword [rsp + 0x44], xmm1
subss xmm1, xmm0
movss xmm0, dword [rsi + 0x64]
movss dword [rsp + 0x38], xmm0
movss dword [rsp + 0x3c], xmm1
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
lea rdx, [rsp + 0x38]
lea r8, [rsp + 0x40]
mov r9d, eax
call fcn.18008fc60
test bpl, bpl
sete bl
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1800cf260
mov eax, ebx
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret