Function at 0x140096864
Capabilities:
Create pipe

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x170
mov rax, qword [0x1402b1ed0]
xor rax, rsp
mov qword [rsp + 0x160], rax
movsxd rbx, r9d
mov eax, 0xffffffff
sub rax, rbx
xor edi, edi
mov rsi, rcx
cmp rax, 0xd0
jbe 0x1400968e4
mov eax, 0xffffff2f
cmp rbx, rax
jae 0x1400968e4
lea rax, [rbx + 0xd0]
mov ecx, 0xffffffe7
cmp rax, rcx
jae 0x1400968e4
test r9d, r9d
je 0x1400968cc
lea rax, [rbx + 0xe8]
cmp rax, rcx
jae 0x1400968e4
mov ecx, 0xe8
test r9d, r9d
lea eax, [rcx + 0x18]
cmovg ecx, eax
add rcx, rbx
call fcn.1401c4328
jmp 0x1400968e6
xor eax, eax
xor r9d, r9d
mov r8, rbx
mov edx, 0xd0
mov rcx, rax
call fcn.14008de4c
mov rbx, rax
and qword [rax + 0x58], rdi
mov qword [rax + 0x38], rsi
mov esi, 1
and qword [rsp + 0x48], rdi
mov dword [rsp + 0x50], esi
mov dword [rsp + 0x40], 0x18
mov r9, rbx
mov dword [rsp + 0x20], edi
lea r8, str..pipe_p_u
mov edx, 0xff
lea rcx, [rsp + 0x60]
call fcn.1400010e4
lea rax, [rsp + 0x40]
mov r9d, esi
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x60]
and dword [rsp + 0x30], 0
xor r8d, r8d
mov dword [rsp + 0x28], 0x1000
mov edx, 0x40080001
mov dword [rsp + 0x20], 0x1000
add edi, esi
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeA]
mov qword [rbx + 0x80], rax
cmp rax, 0xffffffffffffffff
je 0x140096b0b
cmp rax, 5
je 0x14009691a
mov edi, 0x20
mov ecx, edi
call fcn.1401c4328
mov qword [rbx + 0x90], rax
test rax, rax
je 0x140096a39
mov r8d, edi
xor edx, edx
mov rcx, rax
call fcn.1401bd600
xor r9d, r9d
xor r8d, r8d
mov edx, esi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventA]
mov rcx, qword [rbx + 0x90]
mov qword [rcx + 0x18], rax
test rax, rax
je 0x140096a7f
and qword [rsp + 0x30], 0
lea r9, [rsp + 0x40]
mov dword [rsp + 0x28], 0x80
lea rcx, [rsp + 0x60]
xor r8d, r8d
mov dword [rsp + 0x20], 3
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rbx + 0x88], rax
cmp rax, 0xffffffffffffffff
je 0x140096ac5
mov rax, rbx
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1401bc130
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1aa
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.1400961f4
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.140001090
mov ecx, ebx
call fcn.1401be828
int3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1ac
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.1400961f4
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.140001090
mov ecx, ebx
call fcn.1401be828
int3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1af
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.1400961f4
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.140001090
mov ecx, ebx
call fcn.1401be828
int3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1a7
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.1400961f4
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.140001090
mov ecx, ebx
call fcn.1401be828
int3