Function at 0x14004507c
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x140094940]
xor rax, rsp
mov qword [rbp - 8], rax
xor r14d, r14d
mov qword [rbp - 0x30], r14
mov rcx, qword [str.___t_]
lea r12, str.___t_
lea r13, [0x140083a78]
mov dil, 5
mov r15b, 4
cmp rcx, r12
je 0x1400450ec
test byte [rcx + 0x1c], r15b
je 0x1400450ec
cmp byte [rcx + 0x19], dil
jb 0x1400450ec
mov rcx, qword [rcx + 0x10]
lea edx, [r14 + 0x11]
mov r8, r13
call fcn.140001024
mov ebx, 0xea60
mov esi, 2
mov r8d, ebx
mov ecx, esi
call fcn.14002323c
call fcn.140067f48
test eax, eax
jne 0x1400451d6
lea rcx, [rbp - 0x40]
call fcn.1400687b4
test eax, eax
jne 0x1400451a0
cmp dword [rbp - 0x40], r14d
je 0x1400451cc
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x14004514f
test byte [rcx + 0x1c], r15b
je 0x14004514f
cmp byte [rcx + 0x19], dil
jb 0x14004514f
mov rcx, qword [rcx + 0x10]
lea edx, [rsi + 0x11]
mov r8, r13
call fcn.140001024
call fcn.1400688dc
test eax, eax
jne 0x140045181
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x1400451cc
test byte [rcx + 0x1c], r15b
je 0x1400451cc
cmp byte [rcx + 0x19], dil
jb 0x1400451cc
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x14]
mov r8, r13
call fcn.140001024
jmp 0x1400451cc
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x1400451cc
test byte [rcx + 0x1c], r15b
je 0x1400451cc
cmp byte [rcx + 0x19], sil
jb 0x1400451cc
mov edx, 0x15
jmp 0x1400451bd
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x1400451cc
test byte [rcx + 0x1c], r15b
je 0x1400451cc
cmp byte [rcx + 0x19], sil
jb 0x1400451cc
mov edx, 0x16
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001048
mov r8d, ebx
mov ecx, esi
call fcn.14002323c
mov r8d, ebx
mov ecx, esi
call fcn.14002323c
lea rcx, [rbp - 0x30]
call fcn.140063514
test eax, eax
jne 0x140045228
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045221
test byte [rcx + 0x1c], r15b
je 0x140045221
cmp byte [rcx + 0x19], sil
jb 0x140045221
mov rcx, qword [rcx + 0x10]
mov edx, 0x17
mov r9d, eax
mov r8, r13
call fcn.140001048
mov eax, ebx
jmp 0x140045a8a
mov r8d, ebx
mov ecx, esi
call fcn.14002323c
call fcn.1400662b8
mov ebx, eax
mov edi, 1
test eax, eax
je 0x14004527d
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045a42
test byte [rcx + 0x1c], r15b
je 0x140045a42
cmp byte [rcx + 0x19], sil
jb 0x140045a42
lea edx, [rdi + 0x17]
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001048
jmp 0x140045a42
call fcn.14004cd58
test eax, eax
jne 0x1400452b9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045a42
test byte [rcx + 0x1c], r15b
je 0x140045a42
cmp byte [rcx + 0x19], sil
jb 0x140045a42
mov edx, 0x19
jmp 0x140045269
mov r8d, 0xea60
mov ecx, esi
call fcn.14002323c
xor r9d, r9d
mov r8d, edi
mov edx, edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [0x140098380], rax
test rax, rax
jne 0x140045318
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045a42
test byte [rcx + 0x1c], r15b
je 0x140045a42
cmp byte [rcx + 0x19], sil
jb 0x140045a42
mov edx, 0x1a
jmp 0x140045a33
mov r8d, 0xea60
mov ecx, esi
call fcn.14002323c
mov ecx, 0x3c
call fcn.140063430
mov qword [0x140098398], rax
test rax, rax
jne 0x140045386
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x14004536f
test byte [rcx + 0x1c], r15b
je 0x14004536f
cmp byte [rcx + 0x19], sil
jb 0x14004536f
mov rcx, qword [rcx + 0x10]
mov edx, 0x1b
mov r9d, eax
mov r8, r13
call fcn.140001048
mov r9d, 0xc0007d72
xor r8d, r8d
mov edx, edi
mov ecx, edi
call fcn.140063864
jmp 0x140045221
xor edx, edx
mov rcx, rax
lea r8d, [rdx + 0x3c]
call sub.msvcrt.dll_memset
call fcn.140077670
test eax, eax
jns 0x1400453cb
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x14004536f
test byte [rcx + 0x1c], r15b
je 0x14004536f
cmp byte [rcx + 0x19], sil
jb 0x14004536f
mov edx, 0x1c
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001048
jmp 0x14004536f
call fcn.1400777a4
test eax, eax
jns 0x1400453f3
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x14004536f
test byte [rcx + 0x1c], r15b
je 0x14004536f
cmp byte [rcx + 0x19], sil
jb 0x14004536f
mov edx, 0x1d
jmp 0x1400453ba
mov rcx, qword [0x140098398]
lea rax, [rcx + 8]
lea r9, [rcx + 0xc]
mov qword [rsp + 0x20], rax
lea r8, [rcx + 4]
add rcx, 0x10
call fcn.140077a44
test eax, eax
je 0x140045451
mov rax, qword [str.___t_]
cmp rax, r12
je 0x140045451
test byte [rax + 0x1c], r15b
je 0x140045451
cmp byte [rax + 0x19], sil
jb 0x140045451
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [str.___t_]
mov edx, 0x1e
mov r9d, eax
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140001048
mov rcx, qword [0x140098398]
lea rax, [rcx + 0x1c]
lea r10, [rcx + 0x20]
mov qword [rsp + 0x28], rax
lea r9, [rcx + 0x18]
mov qword [rsp + 0x20], r10
lea r8, [rcx + 0x14]
lea rdx, [rcx + 0x28]
add rcx, 0x24
call fcn.140077c8c
test eax, eax
je 0x1400454bc
mov rax, qword [str.___t_]
cmp rax, r12
je 0x1400454bc
test byte [rax + 0x1c], r15b
je 0x1400454bc
cmp byte [rax + 0x19], sil
jb 0x1400454bc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [str.___t_]
mov edx, 0x1f
mov r9d, eax
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140001048
mov rcx, qword [0x140098398]
lea r9, [rcx + 0x34]
lea r8, [rcx + 0x38]
lea rdx, [rcx + 0x30]
add rcx, 0x2c
call fcn.14007785c
test eax, eax
je 0x140045515
mov rax, qword [str.___t_]
cmp rax, r12
je 0x140045515
test byte [rax + 0x1c], r15b
je 0x140045515
cmp byte [rax + 0x19], sil
jb 0x140045515
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [str.___t_]
mov edx, 0x20
mov r9d, eax
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140001048
lea rcx, [0x140098358]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdx, qword [0x140098398]
lea rcx, [0x140098358]
imul eax, dword [rdx + 0x20], 0x3c
mov dword [0x1400983a0], eax
imul eax, dword [rdx + 0x38], 0x3c
mov dword [0x14009838c], eax
imul eax, dword [rdx + 0xc], 0x3c
mov dword [0x1400983a4], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r8d, 0xea60
mov ecx, esi
call fcn.14002323c
lea rcx, [rbp - 0x30]
call fcn.140044dbc
mov ebx, eax
test eax, eax
je 0x1400455ad
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045221
test byte [rcx + 0x1c], r15b
je 0x140045221
cmp byte [rcx + 0x19], sil
jb 0x140045221
mov edx, 0x21
mov r9d, eax
mov rcx, qword [rcx + 0x10]
mov r8, r13
call fcn.140001048
jmp 0x140045221
mov ebx, 0xea60
mov ecx, esi
mov r8d, ebx
call fcn.14002323c
call fcn.14004cf78
test eax, eax
jne 0x140045684
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x1400455fd
test byte [rcx + 0x1c], r15b
je 0x1400455fd
cmp byte [rcx + 0x19], sil
jb 0x1400455fd
mov rcx, qword [rcx + 0x10]
mov edx, 0x22
mov r9d, eax
mov r8, r13
call fcn.140001048
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140081e00]
mov word [rbp - 0x24], r14w
mov edx, 0xc
lea rcx, [rbp - 0x24]
call fcn.1400029e8
test eax, eax
lea rcx, [rbp - 0x24]
mov rax, qword [0x140098428]
mov r9d, 0xc0007d68
cmovs rcx, r14
mov r8d, esi
mov qword [rsp + 0x28], rcx
mov edx, edi
mov rcx, qword [rax + 0x60]
mov qword [rsp + 0x20], rcx
mov ecx, edi
call fcn.140063864
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045a42
test byte [rcx + 0x1c], r15b
je 0x140045a42
cmp byte [rcx + 0x19], sil
jb 0x140045a42
mov edx, 0x23
jmp 0x140045a33
mov r8d, ebx
mov ecx, esi
call fcn.14002323c
call fcn.14002706c
mov ebx, eax
test eax, eax
je 0x140045751
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x1400456c9
test byte [rcx + 0x1c], r15b
je 0x1400456c9
cmp byte [rcx + 0x19], sil
jb 0x1400456c9
mov rcx, qword [rcx + 0x10]
mov edx, 0x24
mov r9d, eax
mov r8, r13
call fcn.140001048
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140081e00]
mov word [rbp - 0x24], r14w
mov edx, 0xc
lea rcx, [rbp - 0x24]
call fcn.1400029e8
test eax, eax
lea rcx, [rbp - 0x24]
mov rax, qword [0x1400982a0]
mov r9d, 0xc0007d69
cmovs rcx, r14
mov r8d, esi
mov qword [rsp + 0x28], rcx
mov edx, edi
mov ecx, edi
mov qword [rsp + 0x20], rax
call fcn.140063864
lea rcx, [0x140098088]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [0x1400980b8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [0x1400980b8]
mov qword [0x140098294], r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [0x140098088]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov r8d, 0xea60
mov ecx, esi
call fcn.14002323c
call fcn.140053f54
mov ebx, eax
test eax, eax
je 0x1400457c0
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045795
test byte [rcx + 0x1c], r15b
je 0x140045795
cmp byte [rcx + 0x19], sil
jb 0x140045795
mov rcx, qword [rcx + 0x10]
mov edx, 0x25
mov r9d, eax
mov r8, r13
call fcn.140001048
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140081e00]
mov word [rbp - 0x24], r14w
mov edx, 0xc
lea rcx, [rbp - 0x24]
call fcn.1400029e8
mov r9d, 0xc0007d2c
jmp 0x140045a68
mov r8d, 0xea60
mov ecx, esi
call fcn.14002323c
call fcn.140057090
mov ebx, eax
test eax, eax
je 0x140045806
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045a42
test byte [rcx + 0x1c], r15b
je 0x140045a42
cmp byte [rcx + 0x19], sil
jb 0x140045a42
mov edx, 0x26
jmp 0x140045a33
mov r8d, 0xea60
mov ecx, esi
call fcn.14002323c
mov r9, qword [rbp - 0x30]
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea r8, [0x1400469c0]
xor edx, edx
mov dword [rsp + 0x20], r14d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rdi, rax
test rax, rax
jne 0x140045879
mov rax, qword [str.___t_]
cmp rax, r12
je 0x140045221
test byte [rax + 0x1c], r15b
je 0x140045221
cmp byte [rax + 0x19], sil
jb 0x140045221
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [str.___t_]
lea edx, [rdi + 0x27]
mov ebx, eax
jmp 0x140045599
mov r8d, 0x4e20
mov ecx, esi
call fcn.14002323c
mov edx, 0x2710
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ebx, eax
test eax, eax
je 0x14004591f
cmp eax, 0x102
jne 0x1400458d6
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x1400458ce
test byte [rcx + 0x1c], r15b
je 0x1400458ce
cmp byte [rcx + 0x19], 5
jb 0x1400458ce
mov rcx, qword [rcx + 0x10]
mov edx, 0x29
mov r8, r13
call fcn.140001024
mov r8d, 0x7530
jmp 0x14004587f
mov rax, qword [str.___t_]
cmp rax, r12
je 0x140045911
test byte [rax + 0x1c], r15b
je 0x140045911
cmp byte [rax + 0x19], sil
jb 0x140045911
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0x2a
mov rcx, qword [str.___t_]
mov r9d, eax
mov r8, r13
mov ebx, eax
mov rcx, qword [rcx + 0x10]
call fcn.140001048
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140045221
lea rdx, [rbp - 0x3c]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
jne 0x140045955
mov rax, qword [str.___t_]
cmp rax, r12
je 0x140045911
test byte [rax + 0x1c], r15b
je 0x140045911
cmp byte [rax + 0x19], sil
jb 0x140045911
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0x28
jmp 0x1400458f9
mov ebx, dword [rbp - 0x3c]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x140045996
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045221
test byte [rcx + 0x1c], r15b
je 0x140045221
cmp byte [rcx + 0x19], sil
jb 0x140045221
mov edx, 0x2b
mov r9d, ebx
jmp 0x14004559c
xor r8d, r8d
mov r9d, 0x40007d01
lea edx, [r8 + 3]
lea edi, [rdx - 2]
mov ecx, edi
call fcn.140063864
call fcn.140023af4
mov ebx, eax
test eax, eax
je 0x1400459d5
mov rcx, qword [str.___t_]
cmp rcx, r12
je 0x140045a42
test byte [rcx + 0x1c], r15b
je 0x140045a42
cmp byte [rcx + 0x19], sil
jb 0x140045a42
lea edx, [rdi + 0x2b]
jmp 0x140045a33
lea rax, [rbp - 0x38]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea r8, [0x1400472b0]
xor edx, edx
mov dword [rsp + 0x20], r14d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [0x140098390], rax
test rax, rax
jne 0x140045a88
mov rax, qword [str.___t_]
cmp rax, r12
je 0x140045a42
test byte [rax + 0x1c], r15b
je 0x140045a42
cmp byte [rax + 0x19], sil
jb 0x140045a42
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [str.___t_]
mov edx, 0x2d
mov ebx, eax
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001048
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140081e00]
mov word [rbp - 0x24], r14w
mov edx, 0xc
lea rcx, [rbp - 0x24]
call fcn.1400029e8
mov r9d, 0xc0007d29
test eax, eax
lea rcx, [rbp - 0x24]
mov r8d, edi
mov edx, edi
cmovs rcx, r14
mov qword [rsp + 0x20], rcx
mov ecx, edi
call fcn.140063864
jmp 0x140045221
xor eax, eax
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140078ba0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret