Function at 0x140001528
Capabilities:
Read pipe
Terminate process
Write pipe

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x3e8]
sub rsp, 0x4d0
mov rax, qword [0x140006010]
xor rax, rsp
mov qword [rbp + 0x3c0], rax
mov r8d, dword [rcx + 0x10]
xor edx, edx
mov rsi, rcx
lea ecx, [rdx + 1]
call qword [sym.imp.KERNEL32.dll_OpenProcess]
xor r14d, r14d
mov rdi, rax
test rax, rax
jne 0x14000159d
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovns ecx, eax
mov eax, ecx
jmp 0x1400017ea
mov rbx, qword [rsi + 0x18]
lea r8, str..pipe
mov edx, 0x200
mov word [rbp + 0x3be], r14w
lea rcx, [rbp - 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcscpy_s]
test rbx, rbx
je 0x1400015d8
mov r8, rbx
lea rcx, [rbp - 0x40]
call fcn.140001300
test eax, eax
js 0x1400017dd
lea r8, str.MicrosoftVisualStudioProcessLaunchNotify_
lea rcx, [rbp - 0x40]
call fcn.140001300
test eax, eax
js 0x1400017dd
mov r8d, 0x27
lea rdx, [rsp + 0x40]
mov rcx, rsi
call qword [sym.imp.ole32.dll_StringFromGUID2]
lea r8, [rsp + 0x40]
lea rcx, [rbp - 0x40]
call fcn.140001300
test eax, eax
js 0x1400017dd
mov rbx, r14
lea rax, [rbx + 1]
test rax, 0xfffffffffffffffe
jne 0x1400016b0
mov edx, 0x3a98
lea rcx, [rbp - 0x40]
call qword [sym.imp.KERNEL32.dll_WaitNamedPipeW]
test eax, eax
je 0x1400016a8
mov qword [rsp + 0x30], r14
lea rcx, [rbp - 0x40]
mov dword [rsp + 0x28], 0x110080
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], 3
mov edx, 0xc0000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x140001678
test rax, rax
jne 0x14000161d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xe7
je 0x14000161d
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
test rbx, rbx
je 0x1400017df
jmp 0x1400016ef
call qword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x140001685
mov r15d, 2
lea rdx, [rbp - 0x60]
xor r9d, r9d
mov dword [rbp - 0x60], r15d
xor r8d, r8d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_SetNamedPipeHandleState]
test eax, eax
jne 0x1400016fd
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx esi, ax
or esi, 0x80070000
test eax, eax
cmovle esi, eax
mov eax, 0x80004005
test esi, esi
cmovns esi, eax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400017df
mov eax, dword [rsi + 0x10]
lea r9, [rbp - 0x70]
mov dword [rbp - 0x58], eax
lea rdx, [rbp - 0x58]
mov eax, dword [rsi + 0x14]
mov r8d, 8
mov dword [rbp - 0x54], eax
mov rcx, rbx
lea rax, [rbp - 0x5c]
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x10
call qword [sym.imp.KERNEL32.dll_TransactNamedPipe]
test eax, eax
je 0x1400016d1
cmp dword [rbp - 0x5c], 0x10
je 0x140001753
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, 0x8000ffff
jmp 0x1400017df
movaps xmm0, xmmword [rbp - 0x70]
lea rdx, [rbp - 0x50]
or esi, 0xffffffff
movdqa xmmword [rbp - 0x50], xmm0
mov r9d, esi
xor r8d, r8d
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
je 0x1400017af
cmp eax, 1
jne 0x14000178e
mov edx, esi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov r14d, 0x80010007
jmp 0x1400017af
call qword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovns ecx, eax
mov r14d, ecx
lea rsi, [rbp - 0x50]
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rsi, [rsi + 8]
sub r15, 1
jne 0x1400017b3
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, r14d
jmp 0x1400017ea
mov esi, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, esi
mov rcx, qword [rbp + 0x3c0]
xor rcx, rsp
call fcn.140002200
lea r11, [rsp + 0x4d0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret