Function at 0x14000529f
Capabilities:
Create pipe

Disassembly:
jmp 0x1401e0b9c
mov dword [rsp + 0x10], edx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov r12d, r8d
mov r14, rcx
lea rbx, str.phandles___nullptr
lea r13, [0x14026a3c8]
mov edi, 0x16
lea rsi, str.minkernelcrtsucrt_srcdesktopcrtconiopipe.cpp
test rcx, rcx
jne 0x1401e0bf5
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], r13
xor r9d, r9d
mov r8d, edi
mov rdx, rsi
lea ecx, [rdi - 0x14]
call fcn.140003f6c
cmp eax, 1
jne 0x1401e0bf5
int3
test r14, r14
jne 0x1401e0c36
call fcn.14000102d
and dword [rax], r14d
call fcn.140003300
mov dword [rax], edi
and qword [rsp + 0x20], r14
mov r9d, edi
mov r8, rsi
lea rdx, str._pipe
mov rcx, rbx
call fcn.140001555
or eax, 0xffffffff
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
or ebx, 0xffffffff
mov dword [r14 + 4], ebx
mov dword [r14], ebx
mov r15d, r12d
and r15d, 0xffff3f7f
je 0x1401e0c75
lea rax, str._textmode____O_NOINHERIT___O_BINARY___O_TEXT____0
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8d, [rbx + 0x1a]
mov rdx, rsi
lea ecx, [rbx + 3]
call fcn.140003f6c
cmp eax, 1
jne 0x1401e0c75
int3
test r15d, r15d
je 0x1401e0cb2
call fcn.14000102d
and dword [rax], 0
call fcn.140003300
mov r9d, 0x19
lea rcx, str._textmode____O_NOINHERIT___O_BINARY___O_TEXT____0
lea rdx, str._pipe
mov r8, rsi
and qword [rsp + 0x20], 0
mov dword [rax], edi
call fcn.140001555
mov eax, ebx
jmp 0x1401e0c26
mov r15d, r12d
and r15d, 0xc000
cmp r15d, 0xc000
jne 0x1401e0d14
lea rax, str._textmode____O_BINARY___O_TEXT_______O_BINARY___O_TEXT_
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8d, [r9 + 0x1a]
mov rdx, rsi
lea ecx, [r9 + 2]
call fcn.140003f6c
cmp eax, 1
jne 0x1401e0cef
int3
cmp r15d, 0xc000
jne 0x1401e0d14
call fcn.14000102d
and dword [rax], 0
call fcn.140003300
mov r9d, 0x1a
lea rcx, str._textmode____O_BINARY___O_TEXT_______O_BINARY___O_TEXT_
jmp 0x1401e0c94
mov r13d, 0x18
mov dword [rsp + 0x50], r13d
xor r15d, r15d
mov qword [rsp + 0x58], r15
mov eax, r12d
shr eax, 7
not eax
and eax, 1
mov dword [rsp + 0x60], eax
mov r9d, dword [rsp + 0xb8]
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_CreatePipe]
test eax, eax
jne 0x1401e0d69
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.14000223e
jmp 0x1401e0cab
call fcn.140003c1f
movsxd rdi, eax
mov dword [rsp + 0xc8], edi
cmp edi, ebx
jne 0x1401e0da7
call fcn.140003300
mov dword [rax], r13d
call fcn.14000102d
mov dword [rax], r15d
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1401e0cab
mov r13, rdi
mov rcx, rdi
sar rcx, 6
mov qword [rsp + 0x30], rcx
lea r8, [0x1402cfb30]
mov rax, rdi
and eax, 0x3f
lea rdx, [rax + rax*8]
mov qword [rsp + 0x48], rdx
mov rax, qword [r8 + rcx*8]
mov byte [rax + rdx*8 + 0x38], 0x89
mov rax, qword [r8 + rcx*8]
mov byte [rax + rdx*8 + 0x39], r15b
mov rax, qword [r8 + rcx*8]
and byte [rax + rdx*8 + 0x3d], 0xfe
mov ecx, edi
call fcn.140008e27
call fcn.140003c1f
movsxd r15, eax
mov dword [rsp + 0xc8], r15d
cmp r15d, ebx
jne 0x1401e0e35
mov rax, qword [rsp + 0x30]
lea rdx, [0x1402cfb30]
mov rax, qword [rdx + rax*8]
mov rcx, qword [rsp + 0x48]
mov byte [rax + rcx*8 + 0x38], 0
call fcn.140003300
mov dword [rax], 0x18
call fcn.14000102d
and dword [rax], 0
jmp 0x1401e0d8c
mov rax, r15
mov rcx, r15
sar rcx, 6
mov qword [rsp + 0x30], rcx
and eax, 0x3f
lea rbx, [rax + rax*8]
lea rdx, [0x1402cfb30]
mov rax, qword [rdx + rcx*8]
mov byte [rax + rbx*8 + 0x38], 0x89
mov rax, qword [rdx + rcx*8]
mov byte [rax + rbx*8 + 0x39], 0
mov rax, qword [rdx + rcx*8]
and byte [rax + rbx*8 + 0x3d], 0xfe
mov ecx, r15d
call fcn.140008e27
and dword [rsp + 0xb0], 0
lea rcx, [rsp + 0xb0]
call fcn.140001997
test eax, eax
jne 0x1401e0f3d
mov eax, 0x8000
test eax, r12d
jne 0x1401e0eac
bt r12d, 0xe
jb 0x1401e0edd
cmp dword [rsp + 0xb0], eax
jne 0x1401e0edd
mov rdx, r13
sar rdx, 6
mov rax, r13
and eax, 0x3f
lea rcx, [rax + rax*8]
lea r8, [0x1402cfb30]
mov rax, qword [r8 + rdx*8]
and byte [rax + rcx*8 + 0x38], 0x7f
mov rdx, qword [rsp + 0x30]
mov rax, qword [r8 + rdx*8]
and byte [rax + rbx*8 + 0x38], 0x7f
jmp 0x1401e0ee9
lea r8, [0x1402cfb30]
mov rdx, qword [rsp + 0x30]
test r12b, r12b
jns 0x1401e0f16
mov rax, r13
sar rax, 6
and r13d, 0x3f
lea rcx, [r13*8]
add rcx, r13
mov rax, qword [r8 + rax*8]
or byte [rax + rcx*8 + 0x38], 0x10
mov rax, qword [r8 + rdx*8]
or byte [rax + rbx*8 + 0x38], 0x10
mov rdx, qword [rsp + 0x38]
mov ecx, edi
call fcn.140003341
mov rdx, qword [rsp + 0x40]
mov ecx, r15d
call fcn.140003341
mov dword [r14], edi
mov dword [r14 + 4], r15d
xor eax, eax
jmp 0x1401e0c26
and qword [rsp + 0x20], 0
mov r9d, 0x5a
mov r8, rsi
lea rdx, str._pipe
lea rcx, str._get_fmode_fmode_
call fcn.1400089b3
nop
int3