Function at 0x100517120
Capabilities:
Encode data using base64
Parse credit card information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x158
mov rsi, qword [sym.imp.msys_2.0.dll___stack_chk_guard]
mov rax, qword [rsi]
mov qword [rsp + 0x148], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rsp + 0xa0], rcx
mov r15d, edx
mov qword [rsp + 0xd8], rcx
je 0x1005185cd
mov dword [rsp + 0x90], 0
mov rsi, qword [rsp + 0xa0]
xor ebp, ebp
mov dword [rsp + 0x78], 0
movzx eax, byte [rsi]
sub eax, 0x61
jne 0x100517198
movzx eax, byte [rsi + 1]
sub eax, 0x6c
jne 0x100517198
movzx eax, byte [rsi + 2]
sub eax, 0x6c
mov r13d, r15d
mov rbx, qword [rsp + 0xd8]
and r13d, 8
test eax, eax
je 0x10051757b
mov r8d, 7
lea rdx, str.termcap
mov rcx, rbx
call sub.msys_2.0.dll_strncmp
or eax, r13d
je 0x1005178d0
cmp byte [rbx], 0x6e
jne 0x1005174b0
movzx edi, byte [rbx + 1]
sub edi, 0x6f
mov dword [rsp + 0x48], edi
jne 0x1005174b0
mov r8d, 6
lea rdx, str.novice
mov rcx, rbx
call sub.msys_2.0.dll_strncmp
test eax, eax
je 0x1005174b0
lea rcx, [rbx + 2]
mov qword [rsp + 0xd8], rcx
movzx ebx, byte [rcx]
cmp bl, 0x3c
je 0x1005174ed
cmp bl, 0x74
jne 0x10051753e
cmp byte [rcx + 1], 0x5f
jne 0x10051753e
cmp byte [rcx + 2], 0
je 0x10051753e
cmp byte [rcx + 3], 0
je 0x10051753e
movzx ebx, byte [rcx + 4]
lea rax, [rcx + 4]
mov edi, 4
mov r14d, 4
mov byte [rax], 0
mov rdx, qword [rsp + 0xd8]
mov rcx, rdx
mov qword [rsp + 0x40], rdx
call sym.vim.exe_findoption
mov rdx, qword [rsp + 0x40]
movsxd r12, eax
mov byte [rdx + rdi], bl
xor ebx, ebx
mov rax, qword [rsp + 0xd8]
cmp r12d, 0xffffffff
je 0x100517970
movzx eax, byte [rax + rdi]
mov byte [rsp + 0x68], al
call sym.vim.exe_in_vim9script
test eax, eax
je 0x1005175d8
mov rcx, qword [rsp + 0xd8]
add rcx, rdi
call sym.vim.exe_skipwhite
mov rcx, qword [rsp + 0xd8]
mov r9, rax
lea rax, [rcx + rdi]
cmp rax, r9
jb 0x100517816
movzx r9d, byte [rax]
test r9b, r9b
je 0x1005172e3
lea eax, [r14 + 1]
cdqe
cmp byte [rcx + rax], 0x3d
je 0x100517906
mov dword [rsp + 0x5c], 0
mov dword [rsp + 0x60], 0
mov dword [rsp + 0x50], 0
movzx r14d, r9b
cmp r12d, 0xffffffff
jne 0x10051730d
test ebx, ebx
je 0x100517a1d
test r12d, r12d
js 0x100517625
movsxd rax, r12d
lea r10, str.aleph
lea rax, [rax + rax*4]
shl rax, 4
add r10, rax
mov rbx, qword [r10 + 0x18]
test rbx, rbx
je 0x100518435
mov rax, qword [r10 + 0x10]
mov rcx, r10
mov edx, r15d
mov byte [rsp + 0x7c], r9b
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x40], rax
call fcn.10050e2e0
test r15b, 0x10
mov r10, qword [rsp + 0x70]
movzx r9d, byte [rsp + 0x7c]
mov rbp, rax
je 0x10051777c
cmp qword [r10 + 0x18], 0xffffffffffffffff
jne 0x10051737f
test r15b, 0x20
je 0x10051778d
mov rcx, qword [rsp + 0xd8]
xor ebx, ebx
mov dword [rsp + 0xd0], 0
mov rax, rcx
nop word [rax + rax]
movzx edx, byte [rax]
test dl, dl
jne 0x1005173bf
jmp 0x1005174a0
movzx edx, byte [rax + 1]
mov rax, rcx
test dl, dl
je 0x1005174a0
cmp dl, 0x20
je 0x1005174a0
cmp dl, 9
je 0x1005174a0
lea rcx, [rax + 1]
mov qword [rsp + 0xd8], rcx
cmp byte [rax], 0x5c
jne 0x1005173b0
cmp byte [rax + 1], 0
jne 0x100517488
call sym.vim.exe_skipwhite
mov qword [rsp + 0xd8], rax
cmp byte [rax], 0x3d
jne 0x100517414
mov edi, dword [rsp + 0xd0]
lea edx, [rdi + 1]
mov dword [rsp + 0xd0], edx
cmp edx, 1
jle 0x1005173a0
mov rcx, rax
test rbx, rbx
jne 0x100518368
call sym.vim.exe_skipwhite
mov qword [rsp + 0xd8], rax
cmp byte [rax], 0
mov rsi, rax
jne 0x100517180
mov rbx, qword [sym.vim.exe_silent_mode]
mov ecx, dword [rbx]
test ecx, ecx
je 0x100517452
mov edx, dword [rsp + 0x78]
test edx, edx
jne 0x1005185e5
mov eax, 1
mov rsi, qword [sym.imp.msys_2.0.dll___stack_chk_guard]
mov rdx, qword [rsp + 0x148]
sub rdx, qword [rsi]
jne 0x100518fd5
add rsp, 0x158
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rax + 2]
mov qword [rsp + 0xd8], rcx
movzx edx, byte [rax + 2]
mov rax, rcx
jmp 0x1005173b7
mov rcx, rax
jmp 0x1005173ec
cmp byte [rbx], 0x69
jne 0x100517615
cmp byte [rbx + 1], 0x6e
jne 0x100517615
cmp byte [rbx + 2], 0x76
jne 0x100517615
lea rcx, [rbx + 3]
mov dword [rsp + 0x48], 2
mov qword [rsp + 0xd8], rcx
movzx ebx, byte [rcx]
cmp bl, 0x3c
jne 0x10051721c
movzx eax, byte [rcx + 1]
cmp al, 0x74
jne 0x10051794a
cmp byte [rcx + 2], 0x5f
jne 0x10051785d
cmp byte [rcx + 3], 0
je 0x10051785d
cmp byte [rcx + 4], 0
je 0x10051785d
movzx eax, byte [rcx + 5]
lea r8, [rcx + 5]
mov edx, 5
mov r14d, 5
cmp al, 0x3e
je 0x100517883
mov rbx, qword [sym.vim.exe_e_invalid_argument]
jmp 0x100517389
xor r14d, r14d
jmp 0x100517553
add r14d, 1
movsxd rax, r14d
movzx ebx, byte [rcx + rax]
mov eax, ebx
and eax, 0xffffffdf
sub eax, 0x41
cmp al, 0x19
jbe 0x100517548
movzx eax, bl
sub eax, 0x30
cmp eax, 9
jbe 0x100517548
cmp bl, 0x5f
je 0x100517548
movsxd rdi, r14d
lea rax, [rcx + rdi]
jmp 0x100517256
call sub.msys_2.0.dll___locale_ctype_ptr
mov rbx, qword [rsp + 0xd8]
movzx edx, byte [rbx + 3]
test byte [rdx + rax + 1], 3
jne 0x1005171af
test r13d, r13d
jne 0x1005171cd
lea rax, [rbx + 3]
mov qword [rsp + 0xd8], rax
cmp byte [rbx + 3], 0x26
je 0x10051847c
mov ecx, 1
mov edx, r15d
call fcn.10050edf0
mov dword [rsp + 0x78], 1
mov rcx, qword [rsp + 0xd8]
jmp 0x100517420
mov rcx, qword [rsp + 0xd8]
movzx r9d, byte [rcx + rdi]
cmp r9b, 9
je 0x1005175f8
cmp r9b, 0x20
jne 0x1005172ce
nop dword [rax]
add r14d, 1
movsxd rdi, r14d
movzx r9d, byte [rcx + rdi]
cmp r9b, 0x20
je 0x1005175f8
cmp r9b, 9
je 0x1005175f8
jmp 0x1005172ce
mov dword [rsp + 0x48], 1
mov rcx, rbx
jmp 0x100517210
mov eax, ebx
mov edx, 0xfffffff2
test ebx, ebx
jns 0x100517639
mov edx, ebx
neg ebx
neg edx
movzx eax, bh
mov byte [rsp + 0xee], dl
mov byte [rsp + 0xef], al
test r15b, 0x10
jne 0x10051800a
mov qword [rsp + 0x40], 4
test r13d, r13d
jne 0x1005177bd
mov rax, qword [sym.vim.exe_sandbox]
mov qword [rsp + 0x88], rax
movzx eax, byte [rsp + 0x68]
mov edx, r14d
mov byte [rsp + 0x70], r9b
lea rcx, str._:__
mov dword [rsp + 0x68], eax
call sym.vim.exe_vim_strchr
movzx r9d, byte [rsp + 0x70]
test rax, rax
je 0x1005176fe
mov rax, qword [sym.vim.exe_p_cp]
add rdi, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov r8, rdi
mov eax, dword [rax]
mov dword [rsp + 0x90], eax
cmp r14d, 0x26
je 0x1005179b0
mov edx, r14d
lea rcx, [0x1006cc0ab]
mov byte [rsp + 0x70], r9b
call sym.vim.exe_vim_strchr
movzx r9d, byte [rsp + 0x70]
test rax, rax
je 0x1005176fe
mov rcx, qword [rsp + 0xd8]
movzx eax, byte [rcx + 1]
test al, 0xdf
je 0x1005176fe
cmp al, 9
jne 0x1005179fb
cmp r14d, 0x3f
je 0x100517f2b
mov rbx, qword [rsp + 0x40]
and ebx, 1
cmp dword [rsp + 0x48], 1
je 0x100517a73
mov dword [rsp + 0xd4], 0
mov eax, dword [rsp + 0x50]
or eax, dword [rsp + 0x60]
or eax, dword [rsp + 0x5c]
xor eax, 1
mov dword [rsp + 0x7c], eax
test rbx, rbx
je 0x100517760
sub r9d, 0x21
cmp r9b, 0x1c
ja case.0x10051775e.1
lea rdx, [0x1006cc0f8]
movzx r9d, r9b
movsxd rax, dword [rdx + r9*4]
add rax, rdx
jmp rax
mov edx, r14d
lea rcx, str.:_
call sym.vim.exe_vim_strchr
mov rcx, qword [rsp + 0xd8]
jmp 0x100517532
test r15b, 0x20
je 0x10051778d
cmp qword [r10 + 0x18], 0xffffffffffffffff
je 0x10051737f
test r13d, r13d
je 0x1005177da
test qword [rsp + 0x40], 0x2080000
jne 0x100518270
test qword [rsp + 0x40], 0x20000000
je 0x1005177bd
mov rax, qword [sym.vim.exe_p_mle]
mov eax, dword [rax]
test eax, eax
je 0x1005185b9
mov rax, qword [sym.vim.exe_curwin]
mov rax, qword [rax]
mov eax, dword [rax + 0x3e0]
test eax, eax
je 0x1005177da
test r12d, r12d
jns 0x100518011
mov rax, qword [sym.vim.exe_sandbox]
mov qword [rsp + 0x88], rax
mov eax, dword [rax]
test eax, eax
je 0x100517672
test qword [rsp + 0x40], 0x80000
je 0x100517672
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [sym.vim.exe_e_not_allowed_in_sandbox]
jmp 0x100517389
movzx eax, byte [r9]
cmp al, 0x3d
je 0x100518048
movzx edx, al
lea rcx, [0x1006cc096]
mov qword [rsp + 0x40], r9
call sym.vim.exe_vim_strchr
mov r9, qword [rsp + 0x40]
test rax, rax
je 0x10051784b
cmp byte [r9 + 1], 0x3d
je 0x100518048
mov rcx, qword [rsp + 0xd8]
movzx r9d, byte [rcx + rdi]
jmp 0x1005172ce
mov r14d, 1
nop dword [rax + rax]
add r14d, 1
movsxd rdx, r14d
lea r8, [rcx + rdx]
movzx eax, byte [r8]
test al, al
je 0x10051752a
cmp al, 0x3e
jne 0x100517868
mov byte [r8], 0
mov rax, qword [rsp + 0xd8]
add r14d, 1
movsxd rdi, r14d
cmp byte [rax + 1], 0x74
je 0x100517a07
mov byte [rax + rdx], 0x3e
mov rax, qword [rsp + 0xd8]
mov edx, 1
mov r12, 0xffffffffffffffff
lea rcx, [rax + 1]
call fcn.10050f1a0
mov ebx, eax
mov rax, qword [rsp + 0xd8]
jmp 0x10051728d
mov edx, r15d
mov ecx, 2
call fcn.10050edf0
mov ecx, r15d
call sym.vim.exe_show_termcodes
mov rax, qword [rsp + 0xd8]
mov dword [rsp + 0x78], 1
lea rcx, [rax + 7]
mov qword [rsp + 0xd8], rcx
jmp 0x100517420
cmp r9b, 0x2b
je 0x100518062
cmp r9b, 0x5e
je 0x1005184b4
cmp r9b, 0x2d
jne 0x1005172e3
mov dword [rsp + 0x5c], 1
mov r9d, 0x3d
mov rdi, rax
mov dword [rsp + 0x60], 0
mov dword [rsp + 0x50], 0
jmp 0x1005172fb
cmp al, 0x3e
je 0x10051795c
mov r14d, 1
test al, al
jne 0x100517868
lea r8, [rcx + 1]
mov edx, 1
mov r14d, 1
jmp 0x10051752a
cmp byte [rax], 0x74
jne 0x10051728d
cmp byte [rax + 1], 0x5f
jne 0x10051728d
movzx ecx, byte [rax + 2]
test cl, cl
je 0x10051728d
movzx edx, byte [rax + 3]
test dl, dl
je 0x10051728d
shl edx, 8
add edx, ecx
mov ebx, edx
neg ebx
jmp 0x10051728d
cmp byte [rdi + 1], 0x76
je 0x1005184da
mov edx, 0x26
lea rcx, [0x1006cc0ab]
mov byte [rsp + 0x70], r9b
call sym.vim.exe_vim_strchr
movzx r9d, byte [rsp + 0x70]
test rax, rax
je 0x100517708
mov rcx, qword [rsp + 0xd8]
movzx eax, byte [rcx + 1]
test al, 0xdf
je 0x100517708
cmp al, 9
je 0x1005176fe
mov rbx, qword [sym.vim.exe_e_trailing_characters]
jmp 0x100517389
cmp byte [rax + 2], 0x5f
lea rbx, [rax + rdx]
je 0x100518c16
mov byte [rbx], 0x3e
jmp 0x1005178a4
call sym.vim.exe_in_vim9script
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [sym.vim.exe_e_unknown_option]
test eax, eax
je 0x100517389
cmp rcx, qword [rsp + 0xa0]
jbe 0x100517389
movzx edx, byte [rcx]
lea rcx, [0x1006cc09a]
call sym.vim.exe_vim_strchr
mov rcx, qword [rsp + 0xd8]
test rax, rax
je 0x100517389
mov rbx, qword [sym.vim.exe_e_no_white_space_allowed_between_option_and]
jmp 0x100517389
lea rdi, str.:_
mov edx, r14d
mov byte [rsp + 0x70], r9b
mov rcx, rdi
call sym.vim.exe_vim_strchr
movzx r9d, byte [rsp + 0x70]
test rax, rax
je 0x100517f22
mov dword [rsp + 0xd4], 0
mov eax, dword [rsp + 0x50]
or eax, dword [rsp + 0x60]
mov dword [rsp + 0xa8], eax
or eax, dword [rsp + 0x5c]
mov dword [rsp + 0x94], eax
xor eax, 1
mov dword [rsp + 0x7c], eax
test rbx, rbx
jne 0x10051773e
mov edx, r14d
mov rcx, rdi
call sym.vim.exe_vim_strchr
test rax, rax
je case.0x10051775e.25
mov rax, qword [rsp + 0x40]
and eax, 2
mov qword [rsp + 0x98], rax
jne 0x100518284
test r12d, r12d
js 0x10051850a
movsxd rax, r12d
lea rdi, str.aleph
mov qword [rsp + 0x80], rax
lea rax, [rax + rax*4]
shl rax, 4
add rax, rdi
mov edx, dword [rax + 0x20]
and edx, 0x1000
test r15b, 6
jne 0x100517e88
test edx, edx
je 0x100517b39
mov rbp, qword [rax + 0x18]
mov rax, qword [rsp + 0x80]
mov edx, 4
mov rdi, qword [rbp]
lea rcx, [rax + rax*4]
lea rax, str.aleph
shl rcx, 4
lea rbx, [rax + rcx]
mov rcx, rbx
call fcn.10050e2e0
mov edx, dword [rbx + 0x20]
mov rax, qword [rax]
mov qword [rsp + 0x48], rax
test edx, edx
jne 0x100518990
mov rcx, rbx
call fcn.10050d0b0
mov edx, dword [rbx + 0x20]
mov rbx, qword [rax]
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x60], rbx
and dh, 0x10
je 0x100517bbf
mov rdi, qword [rsp + 0x48]
mov rax, qword [sym.vim.exe_empty_option]
cmp qword [rax], rdi
mov rax, rdi
cmove rax, rbx
mov qword [rsp + 0x48], rax
mov rdi, qword [rsp + 0x70]
test r15b, 4
jne 0x1005188a3
cmp r14d, 0x26
je 0x100517eb5
cmp r14d, 0x3c
je 0x100518c4b
mov rax, qword [rsp + 0xd8]
cmp rbp, qword [sym.vim.exe_p_kp]
lea rcx, [rax + 1]
mov qword [rsp + 0xd8], rcx
je 0x1005187b9
mov r14, qword [sym.vim.exe_p_bs]
cmp rbp, r14
je 0x1005187fa
cmp rbp, qword [sym.vim.exe_p_ww]
movzx r8d, byte [rax + 1]
je 0x100518cc0
mov qword [rsp + 0x68], 0
cmp r8b, 0x3e
je 0x100518c90
call sub.msys_2.0.dll_strlen
mov r9d, dword [rsp + 0x94]
mov r14, rax
test r9d, r9d
jne 0x1005185a7
add r14d, 1
mov ecx, r14d
call sym.vim.exe_alloc
mov r14, rax
test rax, rax
je 0x100517439
mov rcx, qword [rsp + 0xd8]
mov rbx, r14
movzx eax, byte [rcx]
test al, al
jne 0x100517ccd
jmp 0x100517d19
mov rax, qword [sym.vim.exe_mb_ptr2len]
call qword [rax]
mov rcx, qword [rsp + 0xd8]
mov dword [rsp + 0xd0], eax
cmp eax, 1
jle 0x100517cf4
mov rdx, qword [rsp + 0xd8]
mov rcx, rbx
movsxd r8, eax
call sub.msys_2.0.dll_memmove
movsxd rax, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0xd8]
add rcx, rax
add rbx, rax
mov qword [rsp + 0xd8], rcx
movzx eax, byte [rcx]
test al, al
je 0x100517d19
cmp al, 0x20
je 0x100517d19
cmp al, 9
je 0x100517d19
cmp al, 0x5c
je 0x1005181f4
mov rcx, qword [rsp + 0xd8]
mov rax, qword [sym.vim.exe_has_mbyte]
mov r8d, dword [rax]
test r8d, r8d
jne 0x100517c78
lea rax, [rcx + 1]
add rbx, 1
mov qword [rsp + 0xd8], rax
movzx eax, byte [rcx]
mov byte [rbx - 1], al
mov rcx, qword [rsp + 0xd8]
movzx eax, byte [rcx]
test al, al
jne 0x100517ccd
mov edx, dword [rsp + 0x94]
mov byte [rbx], 0
test edx, edx
je 0x100518e0e
test qword [rsp + 0x40], 0x8000
je 0x100517d4d
mov rdx, r14
mov ecx, r12d
call fcn.10050e6b0
mov rbx, rax
test rax, rax
jne 0x100518a18
mov dword [rsp + 0xd0], 0
mov eax, dword [rsp + 0x5c]
test eax, eax
jne 0x100517d6f
test qword [rsp + 0x40], 0x20000
je 0x1005188ca
mov rcx, r14
call sub.msys_2.0.dll_strlen
mov r8, qword [rsp + 0x40]
mov rdx, r14
mov rcx, rdi
mov dword [rsp + 0xd0], eax
call fcn.10050cfc0
mov rbx, rax
mov eax, dword [rsp + 0xa8]
test eax, eax
je 0x10051867c
test rbx, rbx
je 0x100518e93
mov rdx, rdi
mov rcx, r14
call sub.msys_2.0.dll_strcpy
mov r11d, dword [rsp + 0x5c]
test r11d, r11d
jne 0x100518693
test qword [rsp + 0x40], 0x40000
jne 0x10051870a
cmp qword [rsp + 0x68], 0
je 0x100517de6
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0xd8], rax
mov rax, qword [sym.vim.exe_starting]
mov qword [rbp], r14
mov r10d, dword [rax]
test r10d, r10d
jne 0x100518acf
mov rax, qword [rsp + 0x80]
lea rbx, str.aleph
lea rax, [rax + rax*4]
shl rax, 4
cmp dword [rbx + rax + 0x20], 0x402d
je 0x100518acf
test rdi, rdi
je 0x100518acf
test r14, r14
je 0x100518acf
mov rcx, rdi
call sym.vim.exe_vim_strsave
mov rcx, r14
mov rdi, rax
call sym.vim.exe_vim_strsave
mov r14, rax
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x100517e61
mov rcx, rax
call sym.vim.exe_vim_strsave
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x100518ae6
mov rcx, rax
call sym.vim.exe_vim_strsave
mov qword [rsp + 0x60], rax
jmp 0x100518ae6
mov qword [rsp + 0x60], 0
mov rdi, qword [rbp]
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x70], rdi
test edx, edx
jne 0x100517bb0
cmp r14d, 0x26
jne 0x100517bc9
mov rdx, qword [rsp + 0x40]
mov ecx, dword [rsp + 0x90]
xor eax, eax
mov rbx, qword [rsp + 0x80]
shr rdx, 0xa
xor rdx, 1
test ecx, ecx
sete al
and rax, rdx
lea rdx, [rbx + rbx*4]
cmp rbp, qword [sym.vim.exe_p_bg]
lea rax, [rax + rdx*2 + 4]
lea rbx, str.aleph
mov rbx, qword [rbx + rax*8 + 8]
je 0x100518ff0
cmp rbp, qword [sym.vim.exe_p_fencs]
je 0x100518f26
test rbx, rbx
jne 0x100518f40
mov rax, qword [sym.vim.exe_empty_option]
mov r14, qword [rax]
jmp 0x100517de6
test rbx, rbx
jne 0x10051861d
mov eax, dword [rsp + 0x78]
test eax, eax
jne 0x1005180a8
mov ecx, 1
call sym.vim.exe_gotocmdline
test r12d, r12d
js 0x1005180bb
lea rdi, [r12 + r12*4]
lea rbx, str.aleph
mov edx, r15d
shl rdi, 4
add rbx, rdi
mov rcx, rbx
call fcn.10050ecf0
mov rax, qword [sym.vim.exe_p_verbose]
cmp qword [rax], 0
jle 0x100517fd5
cmp qword [rbx + 0x18], rbp
je 0x100518f88
mov eax, dword [rbx + 0x20]
test ah, 0x20
jne 0x100518a5b
test ah, 0x40
je 0x100517fd5
mov rdx, qword [sym.vim.exe_curbuf]
and eax, 0xfff
lea rcx, [rsp + 0xb0]
lea rax, [rax + rax*2]
shl rax, 3
add rax, qword [rdx]
movdqu xmm2, xmmword [rax + 0x12c8]
add rax, 0x12c0
movaps xmmword [rsp + 0xb0], xmm2
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xc0], rax
call sym.vim.exe_last_set_msg
mov rcx, qword [rsp + 0xd8]
cmp r14d, 0x3f
je 0x1005180f7
test r14d, r14d
je 0x1005180f7
mov eax, dword [rsp + 0x68]
mov dword [rsp + 0x78], 1
cmp eax, 0x20
je 0x10051800a
cmp eax, 9
jne 0x1005179fb
xor ebx, ebx
jmp 0x100517389
movsxd rax, r12d
lea rdx, str.aleph
lea rax, [rax + rax*4]
shl rax, 4
mov eax, dword [rdx + rax + 0x20]
cmp eax, 0x2010
je 0x10051737f
cmp eax, 0x202b
jne 0x1005177da
jmp 0x10051737f
mov qword [rsp + 0xd8], r9
mov rbx, qword [sym.vim.exe_e_no_white_space_allowed_between_option_and]
mov rcx, r9
mov rsi, r9
jmp 0x100517389
mov dword [rsp + 0x5c], 0
mov r9d, 0x3d
mov rdi, rax
mov dword [rsp + 0x60], 0
mov dword [rsp + 0x50], 1
jmp 0x1005172fb
test r14d, r14d
je 0x100518106
mov eax, dword [rsp + 0x68]
cmp eax, 0x20
je 0x100518106
cmp eax, 9
je 0x100518106
mov rcx, qword [rsp + 0xd8]
jmp 0x1005179fb
mov ecx, 0xa
call sym.vim.exe_msg_putchar
test r12d, r12d
jns 0x100517f4a
lea r12, [rsp + 0xee]
mov rcx, r12
call sym.vim.exe_find_termcode
mov rdx, rax
test rax, rax
je 0x100518efe
mov rcx, r12
mov r8d, 1
call sym.vim.exe_show_one_termcode
mov rcx, qword [rsp + 0xd8]
cmp r14d, 0x3f
jne 0x100517fe7
mov dword [rsp + 0x78], 1
xor ebx, ebx
jmp 0x100517389
movsxd rax, dword [rsp + 0x48]
cmp eax, 2
je case.0x10051775e.0
mov r8d, dword [rsp + 0x48]
mov r9d, r15d
mov rdx, rbp
mov ecx, r12d
mov qword [rsp + 0xe0], rax
call fcn.100515c50
mov rbx, rax
test r12d, r12d
jns 0x100518253
mov rcx, qword [rsp + 0xd8]
jmp 0x100517389
mov eax, dword [rbp]
xor eax, 1
mov dword [rsp + 0x48], eax
cdqe
jmp 0x100518110
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
add rax, 0x1d80
cmp rbp, rax
jne 0x10051817e
cmp r15d, 4
jne 0x10051817e
mov dword [rsp + 0x48], 0xffffffff
mov rax, 0xffffffffffffffff
jmp 0x100518110
movsxd rax, r12d
lea rcx, [rax + rax*4]
lea rax, str.aleph
shl rcx, 4
add rcx, rax
mov r13d, dword [rcx + 0x20]
test r13d, r13d
jne 0x100518972
call fcn.10050d0b0
movsxd rax, dword [rax]
mov dword [rsp + 0x48], eax
jmp 0x100518110
mov rdx, qword [rsp + 0x40]
mov r14d, dword [rsp + 0x90]
xor eax, eax
shr rdx, 0xa
xor rdx, 1
test r14d, r14d
sete al
and rax, rdx
movsxd rdx, r12d
lea rdx, [rdx + rdx*4]
lea rdx, [rax + rdx*2 + 4]
lea rax, str.aleph
mov rax, qword [rax + rdx*8 + 8]
mov dword [rsp + 0x48], eax
cdqe
jmp 0x100518110
cmp byte [rcx + 1], 0
je 0x100517cdd
add rcx, 1
mov qword [rsp + 0xd8], rcx
jmp 0x100517ce5
mov r13, qword [rsp + 0x60]
mov qword [rsp + 0x28], r14
mov r8, rdi
mov edx, r15d
mov r9, qword [rsp + 0x48]
mov ecx, r12d
mov qword [rsp + 0x20], r13
call sym.vim.exe_trigger_optionsset_string
mov rcx, rdi
call sym.vim.exe_vim_free
mov rcx, qword [rsp + 0x48]
call sym.vim.exe_vim_free
mov rcx, r13
call sym.vim.exe_vim_free
mov rcx, r14
call sym.vim.exe_vim_free
mov r9d, dword [rsp + 0xd4]
mov r8d, dword [rsp + 0x7c]
mov edx, r15d
mov ecx, r12d
call sym.vim.exe_did_set_option
jmp 0x100518137
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [sym.vim.exe_e_not_allowed_in_modeline]
jmp 0x100517389
mov rax, qword [rsp + 0xd8]
lea rcx, [rax + 1]
mov qword [rsp + 0xd8], rcx
cmp r14d, 0x26
je 0x100518d5e
cmp r14d, 0x3c
je 0x1005189b4
cmp rbp, qword [sym.vim.exe_p_wc]
je 0x100518e3d
cmp rbp, qword [sym.vim.exe_p_wcm]
je 0x100518e3d
movzx r8d, byte [rax + 1]
lea eax, [r8 - 0x30]
cmp al, 9
jbe 0x1005182e4
mov rbx, qword [sym.vim.exe_e_number_required_after_equal]
cmp r8b, 0x2d
jne 0x100517389
lea rax, [rsp + 0xe0]
mov r9d, 0xf
xor edx, edx
mov dword [rsp + 0x38], 1
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0xd0]
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x28], 0
call sym.vim.exe_vim_str2nr
movsxd rax, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [sym.vim.exe_e_number_required_after_equal]
test eax, eax
je 0x100517389
movzx eax, byte [rcx + rax]
test al, 0xdf
je 0x100518355
mov rbx, qword [sym.vim.exe_e_number_required_after_equal]
cmp al, 9
jne 0x100517389
mov r8, qword [rsp + 0xe0]
jmp 0x100518d9c
mov rcx, rbx
call sub.msys_intl_8.dll_libintl_gettext
mov rbx, qword [sym.vim.exe_IObuff]
mov r8d, 0x400
mov rdx, rax
mov rcx, qword [rbx]
call sym.vim.exe_vim_strncpy
mov r12, qword [rbx]
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rdx, qword [rsp + 0xd8]
add eax, 2
mov dword [rsp + 0xd0], eax
sub rdx, rsi
cdqe
add rax, rdx
cmp rax, 0x400
jg 0x10051840c
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov r8d, 0x203a
mov rdx, rsi
add r12, rax
mov word [r12], r8w
mov byte [r12 + 2], 0
mov r8, qword [rsp + 0xd8]
movsxd rcx, dword [rsp + 0xd0]
add rcx, qword [rbx]
sub r8, rsi
call sub.msys_2.0.dll_memmove
mov rax, qword [rsp + 0xd8]
movsxd rdx, dword [rsp + 0xd0]
sub rax, rsi
add rax, qword [rbx]
mov byte [rax + rdx], 0
mov r12, qword [rbx]
mov edx, 0x401
mov rcx, r12
call sym.vim.exe_trans_characters
mov rsi, qword [sym.vim.exe_no_wait_return]
mov rcx, qword [rbx]
add dword [rsi], 1
call sym.vim.exe_emsg
sub dword [rsi], 1
xor eax, eax
jmp 0x100517457
lea rcx, str.:__
mov edx, r14d
mov qword [rsp + 0x40], r10
call sym.vim.exe_vim_strchr
mov rcx, qword [rsp + 0xd8]
mov r10, qword [rsp + 0x40]
test rax, rax
jne 0x100517389
test byte [r10 + 0x10], 1
je 0x100518470
cmp r14d, 0x3f
jne 0x100517389
mov rbx, qword [sym.vim.exe_e_option_not_supported]
jmp 0x100517389
lea rcx, [rbx + 4]
mov qword [rsp + 0xd8], rcx
mov ecx, r15d
or ecx, 1
call fcn.10050ffd0
call fcn.100515b00
call fcn.10050e790
mov ecx, 0x32
call sym.vim.exe_redraw_all_later
mov rcx, qword [rsp + 0xd8]
jmp 0x100517420
mov dword [rsp + 0x5c], 0
mov r9d, 0x3d
mov rdi, rax
mov dword [rsp + 0x60], 1
mov dword [rsp + 0x50], 0
jmp 0x1005172fb
cmp byte [rdi + 2], 0x69
jne 0x1005179ba
cmp byte [rdi + 3], 0x6d
je 0x100518f6c
mov dword [rsp + 0x90], 1
add r8, 2
mov qword [rsp + 0xd8], r8
jmp 0x1005179ba
cmp r14d, 0x26
je 0x100518aa6
mov rax, qword [rsp + 0xd8]
lea rbx, [rax + 1]
mov qword [rsp + 0xd8], rbx
movzx edi, byte [rax + 1]
test dil, dil
jne 0x100518543
jmp 0x100518567
mov edi, eax
add rbx, 1
test dil, dil
je 0x100518567
cmp dil, 0x20
je 0x100518567
cmp dil, 9
je 0x100518567
movzx eax, byte [rbx + 1]
cmp dil, 0x5c
jne 0x100518538
test al, al
jne 0x100518c3e
add rbx, 1
xor edi, edi
mov byte [rbx], 0
mov rdx, qword [rsp + 0xd8]
lea rcx, [rsp + 0xee]
xor r8d, r8d
call sym.vim.exe_add_termcode
mov byte [rbx], dil
xor ebx, ebx
mov rax, qword [sym.vim.exe_full_screen]
mov eax, dword [rax]
test eax, eax
jne 0x100518f1a
mov ecx, 0x32
call sym.vim.exe_redraw_all_later
jmp 0x100518137
mov rcx, rdi
call sub.msys_2.0.dll_strlen
lea r14d, [r14 + rax + 2]
jmp 0x100517c46
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [sym.vim.exe_e_not_allowed_in_modeline_when_modelineexpr_is_off]
jmp 0x100517389
xor ecx, ecx
call fcn.10050edf0
mov rbx, qword [sym.vim.exe_silent_mode]
mov eax, dword [rbx]
test eax, eax
je 0x100517452
mov rsi, qword [sym.vim.exe_info_message]
mov ecx, 0xa
mov dword [rbx], 0
mov dword [rsi], 1
call sym.vim.exe_msg_putchar
call sym.vim.exe_cursor_on
call sym.vim.exe_out_flush
mov dword [rbx], 1
mov dword [rsi], 0
jmp 0x100517452
mov dword [rsp + 0xd4], 0
mov eax, dword [rsp + 0x50]
or eax, dword [rsp + 0x60]
or eax, dword [rsp + 0x5c]
xor eax, 1
mov dword [rsp + 0x7c], eax
jmp 0x10051773e
mov dword [rsp + 0xd0], 0
test qword [rsp + 0x40], 0x20000
je 0x100517dc2
mov rcx, r14
call sub.msys_2.0.dll_strlen
mov r8, qword [rsp + 0x40]
mov rdx, r14
mov rcx, rdi
mov dword [rsp + 0xd0], eax
call fcn.10050cfc0
mov rbx, rax
test rbx, rbx
je 0x100518ec5
mov r11d, dword [rsp + 0x5c]
test r11d, r11d
je 0x100517dc2
mov rdx, rdi
mov rcx, r14
call sub.msys_2.0.dll_strcpy
cmp byte [rbx], 0
je 0x100517dc2
movsxd rax, dword [rsp + 0xd0]
test qword [rsp + 0x40], 0x8000
je 0x1005186d3
cmp rdi, rbx
je 0x100518ffd
add eax, 1
sub rbx, 1
mov dword [rsp + 0xd0], eax
cdqe
lea rdx, [rbx + rax]
mov rcx, rdx
sub rbx, rdi
mov qword [rsp + 0x50], rdx
call sub.msys_2.0.dll_strlen
mov rcx, rbx
mov rdx, qword [rsp + 0x50]
add rcx, r14
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
test qword [rsp + 0x40], 0x40000
je 0x100517dd1
movzx eax, byte [r14]
test al, al
je 0x100517dd1
mov rcx, qword [rsp + 0x40]
mov dword [rsp + 0x5c], r12d
mov rbx, rcx
shr rcx, 0xf
mov rdx, rcx
and ebx, 0x18000
xor rdx, 1
mov qword [rsp + 0x40], rbx
mov rbx, r14
mov ecx, edx
and ecx, 1
mov byte [rsp + 0x50], cl
jmp 0x100518762
movzx edx, byte [rbx + 1]
cmp al, 0x2c
je 0x100518758
cmp dl, 0x2c
je 0x100518ed9
add rbx, 1
mov eax, edx
test al, al
je 0x1005187af
cmp qword [rsp + 0x40], 0
jne 0x100518747
cmp byte [rsp + 0x50], 0
lea r12, [rbx + 1]
jne 0x10051877d
cmp al, 0x2c
je 0x100518ba4
movzx edx, al
mov rcx, r12
call sym.vim.exe_vim_strchr
test rax, rax
je 0x100518ba4
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rdx, r12
mov rcx, rbx
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
movzx eax, byte [rbx]
test al, al
jne 0x100518762
mov r12d, dword [rsp + 0x5c]
jmp 0x100517dd1
test byte [rax + 1], 0xdf
jne 0x100517bf4
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x68], rcx
mov r10d, 0x70
mov dword [rsp + 0xf0], 0x6c65683a
mov rcx, rax
mov word [rsp + 0xf4], r10w
mov qword [rsp + 0xd8], rax
jmp 0x100517c29
mov rdx, qword [rbp]
movzx edx, byte [rdx]
sub edx, 0x30
cmp edx, 9
ja 0x100517c04
mov rcx, rbp
call sym.vim.exe_getdigits
mov dword [rsp + 0xd0], eax
cmp eax, 2
je 0x100519054
jg 0x100518ea7
test eax, eax
je 0x100519188
cmp eax, 1
jne 0x100518848
lea rcx, str.indent_eol
call sym.vim.exe_vim_strsave
mov qword [rbp], rax
mov rbx, qword [rsp + 0x70]
mov rcx, rbx
call sym.vim.exe_vim_free
cmp rdi, rbx
je 0x10051917d
mov rax, qword [r14]
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x48]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x68], 0
cmp rcx, rbx
cmove rbx, rax
mov qword [rsp + 0x48], rbx
mov rbx, qword [rsp + 0x60]
cmp rcx, rbx
mov rcx, qword [rsp + 0xd8]
cmove rbx, rax
mov qword [rsp + 0x60], rbx
jmp 0x100517c29
mov rax, qword [rsp + 0x80]
lea rcx, [rax + rax*4]
lea rax, str.aleph
shl rcx, 4
add rcx, rax
call fcn.10050d0b0
mov rdi, qword [rax]
jmp 0x100517bbf
mov eax, dword [rsp + 0x94]
test eax, eax
je 0x100517dc2
test qword [rsp + 0x40], 0x8000
je 0x1005188f3
cmp byte [rdi], 0
je 0x1005188f3
cmp byte [r14], 0
jne 0x100518bb0
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x100518bd0
mov rcx, rdi
call sub.msys_2.0.dll_strlen
mov dword [rsp + 0x50], 0
mov dword [rsp + 0xd0], eax
movsxd rdx, eax
mov rcx, r14
mov qword [rsp + 0x98], rdx
call sub.msys_2.0.dll_strlen
mov rdx, qword [rsp + 0x98]
lea r8, [rax + 1]
lea rcx, [r14 + rdx]
mov rdx, r14
call sub.msys_2.0.dll_memmove
movsxd r8, dword [rsp + 0xd0]
mov rdx, rdi
mov rcx, r14
call sub.msys_2.0.dll_memmove
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x100518685
movsxd rax, dword [rsp + 0xd0]
mov byte [r14 + rax], 0x2c
jmp 0x100518685
mov rax, qword [rcx + 0x18]
cmp rax, 0xffffffffffffffff
jne 0x1005181a5
call fcn.10050d0b0
add rax, 0x588
jmp 0x1005181a5
mov rax, qword [rbx + 0x18]
cmp rax, 0xffffffffffffffff
jne 0x100517b83
mov rcx, rbx
call fcn.10050d0b0
mov edx, dword [rbx + 0x20]
add rax, 0x588
jmp 0x100517b83
mov rax, qword [sym.vim.exe_curbuf]
mov rax, qword [rax]
add rax, 0x1dd0
cmp rbp, rax
jne 0x1005189d3
cmp r15d, 4
je 0x100518fbd
movsxd rax, r12d
lea rcx, [rax + rax*4]
lea rax, str.aleph
shl rcx, 4
add rcx, rax
mov ebx, dword [rcx + 0x20]
test ebx, ebx
je 0x10051919b
mov rax, qword [rcx + 0x18]
cmp rax, 0xffffffffffffffff
jne 0x1005191a0
call fcn.10050d0b0
add rax, 0x588
jmp 0x1005191a0
mov rcx, r14
call sym.vim.exe_vim_free
mov rcx, rbx
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov r14, rax
call sub.msys_2.0.dll_strlen
lea eax, [rax + r14 + 2]
mov ecx, eax
call sym.vim.exe_alloc
mov r14, rax
test rax, rax
je 0x100517439
mov rdx, rbx
mov rcx, rax
call sub.msys_2.0.dll_strcpy
jmp 0x100517d4d
mov rdx, qword [sym.vim.exe_curwin]
and eax, 0xfff
lea rcx, [rsp + 0xb0]
lea rax, [rax + rax*2]
shl rax, 3
add rax, qword [rdx]
movdqu xmm1, xmmword [rax + 0x518]
add rax, 0x510
movaps xmmword [rsp + 0xb0], xmm1
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xc0], rax
call sym.vim.exe_last_set_msg
jmp 0x100517fd5
lea rcx, [rsp + 0xee]
mov edx, 1
call sym.vim.exe_add_termcap_entry
mov rbx, qword [rsp + 0x98]
test eax, eax
cmove rbx, qword [sym.vim.exe_e_not_found_in_termcap]
jmp 0x100518587
mov qword [rsp + 0x60], 0
xor r14d, r14d
xor edi, edi
mov qword [rsp + 0x48], 0
mov edx, r15d
mov ecx, r12d
call fcn.10050ce30
mov rbx, qword [rsp + 0x88]
mov r10, qword [sym.vim.exe_secure]
or r13d, dword [rbx]
mov r11d, dword [r10]
jne 0x100518b1f
mov r9d, dword [rsp + 0x94]
test r9d, r9d
je 0x100518b26
mov rax, qword [rax]
test eax, 0x800000
je 0x100518b26
mov dword [r10], 1
mov dword [rsp + 0x28], r15d
mov r9, qword [rsp + 0x70]
mov rdx, rbp
mov ecx, r12d
lea rax, [rsp + 0xd4]
mov r8d, 1
mov dword [rsp + 0x40], r11d
lea rbx, [rsp + 0xf0]
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x30], rax
call sym.vim.exe_did_set_string_option
mov r11d, dword [rsp + 0x40]
mov r10, qword [sym.vim.exe_secure]
mov rbx, rax
mov dword [r10], r11d
test rax, rax
je 0x10051820f
mov rcx, rdi
call sym.vim.exe_vim_free
mov rcx, qword [rsp + 0x48]
call sym.vim.exe_vim_free
mov rcx, qword [rsp + 0x60]
call sym.vim.exe_vim_free
mov rcx, r14
call sym.vim.exe_vim_free
jmp 0x100518137
movzx eax, byte [rbx + 1]
mov rbx, r12
jmp 0x10051875e
mov eax, dword [rsp + 0x50]
test eax, eax
jne 0x100519021
mov dword [rsp + 0x50], 1
mov qword [rsp + 0x98], 1
mov rcx, r14
call sub.msys_2.0.dll_strlen
mov rcx, rdi
mov dword [rsp + 0xd0], eax
mov qword [rsp + 0xa8], rax
call sub.msys_2.0.dll_strlen
mov rdx, qword [rsp + 0xa8]
lea r8, [rax + 1]
movsxd rcx, edx
add rcx, qword [rsp + 0x98]
mov rdx, rdi
add rcx, r14
call sub.msys_2.0.dll_memmove
jmp 0x100518954
lea rcx, [rax + 1]
call sym.vim.exe_findoption
mov byte [rbx], 0x3e
movsxd r12, eax
cmp r12d, 0xffffffff
je 0x1005178a4
mov rax, qword [rsp + 0xd8]
xor ebx, ebx
jmp 0x10051728d
movzx edi, byte [rbx + 2]
add rbx, 1
jmp 0x10051853a
mov rax, qword [rsp + 0x80]
lea rcx, [rax + rax*4]
lea rax, str.aleph
shl rcx, 4
add rcx, rax
mov r11d, dword [rcx + 0x20]
test r11d, r11d
je 0x100518f62
mov rax, qword [rcx + 0x18]
cmp rax, 0xffffffffffffffff
je 0x100518fe0
mov rcx, qword [rax]
call sym.vim.exe_vim_strsave
mov r14, rax
jmp 0x100517de6
cmp rbp, qword [sym.vim.exe_p_bdir]
je 0x100518ca6
cmp rbp, qword [sym.vim.exe_p_dir]
jne 0x100517c29
mov qword [rsp + 0x68], 0
lea rcx, [rax + 2]
mov qword [rsp + 0xd8], rcx
jmp 0x100517c29
movzx edx, r8b
sub edx, 0x30
cmp edx, 9
ja 0x100517c16
lea rcx, [rsp + 0xd8]
mov byte [rsp + 0xf0], 0
lea rbx, [rsp + 0xf0]
call sym.vim.exe_getdigits
mov dword [rsp + 0xd0], eax
mov r14, rax
test al, 1
jne 0x100519103
test r14b, 2
jne 0x1005190e9
test r14b, 4
jne 0x1005190cf
test r14b, 8
jne 0x1005190b5
and r14d, 0x10
jne 0x10051909b
cmp byte [rsp + 0xf0], 0
je 0x100518d41
mov rcx, rbx
call sub.msys_2.0.dll_strlen
mov byte [rsp + rax + 0xef], 0
mov rax, qword [rsp + 0xd8]
mov rcx, rbx
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0x68], rax
jmp 0x100517c29
mov rdx, qword [rsp + 0x40]
mov edi, dword [rsp + 0x90]
xor eax, eax
shr rdx, 0xa
xor rdx, 1
test edi, edi
sete al
and rax, rdx
movsxd rdx, r12d
lea rdx, [rdx + rdx*4]
lea rdx, [rax + rdx*2 + 4]
lea rax, str.aleph
mov r8, qword [rax + rdx*8 + 8]
mov qword [rsp + 0xe0], r8
mov r11d, dword [rsp + 0x50]
test r11d, r11d
je 0x100518db2
add r8, qword [rbp]
mov qword [rsp + 0xe0], r8
mov r10d, dword [rsp + 0x60]
test r10d, r10d
je 0x100518dc9
imul r8, qword [rbp]
mov qword [rsp + 0xe0], r8
mov r9d, dword [rsp + 0x5c]
test r9d, r9d
je 0x100518de5
mov rax, qword [rbp]
sub rax, r8
mov qword [rsp + 0xe0], rax
mov r8, rax
mov dword [rsp + 0x28], r15d
lea r9, [rsp + 0xf0]
mov rdx, rbp
mov ecx, r12d
mov qword [rsp + 0x20], 0x50
call fcn.100510d50
mov rbx, rax
jmp 0x10051812e
mov rdx, r14
mov ecx, r12d
call fcn.10050e6b0
mov rbx, rax
test rax, rax
je 0x100518640
mov rcx, r14
call sym.vim.exe_vim_free
mov rcx, rbx
call sub.msys_2.0.dll_strlen
add eax, 1
jmp 0x100518a38
movzx r8d, byte [rax + 1]
cmp r8b, 0x3c
je 0x10051915c
cmp r8b, 0x5e
je 0x10051911d
mov rbx, qword [sym.vim.exe_e_number_required_after_equal]
test r8b, r8b
je 0x100517389
movzx eax, byte [rax + 2]
test al, 0xdf
je 0x100518e76
cmp al, 9
jne 0x1005182cb
movzx eax, r8b
sub eax, 0x30
cmp eax, 9
jbe 0x1005182cb
mov qword [rsp + 0xe0], r8
jmp 0x100518d9c
mov rcx, rdi
call sub.msys_2.0.dll_strlen
movsxd r9, eax
lea rbx, [rdi + r9]
jmp 0x1005188d9
cmp eax, 3
jne 0x100518848
lea rcx, str.indent_eol_nostop
call sym.vim.exe_vim_strsave
mov qword [rbp], rax
jmp 0x100518848
mov rcx, rdi
call sub.msys_2.0.dll_strlen
movsxd r9, eax
lea rbx, [rdi + r9]
jmp 0x100518685
lea r12, [rbx + 2]
movzx edx, al
mov rcx, r12
call sym.vim.exe_vim_strchr
test rax, rax
jne 0x100518791
movzx eax, byte [rbx + 1]
add rbx, 1
jmp 0x10051875e
mov dword [rsp + 0x78], 1
mov rcx, qword [rsp + 0xd8]
mov rbx, qword [sym.vim.exe_e_key_code_not_set]
jmp 0x100517389
xor ecx, ecx
call sym.vim.exe_ttest
jmp 0x100518598
mov rax, qword [sym.vim.exe_enc_utf8]
mov r14d, dword [rax]
test r14d, r14d
je 0x100517f0a
lea rbx, str.ucs_bom_utf_8_default_latin1
mov rdx, rbx
mov ecx, r12d
call fcn.10050e6b0
mov rcx, rax
test rax, rax
cmove rcx, rbx
call sym.vim.exe_vim_strsave
mov r14, rax
jmp 0x100517de6
call fcn.10050d0b0
jmp 0x100518c80
mov dword [rsp + 0x90], 0
add r8, 3
mov qword [rsp + 0xd8], r8
jmp 0x1005179ba
lea rax, [0x10068def0]
lea rcx, [rsp + 0xb0]
add rax, rdi
movdqu xmm0, xmmword [rax + 8]
movaps xmmword [rsp + 0xb0], xmm0
mov rax, qword [rax + 0x18]
mov qword [rsp + 0xc0], rax
call sym.vim.exe_last_set_msg
jmp 0x100517fd5
mov qword [rsp + 0xe0], 0xfffffffffffe1dc0
mov r8, 0xfffffffffffe1dc0
jmp 0x100518d9c
call sub.msys_2.0.dll___stack_chk_fail
nop word [rax + rax]
call fcn.10050d0b0
add rax, 0x588
jmp 0x100518c80
call sym.vim.exe_term_bg_default
mov rbx, rax
jmp 0x100517f0a
movsxd rdx, eax
add rdx, rdi
cmp byte [rdx], 0x2c
jne 0x1005186d7
add eax, 1
mov dword [rsp + 0xd0], eax
cdqe
lea rdx, [rdi + rax]
jmp 0x1005186d7
mov rcx, rdi
call sub.msys_2.0.dll_strlen
mov dword [rsp + 0xd0], eax
cmp eax, 1
jle 0x100519090
mov rdx, qword [rsp + 0x40]
and edx, 0x18000
cmp rdx, 0x18000
je 0x100519069
cdqe
lea rdx, [rax + 1]
jmp 0x100518919
lea rcx, str.indent_eol_start
call sym.vim.exe_vim_strsave
mov qword [rbp], rax
jmp 0x100518848
lea ecx, [rax - 1]
movsxd rdx, ecx
cmp byte [rdi + rdx], 0x2c
jne 0x100519049
lea edx, [rax - 2]
movsxd rdx, edx
cmp byte [rdi + rdx], 0x5c
je 0x100519049
mov dword [rsp + 0xd0], ecx
movsxd rdx, eax
jmp 0x100518919
add eax, 1
movsxd rdx, eax
jmp 0x100518919
mov r8d, 0x50
lea rdx, [0x1006cc0f3]
mov rcx, rbx
call sub.msys_2.0.dll___strcat_chk
jmp 0x100518d27
mov r8d, 0x50
lea rdx, [0x1006cc0ee]
mov rcx, rbx
call sub.msys_2.0.dll___strcat_chk
jmp 0x100518d1d
mov r8d, 0x50
lea rdx, str.h_l_
mov rcx, rbx
call sub.msys_2.0.dll___strcat_chk
jmp 0x100518d13
mov r8d, 0x50
lea rdx, [0x1006cc0e6]
mov rcx, rbx
call sub.msys_2.0.dll___strcat_chk
jmp 0x100518d09
mov r8d, 0x50
lea rdx, [0x1006cc0e3]
mov rcx, rbx
call sub.msys_2.0.dll___strcat_chk
jmp 0x100518cff
cmp r8b, 0x3c
je 0x10051915c
movzx eax, byte [rax + 2]
lea edx, [rax - 0x61]
cmp dl, 0x19
jbe 0x10051916f
xor eax, 0x40
movzx r8d, al
movsxd r8, r8d
cmp rbp, qword [sym.vim.exe_p_wcm]
mov qword [rsp + 0xe0], r8
je 0x100518d9c
test r8, r8
je case.0x10051775e.25
jmp 0x100518d9c
lea rcx, [rax + 2]
mov edx, 1
call fcn.10050f1a0
mov r8d, eax
jmp 0x100519136
movzx r8d, al
sub r8d, 0x20
xor r8d, 0x40
jmp 0x100519136
mov rdi, qword [r14]
mov rax, rdi
jmp 0x100518861
mov rax, qword [sym.vim.exe_empty_option]
mov rax, qword [rax]
mov qword [rbp], rax
jmp 0x100518848
call fcn.10050d0b0
mov r8, qword [rax]
mov qword [rsp + 0xe0], r8
jmp 0x100518d9c