Function at 0x14004a120
Capabilities:
Read pipe
Write pipe

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x190
mov rdi, r8
mov rbx, rdx
mov r14, rcx
mov rax, qword [0x14012d038]
xor rax, rsp
mov qword [rsp + 0x188], rax
mov r15, qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp byte [r14 + 0x17], 0
mov rcx, r14
jns 0x14004a15d
mov rcx, qword [r14]
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x110000
mov dword [rsp + 0x20], 3
mov edx, 0xc0000000
xor r8d, r8d
xor r9d, r9d
call r15
cmp rax, 0xffffffffffffffff
je 0x14004a228
mov rsi, rax
lea rdx, [rsp + 0x44]
mov dword [rdx], 2
mov rcx, rax
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_SetNamedPipeHandleState]
test eax, eax
je 0x14004a3d2
lea rax, [rsp + 0x40]
mov dword [rax], 0
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x20], 0xc
mov rcx, rsi
mov rdx, rbx
mov r8d, 0x24
mov r9, rdi
call qword [sym.imp.KERNEL32.dll_TransactNamedPipe]
test eax, eax
je 0x14004a36e
mov dil, 1
cmp dword [rsp + 0x40], 0xc
jne 0x14004a3b9
mov rcx, rsi
call fcn.14004aa80
mov rcx, qword [rsp + 0x188]
xor rcx, rsp
call fcn.140090b60
mov eax, edi
add rsp, 0x190
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xe7
jne 0x14004a2ad
cmp byte [r14 + 0x17], 0
mov rcx, r14
jns 0x14004a242
mov rcx, qword [r14]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitNamedPipeW]
test eax, eax
jne 0x14004a150
mov ecx, 2
call fcn.14006d720
test al, al
je 0x14004a2bb
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14011b580]
lea rsi, [rsp + 0x48]
mov rcx, rsi
mov r8d, 0x71
mov r9d, 2
call fcn.1400deac0
lea rcx, [rsp + 0x58]
lea rdx, str.WaitNamedPipe
mov r8d, 0xd
call fcn.1400c3c00
mov rcx, rsi
call fcn.1400deb40
jmp 0x14004a2bb
mov ecx, 2
call fcn.14006d720
test al, al
jne 0x14004a2c2
xor edi, edi
jmp 0x14004a207
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14011b580]
lea rsi, [rsp + 0x48]
mov rcx, rsi
mov r8d, 0x6c
mov r9d, 2
call fcn.1400deac0
lea rcx, [rsp + 0x58]
lea rdx, [0x14011b5ca]
mov r8d, 0xa
jmp 0x14004a29e
lea rdx, [0x14011b580]
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov r8d, 0x8c
mov r9d, 2
call fcn.140032940
lea rcx, [rsp + 0x58]
lea rdx, str.TransactNamedPipe:_expected
mov r8d, 0x1c
call fcn.1400c3c00
mov edx, 0xc
mov rcx, rax
call fcn.1400193e0
lea rdx, str.__observed
mov r8d, 0xb
mov rcx, rax
call fcn.1400c3c00
mov edx, dword [rsp + 0x40]
mov rcx, rax
call fcn.1400191a0
mov rcx, rdi
call fcn.140032f90
jmp 0x14004a3cb
mov ecx, 2
call fcn.14006d720
test al, al
je 0x14004a3cb
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14011b580]
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov r8d, 0x88
mov r9d, 2
call fcn.1400deac0
lea rcx, [rsp + 0x58]
lea rdx, [0x14011b5fb]
mov r8d, 0x11
jmp 0x14004a41b
mov ecx, 2
call fcn.14006d720
test al, al
jne 0x14004a2ff
xor edi, edi
jmp 0x14004a1ff
mov ecx, 2
call fcn.14006d720
test al, al
je 0x14004a3cb
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14011b580]
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov r8d, 0x7a
mov r9d, 2
call fcn.1400deac0
lea rcx, [rsp + 0x58]
lea rdx, [0x14011b5e3]
mov r8d, 0x17
call fcn.1400c3c00
mov rcx, rdi
call fcn.1400deb40
jmp 0x14004a3cb