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

Disassembly:
mov rdi, qword [rsp + 0x2b8]
mov rsi, qword [rsp + 0x2c0]
mov r14, qword [rsp + 0x2b0]
mov rbx, qword [rsp + 0x300]
mov rcx, qword [rsp + 0x2a0]
xor rcx, rsp
call fcn.140075b80
add rsp, 0x2c8
pop r15
pop r13
pop r12
pop rbp
ret
mov ebx, dword [rbp + 0xb70]
lea rdx, [rsp + 0x88]
mov r9d, ecx
xor r8d, r8d
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
je 0x14005fa78
sub eax, 1
je 0x14005fa2a
cmp eax, 0x101
jne 0x14005f9b3
nop dword [rax]
cmp byte [rbp + 0xf00], 0
je 0x14005f940
mov r9, qword [rbp + 0x1520]
mov r8, rbx
mov edx, 1
mov rcx, r13
call qword [rbp + 0x1518]
cmp rax, 0x10000000
je 0x14005fa1f
cmp rax, 0x10000001
je 0x14005f9b1
test rax, rax
je 0x14005f9b1
mov dword [rsp + 0x30], eax
jmp 0x14005f995
lea rax, [rsp + 0x30]
xor esi, esi
mov qword [rsp + 0x28], rsi
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
xor edx, edx
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_PeekNamedPipe]
test eax, eax
je 0x14005fa47
cmp dword [rsp + 0x30], esi
je 0x14005f9b3
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rsi
mov r8d, ebx
mov rdx, r13
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x14005fa47
mov eax, dword [rsp + 0x30]
mov r8d, eax
mov rdx, r13
mov rcx, r15
call fcn.140060580
mov r14d, eax
test eax, eax
je 0x14005f900
xor r12b, r12b
xor esi, esi
cmp dword [rbp + 0x788], 0
je 0x14005fa09
movups xmm0, xmmword [r15 + 0x4a0]
lea rcx, [rsp + 0xc0]
movaps xmmword [rsp + 0xa0], xmm0
call fcn.1400439e0
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xb0]
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0xb0], xmm0
call fcn.140043a70
movsxd rcx, dword [rbp + 0x788]
cmp rax, rcx
jge 0x14005fc77
test r12b, r12b
je 0x14005fc8c
mov eax, dword [rsp + 0x34]
mov ecx, dword [rsp + 0x38]
jmp 0x14005f8c1
xor r12b, r12b
mov r14d, reloc.WLDAP32.dll_Ordinal_26
jmp 0x14005f9b1
lea r9, [rsp + 0x30]
mov qword [rsp + 0x20], rsi
mov r8d, ebx
mov rdx, r13
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x14005fa55
xor r12b, r12b
mov r14d, reloc.WLDAP32.dll_Ordinal_26
jmp 0x14005f9b3
mov r8d, dword [rsp + 0x30]
mov rdx, r13
mov rcx, r15
call fcn.140060580
mov r14d, eax
test eax, eax
je 0x14005f9b3
xor r12b, r12b
jmp 0x14005f9b3
mov rbx, qword [rsp + 0x40]
lea r8, [rsp + 0xd0]
mov rdx, qword [rsp + 0x50]
mov rcx, rbx
mov dword [rsp + 0xd0], esi
call qword [rsp + 0x60]
cmp rax, 0xffffffffffffffff
jne 0x14005facf
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2734
je 0x14005f9b3
mov r8d, eax
lea rdx, str.WSAEnumNetworkEvents_failed___d_
mov rcx, rbp
call fcn.14003cab0
xor r12b, r12b
mov r14d, reloc.WLDAP32.dll_Ordinal_26
jmp 0x14005f9b3
test byte [rsp + 0xd0], 1
je 0x14005fc62
movsxd r9, dword [rbp + 0xb70]
lea rax, [rsp + 0x68]
mov r8, r13
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, r15
call fcn.14003cc20
mov r14d, eax
cmp eax, 0x51
je 0x14005f9b3
test eax, eax
je 0x14005fb14
xor r12b, r12b
jmp 0x14005f9b3
mov r8, qword [rsp + 0x68]
test r8, r8
jg 0x14005fb26
xor r12b, r12b
jmp 0x14005f9b3
mov rdx, r13
mov rcx, r15
call fcn.140060c10
mov r14d, eax
test eax, eax
je 0x14005fb40
xor r12b, r12b
jmp 0x14005f9b3
mov rax, qword [rsp + 0x48]
cmp dword [rax], 0
je 0x14005fc62
cmp dword [rax + 4], 0
jne 0x14005fc62
mov rax, qword [r15]
xor ebp, ebp
mov edi, ebp
mov ebx, 0x408
mov rsi, qword [rax + 0x1e0]
nop dword [rax + rax]
cmp edi, 1
je 0x14005fc3b
cmp dword [rbx + rsi + 0x400], 1
jne 0x14005fbd2
mov rax, qword [r15]
mov rdx, qword [rax + 0x1e0]
mov ecx, dword [rdx + rbx - 0x400]
test ecx, ecx
je 0x14005fbb7
sub ecx, 2
je 0x14005fbac
cmp ecx, 1
jne 0x14005fbd2
cmp dword [rbx + rdx], ebp
jne 0x14005fbd2
mov dword [rbx + rdx], ecx
jmp 0x14005fbd2
cmp dword [rbx + rdx], 1
jne 0x14005fbd2
mov dword [rbx + rdx], ebp
jmp 0x14005fbd2
mov dword [rdx + rbx - 0x400], 2
mov r8d, edi
mov edx, 0xfb
mov rcx, r15
call fcn.1400604f0
cmp dword [rbx + rsi + 0x1000], 1
jne 0x14005fc3b
mov rax, qword [r15]
mov rdx, qword [rax + 0x1e0]
mov ecx, dword [rdx + rbx + 0x800]
test ecx, ecx
je 0x14005fc20
sub ecx, 2
je 0x14005fc0d
cmp ecx, 1
jne 0x14005fc3b
cmp dword [rdx + rbx + 0xc00], ebp
jne 0x14005fc3b
mov dword [rdx + rbx + 0xc00], ecx
jmp 0x14005fc3b
cmp dword [rdx + rbx + 0xc00], 1
jne 0x14005fc3b
mov dword [rdx + rbx + 0xc00], ebp
jmp 0x14005fc3b
mov dword [rdx + rbx + 0x800], 2
mov r8d, edi
mov edx, 0xfd
mov rcx, r15
call fcn.1400604f0
inc edi
add rbx, 4
cmp edi, 0x28
jl 0x14005fb70
mov rax, qword [rsp + 0x48]
xor esi, esi
mov rbp, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
mov dword [rax + 4], 1
test byte [rsp + 0xd0], 0x20
movzx r12d, r12b
cmovne r12d, esi
jmp 0x14005f9b3
lea rdx, str.Time_out
mov rcx, rbp
call fcn.14003c930
mov r14d, Ordinal_32
mov rcx, qword [rsp + 0x50]
call qword [rsp + 0x58]
test rax, rax
jne 0x14005fcb2
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea rdx, str.WSACloseEvent_failed___d_
mov rcx, rbp
mov r8d, eax
call fcn.14003cab0
mov rcx, qword [rsp + 0x80]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test eax, eax
jne 0x14005fcdc
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, str.FreeLibrary_wsock2__failed___u_
mov rcx, rbp
mov r8d, eax
call fcn.14003cab0
xor r9d, r9d
mov dword [rsp + 0x20], 0xffffffff
mov rcx, rbp
lea edx, [r9 - 1]
lea r8, [r9 - 1]
call fcn.140042bd0
mov eax, r14d
jmp 0x14005f7fe
jbe 0x14005fa9e
lea rcx, [rcx + rdi - 0x5bb8e94]
add qword [rsp + 8], 0xffffffffbfeb72c1
neg byte [rsp + 0x38]
and di, 0x1b79
mov rdx, qword [rsp + 0x28]
or dword [rsp + 0x20], edi
and word [rsp + 0x28], 0x3e84
xchg qword [rsp + rdx + 0x18100d16], rcx
call fcn.140291a40