Function at 0x14004f07c
Capabilities:
Connect pipe
Create pipe

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x48]
sub rsp, 0x110
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rax, qword [0x1401a2e90]
xor rax, rsp
mov qword [rbp], rax
mov r13, rdx
mov r12, rcx
lea rcx, [rsp + 0x70]
call fcn.14004efc0
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x10], xmm0
mov r9d, dword [0x1401aad80]
mov r8d, r9d
imul r8d, r9d
imul r8d, r9d
mov r15d, 0x2aaaaaab
mov eax, r15d
imul r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 3
sub r8d, eax
mov esi, 1
xor ebx, ebx
cmp r8d, 0x12
jne 0x14004f179
jmp 0x14004f174
mov eax, r9d
and eax, 0x80000001
jge 0x14004f118
sub eax, esi
or eax, 0xfffffffe
add eax, esi
test eax, eax
jne 0x14004f12f
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
mov r9d, eax
mov dword [0x1401aad80], eax
jmp 0x14004f13e
lea r9d, [r9*2 + 1]
mov dword [0x1401aad80], r9d
mov eax, 0x55555556
imul r9d
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
mov ecx, r9d
sub ecx, eax
je 0x14004f162
sub ecx, 2
je 0x14004f166
dec ecx
je 0x14004f169
jmp 0x14004f174
add r9d, 2
add r9d, esi
add r9d, 2
mov dword [0x1401aad80], r9d
test r9d, r9d
jne 0x14004f107
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.14004ee28
nop
lea r8, [rbp - 0x30]
lea rcx, [rbp - 0x50]
call fcn.1400514b0
nop
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], ebx
mov eax, 0x2000
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
mov r9d, esi
xor r8d, r8d
mov edx, 0x40000001
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
mov r14, rax
mov rdi, rax
mov qword [rsp + 0x68], rax
mov r8d, dword [0x1401aad80]
imul r8d, r8d
mov eax, r15d
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea eax, [rdx + rdx*2]
shl eax, 3
sub r8d, eax
cmp r8d, 8
jne 0x14004f214
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetMailslotInfo]
test r14, r14
jne 0x14004f25f
lea rax, str.Failure_to_create_pipes_0
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1400c0da8
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x70], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x70], rax
lea rdx, [0x14016d670]
lea rcx, [rsp + 0x70]
call fcn.1400c57f8
int3
mov qword [rbp - 0x78], rbx
xor eax, eax
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
xor r9d, r9d
xor r8d, r8d
mov edx, esi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rsi, rax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x14004f2d8
lea rax, str.Failure_to_create_pipes_1
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1400c0da8
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x14016d670]
lea rcx, [rsp + 0x50]
call fcn.1400c57f8
int3
lea rdx, [rbp - 0x78]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
jne 0x14004f52d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
jne 0x14004f52d
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
mov qword [rsp + 0x30], rbx
mov edx, 0x40000000
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r15, rax
mov rbx, rax
mov qword [rsp + 0x40], rax
mov r8d, dword [0x1401aad80]
imul r8d, r8d
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 2
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul edx, edx, 0xd
sub r8d, edx
cmp r8d, 2
jne 0x14004f373
lea ecx, [r8 + 2]
call fcn.1400be0e0
mov ecx, dword [0x1401aad80]
mov dword [rax], ecx
test r15, r15
jne 0x14004f3be
lea rax, str.Failure_to_create_pipes_3
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400c0da8
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x14016d670]
lea rcx, [rsp + 0x50]
call fcn.1400c57f8
int3
mov edx, 0x7d0
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14004f417
lea rax, str.Failure_to_create_pipes_4
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400c0da8
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x14016d670]
lea rcx, [rsp + 0x50]
call fcn.1400c57f8
int3
lea rax, [rsp + 0x40]
cmp r12, rax
je 0x14004f446
xor ebx, ebx
mov qword [rsp + 0x40], rbx
mov rcx, qword [r12]
cmp r15, rcx
je 0x14004f446
test rcx, rcx
je 0x14004f442
cmp rcx, 0xffffffffffffffff
je 0x14004f442
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r12], r15
lea rax, [rsp + 0x68]
xor r15d, r15d
cmp r13, rax
je 0x14004f479
mov edi, r15d
mov qword [rsp + 0x68], r15
mov rcx, qword [r13]
cmp r14, rcx
je 0x14004f479
test rcx, rcx
je 0x14004f475
cmp rcx, 0xffffffffffffffff
je 0x14004f475
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r13], r14
mov edx, dword [0x1401aad80]
lea r8d, [rdx + 2]
lea ecx, [rdx + 1]
imul r8d, ecx
imul r8d, edx
mov eax, 0x2aaaaaab
imul r8d
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
shl eax, 2
sub r8d, eax
cmp r8d, 8
jne 0x14004f4b4
inc dword [0x1401acc10]
lea rax, [rbx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14004f4c8
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
cmp rsi, 0xffffffffffffffff
je 0x14004f4d8
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rax, [rdi - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14004f4ec
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
cmp qword [rbp - 0x38], 8
jb 0x14004f4fc
mov rcx, qword [rbp - 0x50]
call fcn.1400bd904
mov ebx, 7
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x40], r15
mov word [rbp - 0x50], r15w
cmp qword [rbp - 0x18], 8
jb 0x14004f51e
mov rcx, qword [rbp - 0x30]
call fcn.1400bd904
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x20], r15
mov word [rbp - 0x30], r15w
jmp 0x14004f573
lea rax, str.Failure_to_create_pipes_2
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400c0da8
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x14016d670]
lea rcx, [rsp + 0x50]
call fcn.1400c57f8
nop
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1400bd920
mov rbx, qword [rsp + 0x160]
add rsp, 0x110
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret