Function at 0x1800ccca0
Capabilities:
Create thread

Disassembly:
push rbx
push rsi
push rdi
push r13
push r14
sub rsp, 0x30
mov rax, qword gs:[0x58]
xor r13d, r13d
mov qword [rcx + 8], r13
mov rbx, rcx
mov dword [rcx + 0x18], r13d
mov byte [rcx + 0x20], r13b
mov qword [rcx + 0x10], 0xa8
mov ecx, dword [0x18019362c]
mov rdi, qword [rax + rcx*8]
mov eax, 0x50
cmp byte [rax + rdi], r13b
jne 0x1800ccce9
call fcn.180163500
mov eax, 0x4c
mov dword [rax + rdi], r13d
call sub.MSVCP140.dll__Thrd_hardware_concurrency
shl eax, 2
mov ecx, eax
imul rdx, rcx, 0x38
mov dword [rbx + 0x24], ecx
test rdx, rdx
jne 0x1800ccd0d
mov rax, r13
jmp 0x1800ccd15
xor ecx, ecx
call qword [0x180192130]
mov r8d, r13d
mov qword [rbx], rax
mov edi, 1
cmp dword [rbx + 0x24], r13d
jbe 0x1800ccd8c
nop word [rax + rax]
xor ecx, ecx
mov eax, r8d
imul rdx, rax, 0x38
xorps xmm0, xmm0
mov rax, qword [rbx]
inc r8d
movups xmmword [rdx + rax], xmm0
movups xmmword [rdx + rax + 0x10], xmm0
movups xmmword [rdx + rax + 0x20], xmm0
mov qword [rdx + rax + 0x30], rcx
mov qword [rdx + rax + 0x10], 0x10
mov dword [rdx + rax + 0x18], r13d
mov qword [rdx + rax + 0x20], r13
mov dword [rdx + rax + 0x28], ecx
mov eax, edi
mov rcx, qword [rbx]
xchg byte [rcx + rdx], al
mov rcx, qword [rbx]
mov eax, r13d
xchg dword [rdx + rcx + 0x28], eax
mov rcx, qword [rbx]
mov qword [rdx + rcx + 0x30], r13
cmp r8d, dword [rbx + 0x24]
jb 0x1800ccd30
call sub.MSVCP140.dll__Thrd_hardware_concurrency
cmp eax, edi
jbe 0x1800ccd9d
call sub.MSVCP140.dll__Thrd_hardware_concurrency
lea edi, [rax - 1]
mov dword [rbx + 0x14], edi
cmp edi, dword [rbx + 0x18]
jbe 0x1800ccdb0
mov edx, edi
lea rcx, [rbx + 8]
call fcn.180150470
mov esi, r13d
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r15
cmp dword [rbx + 0x14], r13d
jbe 0x1800cceac
lea r15, [0x18015bfd0]
nop dword [rax]
nop word [rax + rax]
mov rdi, qword [rbx + 8]
xor edx, edx
mov eax, esi
mov r8d, 0xa0
imul r12, rax, 0xa8
add rdi, r12
lea rcx, [rdi + 8]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rdi + 8]
mov qword [rdi], r13
mov edx, 2
call sub.MSVCP140.dll__Mtx_init_in_situ
lea rcx, [rdi + 0x58]
call sub.MSVCP140.dll__Cnd_init_in_situ
xor eax, eax
mov edx, 0x10
mov byte [rdi + 0xa0], al
mov rcx, qword [rbx + 8]
xchg byte [rcx + r12 + 0xa0], al
xor ecx, ecx
call qword [0x180192130]
mov rbp, qword [rbx + 8]
mov ecx, 0x20
mov rdi, rax
add rbp, r12
call fcn.1800279e0
inc esi
test rax, rax
je 0x1800cce67
mov dword [rax], esi
mov qword [rax + 8], rbp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], r15
jmp 0x1800cce6a
mov rax, r13
lea r15, [rdi + 8]
mov r9, rax
mov qword [rsp + 0x28], r15
lea r8, [0x1800b9480]
xor edx, edx
mov dword [rsp + 0x20], r13d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rdi], rax
test rax, rax
je 0x1800cceca
mov rax, qword [rbx + 8]
lea r15, [0x18015bfd0]
mov qword [r12 + rax], rdi
cmp esi, dword [rbx + 0x14]
jb 0x1800ccde0
mov r15, qword [rsp + 0x70]
mov rax, rbx
mov r12, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop r13
pop rdi
pop rsi
pop rbx
ret
mov ecx, 6
mov dword [r15], r13d
call sub.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_
int3