Function at 0x140046a90
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 [0x140121040]
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 0x140046acd
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 0x140046b98
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 0x140046cbc
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 0x140046c6d
mov dil, 1
cmp dword [rsp + 0x40], 0xc
jne 0x140046d19
mov rcx, rsi
call fcn.1400473f0
mov rcx, qword [rsp + 0x188]
xor rcx, rsp
call fcn.140080790
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 0x140046c22
cmp byte [r14 + 0x17], 0
mov rcx, r14
jns 0x140046bb2
mov rcx, qword [r14]
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitNamedPipeW]
test eax, eax
jne 0x140046ac0
mov ecx, 2
call fcn.1400696d0
test al, al
je 0x140046c1b
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14010d090]
lea rsi, [rsp + 0x48]
mov rcx, rsi
mov r8d, 0x71
mov r9d, 2
call fcn.1400d5f20
lea rcx, [rsp + 0x58]
lea rdx, str.WaitNamedPipe
mov r8d, 0xd
call fcn.140053780
mov rcx, rsi
call fcn.1400d5fa0
xor edi, edi
jmp 0x140046b77
mov ecx, 2
call fcn.1400696d0
test al, al
je 0x140046c1b
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14010d090]
lea rsi, [rsp + 0x48]
mov rcx, rsi
mov r8d, 0x6c
mov r9d, 2
call fcn.1400d5f20
lea rcx, [rsp + 0x58]
lea rdx, [0x14010d0da]
mov r8d, 0xa
jmp 0x140046c0e
mov ecx, 2
call fcn.1400696d0
test al, al
je 0x140046d12
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14010d090]
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov r8d, 0x88
mov r9d, 2
call fcn.1400d5f20
lea rcx, [rsp + 0x58]
lea rdx, [0x14010d10b]
mov r8d, 0x11
jmp 0x140046d05
mov ecx, 2
call fcn.1400696d0
test al, al
je 0x140046d12
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, [0x14010d090]
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov r8d, 0x7a
mov r9d, 2
call fcn.1400d5f20
lea rcx, [rsp + 0x58]
lea rdx, [0x14010d0f3]
mov r8d, 0x17
call fcn.140053780
mov rcx, rdi
call fcn.1400d5fa0
xor edi, edi
jmp 0x140046b6f
mov ecx, 2
call fcn.1400696d0
test al, al
je 0x140046d12
lea rdx, [0x14010d090]
lea rdi, [rsp + 0x48]
mov rcx, rdi
mov r8d, 0x8c
mov r9d, 2
call fcn.140038640
lea rcx, [rsp + 0x58]
lea rdx, str.TransactNamedPipe:_expected
mov r8d, 0x1c
call fcn.140053780
mov edx, 0xc
mov rcx, rax
call fcn.140019090
lea rdx, str.__observed
mov r8d, 0xb
mov rcx, rax
call fcn.140053780
mov edx, dword [rsp + 0x40]
mov rcx, rax
call fcn.140018e40
mov rcx, rdi
call fcn.140038c30
jmp 0x140046d12