Function at 0x10048a040
Capabilities:
Get file attributes
Move file

Disassembly:
push rbp
mov eax, 0x10c8
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
call fcn.10065e270
sub rsp, rax
lea rbp, [rsp + 0x80]
mov r15, rcx
mov rsi, rdx
call sym.vim.exe_vim_fnamecmp
test eax, eax
jne 0x10048a128
mov rax, qword [sym.vim.exe_p_fic]
cmp qword [rax], 0
jne 0x10048a0a0
mov dword [rbp - 0x54], 0
mov eax, dword [rbp - 0x54]
add rsp, 0x10c8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, rsi
call sym.vim.exe_gettail
mov rcx, r15
mov r12, rax
call sym.vim.exe_gettail
mov rdx, r12
mov rcx, rax
call sub.msys_2.0.dll_strcmp
test eax, eax
je 0x10048a081
mov dword [rbp - 0x54], 1
lea rbx, [rbp - 0x50]
mov rcx, r15
mov rdx, rbx
call sub.msys_2.0.dll_stat
test eax, eax
js 0x10048a116
lea r12, [rbp + 0x30]
mov rcx, rsi
mov rdx, r12
call sub.msys_2.0.dll_stat
test eax, eax
js 0x10048a0fb
mov eax, dword [rbp + 0x30]
cmp dword [rbp - 0x50], eax
je 0x10048a330
mov eax, dword [rbp - 0x54]
test eax, eax
je 0x10048a1d8
mov rcx, r15
call sub.msys_2.0.dll_strlen
cmp rax, 0xffa
jbe 0x10048a138
mov dword [rbp - 0x54], 0xffffffff
jmp 0x10048a088
mov dword [rbp - 0x54], 0
jmp 0x10048a0c9
mov r9d, 0x1001
lea r8, [rax + 1]
mov rdx, r15
mov rcx, r12
call fcn.10065e300
mov r13d, 0x7b
lea rdi, [0x1006a3509]
jmp 0x10048a16d
add r13d, 1
cmp r13d, 0x1869f
je 0x10048a116
mov rcx, r12
call sym.vim.exe_gettail
mov rdx, rdi
mov r8d, r13d
mov rcx, rax
call sub.msys_2.0.dll_sprintf
mov rdx, rbx
mov rcx, r12
call sub.msys_2.0.dll_stat
test eax, eax
jns 0x10048a160
mov rdx, r12
mov rcx, r15
call sub.msys_2.0.dll_rename
test eax, eax
jne 0x10048a116
mov rdx, rsi
mov rcx, r12
call sub.msys_2.0.dll_rename
mov dword [rbp - 0x54], eax
test eax, eax
je 0x10048a088
mov rdx, r15
mov rcx, r12
call sub.msys_2.0.dll_rename
mov dword [rbp - 0x54], 0xffffffff
jmp 0x10048a088
mov rcx, rsi
call sub.msys_2.0.dll_unlink
mov rdx, rsi
mov rcx, r15
call sub.msys_2.0.dll_rename
test eax, eax
je 0x10048a081
mov rcx, r15
call sym.vim.exe_mch_getperm
mov rcx, r15
mov rbx, rax
call sym.vim.exe_mch_get_acl
xor r8d, r8d
xor edx, edx
mov rcx, r15
mov qword [rbp - 0x60], rax
call sub.msys_2.0.dll_open
mov r13d, eax
cmp eax, 0xffffffff
je 0x10048a3da
mov r8d, ebx
mov edx, 0x100a01
mov rcx, rsi
call sub.msys_2.0.dll_open
mov r14d, eax
cmp eax, 0xffffffff
je 0x10048a3d2
mov ecx, 0x2000
call sym.vim.exe_alloc
mov r12, rax
test rax, rax
jne 0x10048a26a
jmp 0x10048a3ca
call sub.msys_2.0.dll___errno
cmp dword [rax], 4
jne 0x10048a283
mov r8d, 0x2000
mov rdx, r12
mov ecx, r13d
call sub.msys_2.0.dll_read
mov rbx, rax
test rax, rax
js 0x10048a260
test ebx, ebx
jle 0x10048a343
movsxd rbx, ebx
xor edi, edi
jmp 0x10048a2a4
add rdi, rax
cmp rdi, rbx
jge 0x10048a328
mov r8, rbx
lea rdx, [r12 + rdi]
mov ecx, r14d
sub r8, rdi
call sub.msys_2.0.dll_write
test rax, rax
jns 0x10048a298
call sub.msys_2.0.dll___errno
cmp dword [rax], 4
je 0x10048a29b
lea rcx, str.E208:_Error_writing_to___s_
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, r12
mov rbx, rax
call sym.vim.exe_vim_free
mov ecx, r13d
call sub.msys_2.0.dll_close
mov ecx, r14d
call sub.msys_2.0.dll_close
test eax, eax
js 0x10048a3b6
mov rdi, qword [rbp - 0x60]
mov rcx, rsi
mov rdx, rdi
call sym.vim.exe_mch_set_acl
mov rcx, rdi
call sym.vim.exe_mch_free_acl
test rbx, rbx
jne 0x100661c40
mov rcx, r15
call sub.msys_2.0.dll_unlink
jmp 0x10048a088
je 0x10048a26a
jmp 0x10048a2c5
mov rax, qword [rbp + 0x38]
cmp qword [rbp - 0x48], rax
jne 0x10048a0fb
jmp 0x10048a106
mov rcx, r12
mov dword [rbp - 0x58], ebx
call sym.vim.exe_vim_free
mov ecx, r13d
call sub.msys_2.0.dll_close
mov ecx, r14d
call sub.msys_2.0.dll_close
mov edx, dword [rbp - 0x58]
test eax, eax
js 0x10048a382
test edx, edx
jne 0x10048a39f
mov rdi, qword [rbp - 0x60]
mov rcx, rsi
mov rdx, rdi
call sym.vim.exe_mch_set_acl
mov rcx, rdi
call sym.vim.exe_mch_free_acl
jmp 0x10048a314
lea rcx, str.E209:_Error_closing___s_
mov dword [rbp - 0x58], edx
call sub.msys_intl_8.dll_libintl_gettext
mov edx, dword [rbp - 0x58]
mov rbx, rax
test edx, edx
je 0x10048a2f4
lea rcx, str.E210:_Error_reading___s_
mov rsi, r15
call sub.msys_intl_8.dll_libintl_gettext
mov rbx, rax
jmp 0x10048a2f4
lea rcx, str.E209:_Error_closing___s_
call sub.msys_intl_8.dll_libintl_gettext
mov rbx, rax
jmp 0x10048a2f4
mov ecx, r14d
call sub.msys_2.0.dll_close
mov ecx, r13d
call sub.msys_2.0.dll_close
mov rcx, qword [rbp - 0x60]
call sym.vim.exe_mch_free_acl
jmp 0x10048a116
mov rdx, rsi
mov rcx, rbx
call sym.vim.exe_semsg
mov dword [rbp - 0x54], 0xffffffff
jmp 0x10048a088