Function at 0x140047d24
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, [0x140089a98]
mov dil, 5
mov r15b, 4
cmp rcx, r12
je 0x140047d94
test byte [rcx + 0x1c], r15b
je 0x140047d94
cmp byte [rcx + 0x19], dil
jb 0x140047d94
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.140024420
call fcn.14006bf58
test eax, eax
jne 0x140047e7e
lea rcx, [rbp - 0x40]
call fcn.14006c850
test eax, eax
jne 0x140047e48
cmp dword [rbp - 0x40], r14d
je 0x140047e74
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047df7
test byte [rcx + 0x1c], r15b
je 0x140047df7
cmp byte [rcx + 0x19], dil
jb 0x140047df7
mov rcx, qword [rcx + 0x10]
lea edx, [rsi + 0x11]
mov r8, r13
call fcn.140001024
call fcn.14006c988
test eax, eax
jne 0x140047e29
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047e74
test byte [rcx + 0x1c], r15b
je 0x140047e74
cmp byte [rcx + 0x19], dil
jb 0x140047e74
mov rcx, qword [rcx + 0x10]
lea edx, [rax + 0x14]
mov r8, r13
call fcn.140001024
jmp 0x140047e74
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047e74
test byte [rcx + 0x1c], r15b
je 0x140047e74
cmp byte [rcx + 0x19], sil
jb 0x140047e74
mov edx, 0x15
jmp 0x140047e65
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047e74
test byte [rcx + 0x1c], r15b
je 0x140047e74
cmp byte [rcx + 0x19], sil
jb 0x140047e74
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.140024420
mov r8d, ebx
mov ecx, esi
call fcn.140024420
lea rcx, [rbp - 0x30]
call fcn.140066f68
test eax, eax
jne 0x140047ed6
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047ecf
test byte [rcx + 0x1c], r15b
je 0x140047ecf
cmp byte [rcx + 0x19], sil
jb 0x140047ecf
mov rcx, qword [rcx + 0x10]
mov edx, 0x17
mov r9d, eax
mov r8, r13
call fcn.140001050
mov eax, ebx
jmp 0x1400487e3
mov r8d, ebx
mov ecx, esi
call fcn.140024420
call fcn.14006a100
mov ebx, eax
mov edi, 1
test eax, eax
je 0x140047f2b
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004879b
test byte [rcx + 0x1c], r15b
je 0x14004879b
cmp byte [rcx + 0x19], sil
jb 0x14004879b
lea edx, [rdi + 0x17]
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001050
jmp 0x14004879b
call fcn.14004feb8
test eax, eax
jne 0x140047f6d
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004879b
test byte [rcx + 0x1c], r15b
je 0x14004879b
cmp byte [rcx + 0x19], sil
jb 0x14004879b
mov edx, 0x19
jmp 0x140047f17
mov r8d, 0xea60
mov ecx, esi
call fcn.140024420
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 0x140047fd8
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004879b
test byte [rcx + 0x1c], r15b
je 0x14004879b
cmp byte [rcx + 0x19], sil
jb 0x14004879b
mov edx, 0x1a
jmp 0x14004878c
mov r8d, 0xea60
mov ecx, esi
call fcn.140024420
mov ecx, 0x3c
call fcn.140066e68
mov qword [0x14009f398], rax
test rax, rax
jne 0x14004804c
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048035
test byte [rcx + 0x1c], r15b
je 0x140048035
cmp byte [rcx + 0x19], sil
jb 0x140048035
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.1400672f0
jmp 0x140047ecf
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.14007ccec
test eax, eax
jns 0x14004809a
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048035
test byte [rcx + 0x1c], r15b
je 0x140048035
cmp byte [rcx + 0x19], sil
jb 0x140048035
mov edx, 0x1c
mov rcx, qword [rcx + 0x10]
mov r9d, eax
mov r8, r13
call fcn.140001050
jmp 0x140048035
call fcn.14007ce3c
test eax, eax
jns 0x1400480c6
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140048035
test byte [rcx + 0x1c], r15b
je 0x140048035
cmp byte [rcx + 0x19], sil
jb 0x140048035
mov edx, 0x1d
jmp 0x140048089
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.14007d118
test eax, eax
je 0x14004812a
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004812a
test byte [rax + 0x1c], r15b
je 0x14004812a
cmp byte [rax + 0x19], sil
jb 0x14004812a
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.14007d39c
test eax, eax
je 0x14004819b
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004819b
test byte [rax + 0x1c], r15b
je 0x14004819b
cmp byte [rax + 0x19], sil
jb 0x14004819b
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.14007cf00
test eax, eax
je 0x1400481fa
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x1400481fa
test byte [rax + 0x1c], r15b
je 0x1400481fa
cmp byte [rax + 0x19], sil
jb 0x1400481fa
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.140024420
lea rcx, [rbp - 0x30]
call fcn.140047a54
mov ebx, eax
test eax, eax
je 0x14004829e
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047ecf
test byte [rcx + 0x1c], r15b
je 0x140047ecf
cmp byte [rcx + 0x19], sil
jb 0x140047ecf
mov edx, 0x21
mov r9d, eax
mov rcx, qword [rcx + 0x10]
mov r8, r13
call fcn.140001050
jmp 0x140047ecf
mov ebx, 0xea60
mov ecx, esi
mov r8d, ebx
call fcn.140024420
call fcn.1400500f0
test eax, eax
jne 0x140048381
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400482f4
test byte [rcx + 0x1c], r15b
je 0x1400482f4
cmp byte [rcx + 0x19], sil
jb 0x1400482f4
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, [0x140087e20]
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.1400672f0
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov ebx, eax
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004879b
test byte [rcx + 0x1c], r15b
je 0x14004879b
cmp byte [rcx + 0x19], sil
jb 0x14004879b
mov edx, 0x23
jmp 0x14004878c
mov r8d, ebx
mov ecx, esi
call fcn.140024420
call fcn.14002845c
mov ebx, eax
test eax, eax
je 0x140048466
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400483c6
test byte [rcx + 0x1c], r15b
je 0x1400483c6
cmp byte [rcx + 0x19], sil
jb 0x1400483c6
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, [0x140087e20]
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.1400672f0
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.140024420
call fcn.140057338
mov ebx, eax
test eax, eax
je 0x1400484d5
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400484aa
test byte [rcx + 0x1c], r15b
je 0x1400484aa
cmp byte [rcx + 0x19], sil
jb 0x1400484aa
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, [0x140087e20]
mov word [rbp - 0x24], r14w
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea rcx, [rbp - 0x24]
call fcn.140002ac0
mov r9d, 0xc0007d2c
jmp 0x1400487c1
mov r8d, 0xea60
mov ecx, esi
call fcn.140024420
call fcn.14005a660
mov ebx, eax
test eax, eax
je 0x14004851b
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004879b
test byte [rcx + 0x1c], r15b
je 0x14004879b
cmp byte [rcx + 0x19], sil
jb 0x14004879b
mov edx, 0x26
jmp 0x14004878c
mov r8d, 0xea60
mov ecx, esi
call fcn.140024420
mov r9, qword [rbp - 0x30]
lea rax, [rbp - 0x38]
mov qword [rsp + 0x28], rax
lea r8, [0x1400496e0]
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 0x14004859a
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x140047ecf
test byte [rax + 0x1c], r15b
je 0x140047ecf
cmp byte [rax + 0x19], sil
jb 0x140047ecf
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov rcx, qword [0x14009b028]
lea edx, [rdi + 0x27]
mov ebx, eax
jmp 0x14004828a
mov r8d, 0x4e20
mov ecx, esi
call fcn.140024420
mov edx, 0x2710
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop dword [rax + rax]
mov ebx, eax
test eax, eax
je 0x140048652
cmp eax, 0x102
jne 0x1400485fd
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x1400485f5
test byte [rcx + 0x1c], r15b
je 0x1400485f5
cmp byte [rcx + 0x19], 5
jb 0x1400485f5
mov rcx, qword [rcx + 0x10]
mov edx, 0x29
mov r8, r13
call fcn.140001024
mov r8d, 0x7530
jmp 0x1400485a0
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004863e
test byte [rax + 0x1c], r15b
je 0x14004863e
cmp byte [rax + 0x19], sil
jb 0x14004863e
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 0x140047ecf
lea rdx, [rbp - 0x3c]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
nop dword [rax + rax]
test eax, eax
jne 0x140048694
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004863e
test byte [rax + 0x1c], r15b
je 0x14004863e
cmp byte [rax + 0x19], sil
jb 0x14004863e
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax + rax]
mov edx, 0x28
jmp 0x140048626
mov ebx, dword [rbp - 0x3c]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
test ebx, ebx
je 0x1400486db
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x140047ecf
test byte [rcx + 0x1c], r15b
je 0x140047ecf
cmp byte [rcx + 0x19], sil
jb 0x140047ecf
mov edx, 0x2b
mov r9d, ebx
jmp 0x14004828d
xor r8d, r8d
mov r9d, 0x40007d01
lea edx, [r8 + 3]
lea edi, [rdx - 2]
mov ecx, edi
call fcn.1400672f0
call fcn.140024d3c
mov ebx, eax
test eax, eax
je 0x140048722
mov rcx, qword [0x14009b028]
cmp rcx, r12
je 0x14004879b
test byte [rcx + 0x1c], r15b
je 0x14004879b
cmp byte [rcx + 0x19], sil
jb 0x14004879b
lea edx, [rdi + 0x2b]
jmp 0x14004878c
lea rax, [rbp - 0x38]
xor r9d, r9d
mov qword [rsp + 0x28], rax
lea r8, [0x14004a060]
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 0x1400487e1
mov rax, qword [0x14009b028]
cmp rax, r12
je 0x14004879b
test byte [rax + 0x1c], r15b
je 0x14004879b
cmp byte [rax + 0x19], sil
jb 0x14004879b
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, [0x140087e20]
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.1400672f0
jmp 0x140047ecf
xor eax, eax
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.14007e3c0
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