Function at 0x14009d058
Capabilities:
Create pipe

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x170
mov rax, qword [0x1402bced0]
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 0x14009d0d8
mov eax, 0xffffff2f
cmp rbx, rax
jae 0x14009d0d8
lea rax, [rbx + 0xd0]
mov ecx, 0xffffffe7
cmp rax, rcx
jae 0x14009d0d8
test r9d, r9d
je 0x14009d0c0
lea rax, [rbx + 0xe8]
cmp rax, rcx
jae 0x14009d0d8
mov ecx, 0xe8
test r9d, r9d
lea eax, [rcx + 0x18]
cmovg ecx, eax
add rcx, rbx
call fcn.1401cd85c
jmp 0x14009d0da
xor eax, eax
xor r9d, r9d
mov r8, rbx
mov edx, 0xd0
mov rcx, rax
call fcn.140093e30
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.140001138
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 0x14009d2ff
cmp rax, 5
je 0x14009d10e
mov edi, 0x20
mov ecx, edi
call fcn.1401cd85c
mov qword [rbx + 0x90], rax
test rax, rax
je 0x14009d22d
mov r8d, edi
xor edx, edx
mov rcx, rax
call fcn.1401c5190
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 0x14009d273
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 0x14009d2b9
mov rax, rbx
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1401c3cc0
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, 0x1a9
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.14009ca70
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.1400010e4
mov ecx, ebx
call fcn.1401c63b8
int3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1ab
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.14009ca70
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.1400010e4
mov ecx, ebx
call fcn.1401c63b8
int3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1ae
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.14009ca70
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.1400010e4
mov ecx, ebx
call fcn.1401c63b8
int3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, 0xfe
lea rdx, str...microstackILibProcessPipe.c
mov edi, 0x1a6
mov dword [rsp + 0x20], eax
mov r9d, ebx
mov r8d, edi
xor ecx, ecx
call fcn.14009ca70
mov r8d, edi
lea rdx, str...microstackILibProcessPipe.c
lea rcx, str.CRITICALEXIT__FILE:__s__LINE:__d_r_n
call fcn.1400010e4
mov ecx, ebx
call fcn.1401c63b8
int3