Function at 0x1001ef80
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x30
test dl, dl
je 0x1001f108
test cl, cl
je 0x1001f04f
cmp byte [0x1005d4c8], 0
jne 0x1001f02b
lea rcx, [rsp + 0x48]
xor eax, eax
lea r9, [0x1005d4b0]
mov qword [rsp + 0x28], rcx
lea r8, [0x10007b70]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [rsp + 0x48]
test rax, rax
mov dword [0x1005d4b8], ecx
mov qword [0x1005d4c0], rax
jne 0x1001f03d
xor ecx, ecx
call fcn.10021fa0
lea rdx, [0x100497d8]
lea rcx, [rsp + 0x50]
mov rbx, rax
call fcn.100277d0
lea r8, [0x1005d4ca]
lea rdx, str._comm__create_thread__s__failed:__s
mov r9, rbx
mov rcx, rax
call fcn.100278d0
mov eax, dword [0x1005d4b8]
mov dword [0x1005dbd8], eax
add rsp, 0x30
pop rbx
ret
mov rcx, qword [0x1005d550]
test rcx, rcx
je 0x1001f03d
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [0x1005d4b8]
mov dword [0x1005dbd8], eax
add rsp, 0x30
pop rbx
ret
cmp byte [0x1005d598], 0
jne 0x1001f0e4
lea rcx, [rsp + 0x48]
xor eax, eax
lea r9, [0x1005d580]
mov qword [rsp + 0x28], rcx
lea r8, [0x10007b70]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [rsp + 0x48]
test rax, rax
mov dword [0x1005d588], ecx
mov qword [0x1005d590], rax
jne 0x1001f0f6
xor ecx, ecx
call fcn.10021fa0
lea rdx, [0x100497d8]
lea rcx, [rsp + 0x50]
mov rbx, rax
call fcn.100277d0
lea r8, [0x1005d59a]
lea rdx, str._comm__create_thread__s__failed:__s
mov r9, rbx
mov rcx, rax
call fcn.100278d0
mov eax, dword [0x1005d588]
mov dword [0x1005dbdc], eax
add rsp, 0x30
pop rbx
ret
mov rcx, qword [0x1005d620]
test rcx, rcx
je 0x1001f0f6
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [0x1005d588]
mov dword [0x1005dbdc], eax
add rsp, 0x30
pop rbx
ret
test cl, cl
je 0x1001f1c9
cmp byte [0x1005d328], 0
jne 0x1001f1a5
lea rcx, [rsp + 0x48]
xor eax, eax
lea r9, [0x1005d310]
mov qword [rsp + 0x28], rcx
lea r8, [0x10007b70]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [rsp + 0x48]
test rax, rax
mov dword [0x1005d318], ecx
mov qword [0x1005d320], rax
jne 0x1001f1b7
xor ecx, ecx
call fcn.10021fa0
lea rdx, [0x100497d8]
lea rcx, [rsp + 0x50]
mov rbx, rax
call fcn.100277d0
lea r8, [0x1005d32a]
lea rdx, str._comm__create_thread__s__failed:__s
mov r9, rbx
mov rcx, rax
call fcn.100278d0
mov eax, dword [0x1005d318]
mov dword [0x1005dbd8], eax
add rsp, 0x30
pop rbx
ret
mov rcx, qword [0x1005d3b0]
test rcx, rcx
je 0x1001f1b7
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [0x1005d318]
mov dword [0x1005dbd8], eax
add rsp, 0x30
pop rbx
ret
cmp byte [0x1005d3f8], 0
jne 0x1001f25e
lea rcx, [rsp + 0x48]
xor eax, eax
lea r9, [0x1005d3e0]
mov qword [rsp + 0x28], rcx
lea r8, [0x10007b70]
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [rsp + 0x48]
test rax, rax
mov dword [0x1005d3e8], ecx
mov qword [0x1005d3f0], rax
jne 0x1001f270
xor ecx, ecx
call fcn.10021fa0
lea rdx, [0x100497d8]
lea rcx, [rsp + 0x50]
mov rbx, rax
call fcn.100277d0
lea r8, [0x1005d3fa]
lea rdx, str._comm__create_thread__s__failed:__s
mov r9, rbx
mov rcx, rax
call fcn.100278d0
mov eax, dword [0x1005d3e8]
mov dword [0x1005dbdc], eax
add rsp, 0x30
pop rbx
ret
mov rcx, qword [0x1005d480]
test rcx, rcx
je 0x1001f270
call qword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [0x1005d3e8]
mov dword [0x1005dbdc], eax
add rsp, 0x30
pop rbx
ret