Function at 0x1400519f4
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rsi, r9
mov rbx, r8
mov r14, rdx
mov rdi, rcx
xor r13d, r13d
mov qword [rbp - 0x40], r13
cmp qword [rcx + 0x10], r13
je 0x140051dab
call fcn.14004ac08
test al, al
je 0x140051d5b
mov eax, r13d
mov qword [rbp + 0x50], rax
lea r12d, [r13 + 1]
cmp qword [rbp - 0x40], r13
je 0x140051a91
lea ecx, [r13 + 0x28]
call fcn.14011a288
mov qword [rbp + 0x30], rax
lea rcx, vtable.CSIS::OutputRedirectHandles.0
mov qword [rax], rcx
mov qword [rax + 8], r13
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], r13
mov rcx, qword [rbp + 0x50]
mov qword [rbp + 0x50], rax
test rcx, rcx
je 0x140051a91
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
mov rax, qword [rbp + 0x50]
lea rcx, [rbp + 0x50]
mov qword [rbp - 0x30], rcx
lea rcx, [rbp - 0x40]
mov qword [rbp - 0x28], rcx
movzx ecx, word [rbp + 0x58]
mov word [rsp + 0x30], cx
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp - 0x38]
mov r8, rbx
mov rdx, r14
mov rcx, rdi
call fcn.1400626c4
test al, al
je 0x140051cf2
mov r15, qword [rbp + 0x30]
mov qword [rbp - 0x18], r15
mov r14, qword [rbp - 0x38]
mov qword [rbp - 8], r14
mov rbx, r13
mov qword [rbp - 0x38], rbx
cmp qword [rbp - 0x40], r13
je 0x140051b53
cmp qword [rbp + 0x50], r13
je 0x140051b53
mov ecx, 0x10
call fcn.14011a288
mov rbx, rax
mov qword [rbp + 0x30], rax
mov ecx, 0x10
call fcn.14011a288
movups xmm0, xmmword [rbp - 0x30]
movdqu xmmword [rax], xmm0
mov qword [rbp - 0x30], rax
lea r12, [rbx + 8]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], r13d
mov r9, rax
lea r8, [0x140051ec0]
xor edx, edx
xor ecx, ecx
call fcn.1401474d8
mov qword [rbx], rax
test rax, rax
je 0x140051e09
mov qword [rbp - 0x38], rbx
mov r12d, 1
cmp byte [rbp + 0x60], r13b
jne 0x140051b61
mov dword [rsi], r13d
jmp 0x140051bfc
lea rdx, [rbp + 0x30]
mov rcx, r14
call fcn.1400628ec
test al, al
je 0x140051c5d
mov eax, dword [rbp + 0x30]
mov dword [rsi], eax
cmp qword [rbp - 0x40], r13
je 0x140051bfc
mov rdi, qword [rbp + 0x50]
test rdi, rdi
je 0x140051bfc
mov rcx, qword [rdi + 0x20]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140051ba1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x20], r13
mov rdi, qword [rbp + 0x50]
mov rcx, qword [rdi + 0x10]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140051bbd
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rdi + 0x10], r13
test rbx, rbx
je 0x140051bfc
cmp dword [rbx + 8], r13d
je 0x140051e18
call sub.KERNEL32.dll_GetCurrentThreadId
cmp dword [rbx + 8], eax
je 0x140051e21
movups xmm0, xmmword [rbx]
movdqu xmmword [rbp - 0x30], xmm0
xor edx, edx
lea rcx, [rbp - 0x30]
call fcn.1400f6364
test eax, eax
jne 0x140051e2c
xorps xmm0, xmm0
movdqu xmmword [rbx], xmm0
test rbx, rbx
je 0x140051c19
cmp dword [rbx + 8], r13d
jne 0x140051e03
mov edx, 0x10
mov rcx, rbx
call fcn.14011a254
nop
lea rax, [r14 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140051c2d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rax, [r15 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140051c41
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rdi, qword [rbp + 0x50]
test rdi, rdi
je 0x140051c55
mov rax, qword [rdi]
mov edx, r12d
mov rcx, rdi
call qword [rax]
mov al, r12b
jmp 0x140051de2
mov esi, 5
mov ecx, esi
call fcn.1400e2070
test eax, eax
je 0x140051cac
cmp qword [rdi + 0x18], 8
jb 0x140051c77
mov rdi, qword [rdi]
mov qword [rbp + 0x30], rdi
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, str.Failed_to_wait_for_process_execution:__s
mov qword [rsp + 0x20], rax
mov r9d, 0x54
lea r8, str.CSIS::ExecuteProcess
lea rdx, str.E:BT98e4b0b8_6261_4b66_a156_8e0ef62b3d71UBF_1CSIS_srcCSISCommonProcessUtilities.cpp
mov ecx, esi
call fcn.1400323dc
nop
test rbx, rbx
je 0x140051cc9
cmp dword [rbx + 8], r13d
jne 0x140051e03
mov edx, 0x10
mov rcx, rbx
call fcn.14011a254
nop
lea rax, [r14 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140051cdd
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rax, [r15 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140051d41
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140051d41
mov esi, 5
mov ecx, esi
call fcn.1400e2070
test eax, eax
je 0x140051d41
cmp qword [rdi + 0x18], 8
jb 0x140051d0c
mov rdi, qword [rdi]
mov qword [rbp + 0x30], rdi
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, str.Failed_to_execute_process:__s
mov qword [rsp + 0x20], rax
mov r9d, 0x59
lea r8, str.CSIS::ExecuteProcess
lea rdx, str.E:BT98e4b0b8_6261_4b66_a156_8e0ef62b3d71UBF_1CSIS_srcCSISCommonProcessUtilities.cpp
mov ecx, esi
call fcn.1400323dc
nop
mov rcx, qword [rbp + 0x50]
test rcx, rcx
je 0x140051de0
mov rax, qword [rcx]
mov edx, r12d
call qword [rax]
jmp 0x140051de0
mov esi, 5
mov ecx, esi
call fcn.1400e2070
test eax, eax
je 0x140051de0
cmp qword [rdi + 0x18], 8
jb 0x140051d75
mov rdi, qword [rdi]
mov qword [rbp + 0x30], rdi
lea rax, [rbp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, str.Failed_to_resolve_path:__s
mov qword [rsp + 0x20], rax
mov r9d, 0x5e
lea r8, str.CSIS::ExecuteProcess
lea rdx, str.E:BT98e4b0b8_6261_4b66_a156_8e0ef62b3d71UBF_1CSIS_srcCSISCommonProcessUtilities.cpp
mov ecx, esi
call fcn.1400323dc
jmp 0x140051de0
mov esi, 5
mov ecx, esi
call fcn.1400e2070
test eax, eax
je 0x140051de0
lea rax, str.Path_is_empty
mov qword [rsp + 0x20], rax
lea r9d, [rsi + 0x5e]
lea r8, str.CSIS::ExecuteProcess
lea rdx, str.E:BT98e4b0b8_6261_4b66_a156_8e0ef62b3d71UBF_1CSIS_srcCSISCommonProcessUtilities.cpp
mov ecx, esi
call fcn.14003209c
xor al, al
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14014288c
nop
mov dword [r12], r13d
mov ecx, 6
call fcn.1400f62f8
nop
mov ecx, r12d
call fcn.1400f62f8
int3
mov ecx, 5
call fcn.1400f62f8
int3
mov ecx, 2
call fcn.1400f62f8
int3