Function at 0x1005c1810
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x888
mov rax, qword [sym.vim.exe_p_tbi]
mov ebx, dword [rax]
mov rax, qword [sym.vim.exe_silent_mode]
mov eax, dword [rax]
mov r13, rcx
mov dword [rsp + 0x38], eax
test eax, eax
jne 0x1005c1ce4
mov r8d, 8
lea rdx, str.builtin_
mov dword [0x100728834], 0
call sub.msys_2.0.dll_strncmp
mov esi, eax
test eax, eax
je 0x1005c1d04
test ebx, ebx
sete sil
setne dil
movzx esi, sil
mov dword [rsp + 0x3c], 0
xor ebx, ebx
xor r12d, r12d
mov dword [rsp + 0x40], 0
cmp esi, 1
je 0x1005c1e8a
nop word cs:[rax + rax]
cmp esi, 2
jne 0x1005c1d18
test dil, dil
je 0x1005c1d18
test ebx, ebx
jne 0x1005c2227
mov rcx, r13
call fcn.1005be560
cmp qword [rax + 8], 0
jne 0x1005c26c0
call sub.msys_2.0.dll___getreent
mov r8d, 2
mov edx, 1
lea rbp, [0x1006d71d4]
mov r9, qword [rax + 0x18]
mov rcx, rbp
call sub.msys_2.0.dll_fwrite
test r12, r12
je 0x1005c1922
call sub.msys_2.0.dll___getreent
mov rcx, r12
mov rdx, qword [rax + 0x18]
call sub.msys_2.0.dll_fputs
call sub.msys_2.0.dll___getreent
mov r8d, 2
mov edx, 1
mov rcx, rbp
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
call sub.msys_2.0.dll___getreent
mov ecx, 0x27
lea rbx, [0x100698a60]
lea r14, str.____builtin_
mov rdx, qword [rax + 0x18]
call sub.msys_2.0.dll_fputc
call sub.msys_2.0.dll___getreent
mov rcx, r13
mov rdx, qword [rax + 0x18]
call sub.msys_2.0.dll_fputs
lea rcx, str._not_known._Available_builtin_terminals_are:
call sub.msys_intl_8.dll_libintl_gettext
mov r13, rax
call sub.msys_2.0.dll___getreent
mov rcx, r13
lea r13, [0x1006d7206]
mov rdx, qword [rax + 0x18]
call sub.msys_2.0.dll_fputs
call sub.msys_2.0.dll___getreent
mov rcx, rbp
mov r8d, 2
mov edx, 1
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
mov rcx, qword [str.amiga]
test rcx, rcx
jne 0x1005c19b5
jmp 0x1005c1a23
mov rcx, qword [rbx + 0x18]
add rbx, 0x10
test rcx, rcx
je 0x1005c1a23
mov r15d, dword [rbx]
test r15d, r15d
jne 0x1005c19a8
mov rdx, r13
call sub.msys_2.0.dll_strcmp
test eax, eax
je 0x1005c19a8
call sub.msys_2.0.dll___getreent
mov r8d, 0xc
mov rcx, r14
add rbx, 0x10
mov r9, qword [rax + 0x18]
mov edx, 1
call sub.msys_2.0.dll_fwrite
mov r15, qword [rbx - 8]
call sub.msys_2.0.dll___getreent
mov rdx, qword [rax + 0x18]
mov rcx, r15
call sub.msys_2.0.dll_fputs
call sub.msys_2.0.dll___getreent
mov rcx, rbp
mov r8d, 2
mov edx, 1
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
mov rcx, qword [rbx + 8]
test rcx, rcx
jne 0x1005c19b5
mov r13, qword [sym.vim.exe_p_ch]
xor ebx, ebx
cmp qword [r13], 1
jle 0x1005c1a65
nop dword [rax + rax]
call sub.msys_2.0.dll___getreent
mov r8d, 2
mov edx, 1
mov rcx, rbp
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
mov rax, rbx
add rbx, 1
add rax, 2
cmp qword [r13], rax
jg 0x1005c1a38
mov rax, qword [sym.vim.exe_starting]
cmp dword [rax], 2
jne 0x1005c266c
lea rcx, str.defaulting_to_
call sub.msys_intl_8.dll_libintl_gettext
mov r13, rax
call sub.msys_2.0.dll___getreent
mov rcx, r13
mov rdx, qword [rax + 0x18]
call sub.msys_2.0.dll_fputs
call sub.msys_2.0.dll___getreent
mov r8d, 4
mov edx, 1
lea rcx, str.ansi
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
call sub.msys_2.0.dll___getreent
mov edx, 1
mov r8d, 3
lea rcx, [0x1006d7227]
mov r9, qword [rax + 0x18]
call sub.msys_2.0.dll_fwrite
mov rax, qword [sym.vim.exe_emsg_silent]
mov rdx, qword [sym.vim.exe_in_assert_fails]
mov eax, dword [rax]
or eax, dword [rdx]
je 0x1005c2322
mov dword [rsp + 0x20], 0
mov r9d, 1
lea r8, str.ansi
mov edx, 0xffffffff
lea rcx, [0x1006d722b]
lea r13, str.ansi
call sym.vim.exe_set_string_option_direct
call sub.msys_2.0.dll___getreent
mov rcx, qword [rax + 0x18]
call sub.msys_2.0.dll_fflush
call sym.vim.exe_out_flush
call sym.vim.exe_clear_termoptions
jmp 0x1005c1d38
test rdx, rdx
je 0x1005c23d8
movzx eax, byte [rdx]
test al, al
je 0x1005c23d8
cmp al, 0x7f
jne 0x1005c23ee
mov rcx, r13
call sym.vim.exe_vim_is_xterm
mov rdx, qword [sym.vim.exe_term_is_xterm]
xor ecx, ecx
mov dword [rdx], eax
call sym.vim.exe_init_term_props
mov rcx, r13
call sym.vim.exe_use_xterm_like_mouse
test eax, eax
je 0x1005c2409
call sym.vim.exe_use_xterm_mouse
test eax, eax
je 0x1005c2636
call sym.vim.exe_check_mouse_termcode
mov rcx, r13
call sym.vim.exe_use_xterm_like_mouse
test eax, eax
jne 0x1005c243c
mov dword [0x10069b6e0], 2
mov rcx, r13
call sym.vim.exe_vim_is_fastterm
test eax, eax
je 0x1005c1bc0
mov rax, qword [sym.vim.exe_p_tf]
mov dword [rax], 1
mov ecx, 1
call sym.vim.exe_ttest
mov rax, qword [sym.vim.exe_full_screen]
mov dword [rax], 1
call sym.vim.exe_set_term_defaults
mov rax, qword [sym.vim.exe_starting]
mov dword [0x10069b770], 0
mov dword [sym.vim.exe_write_t_8u_state], 0
cmp dword [rax], 2
je 0x1005c1c0b
call sym.vim.exe_starttermcap
call sym.vim.exe_setmouse
call sym.vim.exe_maketitle
mov r9d, dword [rsp + 0x3c]
test r9d, r9d
jle 0x1005c1c1f
mov r8d, dword [rsp + 0x40]
test r8d, r8d
jg 0x1005c1c2f
mov dword [rsp + 0x3c], 0x18
mov dword [rsp + 0x40], 0x50
mov edx, dword [rsp + 0x3c]
mov ecx, dword [rsp + 0x40]
xor r8d, r8d
call sym.vim.exe_set_shellsize
mov rax, qword [sym.vim.exe_starting]
cmp dword [rax], 2
je 0x1005c1cc0
mov rax, qword [sym.vim.exe_scroll_region]
mov ecx, dword [rax]
test ecx, ecx
jne 0x1005c2662
call sym.vim.exe_check_map_keycodes
mov rax, qword [sym.vim.exe_firstbuf]
mov rsi, qword [sym.vim.exe_curbuf]
lea rdi, [rsp + 0x80]
mov rbx, qword [rax]
test rbx, rbx
je 0x1005c1cc0
nop
mov rax, qword [rsi]
cmp qword [rax + 8], 0
je 0x1005c1cb7
mov rdx, rbx
mov rcx, rdi
call sym.vim.exe_aucmd_prepbuf
mov rax, qword [rsi]
mov ecx, 0x5b
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds
mov rcx, rdi
call sym.vim.exe_aucmd_restbuf
mov rbx, qword [rbx + 0x68]
test rbx, rbx
jne 0x1005c1c80
mov edx, dword [0x10069b770]
test edx, edx
jne 0x1005c1ce4
call fcn.1005be7a0
test eax, eax
je 0x1005c1ce4
mov rax, qword [sym.vim.exe_starting]
mov eax, dword [rax]
test eax, eax
je 0x1005c26b6
mov dword [rsp + 0x38], 1
mov eax, dword [rsp + 0x38]
add rsp, 0x888
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add r13, 8
mov edi, 1
jmp 0x1005c1878
mov rcx, r13
call fcn.1005be560
cmp qword [rax + 8], 0
je 0x1005c2217
call sym.vim.exe_out_flush
test ebx, ebx
je 0x1005c1b2d
mov rcx, r13
mov ebp, 1
call fcn.1005be560
mov r11d, dword [0x100728834]
mov rbx, rax
test r11d, r11d
jne 0x1005c1d6c
lea rdx, str.8bit
mov rcx, r13
xor ebp, ebp
call sub.msys_2.0.dll_strstr
test rax, rax
setne bpl
cmp qword [rbx + 8], 0
je 0x1005c1e70
movsxd rax, dword [rbx + 0x10]
lea r14, [rbx + 0x10]
cmp eax, 0x101
je 0x1005c1e70
lea rbx, [sym.vim.exe_term_strings]
test eax, eax
jne 0x1005c1dd8
jmp 0x1005c1e70
mov rdx, qword [rbx + rax*8]
test rdx, rdx
je 0x1005c2120
mov rcx, qword [sym.vim.exe_empty_option]
cmp rdx, qword [rcx]
je 0x1005c2120
movsxd rax, dword [r14 + 0x10]
add r14, 0x10
test eax, eax
je 0x1005c1e70
cmp eax, 0x101
je 0x1005c1e70
test eax, eax
jns 0x1005c1da0
mov edx, eax
mov ecx, dword [0x100727e98]
neg eax
shr eax, 8
neg edx
mov byte [rsp + 0x80], dl
mov r8d, eax
mov byte [rsp + 0x81], al
test ecx, ecx
jle 0x1005c1e38
mov rax, qword [0x100727ea0]
sub ecx, 1
lea rcx, [rcx + rcx*2]
lea rcx, [rax + rcx*8 + 0x18]
jmp 0x1005c1e21
add rax, 0x18
cmp rax, rcx
je 0x1005c1e38
cmp dl, byte [rax]
jne 0x1005c1e18
cmp r8b, byte [rax + 1]
jne 0x1005c1e18
cmp qword [rax + 8], 0
jne 0x1005c1dbd
nop word [rax + rax]
mov rdx, qword [r14 + 8]
lea rcx, [rsp + 0x80]
test rdx, rdx
je 0x1005c220d
cmp byte [rdx], 0
je 0x1005c220d
mov r8d, ebp
add r14, 0x10
call fcn.1005be890
movsxd rax, dword [r14]
test eax, eax
jne 0x1005c1dcd
nop dword [rax]
cmp esi, 2
je 0x1005c2227
mov ebx, 1
add esi, 1
cmp esi, 1
jne 0x1005c18a0
lea r14, [rsp + 0x80]
mov r12, qword [sym.imp.msys_ncursesw6.dll_tgetent]
mov rdx, r13
mov rcx, r14
call r12
mov ebp, eax
test eax, eax
jle 0x1005c22f0
test ebx, ebx
je 0x1005c2642
lea rax, [0x100727680]
mov ebx, 1
mov r8, qword [sym.vim.exe_empty_option]
lea rbp, [0x1006d73d0]
mov qword [rsp + 0x58], rax
lea r15, [0x1006d719e]
lea r14, [rsp + 0x58]
lea r12, [sym.vim.exe_term_strings]
jmp 0x1005c1ef9
mov r15, qword [rbp + 8]
test r15, r15
je 0x1005c1f3d
movsxd rbx, dword [rbp]
add rbp, 0x10
mov rax, qword [r12 + rbx*8]
test rax, rax
je 0x1005c1f07
cmp rax, qword [r8]
jne 0x1005c1ee8
mov rcx, r15
mov rdx, r14
call sub.msys_ncursesw6.dll_tgetstr
xor edx, edx
mov rcx, r15
cmp rax, 0xffffffffffffffff
cmove rax, rdx
mov edx, 0xffffffff
mov qword [r12 + rbx*8], rax
call sym.vim.exe_set_term_option_sctx_idx
mov r15, qword [rbp + 8]
mov r8, qword [sym.vim.exe_empty_option]
test r15, r15
jne 0x1005c1ef1
mov rax, qword [0x1007274a0]
test rax, rax
je 0x1005c24c3
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c24c3
mov rax, qword [0x100727520]
test rax, rax
je 0x1005c2577
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c2577
mov rax, qword [0x100727528]
test rax, rax
je 0x1005c254f
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c254f
mov rax, qword [0x1007273f8]
test rax, rax
je 0x1005c2527
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c2527
mov rax, qword [0x1007273f0]
test rax, rax
je 0x1005c24ff
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c24ff
mov rax, qword [0x1007273e8]
test rax, rax
je 0x1005c25f8
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c25f8
lea r15, [0x1006d71a1]
lea rbx, [0x1006d7968]
mov r12, r15
nop
mov ecx, dword [0x100727e98]
test ecx, ecx
jle 0x1005c2375
mov rax, qword [0x100727ea0]
sub ecx, 1
movzx edx, byte [r12]
lea rcx, [rcx + rcx*2]
lea rcx, [rax + rcx*8 + 0x18]
jmp 0x1005c204d
add rax, 0x18
cmp rcx, rax
je 0x1005c2375
cmp byte [rax], dl
jne 0x1005c2040
movzx r10d, byte [r12 + 1]
cmp byte [rax + 1], r10b
jne 0x1005c2040
cmp qword [rax + 8], 0
je 0x1005c2375
mov r12, qword [rbx]
add rbx, 8
test r12, r12
jne 0x1005c2010
mov eax, dword [rsp + 0x3c]
test eax, eax
je 0x1005c264c
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1005c2620
mov rax, qword [0x100727508]
test rax, rax
je 0x1005c259f
mov rdx, qword [sym.vim.exe_empty_option]
cmp rax, qword [rdx]
je 0x1005c259f
mov rdx, r14
lea rcx, [0x1006d71cb]
xor ebx, ebx
call sub.msys_ncursesw6.dll_tgetstr
mov rdx, qword [sym.imp.msys_ncursesw6.dll_BC]
lea rcx, [0x1006d71ce]
cmp rax, 0xffffffffffffffff
cmove rax, rbx
mov qword [rdx], rax
mov rdx, r14
call sub.msys_ncursesw6.dll_tgetstr
mov rdx, qword [sym.imp.msys_ncursesw6.dll_UP]
lea rcx, [0x1006d71d1]
cmp rax, 0xffffffffffffffff
cmove rax, rbx
mov qword [rdx], rax
mov rdx, r14
call sub.msys_ncursesw6.dll_tgetstr
lea rdx, [rax - 1]
cmp rdx, 0xfffffffffffffffd
ja 0x1005c1e79
movzx edx, byte [rax]
mov rax, qword [sym.imp.msys_ncursesw6.dll_PC]
mov byte [rax], dl
jmp 0x1005c1e79
mov rcx, qword [r14 + 8]
test ebp, ebp
je 0x1005c212d
cmp byte [rcx], 0x1b
je 0x1005c2150
mov qword [rbx + rax*8], rcx
lea rcx, [rbx + rax*8]
call sym.vim.exe_get_term_opt_idx
mov edx, eax
xor ecx, ecx
call sym.vim.exe_set_term_option_sctx_idx
jmp 0x1005c1dbd
movzx edx, byte [rcx + 1]
lea r8d, [rdx - 0x5b]
and r8d, 0xfd
je 0x1005c2166
cmp dl, 0x4f
jne 0x1005c212d
call sym.vim.exe_vim_strsave
mov edx, 0xffffffff
mov r9, rax
test rax, rax
je 0x1005c213c
movzx eax, byte [rax]
test al, al
je 0x1005c21f6
mov dword [rsp + 0x44], esi
mov r15, r13
mov rsi, r9
mov r13, r12
mov qword [rsp + 0x48], r9
jmp 0x1005c2199
mov eax, edx
test al, al
je 0x1005c21e7
add rsi, 1
movzx edx, byte [rsi]
cmp al, 0x1b
jne 0x1005c2193
cmp dl, 0x5b
je 0x1005c24f5
cmp dl, 0x5d
je 0x1005c24eb
mov eax, edx
cmp dl, 0x4f
jne 0x1005c2195
mov eax, 0xffffff8f
mov byte [rsi - 1], al
lea r12, [rsi + 1]
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rdx, r12
mov rcx, rsi
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
movzx eax, byte [rsi]
test al, al
jne 0x1005c2199
mov esi, dword [rsp + 0x44]
mov r9, qword [rsp + 0x48]
mov r12, r13
mov r13, r15
movsxd rax, dword [r14]
mov qword [rbx + rax*8], r9
lea rcx, [rbx + rax*8]
call sym.vim.exe_set_term_option_alloced
mov edx, eax
jmp 0x1005c213c
call sym.vim.exe_del_termcode
jmp 0x1005c1dbd
test esi, esi
je 0x1005c1e7e
test ebx, ebx
je 0x1005c18cd
lea rdx, str.pcterm
mov rcx, r13
call sub.msys_2.0.dll_strcmp
mov r8d, eax
lea rax, [0x1006d71a9]
test r8d, r8d
je 0x1005c224f
mov rax, qword [sym.vim.exe_empty_option]
mov rax, qword [rax]
mov qword [0x100727500], rax
call sym.vim.exe_get_stty
mov edx, dword [0x100727e98]
test edx, edx
jle 0x1005c23d8
mov rax, qword [0x100727ea0]
sub edx, 1
lea rdx, [rdx + rdx*2]
lea rcx, [rax + rdx*8 + 0x18]
mov rdx, rax
jmp 0x1005c2295
add rdx, 0x18
cmp rcx, rdx
je 0x1005c234d
cmp byte [rdx], 0x6b
jne 0x1005c2288
cmp byte [rdx + 1], 0x62
jne 0x1005c2288
cmp byte [rax], 0x6b
mov rdx, qword [rdx + 8]
jne 0x1005c2358
cmp byte [rax + 1], 0x44
jne 0x1005c2358
mov rbx, qword [rax + 8]
test rdx, rdx
je 0x1005c2496
movzx eax, byte [rdx]
test al, al
je 0x1005c2496
test rbx, rbx
je 0x1005c1b4b
cmp byte [rbx], 0
je 0x1005c1b4b
jmp 0x1005c1b53
lea rdx, str.dumb
mov rcx, r14
call r12
test ebp, ebp
je 0x1005c23b3
mov rcx, qword [sym.vim.exe_e_cannot_open_termcap_file]
call sub.msys_intl_8.dll_libintl_gettext
mov r12, rax
test r12, r12
jne 0x1005c1e7e
jmp 0x1005c1eac
call sym.vim.exe_screen_start
call sym.vim.exe_out_flush
call sym.vim.exe_is_not_a_term
test eax, eax
jne 0x1005c1aed
mov edx, 1
mov ecx, 0x7d7
call sym.vim.exe_ui_delay
jmp 0x1005c1aed
xor edx, edx
jmp 0x1005c2365
add rax, 0x18
cmp rax, rcx
je 0x1005c1b37
cmp byte [rax], 0x6b
jne 0x1005c2358
cmp byte [rax + 1], 0x44
jne 0x1005c2358
jmp 0x1005c22b7
mov rdx, r14
mov rcx, r12
call sub.msys_ncursesw6.dll_tgetstr
mov rdx, rax
lea rax, [rax - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1005c2068
movzx eax, byte [rdx]
cmp al, 8
jne 0x1005c23c7
cmp byte [r12], 0x6b
je 0x1005c26a5
xor r8d, r8d
mov rcx, r12
call fcn.1005be890
jmp 0x1005c2068
mov rcx, qword [sym.vim.exe_e_terminal_entry_not_found_in_terminfo]
call sub.msys_intl_8.dll_libintl_gettext
mov r12, rax
jmp 0x1005c2314
test al, al
jne 0x1005c23a3
mov rcx, r12
call sym.vim.exe_del_termcode
jmp 0x1005c2068
xor r8d, r8d
lea rdx, [0x1006d7237]
lea rcx, [0x1006d7239]
call fcn.1005be890
xor r8d, r8d
lea rdx, [0x1006d723c]
lea rcx, [0x1006d723e]
call fcn.1005be890
jmp 0x1005c1b53
lea r8, [0x1006d71ad]
lea r12, str.ttym
xor r9d, r9d
xor edx, edx
mov rcx, r12
call sym.vim.exe_set_option_value_give_err
mov rcx, r12
call sym.vim.exe_reset_option_was_set
mov rcx, r13
call sym.vim.exe_use_xterm_like_mouse
test eax, eax
je 0x1005c1b9d
mov r10d, 0x62fd
lea r12, [rsp + 0x80]
xor r8d, r8d
mov byte [rsp + 0x82], 0
lea rdx, [0x1006d7241]
mov rcx, r12
mov word [rsp + 0x80], r10w
call fcn.1005be890
xor r8d, r8d
mov rcx, r12
lea rdx, [0x1006d7245]
mov byte [rsp + 0x81], 0x63
call fcn.1005be890
mov dword [0x100728824], 1
jmp 0x1005c1b9d
xor r8d, r8d
lea rdx, [0x1006d7237]
lea rcx, [0x1006d7239]
call fcn.1005be890
test rbx, rbx
je 0x1005c23ee
cmp byte [rbx], 0
jne 0x1005c1b53
jmp 0x1005c23ee
lea rcx, [0x1006d71b7]
call qword [sym.imp.msys_ncursesw6.dll_tgetflag]
test eax, eax
jle 0x1005c1f5d
lea rax, [0x1006d71ba]
mov qword [0x1007274a0], rax
jmp 0x1005c1f5d
mov eax, 0xffffff9d
jmp 0x1005c21c2
mov eax, 0xffffff9b
jmp 0x1005c21c2
lea rcx, [0x1006d71c5]
call qword [sym.imp.msys_ncursesw6.dll_tgetflag]
test eax, eax
jle 0x1005c1fdd
lea rax, [0x1006d71ba]
mov qword [0x1007273f0], rax
jmp 0x1005c1fdd
lea rcx, [0x1006d71c2]
call qword [sym.imp.msys_ncursesw6.dll_tgetflag]
test eax, eax
jle 0x1005c1fbd
lea rax, [0x1006d71ba]
mov qword [0x1007273f8], rax
jmp 0x1005c1fbd
lea rcx, [0x1006d71bf]
call qword [sym.imp.msys_ncursesw6.dll_tgetflag]
test eax, eax
jle 0x1005c1f9d
lea rax, [0x1006d71ba]
mov qword [0x100727528], rax
jmp 0x1005c1f9d
lea rcx, [0x1006d71bc]
call qword [sym.imp.msys_ncursesw6.dll_tgetflag]
test eax, eax
jle 0x1005c1f7d
lea rax, [0x1006d71ba]
mov qword [0x100727520], rax
jmp 0x1005c1f7d
mov rcx, r15
call qword [sym.imp.msys_ncursesw6.dll_tgetnum]
mov rdx, qword [sym.vim.exe_t_colors]
mov dword [rdx], eax
cmp eax, 1
jg 0x1005c2680
mov byte [rsp + 0x60], 0
lea rbx, [rsp + 0x60]
mov dword [rsp + 0x20], 0
mov r9d, 1
mov r8, rbx
mov edx, 0xffffffff
lea rcx, str.t_Co
call sym.vim.exe_set_string_option_direct
mov edx, 0xffffffff
mov rcx, r15
call sym.vim.exe_set_term_option_sctx_idx
jmp 0x1005c20ac
lea rcx, [0x1006d71c8]
call qword [sym.imp.msys_ncursesw6.dll_tgetflag]
test eax, eax
jle 0x1005c1ffd
lea rax, [0x1006d71ba]
mov qword [0x1007273e8], rax
jmp 0x1005c1ffd
lea rcx, [0x1006d70d0]
call qword [sym.imp.msys_ncursesw6.dll_tgetnum]
mov dword [rsp + 0x40], eax
jmp 0x1005c208c
lea r8, str.xterm
jmp 0x1005c2410
call sym.vim.exe_clear_termoptions
jmp 0x1005c1eb4
lea rcx, [0x1006d70d3]
call qword [sym.imp.msys_ncursesw6.dll_tgetnum]
mov dword [rsp + 0x3c], eax
jmp 0x1005c2080
call sym.vim.exe_scroll_region_reset
jmp 0x1005c1c5c
call sym.vim.exe_screen_start
mov ecx, 1
call sym.vim.exe_wait_return
jmp 0x1005c1cec
mov dword [rsp + 0x20], eax
lea rbx, [rsp + 0x60]
mov r8d, 0x14
xor edx, edx
lea r9, [0x1006d70c3]
mov rcx, rbx
call sub.msys_2.0.dll___sprintf_chk
jmp 0x1005c25c4
cmp byte [r12 + 1], 0x6c
jne 0x1005c23a3
jmp 0x1005c2068
call fcn.1005bf580
jmp 0x1005c1ce4
call sym.vim.exe_out_flush
jmp 0x1005c1b2d