Function at 0x180048570
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.180053520
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, [0x18003fa50]
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 0x1800487a6
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call sub.KERNEL32.dll_SleepEx
cmp dword [rbp + 0x1004], 0
je 0x180048620
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 0x1800487de
test r15, r15
je 0x180048777
cmp r15, 0x1000
ja 0x180048967
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 0x18004874c
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call sub.KERNEL32.dll_SleepEx
cmp dword [rbp + 0x1004], 0
je 0x1800486e0
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 0x18004876b
add r14, rax
cmp r14, r15
je 0x180048740
jbe 0x180048690
jmp 0x180048953
mov r14, qword [rbp + 0xfe8]
jmp 0x1800485d1
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.18001c870
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, [0x1800745f8]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
mov eax, r15d
and eax, 3
add ecx, dword [rax - 0x73]
or eax, 0x2be0d
movzx eax, byte [r15 + 0x10]
mov rcx, r15
shr rcx, 0x20
and al, ch
pop rcx
insd dword [rdi], dx
std
invalid
jmp 0x180048832
mov rax, r15
shr rax, 0x20
cmp eax, 0x28
ja 0x1800488ce
mov ch, 0
add byte [rax], al
movzx eax, byte [r15 + 0xf]
mov al, 4
jmp 0x180048832
invalid
mov al, 0x28
jmp 0x180048832
mov al, 0xc
mov al, 0x19
jmp 0x180048832
mov byte [rax - 0x4f7b14f1], dh
add ebp, ebx
jmp 0x180048832
mov al, 7
jmp 0x180048832
mov al, 1
invalid
jb 0x1800488bd
invalid
jmp 0x180048832
invalid
invalid
invalid
mov al, 0x29
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.18000b2b0
jmp 0x18004897b
lea r8, str.library_std_src_syspalwindowspipe.rs
mov edx, 0x1000
mov rcx, r15
call fcn.180009f70
ud2
add byte [rax], al
add byte [rbp + 0x41], dl
push rbp
push r14
mov edi, eax
dec dword [rax - 0x77]
call 0x170526e04
lea rdx, [rbp - 0x58]
or byte [rax - 0x77], r9b
and al, 0x48
invalid
or byte [rax - 0x77], cl
mov r12, qword cs:[rsp + 0x38]
loopne 0x1800504fd
call 0x1a3fd87ca
loopne 0x1800505d1
dec byte [rax - 0x7d]
cli
add dh, byte [rdx + 5]
jle case.0x1800487f2.60
add byte [rsp + rbx + 0x49], dh
cmp dword [rsi + 0x10], 0x11
cmp al, byte [0x1c9d7375c]
mov eax, edi
invalid
add bl, ch
or byte [rax - 0x143a76b8], dl
xor eax, eax
ror byte [rax - 0x3f], cl
invalid
xchg edi, eax
adc dword [rax], eax
add byte [rax - 0x7b], cl
ror byte [rdi], 0x84
mov eax, dword [rax]
xchg byte [rcx + rax - 0x10], cl
and al, 0x40
add dword [rdi], ecx
test byte [rbx - 2], dl
invalid
xor eax, 0x23afb
cmp edi, eax
mov esp, 1
add byte [rax - 0x73], cl
or al, 0
lea ecx, [rax + rax]
cmovb ebp, ebp
mov ecx, 0x48000000
mov ecx, edx
invalid
add byte [rdi], cl
invalid
invalid
mov edx, 3
add byte es:[rax], al
add bl, ch
shr eax, 1
invalid
jle 0x180050f1e
add ecx, edi
test eax, eax
invalid
mov ecx, edx
add byte [rax], al
add byte [rax], al
xor r8d, r8d
jmp fcn.1800502b0
sbb al, 0x8b
adc byte [rax - 0x7d], cl
ret 0x4910
jmp 0x18005127e
or eax, 0x1ba0000
add byte [rax], al
add byte [rcx], dh
test r8, r8
je 0x1800512c1
mov eax, dword [rdx + 0x10]
add rdx, 0x10
add r8, 0xfffffffffffffff0
test rax, rax
je 0x1800512a0
invalid
mov rdx, qword [rdx + 8]
mov r8, rax
jmp fcn.180051c30
mov edx, 1
cmp eax, 0x23467
sub eax, ecx
test byte [rcx - 1], ch
invalid
mov eax, dword [rsi + 0x28]
and al, 0x38
lea eax, [rbx + rbp]
mov edi, edx
add byte [rax], al
mov eax, dword [rsp + 0x38]
mov eax, dword [rsp + 0x60]
add byte [rax], al
add byte [rbx + 0xa086], cl
add bh, dh
ror byte [rcx - 1], 1
invalid
mov eax, edi
lea eax, [rdi + 1]
add cl, al
call 0x1843865b3
mov cl, byte [rcx + rdi - 0x1f]
invalid
loope 0x180052324
cmp eax, 0x48d70148
lea ecx, [0x1800998c8]
jbe 0x1800522be
invalid
jbe 0x1800522be
add byte [rdi], cl
invalid
add byte [rax], al
mov dh, 8
call 0x1843864d9
mov dword [rbp + 0xf], eax
mov dh, 0x48
add dword [rcx + 0x30], eax
rol dword [rbp + 0xf], 0xb6
leave
or byte [rdx + 0x33], al
add al, 0x89
invalid
add bh, dh
ror byte [rcx + 0x48c03106], 1
add esp, 0x78
invalid
js 0x18005235b
pop rsi
and al, 0x2c
and al, 0x70
sub byte [rax + rax], al
add byte [rax], al
invalid
mov dl, 0
add byte [rax], al
add byte [rax + 0xe7], bh
add byte [rax], al
xchg edx, eax
add byte [rax], al