Function at 0x1400ff4e0
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, 0x10b8
call fcn.14014c180
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1020], xmm6
mov qword [rbp + 0x1018], 0xfffffffffffffffe
mov qword [rbp + 0xfe8], rdx
mov r12, rcx
lea r13, [rbp - 0x50]
mov r8d, 0x1000
mov rcx, r13
xor edx, edx
call fcn.14014d670
xorps xmm6, xmm6
lea r14, [rbp + 0xff8]
lea rbx, [0x1400f5ee0]
lea r15, [rbp + 0xfb0]
mov r10, qword [sym.imp.kernel32.dll_ReadFileEx]
lea rsi, [0x1400ffa14]
mov rdi, qword [sym.imp.kernel32.dll_SleepEx]
mov qword [rbp + 0xff0], r12
mov dword [rbp + 0xff8], 0
movaps xmmword [rbp + 0xfb0], xmm6
mov qword [rbp + 0xfc0], 0
mov qword [rbp + 0xfc8], r14
mov qword [rsp + 0x20], rbx
mov rcx, r12
mov rdx, r13
mov r8d, 0x1000
mov r9, r15
call r10
test eax, eax
je 0x1400ff600
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call rdi
cmp dword [rbp + 0xff8], 0
je 0x1400ff5b0
mov ecx, dword [rbp + 0xffc]
test rcx, rcx
je 0x1400ff640
shl rcx, 0x20
or rcx, 2
mov qword [rbp + 0x1010], rcx
mov qword [rbp + 0x1008], 1
mov eax, ecx
and eax, 3
movsxd rax, dword [rsi + rax*4]
add rax, rsi
jmp rax
call qword [sym.imp.kernel32.dll_GetLastError]
mov ecx, eax
shl rcx, 0x20
or rcx, 2
mov qword [rbp + 0x1010], rcx
mov qword [rbp + 0x1008], 1
mov eax, ecx
and eax, 3
movsxd rax, dword [rsi + rax*4]
add rax, rsi
jmp rax
movzx eax, byte [rcx + 0x10]
jmp case.0x1400ff682.0
mov eax, dword [rbp + 0x1000]
mov qword [rbp + 0x1010], rax
mov qword [rbp + 0x1008], 0
jmp 0x1400ff694
shr rcx, 0x20
call fcn.1400e8c30
jmp case.0x1400ff682.0
shr rcx, 0x20
cmp ecx, 0x28
ja case.default.0x1400ff682
xor eax, eax
lea rdx, [0x1400ffa24]
movsxd rcx, dword [rdx + rcx*4]
invalid
or al, 0x8a
add rcx, rdx
jmp rcx
invalid
mov al, 1
jmp case.0x1400ff682.0
movzx eax, byte [rcx + 0xf]
cmp al, 0xb
je 0x1400ff933
mov rax, qword [rbp + 0x1008]
mov qword [rbp + 0xfd0], rax
mov rax, qword [rbp + 0x1010]
mov qword [rbp + 0xfd8], rax
cmp qword [rbp + 0xfd0], 0
jne 0x1400ff925
mov r12, qword [rbp + 0xfd8]
test r12, r12
je 0x1400ff8f1
cmp r12, 0x1000
ja 0x1400ff95f
mov rsi, r13
xor r13d, r13d
nop word cs:[rax + rax]
mov r8d, r12d
sub r8d, r13d
lea rdx, [r13 - 0x50]
add rdx, rbp
mov dword [rbp + 0xff8], 0
movaps xmmword [rbp + 0xfb0], xmm6
mov qword [rbp + 0xfc0], 0
mov qword [rbp + 0xfc8], r14
mov qword [rsp + 0x20], rbx
mov rcx, qword [rbp + 0xfe8]
mov r9, r15
call qword [sym.imp.kernel32.dll_WriteFileEx]
test eax, eax
je 0x1400ff8c5
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call rdi
cmp dword [rbp + 0xff8], 0
je 0x1400ff750
mov eax, dword [rbp + 0xffc]
test rax, rax
jne 0x1400ff8cb
mov eax, dword [rbp + 0x1000]
add r13, rax
cmp r13, r12
je 0x1400ff790
jbe 0x1400ff6f0
jmp 0x1400ff94b
mov r12, qword [rbp + 0xff0]
mov r13, rsi
mov r10, qword [sym.imp.kernel32.dll_ReadFileEx]
xlatb
sbb eax, dword [rsi]
add byte [rax - 0x73], cl
xor eax, 0x26c
insb byte [rdi], dx
add al, byte [rax]
invalid
xlatb
sbb eax, dword [rsi]
add byte [rax - 0x73], cl
xor eax, 0x26c
insb byte [rdi], dx
add al, byte [rax]
invalid
insb byte [rdi], dx
add al, byte [rax]
add cl, ch
mov eax, 0xb0fffffd
invalid
push qword [rax - 0x12716db]
mov al, 0x25
jmp case.0x1400ff682.0
invalid
push qword [rax - 0x12e16dd]
mov al, 0x23
invalid
sar esi, 1
jmp 0x1400ff565
invalid
mov al, 0x25
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x23
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x24
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x1b
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x22
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x10
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0xe
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x21
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0xb
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 4
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x28
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0xc
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 9
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x19
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x18
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 2
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0xf
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 3
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 7
jmp case.0x1400ff682.0
mov al, 0x1f
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x11
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x29
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x14
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 5
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x15
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0xd
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 6
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x12
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0xa
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 8
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x1e
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x20
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x16
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x27
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x13
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x17
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x1c
jmp case.0x1400ff682.0
invalid
invalid
invalid
mov al, 0x1d
jmp case.0x1400ff682.0
mov al, 0x26
jmp case.0x1400ff682.0
mov al, 0x1a
jmp case.0x1400ff682.0
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbp + 0x1010], rax
mov qword [rbp + 0x1008], 1
lea rcx, [rbp + 0x1010]
call fcn.1400e7460
mov rsi, qword [sym.imp.kernel32.dll_CloseHandle]
mov rcx, qword [rbp + 0xff0]
call rsi
mov rcx, qword [rbp + 0xfe8]
call rsi
movaps xmm6, xmmword [rbp + 0x1020]
add rsp, 0x10b8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [rbp + 0xfd8]
call fcn.1400e7460
jmp 0x1400ff8f1
xorps xmm0, xmm0
movaps xmmword [rbp + 0xfd0], xmm0
lea rcx, [rbp + 0x1010]
call fcn.1400e7460
jmp 0x1400ff8f1
lea r8, str.library_std_src_syswindowspipe.rs
mov rcx, r13
mov rdx, r12
call fcn.14015cf00
jmp 0x1400ff973
lea r8, str.library_std_src_syswindowspipe.rs
mov edx, 0x1000
mov rcx, r12
call fcn.14015cc00
ud2