Function at 0x1400700b9
Capabilities:
Read file on windows
Read pipe

Disassembly:
push rbp
push rbx
sub rsp, 0x168
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rdx
mov dword [rbp + 0x110], r8d
mov dword [rbp + 0x118], r9d
mov rax, qword [rbp + 0x108]
mov rax, qword [rax + 0x98]
mov qword [rbp + 0xd0], rax
cmp qword [rbp + 0xd0], 0
jne 0x140070145
mov rax, qword [rbp + 0x100]
lea rdx, [0x140088256]
mov qword [rax], rdx
mov rax, qword [rbp + 0x100]
mov dword [rax + 8], 0
mov rax, qword [rbp + 0x100]
mov dword [rax + 0xc], 1
mov rax, qword [rbp + 0x100]
mov dword [rax + 0x10], 0
jmp 0x1400703fd
mov qword [rbp + 0xd8], 0
cmp dword [rbp + 0x110], 1
jne 0x14007016e
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax + 0x10020]
mov qword [rbp + 0xd8], rax
cmp dword [rbp + 0x110], 2
jne 0x14007018c
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax + 0x10030]
mov qword [rbp + 0xd8], rax
cmp qword [rbp + 0xd8], 0
jne 0x1400701d6
mov rax, qword [rbp + 0x100]
lea rdx, [0x140088256]
mov qword [rax], rdx
mov rax, qword [rbp + 0x100]
mov dword [rax + 8], 0
mov rax, qword [rbp + 0x100]
mov dword [rax + 0xc], 1
mov rax, qword [rbp + 0x100]
mov dword [rax + 0x10], 0
jmp 0x1400703fd
mov dword [rbp + 0x9c], 0
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x28], 0
lea rdx, [rbp + 0x9c]
mov qword [rsp + 0x20], rdx
mov r9d, 0
mov r8d, 0
mov edx, 0
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_PeekNamedPipe]
call rax
test eax, eax
jne 0x14007025d
mov rax, qword [rbp + 0x100]
lea rdx, [0x140088256]
mov qword [rax], rdx
mov rax, qword [rbp + 0x100]
mov dword [rax + 8], 0
mov rax, qword [rbp + 0x100]
mov dword [rax + 0xc], 1
mov rax, qword [rbp + 0x100]
mov dword [rax + 0x10], 0
jmp 0x1400703fd
mov eax, dword [rbp + 0x9c]
test eax, eax
jne 0x1400702a7
mov rax, qword [rbp + 0x100]
lea rdx, [0x140088256]
mov qword [rax], rdx
mov rax, qword [rbp + 0x100]
mov dword [rax + 8], 0
mov rax, qword [rbp + 0x100]
mov dword [rax + 0xc], 1
mov rax, qword [rbp + 0x100]
mov dword [rax + 0x10], 0
jmp 0x1400703fd
mov dword [rbp + 0x98], 0
mov eax, dword [rbp + 0x9c]
lea edx, [rax + 0x12c]
lea rax, [rbp + 0x70]
mov qword [rsp + 0x20], 0
mov r9d, 1
mov r8d, 0
mov rcx, rax
call sym.__new_array_with_default_noscan
mov eax, dword [rbp + 0x80]
mov ebx, eax
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x88]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rdx
lea rax, [rbp - 0x50]
mov edx, 0
mov rcx, rax
call sym.array_get
mov rdx, rax
lea rcx, [rbp + 0x98]
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x20], 0
mov r9, rcx
mov r8d, ebx
mov rcx, rax
mov rax, qword [sym.imp.KERNEL32.dll_ReadFile]
call rax
mov r8d, dword [rbp + 0x98]
lea rcx, [rbp + 0xa0]
mov rax, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x78]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x88]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rdx
lea rax, [rbp - 0x50]
mov r9d, r8d
mov r8d, 0
mov rdx, rax
call sym.array_slice
lea rcx, [rbp + 0xc0]
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0xa8]
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rdx
mov rax, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0xb8]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], rdx
lea rax, [rbp - 0x50]
mov rdx, rax
call sym.Array_u8_bytestr
mov ecx, dword [rbp + 0x98]
mov r8, qword [rbp + 0x100]
mov rax, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xc8]
mov qword [r8], rax
mov qword [r8 + 8], rdx
mov rax, qword [rbp + 0x100]
mov dword [rax + 0x10], ecx
mov rax, qword [rbp + 0x100]
add rsp, 0x168
pop rbx
pop rbp
ret