Function at 0x14004b450
Capabilities:
Connect pipe
Create pipe

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x38]
sub rsp, 0x110
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x140197e90]
xor rax, rsp
mov qword [rbp], rax
mov rdi, rdx
mov rsi, rcx
lea rcx, [rsp + 0x70]
call fcn.14004b374
movups xmm0, xmmword [rax]
movdqu xmmword [rbp - 0x10], xmm0
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.14004b240
nop
lea r8, [rbp - 0x30]
lea rcx, [rbp - 0x50]
call fcn.14004d6e4
nop
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
xor r15d, r15d
mov qword [rsp + 0x38], r15
mov dword [rsp + 0x30], r15d
mov eax, 0x2000
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
lea r12d, [r15 + 1]
mov r9d, r12d
xor r8d, r8d
mov edx, 0x40000001
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
mov r14, rax
mov qword [rsp + 0x68], rax
test rax, rax
jne 0x14004b548
lea rax, str.Failure_to_create_pipes_0
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x70]
call fcn.1400bc498
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x70], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x70], rax
lea rdx, [0x1401630f0]
lea rcx, [rsp + 0x70]
call fcn.1400c0ee8
int3
mov qword [rbp - 0x78], r15
xor eax, eax
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x60], rax
mov r8d, dword [0x14019fd80]
lea ecx, [r8 + 1]
imul ecx, r8d
mov eax, 0x78787879
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x11
sub ecx, edx
cmp ecx, 0xb
jne 0x14004b5c6
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x64
sub r8d, edx
add r8d, 0x7b
movsxd rcx, r8d
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400b8688
mov rcx, rax
call fcn.1400ba0bc
xor r9d, r9d
xor r8d, r8d
mov edx, r12d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x60], rax
test rax, rax
jne 0x14004b62b
lea rax, str.Failure_to_create_pipes_1
mov qword [rsp + 0x40], rax
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.1400bc498
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x1401630f0]
lea rcx, [rsp + 0x50]
call fcn.1400c0ee8
int3
lea rdx, [rbp - 0x78]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
jne 0x14004b876
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
jne 0x14004b876
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
mov qword [rsp + 0x30], r15
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 rbx, rax
mov qword [rsp + 0x40], rax
test rax, rax
jne 0x14004b6d4
lea rax, str.Failure_to_create_pipes_3
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400bc498
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x1401630f0]
lea rcx, [rsp + 0x50]
call fcn.1400c0ee8
int3
mov edx, 0x7d0
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x14004b72d
lea rax, str.Failure_to_create_pipes_4
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400bc498
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x1401630f0]
lea rcx, [rsp + 0x50]
call fcn.1400c0ee8
int3
lea rax, [rsp + 0x40]
cmp rsi, rax
je 0x14004b74c
mov qword [rsp + 0x40], r15
cmp rbx, qword [rsi]
je 0x14004b74c
mov rcx, rsi
call fcn.14004a320
mov qword [rsi], rbx
lea rax, [rsp + 0x68]
cmp rdi, rax
je 0x14004b76b
mov qword [rsp + 0x68], r15
cmp r14, qword [rdi]
je 0x14004b76b
mov rcx, rdi
call fcn.14004a320
mov qword [rdi], r14
mov r8d, dword [0x14019fd80]
lea ecx, [r8 + 2]
lea eax, [r8 + 1]
imul ecx, eax
imul ecx, r8d
and ecx, 0x8000000f
jge 0x14004b792
sub ecx, r12d
or ecx, 0xfffffff0
add ecx, r12d
cmp ecx, 0xb
jne 0x14004b7a5
test r8d, r8d
cmove r8d, r12d
mov dword [0x14019fd80], r8d
lea ecx, [r8 + 1]
imul ecx, r8d
mov eax, 0xb21642c9
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x17
sub ecx, edx
cmp ecx, 0xd
jne 0x14004b814
mov ecx, r15d
mov r9d, 0x3531dec1
jmp 0x14004b7ee
mov eax, r8d
or eax, 0xffffff42
add r8d, eax
add ecx, r12d
mov eax, r8d
imul eax, r8d
cmp ecx, eax
jg 0x14004b80e
mov eax, r9d
imul r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul edx, edx, 0x9a
mov eax, r8d
sub eax, edx
cmp eax, 0x18
jne 0x14004b7d5
mov dword [0x14019fd80], ecx
lea rcx, [rsp + 0x40]
call fcn.14004a320
nop
lea rcx, [rsp + 0x70]
call fcn.14004a320
nop
lea rcx, [rsp + 0x68]
call fcn.14004a320
nop
cmp qword [rbp - 0x38], 8
jb 0x14004b845
mov rcx, qword [rbp - 0x50]
call fcn.1400b8ff4
mov ebx, 7
mov qword [rbp - 0x38], rbx
mov qword [rbp - 0x40], r15
mov word [rbp - 0x50], r15w
cmp qword [rbp - 0x18], 8
jb 0x14004b867
mov rcx, qword [rbp - 0x30]
call fcn.1400b8ff4
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x20], r15
mov word [rbp - 0x30], r15w
jmp 0x14004b8bc
lea rax, str.Failure_to_create_pipes_2
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x50]
call fcn.1400bc498
nop
lea rax, vtable.CRSimpleIPCException.0
mov qword [rsp + 0x50], rax
lea rax, vtable.CRSimpleIPCExceptionServerException.0
mov qword [rsp + 0x50], rax
lea rdx, [0x1401630f0]
lea rcx, [rsp + 0x50]
call fcn.1400c0ee8
nop
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1400b9010
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret