Function at 0x140047ec4
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 [0x14009b940]
xor rax, rsp
mov qword [rbp - 8], rax
xor r14d, r14d
mov qword [rbp - 0x30], r14
mov rcx, qword [0x14009b028]
lea r12, [0x14009b028]
lea r13, [0x140089c28]
mov dil, 5
mov r15b, 4
cmp rcx, r12
je 0x140047f34
test byte [rcx + 0x1c], r15b
je 0x140047f34
cmp byte [rcx + 0x19], dil
jb 0x140047f34
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.1400245c0
call fcn.14006c0f8
test eax, eax
jne 0x14004801e
lea rcx, [rbp - 0x40]
call fcn.14006c9f0
test eax, eax
jne 0x140047fe8
cmp dword [rbp - 0x40], r14d
je 0x140048014
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047f97
test byte [rcx + 0x1c], r15b
je 0x140047f97
cmp byte [rcx + 0x19], dil
jb 0x140047f97
mov rcx, qword [rcx + 0x10]
lea edx, [rsi + 0x11]
mov r8, r13
call fcn.140001024
call fcn.14006cb28
test eax, eax
jne 0x140047fc9
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048014
test byte [rcx + 0x1c], r15b
je 0x140048014
cmp byte [rcx + 0x19], dil
jb 0x140048014
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x14]
mov r8, r13
call fcn.140001024
jmp 0x140048014
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048014
test byte [rcx + 0x1c], r15b
je 0x140048014
cmp byte [rcx + 0x19], sil
jb 0x140048014
mov edx, 0x15
jmp 0x140048005
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048014
test byte [rcx + 0x1c], r15b
je 0x140048014
cmp byte [rcx + 0x19], sil
jb 0x140048014
mov edx, 0x16
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001050
mov r8d, ebx
mov ecx, esi
call fcn.1400245c0
mov r8d, ebx
mov ecx, esi
call fcn.1400245c0
lea rcx, [rbp - 0x30]
call fcn.140067108
test eax, eax
jne 0x140048076
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004806f
test byte [rcx + 0x1c], r15b
je 0x14004806f
cmp byte [rcx + 0x19], sil
jb 0x14004806f
mov rcx, qword [rcx + 0x10]
mov edx, 0x17
mov r9d, eax
mov r8, r13
call fcn.140001050
mov eax, ebx
jmp 0x140048983
mov r8d, ebx
mov ecx, esi
call fcn.1400245c0
call fcn.14006a2a0
mov ebx, eax
mov edi, 1
test eax, eax
je 0x1400480cb
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004893b
test byte [rcx + 0x1c], r15b
je 0x14004893b
cmp byte [rcx + 0x19], sil
jb 0x14004893b
lea edx, [rdi + 0x17]
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001050
jmp 0x14004893b
call fcn.140050058
test eax, eax
jne 0x14004810d
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004893b
test byte [rcx + 0x1c], r15b
je 0x14004893b
cmp byte [rcx + 0x19], sil
jb 0x14004893b
mov edx, 0x19
jmp 0x1400480b7
mov r8d, 0xea60
mov ecx, esi
call fcn.1400245c0
xor r9d, r9d
mov r8d, edi
mov edx, edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
nop dword [rax + rax]
mov qword [0x14009f380], rax
test rax, rax
jne 0x140048178
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004893b
test byte [rcx + 0x1c], r15b
je 0x14004893b
cmp byte [rcx + 0x19], sil
jb 0x14004893b
mov edx, 0x1a
jmp 0x14004892c
mov r8d, 0xea60
mov ecx, esi
call fcn.1400245c0
mov ecx, 0x3c
call fcn.140067008
mov qword [0x14009f398], rax
test rax, rax
jne 0x1400481ec
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400481d5
test byte [rcx + 0x1c], r15b
je 0x1400481d5
cmp byte [rcx + 0x19], sil
jb 0x1400481d5
mov rcx, qword [rcx + 0x10]
mov edx, 0x1b
mov r9d, eax
mov r8, r13
call fcn.140001050
mov r9d, 0xc0007d72
xor r8d, r8d
mov edx, edi
mov ecx, edi
call fcn.140067490
jmp 0x14004806f
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov qword [rax + 0x30], rcx
mov dword [rax + 0x38], ecx
call fcn.14007ce8c
test eax, eax
jns 0x14004823a
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400481d5
test byte [rcx + 0x1c], r15b
je 0x1400481d5
cmp byte [rcx + 0x19], sil
jb 0x1400481d5
mov edx, 0x1c
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001050
jmp 0x1400481d5
call fcn.14007cfdc
test eax, eax
jns 0x140048266
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400481d5
test byte [rcx + 0x1c], r15b
je 0x1400481d5
cmp byte [rcx + 0x19], sil
jb 0x1400481d5
mov edx, 0x1d
jmp 0x140048229
mov rcx, qword [0x14009f398]
lea rax, [rcx + 8]
lea r9, [rcx + 0xc]
mov qword [rsp + 0x20], rax
lea r8, [rcx + 4]
add rcx, 0x10
call fcn.14007d2b8
test eax, eax
je 0x1400482ca
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x1400482ca
test byte [rax + 0x1c], r15b
je 0x1400482ca
cmp byte [rax + 0x19], sil
jb 0x1400482ca
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
mov edx, 0x1e
mov r9d, eax
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140001050
mov rcx, qword [0x14009f398]
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.14007d53c
test eax, eax
je 0x14004833b
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004833b
test byte [rax + 0x1c], r15b
je 0x14004833b
cmp byte [rax + 0x19], sil
jb 0x14004833b
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
mov edx, 0x1f
mov r9d, eax
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140001050
mov rcx, qword [0x14009f398]
lea r9, [rcx + 0x34]
lea r8, [rcx + 0x38]
lea rdx, [rcx + 0x30]
add rcx, 0x2c
call fcn.14007d0a0
test eax, eax
je 0x14004839a
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004839a
test byte [rax + 0x1c], r15b
je 0x14004839a
cmp byte [rax + 0x19], sil
jb 0x14004839a
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
mov edx, 0x20
mov r9d, eax
mov r8, r13
mov rcx, qword [rcx + 0x10]
call fcn.140001050
lea rcx, [0x14009f358]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop dword [rax + rax]
mov rdx, qword [0x14009f398]
lea rcx, [0x14009f358]
imul eax, dword [rdx + 0x20], 0x3c
mov dword [0x14009f3a0], eax
imul eax, dword [rdx + 0x38], 0x3c
mov dword [0x14009f38c], eax
imul eax, dword [rdx + 0xc], 0x3c
mov dword [0x14009f3a4], eax
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop dword [rax + rax]
mov r8d, 0xea60
mov ecx, esi
call fcn.1400245c0
lea rcx, [rbp - 0x30]
call fcn.140047bf4
mov ebx, eax
test eax, eax
je 0x14004843e
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004806f
test byte [rcx + 0x1c], r15b
je 0x14004806f
cmp byte [rcx + 0x19], sil
jb 0x14004806f
mov edx, 0x21
mov r9d, eax
mov rcx, qword [rcx + 0x10]
mov r8, r13
call fcn.140001050
jmp 0x14004806f
mov ebx, 0xea60
mov ecx, esi
mov r8d, ebx
call fcn.1400245c0
call fcn.140050290
test eax, eax
jne 0x140048521
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048494
test byte [rcx + 0x1c], r15b
je 0x140048494
cmp byte [rcx + 0x19], sil
jb 0x140048494
mov rcx, qword [rcx + 0x10]
mov edx, 0x22
mov r9d, eax
mov r8, r13
call fcn.140001050
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140087fb0]
mov word [rbp - 0x24], r14w
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rcx, [rbp - 0x24]
call fcn.140002ac0
test eax, eax
lea rcx, [rbp - 0x24]
mov rax, qword [0x14009f428]
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.140067490
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004893b
test byte [rcx + 0x1c], r15b
je 0x14004893b
cmp byte [rcx + 0x19], sil
jb 0x14004893b
mov edx, 0x23
jmp 0x14004892c
mov r8d, ebx
mov ecx, esi
call fcn.1400245c0
call fcn.1400285fc
mov ebx, eax
test eax, eax
je 0x140048606
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048566
test byte [rcx + 0x1c], r15b
je 0x140048566
cmp byte [rcx + 0x19], sil
jb 0x140048566
mov rcx, qword [rcx + 0x10]
mov edx, 0x24
mov r9d, eax
mov r8, r13
call fcn.140001050
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140087fb0]
mov word [rbp - 0x24], r14w
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rcx, [rbp - 0x24]
call fcn.140002ac0
test eax, eax
lea rcx, [rbp - 0x24]
mov rax, qword [0x14009f2a0]
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.140067490
lea rcx, [0x14009f088]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop dword [rax + rax]
lea rcx, [0x14009f0b8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop dword [rax + rax]
lea rcx, [0x14009f0b8]
mov qword [0x14009f294], r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop dword [rax + rax]
lea rcx, [0x14009f088]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop dword [rax + rax]
mov r8d, 0xea60
mov ecx, esi
call fcn.1400245c0
call fcn.1400574d8
mov ebx, eax
test eax, eax
je 0x140048675
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004864a
test byte [rcx + 0x1c], r15b
je 0x14004864a
cmp byte [rcx + 0x19], sil
jb 0x14004864a
mov rcx, qword [rcx + 0x10]
mov edx, 0x25
mov r9d, eax
mov r8, r13
call fcn.140001050
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140087fb0]
mov word [rbp - 0x24], r14w
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rcx, [rbp - 0x24]
call fcn.140002ac0
mov r9d, 0xc0007d2c
jmp 0x140048961
mov r8d, 0xea60
mov ecx, esi
call fcn.1400245c0
call fcn.14005a800
mov ebx, eax
test eax, eax
je 0x1400486bb
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004893b
test byte [rcx + 0x1c], r15b
je 0x14004893b
cmp byte [rcx + 0x19], sil
jb 0x14004893b
mov edx, 0x26
jmp 0x14004892c
mov r8d, 0xea60
mov ecx, esi
call fcn.1400245c0
mov r9, qword [rbp - 0x30]
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea r8, [0x140049880]
xor edx, edx
mov dword [rsp + 0x20], r14d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
nop dword [rax + rax]
mov rdi, rax
test rax, rax
jne 0x14004873a
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004806f
test byte [rax + 0x1c], r15b
je 0x14004806f
cmp byte [rax + 0x19], sil
jb 0x14004806f
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
lea edx, [rdi + 0x27]
mov ebx, eax
jmp 0x14004842a
mov r8d, 0x4e20
mov ecx, esi
call fcn.1400245c0
mov edx, 0x2710
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
je 0x1400487f2
cmp eax, 0x102
jne 0x14004879d
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048795
test byte [rcx + 0x1c], r15b
je 0x140048795
cmp byte [rcx + 0x19], 5
jb 0x140048795
mov rcx, qword [rcx + 0x10]
mov edx, 0x29
mov r8, r13
call fcn.140001024
mov r8d, 0x7530
jmp 0x140048740
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x1400487de
test byte [rax + 0x1c], r15b
je 0x1400487de
cmp byte [rax + 0x19], sil
jb 0x1400487de
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov edx, 0x2a
mov rcx, qword [0x14009b028]
mov r9d, eax
mov r8, r13
mov ebx, eax
mov rcx, qword [rcx + 0x10]
call fcn.140001050
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
jmp 0x14004806f
lea rdx, [rbp - 0x3c]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
nop dword [rax + rax]
test eax, eax
jne 0x140048834
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x1400487de
test byte [rax + 0x1c], r15b
je 0x1400487de
cmp byte [rax + 0x19], sil
jb 0x1400487de
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov edx, 0x28
jmp 0x1400487c6
mov ebx, dword [rbp - 0x3c]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
test ebx, ebx
je 0x14004887b
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004806f
test byte [rcx + 0x1c], r15b
je 0x14004806f
cmp byte [rcx + 0x19], sil
jb 0x14004806f
mov edx, 0x2b
mov r9d, ebx
jmp 0x14004842d
xor r8d, r8d
mov r9d, 0x40007d01
lea edx, [r8 + 3]
lea edi, [rdx - 2]
mov ecx, edi
call fcn.140067490
call fcn.140024edc
mov ebx, eax
test eax, eax
je 0x1400488c2
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004893b
test byte [rcx + 0x1c], r15b
je 0x14004893b
cmp byte [rcx + 0x19], sil
jb 0x14004893b
lea edx, [rdi + 0x2b]
jmp 0x14004892c
lea rax, [rbp - 0x38]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea r8, [0x14004a200]
xor edx, edx
mov dword [rsp + 0x20], r14d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
nop dword [rax + rax]
mov qword [0x14009f390], rax
test rax, rax
jne 0x140048981
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004893b
test byte [rax + 0x1c], r15b
je 0x14004893b
cmp byte [rax + 0x19], sil
jb 0x14004893b
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
mov edx, 0x2d
mov ebx, eax
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001050
mov r9d, ebx
mov dword [rbp - 0x28], ebx
lea r8, [0x140087fb0]
mov word [rbp - 0x24], r14w
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rcx, [rbp - 0x24]
call fcn.140002ac0
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.140067490
jmp 0x14004806f
xor eax, eax
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.14007e560
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