Function at 0x140091c20
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x20], rbx
mov dword [rsp + 0x18], r8d
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x70
mov rax, qword [0x140152040]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov r12d, r8d
mov r14, rdx
mov rsi, rcx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x60], rdx
cmp byte [0x1401f4c86], 0
jne 0x140091e6f
cmp byte [rcx + 0x90], 0
jne 0x140091e6f
mov byte [rcx + 0x90], 1
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
sub r8d, ecx
movsxd rdi, r8d
add rdi, qword [0x140256eb0]
lea rax, [rdi + 1]
mov qword [0x140256eb0], rax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 2
cmp r8d, ecx
lea rbx, [rdi + 0x3e8]
cmovne rbx, rdi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
add ecx, ecx
cmp r8d, ecx
lea rdi, [rbx + 0x578]
cmovne rdi, rbx
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 7
cmp r8d, ecx
lea r13, [rdi + 0x514]
cmovne r13, rdi
movabs rax, 0x30e14e85f164ac09
imul r13
sar rdx, 0xb
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0x29e6
sub r13, rax
mov qword [rsp + 0x30], r13
cmp byte [rsi], 0
je 0x140091dbe
cmp dword [rsi + 0xa0], 0
je 0x140091dbe
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rsi + 0xa0], eax
jne 0x140091d8c
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
movups xmm0, xmmword [rsi + 0x98]
movaps xmmword [rsp + 0x50], xmm0
xor edx, edx
lea rcx, [rsp + 0x50]
call qword [sym.imp.MSVCP140.dll__Thrd_join]
test eax, eax
je 0x140091db4
mov ecx, 2
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
xorps xmm0, xmm0
movups xmmword [rsi + 0x98], xmm0
jmp 0x140091dd7
mov ecx, 0x38
call fcn.140110588
mov rbx, rax
mov qword [rsp + 0x40], rax
mov dword [rax], r12d
mov qword [rax + 8], r13
lea rcx, [rax + 0x10]
mov rdx, r14
call fcn.140083b90
mov qword [rbx + 0x30], rsi
mov qword [rsp + 0x40], rbx
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
mov r9, rbx
lea r8, [0x140106f20]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140091e56
cmp dword [rsi + 0xa0], 0
jne 0x140091e4f
movaps xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x98], xmm1
mov byte [rsi], 1
jmp 0x140091e6f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
nop
mov dword [rsp + 0x38], 0
mov ecx, 6
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
nop
mov r14, qword [rsp + 0x60]
mov rcx, r14
call fcn.1400955d0
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.14010fe20
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret