Function at 0x1005333d0
Capabilities:
Get file attributes

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0xe8
lea rbp, [rsp + 0x80]
mov r8d, dword [rcx + 0x28]
mov qword [rbp - 0x28], rcx
mov ecx, r8d
call sym.vim.exe_grep_internal
mov dword [rbp - 0x44], eax
test eax, eax
jne 0x1005338c0
cmp r8d, 0xff
je 0x100533978
jg 0x1005335a0
cmp r8d, 0xb8
je 0x1005338a0
lea r12, str.lgrep
cmp r8d, 0xfe
jne 0x1005335c0
mov rax, qword [sym.vim.exe_curbuf]
mov r9d, 1
mov rdx, r12
mov ecx, 0x45
mov qword [rbp - 0x38], rax
mov rax, qword [rax]
mov r8, qword [rax + 0x98]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds
test eax, eax
jne 0x100533878
mov rax, qword [rbp - 0x28]
mov r8d, dword [rax + 0x28]
mov rax, qword [rbp - 0x38]
mov rax, qword [rax]
mov rax, qword [rax + 0x1c18]
cmp byte [rax], 0
mov qword [rbp - 0x40], rax
jne 0x10053349c
mov rax, qword [sym.vim.exe_p_menc]
mov rax, qword [rax]
mov qword [rbp - 0x40], rax
mov ecx, r8d
call sym.vim.exe_is_loclist_cmd
mov qword [rbp - 0x30], 0
test eax, eax
je 0x1005334be
mov rax, qword [sym.vim.exe_curwin]
mov rax, qword [rax]
mov qword [rbp - 0x30], rax
call sym.vim.exe_autowrite_all
mov rsi, qword [sym.vim.exe_p_mef]
mov rcx, qword [rsi]
movzx eax, byte [rcx]
mov rbx, rcx
test al, al
jne 0x1005334ec
jmp 0x100533920
add rbx, 1
test al, al
je 0x100533600
mov edx, eax
movzx eax, byte [rbx + 1]
cmp dl, 0x23
jne 0x1005334e0
cmp al, 0x23
jne 0x1005334e0
lea r13, str._d_d
lea rdi, [rbx + 2]
lea r15, [rbp - 0x20]
jmp 0x100533518
mov rcx, r14
call sym.vim.exe_vim_free
cmp dword [0x100683320], 0xffffffff
je 0x1005338f8
add dword [0x10070bb84], 0x13
mov rcx, qword [rsi]
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 0x1e]
call sym.vim.exe_alloc
mov r14, rax
test rax, rax
je 0x100533885
mov rdx, qword [rsi]
mov rcx, rax
call sub.msys_2.0.dll_strcpy
mov r9d, dword [0x10070bb84]
mov rcx, rbx
sub rcx, qword [rsi]
mov r8d, dword [0x100683320]
add rcx, r14
mov rdx, r13
call sub.msys_2.0.dll_sprintf
mov rcx, r14
mov rdx, rdi
call fcn.10065eb30
mov rcx, r14
call sym.vim.exe_mch_getperm
test rax, rax
jns 0x100533510
mov rdx, r15
mov rcx, r14
call sub.msys_2.0.dll_lstat
test eax, eax
jns 0x100533510
jmp 0x100533611
cmp r8d, 0x107
je 0x1005335f0
cmp r8d, 0x120
jne 0x1005335d4
lea r12, str.make
jmp 0x10053343a
lea r12, str.grep
cmp r8d, 0xb7
je 0x10053343a
mov rax, qword [sym.vim.exe_curbuf]
xor r12d, r12d
mov qword [rbp - 0x38], rax
jmp 0x100533477
lea r12, str.lmake
jmp 0x10053343a
call sym.vim.exe_vim_strsave
mov r14, rax
test rax, rax
je 0x100533885
mov rcx, r14
call sub.msys_2.0.dll_unlink
mov rax, qword [rbp - 0x28]
mov rdi, qword [sym.vim.exe_p_shq]
mov rsi, qword [rax]
mov rcx, qword [rdi]
call sub.msys_2.0.dll_strlen
mov rcx, rsi
mov rbx, rax
call sub.msys_2.0.dll_strlen
lea r15d, [rax + rbx*2 + 1]
mov rbx, qword [sym.vim.exe_p_sp]
mov rcx, qword [rbx]
cmp byte [rcx], 0
je 0x100533666
call sub.msys_2.0.dll_strlen
mov rcx, r14
mov r13, rax
call sub.msys_2.0.dll_strlen
lea r15d, [r15 + r13 + 3]
add r15d, eax
mov ecx, r15d
call sym.vim.exe_alloc
mov r13, rax
test rax, rax
je 0x100533885
mov r8, qword [rdi]
mov r9, rsi
lea rdx, [0x1006b447b]
mov rcx, rax
mov qword [rsp + 0x20], r8
call sub.msys_2.0.dll_sprintf
mov r8, qword [rbx]
cmp byte [r8], 0
jne 0x100533960
mov rax, qword [sym.vim.exe_msg_col]
mov edx, dword [rax]
test edx, edx
jne 0x1005336bb
mov rax, qword [sym.vim.exe_msg_didout]
mov dword [rax], 0
call sym.vim.exe_msg_start
lea rcx, [0x1006b4482]
call sym.vim.exe_msg_puts
mov rcx, r13
call sym.vim.exe_msg_outtrans
mov rax, qword [rbx]
mov rcx, r13
cmp byte [rax], 0
mov eax, 8
cmove eax, dword [rbp - 0x44]
mov edx, eax
call sym.vim.exe_do_shell
mov rdi, qword [rbp - 0x28]
mov edx, 0x401
lea r8, [0x1006b43d1]
lea rcx, [0x10070b780]
add dword [0x10070bc10], 1
mov rax, qword [rdi + 0x18]
mov r9, qword [rax]
call sym.vim.exe_vim_snprintf
mov eax, dword [rdi + 0x28]
cmp eax, 0xb8
setne dl
xor r9d, r9d
cmp eax, 0xff
setne r9b
and r9d, edx
cmp eax, 0x120
je 0x1005338b0
cmp eax, 0x107
je 0x1005338b0
mov rax, qword [sym.vim.exe_p_gefm]
mov r8, qword [rax]
mov rax, qword [rbp - 0x40]
mov rdi, qword [rbp - 0x30]
mov rdx, r14
mov qword [rsp + 0x28], rax
lea rax, [0x10070b780]
mov rcx, rdi
mov qword [rsp + 0x20], rax
call sym.vim.exe_qf_init
mov ebx, eax
test rdi, rdi
je 0x100533910
mov rcx, qword [rdi + 8]
call sym.vim.exe_bt_quickfix
test eax, eax
jne 0x1005338e0
mov rax, qword [rbp - 0x30]
mov r15, qword [rax + 0x22a8]
test r15, r15
je 0x100533805
movsxd rax, dword [r15 + 8]
test ebx, ebx
js 0x1005337ba
lea rdx, [rax + rax*8]
shl rdx, 4
add qword [r15 + rdx + 0x98], 1
lea rax, [rax + rax*8]
shl rax, 4
mov esi, dword [r15 + rax + 0x10]
test r12, r12
je 0x1005337f2
mov rax, qword [rbp - 0x38]
mov r9d, 1
mov rdx, r12
mov ecx, 0x44
mov rax, qword [rax]
mov r8, qword [rax + 0x98]
mov qword [rsp + 0x20], rax
call sym.vim.exe_apply_autocmds
test ebx, ebx
jle 0x100533805
mov rax, qword [rbp - 0x28]
mov eax, dword [rax + 0x3c]
test eax, eax
je 0x100533984
sub dword [0x10070bc10], 1
jne 0x100533849
mov r12, qword [0x10070bc18]
test r12, r12
je 0x100533849
nop word [rax + rax]
mov rax, qword [r12]
lea rcx, [r12 + 8]
mov qword [0x10070bc18], rax
call fcn.10052b700
mov rcx, r12
call sym.vim.exe_vim_free
mov r12, qword [0x10070bc18]
test r12, r12
jne 0x100533820
mov rcx, r14
call sub.msys_2.0.dll_unlink
mov rcx, r14
call sym.vim.exe_vim_free
mov rcx, r13
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp sym.vim.exe_vim_free
call sym.vim.exe_aborting
test eax, eax
je 0x10053346f
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r12, str.grepadd
jmp 0x10053343a
mov rax, qword [sym.vim.exe_p_efm]
mov r8, qword [rax]
jmp 0x100533751
mov rcx, qword [rbp - 0x28]
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp sym.vim.exe_ex_vimgrep
mov r15, qword [rdi + 0x22b0]
test r15, r15
jne 0x1005337a1
jmp 0x100533791
call sym.vim.exe_mch_get_pid
mov dword [0x100683320], eax
jmp 0x10053352c
lea r15, [0x10070bc40]
jmp 0x1005337a1
xor edx, edx
mov ecx, 0x65
call sym.vim.exe_vim_tempname
mov r14, rax
test rax, rax
jne 0x100533611
mov rcx, qword [sym.vim.exe_e_notmp]
call sub.msys_intl_8.dll_libintl_gettext
mov rcx, rax
add rsp, 0xe8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
jmp sym.vim.exe_emsg
mov r9, r14
mov edx, r15d
mov rcx, r13
call sym.vim.exe_append_redir
jmp 0x1005336a1
lea r12, str.lgrepadd
jmp 0x10053343a
mov rcx, qword [rbp - 0x30]
mov edx, esi
call fcn.10052a470
test eax, eax
je 0x100533805
xor r8d, r8d
mov edx, esi
mov rcx, r15
call fcn.10052f6d0
jmp 0x100533805