Function at 0x100491070
Capabilities:
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x2e8
mov eax, dword [rsp + 0x360]
and eax, 1
mov dword [rsp + 0x38], eax
mov r13, rcx
mov eax, dword [rsp + 0x360]
mov rsi, rdx
mov qword [rsp + 0x340], r8
and eax, 2
mov qword [rsp + 0x348], r9
mov dword [rsp + 0xec], eax
mov eax, dword [rsp + 0x360]
mov dword [rsp + 0xa4], 1
and eax, 9
mov dword [rsp + 0xfc], eax
jne 0x10049110a
cmp qword [rsp + 0x358], 0
mov dword [rsp + 0xa4], 0
je 0x10049110a
mov rax, qword [rsp + 0x358]
mov r11d, dword [rax + 0x84]
xor eax, eax
test r11d, r11d
setne al
mov dword [rsp + 0xa4], eax
mov rax, qword [sym.vim.exe_msg_scroll]
mov qword [rsp + 0x180], 0
mov eax, dword [rax]
mov dword [rsp + 0xe0], eax
mov rax, qword [sym.vim.exe_au_did_filetype]
mov dword [rax], 0
mov rax, qword [sym.vim.exe_curbuf]
mov rbx, qword [rax]
mov r12, qword [rbx + 0x88]
mov qword [rbx + 0x1e88], 0
test r12, r12
je 0x100491848
mov rax, qword [sym.vim.exe_ex_no_reprint]
test rsi, rsi
mov r8, r13
mov r14, qword [rbx + 0x98]
cmovne r8, rsi
mov dword [rax], 1
mov rax, qword [sym.vim.exe_need_fileinfo]
mov qword [rsp + 0x88], r8
mov dword [rax], 0
test byte [rsp + 0x360], 0xe
jne 0x10049122b
cmp qword [rsp + 0x340], 0
mov eax, 1
cmovne rax, qword [rsp + 0x340]
mov r9d, dword [rsp + 0x38]
mov rbp, qword [rbx + 0x11f0]
mov qword [rbx + 0x11f0], rax
mov rax, qword [rsp + 0x358]
test r9d, r9d
mov rdi, qword [rbx + 0x11f8]
mov dword [rbx + 0x11f8], 0
mov qword [rsp + 0x28], rax
jne 0x10049151c
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov ecx, 0x2d
mov qword [rsp + 0x20], 0
mov r8, rdx
call sym.vim.exe_apply_autocmds_exarg
test eax, eax
jne 0x100493112
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rax + 0x11f0], rbp
mov qword [rax + 0x11f8], rdi
mov ecx, 0x6f
call sym.vim.exe_shortmess
test eax, eax
je 0x10049146b
mov rax, qword [sym.vim.exe_p_verbose]
cmp qword [rax], 0
setne al
movzx eax, al
mov rdi, qword [sym.vim.exe_msg_scroll]
mov dword [rdi], eax
mov rax, qword [rsp + 0x88]
test rax, rax
je 0x100491296
cmp byte [rax], 0
je 0x100491296
mov rcx, rax
call sub.msys_2.0.dll_strlen
cmp rax, 0xfff
ja 0x100491d30
mov rcx, qword [rsp + 0x88]
lea rdx, [rcx + rax]
call sym.vim.exe_after_pathsep
test eax, eax
jne 0x100493de8
mov eax, dword [rsp + 0x360]
and eax, 0x4c
mov dword [rsp + 0x80], eax
je 0x10049148d
mov dword [rsp + 0x10c], 0
mov rdx, qword [rsp + 0x358]
mov ecx, dword [rsp + 0xa4]
xor r15d, r15d
call sym.vim.exe_set_file_options
mov edi, dword [rsp + 0x38]
test edi, edi
je 0x1004912ef
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r15d, dword [rax + 0x7c]
and r15d, 2
jne 0x1004918af
mov eax, dword [rsp + 0x360]
and eax, 8
cmp rsi, r12
sete dl
cmp r13, r12
mov dword [rsp + 0x80], eax
mov edi, edx
sete al
or edi, eax
cmp rsi, r14
sete dl
cmp r13, r14
sete al
or edx, eax
mov eax, dword [rsp + 0x360]
mov byte [rsp + 0x3c], dl
and eax, 4
mov dword [rsp + 0xe4], eax
sete byte [rsp + 0x97]
movzx eax, byte [rsp + 0x97]
test byte [rsp + 0x360], 1
je 0x100491555
test al, al
je 0x100491555
mov qword [rsp + 0x110], 0
mov esi, 0xffffffff
test byte [rsp + 0x360], 0x48
je 0x100492ef7
mov eax, dword [rsp + 0x80]
test eax, eax
jne 0x10049189f
mov r13d, 1
test byte [rsp + 0x10c], 0x92
jne 0x100493929
mov rcx, qword [rsp + 0x88]
xor r8d, r8d
mov edx, 0x10000
call sub.msys_2.0.dll_open
mov dword [rsp + 0xa0], eax
test eax, eax
jns 0x100491826
mov rax, qword [sym.vim.exe_msg_scroll]
mov ecx, dword [rsp + 0xe0]
mov dword [rax], ecx
mov eax, dword [rsp + 0x38]
test eax, eax
je 0x100491545
mov eax, dword [rsp + 0x10c]
test eax, eax
jns 0x1004913f4
call sub.msys_2.0.dll___errno
cmp dword [rax], 2
je 0x1004944ee
call sub.msys_2.0.dll___errno
cmp dword [rax], 0x1b
je 0x1004932d5
call sub.msys_2.0.dll___errno
cmp dword [rax], 0x8b
je 0x1004932d5
lea rcx, str._Permission_Denied_
call sub.msys_intl_8.dll_libintl_gettext
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov rcx, qword [rax]
call sym.vim.exe_filemess
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1ca0], 1
mov eax, dword [rsp + 0x80]
add rsp, 0x2e8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [sym.vim.exe_curbuf]
mov rdx, qword [rax]
mov eax, 1
mov ecx, dword [rdx + 0x1f08]
test ecx, ecx
je 0x10049124e
jmp 0x10049123d
mov rcx, qword [rsp + 0x88]
call sym.vim.exe_mch_getperm
mov dword [rsp + 0x10c], eax
test eax, eax
js 0x1004912b8
mov edx, eax
and eax, 0xb000
and edx, 0xf000
cmp eax, 0x8000
je 0x1004912b8
cmp edx, 0x1000
je 0x1004912b8
cmp edx, 0x4000
je 0x100494e24
lea rcx, str.is_not_a_file
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
call sym.vim.exe_msg_end
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rsp + 0xe0]
mov dword [rax], edi
jmp 0x100491450
mov qword [rsp + 0x20], rbx
xor r9d, r9d
xor edx, edx
mov ecx, 9
call sym.vim.exe_apply_autocmds_exarg
test eax, eax
je 0x100491213
call sym.vim.exe_aborting
test eax, eax
je 0x100493cd8
mov dword [rsp + 0x80], 0
jmp 0x100491450
mov eax, dword [rsp + 0xe4]
test eax, eax
je 0x1004956a3
mov dword [rsp + 0xa0], 0
mov esi, 0xffffffff
mov qword [rsp + 0x110], 0
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
mov eax, dword [rcx + 0x1f08]
test eax, eax
jne 0x100491839
mov r15d, dword [rsp + 0xa4]
test r15d, r15d
je 0x1004915ca
mov r13d, dword [rsp + 0x80]
test r13d, r13d
je 0x100491d17
mov dword [rcx + 0x1af4], 0
mov dword [rcx + 0x1ea4], 0
call sym.vim.exe_bt_dontwrite
test eax, eax
je 0x100492e68
mov eax, dword [rsp + 0x360]
and eax, 0xc
mov dword [rsp + 0x108], eax
mov rax, qword [sym.vim.exe_swap_exists_action]
cmp dword [rax], 2
je 0x100493397
mov rax, qword [sym.vim.exe_no_wait_return]
mov edx, 1
add dword [rax], 1
mov rax, qword [sym.vim.exe_curbuf]
cmp qword [rsp + 0x340], 0
cmovne rdx, qword [rsp + 0x340]
mov rax, qword [rax]
mov rbp, qword [rax + 0x11f0]
mov r15, qword [rax + 0x11f8]
mov qword [rax + 0x11f0], rdx
mov edx, 0x6d
mov dword [rax + 0x11f8], 0
mov rax, qword [sym.vim.exe_p_ffs]
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
mov edx, 0x64
mov r13, rax
mov rax, qword [sym.vim.exe_p_ffs]
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
mov edx, 0x78
mov rsi, rax
mov rax, qword [sym.vim.exe_p_ffs]
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
mov r9d, dword [rsp + 0x80]
test r9d, r9d
jne 0x1004918d2
mov rax, qword [sym.vim.exe_msg_scroll]
mov r13, qword [sym.vim.exe_msg_scrolled]
mov r8d, dword [rsp + 0xe4]
mov eax, dword [rax]
mov esi, dword [r13]
mov dword [rsp + 0x40], eax
test r8d, r8d
je 0x10049402f
mov rax, qword [sym.vim.exe_msg_scroll]
mov r9d, dword [rsp + 0xec]
mov dword [rax], 1
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
test r9d, r9d
je 0x1004944b8
mov rax, qword [rsp + 0x358]
mov r8, qword [rsp + 0x88]
xor r9d, r9d
xor edx, edx
mov ecx, 0x35
mov qword [rsp + 0x28], rax
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov rax, qword [sym.vim.exe_p_ffs]
mov edx, 0x6d
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
mov edx, 0x64
test rax, rax
setne al
movzx eax, al
mov dword [rsp + 0xe8], eax
mov rax, qword [sym.vim.exe_p_ffs]
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
mov edx, 0x78
test rax, rax
setne al
movzx eax, al
mov dword [rsp + 0x14c], eax
mov rax, qword [sym.vim.exe_p_ffs]
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
setne al
movzx eax, al
mov dword [rsp + 0x90], eax
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rax + 0x11f0], rbp
mov qword [rax + 0x11f8], r15
cmp dword [r13], esi
jne 0x1004917b0
mov rax, qword [sym.vim.exe_msg_scroll]
mov ecx, dword [rsp + 0x40]
mov dword [rax], ecx
call sym.vim.exe_aborting
test eax, eax
jne 0x1004940df
mov rax, qword [sym.vim.exe_curbuf]
mov ebp, dword [rsp + 0xe4]
mov rcx, qword [rax]
test ebp, ebp
jne 0x100493ace
cmp rcx, rbx
je 0x1004946ba
mov rax, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rsp + 0xe0]
mov rcx, qword [sym.vim.exe_e_readpre_autocommands_must_not_change_current_buffer]
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
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1ca0], 1
jmp 0x100491545
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
test r13d, r15d
je 0x100491580
mov dword [rcx + 0x1ca0], 1
jmp 0x100491598
mov r10d, dword [rsp + 0xec]
test r10d, r10d
jne 0x100491158
test r13, r13
je 0x100491158
mov rax, qword [sym.vim.exe_p_cpo]
mov edx, 0x66
mov rcx, qword [rax]
call sym.vim.exe_vim_strchr
test rax, rax
je 0x100491889
test byte [rsp + 0x360], 0x10
je 0x100493e36
mov rax, qword [sym.vim.exe_curbuf]
mov rbx, qword [rax]
mov r12, qword [rbx + 0x88]
jmp 0x100491158
mov dword [rsp + 0xa0], 0
jmp 0x100491580
mov rdx, qword [sym.vim.exe_readonlymode]
mov r15d, edi
mov edx, dword [rdx]
test edx, edx
jne 0x1004912ef
mov dword [rax + 0x1ca0], 0
jmp 0x1004912ef
xor edi, edi
test r13, r13
setne dil
mov dword [rsp + 0xe8], edi
xor edi, edi
test rsi, rsi
setne dil
test rax, rax
setne al
mov dword [rsp + 0x14c], edi
mov rdi, qword [sym.vim.exe_recoverymode]
movzx eax, al
mov dword [rsp + 0x90], eax
mov rax, qword [sym.vim.exe_curbuf]
mov qword [rsp + 0x150], rdi
mov rcx, qword [rax]
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0x15c], eax
mov eax, dword [rsp + 0x360]
and eax, 0x12
or eax, dword [rdi]
jne 0x100491942
mov esi, dword [rsp + 0xe4]
test esi, esi
jne 0x100493af9
cmp qword [rsp + 0x358], 0
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], 0
mov rax, qword [rcx]
mov qword [rsp + 0xc8], rax
je 0x100493949
mov rax, qword [rsp + 0x358]
mov eax, dword [rax + 0x90]
mov dword [rsp + 0x60], eax
test eax, eax
je 0x1004933c4
mov ebx, dword [rsp + 0xa4]
test ebx, ebx
jne 0x100493ccd
mov rax, qword [rsp + 0x358]
movsxd rax, dword [rax + 0x8c]
test eax, eax
jne 0x1004940a8
mov r11d, dword [rcx + 0x1af0]
test r11d, r11d
je 0x100493302
lea rax, [0x1006c0700]
mov dword [rsp + 0x17c], 0
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x148], 0
mov dword [rsp + 0x158], 0
xor r12d, r12d
xor ebp, ebp
mov eax, dword [rsp + 0x360]
mov dword [rsp + 0xc4], 0
xor r13d, r13d
xor r14d, r14d
mov rdi, qword [rsp + 0x340]
and eax, 0x40
xor ebx, ebx
mov qword [rsp + 0xb8], 0
mov dword [rsp + 0x164], eax
mov dword [rsp + 0x160], 0
mov dword [rsp + 0xf8], 0
mov qword [rsp + 0x68], 0xffffffffffffffff
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x70], 0
mov dword [rsp + 0x3c], 0
mov qword [rsp + 0x58], 0
mov dword [rsp + 0x4c], 0xffffffff
mov dword [rsp + 0x50], 0
mov dword [rsp + 0xc0], 0
mov dword [rsp + 0x48], 0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0x140], 0
mov dword [rsp + 0x78], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0x98], 0
mov dword [rsp + 0x124], 0
mov qword [rsp + 0x138], 1
mov ecx, dword [rsp + 0x70]
test ecx, ecx
jne 0x100491b6b
cmp qword [rsp + 0x358], 0
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
je 0x100491b3c
mov rax, qword [rsp + 0x358]
mov edx, dword [rax + 0x88]
test edx, edx
jne 0x1004932a3
mov r15d, dword [rcx + 0x1af0]
mov dword [rsp + 0x3c], 0
test r15d, r15d
jne 0x100491b6b
mov rax, qword [sym.vim.exe_p_ffs]
mov dword [rsp + 0x3c], 0xffffffff
mov rax, qword [rax]
cmp byte [rax], 0
je 0x100493ac0
mov rax, qword [rsp + 0x68]
cmp rax, 0xffffffffffffffff
je 0x100491b7e
mov rcx, rax
call sub.msys_iconv_2.dll_libiconv_close
test r13d, r13d
je 0x100491c12
cmp qword [rsp + 0x358], 0
mov eax, dword [rsp + 0x17c]
je 0x100492af1
mov rcx, qword [rsp + 0x358]
mov esi, dword [rcx + 0x8c]
test esi, esi
je 0x100492af1
test eax, eax
jne 0x100494112
lea rax, [0x1006c0700]
mov dword [rsp + 0x17c], 0
mov dword [rsp + 0x160], r13d
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x98], 0
mov rsi, qword [rsp + 0x100]
test rsi, rsi
je 0x100491c12
mov rcx, rsi
call sub.msys_2.0.dll_unlink
mov rcx, rsi
call sym.vim.exe_vim_free
mov qword [rsp + 0x100], 0
mov rsi, qword [rsp + 0xb0]
mov rcx, rsi
call sym.vim.exe_need_conversion
mov dword [rsp + 0x120], eax
test eax, eax
je 0x100492b2a
lea rdx, [0x1006c08d9]
mov rcx, rsi
call sub.msys_2.0.dll_strcmp
test eax, eax
je 0x100491d7e
mov rsi, qword [sym.vim.exe_enc_utf8]
mov r11d, dword [rsi]
test r11d, r11d
jne 0x100492b40
mov rax, qword [sym.vim.exe_p_enc]
lea rdx, [0x1006c081f]
mov r13, qword [rax]
mov rcx, r13
call sub.msys_2.0.dll_strcmp
test eax, eax
je 0x100492b40
mov ecx, dword [rsp + 0xf8]
test ecx, ecx
jne 0x1004955c5
mov rdx, qword [rsp + 0xb0]
mov rcx, r13
call sym.vim.exe_my_iconv_open
mov dword [rsp + 0x64], 0
mov edx, dword [rsp + 0x108]
cmp rax, 0xffffffffffffffff
mov qword [rsp + 0x68], rax
sete al
test edx, edx
jne 0x100492ac9
mov rdx, qword [sym.vim.exe_p_ccv]
mov rdx, qword [rdx]
cmp byte [rdx], 0
je 0x100492ac9
mov r9d, dword [rsp + 0x164]
test r9d, r9d
jne 0x100492ac9
test al, al
je 0x100492ac9
cmp qword [rsp + 0x100], 0
je 0x100493d23
mov dword [rsp + 0xf8], 0
mov qword [rsp + 0x68], 0xffffffffffffffff
mov dword [rsp + 0x64], 0
jmp 0x100491d8f
mov dword [rcx + 0x1bb0], 1
mov dword [rcx + 0x1e90], 1
jmp 0x1004915b6
lea rcx, str.Illegal_file_name
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
call sym.vim.exe_msg_end
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rsp + 0xe0]
mov dword [rsp + 0x80], 0
mov dword [rax], edi
jmp 0x100491450
mov qword [rsp + 0x68], 0xffffffffffffffff
mov dword [rsp + 0x64], 0x4000
mov rax, qword [rsp + 0xb0]
mov dword [rsp + 0x84], 0
cmp byte [rax], 0
je 0x100491dc5
mov eax, dword [rsp + 0x360]
and eax, 0x44
or eax, dword [rsp + 0x148]
sete al
movzx eax, al
mov dword [rsp + 0x84], eax
mov r15d, dword [rsp + 0x78]
test r15d, r15d
jne 0x100491ea7
mov rax, qword [sym.vim.exe_curbuf]
mov r13d, dword [rsp + 0x38]
mov dword [rsp + 0x48], 0
mov rax, qword [rax]
test r13d, r13d
je 0x100491e40
mov ecx, dword [rsp + 0x360]
and ecx, 0x20
mov dword [rsp + 0x48], ecx
jne 0x10049391c
cmp qword [rax + 0x88], 0
je 0x100491e40
mov ebp, dword [rax + 0x1dd8]
test ebp, ebp
je 0x100491e40
test byte [rsp + 0x360], 0x4e
jne 0x100491e40
lea rcx, [rsp + 0x260]
call sym.vim.exe_sha256_start
mov ecx, dword [rsp + 0x38]
mov rax, qword [sym.vim.exe_curbuf]
mov dword [rsp + 0x48], ecx
mov rax, qword [rax]
mov rcx, qword [rax + 0x2460]
test rcx, rcx
je 0x100491e66
call sym.vim.exe_crypt_free_state
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rax + 0x2460], 0
mov rax, qword [rsp + 0x350]
mov dword [rsp + 0xc4], 0
mov qword [rsp + 0xb8], 0
mov rbp, qword [rsp + 0x348]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x140], 0
mov r13d, dword [rsp + 0x50]
test r13d, r13d
jne 0x1004948d2
nop dword [rax]
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
mov dword [rsp + 0x70], eax
test eax, eax
jne 0x1004932e6
mov esi, dword [rsp + 0x78]
test esi, esi
jne 0x100492390
mov rax, qword [rsp + 0x58]
lea r12, [rax + 0x10000]
cmp r12, 0x100000
jle 0x100492390
mov rax, qword [rsp + 0x58]
lea rdx, [rax + 0x100001]
mov eax, 0x800fffff
cmp rdx, rax
jbe 0x100492b80
add dword [rsp + 0xc0], 1
lea r13, [rbx - 1]
xor r12d, r12d
mov byte [rbx], 0xa
mov dword [rsp + 0x50], 0
cmp dword [rsp + 0x3c], 2
je 0x100492570
lea rax, [rsp + 0x260]
mov r15, rdi
mov qword [rsp + 0x70], rax
test r12, r12
jns 0x100491f6d
jmp 0x100492f82
mov byte [r13 + 1], 0xa
sub r12, 1
lea rax, [rbx + 1]
mov r13, rbx
cmp r12, 0xffffffffffffffff
je 0x100492520
mov rbx, rax
movzx eax, byte [r13 + 1]
test al, al
je 0x100491f50
cmp al, 0xa
jne 0x100491f55
test rbp, rbp
jne 0x100492030
mov rsi, rbx
mov byte [r13 + 1], 0
sub rsi, r14
cmp dword [rsp + 0x3c], 1
lea edi, [rsi + 1]
jne 0x100491ff5
cmp rbx, r14
jbe 0x100491fa8
cmp byte [r13], 0xd
je 0x100492560
cmp dword [rsp + 0x4c], 1
je 0x100491ff5
mov eax, dword [rsp + 0x90]
test eax, eax
je 0x100491fed
cmp byte [rsp + 0x97], 0
je 0x100491fed
mov eax, dword [rsp + 0x80]
test eax, eax
jne 0x10049303f
mov ecx, dword [rsp + 0xa0]
xor r8d, r8d
xor edx, edx
call sub.msys_2.0.dll_lseek
test rax, rax
je 0x10049303f
mov dword [rsp + 0x4c], 1
mov r9d, dword [rsp + 0x38]
mov r8d, edi
mov rdx, r14
mov rcx, r15
call sym.vim.exe_ml_append
test eax, eax
je 0x100492820
mov eax, dword [rsp + 0x48]
test eax, eax
jne 0x100492040
add r15, 1
sub qword [rsp + 0x40], 1
je 0x10049205c
lea r14, [r13 + 2]
jmp 0x100491f55
sub rbp, 1
jmp 0x100492024
mov rcx, qword [rsp + 0x70]
mov r8d, edi
mov rdx, r14
add r15, 1
call sym.vim.exe_sha256_update
sub qword [rsp + 0x40], 1
jne 0x100492024
mov rdi, r15
xor ebp, ebp
mov r14, rbx
call sym.vim.exe_ui_breakcheck
mov rdx, qword [rsp + 0x40]
test rbp, rbp
sete al
mov qword [rsp + 0x58], rdx
mov rdx, qword [sym.vim.exe_curbuf]
mov rdx, qword [rdx]
test al, al
je 0x10049409b
mov rax, qword [sym.vim.exe_got_int]
cmp qword [rsp + 0x58], 0
mov eax, dword [rax]
je 0x1004920a4
test eax, eax
je 0x10049345e
xor r12d, r12d
xor edi, edi
mov r11d, dword [rsp + 0xa4]
test r11d, r11d
jne 0x1004934bf
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rcx, qword [rax + 0x2460]
test rcx, rcx
je 0x1004920ea
call sym.vim.exe_crypt_free_state
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rax + 0x2460], 0
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x10049210f
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
cmp qword [rax + 0x1c50], rcx
je 0x10049210f
call sym.vim.exe_crypt_free_key
mov r10d, dword [rsp + 0xa4]
test r10d, r10d
jne 0x100493432
mov r9d, dword [rsp + 0x17c]
test r9d, r9d
jne 0x1004934d3
mov rax, qword [rsp + 0x68]
cmp rax, 0xffffffffffffffff
je 0x100492144
mov rcx, rax
call sub.msys_iconv_2.dll_libiconv_close
mov r8d, dword [rsp + 0x108]
test r8d, r8d
jne 0x100492f92
mov ecx, dword [rsp + 0xa0]
call sub.msys_2.0.dll_close
mov rcx, qword [rsp + 0xd8]
call sym.vim.exe_vim_free
mov ecx, dword [rsp + 0xe4]
test ecx, ecx
jne 0x100493413
mov rsi, qword [rsp + 0x100]
test rsi, rsi
je 0x10049219a
mov rcx, rsi
call sub.msys_2.0.dll_unlink
mov rcx, rsi
call sym.vim.exe_vim_free
mov rax, qword [sym.vim.exe_no_wait_return]
sub dword [rax], 1
mov rax, qword [rsp + 0x150]
mov edx, dword [rax]
test edx, edx
jne 0x1004922fa
mov rax, qword [sym.vim.exe_curbuf]
mov edx, dword [rsp + 0x15c]
and edx, dword [rsp + 0x360]
and edx, 1
mov rax, qword [rax]
je 0x1004921dd
test byte [rax + 0x20], 1
je 0x100493e56
cmp qword [rsp + 0xb8], 0
mov rax, qword [rax]
jne 0x1004933db
mov eax, dword [rsp + 0xfc]
xor ebp, ebp
test eax, eax
jne 0x100493cf6
mov eax, dword [rsp + 0xe4]
test eax, eax
jne 0x1004943f9
mov rax, qword [sym.vim.exe_got_int]
mov eax, dword [rax]
test eax, eax
jne 0x1004943c6
test byte [rsp + 0x360], 0x12
je 0x100494ac6
mov r8d, dword [rsp + 0x38]
test r8d, r8d
je 0x10049226f
cmp qword [rsp + 0x98], 0
jne 0x10049225b
test dil, 1
jne 0x10049225b
cmp qword [rsp + 0x118], 0
jle 0x10049226f
cmp dword [rsp + 0x60], 0xffffffff
je 0x10049226f
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1ca0], 1
call sym.vim.exe_u_clearline
mov rax, qword [sym.vim.exe_exmode_active]
mov ecx, dword [rax]
mov rax, qword [sym.vim.exe_curwin]
test ecx, ecx
mov rax, qword [rax]
jne 0x100493b32
mov rcx, qword [rsp + 0x340]
lea rdx, [rcx + 1]
mov qword [rax + 0x38], rdx
call sym.vim.exe_check_cursor_lnum
mov ecx, 5
call sym.vim.exe_beginline
mov rax, qword [sym.vim.exe_cmdmod]
mov eax, dword [rax]
test ah, 8
jne 0x1004922fa
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rsp + 0x340]
mov rax, qword [rax]
lea rdx, [rcx + 1]
mov qword [rax + 0x11f0], rdx
mov rdx, rbp
mov dword [rax + 0x11f8], 0
add rdx, rcx
mov qword [rax + 0x1210], rdx
mov dword [rax + 0x1218], 0
mov rax, qword [sym.vim.exe_msg_scroll]
mov edx, dword [rsp + 0xe0]
mov dword [rax], edx
call sym.vim.exe_check_marks_read
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rax + 0x1e88], r12
test byte [rsp + 0x360], 0x20
jne 0x100494199
mov edx, dword [rsp + 0x48]
test edx, edx
jne 0x10049416a
test byte [rsp + 0x360], 0x44
jne 0x100492369
cmp qword [rsp + 0x88], 0
mov eax, dword [rsp + 0x80]
setne bpl
test eax, eax
je 0x100493e89
test bpl, bpl
jne 0x100493e89
mov rax, qword [rsp + 0x150]
mov eax, dword [rax]
test eax, eax
setne al
and eax, edi
xor eax, 1
movzx eax, al
mov dword [rsp + 0x80], eax
jmp 0x100491450
test r12, r12
js 0x100491f0c
mov rcx, qword [rsp + 0x58]
lea rax, [rcx + r12]
cmp rax, 0xffffffffffffffff
jl 0x100491f0c
cmp rcx, 0x7ffffffe
jg 0x100491f0c
mov r11d, dword [rsp + 0x78]
test r11d, r11d
je 0x100495411
mov dword [rsp + 0x50], 0
cmp qword [rsp + 0xb8], 0
je 0x10049267e
cmp qword [rsp + 0xd0], 0
je 0x10049240f
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_crypt_get_method_nr
mov ecx, eax
call sym.vim.exe_crypt_get_header_len
cdqe
cmp rax, qword [rsp + 0xb8]
je 0x10049267e
movsxd rax, dword [rsp + 0xc4]
sub rbx, rax
add rax, r12
mov qword [rsp + 0xa8], rax
test rax, rax
jle 0x1004948b2
cmp qword [rsp + 0x68], 0xffffffffffffffff
mov dword [rsp + 0xc4], 0
jne 0x100492832
mov r9d, dword [rsp + 0x64]
test r9d, r9d
jne 0x100492dbf
mov rax, qword [sym.vim.exe_enc_utf8]
mov esi, dword [rax]
test esi, esi
je 0x10049247a
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r11d, dword [rax + 0x1af0]
test r11d, r11d
je 0x1004939b1
mov rdx, qword [rsp + 0xa8]
add qword [rsp + 0xb8], rdx
lea r13, [rbx - 1]
lea r12, [rdx - 1]
cmp dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x78], 0
jne 0x100491f26
mov eax, dword [rsp + 0x90]
or eax, dword [rsp + 0x14c]
jne 0x1004942cc
mov r10d, dword [rsp + 0xe8]
test r10d, r10d
jne 0x100493960
call sym.vim.exe_default_fileformat
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0xe8]
mov dword [rsp + 0xe8], 0
mov dword [rsp + 0x90], eax
mov edx, dword [rsp + 0xa4]
mov dword [rsp + 0x78], 0
test edx, edx
je 0x100491f26
mov ecx, dword [rsp + 0x3c]
mov edx, 4
call sym.vim.exe_set_fileformat
jmp 0x100491f26
mov rdx, rax
mov rdi, r15
mov rbx, rax
sub rdx, r14
mov qword [rsp + 0x58], rdx
call sym.vim.exe_ui_breakcheck
mov r15d, dword [rsp + 0x50]
test r15d, r15d
je 0x100491eb8
mov rax, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x40]
mov qword [rsp + 0x40], rax
jmp 0x100492069
mov byte [r13], 0
mov edi, esi
jmp 0x100491ff5
test r12, r12
js 0x100492f82
lea rax, [rsp + 0x260]
mov r15, r14
mov r14, rbp
mov qword [rsp + 0x58], rax
jmp 0x1004925ad
mov byte [r13 + 1], 0xa
sub r12, 1
lea rax, [rbx + 1]
mov r13, rbx
cmp r12, 0xffffffffffffffff
je 0x100492628
mov rbx, rax
movzx eax, byte [r13 + 1]
test al, al
je 0x100492590
cmp al, 0xd
je 0x1004925c8
cmp al, 0xa
jne 0x100492595
mov byte [r13 + 1], 0xd
jmp 0x100492595
cmp al, 0xa
je 0x1004925be
test r14, r14
je 0x1004925e0
sub r14, 1
lea r15, [r13 + 2]
jmp 0x100492595
mov rsi, rbx
mov byte [r13 + 1], 0
mov r9d, dword [rsp + 0x38]
mov rdx, r15
sub rsi, r15
mov rcx, rdi
lea ebp, [rsi + 1]
mov r8d, ebp
call sym.vim.exe_ml_append
test eax, eax
je 0x100492fd0
mov eax, dword [rsp + 0x48]
test eax, eax
jne 0x100492648
add rdi, 1
sub qword [rsp + 0x40], 1
jne 0x1004925d5
jmp 0x10049205f
mov rdx, rax
mov rbp, r14
mov rbx, rax
mov r14, r15
sub rdx, r15
mov qword [rsp + 0x58], rdx
jmp 0x100492531
mov rcx, qword [rsp + 0x58]
mov r8d, ebp
mov rdx, r15
call sym.vim.exe_sha256_update
jmp 0x100492611
mov dword [rsp + 0x50], 0
mov qword [rsp + 0xf0], r14
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xb8], 0
cmp dword [rsp + 0x64], 0x4000
je 0x1004926d7
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov eax, dword [rax + 0x1af4]
test eax, eax
jne 0x10049240f
cmp qword [rsp + 0x100], 0
jne 0x10049240f
mov rax, qword [rsp + 0xb0]
movzx eax, byte [rax]
cmp al, 0x75
je 0x1004926d7
test al, al
jne 0x10049240f
mov rax, qword [sym.vim.exe_enc_utf8]
mov eax, dword [rax]
test eax, eax
je 0x10049240f
xor esi, esi
cmp r12, 1
jle 0x1004927ce
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r15d, dword [rax + 0x1af0]
test r15d, r15d
jne 0x1004927ce
cmp dword [rsp + 0x64], 0x4000
mov eax, 0xffffffff
je 0x100492719
mov rcx, qword [rsp + 0xb0]
call sym.vim.exe_get_fio_flags
movzx edx, byte [rbx]
xor esi, esi
cmp dl, 0xef
je 0x100494d86
cmp dl, 0xff
jne 0x1004948e0
cmp byte [rbx + 1], 0xfe
jne 0x1004927ce
cmp r12, 3
jle 0x100492760
cmp byte [rbx + 2], 0
jne 0x100492760
cmp byte [rbx + 3], 0
jne 0x100492760
cmp eax, 0xffffffff
je 0x100495528
cmp eax, 0x88
je 0x100495528
cmp eax, 0x84
je 0x10049545d
cmp eax, 0xffffffff
je 0x100492779
xor esi, esi
cmp eax, 0x90
jne 0x1004927ce
mov edx, 2
mov ecx, 2
lea rsi, [0x1006c084f]
sub r12, rcx
add qword [rsp + 0xb8], rcx
add rdx, rbx
mov rcx, rbx
mov r8, r12
call sub.msys_2.0.dll_memmove
mov r13d, dword [rsp + 0xa4]
test r13d, r13d
je 0x1004927ce
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1af4], 1
mov dword [rax + 0x1ea4], 1
cmp dword [rsp + 0x64], 0x4000
jne 0x10049240f
test rsi, rsi
je 0x100495550
mov r11d, dword [rsp + 0x17c]
test r11d, r11d
jne 0x10049553e
mov dword [rsp + 0x17c], 0
xor r13d, r13d
mov qword [rsp + 0xb0], rsi
mov dword [rsp + 0x78], 1
jmp 0x100491b11
mov rbp, qword [rsp + 0x40]
mov rdi, r15
mov qword [rsp + 0x40], rsi
jmp 0x100492064
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x128]
mov qword [rsp + 0x188], rbx
lea r12, [rsp + 0x198]
lea rsi, [rsp + 0x188]
mov qword [rsp + 0x78], r14
mov r14, r12
lea r15, [rsp + 0x1c0]
add rbx, rcx
sub rax, rcx
mov r12, rsi
mov qword [rsp + 0x198], rcx
mov qword [rsp + 0x190], rbx
mov rsi, qword [rsp + 0x98]
lea r13, [rsp + 0x190]
mov qword [rsp + 0x1c0], rax
nop dword [rax + rax]
mov qword [rsp + 0x20], r15
mov rcx, qword [rsp + 0x68]
mov r9, r13
mov r8, r14
mov rdx, r12
call sub.msys_iconv_2.dll_libiconv
cmp rax, 0xffffffffffffffff
je 0x1004929b1
mov rax, qword [rsp + 0x198]
cmp rax, 0x1e
jbe 0x100492d64
mov r10d, dword [rsp + 0x84]
test r10d, r10d
jne 0x1004929d0
test rsi, rsi
je 0x100492967
mov rax, qword [rsp + 0x188]
sub qword [rsp + 0x198], 1
cmp dword [rsp + 0x60], 0xffffffff
lea rcx, [rax + 1]
mov qword [rsp + 0x188], rcx
je 0x100492940
mov edx, dword [rsp + 0x60]
cmp edx, 0xfffffffe
je 0x1004928a0
mov rax, qword [rsp + 0x190]
lea rcx, [rax + 1]
mov qword [rsp + 0x190], rcx
mov byte [rax], dl
sub qword [rsp + 0x1c0], 1
jmp 0x1004928a0
mov rcx, qword [rsp + 0x190]
lea r10, [rcx + 1]
mov qword [rsp + 0x190], r10
movzx eax, byte [rax]
mov byte [rcx], al
sub qword [rsp + 0x1c0], 1
jmp 0x1004928a0
mov rax, qword [sym.vim.exe_curbuf]
mov r10, qword [rsp + 0x190]
mov rax, qword [rax]
mov rsi, qword [rax]
sub rsi, qword [rsp + 0xc8]
add rsi, 1
cmp r10, rbx
jbe 0x1004928ea
mov rax, rbx
nop dword [rax]
xor edx, edx
cmp byte [rax], 0xa
sete dl
add rax, 1
add rsi, rdx
cmp r10, rax
jne 0x100492998
jmp 0x1004928ea
call sub.msys_2.0.dll___errno
cmp dword [rax], 0x16
je 0x1004928c2
mov r10d, dword [rsp + 0x84]
test r10d, r10d
je 0x1004928e5
mov qword [rsp + 0x98], rsi
mov r14, qword [rsp + 0x78]
mov dword [rsp + 0xc4], 0
mov r12, qword [rsp + 0xa8]
mov rax, qword [sym.vim.exe_p_ccv]
mov rax, qword [rax]
cmp byte [rax], 0
je 0x100494555
cmp qword [rsp + 0x68], 0xffffffffffffffff
je 0x100494555
mov dword [rsp + 0x78], 0
xor r13d, r13d
mov dword [rsp + 0xf8], 1
mov r10d, dword [rsp + 0x80]
test r10d, r10d
jne 0x100492d48
mov r9d, dword [rsp + 0xe4]
test r9d, r9d
jne 0x1004948d2
mov ecx, dword [rsp + 0xa0]
xor r8d, r8d
xor edx, edx
call sub.msys_2.0.dll_lseek
test rax, rax
jne 0x1004948d2
mov rsi, qword [rsp + 0x340]
cmp rdi, qword [rsp + 0x340]
jle 0x100492a89
nop dword [rax + rax]
mov rcx, rdi
sub rdi, 1
call sym.vim.exe_ml_delete
cmp rsi, rdi
jne 0x100492a78
mov r8d, dword [rsp + 0xa4]
mov qword [rsp + 0x98], 0
test r8d, r8d
je 0x100491b09
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1af4], 0
mov dword [rax + 0x1ea4], 0
jmp 0x100491b09
mov edx, dword [rsp + 0x64]
test edx, edx
jne 0x100491d8f
test al, al
je 0x100491d8f
mov qword [rsp + 0x68], 0xffffffffffffffff
mov r13d, 1
jmp 0x100491b11
test eax, eax
jne 0x1004932f0
cmp qword [rsp + 0x180], 0
je 0x100492ed8
lea rdx, [rsp + 0x17c]
lea rcx, [rsp + 0x180]
call fcn.10048f280
mov qword [rsp + 0xb0], rax
jmp 0x100491be9
mov dword [rsp + 0x64], 0
mov qword [rsp + 0x68], 0xffffffffffffffff
jmp 0x100491d8f
mov rcx, qword [rsp + 0xb0]
call sym.vim.exe_get_fio_flags
mov dword [rsp + 0x64], eax
or eax, dword [rsp + 0xf8]
jne 0x100495473
mov r10d, dword [rsi]
lea r13, [0x1006c0826]
test r10d, r10d
jne 0x100491c8b
mov rax, qword [sym.vim.exe_p_enc]
mov r13, qword [rax]
jmp 0x100491c8b
mov rsi, qword [rsp + 0x58]
mov r12d, 0x100000
lea rax, [rsi + 0x100000]
jmp 0x100492ba9
shr r12, 1
cmp r12, 9
jbe 0x1004953f4
lea rax, [rsi + r12]
xor edx, edx
lea rcx, [rax + 1]
call sym.vim.exe_lalloc
test rax, rax
je 0x100492b98
mov r14, rax
mov r8, qword [rsp + 0x58]
test r8, r8
je 0x100492bd4
mov rdx, rbx
mov rcx, r14
sub rdx, r8
call sub.msys_2.0.dll_memmove
mov rcx, qword [rsp + 0xd8]
call sym.vim.exe_vim_free
mov rax, qword [rsp + 0x58]
cmp qword [rsp + 0x68], 0xffffffffffffffff
lea rbx, [r14 + rax]
movsxd rax, r12d
mov qword [rsp + 0x128], rax
je 0x100493978
sar r12, 3
mov eax, dword [rsp + 0xc4]
test eax, eax
jle 0x100492c2c
movsxd rsi, eax
mov rcx, rbx
lea rdx, [rsp + 0x1a0]
mov r8, rsi
add rbx, rsi
sub r12, rsi
call sub.msys_2.0.dll_memcpy
mov r10d, dword [rsp + 0x80]
test r10d, r10d
je 0x10049312b
mov rax, qword [rsp + 0x138]
cmp rax, qword [rsp + 0x340]
jle 0x100494568
xor r15d, r15d
xor r12d, r12d
cmp qword [rsp + 0xd0], 0
je 0x10049327d
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rcx, qword [rax + 0x2460]
test rcx, rcx
je 0x10049327d
test r12, r12
jg 0x10049423d
test r12, r12
jne 0x100493b15
mov eax, dword [rsp + 0xc4]
test eax, eax
jle 0x100493286
mov eax, dword [rsp + 0x64]
test eax, eax
setne dl
cmp qword [rsp + 0x68], 0xffffffffffffffff
setne al
or dl, al
je 0x100494f66
mov eax, dword [rsp + 0x84]
test eax, eax
jne 0x100495440
cmp qword [rsp + 0x98], 0
jne 0x100492cf8
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rax, qword [rax]
sub rax, qword [rsp + 0xc8]
add rax, 1
mov qword [rsp + 0x98], rax
cmp dword [rsp + 0x60], 0xfffffffe
je 0x100495291
cmp dword [rsp + 0x60], 0xffffffff
je 0x100495278
test dl, dl
jne 0x10049524e
mov dword [rsp + 0x64], 0
mov dword [rsp + 0x50], 0
mov qword [rsp + 0xf0], r14
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0x68], 0xffffffffffffffff
jmp 0x1004923cf
mov dword [rsp + 0x124], 0
mov qword [rsp + 0x138], 1
jmp 0x100492a61
mov qword [rsp + 0x98], rsi
mov r8, rax
mov dword [rsp + 0xc4], 0
test rax, rax
jne 0x1004941a3
mov r8, qword [rsp + 0x58]
mov r14, rbx
mov rdx, qword [rsp + 0xd8]
sub r14, r8
mov rcx, r14
call sub.msys_2.0.dll_memmove
mov rax, qword [rsp + 0x190]
mov r9d, dword [rsp + 0x64]
sub rax, rbx
mov qword [rsp + 0xa8], rax
test r9d, r9d
je 0x100492453
mov rax, qword [rsp + 0x128]
mov ecx, dword [rsp + 0x64]
add rax, rbx
mov qword [rsp + 0x130], rax
lea eax, [rcx - 1]
cmp eax, 1
jbe 0x1004934e5
mov eax, dword [rsp + 0x64]
test al, 0x14
je 0x100493b46
mov rdx, qword [rsp + 0xa8]
and eax, 0x10
mov rsi, rdx
and rsi, 0xfffffffffffffffe
add rsi, rbx
and edx, 1
jne 0x10049477e
test eax, eax
je 0x1004934fa
cmp rbx, rsi
jae 0x100494f9b
xor r13d, r13d
movzx eax, byte [rsi - 2]
movzx ecx, byte [rsi - 1]
lea rdx, [rsi - 2]
test byte [rsp + 0x64], 0x80
je 0x1004952ca
shl ecx, 8
add eax, ecx
sub eax, 0xd800
cmp eax, 0x3ff
ja 0x100493b63
mov rax, qword [rsp + 0xa8]
mov r13, rdx
mov rsi, rdx
add rax, rbx
jmp 0x100493b77
mov ecx, dword [rsp + 0x38]
call sym.vim.exe_check_need_swap
mov ebp, dword [rsp + 0xe4]
test ebp, ebp
jne 0x100492ff6
mov rax, qword [sym.vim.exe_curbuf]
cmp qword [rax], rbx
jne 0x100492ea2
test dil, dil
je 0x100492fe2
cmp qword [rbx + 0x88], r12
je 0x100492fe2
mov rcx, qword [sym.vim.exe_e_autocommands_changed_buffer_or_buffer_name]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
mov r11d, dword [rsp + 0x80]
test r11d, r11d
jne 0x100491545
mov ecx, dword [rsp + 0xa0]
call sub.msys_2.0.dll_close
jmp 0x100491450
lea rax, [0x1006c0700]
mov dword [rsp + 0x17c], 0
mov qword [rsp + 0xb0], rax
jmp 0x100491be9
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0x1e0]
call sub.msys_2.0.dll_stat
test eax, eax
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
js 0x100494124
mov rdx, qword [rsp + 0x208]
mov r8, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x228]
mov qword [rsp + 0x110], rdx
mov qword [rax + 0x150], rdx
mov edx, dword [rsp + 0x1f0]
mov qword [rax + 0x130], r8
mov dword [rax + 0x158], edx
and edx, 0x24
mov qword [rax + 0x138], rcx
or edx, 0x180
mov qword [rax + 0x140], r8
mov esi, edx
mov qword [rax + 0x148], rcx
and dword [rax + 0x7c], 0xffffffcf
jmp 0x100491378
mov rax, rbx
sub rax, r14
mov qword [rsp + 0x58], rax
jmp 0x100492531
mov ecx, dword [rsp + 0xa0]
mov edx, 1
call sub.msys_2.0.dll_fcntl
mov r8d, eax
test eax, eax
js 0x100492161
test al, 1
jne 0x100492161
mov ecx, dword [rsp + 0xa0]
or r8d, 1
mov edx, 2
call sub.msys_2.0.dll_fcntl
jmp 0x100492161
mov rbp, qword [rsp + 0x40]
mov r14, r15
mov qword [rsp + 0x40], rsi
jmp 0x100492064
cmp byte [rsp + 0x3c], 0
je 0x100492ff6
cmp qword [rbx + 0x98], r14
jne 0x100492ea2
test esi, esi
jle 0x1004915d7
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rax, qword [rax + 8]
test rax, rax
je 0x1004915d7
mov r15, qword [rax]
test r15, r15
je 0x1004915d7
mov eax, esi
and eax, 0x24
cmp eax, 0x20
je 0x10049514b
movsxd rdx, esi
mov rcx, r15
call sym.vim.exe_mch_setperm
jmp 0x1004915d7
mov eax, dword [rsp + 0xa4]
mov rdi, r15
test eax, eax
jne 0x100494491
mov dword [rsp + 0x70], 1
xor r13d, r13d
mov dword [rsp + 0x3c], 0
jmp 0x100492a25
cmp byte [rsp + 0x3c], 0
je 0x10049307d
cmp qword [rbx + 0x98], r14
jne 0x10049453c
mov rdi, qword [rsp + 0x88]
mov rcx, rdi
call sym.vim.exe_dir_of_file_exists
test eax, eax
je 0x100495328
call sym.vim.exe_new_file_message
xor r9d, r9d
mov rdx, rdi
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
call sym.vim.exe_check_marks_read
cmp qword [rsp + 0x358], 0
je 0x1004930cf
mov rcx, qword [rsp + 0x358]
call sym.vim.exe_set_forced_fenc
mov rax, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x88]
mov ecx, 8
xor r9d, r9d
mov qword [rsp + 0x28], rax
mov rax, qword [sym.vim.exe_curbuf]
mov r8, rdx
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_save_file_ff
call sym.vim.exe_aborting
test eax, eax
sete al
movzx eax, al
mov dword [rsp + 0x80], eax
jmp 0x100491450
mov r15d, dword [rsp + 0xa0]
mov r13d, r12d
mov rsi, r12
jmp 0x10049314a
call sub.msys_2.0.dll___errno
cmp dword [rax], 4
jne 0x100493160
mov r8, rsi
mov rdx, rbx
mov ecx, r15d
call sub.msys_2.0.dll_read
mov r12, rax
test rax, rax
js 0x100493140
add qword [rsp + 0x140], r12
movsxd rdx, r13d
mov rax, qword [rsp + 0x140]
cmp rax, qword [rsp + 0x110]
sete al
cmp rdx, r12
setg dl
or eax, edx
movzx r15d, al
cmp qword [rsp + 0xb8], 0
jne 0x100492c59
test r12, r12
jle 0x100492c59
mov rcx, rbx
mov edx, r12d
call sym.vim.exe_crypt_method_nr_from_magic
mov r13d, eax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
mov eax, dword [rcx + 0x1ca0]
mov dword [rsp + 0x50], eax
test r13d, r13d
js 0x100493c70
mov dword [rcx + 0x1ca0], 1
mov edx, r13d
call sym.vim.exe_crypt_set_cm_option
cmp qword [rsp + 0xd0], 0
je 0x100495011
mov ecx, r13d
call sym.vim.exe_crypt_get_header_len
cdqe
mov qword [rsp + 0xb8], rax
cmp rax, r12
jge 0x100494fca
mov rax, qword [sym.vim.exe_curbuf]
mov rdx, qword [rsp + 0xd0]
mov r8, rbx
mov ecx, r13d
mov rsi, qword [rax]
call sym.vim.exe_crypt_create_from_header
mov edx, r13d
mov qword [rsi + 0x2460], rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_crypt_set_cm_option
mov rax, qword [rsp + 0xb8]
mov rcx, rbx
sub r12, rax
lea rdx, [rbx + rax]
mov r8, r12
call sub.msys_2.0.dll_memmove
mov rax, qword [sym.vim.exe_curbuf]
mov ecx, dword [rsp + 0x50]
mov rax, qword [rax]
mov dword [rax + 0x1ca0], ecx
mov rcx, qword [rax + 0x2460]
test rcx, rcx
jne 0x100493cb3
test r12, r12
jle 0x100492c8b
mov dword [rsp + 0x50], 0
mov qword [rsp + 0xf0], r14
mov qword [rsp + 0xd8], r14
jmp 0x1004923cf
mov rdx, rax
call sym.vim.exe_get_fileformat_force
mov dword [rsp + 0x90], 0
mov dword [rsp + 0x3c], eax
mov dword [rsp + 0x14c], 0
mov dword [rsp + 0xe8], 0
jmp 0x100491b6b
lea rcx, str._File_too_big_
call sub.msys_intl_8.dll_libintl_gettext
jmp 0x10049141f
mov eax, 1
jmp 0x100492079
mov rcx, qword [rsp + 0xb0]
call sym.vim.exe_vim_free
jmp 0x100492af9
mov eax, dword [rcx + 0x1f08]
mov dword [rsp + 0x148], eax
test eax, eax
je 0x100493baa
mov rbx, qword [sym.vim.exe_enc_utf8]
mov eax, dword [rbx]
test al, al
jne 0x100493c3e
cmp byte [rsp + 0x97], 0
je 0x100494ea7
mov rdi, qword [rsp + 0x88]
mov rcx, rdi
call sub.msys_2.0.dll_strlen
movzx eax, byte [rdi + rax - 1]
lea edx, [rax - 0x41]
cmp edx, 0x19
ja 0x100494f38
cmp eax, 0x58
sete al
lea r13, [rsp + 0x260]
test al, al
jne 0x100493be6
lea rax, [0x1006c081f]
mov dword [rsp + 0x148], 0
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x17c], 0
jmp 0x1004919de
mov r10d, dword [rsp + 0x108]
test r10d, r10d
jne 0x100491545
mov ecx, dword [rsp + 0xa0]
call sub.msys_2.0.dll_close
mov dword [rsp + 0x80], 0
jmp 0x100491450
mov dword [rcx + 0x1ea0], 0
mov dword [rsp + 0x60], 0x3f
jmp 0x100491992
sub rax, qword [rsp + 0xc8]
mov rbp, rax
mov eax, dword [rsp + 0xfc]
test eax, eax
jne 0x100493cf6
test rbp, rbp
je 0x100492200
mov rcx, qword [rsp + 0x340]
mov rdx, rbp
call sym.vim.exe_appended_lines_mark
jmp 0x100492200
xor ecx, ecx
call sub.msys_2.0.dll_close
mov ecx, 2
call sub.msys_2.0.dll_dup
mov rdx, qword [sym.vim.exe_vim_ignored]
mov dword [rdx], eax
jmp 0x10049217d
mov dword [rsp + 0x20], 0
mov r9d, 5
mov r8, qword [rsp + 0xb0]
mov edx, 0xffffffff
lea rcx, [0x1006c0711]
call sym.vim.exe_set_string_option_direct
jmp 0x100492120
mov r12d, dword [rdx + 0x1af0]
test r12d, r12d
jne 0x100493475
cmp dword [rsp + 0x3c], 1
je 0x100495356
mov rax, rbx
mov ebp, dword [rsp + 0xa4]
sub rax, r14
lea esi, [rax + 1]
test ebp, ebp
je 0x100494e5d
mov dword [rdx + 0x1bb0], 0
mov r9d, dword [rsp + 0x38]
mov r8d, esi
mov rdx, r14
mov byte [rbx], 0
mov rcx, rdi
call sym.vim.exe_ml_append
test eax, eax
jne 0x100494d6f
mov edi, dword [rsp + 0xa4]
xor r12d, r12d
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_save_file_ff
jmp 0x1004920ba
mov rcx, qword [rsp + 0xb0]
call sym.vim.exe_vim_free
jmp 0x100492131
mov rax, qword [rsp + 0xa8]
lea rsi, [rbx + rax]
cmp ecx, 2
je 0x100493f6f
cmp rbx, rsi
jae 0x1004956d0
mov r10d, dword [rsp + 0x64]
mov r15, qword [rsp + 0x130]
and r10d, 1
jmp 0x10049354b
sub rsi, 1
mov rax, qword [sym.vim.exe_enc_utf8]
lea rcx, [r15 - 1]
mov r13d, dword [rax]
test r13d, r13d
jne 0x1004936d0
mov byte [r15 - 1], r12b
mov r15, rcx
cmp rsi, rbx
jbe 0x10049389f
movzx r12d, byte [rsi - 1]
test r10d, r10d
jne 0x100493520
mov ecx, dword [rsp + 0x64]
test cl, 0x14
je 0x100493700
movzx eax, byte [rsi - 2]
lea rdx, [rsi - 2]
and ecx, 0x80
je 0x100493742
shl r12d, 8
add r12d, eax
test byte [rsp + 0x64], 0x10
je 0x100493600
lea eax, [r12 - 0xdc00]
cmp eax, 0x3ff
ja 0x100493600
cmp rbx, rdx
je 0x1004938e5
test ecx, ecx
movzx ecx, byte [rsi - 3]
je 0x100493882
movzx eax, byte [rsi - 4]
shl ecx, 8
lea rdx, [rsi - 4]
add eax, ecx
lea ecx, [rax - 0xd800]
cmp ecx, 0x3ff
jbe 0x100493696
mov ecx, dword [rsp + 0x84]
test ecx, ecx
jne 0x10049428a
cmp qword [rsp + 0x98], 0
je 0x100494412
cmp dword [rsp + 0x60], 0xfffffffe
je 0x100493f67
cmp dword [rsp + 0x60], 0xffffffff
je 0x100493696
mov r12d, dword [rsp + 0x60]
mov rax, qword [sym.vim.exe_enc_utf8]
mov eax, dword [rax]
test eax, eax
jne 0x1004936c4
lea rcx, [r15 - 1]
cmp r12d, 0xff
jle 0x100495631
mov r13d, dword [rsp + 0x84]
test r13d, r13d
jne 0x10049428a
cmp qword [rsp + 0x98], 0
je 0x1004937f7
cmp dword [rsp + 0x60], 0xfffffffe
mov rsi, rdx
je 0x100493542
cmp dword [rsp + 0x60], 0xffffffff
je 0x10049385a
cmp qword [rsp + 0x358], 0
je 0x1004937e7
mov rax, qword [rsp + 0x358]
mov r12d, dword [rax + 0x90]
test r12d, r12d
je 0x1004937e7
movzx eax, byte [rsp + 0x60]
mov rsi, rdx
mov byte [r15 - 1], al
mov r15, rcx
jmp 0x100493542
shl eax, 0xa
and r12d, 0x3ff
lea rcx, [r15 - 1]
and eax, 0xffc00
lea r12d, [r12 + rax + 0x10000]
mov rax, qword [sym.vim.exe_enc_utf8]
mov r11d, dword [rax]
test r11d, r11d
je 0x100493622
mov rsi, rdx
nop word [rax + rax]
mov ecx, r12d
mov dword [rsp + 0x78], r10d
call sym.vim.exe_utf_char2len
mov ecx, r12d
cdqe
sub r15, rax
mov rdx, r15
call sym.vim.exe_utf_char2bytes
mov r10d, dword [rsp + 0x78]
jmp 0x100493542
mov r11d, dword [rsp + 0x64]
test r11b, 8
je 0x10049374d
and r11d, 0x80
movzx eax, byte [rsi - 2]
movzx ecx, byte [rsi - 4]
lea rdx, [rsi - 4]
movzx r8d, byte [rsi - 3]
je 0x100493869
shl r12d, 0x18
shl eax, 0x10
add r12d, eax
shl r8d, 8
add r12d, r8d
add r12d, ecx
jmp 0x100493600
shl eax, 8
add r12d, eax
jmp 0x10049357d
sub rsi, 1
test r12b, r12b
jns 0x100493524
mov rdx, rsi
mov rcx, rbx
mov dword [rsp + 0x16c], r10d
call sym.vim.exe_utf_head_off
mov rdx, rsi
mov r8d, eax
cdqe
sub rdx, rax
mov dword [rsp + 0x168], r8d
mov rcx, rdx
mov qword [rsp + 0x78], rdx
call sym.vim.exe_utf_ptr2char
mov r8d, dword [rsp + 0x168]
mov rdx, qword [rsp + 0x78]
mov r10d, dword [rsp + 0x16c]
mov r12d, eax
test r8d, r8d
jne 0x100493600
mov eax, dword [rsp + 0x84]
test eax, eax
jne 0x10049428a
cmp qword [rsp + 0x98], 0
je 0x1004947a3
cmp dword [rsp + 0x60], 0xfffffffe
je 0x100493f67
mov eax, dword [rsp + 0x60]
cmp eax, 0xffffffff
cmovne r12d, eax
jmp 0x100493600
mov byte [r15 - 1], 0xbf
mov rsi, rdx
mov r15, rcx
jmp 0x100493542
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r13, qword [rax]
sub r13, qword [rsp + 0xc8]
add r13, 1
mov qword [rsp + 0x98], r13
cmp rbx, rdx
jae 0x100494297
mov rsi, rbx
nop dword [rax]
xor eax, eax
cmp byte [rsi], 0xa
sete al
add rsi, 1
add r13, rax
cmp rsi, rdx
jne 0x100493828
cmp dword [rsp + 0x60], 0xfffffffe
mov qword [rsp + 0x98], r13
je 0x10049354b
cmp dword [rsp + 0x60], 0xffffffff
jne 0x10049365b
mov byte [r15 - 1], r12b
mov rsi, rdx
mov r15, rcx
jmp 0x100493542
shl eax, 8
shl r8d, 0x10
add eax, r8d
shl ecx, 0x18
add eax, r12d
lea r12d, [rax + rcx]
jmp 0x100493600
movzx eax, byte [rsi - 4]
lea rdx, [rsi - 4]
shl eax, 8
add eax, ecx
jmp 0x1004935b5
cmp dword [rsp + 0x60], 0xfffffffe
jne 0x1004935f0
mov rax, qword [rsp + 0x130]
lea r13, [r15 - 1]
mov rbx, r15
sub rax, r15
add qword [rsp + 0xb8], rax
mov qword [rsp + 0xa8], rax
lea r12, [rax - 1]
mov r8, qword [rsp + 0x58]
mov r14, rbx
mov rdx, qword [rsp + 0xd8]
sub r14, r8
mov rcx, r14
call sub.msys_2.0.dll_memmove
jmp 0x100492492
mov r8d, dword [rsp + 0x84]
test r8d, r8d
jne 0x10049428a
cmp qword [rsp + 0x98], 0
je 0x100494694
cmp dword [rsp + 0x60], 0xfffffffe
je 0x10049389f
mov eax, dword [rsp + 0x60]
cmp eax, 0xffffffff
cmovne r12d, eax
jmp 0x10049359c
mov dword [rsp + 0x48], 0
jmp 0x100491e40
mov rcx, qword [rsp + 0x88]
mov edx, 2
xor r13d, r13d
call sub.msys_2.0.dll_access
test eax, eax
setne r13b
jmp 0x10049139b
mov dword [rcx + 0x1ea0], 0
mov dword [rsp + 0x60], 0x3f
jmp 0x1004919a9
mov dword [rsp + 0x90], 0
mov dword [rsp + 0x3c], 2
jmp 0x1004924ec
test byte [rsp + 0x64], 1
jne 0x100493e4e
test byte [rsp + 0x64], 0x14
je 0x100494d41
movabs rcx, 0xaaaaaaaaaaaaaaab
lea rdx, [r12 + r12]
mov rax, rdx
mul rcx
shr rdx, 1
and rdx, 0xfffffffffffffffe
mov r12, rdx
jmp 0x100492c05
mov rax, qword [rsp + 0xa8]
test eax, eax
jle 0x100495372
mov qword [rsp + 0x78], rdi
xor r12d, r12d
mov r13, rbx
mov edi, eax
mov qword [rsp + 0x130], rbp
mov r15, qword [rsp + 0x118]
mov rsi, rax
mov rbp, qword [rsp + 0x98]
jmp 0x100493a08
add r13, 1
lea rdx, [rbx + rsi]
mov rax, rdx
sub rax, r13
mov edi, eax
test eax, eax
jle 0x1004941ed
cmp byte [r13], 0
jns 0x1004939f0
mov edx, edi
mov rcx, r13
call sym.vim.exe_utf_ptr2len_len
mov edx, r12d
cmp edi, eax
setl cl
xor edx, 1
test r12d, r12d
jne 0x100493fc0
test cl, cl
je 0x100493fc0
cmp qword [rsp + 0xb8], 0
jg 0x100493fdb
cmp rbx, r13
jae 0x100494604
movsxd r12, edi
mov rdx, r13
lea rcx, [rsp + 0x1a0]
mov r9d, 0x1e
mov r8, r12
mov qword [rsp + 0xa8], rsi
mov rsi, r12
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0x98], rbp
mov rbp, qword [rsp + 0x130]
lea r13, [rbx - 1]
mov qword [rsp + 0x118], r15
call sub.msys_2.0.dll___memmove_chk
sub qword [rsp + 0xa8], r12
mov rax, qword [rsp + 0xa8]
mov dword [rsp + 0xc4], esi
add qword [rsp + 0xb8], rax
lea r12, [rax - 1]
jmp 0x100492492
call sym.vim.exe_get_fileformat
mov dword [rsp + 0x3c], eax
jmp 0x100491b6b
mov eax, dword [rcx + 0x20]
mov rdi, qword [sym.vim.exe_recoverymode]
mov dword [rsp + 0x15c], eax
mov eax, dword [rsp + 0x360]
mov qword [rsp + 0x150], rdi
and eax, 0x12
or eax, dword [rdi]
jne 0x100491942
call sym.vim.exe_is_not_a_term
test eax, eax
je 0x100495048
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
jmp 0x100491942
mov qword [rsp + 0xf0], r14
mov qword [rsp + 0xd8], r14
mov dword [rsp + 0x50], 1
jmp 0x1004923cf
mov rdx, qword [rsp + 0x340]
add rdx, rbp
mov qword [rax + 0x38], rdx
jmp 0x10049229f
mov rax, qword [rsp + 0xa8]
mov rsi, rax
and rsi, 0xfffffffffffffffc
add rsi, rbx
test al, 3
je 0x1004934fa
mov r13, rsi
test r13, r13
je 0x1004934fa
mov rax, qword [rsp + 0xa8]
add rax, rbx
sub rax, r13
lea rcx, [rsp + 0x1a0]
mov r9d, 0x1e
mov rdx, r13
movsxd r12, eax
mov dword [rsp + 0xc4], eax
mov r8, r12
call sub.msys_2.0.dll___memmove_chk
sub qword [rsp + 0xa8], r12
jmp 0x1004934fa
mov rax, qword [sym.vim.exe_p_fencs]
mov rax, qword [rax]
cmp byte [rax], 0
jne 0x100494980
mov rax, qword [rcx + 0x1bc8]
mov dword [rsp + 0x17c], 0
mov qword [rsp + 0xb0], rax
jmp 0x1004919de
call sub.msys_2.0.dll___errno
cmp dword [rax], 4
jne 0x100493c03
mov ecx, dword [rsp + 0xa0]
mov r8d, 0x50
mov rdx, r13
call sub.msys_2.0.dll_read
mov rsi, rax
test rax, rax
js 0x100493bdc
mov ecx, dword [rsp + 0xa0]
xor r8d, r8d
xor edx, edx
call sub.msys_2.0.dll_lseek
movsxd rax, esi
add rax, r13
cmp rax, r13
ja 0x100493c35
jmp 0x10049336d
add r13, 1
cmp r13, rax
je 0x10049336d
cmp byte [r13], 0
jns 0x100493c28
mov eax, dword [rbx]
test eax, eax
lea rdi, [0x1006c081f]
sete al
mov qword [rsp + 0x180], rdi
movzx eax, al
mov dword [rsp + 0x148], eax
lea rax, [0x1006c0826]
mov qword [rsp + 0xb0], rax
jmp 0x100493387
mov r8d, dword [rsp + 0x38]
test r8d, r8d
je 0x100493c97
mov rax, qword [rcx + 0x1c50]
cmp byte [rax], 0
je 0x100493c97
mov rax, qword [sym.vim.exe_starting]
mov edx, dword [rax]
test edx, edx
je 0x100495640
mov rcx, qword [rcx + 0x2460]
mov qword [rsp + 0xb8], 0
test rcx, rcx
je 0x100492c59
call sym.vim.exe_crypt_works_inplace
test eax, eax
mov eax, 0
cmovne eax, dword [rsp + 0x48]
mov dword [rsp + 0x48], eax
jmp 0x100492c59
mov dword [rcx + 0x1ea0], eax
jmp 0x100491992
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
and dword [rax + 0x7c], 0xfffffff7
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x80], eax
jmp 0x100491450
mov ecx, 0x28
call sym.vim.exe_redraw_curbuf_later
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_diff_invalidate
mov rax, qword [sym.vim.exe_curwin]
mov rcx, qword [rax]
call sym.vim.exe_foldUpdateAll
jmp 0x100492200
xor edx, edx
mov ecx, 0x72
call sym.vim.exe_vim_tempname
mov r13, rax
test rax, rax
je 0x100494eb4
mov ecx, dword [rsp + 0xa0]
call sub.msys_2.0.dll_close
mov r8d, dword [rsi]
lea rdx, [0x1006c0826]
test r8d, r8d
jne 0x100493d60
mov rax, qword [sym.vim.exe_p_enc]
mov rdx, qword [rax]
mov r8, qword [rsp + 0x88]
mov rcx, qword [rsp + 0xb0]
mov r9, r13
call sym.vim.exe_eval_charconvert
test eax, eax
jne 0x100494ef0
lea rcx, str.Conversion_with_charconvert_failed
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
test rax, rax
je 0x100494ef0
call sym.vim.exe_msg
mov rcx, r13
call sub.msys_2.0.dll_unlink
mov rcx, r13
call sym.vim.exe_vim_free
mov rcx, qword [rsp + 0x88]
xor r8d, r8d
mov edx, 0x10000
call sub.msys_2.0.dll_open
mov dword [rsp + 0xa0], eax
mov ecx, dword [rsp + 0xa0]
test ecx, ecx
js 0x100495584
mov dword [rsp + 0xf8], 0
jmp 0x100492add
lea rcx, str.is_a_directory
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
call sym.vim.exe_msg_end
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rsp + 0xe0]
mov dword [rsp + 0x80], 2
mov dword [rax], edi
jmp 0x100491450
mov rdx, rsi
mov rcx, r13
call sym.vim.exe_set_rw_fname
test eax, eax
jne 0x100491889
jmp 0x100491545
sar r12, 1
jmp 0x100492c05
mov rbx, qword [sym.vim.exe_netbeansFireChanges]
mov rcx, qword [rax]
mov dword [rbx], 0
call sym.vim.exe_ml_delete
mov rax, qword [sym.vim.exe_curbuf]
sub qword [rsp + 0xc8], 1
mov dword [rbx], 1
mov rax, qword [rax]
jmp 0x1004921dd
mov rax, qword [sym.vim.exe_msg_scroll]
mov r13, qword [sym.vim.exe_msg_scrolled]
mov ebx, dword [rax]
mov eax, dword [rsp + 0xa4]
mov esi, dword [r13]
test eax, eax
jne 0x100494a14
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], 1
mov eax, dword [rsp + 0xec]
test eax, eax
jne 0x1004949dc
mov eax, dword [rsp + 0x38]
test eax, eax
jne 0x100493eea
mov r15d, dword [rsp + 0x80]
test r15d, r15d
je 0x1004951ca
test bpl, bpl
je 0x1004951ca
mov rax, qword [rsp + 0x358]
mov r8, qword [rsp + 0x88]
xor r9d, r9d
xor edx, edx
mov ecx, 0xa
mov qword [rsp + 0x28], rax
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
mov rax, qword [sym.vim.exe_au_did_filetype]
mov r14d, dword [rax]
test r14d, r14d
jne 0x100493f46
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rdx, qword [rax + 0x1bd8]
cmp byte [rdx], 0
jne 0x100495610
cmp dword [r13], esi
jne 0x100493f55
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], ebx
call sym.vim.exe_aborting
test eax, eax
je 0x100492369
jmp 0x100491545
mov rsi, rdx
jmp 0x100493542
lea r13, [rbx + rax - 1]
movzx eax, byte [r13]
cmp rbx, r13
jb 0x100493f90
jmp 0x100493f9f
lea rax, [r13 - 1]
cmp rbx, rax
je 0x10049531b
mov r13, rax
movzx eax, byte [r13]
mov edx, eax
and edx, 0xffffffc0
cmp dl, 0x80
je 0x100493f80
movzx ecx, al
call sym.vim.exe_utf_byte2len
cdqe
add rax, r13
cmp rsi, rax
jae 0x1004934fa
mov rax, rsi
mov rsi, r13
jmp 0x100493b77
cmp eax, 1
je 0x1004953da
test cl, cl
jne 0x1004953da
cdqe
add r13, rax
jmp 0x1004939f4
cmp rbx, r13
jb 0x100493a4d
test rbp, rbp
jne 0x100493ff5
cmp qword [rsp + 0x68], 0xffffffffffffffff
jne 0x10049538c
mov r12d, 1
mov rax, rbp
or rax, r15
je 0x100494755
cmp dword [rsp + 0x60], 0xfffffffe
lea rdx, [r13 + 1]
je 0x1004941d5
mov eax, dword [rsp + 0x60]
cmp eax, 0xffffffff
je 0x1004944e6
mov byte [r13], al
mov r13, rdx
jmp 0x1004939f4
mov ecx, dword [rsp + 0xa0]
call sub.msys_2.0.dll_close
mov rax, qword [sym.vim.exe_msg_scroll]
mov ecx, dword [rsp + 0xec]
mov dword [rax], 1
test ecx, ecx
jne 0x1004916e6
mov edx, dword [rsp + 0x38]
mov rax, qword [rsp + 0x358]
test edx, edx
mov qword [rsp + 0x28], rax
je 0x10049446b
mov rax, qword [sym.vim.exe_curbuf]
mov r8, qword [rsp + 0x88]
xor r9d, r9d
xor edx, edx
mov ecx, 0xb
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100491719
xor r12d, r12d
mov edi, 1
jmp 0x1004920a9
mov rdi, qword [rsp + 0x358]
add rax, qword [rdi + 0x10]
mov rcx, rax
call sym.vim.exe_enc_canonize
mov dword [rsp + 0x17c], 1
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0x148], 1
jmp 0x1004919de
mov rax, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rsp + 0xe0]
sub dword [rax], 1
mov rax, qword [sym.vim.exe_msg_scroll]
mov dword [rax], edi
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1ca0], 1
jmp 0x100491450
mov rcx, qword [rsp + 0xb0]
call sym.vim.exe_vim_free
jmp 0x100491bbb
mov qword [rax + 0x130], 0
mov qword [rax + 0x138], 0
mov qword [rax + 0x140], 0
mov qword [rax + 0x148], 0
mov qword [rax + 0x150], 0
mov dword [rax + 0x158], 0
jmp 0x100492f79
lea r12, [rsp + 0x1c0]
lea rcx, [rsp + 0x260]
mov rdx, r12
call sym.vim.exe_sha256_finish
mov r8, qword [rsp + 0x88]
mov rdx, r12
xor ecx, ecx
call sym.vim.exe_u_read_undo
jmp 0x10049233a
call sym.vim.exe_u_find_first_changed
jmp 0x10049232e
mov rdx, qword [rsp + 0x188]
mov r9d, 0x1e
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x1a0]
call sub.msys_2.0.dll___memmove_chk
mov r8, qword [rsp + 0x78]
mov dword [rsp + 0xc4], r8d
jmp 0x100492d83
lea r8d, [rdi - 1]
mov rcx, r13
sub rsi, 1
movsxd r8, r8d
call sub.msys_2.0.dll_memmove
jmp 0x1004939f4
mov qword [rsp + 0xa8], rsi
mov rdi, qword [rsp + 0x78]
xor r12d, 1
mov qword [rsp + 0x118], r15
mov qword [rsp + 0x98], rbp
mov rbp, qword [rsp + 0x130]
cmp rdx, r13
jbe 0x100494220
test r12b, r12b
jne 0x10049428a
mov rcx, qword [rsp + 0xa8]
lea r13, [rbx - 1]
add qword [rsp + 0xb8], rcx
lea r12, [rcx - 1]
jmp 0x100492492
call sym.vim.exe_crypt_works_inplace
mov dword [rsp + 0x50], eax
test eax, eax
je 0x1004947fc
mov rax, qword [sym.vim.exe_curbuf]
mov r9d, r15d
mov r8, r12
mov rdx, rbx
mov rax, qword [rax]
mov rcx, qword [rax + 0x2460]
call sym.vim.exe_crypt_decode_inplace
mov dword [rsp + 0x50], 0
mov qword [rsp + 0xf0], r14
mov qword [rsp + 0xd8], r14
jmp 0x1004923cf
mov r12, qword [rsp + 0xa8]
jmp 0x1004929f0
cmp dword [rsp + 0x60], 0xfffffffe
jne 0x100493650
mov rax, qword [rsp + 0x130]
mov r13, rcx
mov rbx, r15
sub rax, r15
add qword [rsp + 0xb8], rax
mov qword [rsp + 0xa8], rax
lea r12, [rax - 1]
jmp 0x1004938c5
mov r9d, dword [rsp + 0xe8]
xor edx, edx
test r9d, r9d
mov r9, qword [rsp + 0xa8]
setne dl
add r9, rbx
mov dword [rsp + 0xe8], edx
cmp r9, rbx
jbe 0x1004949b1
mov rax, rbx
jmp 0x100494319
cmp edx, 1
mov r8d, edx
sbb edx, 0xffffffff
cmp cl, 0xd
cmovne edx, r8d
add rax, 1
cmp r9, rax
je 0x1004949aa
movzx ecx, byte [rax]
cmp cl, 0xa
jne 0x1004942fc
mov r8d, dword [rsp + 0x90]
mov dword [rsp + 0xe8], edx
mov dword [rsp + 0x3c], 1
test r8d, r8d
je 0x1004924ec
cmp rbx, rax
jae 0x10049435b
mov ecx, dword [rsp + 0x14c]
test ecx, ecx
je 0x10049435b
cmp byte [rax - 1], 0xd
je 0x1004924ec
mov edx, dword [rsp + 0xe8]
test edx, edx
je 0x100495577
sub rax, 1
cmp rbx, rax
ja 0x1004951a7
cmp byte [rax], 0xd
jne 0x10049436a
mov dword [rsp + 0x90], 1
mov rax, rbx
mov dword [rsp + 0xe8], 1
jmp 0x1004943b4
cmp dl, 0xd
sete dl
movzx edx, dl
add dword [rsp + 0xe8], edx
add rax, 1
cmp r9, rax
je 0x1004954d6
movzx edx, byte [rax]
cmp dl, 0xa
jne 0x100494397
add dword [rsp + 0x90], 1
jmp 0x1004943a7
test byte [rsp + 0x360], 0x10
je 0x100494932
mov rax, qword [sym.vim.exe_msg_scroll]
mov edi, dword [rsp + 0xe0]
mov dword [rax], edi
call sym.vim.exe_check_marks_read
mov dword [rsp + 0x80], 1
jmp 0x100491450
mov ecx, 2
call sym.vim.exe_settmode
call sym.vim.exe_starttermcap
call sym.vim.exe_screenclear
jmp 0x10049220f
mov rcx, qword [sym.vim.exe_curbuf]
mov rcx, qword [rcx]
mov r13, qword [rcx]
sub r13, qword [rsp + 0xc8]
add r13, 1
mov qword [rsp + 0x98], r13
cmp rbx, rdx
jae 0x100493894
mov rsi, rbx
xor ecx, ecx
cmp byte [rsi], 0xa
sete cl
add rsi, 1
add r13, rcx
cmp rdx, rsi
jne 0x10049443f
cmp dword [rsp + 0x60], 0xfffffffe
mov qword [rsp + 0x98], r13
jne 0x1004935f0
jmp 0x10049354b
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov ecx, 0x2f
mov qword [rsp + 0x20], 0
mov r8, rdx
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100491719
mov edx, 4
xor ecx, ecx
xor r13d, r13d
call sym.vim.exe_set_fileformat
mov eax, dword [rsp + 0xa4]
mov dword [rsp + 0x3c], 0
mov dword [rsp + 0x70], eax
jmp 0x100492a25
mov rcx, qword [rsp + 0x358]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor edx, edx
mov r8, qword [rsp + 0x88]
mov qword [rsp + 0x28], rcx
mov ecx, 0x54
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100491719
mov r13, rdx
jmp 0x1004939f4
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
or dword [rcx + 0x7c], 0x10
call sym.vim.exe_bt_dontwrite
mov dword [rsp + 0x80], eax
test eax, eax
jne 0x10049307d
mov ecx, 1
call sym.vim.exe_check_need_swap
mov rax, qword [sym.vim.exe_curbuf]
cmp qword [rax], rbx
jne 0x10049453c
test dil, dil
je 0x100493069
cmp qword [rbx + 0x88], r12
je 0x100493069
mov rcx, qword [sym.vim.exe_e_autocommands_changed_buffer_or_buffer_name]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x100491450
mov dword [rsp + 0x78], 0
mov r13d, 1
jmp 0x100492a25
mov qword [rsp + 0x78], rbp
xor r15d, r15d
xor r13d, r13d
mov rsi, rax
mov qword [rsp + 0x50], rdi
mov rdi, rbx
mov ebx, dword [rsp + 0x124]
mov rcx, rsi
call sym.vim.exe_ml_get
mov r9, rax
movsxd rax, ebx
lea rbp, [r9 + rax]
mov rcx, rbp
call sub.msys_2.0.dll_strlen
lea edx, [rax + r15 + 1]
movsxd rdx, edx
cmp rdx, r12
jg 0x100494a28
test eax, eax
jle 0x1004945ff
lea r10d, [rax - 1]
lea r9, [rdi + r15]
xor eax, eax
jmp 0x1004945c3
mov rax, rdx
movzx edx, byte [rbp + rax]
cmp dl, 0xa
cmove edx, r13d
mov byte [r9 + rax], dl
lea rdx, [rax + 1]
cmp rax, r10
jne 0x1004945c0
lea rax, [rax + r15 + 1]
mov byte [rdi + rax], 0xa
lea r15, [rax + 1]
add rsi, 1
cmp qword [rsp + 0x340], rsi
jl 0x100494a84
xor ebx, ebx
jmp 0x100494585
mov rax, r15
jmp 0x1004945e1
mov edx, dword [rsp + 0x84]
xor r12d, r12d
test edx, edx
jne 0x1004952d4
cmp qword [rsp + 0x68], 0xffffffffffffffff
je 0x100493ffb
test rbp, rbp
jne 0x100493ffb
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rax, qword [rax]
sub rax, qword [rsp + 0xc8]
add rax, 1
cmp rbx, r13
jae 0x1004953ab
mov rbp, rax
mov rdx, rbx
xor ecx, ecx
cmp byte [rdx], 0xa
sete cl
add rdx, 1
add rbp, rcx
cmp rdx, r13
jne 0x100494653
mov rdx, r15
or rdx, rbp
jne 0x100494007
mov r15, rax
mov rax, rbx
xor edx, edx
cmp byte [rax], 0xa
sete dl
add rax, 1
add r15, rdx
cmp rax, r13
jb 0x100494679
xor ebp, ebp
jmp 0x100494007
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r13, qword [rax]
sub r13, qword [rsp + 0xc8]
lea rax, [r13 + 1]
mov qword [rsp + 0x98], rax
jmp 0x100493905
test dil, dil
je 0x1004946cc
cmp qword [rbx + 0x88], r12
jne 0x1004917df
cmp byte [rsp + 0x3c], 0
je 0x1004946e0
cmp qword [rbx + 0x98], r14
jne 0x1004917df
mov rcx, qword [rsp + 0x88]
xor r8d, r8d
mov edx, 0x10000
call sub.msys_2.0.dll_open
mov dword [rsp + 0xa0], eax
test eax, eax
js 0x10049487f
mov rax, qword [sym.vim.exe_curbuf]
mov rdi, qword [sym.vim.exe_recoverymode]
mov rcx, qword [rax]
mov qword [rsp + 0x150], rdi
mov eax, dword [rcx + 0x20]
mov dword [rsp + 0x15c], eax
mov eax, dword [rsp + 0x360]
and eax, 0x12
or eax, dword [rdi]
jne 0x100491942
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
lea r8, [0x1006c0700]
call sym.vim.exe_filemess
jmp 0x100493b06
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r15, qword [rax]
sub r15, qword [rsp + 0xc8]
add r15, 1
cmp rbx, r13
jb 0x100494676
xor ebp, ebp
jmp 0x100494007
test eax, eax
je 0x100493b60
mov r13, rsi
cmp rbx, rsi
jb 0x100492e20
test rsi, rsi
je 0x1004956d0
mov r13, rsi
jmp 0x100493b6c
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov r13, qword [rax]
sub r13, qword [rsp + 0xc8]
lea rax, [r13 + 1]
mov qword [rsp + 0x98], rax
cmp rbx, rdx
jae 0x1004956c0
mov rax, rbx
xor ecx, ecx
cmp byte [rax], 0xa
sete cl
add rax, 1
add qword [rsp + 0x98], rcx
cmp rdx, rax
jne 0x1004947d0
cmp dword [rsp + 0x60], 0xfffffffe
jne 0x1004937d7
mov rsi, rdx
jmp 0x10049354b
mov rax, qword [sym.vim.exe_curbuf]
lea r9, [rsp + 0x1c0]
mov r8, r12
mov rdx, rbx
mov qword [rsp + 0x1c0], 0
mov rax, qword [rax]
mov rcx, qword [rax + 0x2460]
mov dword [rsp + 0x20], r15d
call sym.vim.exe_crypt_decode_alloc
mov dword [rsp + 0x78], eax
test eax, eax
js 0x1004954c7
je 0x1004950ed
cmp qword [rsp + 0x58], 0
jne 0x100495072
mov r13, qword [rsp + 0x1c0]
movsxd rsi, eax
test r13, r13
jne 0x1004954bc
mov qword [rsp + 0xd8], r14
mov r12, rsi
mov qword [rsp + 0xf0], 0
jmp 0x1004923cf
mov rax, qword [sym.vim.exe_no_wait_return]
mov edi, dword [rsp + 0xe0]
mov rcx, qword [sym.vim.exe_e_readpre_autocommands_made_file_unreadable]
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 0x10049180d
cmp qword [rsp + 0x40], 0
mov ecx, dword [rsp + 0x50]
sete al
and eax, ecx
mov edx, eax
mov eax, ecx
xor eax, 1
and eax, 1
or eax, edx
jmp 0x100492079
cmp qword [rsp + 0x40], 0
sete al
jmp 0x100492079
cmp dl, 0xfe
jne 0x100494dd0
cmp byte [rbx + 1], 0xff
jne 0x1004927ce
lea edx, [rax + 1]
cmp edx, 0x11
ja 0x1004927ce
mov ecx, 0x20021
bt rcx, rdx
jae 0x1004927ce
cmp eax, 4
mov edx, 2
mov ecx, 2
lea rsi, [0x1006c082c]
lea rax, [0x1006c0832]
cmovne rsi, rax
jmp 0x10049278a
mov rcx, qword [sym.vim.exe_e_interrupted]
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
mov eax, dword [rsp + 0x38]
test eax, eax
je 0x1004943d4
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov dword [rax + 0x1ca0], 1
jmp 0x1004943d4
lea rdx, [rsp + 0x17c]
lea rcx, [rsp + 0x180]
mov qword [rsp + 0x180], rax
call fcn.10048f280
mov qword [rsp + 0xb0], rax
jmp 0x1004919de
mov dword [rsp + 0xe8], edx
mov eax, dword [rsp + 0xe8]
cmp eax, 1
jne 0x100494f43
call sym.vim.exe_default_fileformat
mov edx, eax
cmp eax, 0xffffffff
mov eax, 2
cmovne eax, edx
mov dword [rsp + 0x3c], eax
jmp 0x1004924ec
mov rax, qword [rsp + 0x358]
mov r8, qword [rsp + 0x88]
xor r9d, r9d
xor edx, edx
mov ecx, 0x34
mov qword [rsp + 0x28], rax
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100493f46
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_save_file_ff
jmp 0x100493eac
mov ecx, r12d
mov dword [rsp + 0x124], ebx
mov rbx, rdi
xor eax, eax
sub ecx, r15d
mov rdi, qword [rsp + 0x50]
lea r8, [rbx + r15]
xor r9d, r9d
mov qword [rsp + 0x138], rsi
mov r10d, ecx
mov rsi, rbp
mov rbp, qword [rsp + 0x78]
test ecx, ecx
jle 0x100494a75
movzx edx, byte [rsi + rax]
cmp dl, 0xa
cmove edx, r9d
mov byte [r8 + rax], dl
add rax, 1
cmp r10, rax
jne 0x100494a5d
add dword [rsp + 0x124], ecx
xor r15d, r15d
jmp 0x10049318a
mov rcx, qword [sym.vim.exe_curbuf]
mov rbx, rdi
mov rbp, qword [rsp + 0x78]
mov qword [rsp + 0x138], rsi
mov rdi, qword [rsp + 0x50]
mov rdx, qword [rcx]
mov ecx, dword [rdx + 0x1bb0]
mov dword [rsp + 0x124], ecx
test ecx, ecx
jne 0x100495102
mov r12, rax
mov r15d, 1
jmp 0x10049318a
mov rax, qword [sym.vim.exe_curbuf]
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rax]
call sym.vim.exe_msg_add_fname
mov eax, dword [rsp + 0x10c]
lea rcx, str._fifo_
and eax, 0xf000
cmp eax, 0x1000
je 0x100494b09
cmp eax, 0xc000
jne 0x100494e98
lea rcx, str._socket_
call sub.msys_intl_8.dll_libintl_gettext
mov rsi, qword [sym.vim.exe_IObuff]
mov r13d, 1
mov rdx, rax
mov rcx, qword [rsi]
call fcn.100673240
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov eax, dword [rax + 0x1ca0]
test eax, eax
je 0x100494b69
mov ecx, 0x72
call sym.vim.exe_shortmess
test eax, eax
je 0x100495563
lea rcx, [0x1006c096f]
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
mov rcx, qword [rsi]
mov r13d, 1
call fcn.100673240
test r12, r12
jne 0x100494e88
cmp dword [rsp + 0x4c], 1
jne 0x100494b96
lea rcx, str._CR_missing_
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, qword [rsi]
mov rdx, rax
call fcn.100673240
mov r15d, dword [rsp + 0xc0]
test r15d, r15d
je 0x100494bc0
lea rcx, str._long_lines_split_
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, qword [rsi]
mov rdx, rax
call fcn.100673240
mov r14d, dword [rsp + 0x160]
lea rcx, [0x1006c099f]
test r14d, r14d
jne 0x100494be6
mov ebx, dword [rsp + 0x120]
test ebx, ebx
je 0x100494bfc
lea rcx, [0x1006c09af]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, qword [rsi]
mov r13d, 1
mov rdx, rax
call fcn.100673240
cmp qword [rsp + 0xd0], 0
je 0x100494c1c
mov rax, qword [sym.vim.exe_curbuf]
mov r13d, 1
mov rcx, qword [rax]
call sym.vim.exe_crypt_append_msg
cmp qword [rsp + 0x98], 0
jne 0x1004951fd
mov r15, qword [rsp + 0x118]
test r15, r15
jg 0x1004954f4
test edi, edi
je 0x100494c5d
lea rcx, str._READ_ERRORS_
mov r13d, 1
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, qword [rsi]
mov rdx, rax
call fcn.100673240
mov ecx, dword [rsp + 0x3c]
call sym.vim.exe_msg_add_fileformat
test eax, eax
mov eax, 1
cmovne r13d, eax
cmp qword [rsp + 0xd0], 0
je 0x100495133
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_crypt_get_method_nr
mov ecx, eax
call sym.vim.exe_crypt_get_header_len
mov r8, qword [rsp + 0xb8]
mov rdx, rbp
mov ecx, r13d
cdqe
sub r8, rax
call sym.vim.exe_msg_add_lines
mov rbx, qword [sym.vim.exe_keep_msg]
mov rcx, qword [rbx]
test rcx, rcx
je 0x100494cc9
call sym.vim.exe_vim_free
mov qword [rbx], 0
mov rax, qword [sym.vim.exe_msg_col]
mov rbx, qword [sym.vim.exe_msg_scrolled_ign]
mov r11d, dword [rax]
mov dword [rbx], 1
test r11d, r11d
jle 0x100494cef
mov ecx, 0xd
call sym.vim.exe_msg_putchar
mov rcx, qword [rsi]
xor edx, edx
xor r8d, r8d
call sym.vim.exe_msg_trunc_attr
mov edx, dword [rsp + 0x108]
mov rcx, rax
mov rax, qword [sym.vim.exe_restart_edit]
or edx, dword [rax]
jne 0x100494d2f
mov rax, qword [sym.vim.exe_msg_scrolled]
mov r10d, dword [rax]
test r10d, r10d
je 0x100494d36
mov rax, qword [sym.vim.exe_need_wait_return]
mov r9d, dword [rax]
test r9d, r9d
jne 0x100494d36
xor edx, edx
call sym.vim.exe_set_keep_msg
mov dword [rbx], 0
jmp 0x10049222e
test byte [rsp + 0x64], 8
je 0x10049511b
movabs rcx, 0xaaaaaaaaaaaaaaab
lea rdx, [r12 + r12]
mov rax, rdx
mul rcx
shr rdx, 1
and rdx, 0xfffffffffffffffc
mov r12, rdx
jmp 0x100492c05
mov ebx, dword [rsp + 0x48]
test ebx, ebx
jne 0x100495236
lea r12, [rdi + 1]
xor edi, edi
jmp 0x1004920a9
cmp byte [rbx + 1], 0xbb
jne 0x1004927ce
cmp r12, 2
je 0x1004927ce
cmp byte [rbx + 2], 0xbf
jne 0x1004927ce
test eax, eax
jg 0x1004953e6
add eax, 1
jl 0x1004927ce
mov edx, 3
mov ecx, 3
lea rsi, [0x1006c0826]
jmp 0x10049278a
test dl, dl
jne 0x1004927ce
cmp r12, 3
jle 0x1004927ce
cmp byte [rbx + 1], 0
jne 0x1004927ce
cmp byte [rbx + 2], 0xfe
jne 0x1004927ce
cmp byte [rbx + 3], 0xff
jne 0x1004927ce
cmp eax, 0xffffffff
je 0x100494e0e
cmp eax, 8
jne 0x1004927ce
mov edx, 4
mov ecx, 4
lea rsi, [0x1006c0849]
jmp 0x10049278a
lea rcx, str.is_a_directory
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
mov dword [rsp + 0x80], 2
jmp 0x100491502
mov byte [rbx], 0
mov r9d, dword [rsp + 0x38]
mov r8d, esi
mov rdx, r14
mov rcx, rdi
call sym.vim.exe_ml_append
test eax, eax
jne 0x100494d6f
xor r12d, r12d
mov edi, 1
jmp 0x1004920ba
call sym.vim.exe_msg_add_eol
mov r13d, 1
jmp 0x100494b72
mov rsi, qword [sym.vim.exe_IObuff]
xor r13d, r13d
jmp 0x100494b26
test al, al
jne 0x100493c3e
jmp 0x10049336d
lea rcx, str.Cant_find_temp_file_for_conversion
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
test rax, rax
je 0x1004955af
call sym.vim.exe_msg
mov r10d, dword [rsp + 0xa0]
test r10d, r10d
jns 0x100493dd8
jmp 0x100493dad
xor r8d, r8d
mov edx, 0x10000
mov rcx, r13
call sub.msys_2.0.dll_open
mov dword [rsp + 0xa0], eax
test eax, eax
js 0x10049566a
mov qword [rsp + 0x100], r13
mov dword [rsp + 0xf8], 0
mov qword [rsp + 0x68], 0xffffffffffffffff
mov dword [rsp + 0x64], 0
jmp 0x100491d8f
cmp eax, 0x78
sete al
jmp 0x10049335d
mov dword [rsp + 0x3c], 2
test eax, eax
jne 0x1004924ec
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0xe8], eax
jmp 0x1004924ca
cmp qword [rsp + 0x118], 0
jne 0x100492cf8
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rax, qword [rax]
sub rax, qword [rsp + 0xc8]
add rax, 1
mov qword [rsp + 0x118], rax
jmp 0x100492cf8
mov rbx, qword [rsp + 0x130]
mov r12, 0xffffffffffffffff
mov qword [rsp + 0xa8], 0
lea r13, [rbx - 1]
jmp 0x1004938c5
mov dword [rsp + 0x158], 1
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
mov rax, qword [rax + 0x2460]
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x10049265a
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0xd0], 0
jmp 0x100493cb3
mov rax, qword [sym.vim.exe_curbuf]
mov r9d, dword [rsp + 0x158]
mov rax, qword [rax]
test r9d, r9d
jne 0x100494fbf
mov rax, qword [rax + 0x1c50]
cmp byte [rax], 0
mov qword [rsp + 0xd0], rax
jne 0x1004931ee
jmp 0x100676632
lea rcx, str.Vim:_Reading_from_stdin..._n
call sub.msys_intl_8.dll_libintl_gettext
lea rcx, [0x1006c08d6]
mov rdx, rax
call sub.msys_2.0.dll_printf
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
jmp 0x100491942
movsxd rsi, eax
mov rax, qword [rsp + 0x58]
xor edx, edx
lea r15, [rax + rsi + 1]
mov rcx, r15
call sym.vim.exe_lalloc
mov r13, rax
test rax, rax
je 0x10049549e
mov rbx, qword [rsp + 0x58]
mov rdx, r14
mov rcx, rax
mov r8, rbx
lea rbx, [r13 + rbx]
call sub.msys_2.0.dll_memmove
mov rdx, qword [rsp + 0x1c0]
test rdx, rdx
je 0x1004950cd
mov r8, rsi
mov rcx, rbx
call sub.msys_2.0.dll_memmove
mov rdx, qword [rsp + 0x1c0]
mov rcx, rdx
call sym.vim.exe_vim_free
mov rcx, r14
mov r14, r13
call sym.vim.exe_vim_free
mov qword [rsp + 0x128], r12
jmp 0x100494863
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xf0], r14
jmp 0x100491eb8
mov dword [rsp + 0x124], 0
mov r12, r15
mov r15d, 1
jmp 0x10049318a
mov rax, r12
sar rax, 3
cmp dword [rsp + 0x64], 0x4000
cmove r12, rax
jmp 0x100492c05
mov r8, qword [rsp + 0xb8]
mov rdx, rbp
mov ecx, r13d
call sym.vim.exe_msg_add_lines
jmp 0x100494cae
lea r13, [rsp + 0x260]
mov rcx, r15
mov rdx, r13
call sub.msys_2.0.dll_stat
test eax, eax
js 0x10049302f
mov r8d, dword [rsp + 0x1fc]
cmp r8d, dword [rsp + 0x27c]
je 0x10049302f
mov rax, qword [sym.vim.exe_curbuf]
mov edx, 0xffffffff
mov rax, qword [rax]
mov rax, qword [rax + 8]
mov ecx, dword [rax + 0x10]
call sub.msys_2.0.dll_fchown
cmp eax, 0xffffffff
mov eax, 0x180
cmove esi, eax
jmp 0x10049302f
mov dword [rsp + 0x3c], 0
mov dword [rsp + 0x90], 1
mov dword [rsp + 0xe8], 1
jmp 0x1004924ec
mov rax, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov ecx, 0x2e
mov qword [rsp + 0x20], 0
mov qword [rsp + 0x28], rax
mov r8, rdx
call sym.vim.exe_apply_autocmds_exarg
jmp 0x100493f46
lea rcx, str._CONVERSION_ERROR_in_line__ld_
call sub.msys_intl_8.dll_libintl_gettext
mov rbx, qword [rsi]
mov r13, rax
mov rcx, rbx
call sub.msys_2.0.dll_strlen
mov r8, qword [rsp + 0x98]
mov rdx, r13
mov r13d, 1
lea rcx, [rbx + rax]
call sub.msys_2.0.dll_sprintf
jmp 0x100494c5d
lea rcx, [rsp + 0x260]
mov r8d, esi
mov rdx, r14
call sym.vim.exe_sha256_update
jmp 0x100494d7b
movsxd r8, dword [rsp + 0xc4]
movzx edx, byte [rsp + 0x60]
mov eax, r8d
neg eax
cdqe
add rbx, rax
mov rcx, rbx
call sub.msys_2.0.dll_memset
mov dword [rsp + 0xc4], 0
mov rcx, qword [rsp + 0x68]
cmp rcx, 0xffffffffffffffff
je 0x100495491
call sub.msys_iconv_2.dll_libiconv_close
jmp 0x100492d16
movsxd rdx, dword [rsp + 0xc4]
mov rax, rbx
mov dword [rsp + 0xc4], 0
mov dword [rsp + 0x50], 0
sub rax, rdx
mov qword [rsp + 0xf0], r14
mov byte [rax], 0
mov qword [rsp + 0xd8], r14
jmp 0x1004923cf
shl eax, 8
add eax, ecx
jmp 0x100492e3c
lea rax, [rbx + rsi]
mov qword [rsp + 0x98], rbp
mov rdi, qword [rsp + 0x78]
mov qword [rsp + 0xa8], rsi
mov rbp, qword [rsp + 0x130]
mov qword [rsp + 0x118], r15
cmp r13, rax
jb 0x10049428a
add qword [rsp + 0xb8], rsi
lea r13, [rbx - 1]
lea r12, [rsi - 1]
jmp 0x100492492
movzx eax, byte [r13 - 1]
mov r13, rbx
jmp 0x100493f9f
lea rcx, str._New_DIRECTORY_
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
xor r9d, r9d
mov r8, rax
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
call sym.vim.exe_filemess
jmp 0x1004930b2
cmp byte [r14], 0x1a
jne 0x100493475
lea rax, [r14 + 1]
cmp rbx, rax
jne 0x100493475
jmp 0x1004920a4
mov rax, qword [rsp + 0xa8]
mov r13, rbx
mov r12d, 1
lea rdx, [rbx + rax]
jmp 0x100494216
mov rax, qword [sym.vim.exe_curbuf]
mov r12d, 1
mov rax, qword [rax]
mov rax, qword [rax]
sub rax, qword [rsp + 0xc8]
add rax, 1
mov rdx, r15
mov rbp, rax
or rdx, rax
jne 0x100494007
mov rax, qword [sym.vim.exe_curbuf]
xor ebp, ebp
mov rax, qword [rax]
mov r15, qword [rax]
sub r15, qword [rsp + 0xc8]
add r15, 1
jmp 0x100494007
and edx, dword [rsp + 0x84]
jmp 0x10049460e
cmp eax, 2
je 0x100494db5
jmp 0x1004927ce
mov rax, qword [rsp + 0x58]
lea rcx, [rax + r12*2 + 1]
call sym.vim.exe_do_outofmem_msg
cmp qword [rsp + 0x40], 0
sete al
jmp 0x100492079
cmp r12, 9
jle 0x100495428
mov rsi, qword [rsp + 0x58]
jmp 0x100492ba9
cmp qword [rsp + 0xf0], 0
je 0x1004953f4
mov r14, qword [rsp + 0xf0]
jmp 0x100492bbc
mov dword [rsp + 0x50], 0
mov qword [rsp + 0xf0], r14
mov qword [rsp + 0xd8], r14
jmp 0x1004929f0
mov edx, 2
mov ecx, 2
lea rsi, [0x1006c0841]
jmp 0x10049278a
mov edx, dword [rsp + 0x108]
mov eax, 1
or edx, dword [rsp + 0x64]
mov qword [rsp + 0x68], 0xffffffffffffffff
jmp 0x100491cb6
mov dword [rsp + 0x64], 0
jmp 0x100493286
mov rcx, r15
call sym.vim.exe_do_outofmem_msg
cmp qword [rsp + 0x40], 0
mov qword [rsp + 0xd8], r14
sete al
jmp 0x100492079
mov rbx, r13
movsxd rsi, eax
jmp 0x1004950d5
mov rcx, qword [rsp + 0x1c0]
call sym.vim.exe_vim_free
jmp 0x1004954a6
xor eax, eax
mov edx, dword [rsp + 0x90]
cmp dword [rsp + 0xe8], edx
setg al
add eax, eax
mov dword [rsp + 0x3c], eax
jmp 0x1004924ec
lea rcx, str._ILLEGAL_BYTE_in_line__ld_
call sub.msys_intl_8.dll_libintl_gettext
mov rbx, qword [rsi]
mov r13, rax
mov rcx, rbx
call sub.msys_2.0.dll_strlen
mov rdx, r13
mov r8, r15
mov r13d, 1
lea rcx, [rbx + rax]
call sub.msys_2.0.dll_sprintf
jmp 0x100494c5d
mov edx, 4
mov ecx, 4
lea rsi, [0x1006c0839]
jmp 0x10049278a
mov rcx, qword [rsp + 0xb0]
call sym.vim.exe_vim_free
jmp 0x1004927f6
mov dword [rsp + 0x78], 1
mov r13d, 1
jmp 0x100491b11
lea rcx, [0x1006c0974]
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, rax
jmp 0x100494b5b
mov dword [rsp + 0x3c], 0
jmp 0x1004924ec
mov rcx, qword [sym.vim.exe_e_conversion_mad_file_unreadable]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
cmp qword [rsp + 0x40], 0
mov qword [rsp + 0x68], 0xffffffffffffffff
sete al
jmp 0x100492079
mov r8d, dword [rsp + 0xa0]
test r8d, r8d
jns 0x100493dd8
jmp 0x100493dad
cmp dword [rsp + 0x108], 0
jne 0x1004955de
mov rax, qword [sym.vim.exe_p_ccv]
mov rax, qword [rax]
cmp byte [rax], 0
jne 0x1004955f4
mov qword [rsp + 0x68], 0xffffffffffffffff
mov r13d, dword [rsp + 0xf8]
jmp 0x100491b11
mov dword [rsp + 0x64], 0
mov eax, 1
mov qword [rsp + 0x68], 0xffffffffffffffff
jmp 0x100491cd1
mov r8, qword [rax + 0x98]
mov qword [rsp + 0x20], rax
mov r9d, 1
mov ecx, 0x30
call sym.vim.exe_apply_autocmds
jmp 0x100493f46
mov rsi, rdx
jmp 0x10049353b
lea rcx, [0x1006c095b]
mov r9d, 4
lea r8, [0x1006c0700]
xor edx, edx
call sym.vim.exe_set_option_value_give_err
mov rax, qword [sym.vim.exe_curbuf]
mov rcx, qword [rax]
jmp 0x100493c97
lea rcx, str.cant_read_output_of_charconvert
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
test rax, rax
jne 0x100493d98
mov rcx, qword [rsp + 0x88]
xor r8d, r8d
mov edx, 0x10000
call sub.msys_2.0.dll_open
mov dword [rsp + 0xa0], eax
jmp 0x100494f0f
mov qword [rsp + 0x110], 0
or esi, 0xffffffff
jmp 0x100491378
cmp dword [rsp + 0x60], 0xfffffffe
jne 0x1004937d7
jmp 0x10049389f
mov rbx, qword [rsp + 0x130]
or r12, 0xffffffffffffffff
mov qword [rsp + 0xa8], 0
lea r13, [rbx - 1]
jmp 0x1004938c5
mov rcx, qword [sym.vim.exe_need_key_msg]
call sub.msys_intl_8.dll_libintl_gettext
mov rdx, qword [rsp + 0x88]
mov rcx, rax
call sym.vim.exe_smsg
mov rax, qword [sym.vim.exe_msg_scroll]
mov ecx, r13d
mov dword [rax], 1
call sym.vim.exe_crypt_check_method
mov ecx, dword [rsp + 0x38]
xor edx, edx
call sym.vim.exe_crypt_get_key
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x100494fbf
cmp byte [rax], 0
jne 0x1006766bb
mov rax, qword [sym.vim.exe_curbuf]
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rax]
cmp rdx, qword [rax + 0x1c50]
je 0x100494fbf
mov rcx, rdx
call sym.vim.exe_vim_free
mov dword [rsp + 0x158], 1
jmp 0x100494fca
mov dword [rsp + 0x158], 1
jmp 0x1004931ee