Function at 0x140008f70
Capabilities:
Create pipe
Create process on windows
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x140020040]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov r14, rdx
mov rsi, rcx
mov qword [rsp + 0x68], rcx
mov dword [rbp - 0x60], 0x68
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
movups xmmword [rbp - 0x18], xmm0
movups xmmword [rbp - 8], xmm0
mov r13, qword [rdx + 0x10]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r13
cmp rax, 3
jb 0x140009442
cmp qword [rdx + 0x18], 0xf
jbe 0x140008fef
mov r14, qword [rdx]
movups xmmword [rbp + 0x30], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x40], xmm1
lea r12, [r13 + 3]
mov r15d, 0xf
mov ebx, r15d
lea rdi, [rbp + 0x30]
cmp r12, r15
jbe 0x140009089
mov rbx, r12
or rbx, r15
cmp rbx, rcx
jbe 0x14000904c
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140012890
test rax, rax
je 0x140009434
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140009085
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140009065
xor edi, edi
jmp 0x140009085
cmp rcx, 0x1000
jb 0x14000907d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140009448
jmp 0x14000902d
call fcn.140012890
mov rdi, rax
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x40], r12
mov qword [rbp + 0x48], rbx
mov eax, dword [0x140019088]
mov word [rdi], ax
movzx eax, byte [0x14001908a]
mov byte [rdi + 2], al
lea rcx, [rdi + 3]
mov r8, r13
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + r12], 0
mov dword [rsp + 0x70], 0x18
xor r12d, r12d
mov qword [rsp + 0x78], r12
mov dword [rbp - 0x80], 1
xor r9d, r9d
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CreatePipe]
test eax, eax
je 0x1400091d3
xor r8d, r8d
mov edx, 1
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_SetHandleInformation]
test eax, eax
je 0x1400091d3
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rbx, rax
mov rdi, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], r12d
lea r9, [rsp + 0x68]
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DuplicateHandle]
test eax, eax
je 0x1400091d3
mov dword [rbp - 0x24], 0x100
mov rax, qword [rsp + 0x58]
mov qword [rbp - 8], rax
mov rax, qword [rsp + 0x68]
mov qword [rbp], rax
lea rdx, [rbp + 0x30]
cmp qword [rbp + 0x48], 0xf
cmova rdx, qword [rbp + 0x30]
lea rax, [rbp - 0x78]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x8000000
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
lea rcx, str.C:WindowsSystem32cmd.exe
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
mov rcx, qword [rsp + 0x58]
test eax, eax
jne 0x140009259
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], r12
mov qword [rsi + 0x18], r12
xor r8d, r8d
lea rdx, [0x140018fa7]
mov rcx, rsi
call fcn.140005240
nop
mov rdx, qword [rbp + 0x48]
cmp rdx, 0xf
jbe 0x14000922f
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000922a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140009434
call fcn.140012b14
mov rax, rsi
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.140012870
mov rbx, qword [rsp + 0x1d0]
add rsp, 0x180
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov edx, 0xffffffff
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x18], xmm1
mov qword [rbp + 0x28], r12
mov ecx, 0x1027
call fcn.140012890
test rax, rax
je 0x14000943b
lea rcx, [rax + 0x27]
and rcx, 0xffffffffffffffe0
mov qword [rcx - 8], rax
mov qword [rbp + 0x18], rcx
lea rbx, [rcx + 0x1000]
mov qword [rbp + 0x28], rbx
xor edx, edx
mov r8d, 0x1000
call sub.VCRUNTIME140.dll_memset
mov qword [rbp + 0x20], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x50], xmm0
mov r14, r12
mov qword [rbp + 0x60], r12
mov qword [rbp + 0x68], r15
mov byte [rbp + 0x50], r14b
mov rdx, qword [rbp + 0x18]
sub ebx, edx
mov qword [rsp + 0x20], r12
lea r9, [rbp + 0x10]
mov r8d, ebx
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140009386
mov eax, dword [rbp + 0x10]
test eax, eax
je 0x140009386
mov edi, eax
mov rax, r15
sub rax, r14
cmp rdi, rax
ja 0x140009341
lea rax, [r14 + rdi]
mov qword [rbp + 0x60], rax
lea rbx, [rbp + 0x50]
cmp r15, 0xf
cmova rbx, qword [rbp + 0x50]
add rbx, r14
mov r8d, edi
mov rdx, qword [rbp + 0x18]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rdi], 0
jmp 0x140009356
mov qword [rsp + 0x20], rdi
mov r9, qword [rbp + 0x18]
mov rdx, rdi
lea rcx, [rbp + 0x50]
call fcn.1400057c0
mov r8d, dword [rbp + 0x20]
mov rdx, qword [rbp + 0x18]
sub r8d, edx
mov qword [rsp + 0x20], r12
lea r9, [rbp + 0x10]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140009386
mov r15, qword [rbp + 0x68]
mov r14, qword [rbp + 0x60]
jmp 0x140009300
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x70]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movups xmm0, xmmword [rbp + 0x50]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbp + 0x60]
movups xmmword [rsi + 0x10], xmm1
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x1400093f6
mov rdx, qword [rbp + 0x28]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400093e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000943b
call fcn.140012b14
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], r12
mov rdx, qword [rbp + 0x48]
cmp rdx, 0xf
jbe 0x14000922f
inc rdx
mov rcx, qword [rbp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000922a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14000922a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.1400051e0
int3
call fcn.140005140
int3