Function at 0x140003cc0
Capabilities:
Check mutex on windows
Create thread

Disassembly:
sub rsp, 0x78
mov rax, qword [0x14001e008]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x90], rbx
mov r8, rdx
mov qword [rsp + 0x70], rbp
lea rdx, str.WbNmemYU5FgG0R2fnAu9F7rORVn16vF_MPOPbuPBSbk
mov rbp, rcx
mov qword [rsp + 0x58], r14
mov ecx, 2
call qword [0x14001fcb8]
xor ecx, ecx
call fcn.14000749c
mov rcx, rax
call fcn.1400073ec
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov ecx, 0x20
mov qword [0x14001fca0], rax
call fcn.140005c14
xor r14d, r14d
mov qword [0x14001fc70], rax
mov rbx, rax
test rax, rax
je 0x140003d62
lea ecx, [r14 + 0x40]
mov qword [rax + 8], r14
call fcn.140005c14
mov qword [rbx], rax
test rax, rax
je 0x140003d62
mov qword [rbx + 0x10], 8
mov dword [rbx + 0x18], 0x100
jmp 0x140003d69
mov qword [0x14001fc70], r14
call fcn.1400073c0
mov ecx, eax
mov eax, 0x45e7b273
imul ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1d4c0
sub ecx, eax
lea edx, [rcx + 0x1d4c0]
mov rcx, qword [0x14001fc60]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x140003f35
mov qword [rsp + 0x68], rsi
mov qword [rsp + 0x60], rdi
mov qword [rsp + 0x50], r15
mov r15, 0xffffffffffffffff
nop dword [rax]
mov r8, qword [0x14001fcb0]
mov r9, rbp
mov qword [rsp + 0x28], r14
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], r14d
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140003e89
mov rbx, qword [0x14001fc70]
test rbx, rbx
je 0x140003e7b
mov rdi, qword [rbx + 8]
mov rcx, qword [rbx + 0x10]
mov rax, rdi
cmp rcx, rdi
jne 0x140003e42
mov esi, 0x200
mov eax, 8
cmp rcx, rsi
cmovb rsi, rcx
add rsi, rcx
mov rcx, qword [rbx]
mul rsi
cmovo rax, r15
mov rdx, rax
call fcn.140005bf8
test rax, rax
je 0x140003e76
mov qword [rbx], rax
mov rax, qword [rbx + 8]
mov qword [rbx + 0x10], rsi
cmp rax, rdi
jbe 0x140003e66
nop word [rax + rax]
mov rcx, qword [rbx]
lea rdx, [rcx + rax*8]
dec rax
mov rcx, qword [rdx - 8]
mov qword [rdx], rcx
cmp rax, rdi
ja 0x140003e50
mov rax, qword [rbx]
lea rcx, [rsp + 0x30]
mov qword [rax + rdi*8], rcx
inc qword [rbx + 8]
mov rax, qword [rsp + 0x30]
mov edx, 0xffffffff
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rax, qword [0x14001fc70]
test rax, rax
je 0x140003ee2
mov edi, r14d
cmp qword [rax + 8], rdi
jbe 0x140003ee2
mov rbx, r14
mov rsi, r14
mov rcx, qword [rax]
lea rdx, [rsp + 0x38]
mov rcx, qword [rsi + rcx]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x140003ecc
cmp dword [rsp + 0x38], 0x103
je 0x140003ecc
mov rdx, rbx
call fcn.140001980
mov rax, qword [0x14001fc70]
inc edi
add rsi, 8
movsxd rbx, edi
cmp rbx, qword [rax + 8]
jb 0x140003ea4
cmp byte [rbp], r14b
jne 0x140003f26
call fcn.1400073c0
mov ecx, eax
mov eax, 0x45e7b273
imul ecx
sar edx, 0xf
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x1d4c0
sub ecx, eax
lea edx, [rcx + 0x1d4c0]
mov rcx, qword [0x14001fc60]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x140003dc0
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov r15, qword [rsp + 0x50]
mov rcx, qword [0x14001fca0]
mov r14, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x90]
test rcx, rcx
je 0x140003f59
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [0x14001fca8]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140003f90
add rsp, 0x78
ret