Function at 0x1006155b0
Capabilities:
Get file attributes
Set file attributes

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x418
lea rbp, [rsp + 0x80]
mov rax, qword [sym.vim.exe_msg_scroll]
mov eax, dword [rax]
mov rsi, qword [rcx]
mov dword [rbp + 0x68], eax
mov rax, qword [sym.vim.exe_got_int]
mov r14, rcx
mov rbx, rdx
mov dword [rbp + 0x6c], 0
mov r12, r8
mov r15, r9
mov eax, dword [rax]
mov dword [rbp + 0x5c], eax
cmp r9, 1
jne 0x10061560e
xor eax, eax
cmp rsi, qword [rbp + 0x400]
sete al
mov dword [rbp + 0x6c], eax
mov rcx, r14
call sym.vim.exe_get_bkc_value
mov edi, eax
test rbx, rbx
je 0x1006158d8
cmp byte [rbx], 0
je 0x1006158d8
cmp qword [r14 + 8], 0
je 0x1006158c0
mov rax, qword [r14 + 0x11f0]
mov qword [rbp + 0x30], rax
mov eax, dword [r14 + 0x11f8]
mov dword [rbp + 0x3c], eax
mov eax, dword [r14 + 0x11fc]
mov dword [rbp + 0x60], eax
mov rax, qword [r14 + 0x1210]
mov qword [rbp + 0x48], rax
mov eax, dword [r14 + 0x1218]
mov dword [rbp + 0x58], eax
mov eax, dword [r14 + 0x121c]
mov dword [rbp + 0x40], eax
call sym.vim.exe_check_secure
mov r13d, eax
test eax, eax
jne 0x1006158d8
mov rcx, rbx
call sub.msys_2.0.dll_strlen
cmp rax, 0xfff
ja 0x100615ac0
mov rax, qword [sym.vim.exe_ex_no_reprint]
mov rdx, qword [r14 + 0x88]
mov qword [rbp + 0x160], 0
mov dword [rbp + 0x170], 0
mov qword [rbp + 0x178], 0
mov dword [rbp + 0x154], 0
mov qword [rbp + 0x188], 0xffffffffffffffff
mov qword [rbp + 0x128], r14
mov dword [rbp + 0x130], 0
mov dword [rax], 1
test rdx, rdx
je 0x1006158f8
test r12, r12
je 0x100615bd8
mov rax, qword [sym.vim.exe_curbuf]
mov qword [rbp + 0x50], rax
mov rcx, rbx
call sym.vim.exe_vim_fnamecmp
test eax, eax
sete al
movzx eax, al
mov dword [rbp + 0x38], eax
mov rax, qword [sym.vim.exe_exiting]
mov r10d, dword [rax]
test r10d, r10d
jne 0x100615ab0
mov rax, qword [sym.vim.exe_no_wait_return]
mov rdx, r14
mov qword [r14 + 0x11f0], r15
mov dword [r14 + 0x11f8], 0
add dword [rax], 1
mov rax, qword [rbp + 0x400]
mov dword [r14 + 0x1218], 0
mov qword [r14 + 0x1210], rax
mov rax, qword [r14 + 8]
mov qword [rbp + 0x10], rax
mov rax, qword [r14 + 0x88]
mov qword [rbp + 8], rax
mov rax, qword [r14 + 0x90]
mov qword [rbp], rax
lea rax, [rbp + 0x290]
mov rcx, rax
mov qword [rbp + 0x20], rax
call sym.vim.exe_aucmd_prepbuf
lea rax, [rbp + 0x210]
mov rdx, r14
mov rcx, rax
mov qword [rbp + 0x28], rax
call sym.vim.exe_set_bufref
mov r9d, dword [rbp + 0x410]
test r9d, r9d
jne 0x100615970
mov ecx, dword [rbp + 0x428]
test ecx, ecx
jne 0x100615b68
mov edx, dword [rbp + 0x420]
test edx, edx
je 0x100615ae0
mov eax, dword [rbp + 0x6c]
test eax, eax
je 0x100615ae0
call sym.vim.exe_curbufIsChanged
xor r9d, r9d
mov r8, r12
mov ecx, 0x10
mov rdx, qword [rbp + 0x408]
mov dword [rbp - 4], eax
mov qword [rsp + 0x28], rdx
mov rdx, qword [rbp + 0x50]
mov rax, qword [rdx]
mov rdx, r12
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov dword [rbp + 0x18], eax
test eax, eax
jne 0x100615ba0
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
mov eax, dword [rbp + 0x38]
test eax, eax
je 0x10061584a
call sym.vim.exe_bt_nofilename
test eax, eax
jne 0x100615c60
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
mov rax, qword [rbp + 0x408]
xor r9d, r9d
mov r8, r12
mov rdx, r12
mov qword [rsp + 0x20], rcx
mov ecx, 0x12
mov qword [rsp + 0x28], rax
call sym.vim.exe_apply_autocmds_exarg
nop
mov rcx, qword [rbp + 0x20]
call sym.vim.exe_aucmd_restbuf
mov rcx, qword [rbp + 0x28]
call sym.vim.exe_bufref_valid
test eax, eax
jne 0x1006159f8
mov rax, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rbp + 0x68]
sub dword [rax], 1
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], edi
call sym.vim.exe_aborting
test eax, eax
jne 0x1006158db
mov r8d, dword [rbp + 0x18]
test r8d, r8d
je 0x100615c36
mov r13d, 1
jmp 0x1006158db
mov rcx, qword [sym.vim.exe_e_emptybuf]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
nop dword [rax]
xor r13d, r13d
mov eax, r13d
add rsp, 0x418
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov ecx, dword [rbp + 0x420]
mov rax, qword [sym.vim.exe_curbuf]
test ecx, ecx
je 0x100615950
mov edx, dword [rbp + 0x6c]
mov qword [rbp + 0x50], rax
test edx, edx
je 0x100615954
cmp qword [rax], r14
jne 0x100615954
mov rcx, r14
call sym.vim.exe_bt_nofilename
or eax, dword [rbp + 0x428]
je 0x1006173b7
mov rdx, qword [r14 + 0x88]
test r12, r12
cmove r12, rbx
test rdx, rdx
jne 0x10061570e
mov dword [rbp + 0x38], 0
jmp 0x100615721
mov qword [rbp + 0x50], rax
test r12, r12
mov dword [rbp + 0x38], 0
cmove r12, rbx
jmp 0x100615721
mov rax, qword [rbp + 0x408]
xor r9d, r9d
mov r8, r12
mov rdx, r12
mov ecx, 0x26
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov dword [rbp + 0x18], eax
test eax, eax
jne 0x100615870
mov rax, qword [rbp + 0x50]
mov r8d, dword [rbp + 0x38]
mov rcx, qword [rax]
test r8d, r8d
je 0x1006159ca
call sym.vim.exe_bt_nofilename
test eax, eax
jne 0x100615c60
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
mov rax, qword [rbp + 0x408]
xor r9d, r9d
mov r8, r12
mov rdx, r12
mov qword [rsp + 0x20], rcx
mov ecx, 0x28
mov qword [rsp + 0x28], rax
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100615870
cmp qword [r14 + 8], 0
sete dl
cmp qword [rbp + 0x10], 0
setne al
xor ecx, ecx
test dl, al
jne 0x100615a19
mov eax, dword [rbp + 0x18]
test eax, eax
je 0x100615be0
mov rax, qword [sym.vim.exe_no_wait_return]
mov rdx, qword [sym.vim.exe_cmdmod]
mov eax, dword [rax]
mov edx, dword [rdx]
mov dword [rbp + 0x6c], eax
sub eax, 1
and dh, 8
je 0x100615a74
mov rsi, qword [rbp + 0x30]
mov edi, dword [rbp + 0x3c]
mov qword [r14 + 0x11f0], rsi
mov esi, dword [rbp + 0x60]
mov dword [r14 + 0x11f8], edi
mov rdi, qword [rbp + 0x48]
mov dword [r14 + 0x11fc], esi
mov esi, dword [rbp + 0x58]
mov qword [r14 + 0x1210], rdi
mov edi, dword [rbp + 0x40]
mov dword [r14 + 0x1218], esi
mov dword [r14 + 0x121c], edi
mov rsi, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rbp + 0x68]
mov dword [rsi], eax
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], edi
test ecx, ecx
je 0x1006185c7
lea rcx, str.E676:_No_matching_autocommands_for_acwrite_buffer
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x1006158db
xor ecx, ecx
call sym.vim.exe_settmode
jmp 0x100615734
mov rcx, qword [sym.vim.exe_e_longname]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x1006158db
mov rax, qword [rbp + 0x408]
xor r9d, r9d
mov r8, r12
mov rdx, r12
mov ecx, 0x30
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov dword [rbp + 0x18], eax
test eax, eax
jne 0x100615870
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
mov eax, dword [rbp + 0x38]
test eax, eax
je 0x100615b38
call sym.vim.exe_bt_nofilename
test eax, eax
jne 0x100615c60
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
mov rax, qword [rbp + 0x408]
xor r9d, r9d
mov r8, r12
mov rdx, r12
mov qword [rsp + 0x20], rcx
mov ecx, 0x32
mov qword [rsp + 0x28], rax
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100615870
mov rax, qword [rbp + 0x408]
xor r9d, r9d
mov r8, r12
xor edx, edx
mov ecx, 0x36
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x50]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov dword [rbp + 0x18], 0
jmp 0x100615870
mov eax, dword [rbp - 4]
test eax, eax
je 0x100615870
call sym.vim.exe_curbufIsChanged
test eax, eax
jne 0x100615870
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
call sym.vim.exe_u_unchanged
mov rax, qword [rbp + 0x50]
mov rcx, qword [rax]
call sym.vim.exe_u_update_save_nr
jmp 0x100615870
mov r12, rbx
jmp 0x100615703
mov dword [rbp + 0x10], ecx
call sym.vim.exe_aborting
mov ecx, dword [rbp + 0x10]
test eax, eax
je 0x100615c8b
mov rax, qword [sym.vim.exe_no_wait_return]
mov rdx, qword [sym.vim.exe_cmdmod]
mov eax, dword [rax]
mov edx, dword [rdx]
mov dword [rbp + 0x6c], eax
sub eax, 1
and dh, 8
jne 0x100615a36
mov rdi, qword [sym.vim.exe_no_wait_return]
mov dword [rdi], eax
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rbp + 0x68]
mov dword [rax], edi
call sym.vim.exe_aborting
test eax, eax
jne 0x1006158db
call sym.vim.exe_aborting
test eax, eax
jne 0x1006158db
lea rcx, str.E203:_Autocommands_deleted_or_unloaded_buffer_to_be_written
xor r13d, r13d
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x1006158db
mov rcx, qword [rbp + 0x20]
call sym.vim.exe_aucmd_restbuf
mov rcx, qword [rbp + 0x28]
call sym.vim.exe_bufref_valid
test eax, eax
je 0x100615d83
mov dword [rbp + 0x18], 0
mov ecx, 1
jmp 0x100615a19
mov rax, qword [r14]
cmp rax, rsi
je 0x100615cb1
mov edx, dword [rbp + 0x6c]
test edx, edx
jne 0x100616bc4
cmp rax, rsi
jle 0x100617200
sub rax, rsi
add qword [rbp + 0x400], rax
cmp qword [rbp + 8], rbx
jne 0x100615cbe
mov rbx, qword [r14 + 0x88]
cmp qword [rbp], r12
jne 0x100616a4b
mov r12, qword [r14 + 0x90]
mov qword [rbp + 0x18], r12
mov rax, qword [sym.vim.exe_cmdmod]
mov eax, dword [rax]
test ah, 8
je 0x100615d1f
mov rax, qword [rbp + 0x30]
mov qword [r14 + 0x11f0], rax
mov eax, dword [rbp + 0x3c]
mov dword [r14 + 0x11f8], eax
mov eax, dword [rbp + 0x60]
mov dword [r14 + 0x11fc], eax
mov rax, qword [rbp + 0x48]
mov qword [r14 + 0x1210], rax
mov eax, dword [rbp + 0x58]
mov dword [r14 + 0x1218], eax
mov eax, dword [rbp + 0x40]
mov dword [r14 + 0x121c], eax
call sym.vim.exe_netbeans_active
test eax, eax
je 0x100615d9e
mov rcx, r14
call sym.vim.exe_isNetbeansBuffer
test eax, eax
je 0x100615d9e
mov eax, dword [rbp + 0x6c]
test eax, eax
je 0x100617666
mov eax, dword [r14 + 0xc0]
test eax, eax
jne 0x100615d5c
mov rcx, r14
call sym.vim.exe_isNetbeansModified
mov esi, eax
test eax, eax
je 0x100617747
mov rax, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rbp + 0x68]
mov rcx, r14
sub dword [rax], 1
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], edi
call sym.vim.exe_netbeans_save_buffer
mov r13d, dword [rbp + 0x6c]
jmp 0x1006158db
mov rax, qword [sym.vim.exe_no_wait_return]
mov esi, dword [rbp + 0x68]
sub dword [rax], 1
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], esi
jmp 0x100615a91
mov ecx, 0x6f
call sym.vim.exe_shortmess
mov r8d, eax
mov eax, 1
test r8d, r8d
je 0x100615dc6
mov rax, qword [sym.vim.exe_exiting]
mov eax, dword [rax]
test eax, eax
setne al
movzx eax, al
mov rsi, qword [sym.vim.exe_msg_scroll]
mov dword [rsi], eax
mov eax, dword [rbp + 0x428]
test eax, eax
je 0x100616ce9
mov rax, qword [sym.vim.exe_msg_scroll]
mov ecx, 0x2000
mov dword [rax], 0
call sym.vim.exe_alloc
mov qword [rbp + 0x60], rax
test rax, rax
je 0x100616fcd
mov dword [rbp + 0x3c], 0x2000
lea r13, [rbp + 0x90]
mov rcx, qword [rbp + 0x18]
mov dword [rbp + 0x90], 0
mov qword [rbp + 0x98], 0
mov rdx, r13
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100616bd0
mov esi, dword [rbp + 0xa0]
mov eax, esi
and eax, 0xf000
cmp eax, 0x8000
je 0x100616fe1
cmp eax, 0x4000
je 0x1006175a8
mov rcx, qword [rbp + 0x18]
call sym.vim.exe_mch_nodetype
mov dword [rbp - 0x40], eax
cmp eax, 1
jne 0x1006174e0
mov byte [rbp + 0x58], 0
mov r13d, 1
mov dword [rbp + 0x40], 0
mov qword [rbp + 8], 0xffffffffffffffff
mov qword [rbp - 0x10], 0
mov rax, qword [sym.vim.exe_p_wb]
mov rsi, qword [sym.vim.exe_p_bk]
mov eax, dword [rax]
or eax, dword [rsi]
mov dword [rbp - 0x1c], eax
jne 0x100616a65
mov rax, qword [sym.vim.exe_p_pm]
mov rax, qword [rax]
cmp byte [rax], 0
jne 0x100616a65
mov rax, qword [sym.vim.exe_got_int]
mov dword [rbp + 0x10], 0
mov dword [r14 + 0x108], 1
mov eax, dword [rax]
mov qword [rbp + 0x40], 0
mov dword [rbp + 0x5c], eax
mov rax, qword [sym.vim.exe_got_int]
mov dword [rax], 0
mov esi, dword [rbp + 0x418]
test esi, esi
setne bl
je 0x100616cdd
cmp byte [rbp + 0x58], 0
je 0x100616cdd
mov dword [rbp - 0x2c], 0
test byte [rbp + 8], 0x80
je 0x100617485
movzx eax, byte [rbp + 0x38]
and eax, 1
mov byte [rbp - 0x2e], al
test bl, bl
je 0x100615f4d
test al, al
je 0x100615f4d
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x5a
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
je 0x100617d88
mov rax, qword [r14]
cmp qword [rbp + 0x400], rax
cmovle rax, qword [rbp + 0x400]
mov ebx, dword [rbp + 0x420]
mov qword [rbp + 0x400], rax
add rax, 1
test byte [r14 + 0x20], 1
cmovne r15, rax
test ebx, ebx
mov eax, r13d
setne byte [rbp - 0x20]
movzx esi, byte [rbp - 0x20]
xor eax, 1
test sil, al
je 0x100615f9b
mov r11d, dword [rbp + 0x38]
test r11d, r11d
jne 0x1006172cc
cmp qword [rbp + 0x408], 0
je 0x100615fbb
mov rax, qword [rbp + 0x408]
movsxd rax, dword [rax + 0x8c]
test eax, eax
jne 0x100617349
mov rax, qword [r14 + 0x1b78]
mov qword [rbp - 0x18], 0
mov qword [rbp - 0x38], rax
mov rcx, qword [rbp - 0x38]
call sym.vim.exe_need_conversion
mov dword [rbp - 0x3c], eax
test eax, eax
je 0x100616d33
mov rbx, qword [sym.vim.exe_enc_utf8]
mov r9d, dword [rbx]
test r9d, r9d
jne 0x100616019
mov rax, qword [sym.vim.exe_p_enc]
mov ecx, 7
lea rdi, [0x1006ca279]
mov rdx, qword [rax]
mov rsi, rdx
repe cmpsb byte [rsi], byte [rdi]
seta al
sbb al, 0
test al, al
jne 0x100616d72
mov rcx, qword [rbp - 0x38]
call sym.vim.exe_get_fio_flags
mov edi, eax
mov dword [rbp - 0x24], eax
and edi, 0x1e
mov dword [rbp - 0x44], edi
je 0x100616d4e
test al, 0x16
mov eax, dword [rbp + 0x3c]
je 0x1006177ac
lea ecx, [rax + rax]
movsxd rcx, ecx
mov qword [rbp + 0x168], rcx
call sym.vim.exe_alloc
mov edx, 0
mov dword [rbp - 0x44], 0
test rax, rax
mov qword [rbp + 0x160], rax
mov rax, qword [rbp + 0x18]
cmovne rdx, qword [rbp + 0x400]
mov qword [rbp], rax
mov qword [rbp + 0x400], rdx
mov edx, dword [rbp - 0x3c]
mov dword [rbp + 0x58], 0
mov dword [rbp - 0x48], 0
test edx, edx
movzx edx, byte [rbp - 0x1c]
mov qword [rbp + 0x3e0], r14
sete al
mov qword [rbp + 0x3f8], r15
and edx, 1
mov dword [rbp - 4], r13d
mov r13d, dword [rbp + 0x3c]
or eax, edx
xor eax, 1
mov byte [rbp - 0x2d], al
mov eax, 1
test eax, eax
je 0x100616911
cmp byte [rbp - 0x2d], 0
je 0x100616911
mov dword [rbp + 0x110], 0xffffffff
mov dword [rbp - 8], 1
mov dword [rbp - 0x28], 0xffffffff
mov rax, qword [rbp + 0x60]
cmp qword [rbp + 0x408], 0
mov qword [rbp + 0x118], rax
je 0x100616b8a
mov rax, qword [rbp + 0x408]
mov eax, dword [rax + 0x80]
test eax, eax
je 0x100616b8a
cmp eax, 1
sete al
movzx eax, al
mov dword [rbp + 0x3c], eax
mov rax, qword [rbp + 0x3e0]
mov r15d, dword [rax + 0x1af4]
test r15d, r15d
je 0x100616141
mov r14d, dword [rbp + 0x3c]
test r14d, r14d
je 0x10061630d
xor esi, esi
mov rax, qword [rbp + 0x3f8]
mov qword [rbp + 0x180], rax
mov rax, qword [rbp + 0x3e0]
mov edi, dword [rax + 0x1d70]
test edi, edi
je 0x100616338
mov ebx, dword [rbp + 0x410]
test ebx, ebx
jne 0x1006171a7
cmp byte [rbp - 0x2e], 0
je 0x1006171a7
mov r11d, dword [rbp + 0x428]
test r11d, r11d
jne 0x100616338
mov rax, qword [rbp + 0x3e0]
mov rcx, qword [rax + 0x23f8]
test rcx, rcx
je 0x100617865
call sym.vim.exe_crypt_works_inplace
test eax, eax
jne 0x100617897
mov rax, qword [rbp + 0x3e0]
cmp dword [rax + 0x1d70], 0
je 0x100616338
mov eax, dword [rbp - 8]
mov dword [rbp + 0x58], eax
test eax, eax
jne 0x100616338
mov rax, qword [rbp + 0x3e0]
mov rcx, qword [rax + 0x23f8]
test rcx, rcx
je 0x100616338
call sym.vim.exe_crypt_works_inplace
test eax, eax
je 0x1006171ee
mov r10d, dword [rbp + 0x58]
test r10d, r10d
je 0x100616338
lea rcx, [rbp + 0x190]
call sym.vim.exe_sha256_start
mov eax, dword [rbp - 0x24]
mov rdx, qword [rbp + 0x408]
mov dword [rbp + 0x120], r13d
mov rcx, qword [rbp + 0x3e0]
mov dword [rbp + 0x124], eax
call sym.vim.exe_get_fileformat_force
mov edi, eax
mov rax, qword [rbp + 0x400]
cmp qword [rbp + 0x3f8], rax
jg 0x100617dcf
lea rax, [rbp + 0x190]
mov rbx, qword [rbp + 0x3f8]
mov r10, qword [rbp + 0x60]
xor r12d, r12d
mov qword [rbp + 0x30], rax
lea r15, [rbp + 0x110]
nop word [rax + rax]
mov rcx, qword [rbp + 0x3e0]
xor r8d, r8d
mov rdx, rbx
mov qword [rbp + 0x48], r10
call sym.vim.exe_ml_get_buf
mov r9d, dword [rbp + 0x58]
mov r10, qword [rbp + 0x48]
mov r14, rax
test r9d, r9d
je 0x1006162e1
jmp 0x100616860
mov r8d, dword [rbp + 0x110]
test r8d, r8d
jle 0x1006162b9
cmp rbx, qword [rbp + 0x400]
je 0x100616358
mov rcx, r15
call fcn.100614f20
test eax, eax
je 0x100616888
mov qword [rbp + 0x180], rbx
movsxd rdx, r12d
mov r10, qword [rbp + 0x60]
xor r12d, r12d
add rsi, rdx
add r14, 1
movzx eax, byte [r14]
test al, al
je 0x1006163a8
cmp al, 0xa
je 0x100616348
cmp al, 0xd
jne 0x100616350
cmp edi, 2
jne 0x100616350
mov byte [r10], 0xa
add r12d, 1
cmp r13d, r12d
je 0x1006162a0
add r10, 1
jmp 0x1006162dd
mov r12d, dword [rbp + 0x410]
test r12d, r12d
je 0x1006175ea
cmp qword [rbp + 8], 0
js 0x1006175ea
mov rax, qword [rbp + 0x3f8]
xor esi, esi
mov qword [rbp + 0x180], rax
mov dword [rbp + 0x58], 0
jmp 0x100616211
mov byte [r10], 0
jmp 0x1006162fe
mov byte [r10], al
jmp 0x1006162fe
test byte [rbp + 0x125], 0x10
je 0x1006162b9
mov rax, qword [rbp + 0x3e0]
mov rax, qword [rax + 0x1c00]
cmp byte [rax], 0
je 0x1006162b9
mov ecx, dword [rbp + 0x428]
test ecx, ecx
jne 0x1006162b9
cmp byte [r14], 0
jne 0x1006162b9
mov dword [rbp + 0x130], 1
jmp 0x1006162b9
cmp qword [rbp + 0x400], 0
je 0x1006184e3
cmp rbx, qword [rbp + 0x400]
je 0x100616800
lea rax, [r10 + 1]
lea edx, [r12 + 1]
test edi, edi
jne 0x1006167e0
mov byte [r10], 0xa
mov r12d, edx
mov r10, rax
cmp r12d, r13d
je 0x1006168a0
add rbx, 1
cmp rbx, qword [rbp + 0x400]
jle 0x100616270
test r12d, r12d
setg al
cmp qword [rbp + 0x400], 0
setg dl
and eax, edx
movzx r15d, byte [rbp - 8]
xor r15d, 1
test al, al
je 0x1006170a0
mov r14d, dword [rbp + 0x110]
mov dword [rbp + 0x120], r12d
test r14d, r14d
jle 0x10061643c
cmp qword [rbp + 0x400], rbx
jle 0x10061741d
lea rcx, [rbp + 0x110]
call fcn.100614f20
test eax, eax
jne 0x100617249
movsxd r9, r12d
mov dword [rbp + 0x3c], edi
mov r13d, dword [rbp - 4]
add rsi, r9
mov r14, qword [rbp + 0x3e0]
mov r15, qword [rbp + 0x3f8]
mov r12, rsi
mov qword [rbp + 0x400], 0
cmp dword [rbp - 8], 0
jne 0x100618722
mov rax, qword [sym.vim.exe_p_fs]
xor edi, edi
cmp dword [rax], 0
jne 0x1006184fd
cmp qword [rbp + 0x40], 0
je 0x1006184ea
test byte [rbp + 0x10], 1
jne 0x1006184ea
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp]
call sub.msys_2.0.dll_stat
test eax, eax
js 0x1006164cb
mov rax, qword [rbp + 0xa8]
cmp qword [rbp + 0x228], rax
je 0x10061650a
mov esi, dword [rbp - 0x28]
mov edx, dword [rbp + 0xa8]
or r8d, 0xffffffff
mov ecx, esi
call sub.msys_2.0.dll_fchown
mov rdx, qword [sym.vim.exe_vim_ignored]
mov r8d, dword [rbp + 0xac]
mov ecx, esi
mov dword [rdx], eax
or edx, 0xffffffff
call sub.msys_2.0.dll_fchown
add eax, 1
jne 0x10061650a
cmp qword [rbp + 8], 0
jle 0x10061650a
and qword [rbp + 8], 0xffffffffffffffc7
mov rcx, r14
call sym.vim.exe_buf_setino
cmp dword [rbp - 0x2c], 0
je 0x100616520
and qword [rbp + 8], 0xffffffffffffff7f
mov rax, qword [rbp + 8]
test rax, rax
js 0x100616534
mov ecx, dword [rbp - 0x28]
mov rdx, rax
call sym.vim.exe_mch_fsetperm
mov ecx, dword [rbp - 0x28]
call sub.msys_2.0.dll_close
test eax, eax
jne 0x100618b34
cmp dword [rbp + 0x10], 0
je 0x1006187eb
mov rcx, qword [r14 + 0x23f8]
test rcx, rcx
je 0x10061656a
call sym.vim.exe_crypt_free_state
mov qword [r14 + 0x23f8], 0
mov rsi, qword [rbp]
cmp qword [rbp + 0x18], rsi
je 0x1006165d9
cmp qword [rbp + 0x400], 0
je 0x1006165c5
mov rax, qword [sym.vim.exe_enc_utf8]
lea rcx, [0x1006c9f2d]
cmp dword [rax], 0
jne 0x10061659b
mov rax, qword [sym.vim.exe_p_enc]
mov rcx, qword [rax]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp]
mov rdx, qword [rbp - 0x38]
call sym.vim.exe_eval_charconvert
test eax, eax
jne 0x1006165c5
mov dword [rbp + 0x170], 1
mov qword [rbp + 0x400], 0
mov rsi, qword [rbp]
mov rcx, rsi
call sub.msys_2.0.dll_unlink
mov rcx, rsi
call sym.vim.exe_vim_free
cmp qword [rbp + 0x400], 0
jne 0x100618228
xor esi, esi
test rdi, rdi
je 0x100618722
cmp qword [rbp + 0x40], 0
je 0x1006181e3
cmp dword [rbp + 0x10], 0
je 0x100618551
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
test eax, eax
jne 0x100618533
mov rcx, qword [rbp + 0x40]
xor r8d, r8d
xor edx, edx
call sub.msys_2.0.dll_open
mov r12d, eax
test eax, eax
jns 0x100618a12
mov qword [rbp + 0x400], 0
mov r13d, dword [rbp + 0x10]
xor r12d, r12d
mov rax, qword [sym.vim.exe_no_wait_return]
sub dword [rax], 1
mov dword [r14 + 0x108], 0
mov rcx, qword [rbp + 0x40]
call sym.vim.exe_vim_free
mov rax, qword [rbp + 0x60]
mov rbx, qword [rbp + 0x20]
cmp rax, rbx
je 0x100616676
mov rcx, rax
call sym.vim.exe_vim_free
mov rcx, qword [rbp - 0x18]
call sym.vim.exe_vim_free
mov rcx, qword [rbp + 0x160]
call sym.vim.exe_vim_free
mov rcx, qword [rbp + 0x188]
cmp rcx, 0xffffffffffffffff
je 0x1006166a8
call sub.msys_iconv_2.dll_libiconv_close
mov qword [rbp + 0x188], 0xffffffffffffffff
mov rcx, qword [rbp - 0x10]
call sym.vim.exe_mch_free_acl
test rdi, rdi
je 0x100616ca0
mov rax, qword [sym.vim.exe_highlight_attr]
mov eax, dword [rax + 0x10]
mov dword [rbp + 0x60], eax
test r12, r12
je 0x100617152
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rdx, qword [rbp + 0x18]
mov rcx, r14
mov rbx, rax
call sym.vim.exe_msg_add_fname
mov rax, qword [sym.vim.exe_IObuff]
movsxd rbx, ebx
mov r13, qword [rax]
mov qword [rbp + 0x48], rax
mov rcx, r13
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov r15, rax
call sub.msys_2.0.dll_strlen
lea rcx, [r15 + rax]
add rcx, rbx
cmp rcx, 0x400
jbe 0x100616741
mov ecx, 0x400
sub rcx, rax
mov rax, rcx
sub rax, rbx
mov byte [r13 + rax], 0
mov rax, qword [rbp + 0x48]
mov r13, qword [rax]
mov rcx, r13
call sub.msys_2.0.dll_strlen
mov r15, rax
lea r8, [r15 + 1]
lea rcx, [r13 + rbx]
mov rdx, r13
call sub.msys_2.0.dll_memmove
mov r15, qword [rbp + 0x48]
mov rdx, r12
mov r8, rbx
mov rcx, qword [r15]
call sub.msys_2.0.dll_memcpy
mov r12, qword [r15]
mov rcx, r12
mov rdx, rdi
call fcn.10065eb30
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
call sym.vim.exe_emsg
test esi, esi
jne 0x100617145
cmp qword [rbp + 0x400], 0
je 0x1006170bf
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rbp + 0x68]
xor r13d, r13d
mov dword [rax], edi
mov ecx, r13d
call sym.vim.exe_should_abort
test eax, eax
je 0x100616bfd
mov rax, qword [rbp + 0x50]
mov rsi, qword [sym.vim.exe_got_int]
mov rax, qword [rax]
mov dword [rax + 0x1220], 1
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
or eax, dword [rbp + 0x5c]
mov dword [rsi], eax
jmp 0x1006158db
mov byte [r10], 0xd
cmp edi, 1
je 0x1006168f8
mov r12d, edx
mov r10, rax
jmp 0x1006163de
mov edx, dword [rbp + 0x3c]
mov rax, qword [rbp + 0x3e0]
test edx, edx
je 0x1006168e0
cmp qword [rax + 0x1e20], rbx
je 0x100617dbc
mov rax, qword [rbp + 0x3e0]
cmp qword [rax], rbx
jne 0x1006163c3
mov eax, dword [rax + 0x1b60]
test eax, eax
jne 0x1006163c3
test r12d, r12d
setg al
cmp qword [rbp + 0x400], 0
setg dl
and eax, edx
mov dword [rbp - 0x48], 1
add rbx, 1
jmp 0x10061640b
mov rcx, rax
call sub.msys_2.0.dll_strlen
mov rcx, qword [rbp + 0x30]
mov rdx, r14
lea r8d, [rax + 1]
call sym.vim.exe_sha256_update
mov r10, qword [rbp + 0x48]
jmp 0x1006162e1
mov qword [rbp + 0x400], 0
xor eax, eax
jmp 0x100616850
mov rcx, r15
call fcn.100614f20
test eax, eax
je 0x10061739a
movsxd r9, r12d
add rsi, r9
call sym.vim.exe_ui_breakcheck
mov rax, qword [sym.vim.exe_got_int]
mov r12d, dword [rax]
test r12d, r12d
jne 0x10061739a
mov r10, qword [rbp + 0x60]
jmp 0x1006163e7
mov eax, dword [rax + 0x1b64]
test eax, eax
je 0x10061681f
jmp 0x1006163c3
cmp r13d, edx
je 0x100616b9f
add r12d, 2
mov byte [rax], 0xa
lea r10, [rax + 1]
jmp 0x1006163de
mov r12, qword [rbp]
mov rbx, qword [rbp + 8]
xor edi, edi
mov esi, 0x1b6
mov r15d, 1
mov r8, rbx
mov eax, dword [rbp + 0x410]
mov edx, 0x201
and r8d, 0x1ff
cmp rbx, 0xffffffffffffffff
cmove r8, rsi
test eax, eax
je 0x10061695c
cmp dword [rbp + 0x418], 1
sbb edx, edx
and edx, 0xfffffe00
add edx, 0x209
mov rcx, r12
call sub.msys_2.0.dll_open
test eax, eax
jns 0x100617cdc
test rdi, rdi
jne 0x100616aee
mov eax, dword [rbp - 4]
test eax, eax
jne 0x10061698a
cmp word [rbp + 0xa4], 1
ja 0x10061778d
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
call sub.msys_2.0.dll_lstat
test eax, eax
jne 0x1006169c1
mov eax, dword [rbp + 0x90]
cmp dword [rbp + 0x210], eax
jne 0x10061778d
mov rax, qword [rbp + 0x98]
cmp qword [rbp + 0x218], rax
jne 0x10061778d
lea rcx, str.E212:_Cant_open_file_for_writing
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
mov eax, dword [rbp + 0x418]
test eax, eax
je 0x100616aee
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x57
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
jne 0x100616aee
cmp rbx, 0xffffffffffffffff
je 0x100616aee
mov eax, dword [rbp - 0x2c]
test bl, 0x80
mov r14d, dword [rbp + 0xa8]
cmove eax, r15d
mov dword [rbp - 0x2c], eax
call sub.msys_2.0.dll_getuid
cmp r14d, eax
je 0x10061732c
and ebx, 0x1ff
or bl, 0x80
mov eax, dword [rbp + 0x410]
test eax, eax
jne 0x100616926
mov rcx, r12
call sub.msys_2.0.dll_unlink
jmp 0x100616926
cmp qword [rbp + 8], r12
jne 0x100615ccf
mov rax, qword [r14 + 0x88]
mov qword [rbp + 0x18], rax
jmp 0x100615cd3
mov rax, qword [sym.vim.exe_p_bsk]
mov dword [rbp - 0x1c], 1
mov rcx, qword [rax]
cmp byte [rcx], 0
jne 0x100617264
mov rax, qword [sym.vim.exe_got_int]
mov ebx, dword [rbp + 0x410]
mov dword [r14 + 0x108], 1
mov eax, dword [rax]
mov dword [rbp + 0x5c], eax
mov rax, qword [sym.vim.exe_got_int]
mov dword [rax], 0
test ebx, ebx
je 0x100616dff
mov rax, qword [sym.vim.exe_p_pm]
mov rax, qword [rax]
cmp byte [rax], 0
je 0x100616ada
mov eax, dword [rbp + 0x428]
test eax, eax
sete al
test byte [rbp + 0x58], al
je 0x100616ada
test byte [rbp - 0x1c], 1
jne 0x100617cd0
mov dword [rbp + 0x10], 0
mov qword [rbp + 0x40], 0
jmp 0x100615ef2
mov r13d, dword [rbp - 4]
mov r14, qword [rbp + 0x3e0]
cmp qword [rbp + 0x40], 0
je 0x100616d04
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp]
cmp rcx, rax
jne 0x100616d04
mov eax, dword [rbp + 0x10]
test eax, eax
je 0x1006172ba
mov rdx, qword [rbp + 0x28]
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100617daa
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100616b4b
mov rcx, qword [rbp + 0x40]
call sub.msys_2.0.dll_unlink
xor esi, esi
xor r12d, r12d
test r13d, r13d
jne 0x100616643
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
xor r12d, r12d
xor esi, esi
mov r13d, 1
call sub.msys_2.0.dll_stat
test eax, eax
mov rax, r12
cmovns rax, qword [rbp + 0x400]
mov qword [rbp + 0x400], rax
jmp 0x100616643
mov rax, qword [rbp + 0x3e0]
mov eax, dword [rax + 0x1af0]
mov dword [rbp + 0x3c], eax
jmp 0x100616121
mov rcx, r15
call fcn.100614f20
test eax, eax
je 0x10061739a
movsxd rax, r13d
mov r12d, 1
add rsi, rax
mov rax, qword [rbp + 0x60]
jmp 0x100616905
mov qword [rbp + 0x400], rax
jmp 0x100615cb1
mov byte [rbp + 0x58], 0
mov r13d, 1
mov dword [rbp + 0x40], 0
mov dword [rbp - 0x40], 0
mov qword [rbp + 8], 0xffffffffffffffff
mov qword [rbp - 0x10], 0
jmp 0x100615e91
mov rax, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x28]
mov rdx, r14
mov rax, qword [rax]
mov qword [rax + 0x1e20], 0
call sym.vim.exe_aucmd_prepbuf
mov ebx, dword [rbp + 0x410]
test ebx, ebx
jne 0x100617369
mov rax, qword [rbp + 0x50]
mov r11d, dword [rbp + 0x428]
mov rax, qword [rax]
test r11d, r11d
jne 0x100617555
mov r10d, dword [rbp + 0x420]
test r10d, r10d
je 0x10061757e
mov r9d, dword [rbp + 0x6c]
test r9d, r9d
je 0x10061757e
mov rdi, qword [rbp + 0x408]
mov rdx, qword [rbp + 0x18]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov ecx, 0x11
mov qword [rsp + 0x28], rdi
mov r8, rdx
call sym.vim.exe_apply_autocmds_exarg
mov rcx, qword [rbp + 0x28]
call sym.vim.exe_aucmd_restbuf
call sym.vim.exe_aborting
test eax, eax
mov eax, 0
cmovne r13d, eax
jmp 0x1006167b3
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rbp + 0x68]
mov dword [rax], edi
test dword [rbp + 0x58], r13d
je 0x1006167a3
mov rdi, qword [rbp + 0x28]
lea rcx, [rbp + 0x190]
mov rdx, rdi
call sym.vim.exe_sha256_finish
mov r9, rdi
mov r8, r14
xor edx, edx
xor ecx, ecx
call sym.vim.exe_u_write_undo
jmp 0x1006167a3
mov dword [rbp - 0x2c], 0
jmp 0x100615f1e
mov rdx, qword [rbp + 0x18]
xor r9d, r9d
lea r8, [0x1006ca06f]
mov rcx, r14
call sym.vim.exe_filemess
jmp 0x100615ddd
test r13d, r13d
je 0x10061745d
mov rax, qword [rbp]
cmp qword [rbp + 0x18], rax
je 0x100618516
mov rcx, rax
xor esi, esi
mov r13d, 1
xor r12d, r12d
call sym.vim.exe_vim_free
jmp 0x100616643
mov rax, qword [rbp + 0x18]
mov dword [rbp - 0x24], 0
mov dword [rbp - 0x44], 0
mov qword [rbp], rax
jmp 0x10061607d
mov r8d, dword [rbp - 0x24]
test r8d, r8d
jne 0x100618526
mov ecx, dword [rbx]
lea rdx, [0x1006c9f2d]
test ecx, ecx
jne 0x100616d72
mov rax, qword [sym.vim.exe_p_enc]
mov rdx, qword [rax]
mov rcx, qword [rbp - 0x38]
call sym.vim.exe_my_iconv_open
mov qword [rbp + 0x188], rax
cmp rax, 0xffffffffffffffff
je 0x10061727f
mov eax, dword [rbp + 0x3c]
lea ecx, [rax*8]
movsxd rcx, ecx
mov qword [rbp + 0x168], rcx
call sym.vim.exe_alloc
mov dword [rbp + 0x158], 1
test rax, rax
mov qword [rbp + 0x160], rax
mov eax, 0
cmovne rax, qword [rbp + 0x400]
mov qword [rbp + 0x400], rax
mov rax, qword [rbp + 0x18]
mov qword [rbp], rax
mov eax, 1
cmp qword [rbp + 0x188], 0xffffffffffffffff
jne 0x100616dec
test al, al
jne 0x10061729a
mov dword [rbp - 0x24], 0
mov dword [rbp - 0x44], 0
jmp 0x10061607d
mov r11d, dword [rbp + 0x428]
test r11d, r11d
sete al
test byte [rbp + 0x58], al
je 0x100616ada
test byte [rbp - 0x1c], 1
je 0x100616ada
mov dword [rbp + 0x10], 1
test dil, 1
je 0x100617b87
test dil, 0x18
jne 0x100617afd
mov rax, qword [sym.vim.exe_p_bex]
mov r10d, dword [rbp + 0x10]
mov rsi, qword [rax]
lea rax, str..bak
cmp byte [rsi], 0
cmove rsi, rax
test r10d, r10d
jne 0x10061791b
mov ecx, dword [rbp + 0x40]
test ecx, ecx
jne 0x1006178b9
mov rax, qword [sym.vim.exe_p_bdir]
mov rdi, qword [sym.vim.exe_IObuff]
mov rax, qword [rax]
mov qword [rbp + 0x48], rdi
lea rdi, [0x1006ca165]
mov qword [rbp + 0x210], rax
cmp byte [rax], 0
je 0x100617534
mov dword [rbp + 0x30], r13d
mov r12, qword [rbp + 0x48]
mov qword [rbp + 0x3f8], r15
mov r13, qword [rbp + 0x18]
mov qword [rbp + 0x3e0], r14
mov r15, qword [rbp + 0x28]
jmp 0x100616f1d
mov rdx, rcx
mov rcx, r13
call sym.vim.exe_get_file_in_dir
mov rbx, rax
test rax, rax
je 0x100616f0d
mov rax, qword [rbp + 0x3e0]
mov ecx, 1
mov edx, dword [rax + 0x1c60]
test edx, edx
jne 0x100616eeb
xor ecx, ecx
cmp dword [rax + 0x1ea8], 0
setne cl
xor r9d, r9d
mov r8, rsi
mov rdx, rbx
call sym.vim.exe_buf_modname
mov rcx, rbx
mov r14, rax
call sym.vim.exe_vim_free
test r14, r14
jne 0x100616f9c
mov rax, qword [rbp + 0x210]
cmp byte [rax], 0
je 0x100617522
mov rdx, qword [r12]
mov r9, rdi
mov r8d, 0x401
mov rcx, r15
call sym.vim.exe_copy_option_part
mov r14, qword [r12]
mov rcx, r14
call sub.msys_2.0.dll_strlen
mov rcx, r14
lea rbx, [r14 + rax]
mov rdx, rbx
call sym.vim.exe_after_pathsep
mov rcx, qword [r12]
test eax, eax
je 0x100616eb6
movzx eax, byte [rbx - 2]
cmp byte [rbx - 1], al
jne 0x100616eb6
mov rdx, r13
call sym.vim.exe_make_percent_swname
mov rbx, rax
test rax, rax
je 0x1006177f9
xor r8d, r8d
mov rcx, rax
mov rdx, rsi
call sym.vim.exe_modname
mov rcx, rbx
mov r14, rax
call sym.vim.exe_vim_free
test r14, r14
je 0x1006177f9
mov rax, qword [sym.vim.exe_p_bk]
mov eax, dword [rax]
test eax, eax
je 0x100617032
mov rdx, r14
mov rcx, r13
call sym.vim.exe_vim_rename
test eax, eax
je 0x100617d6d
mov rcx, r14
call sym.vim.exe_vim_free
jmp 0x100616f0d
mov rax, qword [rbp + 0x20]
mov dword [rbp + 0x3c], 0x100
mov qword [rbp + 0x60], rax
jmp 0x100615e08
mov rcx, qword [rbp + 0x18]
mov edx, esi
call sym.vim.exe_check_file_readonly
mov ecx, dword [rbp + 0x418]
mov dword [rbp + 0x40], eax
test ecx, ecx
jne 0x100617001
test eax, eax
jne 0x100617802
mov eax, dword [rbp + 0x38]
test eax, eax
jne 0x1006176b0
mov rcx, qword [rbp + 0x18]
mov eax, esi
xor r13d, r13d
mov qword [rbp + 8], rax
call sym.vim.exe_mch_get_acl
mov dword [rbp - 0x40], 0
mov qword [rbp - 0x10], rax
mov byte [rbp + 0x58], 1
jmp 0x100615e91
mov rcx, r14
call sym.vim.exe_mch_getperm
test rax, rax
js 0x100616fad
mov rcx, r14
call sub.msys_2.0.dll_strlen
mov rcx, rsi
mov rbx, rax
call sub.msys_2.0.dll_strlen
mov r9, rax
lea rax, [rbx - 1]
sub rax, r9
add rax, r14
cmovb rax, r14
mov byte [rax], 0x7a
mov rbx, rax
jmp 0x10061707b
movzx eax, byte [rbx]
sub eax, 1
mov byte [rbx], al
cmp al, 0x61
jbe 0x100617088
mov rcx, r14
call sym.vim.exe_mch_getperm
test rax, rax
jns 0x10061706f
cmp byte [rbx], 0x61
jne 0x100616fad
jmp 0x100616fc0
cmp qword [rbp + 0x400], 0
mov eax, r15d
sete dl
or eax, edx
test al, al
jne 0x1006181fc
xor eax, eax
jmp 0x1006160bd
mov r13d, dword [rbp + 0x60]
lea rcx, str._nWARNING:_Original_file_may_be_lost_or_damaged_n
lea r12, [rbp + 0x90]
call sub.msys_intl_8.dll_libintl_gettext
or r13d, 0x1000
mov rcx, rax
mov edx, r13d
call sym.vim.exe_msg_puts_attr
lea rcx, str.dont_quit_the_editor_until_the_file_is_successfully_written_
call sub.msys_intl_8.dll_libintl_gettext
mov edx, r13d
mov rcx, rax
call sym.vim.exe_msg_puts_attr
mov rdi, qword [rbp + 0x18]
mov rdx, r12
mov rcx, rdi
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100616794
mov r8, rdi
mov rdx, r12
mov rcx, r14
call sym.vim.exe_buf_store_time
mov rax, qword [r14 + 0x130]
mov qword [r14 + 0x140], rax
mov rax, qword [r14 + 0x138]
mov qword [r14 + 0x148], rax
jmp 0x100616794
mov rcx, rdi
call sym.vim.exe_vim_free
jmp 0x100616786
mov rdx, qword [rbp + 0x18]
mov rcx, r14
call sym.vim.exe_msg_add_fname
mov rax, qword [sym.vim.exe_IObuff]
mov r12, qword [rax]
mov qword [rbp + 0x48], rax
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov rbx, rax
call sub.msys_2.0.dll_strlen
add rbx, rax
cmp rbx, 0x400
jbe 0x100616767
sub r12, rax
mov rax, qword [rbp + 0x48]
mov byte [r12 + 0x400], 0
mov r12, qword [rax]
jmp 0x100616767
mov edx, dword [rbp + 0x38]
test edx, edx
je 0x100616338
mov eax, dword [rbp + 0x428]
or eax, dword [rbp + 0x410]
or eax, dword [rbp - 8]
jne 0x100616338
mov rax, qword [rbp + 0x3e0]
mov rcx, qword [rax + 0x23f8]
test rcx, rcx
je 0x100616338
call sym.vim.exe_crypt_works_inplace
mov dword [rbp + 0x58], eax
test eax, eax
jne 0x100616338
mov rcx, qword [rbp + 0x3e0]
call sym.vim.exe_u_undofile_reset_and_delete
jmp 0x1006161f8
sub rsi, rax
sub qword [rbp + 0x400], rsi
cmp r15, qword [rbp + 0x400]
jle 0x100615cb1
mov rax, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rbp + 0x68]
lea rcx, str.E204:_Autocommand_changed_number_of_lines_in_unexpected_way
xor r13d, r13d
sub dword [rax], 1
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], edi
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x1006158db
cmp qword [rbp + 0x400], 0
mov eax, r15d
movsxd r9, r12d
sete dl
add rsi, r9
or eax, edx
jmp 0x1006170b0
mov r8, rbx
mov rdx, r12
call sym.vim.exe_match_file_list
test eax, eax
sete al
movzx eax, al
mov dword [rbp - 0x1c], eax
jmp 0x100616a7f
mov rax, qword [sym.vim.exe_p_ccv]
mov rdi, qword [rbp + 0x18]
mov rax, qword [rax]
mov qword [rbp], rdi
cmp byte [rax], 0
jne 0x1006177bb
cmp dword [rbp + 0x418], 0
je 0x1006185ac
mov dword [rbp - 0x24], 0
mov dword [rbp - 0x44], 1
jmp 0x10061607d
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x40]
call sym.vim.exe_vim_rename
jmp 0x100616b4b
mov rax, qword [sym.vim.exe_exiting]
mov r10d, dword [rax]
test r10d, r10d
je 0x1006172e6
cmp qword [rbp + 0x40], 0
jne 0x100615f9b
xor edx, edx
mov rcx, r14
call sym.vim.exe_ml_preserve
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
test eax, eax
je 0x100615f9b
mov rcx, qword [sym.vim.exe_e_interr]
call sub.msys_intl_8.dll_libintl_gettext
mov dword [rbp + 0x58], 0
mov qword [rbp - 0x18], 0
mov rdi, rax
mov qword [rbp], 0
jmp 0x100616af9
mov r14d, dword [rbp + 0xac]
call sub.msys_2.0.dll_getgid
cmp r14d, eax
jne 0x100616a27
or bl, 0x80
jmp 0x100616a30
mov rdi, qword [rbp + 0x408]
add rax, qword [rdi + 0x10]
mov rcx, rax
call sym.vim.exe_enc_canonize
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x18], rax
jmp 0x100615fce
mov rax, qword [rbp + 0x408]
mov rdx, qword [rbp + 0x18]
xor r9d, r9d
mov ecx, 0x27
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x50]
mov r8, rdx
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100616c82
mov dword [rbp + 0x3c], edi
mov r13d, dword [rbp - 4]
mov r12, rsi
mov r14, qword [rbp + 0x3e0]
mov r15, qword [rbp + 0x3f8]
jmp 0x10061646e
mov r11d, dword [rbp + 0x410]
mov r8, qword [sym.vim.exe_p_cpo]
test r11d, r11d
je 0x1006173e8
mov rcx, qword [r8]
mov edx, 0x50
mov qword [rbp + 0x28], r8
call sym.vim.exe_vim_strchr
mov r8, qword [rbp + 0x28]
test rax, rax
je 0x10061592d
mov rcx, qword [r8]
mov edx, 0x46
call sym.vim.exe_vim_strchr
test rax, rax
je 0x10061592d
mov rdx, r12
mov rcx, rbx
call sym.vim.exe_set_rw_fname
test eax, eax
je 0x1006158d8
mov rax, qword [rbp + 0x50]
mov r14, qword [rax]
jmp 0x10061592d
test byte [rbp + 0x125], 0x10
je 0x10061643c
mov rax, qword [rbp + 0x3e0]
mov rax, qword [rax + 0x1c00]
cmp byte [rax], 0
je 0x10061643c
cmp dword [rbp + 0x428], 0
jne 0x10061643c
mov dword [rbp + 0x130], 1
jmp 0x10061643c
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
call sub.msys_2.0.dll_stat
test eax, eax
mov eax, 0
cmovns rax, qword [rbp + 0x400]
mov qword [rbp + 0x400], rax
jmp 0x100616d0d
mov esi, dword [rbp + 0xa8]
call sub.msys_2.0.dll_getuid
cmp esi, eax
jne 0x100615f1e
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x57
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
jne 0x100615f1e
or qword [rbp + 8], 0x80
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x18]
mov rdx, rax
call sym.vim.exe_mch_setperm
mov dword [rbp - 0x2c], 1
jmp 0x100615f1e
lea rcx, str.is_not_a_file_or_writable_device
xor esi, esi
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
lea r12, str.E503:
mov dword [rbp + 0x58], 0
mov qword [rbp - 0x10], 0
mov rdi, rax
mov qword [rbp - 0x18], 0
mov qword [rbp + 0x40], 0
jmp 0x100616643
mov r13d, dword [rbp + 0x30]
mov r14, qword [rbp + 0x3e0]
mov r15, qword [rbp + 0x3f8]
cmp dword [rbp + 0x418], 0
je 0x100617f12
mov qword [rbp + 0x40], 0
mov dword [rbp - 0x1c], 1
jmp 0x100615ef2
mov rdi, qword [rbp + 0x408]
mov r8, qword [rbp + 0x18]
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
mov ecx, 0x35
mov qword [rsp + 0x28], rdi
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100616c82
mov rsi, qword [rbp + 0x408]
mov rdx, qword [rbp + 0x18]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov ecx, 0x31
mov qword [rsp + 0x28], rsi
mov r8, rdx
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100616c82
lea rcx, str.is_a_directory
xor esi, esi
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
lea r12, str.E502:
mov dword [rbp + 0x58], 0
mov qword [rbp - 0x10], 0
mov rdi, rax
mov qword [rbp - 0x18], 0
mov qword [rbp + 0x40], 0
jmp 0x100616643
mov rcx, qword [rbp - 0x38]
call sym.vim.exe_get_fio_flags
cmp eax, 1
jbe 0x100617e49
cmp eax, 2
je 0x100617e2d
test al, 8
je 0x100617e0b
mov rdi, qword [rbp + 0x60]
lea rdx, [rdi + 4]
test al, 0x80
je 0x100617dfc
mov dword [rdi], 0xfeff
mov rax, rdx
sub rax, qword [rbp + 0x60]
xor esi, esi
mov dword [rbp + 0x120], eax
test eax, eax
jle 0x100616143
mov eax, dword [rbp - 0x24]
lea rcx, [rbp + 0x110]
or ah, 0x20
mov dword [rbp + 0x124], eax
call fcn.100614f20
test eax, eax
je 0x100617dea
movsxd rsi, dword [rbp + 0x120]
jmp 0x100616143
lea rcx, str.Partial_writes_disallowed_for_NetBeans_buffers
xor esi, esi
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
lea r12, str.E657:
mov dword [rbp + 0x58], 0
mov qword [rbp - 0x10], 0
mov rdi, rax
mov qword [rbp - 0x18], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x40], 0
jmp 0x100616643
mov rdx, qword [r14 + 0x140]
test rdx, rdx
je 0x10061700c
mov r8, qword [r14 + 0x148]
mov rcx, r13
call sym.vim.exe_time_differs
test eax, eax
je 0x10061700c
mov rax, qword [sym.vim.exe_msg_scroll]
lea rcx, str.WARNING:_The_file_has_been_changed_since_reading_it___
mov dword [rax], 1
mov rax, qword [sym.vim.exe_msg_silent]
mov dword [rax], 0
mov rax, qword [sym.vim.exe_highlight_attr]
mov r13d, dword [rax + 0x10]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
mov edx, r13d
call sym.vim.exe_msg_attr
lea rcx, str.Do_you_really_want_to_write_to_it
call sub.msys_intl_8.dll_libintl_gettext
mov edx, 1
mov rcx, rax
call sym.vim.exe_ask_yesno
cmp eax, 0x6e
je 0x100618ab5
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], 0
jmp 0x10061700c
lea rcx, str.NetBeans_disallows_writes_of_unmodified_buffers
lea r12, str.E656:
call sub.msys_intl_8.dll_libintl_gettext
mov dword [rbp + 0x58], 0
mov r13d, dword [rbp + 0x6c]
mov qword [rbp - 0x10], 0
mov rdi, rax
mov qword [rbp - 0x18], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x40], 0
jmp 0x100616643
lea rcx, str.E166:_Cant_open_linked_file_for_writing
mov r13d, dword [rbp - 4]
mov r14, qword [rbp + 0x3e0]
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x100616af9
lea ecx, [rax*4]
movsxd rcx, ecx
jmp 0x100616044
xor edx, edx
mov ecx, 0x77
call sym.vim.exe_vim_tempname
cmp qword [rbp + 0x18], rax
mov rsi, rax
mov qword [rbp], rax
sete al
test rsi, rsi
jne 0x100616dda
lea rcx, str.E214:_Cant_find_temp_file_for_writing
call sub.msys_intl_8.dll_libintl_gettext
mov dword [rbp + 0x58], 0
mov rdi, rax
jmp 0x100616af9
mov rcx, qword [r12]
jmp 0x100616eb6
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x57
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
mov qword [rbp + 0x40], rax
test rax, rax
je 0x100617f29
lea rcx, str.is_read_only__cannot_override:__W__in_cpoptions_
xor esi, esi
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
lea r12, str.E504:
mov dword [rbp + 0x58], 0
mov qword [rbp - 0x10], 0
mov rdi, rax
mov qword [rbp - 0x18], 0
mov qword [rbp + 0x40], 0
jmp 0x100616643
mov eax, dword [rbp - 8]
xor eax, 1
and eax, dword [rbp - 0x20]
mov dword [rbp + 0x58], eax
cmp dword [rbp - 8], 0
jne 0x1006161f8
mov rax, qword [rbp + 0x3e0]
mov rcx, qword [rax + 0x23f8]
test rcx, rcx
je 0x1006161f8
jmp 0x1006161eb
mov eax, dword [rbp - 8]
xor eax, 1
and eax, dword [rbp - 0x20]
mov dword [rbp + 0x58], eax
mov rax, qword [rbp + 0x3e0]
cmp dword [rax + 0x1d70], 0
je 0x1006161f8
jmp 0x100617871
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x57
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
je 0x100616e6a
lea rcx, str.is_read_only__cannot_override:__W__in_cpoptions_
lea r12, str.E504:
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
mov dword [rbp + 0x418], 1
mov qword [rbp + 0x40], 0
mov dword [rbp + 0x58], 0
mov r13d, dword [rbp + 0x418]
xor esi, esi
mov qword [rbp - 0x18], 0
jmp 0x100616643
mov rbx, qword [rbp + 0x18]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call sub.msys_2.0.dll_open
mov dword [rbp + 0x30], eax
test eax, eax
js 0x100616e5f
mov ecx, 0x2001
call sym.vim.exe_alloc
mov r12, rax
test rax, rax
je 0x1006184db
mov rax, qword [sym.vim.exe_p_bdir]
mov dword [rbp + 0x48], r13d
mov rdi, rsi
mov rsi, rbx
mov qword [rbp + 0x3f8], r15
mov rax, qword [rax]
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0x78]
cmp byte [rax], 0
je 0x10061859a
lea rax, [rbp + 0x78]
mov qword [rbp + 0x40], rax
jmp 0x100617a57
mov rdx, r12
mov rcx, rsi
call sym.vim.exe_get_file_in_dir
mov r15, rax
test rax, rax
je 0x10061804e
cmp dword [r14 + 0x1c60], 0
mov ecx, dword [rbp + 0x10]
jne 0x1006179b7
xor ecx, ecx
cmp dword [r14 + 0x1ea8], 0
setne cl
xor r9d, r9d
mov r8, rdi
mov rdx, r15
call sym.vim.exe_buf_modname
mov r13, rax
test rax, rax
je 0x100617f87
mov rdx, qword [rbp + 0x28]
mov rcx, r13
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100617e6a
mov eax, dword [rbp + 0x90]
cmp dword [rbp + 0x210], eax
jne 0x100617e5a
mov rax, qword [rbp + 0x98]
cmp qword [rbp + 0x218], rax
jne 0x100617e5a
mov rcx, r13
call sym.vim.exe_vim_free
mov r9d, dword [r14 + 0x1ea8]
test r9d, r9d
jne 0x100617a2f
mov r8d, dword [r14 + 0x1c60]
test r8d, r8d
je 0x100617add
test ebx, ebx
je 0x100617af0
mov dword [r14 + 0x1ea8], 0
mov rcx, r15
call sym.vim.exe_vim_free
mov rax, qword [rbp + 0x78]
cmp byte [rax], 0
je 0x10061859a
mov rcx, qword [rbp + 0x40]
lea r9, [0x1006ca165]
mov r8d, 0x2000
mov rdx, r12
mov qword [rbp + 0x218], 0
mov dword [rbp + 0x210], 0
mov dword [rbp + 0x22c], 0
call sym.vim.exe_copy_option_part
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rcx, r12
lea r15, [r12 + rax]
mov rdx, r15
call sym.vim.exe_after_pathsep
mov ebx, eax
test eax, eax
je 0x100617986
movzx eax, byte [r15 - 2]
cmp byte [r15 - 1], al
je 0x100617ebb
mov rdx, r12
mov rcx, rsi
call sym.vim.exe_get_file_in_dir
mov r15, rax
test rax, rax
je 0x10061804e
xor ebx, ebx
jmp 0x10061799d
mov dword [r14 + 0x1ea8], 1
mov ebx, dword [rbp + 0x10]
jmp 0x10061799d
mov rcx, r15
call sym.vim.exe_vim_free
jmp 0x100617a4a
mov rcx, qword [rbp + 0x18]
lea rdx, [rbp + 0x190]
call sub.msys_2.0.dll_lstat
test dil, 8
je 0x100617b31
test eax, eax
jne 0x100617b31
mov rsi, qword [rbp + 0x98]
mov edx, 0
cmp qword [rbp + 0x198], rsi
cmove edx, dword [rbp + 0x10]
mov dword [rbp + 0x10], edx
and dil, 0x10
je 0x100616e3a
cmp word [rbp + 0xa4], 1
jbe 0x100616e3a
test eax, eax
jne 0x100617b61
mov rax, qword [rbp + 0x98]
cmp qword [rbp + 0x198], rax
jne 0x100616e3a
mov rax, qword [sym.vim.exe_p_bex]
mov dword [rbp + 0x10], 0
mov rsi, qword [rax]
cmp byte [rsi], 0
jne 0x100616e5f
lea rsi, str..bak
jmp 0x100616e5f
mov dword [rbp + 0x10], 0
test dil, 2
je 0x100616e30
cmp word [rbp + 0xa4], 1
mov dword [rbp + 0x10], 1
ja 0x100616e30
lea r12, [rbp + 0x190]
mov rcx, qword [rbp + 0x18]
mov rdx, r12
call sub.msys_2.0.dll_lstat
test eax, eax
js 0x100616e30
mov eax, dword [rbp + 0x90]
cmp dword [rbp + 0x190], eax
jne 0x100616e30
mov rax, qword [rbp + 0x98]
cmp qword [rbp + 0x198], rax
jne 0x100616e30
mov rax, qword [sym.vim.exe_IObuff]
mov rdx, qword [rbp + 0x18]
mov esi, 0x1331
lea rbx, [0x1006ca162]
mov rcx, qword [rax]
mov qword [rbp + 0x48], rax
call sub.msys_2.0.dll_strcpy
jmp 0x100617c16
add esi, 0x7b
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
call sym.vim.exe_gettail
mov rdx, rbx
mov r8d, esi
mov rcx, rax
call sub.msys_2.0.dll_sprintf
mov rax, qword [rbp + 0x48]
mov rdx, r12
mov rcx, qword [rax]
call sub.msys_2.0.dll_lstat
test eax, eax
jns 0x100617c13
mov rsi, qword [rbp + 0x48]
mov r8, qword [rbp + 8]
mov edx, 0x100a01
mov rcx, qword [rsi]
call sub.msys_2.0.dll_open
mov dword [rbp + 0x10], 1
mov ebx, eax
test eax, eax
js 0x100616e30
mov edx, dword [rbp + 0xa8]
mov r8d, dword [rbp + 0xac]
mov ecx, eax
call sub.msys_2.0.dll_fchown
mov rdx, qword [sym.vim.exe_vim_ignored]
mov rcx, qword [rsi]
mov dword [rdx], eax
mov rdx, r12
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100617cb8
mov rax, qword [rbp + 0xa8]
cmp qword [rbp + 0x1a8], rax
jne 0x100617cb8
mov eax, dword [rbp + 0x1a0]
cmp rax, qword [rbp + 8]
setne al
movzx eax, al
mov dword [rbp + 0x10], eax
mov ecx, ebx
call sub.msys_2.0.dll_close
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
call sub.msys_2.0.dll_unlink
jmp 0x100616e30
mov dword [rbp + 0x10], 1
jmp 0x100616e30
cmp dword [rbp + 0x38], 0
mov dword [rbp - 0x28], eax
mov ecx, eax
mov rdi, rbx
mov qword [rbp + 8], rbx
mov dword [rbp + 0x110], eax
je 0x100617d33
mov eax, dword [rbp - 0x1c]
xor eax, 1
mov ebx, eax
or ebx, dword [rbp + 0x10]
je 0x100617d33
mov rsi, qword [rbp]
cmp qword [rbp + 0x18], rsi
jne 0x100617d33
test rdi, rdi
js 0x100617d33
mov rdx, qword [rbp + 0x28]
call sub.msys_2.0.dll_fstat
mov esi, eax
test eax, eax
jne 0x100617d33
mov rax, qword [rbp + 0x98]
cmp qword [rbp + 0x218], rax
jne 0x100618750
cmp dword [rbp + 0x410], 0
je 0x10061866f
mov rax, qword [rbp + 0x3e0]
mov r15, qword [rax + 0x1c00]
cmp byte [r15], 0
je 0x100617d61
cmp dword [rbp + 0x428], 0
je 0x100618687
mov dword [rbp - 8], 0
jmp 0x1006160e7
mov r13d, dword [rbp + 0x30]
mov r15, qword [rbp + 0x3f8]
mov qword [rbp + 0x40], r14
mov r14, qword [rbp + 0x3e0]
jmp 0x100617549
mov dword [r14 + 0x1c50], 0
mov rax, qword [sym.vim.exe_need_maketitle]
mov dword [rax], 1
call sym.vim.exe_status_redraw_all
jmp 0x100615f4d
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x40]
call sym.vim.exe_vim_rename
jmp 0x100616b31
test rbx, rbx
setg al
test r12d, r12d
setg dl
and eax, edx
jmp 0x100616850
test rax, rax
movzx eax, byte [rbp - 8]
mov rbx, qword [rbp + 0x3f8]
sete dl
xor eax, 1
or eax, edx
jmp 0x1006170b0
mov qword [rbp + 0x400], 0
xor esi, esi
jmp 0x100616143
mov rax, qword [rbp + 0x60]
mov dword [rax], 0xfffe0000
jmp 0x100617623
test al, 0x14
je 0x100617f63
mov rdi, qword [rbp + 0x60]
lea rdx, [rdi + 2]
test al, 0x80
je 0x100617f79
mov word [rdi], 0xfeff
jmp 0x100617623
mov rax, qword [rbp + 0x60]
mov word [rax], 0xbbef
mov byte [rax + 2], 0xbf
mov dword [rbp + 0x120], 3
jmp 0x10061763a
mov dword [rbp + 0x120], 0
xor esi, esi
jmp 0x100616143
mov rax, qword [sym.vim.exe_p_bk]
cmp dword [rax], 0
je 0x100617fea
mov rcx, r15
call sym.vim.exe_vim_free
mov rcx, r13
call sub.msys_2.0.dll_unlink
xor ecx, ecx
call sub.msys_2.0.dll_umask
mov r8, qword [rbp + 8]
mov rcx, r13
mov edx, 0x100a01
mov r15d, eax
and r8d, 0x1ff
call sub.msys_2.0.dll_open
mov ecx, r15d
mov ebx, eax
call sub.msys_2.0.dll_umask
test ebx, ebx
jns 0x100618071
mov rcx, r13
call sym.vim.exe_vim_free
jmp 0x10061796c
mov rdx, rsi
mov rcx, r12
call sym.vim.exe_make_percent_swname
mov r15, rax
test rax, rax
je 0x100617abf
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call sym.vim.exe_modname
mov rcx, r15
mov r13, rax
call sym.vim.exe_vim_free
mov rdx, r12
mov rcx, rsi
call sym.vim.exe_get_file_in_dir
mov r15, rax
test rax, rax
je 0x100618af0
xor ebx, ebx
test r13, r13
jne 0x1006179d1
jmp 0x10061799d
lea rcx, str.E510:_Cant_make_backup_file__add___to_override_
xor r12d, r12d
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x1006178ec
lea rcx, str.is_read_only__add___to_override_
xor esi, esi
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
lea r12, str.E505:
mov dword [rbp + 0x58], 0
mov qword [rbp - 0x10], 0
mov rdi, rax
mov qword [rbp - 0x18], 0
jmp 0x100616643
mov rax, qword [rbp + 0x60]
mov byte [rax], 0xbf
mov dword [rbp + 0x120], 1
jmp 0x10061763a
mov rax, qword [rbp + 0x60]
mov word [rax], 0xfffe
jmp 0x100617623
mov rdi, r15
mov r13d, dword [rbp + 0x48]
mov r15, qword [rbp + 0x3f8]
mov rcx, rdi
call sym.vim.exe_vim_free
mov ebx, dword [rbp + 0x10]
mov ecx, dword [rbp + 0x30]
call sub.msys_2.0.dll_close
mov rcx, r12
call sym.vim.exe_vim_free
lea rcx, str.E509:_Cannot_create_backup_file__add___to_override_
call sub.msys_intl_8.dll_libintl_gettext
mov qword [rbp + 0x40], 0
mov rdi, rax
test rdi, rdi
jne 0x100617fd5
and bl, 1
je 0x100617549
xor r12d, r12d
cmp dword [rbp + 0x418], 0
jne 0x100617549
jmp 0x1006178fe
mov rcx, r13
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov rbx, rax
call sub.msys_2.0.dll_strlen
mov r9, rax
lea rax, [rbx - 1]
sub rax, r9
add rax, r13
cmovb rax, r13
mov byte [rax], 0x7a
mov rbx, rax
mov rdx, qword [rbp + 0x28]
mov rcx, r13
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100618030
movzx eax, byte [rbx]
sub eax, 1
mov byte [rbx], al
cmp al, 0x61
ja 0x100618014
cmp byte [rbx], 0x61
jne 0x100617e6a
mov rcx, r13
call sym.vim.exe_vim_free
mov rcx, r15
call sym.vim.exe_vim_free
jmp 0x100617a4a
mov ecx, dword [rbp + 0x30]
mov r13d, dword [rbp + 0x48]
mov r15, qword [rbp + 0x3f8]
call sub.msys_2.0.dll_close
mov rcx, r12
call sym.vim.exe_vim_free
mov ebx, dword [rbp + 0x10]
jmp 0x100617fb0
mov qword [rbp + 0x40], r13
mov r15, qword [rbp + 0x3f8]
mov r13d, dword [rbp + 0x48]
mov r8d, dword [rbp + 0xac]
cmp dword [rbp + 0x22c], r8d
je 0x10061809e
or edx, 0xffffffff
mov ecx, ebx
call sub.msys_2.0.dll_fchown
test eax, eax
jne 0x10061810e
mov dword [rbp + 0x110], ebx
lea rsi, [rbp + 0x110]
mov qword [rbp + 0x118], r12
mov dword [rbp + 0x124], 0x2000
jmp 0x1006180e0
mov rcx, rsi
call fcn.100614f20
test eax, eax
je 0x1006181cf
call sym.vim.exe_ui_breakcheck
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
test eax, eax
jne 0x100618133
mov ecx, dword [rbp + 0x30]
mov r8d, 0x2000
mov rdx, r12
call sym.vim.exe_read_eintr
mov dword [rbp + 0x120], eax
test eax, eax
jg 0x1006180be
mov ecx, ebx
call sub.msys_2.0.dll_close
test eax, eax
js 0x1006181ad
xor edi, edi
jmp 0x100618152
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x40]
lea rdx, [rax*8]
and eax, 0x1c7
and edx, 0x38
or rdx, rax
call sym.vim.exe_mch_setperm
jmp 0x10061809e
mov rcx, qword [sym.vim.exe_e_interr]
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
mov ecx, ebx
call sub.msys_2.0.dll_close
test rdi, rdi
jne 0x100618152
test eax, eax
js 0x1006181ad
cmp dword [rbp + 0x120], 0
js 0x1006181be
mov rax, qword [rbp + 0xc0]
mov rsi, qword [rbp + 0x40]
lea rdx, [rbp + 0x80]
xor ebx, ebx
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0xd0]
mov rcx, rsi
mov qword [rbp + 0x88], rax
call sub.msys_2.0.dll_utime
mov rdx, qword [rbp - 0x10]
mov rcx, rsi
call sym.vim.exe_mch_set_acl
mov ecx, dword [rbp + 0x30]
call sub.msys_2.0.dll_close
mov rcx, r12
call sym.vim.exe_vim_free
jmp 0x100617fc7
lea rcx, str.E507:_Close_error_for_backup_file__add___to_override_
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x100618152
lea rcx, str.E508:_Cant_read_file_for_backup__add___to_override_
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x10061815b
lea rcx, str.E506:_Cant_write_to_backup_file__add___to_override_
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x100618142
mov qword [rbp + 0x400], 0
xor r12d, r12d
mov r13d, 1
jmp 0x100616643
cmp dword [rbp - 8], 0
mov r13d, dword [rbp - 4]
mov dword [rbp + 0x3c], edi
mov r12, rsi
mov r14, qword [rbp + 0x3e0]
mov r15, qword [rbp + 0x3f8]
je 0x100616483
test dl, dl
jne 0x100618722
xor edi, edi
mov rax, qword [sym.vim.exe_no_wait_return]
sub dword [rax], 1
cmp dword [rbp + 0x428], 0
je 0x10061831e
cmp dword [rbp + 0x6c], 0
je 0x100618819
cmp byte [rbp - 0x20], 0
je 0x100618819
cmp dword [rbp + 0x410], 0
jne 0x1006187fd
cmp dword [rbp + 0x170], 0
jne 0x1006182c3
cmp dword [rbp + 0x38], 0
jne 0x100618288
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x2b
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
je 0x1006182cd
xor r8d, r8d
mov edx, 1
mov rcx, r14
call sym.vim.exe_unchanged
mov rax, qword [r14 + 0xf0]
add rax, 1
cmp rax, qword [r14 + 0xd0]
jne 0x1006182b3
mov qword [r14 + 0xf0], rax
mov rcx, r14
call sym.vim.exe_u_unchanged
mov rcx, r14
call sym.vim.exe_u_update_save_nr
cmp dword [rbp + 0x38], 0
jne 0x10061883e
mov rax, qword [sym.vim.exe_p_pm]
mov r8, qword [rax]
cmp byte [r8], 0
je 0x1006182e7
test byte [rbp - 0x1c], 1
jne 0x100618848
mov rax, qword [sym.vim.exe_p_bk]
mov esi, dword [rax]
test esi, esi
jne 0x100618b67
cmp qword [rbp + 0x40], 0
je 0x100618b26
cmp dword [rbp + 0x170], 0
je 0x1006188de
mov r13d, 1
xor r12d, r12d
jmp 0x10061664d
mov rdx, qword [rbp + 0x18]
mov rcx, r14
call sym.vim.exe_msg_add_fname
cmp dword [rbp + 0x170], 0
je 0x100618498
lea rcx, str._CONVERSION_ERROR
mov esi, 1
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
mov rax, qword [sym.vim.exe_IObuff]
mov rcx, qword [rax]
mov qword [rbp + 0x48], rax
call fcn.10065eb30
mov r9, qword [rbp + 0x178]
test r9, r9
jne 0x10061846b
cmp dword [rbp - 0x40], 0
je 0x100618458
lea rcx, str._Device_
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
mov rax, qword [rbp + 0x48]
mov esi, 1
mov rcx, qword [rax]
call fcn.10065eb30
cmp dword [rbp - 0x48], 0
jne 0x100618449
mov ecx, dword [rbp + 0x3c]
call sym.vim.exe_msg_add_fileformat
test eax, eax
mov eax, 1
cmovne esi, eax
test dword [rbp - 0x24], 0x1000
jne 0x100618437
sub rbx, r15
movzx ecx, sil
mov r8, r12
mov rdx, rbx
call sym.vim.exe_msg_add_lines
mov ecx, 0x57
call sym.vim.exe_shortmess
test eax, eax
jne 0x100618417
cmp dword [rbp + 0x410], 0
mov ecx, 0x77
je 0x100618927
call sym.vim.exe_shortmess
test eax, eax
je 0x1006188ca
lea rcx, str.__a_
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
call fcn.10065eb30
mov rax, qword [rbp + 0x48]
xor edx, edx
xor r8d, r8d
mov rcx, qword [rax]
call sym.vim.exe_msg_trunc_attr
xor edx, edx
mov rcx, rax
call sym.vim.exe_set_keep_msg
jmp 0x10061823f
mov rcx, r14
mov esi, 1
call sym.vim.exe_crypt_append_msg
jmp 0x1006183bd
call sym.vim.exe_msg_add_eol
mov esi, 1
jmp 0x1006183a2
test r13d, r13d
je 0x100618398
call sym.vim.exe_new_file_message
jmp 0x100618384
lea rcx, str._in_line__ld_
mov qword [rbp + 0x30], r9
call sub.msys_intl_8.dll_libintl_gettext
mov r9, qword [rbp + 0x30]
mov edx, 0x401
mov r8, rax
mov rax, qword [rbp + 0x48]
mov rcx, qword [rax]
call sym.vim.exe_vim_snprintf_add
jmp 0x10061836e
cmp dword [rbp - 0x44], 0
lea rcx, str._NOT_converted_
jne 0x1006184b6
cmp dword [rbp - 0x3c], 0
je 0x100618915
lea rcx, str._converted_
call sub.msys_intl_8.dll_libintl_gettext
mov esi, 1
mov rdx, rax
mov rax, qword [sym.vim.exe_IObuff]
mov rcx, qword [rax]
mov qword [rbp + 0x48], rax
call fcn.10065eb30
jmp 0x10061836e
mov ebx, dword [rbp + 0x10]
jmp 0x100617fa0
xor eax, eax
jmp 0x100616850
cmp dword [r14 + 0xa0], 0
jne 0x100616512
jmp 0x10061650a
mov ecx, dword [rbp - 0x28]
call sym.vim.exe_vim_fsync
test byte [rbp - 0x40], 1
jne 0x10061850f
test eax, eax
jne 0x10061857b
xor edi, edi
jmp 0x100616495
xor esi, esi
mov r13d, 1
xor r12d, r12d
jmp 0x100616643
mov rax, qword [rbp + 0x18]
mov qword [rbp], rax
jmp 0x10061607d
mov rcx, qword [sym.vim.exe_e_interr]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_msg
call sym.vim.exe_out_flush
jmp 0x100616618
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x40]
mov r13d, 1
call sym.vim.exe_vim_rename
test eax, eax
sete al
xor r12d, r12d
movzx eax, al
mov qword [rbp + 0x400], rax
jmp 0x100616643
mov rcx, qword [sym.vim.exe_e_fsync]
call sub.msys_intl_8.dll_libintl_gettext
mov qword [rbp + 0x400], 0
mov rdi, rax
jmp 0x100616495
mov r13d, dword [rbp + 0x48]
mov r15, qword [rbp + 0x3f8]
xor ebx, ebx
jmp 0x100617fa0
lea rcx, str.E213:_Cannot_convert__add___to_write_without_conversion_
call sub.msys_intl_8.dll_libintl_gettext
mov dword [rbp + 0x58], 0
mov rdi, rax
jmp 0x100616af9
call sym.vim.exe_aborting
test eax, eax
jne 0x1006158db
cmp dword [rbp + 0x18], 0
je 0x100615c36
mov ebx, dword [rbp + 0x38]
test ebx, ebx
jne 0x100618643
mov r10d, dword [rbp + 0x420]
test r10d, r10d
je 0x1006158b6
mov r9d, dword [r14 + 0xc0]
test r9d, r9d
je 0x1006158b6
mov r8d, dword [rbp + 0x410]
test r8d, r8d
jne 0x1006158b6
mov ecx, dword [rbp + 0x38]
test ecx, ecx
jne 0x1006158db
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x2b
xor r13d, r13d
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
sete r13b
jmp 0x1006158db
mov rcx, r14
call sym.vim.exe_ml_timestamp
mov r11d, dword [rbp + 0x410]
test r11d, r11d
je 0x100618665
and dword [r14 + 0x7c], 0xffffffef
mov r13d, dword [rbp + 0x38]
jmp 0x1006158db
and dword [r14 + 0x7c], 0xffffffa7
jmp 0x1006185e5
mov ecx, dword [rbp - 0x28]
xor edx, edx
call sub.msys_2.0.dll_ftruncate
mov rdi, qword [sym.vim.exe_vim_ignored]
mov dword [rdi], eax
jmp 0x100617d40
mov rcx, rax
call sym.vim.exe_crypt_get_method_nr
mov r8, qword [rbp + 0x28]
lea r9, [rbp + 0x80]
mov rdx, r15
mov ecx, eax
call sym.vim.exe_crypt_create_for_writing
mov rdi, qword [rbp + 0x3e0]
mov qword [rdi + 0x23f8], rax
test rax, rax
je 0x100618779
mov rax, qword [rbp + 0x210]
test rax, rax
je 0x100618779
mov qword [rbp + 0x118], rax
mov eax, dword [rbp + 0x80]
lea rcx, [rbp + 0x110]
mov dword [rbp + 0x124], 0x2000
mov dword [rbp + 0x120], eax
call fcn.100614f20
mov rcx, qword [rbp + 0x210]
test eax, eax
mov eax, 0
cmovne rax, qword [rbp + 0x400]
or dword [rbp - 0x24], 0x1000
mov qword [rbp + 0x400], rax
call sym.vim.exe_vim_free
jmp 0x100617d61
mov esi, dword [rbp + 0x170]
test esi, esi
je 0x1006187c6
cmp qword [rbp + 0x178], 0
jne 0x100618789
lea rcx, str.E513:_write_error__conversion_failed__make_fenc_empty_to_override_
xor esi, esi
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x1006165f2
mov ecx, dword [rbp - 0x28]
mov r14, qword [rbp + 0x3e0]
mov r13d, ebx
xor r12d, r12d
call sub.msys_2.0.dll_close
lea rcx, str.E949:_File_changed_while_writing
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x100616643
mov qword [rbp + 0x400], 0
jmp 0x100617d61
mov ecx, 0x12c
mov esi, 1
call sym.vim.exe_alloc
mov rbx, qword [rbp + 0x178]
lea rcx, str.E513:_write_error__conversion_failed_in_line__ld__make_fenc_empty_to_override_
mov rdi, rax
call sub.msys_intl_8.dll_libintl_gettext
mov r9, rbx
mov edx, 0x12c
mov rcx, rdi
mov r8, rax
call sym.vim.exe_vim_snprintf
jmp 0x1006165f2
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
test eax, eax
je 0x100618b53
mov rcx, qword [sym.vim.exe_e_interr]
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x1006165f2
mov rdx, qword [rbp - 0x10]
mov rcx, qword [rbp]
call sym.vim.exe_mch_set_acl
jmp 0x10061654e
cmp dword [rbp + 0x38], 0
je 0x1006182cd
mov rcx, r14
call sym.vim.exe_ml_timestamp
and dword [r14 + 0x7c], 0xffffffef
jmp 0x1006182cd
cmp dword [rbp + 0x38], 0
je 0x1006182cd
mov rcx, r14
call sym.vim.exe_ml_timestamp
cmp dword [rbp + 0x410], 0
jne 0x10061880f
and dword [r14 + 0x7c], 0xffffffa7
jmp 0x1006182cd
mov rcx, r14
call sym.vim.exe_ml_timestamp
jmp 0x100618834
cmp dword [r14 + 0x1c60], 0
mov ecx, 1
jne 0x100618864
xor ecx, ecx
cmp dword [r14 + 0x1ea8], 0
setne cl
mov rdx, qword [rbp + 0x18]
xor r9d, r9d
call sym.vim.exe_buf_modname
cmp qword [rbp + 0x40], 0
mov r12, rax
je 0x1006189c0
test rax, rax
je 0x1006189a7
mov rdx, qword [rbp + 0x28]
mov rcx, rax
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100618944
test r12, r12
je 0x1006182e7
mov rcx, qword [rbp + 0x18]
call sym.vim.exe_mch_getperm
mov rcx, r12
and eax, 0x1ff
mov rdx, rax
call sym.vim.exe_mch_setperm
mov rcx, r12
call sym.vim.exe_vim_free
jmp 0x1006182e7
lea rcx, str._appended
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
jmp 0x10061840b
mov rcx, qword [rbp + 0x40]
call sub.msys_2.0.dll_unlink
mov esi, eax
test eax, eax
je 0x100618310
lea rcx, str.E207:_Cant_delete_backup_file
xor esi, esi
mov r13d, 1
xor r12d, r12d
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x10061664d
mov rax, qword [sym.vim.exe_IObuff]
xor esi, esi
mov qword [rbp + 0x48], rax
jmp 0x10061836e
call sym.vim.exe_shortmess
test eax, eax
je 0x100618993
lea rcx, str.__w_
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
jmp 0x10061840b
mov rsi, qword [rbp + 0x40]
mov rdx, r12
mov rcx, rsi
call sym.vim.exe_vim_rename
mov rcx, rsi
call sym.vim.exe_vim_free
mov rax, qword [rbp + 0xc0]
lea rdx, [rbp + 0x80]
mov rcx, r12
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x88], rax
call sub.msys_2.0.dll_utime
mov qword [rbp + 0x40], 0
jmp 0x10061889b
lea rcx, str._written
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
jmp 0x10061840b
lea rcx, str.E205:_Patchmode:_cant_save_original_file
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x1006182e7
test rax, rax
je 0x1006189ef
mov rax, qword [rbp + 8]
mov r8d, 0x1b6
test rax, rax
js 0x1006189dc
and eax, 0x1ff
mov r8, rax
mov rcx, r12
mov edx, 0x100a00
call sub.msys_2.0.dll_open
mov ecx, eax
test eax, eax
jns 0x100618a08
lea rcx, str.E206:_patchmode:_cant_touch_empty_original_file
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x10061889b
call sub.msys_2.0.dll_close
jmp 0x1006188a4
mov r8, qword [rbp + 8]
mov rcx, qword [rbp + 0x18]
mov edx, 0x601
and r8d, 0x1ff
call sub.msys_2.0.dll_open
mov dword [rbp + 0x110], eax
test eax, eax
js 0x100618ae3
mov rax, qword [rbp + 0x20]
lea rbx, [rbp + 0x110]
mov dword [rbp + 0x124], 0x2000
mov qword [rbp + 0x118], rax
jmp 0x100618a63
mov rcx, rbx
call fcn.100614f20
test eax, eax
je 0x100618a7f
mov rdx, qword [rbp + 0x20]
mov r8d, 0x100
mov ecx, r12d
call sym.vim.exe_read_eintr
mov dword [rbp + 0x120], eax
test eax, eax
jg 0x100618a57
mov ecx, dword [rbp + 0x110]
call sub.msys_2.0.dll_close
test eax, eax
js 0x100618ae3
xor eax, eax
cmp dword [rbp + 0x120], 0
sete al
mov qword [rbp + 0x400], rax
mov ecx, r12d
xor r12d, r12d
call sub.msys_2.0.dll_close
mov r13d, dword [rbp + 0x10]
jmp 0x100616643
mov dword [rbp + 0x58], 0
xor r13d, r13d
xor esi, esi
xor r12d, r12d
mov qword [rbp - 0x10], 0
xor edi, edi
mov qword [rbp - 0x18], 0
mov qword [rbp + 0x40], 0
jmp 0x100616643
mov qword [rbp + 0x400], 0
jmp 0x100618aa1
mov ecx, dword [rbp + 0x30]
mov qword [rbp + 0x40], r13
mov rsi, r13
mov rdi, rax
mov r13d, dword [rbp + 0x48]
mov r15, qword [rbp + 0x3f8]
call sub.msys_2.0.dll_close
mov rcx, r12
call sym.vim.exe_vim_free
test rsi, rsi
jne 0x100617fd5
mov ebx, dword [rbp + 0x10]
jmp 0x100617fb0
xor r12d, r12d
mov r13d, 1
jmp 0x10061664d
lea rcx, str.E512:_Close_failed
call sub.msys_intl_8.dll_libintl_gettext
mov qword [rbp + 0x400], 0
mov rdi, rax
jmp 0x100616544
lea rcx, str.E514:_write_error__file_system_full__
call sub.msys_intl_8.dll_libintl_gettext
mov rdi, rax
jmp 0x1006165f2
xor esi, esi
mov r13d, 1
xor r12d, r12d
jmp 0x10061664d