Function at 0x14001c760
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
xor r9d, r9d
mov r15d, r8d
mov rsi, rdx
mov r14, rcx
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventW]
xor r13d, r13d
mov qword [rsi + 8], rax
lea r12, [0x14012c2f8]
mov rbx, rax
test rax, rax
jne 0x14001c84c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [rsi]
lea edx, [rbx + 1]
mov rcx, rsi
mov edi, eax
call qword [r8]
mov rdx, qword [0x14012c300]
movabs rax, 0x4d54ee85da812030
add rdx, rax
mov dword [rbp - 0x14], r13d
cmp rdx, 1
jbe 0x14001c7fb
mov rcx, qword [0x14012c2f8]
mov edx, edi
mov r8, qword [rcx + 0x30]
mov rcx, r12
call r8
jmp 0x14001c800
test edi, edi
setne al
lea rcx, str.E:_boost_1_83_0_boost_asiodetailimplwin_thread.ipp
movzx eax, al
add rax, 2
mov qword [rbp - 0x30], rcx
mov qword [rbp - 8], rax
lea rcx, str.start_thread
mov qword [rbp - 0x28], rcx
mov dword [rbp - 0x18], edi
mov qword [rbp - 0x10], r12
mov dword [rbp - 0x20], 0x4c
mov dword [rbp - 0x1c], 0x1a
test al, 1
je 0x14001c84c
cmp rax, 1
jne 0x14001ca35
test edi, edi
jne 0x14001ca35
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [r14 + 0x10], rax
mov qword [rsi + 0x10], rax
cmp qword [r14 + 0x10], r13
jne 0x14001c90a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
mov edi, eax
call qword [r8]
mov rdx, qword [0x14012c300]
movabs rax, 0x4d54ee85da812030
add rdx, rax
mov dword [rbp - 0x2c], r13d
cmp rdx, 1
jbe 0x14001c8b9
mov rcx, qword [0x14012c2f8]
mov edx, edi
mov r8, qword [rcx + 0x30]
mov rcx, r12
call r8
jmp 0x14001c8be
test edi, edi
setne al
lea rcx, str.E:_boost_1_83_0_boost_asiodetailimplwin_thread.ipp
movzx eax, al
add rax, 2
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x20], rax
lea rcx, str.start_thread
mov qword [rbp - 0x10], rcx
mov dword [rbp - 0x30], edi
mov qword [rbp - 0x28], r12
mov dword [rbp - 8], 0x56
mov dword [rbp - 4], 0x1a
test al, 1
je 0x14001c90a
cmp rax, 1
jne 0x14001ca4a
test edi, edi
jne 0x14001ca4a
lea rax, [rbp + 0x38]
mov dword [rbp + 0x38], r13d
mov qword [rsp + 0x28], rax
lea r8, [0x14001ca60]
mov r9, rsi
mov dword [rsp + 0x20], r13d
mov edx, r15d
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [r14 + 8], rax
test rax, rax
jne 0x14001c9e6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
mov edi, eax
call qword [r8]
test rbx, rbx
je 0x14001c962
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [r14 + 0x10]
test rcx, rcx
je 0x14001c971
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movabs rcx, 0x4d54ee85da812030
mov dword [rbp - 0x2c], r13d
add rcx, qword [0x14012c300]
cmp rcx, 1
jbe 0x14001c99d
mov rax, qword [0x14012c2f8]
mov edx, edi
mov rcx, r12
call qword [rax + 0x30]
jmp 0x14001c9a2
test edi, edi
setne al
lea rcx, str.E:_boost_1_83_0_boost_asiodetailimplwin_thread.ipp
movzx eax, al
add rax, 2
mov qword [rbp - 0x18], rcx
mov qword [rbp - 0x20], rax
lea rcx, str.start_thread
mov qword [rbp - 0x10], rcx
mov dword [rbp - 0x30], edi
mov qword [rbp - 0x28], r12
mov dword [rbp - 8], 0x66
mov dword [rbp - 4], 0x1a
test al, 1
je 0x14001c9e6
cmp rax, 1
jne 0x14001ca20
test edi, edi
jne 0x14001ca20
test rbx, rbx
je 0x14001ca02
mov edx, 0xffffffff
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
lea r8, [rbp - 0x18]
lea rdx, str.thread
lea rcx, [rbp - 0x30]
call fcn.140011b80
int3
lea r8, [rbp - 0x30]
lea rdx, str.thread.entry_event
lea rcx, [rbp - 0x18]
call fcn.140011b80
int3
lea r8, [rbp - 0x18]
lea rdx, str.thread.exit_event
lea rcx, [rbp - 0x30]
call fcn.140011b80
int3