Function at 0x10042db20
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov edi, dword [rcx + 0x50]
mov dword [rsp + 0x58], edx
mov r14, rcx
mov rsi, r8
test edi, edi
je 0x10042ded7
lea rcx, [rcx + 0x38]
mov r8d, 0x3e8
mov edx, 8
call sym.vim.exe_ga_init2
mov ebx, dword [r14 + 0x50]
test ebx, ebx
je 0x10042df2f
mov rax, qword [sym.vim.exe_curtab]
movsxd rbp, dword [rsp + 0x58]
mov rax, qword [rax]
mov rcx, qword [rax + rbp*8 + 0x68]
test rsi, rsi
je 0x10042dbe0
mov r11d, dword [rsi + 0x3c]
test r11d, r11d
je 0x10042dbe0
mov eax, dword [rsp + 0x58]
cmp eax, 8
je 0x10042e861
mov ebx, eax
jmp 0x10042dba8
add ebx, 1
cmp ebx, 8
je 0x10042dbe0
mov rax, qword [sym.vim.exe_curtab]
movsxd rdx, ebx
mov rax, qword [rax]
mov r12, qword [rax + rdx*8 + 0x68]
mov rcx, r12
call sym.vim.exe_buf_valid
test eax, eax
je 0x10042dba0
xor edx, edx
mov rcx, r12
add ebx, 1
call sym.vim.exe_buf_check_timestamp
cmp ebx, 8
jne 0x10042dba8
nop dword [rax + rax]
mov rax, qword [sym.vim.exe_curtab]
mov rdx, r14
mov rax, qword [rax]
mov rcx, qword [rax + rbp*8 + 0x68]
call fcn.10042d860
test eax, eax
je 0x10042deaa
mov eax, dword [rsp + 0x58]
mov r15, r14
add eax, 1
mov dword [rsp + 0x44], eax
mov r13d, eax
cmp eax, 7
jg 0x10042de99
nop dword [rax]
mov rax, qword [sym.vim.exe_curtab]
movsxd r12, r13d
mov rax, qword [rax]
mov rcx, qword [rax + r12*8 + 0x68]
test rcx, rcx
je 0x10042de88
cmp qword [rcx + 8], 0
je 0x10042de88
lea rdx, [r15 + 0x18]
call fcn.10042d860
test eax, eax
je 0x10042de88
mov rcx, r15
call fcn.10042d480
test eax, eax
je 0x10042de88
mov rax, qword [sym.vim.exe_curtab]
mov rcx, qword [r15 + 0x30]
mov rax, qword [rax]
mov qword [rsp + 0x38], rcx
mov rbx, qword [rax + 0x60]
test rcx, rcx
je 0x10042e605
lea rdx, [0x1006af9b4]
call sub.msys_2.0.dll_fopen
mov dword [rsp + 0x28], 2
mov qword [rsp + 0x38], rax
test rax, rax
je 0x10042e876
mov eax, dword [r15 + 0x50]
xor r14d, r14d
test eax, eax
je 0x10042e61c
mov edi, 1
mov dword [rsp + 0x34], 0
xor esi, esi
mov dword [rsp + 0x40], edi
jmp 0x10042dd3c
lea rdi, [rsp + 0x70]
mov r8, qword [rsp + 0x38]
mov edx, 0x32
mov rcx, rdi
call sym.vim.exe_vim_fgets
test eax, eax
jne 0x10042e63b
cmp dword [rsp + 0x28], 2
je 0x10042dd73
mov r10d, dword [rsp + 0x28]
test r10d, r10d
je 0x10042e040
cmp byte [rdi], 0x40
jne 0x10042e3b8
cmp byte [rdi + 1], 0x40
jne 0x10042e3b8
cmp byte [rdi + 2], 0x20
jne 0x10042e3b8
movzx eax, byte [rdi]
mov dword [rsp + 0x28], 1
cmp al, 0x40
je 0x10042e3c8
nop dword [rax]
mov eax, dword [r15 + 0x50]
test eax, eax
jne 0x10042e1c0
cmp qword [rsp + 0x38], 0
jne 0x10042dcd0
mov ecx, dword [rsp + 0x34]
cmp ecx, dword [r15 + 0x38]
jge 0x10042e7c4
mov rax, qword [r15 + 0x48]
movsxd rdx, ecx
cmp dword [rsp + 0x28], 2
mov rdi, qword [rax + rdx*8]
lea eax, [rcx + 1]
mov dword [rsp + 0x34], eax
jne 0x10042dcf6
call sub.msys_2.0.dll___locale_ctype_ptr
movzx edx, byte [rdi]
mov r8, rax
mov rax, rdx
test byte [rdx + r8 + 1], 4
jne 0x10042e040
cmp byte [rdi], 0x40
jne 0x10042dda0
cmp byte [rdi + 1], 0x40
jne 0x10042dda0
cmp byte [rdi + 2], 0x20
je 0x10042dd24
nop
mov r8d, 4
lea rdx, [0x1006af9c6]
mov rcx, rdi
call sub.msys_2.0.dll_strncmp
test eax, eax
jne 0x10042dd38
lea rax, [rsp + 0x70]
mov r8, qword [rsp + 0x38]
mov edx, 0x32
mov rcx, rax
mov qword [rsp + 0x48], rax
call sym.vim.exe_vim_fgets
test eax, eax
jne 0x10042dd38
mov r8d, 4
lea rdx, [0x1006af9cb]
mov rcx, rdi
call sub.msys_2.0.dll_strncmp
test eax, eax
jne 0x10042dd38
mov r8, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
mov edx, 0x32
call sym.vim.exe_vim_fgets
test eax, eax
jne 0x10042dd38
cmp byte [rdi], 0x40
jne 0x10042dd38
cmp byte [rdi + 1], 0x40
jne 0x10042dd38
cmp byte [rdi + 2], 0x20
je 0x10042dd21
jmp 0x10042dd38
mov eax, dword [r15 + 0x50]
test eax, eax
je 0x10042e6a5
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x10042de5e
mov rcx, rax
call fcn.100672bf0
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x10042e6f6
call sub.msys_2.0.dll_unlink
mov rcx, qword [r15 + 0x30]
test rcx, rcx
je 0x10042e714
call sub.msys_2.0.dll_unlink
nop word [rax + rax]
add r13d, 1
cmp r13d, 8
jne 0x10042dc20
mov r14, r15
mov rcx, qword [r14]
test rcx, rcx
je 0x10042e7ab
call sub.msys_2.0.dll_unlink
mov rcx, qword [r14]
call sym.vim.exe_vim_free
mov rcx, qword [r14 + 0x18]
call sym.vim.exe_vim_free
mov rcx, qword [r14 + 0x30]
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
jmp sym.vim.exe_vim_free
mov edx, 1
mov ecx, 0x6f
call sym.vim.exe_vim_tempname
mov edx, 1
mov ecx, 0x6e
mov qword [r14], rax
call sym.vim.exe_vim_tempname
mov ecx, 0x64
mov edx, 1
mov qword [r14 + 0x18], rax
call sym.vim.exe_vim_tempname
mov rcx, qword [r14]
mov qword [r14 + 0x30], rax
test rcx, rcx
je 0x10042dead
cmp qword [r14 + 0x18], 0
je 0x10042dead
test rax, rax
je 0x10042dead
mov ebx, dword [r14 + 0x50]
test ebx, ebx
jne 0x10042db68
mov qword [rsp + 0x28], rsi
mov r12, qword [sym.vim.exe_p_dex]
xor ebx, ebx
lea rdi, [0x1006af9a4]
lea r13, str.line1_n
jmp 0x10042e018
mov r9, rax
mov edx, 6
mov rcx, r13
mov ebp, 1
mov r8d, 1
call sub.msys_2.0.dll_fwrite
mov rcx, r15
cmp rax, 1
cmovne ebx, ebp
call fcn.100672bf0
mov rcx, qword [r14 + 0x18]
mov rdx, rdi
call sub.msys_2.0.dll_fopen
mov r15, rax
test rax, rax
je 0x10042e5f8
mov r9, rax
mov r8d, 1
mov edx, 6
lea rcx, str.line2_n
call sub.msys_2.0.dll_fwrite
mov rcx, r15
cmp rax, 1
cmovne ebx, ebp
xor r15d, r15d
call fcn.100672bf0
mov rcx, r14
call fcn.10042d480
cmp eax, 1
je 0x10042e730
mov ebx, 1
mov rcx, qword [r14 + 0x30]
call sub.msys_2.0.dll_unlink
mov rcx, qword [r14 + 0x18]
call sub.msys_2.0.dll_unlink
mov rcx, qword [r14]
call sub.msys_2.0.dll_unlink
mov rax, qword [r12]
cmp byte [rax], 0
jne 0x10042e6ba
cmp dword [0x100682630], 2
jne 0x10042e6ba
mov dword [0x100682630], r15d
test r15d, r15d
jne 0x10042e7d6
mov rcx, qword [r14]
mov rdx, rdi
call sub.msys_2.0.dll_fopen
mov r15, rax
test rax, rax
jne 0x10042df50
xor r15d, r15d
mov ebx, 1
jmp 0x10042dfee
call sub.msys_2.0.dll___locale_ctype_ptr
movzx edx, byte [rdi]
test byte [rdx + rax + 1], 4
je 0x10042e1b0
mov qword [rsp + 0x68], rdi
lea rdi, [rsp + 0x68]
mov rcx, rdi
call sym.vim.exe_getdigits
mov rdx, rax
mov rax, qword [rsp + 0x68]
mov r11, rdx
movzx r10d, byte [rax]
cmp r10b, 0x2c
je 0x10042e587
lea r8d, [r10 - 0x63]
mov qword [rsp + 0x50], r11
cmp r8b, 1
mov qword [rsp + 0x48], rdx
seta r8b
cmp r10b, 0x61
setne r10b
and r8b, r10b
mov byte [rsp + 0x28], r8b
jne 0x10042e1b0
lea r10, [rax + 1]
mov rcx, rdi
mov qword [rsp + 0x68], r10
movzx eax, byte [rax]
mov byte [rsp + 0x5f], al
call sym.vim.exe_getdigits
movzx r8d, byte [rsp + 0x28]
mov rdx, qword [rsp + 0x48]
mov r10, rax
mov rax, qword [rsp + 0x68]
mov r11, qword [rsp + 0x50]
mov rcx, r10
cmp byte [rax], 0x2c
je 0x10042e5b3
cmp rdx, r11
jg 0x10042e1b0
test r8b, r8b
jne 0x10042e1b0
movzx eax, byte [rsp + 0x5f]
cmp al, 0x61
je 0x10042e4b0
sub r11, rdx
mov qword [r14], rdx
add r11, 1
mov qword [r14 + 8], r11
cmp eax, 0x64
jne 0x10042e4bf
add r10, 1
mov qword [r14 + 0x18], 0
mov qword [r14 + 0x10], r10
mov dword [rsp + 0x28], 0
nop dword [rax]
test rbx, rbx
je 0x10042e1fe
mov r8, qword [r14]
mov r9d, dword [rsp + 0x40]
lea r10, [rbp + 8]
lea r11, [r12 + 8]
jmp 0x10042e170
mov rax, qword [rbx]
mov r9d, 1
mov rsi, rbx
test rax, rax
je 0x10042e390
mov rbx, rax
mov rax, qword [rbx + rbp*8 + 8]
mov rcx, qword [rbx + r10*8 + 8]
lea rdx, [rax + rcx]
cmp r8, rdx
jle 0x10042e1e8
test r9d, r9d
je 0x10042e158
test rsi, rsi
je 0x10042e1a4
mov rdx, qword [rsi + r10*8 + 8]
add rdx, qword [rsi + rbp*8 + 8]
sub rdx, qword [rsi + r11*8 + 8]
sub rdx, qword [rsi + r12*8 + 8]
sub rax, rdx
mov qword [rbx + r12*8 + 8], rax
mov qword [rbx + r11*8 + 8], rcx
jmp 0x10042e158
mov dword [rsp + 0x28], 0
jmp 0x10042dd38
mov edi, dword [rsp + 0x34]
cmp dword [r15 + 0x38], edi
jle 0x10042e7e0
mov rax, qword [r15 + 0x48]
movsxd rdx, edi
mov r14, qword [rax + rdx*8]
lea eax, [rdi + 1]
mov dword [rsp + 0x34], eax
jmp 0x10042e138
mov rdi, qword [r14 + 8]
mov dword [rsp + 0x40], r9d
lea r10, [r8 + rdi]
cmp rax, r10
jle 0x10042e2c0
mov rax, qword [sym.vim.exe_curtab]
mov ecx, 0x88
mov rdi, qword [rax]
call sym.vim.exe_alloc
test rax, rax
je 0x10042de40
mov qword [rax], rbx
test rsi, rsi
jne 0x10042e88f
mov qword [rdi + 0x60], rax
mov rbx, rax
mov rax, qword [r14]
lea r8, [rbx + rbp*8]
mov qword [r8 + 8], rax
mov rax, qword [r14 + 8]
mov qword [r8 + 0x48], rax
mov rax, qword [r14 + 0x10]
mov qword [rbx + r12*8 + 8], rax
mov rax, qword [r14 + 0x18]
mov qword [rbx + r12*8 + 0x48], rax
cmp dword [rsp + 0x44], r13d
jge 0x10042e2b1
mov rax, qword [sym.vim.exe_curtab]
lea r10, [rbp + 8]
mov r9, qword [rax]
movsxd rax, dword [rsp + 0x44]
nop dword [rax]
cmp qword [r9 + rax*8 + 0x68], 0
je 0x10042e2a8
xor edx, edx
test rsi, rsi
je 0x10042e293
mov rdx, qword [rsi + r10*8 + 8]
add rdx, qword [rsi + rbp*8 + 8]
sub rdx, qword [rsi + rax*8 + 0x48]
sub rdx, qword [rsi + rax*8 + 8]
mov rcx, qword [r8 + 8]
sub rcx, rdx
mov qword [rbx + rax*8 + 8], rcx
mov rdx, qword [r8 + 0x48]
mov qword [rbx + rax*8 + 0x48], rdx
add rax, 1
cmp r13d, eax
jg 0x10042e270
mov dword [rsp + 0x40], 0
jmp 0x10042dd38
mov rcx, rbx
jmp 0x10042e2cf
cmp r10, qword [rcx + rbp*8 + 8]
jl 0x10042e2da
mov r11, rcx
mov rcx, qword [rcx]
test rcx, rcx
jne 0x10042e2c8
sub rax, r8
mov r8, qword [r14 + 0x18]
test rax, rax
jg 0x10042e4e0
mov r9d, dword [rsp + 0x40]
test r9d, r9d
je 0x10042e558
mov rdx, qword [r14 + 0x10]
sub r8, rax
mov qword [rbx + r12*8 + 0x48], r8
sub r10, qword [r11 + rbp*8 + 0x48]
add rdx, rax
mov qword [rbx + r12*8 + 8], rdx
sub r10, qword [r11 + rbp*8 + 8]
js 0x10042e541
cmp dword [rsp + 0x58], r13d
jge 0x10042e358
mov rax, qword [sym.vim.exe_curtab]
mov rdi, qword [rax]
mov rax, rbp
cmp qword [rdi + rax*8 + 0x68], 0
je 0x10042e34f
mov rdx, qword [r11 + rax*8 + 0x48]
add rdx, qword [r11 + rax*8 + 8]
sub rdx, qword [rbx + rax*8 + 8]
add rdx, r10
mov qword [rbx + rax*8 + 0x48], rdx
add rax, 1
cmp r13d, eax
jg 0x10042e330
mov rdi, qword [rbx]
mov qword [rbx], rcx
cmp rdi, rcx
je 0x10042e2b1
nop word [rax + rax]
mov rcx, rdi
mov rdi, qword [rdi]
call sym.vim.exe_vim_free
cmp rdi, qword [rbx]
jne 0x10042e370
mov dword [rsp + 0x40], 0
jmp 0x10042dd38
mov ecx, 0x88
call sym.vim.exe_alloc
mov rbx, rax
test rax, rax
je 0x10042de40
mov qword [rbx], 0
mov qword [rsi], rbx
jmp 0x10042e22e
mov dword [rsp + 0x28], 1
jmp 0x10042dd38
lea rax, [rdi + 2]
mov qword [rsp + 0x68], rax
cmp byte [rdi + 1], 0x40
jne 0x10042dd38
lea rax, [rdi + 3]
mov qword [rsp + 0x68], rax
cmp byte [rdi + 2], 0x20
jne 0x10042dd38
lea rax, [rdi + 4]
mov qword [rsp + 0x68], rax
cmp byte [rdi + 3], 0x2d
jne 0x10042dd38
lea rdi, [rsp + 0x68]
mov rcx, rdi
call sym.vim.exe_getdigits
mov edx, 1
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0x2c
je 0x10042e897
lea r8, [rax + 1]
mov qword [rsp + 0x68], r8
cmp byte [rax], 0x20
jne 0x10042e3b8
lea r8, [rax + 2]
mov dword [rsp + 0x28], 1
mov qword [rsp + 0x68], r8
cmp byte [rax + 1], 0x2b
jne 0x10042dd38
mov rcx, rdi
mov qword [rsp + 0x28], rdx
call sym.vim.exe_getdigits
mov rdx, qword [rsp + 0x28]
mov r8, rax
mov rax, qword [rsp + 0x68]
cmp byte [rax], 0x2c
je 0x10042e8b5
cmp rdx, 1
adc qword [rsp + 0x48], 0
mov eax, 1
test r8, r8
mov ecx, 1
mov rdi, qword [rsp + 0x48]
mov qword [r14 + 8], rdx
cmove r8, rcx
mov qword [r14 + 0x18], rax
mov qword [r14], rdi
mov qword [r14 + 0x10], r8
mov dword [rsp + 0x28], 1
jmp 0x10042e138
add rdx, 1
mov qword [r14 + 8], 0
mov qword [r14], rdx
mov rax, rcx
mov qword [r14 + 0x10], r10
sub rax, r10
mov dword [rsp + 0x28], 0
add rax, 1
mov qword [r14 + 0x18], rax
jmp 0x10042e138
mov r9, qword [r14 + 0x10]
cmp dword [rsp + 0x58], r13d
jge 0x10042e7f2
mov rdi, qword [sym.vim.exe_curtab]
mov rdx, rbp
mov rdi, qword [rdi]
nop dword [rax]
cmp qword [rdi + rdx*8 + 0x68], 0
je 0x10042e50d
sub qword [rbx + rdx*8 + 8], rax
add rdx, 1
cmp r13d, edx
jg 0x10042e500
mov qword [rbx + r12*8 + 0x48], r8
sub r10, qword [r11 + rbp*8 + 0x48]
mov qword [rbx + r12*8 + 8], r9
sub r10, qword [r11 + rbp*8 + 8]
jns 0x10042e32d
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x10042e6b2
mov r8, qword [rbx + r12*8 + 0x48]
sub r8, r10
xor r10d, r10d
mov qword [rbx + r12*8 + 0x48], r8
jmp 0x10042e31c
lea r9, [r11 + rbp*8]
sub r8, rdi
mov rax, qword [r9 + 8]
add r8, rax
add r8, qword [r9 + 0x48]
sub r8, rdx
add qword [rbx + r12*8 + 0x48], r8
add rax, qword [r9 + 0x48]
sub r10, rax
mov eax, 0
cmovs r10, rax
jmp 0x10042e31c
add rax, 1
mov rcx, rdi
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x68], rax
call sym.vim.exe_getdigits
mov rdx, qword [rsp + 0x28]
mov r11, rax
mov rax, qword [rsp + 0x68]
movzx r10d, byte [rax]
jmp 0x10042e07e
add rax, 1
mov rcx, rdi
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x68], rax
call sym.vim.exe_getdigits
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x28]
mov rcx, rax
cmp r10, rax
setg r8b
jmp 0x10042e0e6
xor r15d, r15d
mov ebx, 1
jmp 0x10042dfe6
mov eax, dword [r15 + 0x50]
mov dword [rsp + 0x28], 1
xor r14d, r14d
test eax, eax
jne 0x10042dcb8
mov ecx, 0x20
call sym.vim.exe_alloc
mov r14, rax
test rax, rax
je 0x10042e835
mov eax, dword [r15 + 0x50]
jmp 0x10042dcb8
mov edi, dword [rsp + 0x40]
mov eax, dword [r15 + 0x50]
test rbx, rbx
je 0x10042de44
test edi, edi
jne 0x10042e82a
mov rdx, qword [rbx]
test rdx, rdx
je 0x10042de44
xor ecx, ecx
test rbx, rbx
je 0x10042e67b
mov rcx, qword [rbx + rbp*8 + 0x48]
add rcx, qword [rbx + rbp*8 + 8]
sub rcx, qword [rbx + r12*8 + 0x48]
sub rcx, qword [rbx + r12*8 + 8]
mov r8, qword [rdx + rbp*8 + 8]
mov rbx, rdx
sub r8, rcx
mov rcx, qword [rdx + rbp*8 + 0x48]
mov qword [rdx + r12*8 + 8], r8
mov qword [rdx + r12*8 + 0x48], rcx
mov rdx, qword [rbx]
test rdx, rdx
jne 0x10042e660
test eax, eax
jne 0x10042de4c
mov rcx, r14
call sym.vim.exe_vim_free
jmp 0x10042de4c
xor r10d, r10d
jmp 0x10042e323
mov rsi, qword [rsp + 0x28]
test r15d, r15d
jne 0x10042db68
test ebx, ebx
jne 0x10042e848
mov rcx, qword [sym.vim.exe_e_cannot_create_diffs]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
mov rcx, qword [r14]
mov dword [0x100682630], 2
jmp 0x10042dead
mov rcx, qword [r15 + 0x20]
call sym.vim.exe_vim_free
mov rcx, qword [r15 + 0x30]
mov qword [r15 + 0x20], 0
test rcx, rcx
jne 0x10042de7d
lea rcx, [r15 + 0x38]
add r13d, 1
call sym.vim.exe_ga_clear_strings
cmp r13d, 8
jne 0x10042dc20
jmp 0x10042de96
mov rcx, qword [r14 + 0x30]
lea rdx, [0x1006af9b4]
call sub.msys_2.0.dll_fopen
mov rbp, rax
test rax, rax
je 0x10042dfcf
lea rsi, [rsp + 0x70]
nop dword [rax]
mov r8, rbp
mov edx, 0x32
mov rcx, rsi
call sym.vim.exe_vim_fgets
test eax, eax
jne 0x10042e81d
cmp word [rsi], 0x6331
je 0x10042e79d
movabs rax, 0x312b20312d204040
cmp qword [rsi], rax
jne 0x10042e758
cmp word [rsi + 8], 0x4020
jne 0x10042e758
cmp byte [rsi + 0xa], 0x40
mov eax, 1
cmove r15d, eax
jmp 0x10042e758
cmp byte [rsi + 2], 0x31
jne 0x10042e777
mov r15d, 1
jmp 0x10042e758
mov rcx, qword [r14 + 8]
call sym.vim.exe_vim_free
mov qword [r14 + 8], 0
mov rcx, qword [r14]
jmp 0x10042dead
mov edi, dword [rsp + 0x40]
test rbx, rbx
jne 0x10042e64c
jmp 0x10042e6a5
mov rsi, qword [rsp + 0x28]
jmp 0x10042db68
mov edi, dword [rsp + 0x40]
test rbx, rbx
jne 0x10042e64c
jmp 0x10042de4c
mov qword [rbx + r12*8 + 8], r9
sub r10, qword [r11 + rbp*8 + 8]
mov qword [rbx + r12*8 + 0x48], r8
sub r10, qword [r11 + rbp*8 + 0x48]
jns 0x10042e358
mov edx, dword [rsp + 0x40]
test edx, edx
jne 0x10042e53c
jmp 0x10042e358
mov rcx, rbp
call fcn.100672bf0
jmp 0x10042dfd4
mov rdx, rbx
mov rbx, rsi
jmp 0x10042e660
mov rcx, qword [rsp + 0x38]
test rcx, rcx
jne 0x10042de59
jmp 0x10042de5e
mov rcx, qword [sym.vim.exe_e_cannot_read_or_write_temp_files]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x10042e6d0
mov rdx, r14
call fcn.10042d860
test eax, eax
jne 0x10042de99
jmp 0x10042deaa
mov rcx, qword [sym.vim.exe_e_cannot_read_diff_output]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
call sym.vim.exe_emsg
jmp 0x10042de5e
mov rbx, rax
jmp 0x10042e3ad
add rax, 1
mov rcx, rdi
mov qword [rsp + 0x68], rax
call sym.vim.exe_getdigits
mov rdx, rax
mov rax, qword [rsp + 0x68]
jmp 0x10042e426
add rax, 1
mov rcx, rdi
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x68], rax
call sym.vim.exe_getdigits
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x28]
cmp rdx, 1
adc qword [rsp + 0x48], 0
cmp rax, 1
adc r8, 0
jmp 0x10042e481