Function at 0x140109000
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x10a8
call fcn.140137b80
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1010], xmm6
mov rsi, rdx
mov r14, rcx
lea r13, [rbp - 0x50]
mov r8d, 0x1000
mov rcx, r13
xor edx, edx
call sub.msvcrt.dll_memset
xorps xmm6, xmm6
lea r12, [rbp + 0x1004]
lea rdi, [0x140100940]
lea rbx, [rbp + 0xfc0]
mov qword [rbp + 0xfe8], r14
mov dword [rbp + 0x1004], 0
movaps xmmword [rbp + 0xfc0], xmm6
mov qword [rbp + 0xfd0], 0
mov qword [rbp + 0xfd8], r12
mov qword [rsp + 0x20], rdi
mov rcx, r14
mov rdx, r13
mov r8d, 0x1000
mov r9, rbx
call sub.kernel32.dll_ReadFileEx
test eax, eax
je 0x140109236
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call sub.kernel32.dll_SleepEx
cmp dword [rbp + 0x1004], 0
je 0x1401090b0
mov eax, dword [rbp + 0x1008]
mov r15d, dword [rbp + 0x100c]
mov rcx, rax
shl rcx, 0x20
or rcx, 2
xor edx, edx
test eax, eax
setne dl
cmovne r15, rcx
mov qword [rbp + 0xff0], rdx
mov qword [rbp + 0xff8], r15
jne 0x14010926e
test r15, r15
je 0x140109207
cmp r15, 0x1000
ja 0x1401093f7
xor r14d, r14d
nop dword [rax + rax]
mov r8d, r15d
sub r8d, r14d
lea rdx, [r14 + rbp]
add rdx, 0xffffffffffffffb0
mov dword [rbp + 0x1004], 0
movaps xmmword [rbp + 0xfc0], xmm6
mov qword [rbp + 0xfd0], 0
mov qword [rbp + 0xfd8], r12
mov qword [rsp + 0x20], rdi
mov rcx, rsi
mov r9, rbx
call sub.kernel32.dll_WriteFileEx
test eax, eax
je 0x1401091dc
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call sub.kernel32.dll_SleepEx
cmp dword [rbp + 0x1004], 0
je 0x140109170
mov ecx, dword [rbp + 0x1008]
mov eax, dword [rbp + 0x100c]
mov rdx, rcx
shl rdx, 0x20
or rdx, 2
xor r8d, r8d
test ecx, ecx
setne r8b
cmove rdx, rax
mov qword [rbp + 0xff0], r8
mov qword [rbp + 0xff8], rdx
jne 0x1401091fb
add r14, rax
cmp r14, r15
je 0x1401091d0
jbe 0x140109120
jmp 0x1401093e3
mov r14, qword [rbp + 0xfe8]
jmp 0x140109061
call sub.kernel32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov qword [rbp + 0xff0], 1
mov qword [rbp + 0xff8], rax
lea rcx, [rbp + 0xff8]
call fcn.1400dbce0
call sub.kernel32.dll_GetLastError
mov r15d, eax
shl r15, 0x20
or r15, 2
mov qword [rbp + 0xff0], 1
mov qword [rbp + 0xff8], r15
mov eax, r15d
and eax, 3
lea rcx, [0x140238328]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov eax, r15d
and eax, 3
add ecx, dword [rax - 0x73]
or eax, 0x12f0ad
movzx eax, byte [r15 + 0x10]
mov rcx, r15
shr rcx, 0x20
and al, ch
test eax, 0xebfffd5d
invalid
mov rax, r15
movzx eax, byte [r15 + 0xf]
mov al, 4
jmp 0x1401092c2
invalid
mov al, 0x28
jmp 0x1401092c2
mov al, 0xc
mov al, 0x19
jmp 0x1401092c2
mov byte [rax - 0x4f7b14f1], dh
add ebp, ebx
jmp 0x1401092c2
mov al, 7
jmp 0x1401092c2
mov al, 1
invalid
jb 0x14010934d
invalid
jmp 0x1401092c2
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
invalid
lea r8, str.library_std_src_syspalwindowspipe.rs
mov rcx, r14
mov rdx, r15
call fcn.14003a410
jmp 0x14010940b
lea r8, str.library_std_src_syspalwindowspipe.rs
mov edx, 0x1000
mov rcx, r15
call fcn.140036a50
ud2
add byte [rax], al
add byte [rbp + 0x41], dl
push rbp
push r14
in al, dx
nop
add byte [rax], al
add byte [rax - 0x73], cl
lea rbp, [rsp + 0x80]
mov rdi, r8
mov dword [rbp - 0x48], eax
add dword [rax], eax
adc dword [rax], eax
add dword [rax], eax
add byte [rax], al
enter 0xffffffffffffe0ff, 0x41
movzx eax, byte [rbp + 0x10]
test byte [rax], al
add byte [rax], al
add byte [rax], al
insd dword [rdi], dx
xor r8b, r13b
add eax, dword [rax]
add byte [rcx + rcx*4 - 0x17], cl
mov rcx, r13
shr ecx, 0x20
shr eax, 0x20
add byte [rax], al
add bh, bh
add byte [rax], al
dec dword [rax - 0x47]
add byte [rax], al
invalid
cmpsb byte [rsi], byte [rdi]
and ch, bl
xchg esi, eax
invalid
xor al, ch
add byte [rax], al
mov ebp, dword [rcx]
dec dword [rax - 0x75]
invalid
invalid
cmp esi, dword [rbp + 0x18]
sbb r8b, r13b
sbb al, 0xcd
int 0xfd
test dword [rcx - 1], 0x75894cc6
sub byte [rcx - 0x2f], cl
in eax, 0x4d
invalid
add byte [rax], al
test dword [rcx - 0x16000004], eax
add r8b, byte [r8]
add al, byte [rax]