Function at 0x100482160
Capabilities:
Get file attributes

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0xd8
lea rbp, [rsp + 0xd0]
mov qword [rbp + 0x58], rdx
mov rsi, rcx
mov dword [rbp + 0x60], r8d
test rcx, rcx
je 0x100482194
cmp byte [rcx], 0
jne 0x1004822a0
mov rcx, qword [rbp + 0x58]
lea rdx, [rbp - 0x80]
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100482660
mov eax, dword [rbp - 0x70]
and eax, 0xf000
cmp eax, 0x4000
jne 0x100482660
sub rsp, 0x10
mov ecx, 1
mov qword [rsp + 0x20], 0
lea r15, [rsp + 0x20]
call sub.msys_2.0.dll_malloc
test rax, rax
je 0x100482726
mov qword [r15 + 8], rax
mov byte [rax], 0
test rsi, rsi
je 0x100482630
cmp byte [rsi], 0
je 0x100482630
mov dword [rbp - 0x90], 1
xor edi, edi
mov esi, dword [rbp - 0x90]
lea ecx, [rsi + 1]
shl rcx, 3
call sub.msys_2.0.dll_malloc
mov rbx, rax
test rax, rax
je 0x1004825dc
test esi, esi
je 0x1004828d9
mov r10d, dword [rbp - 0x90]
mov rax, rbx
mov rcx, r15
lea r9, [rbx + r10*8]
nop dword [rax]
mov rdx, qword [rcx + 8]
add rax, 8
mov rcx, qword [rcx]
mov qword [rax - 8], rdx
cmp rax, r9
jne 0x100482240
mov qword [rbx + r10*8], 0
test rdi, rdi
je 0x100482288
mov rcx, r15
test r15, r15
je 0x100482288
cmp rcx, rdi
je 0x100482283
mov rsi, qword [rcx]
call sub.msys_2.0.dll_free
test rsi, rsi
je 0x100482288
mov rcx, rsi
cmp rcx, rdi
jne 0x10048226e
call sub.msys_2.0.dll_free
mov rax, rbx
lea rsp, [rbp + 8]
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call sub.msys_2.0.dll_strlen
mov rcx, rsi
mov rbx, rax
call sym.bash.exe_glob_pattern_p
and eax, 0xfffffffd
jne 0x1004823a0
lea r14, [rbp - 0x80]
mov rcx, qword [rbp + 0x58]
mov rdx, r14
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100482660
mov eax, dword [rbp - 0x70]
and eax, 0xf000
cmp eax, 0x4000
jne 0x100482660
mov rcx, qword [rbp + 0x58]
call sub.msys_2.0.dll_strlen
lea ecx, [rax + rbx + 2]
mov rdi, rax
movsxd rcx, ecx
call sub.msys_2.0.dll_malloc
lea ecx, [rbx + 1]
movsxd rcx, ecx
mov r12, rax
call sub.msys_2.0.dll_malloc
mov rbx, rax
test r12, r12
je 0x100482a06
test rax, rax
je 0x1004829f9
mov rdx, rsi
mov rcx, rax
call fcn.100514770
mov rcx, rbx
call fcn.100482070
mov rdx, qword [rbp + 0x58]
mov rcx, r12
call fcn.100514770
movsxd rax, edi
lea ecx, [rdi + 1]
mov rdx, rbx
mov byte [r12 + rax], 0x2f
movsxd rcx, ecx
add rcx, r12
call fcn.100514770
mov rcx, r12
mov rdx, r14
call sub.msys_2.0.dll_lstat
mov rcx, r12
test eax, eax
js 0x100482829
call sub.msys_2.0.dll_free
sub rsp, 0x10
xor edi, edi
mov dword [rbp - 0x90], 1
lea r15, [rsp + 0x20]
mov qword [r15], 0
mov qword [r15 + 8], rbx
jmp 0x100482206
mov rcx, qword [rbp + 0x58]
call sub.msys_2.0.dll_opendir
mov qword [rbp - 0x88], rax
test rax, rax
je 0x100482660
cmp dword [sym.bash.exe_noglob_dot_filenames], 1
mov ecx, dword [sym.bash.exe_glob_ignore_case]
sbb eax, eax
and eax, 0x7c
add eax, 5
mov dword [rbp - 0xa0], eax
test ecx, ecx
je 0x1004823e1
or eax, 0x10
mov dword [rbp - 0xa0], eax
mov rax, qword [sym.bash.exe_extended_glob]
mov edx, dword [rax]
test edx, edx
je 0x1004823f5
or dword [rbp - 0xa0], 0x20
mov eax, dword [rbp + 0x60]
xor edi, edi
xor r15d, r15d
mov dword [rbp - 0xa4], 0
mov dword [rbp - 0x90], 0
sar eax, 2
and eax, 4
mov dword [rbp - 0xa8], eax
mov eax, dword [rbp + 0x60]
and eax, 0x18
mov dword [rbp - 0x9c], eax
nop dword [rax]
mov rax, qword [sym.bash.exe_interrupt_state]
mov eax, dword [rax]
test eax, eax
jne 0x1004825d0
mov rax, qword [sym.bash.exe_terminating_signal]
mov eax, dword [rax]
test eax, eax
jne 0x1004825d0
mov ecx, 2
call sym.bash.exe_signal_is_pending
test eax, eax
jne 0x1004825d0
mov rcx, qword [rbp - 0x88]
call sub.msys_2.0.dll_readdir
mov rbx, rax
test rax, rax
je 0x10048284a
cmp qword [rax + 8], 0
je 0x100482430
call sub.msys_2.0.dll___locale_mb_cur_max
cmp eax, 1
jle 0x100482670
add rbx, 0x18
mov rcx, rsi
mov rdx, rbx
call fcn.100481c00
test eax, eax
jne 0x100482430
mov rdx, rbx
mov rcx, rsi
call fcn.1004819a0
test eax, eax
jne 0x100482430
mov eax, dword [rbp - 0x9c]
test eax, eax
je 0x10048251b
mov eax, dword [rbp - 0xa8]
mov rcx, qword [rbp + 0x58]
mov rdx, rbx
mov r8d, eax
or r8d, 8
test dword [rbp + 0x60], 0x100
cmove r8d, eax
call sym.bash.exe_sh_makepath
mov edx, dword [rbp + 0x60]
mov rcx, rax
mov qword [rbp - 0x98], rax
call fcn.1004815a0
test eax, eax
js 0x100482730
test byte [rbp + 0x60], 0x10
jne 0x100482680
test byte [rbp + 0x60], 8
je 0x10048251b
mov rcx, qword [rbp - 0x98]
call sub.msys_2.0.dll_free
mov rcx, rbx
call sub.msys_2.0.dll_strlen
mov rcx, rbx
mov rdx, rax
call sym.bash.exe_fnx_fromfs
mov r8d, dword [rbp - 0xa0]
mov rcx, rsi
mov rdx, rax
call sym.bash.exe_strmatch
cmp eax, 1
je 0x100482430
mov eax, dword [rbp - 0xa4]
cmp eax, 0x1869f
jg 0x100482810
add eax, 0x10
sub rsp, 0x10
mov dword [rbp - 0xa4], eax
lea r13, [rsp + 0x20]
mov rcx, rbx
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 1]
call sub.msys_2.0.dll_malloc
mov r12, rax
test r13, r13
je 0x100482926
test rax, rax
je 0x100482926
mov qword [r13], r15
mov rcx, rbx
mov r15, r13
mov qword [r13 + 8], rax
call sub.msys_2.0.dll_strlen
mov rdx, rbx
mov rcx, r12
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
mov rax, qword [sym.bash.exe_interrupt_state]
add dword [rbp - 0x90], 1
mov eax, dword [rax]
test eax, eax
je 0x100482441
nop dword [rax]
mov rcx, qword [rbp - 0x88]
call sub.msys_2.0.dll_closedir
mov rbx, rdi
test r15, r15
je 0x100482726
mov rcx, qword [r15 + 8]
test rdi, rdi
je 0x100482622
cmp r15, rdi
je 0x100482700
call sub.msys_2.0.dll_free
mov rsi, qword [r15]
mov rcx, r15
call sub.msys_2.0.dll_free
test rsi, rsi
je 0x100482726
mov r15, rsi
mov rdi, rbx
mov rcx, qword [r15 + 8]
test rdi, rdi
jne 0x1004825f1
mov rbx, r15
jmp 0x100482719
mov ecx, 0x10
call sub.msys_2.0.dll_malloc
mov rbx, rax
test rax, rax
je 0x10048291f
mov dword [rbp - 0x90], 1
xor edi, edi
jmp 0x10048222c
lea rbx, [sym.bash.exe_glob_error_return]
jmp 0x100482288
add rbx, 0x18
jmp 0x1004824a4
test eax, eax
je 0x100482750
mov ecx, 0x10
call sub.msys_2.0.dll_malloc
test rdi, rdi
cmove rdi, rax
mov rbx, rax
mov rcx, qword [rbp - 0x98]
call sub.msys_2.0.dll_strlen
lea r12d, [rax + 1]
movsxd r12, r12d
mov rcx, r12
call sub.msys_2.0.dll_malloc
mov rcx, rax
test rbx, rbx
je 0x1004829a0
test rax, rax
je 0x1004829a0
mov r14, qword [rbp - 0x98]
mov qword [rbx], r15
mov r8, r12
mov r15, rbx
mov qword [rbx + 8], rax
mov rdx, r14
call sub.msys_2.0.dll_memmove
mov rcx, r14
call sub.msys_2.0.dll_free
add dword [rbp - 0x90], 1
jmp 0x100482430
call sub.msys_2.0.dll_free
mov rbx, qword [r15]
mov rcx, r15
call sub.msys_2.0.dll_free
test rbx, rbx
je 0x100482726
mov rcx, qword [rbx + 8]
call sub.msys_2.0.dll_free
mov rbx, qword [rbx]
test rbx, rbx
jne 0x100482715
xor ebx, ebx
jmp 0x100482288
test byte [rbp + 0x60], 8
jne 0x1004828e1
test byte [rbp + 0x60], 0x10
jne 0x100482688
jmp 0x10048251b
mov r8d, dword [rbp + 0x60]
mov rdx, qword [rbp - 0x98]
mov rcx, rsi
and r8d, 0xfffffdff
call sym.bash.exe_glob_vector
mov rcx, rax
test rax, rax
je 0x100482688
mov rbx, qword [rax]
mov r13d, 1
xor r12d, r12d
xor r14d, r14d
test rbx, rbx
je 0x100482905
mov qword [rbp + 0x50], rsi
mov rax, r12
mov rsi, r13
mov r12, rcx
jmp 0x1004827a3
mov rsi, rdx
mov ecx, 0x10
mov r13, rax
call sub.msys_2.0.dll_malloc
test rax, rax
je 0x10048296b
lea rdx, [rsi + 1]
mov qword [rax + 8], rbx
test r14, r14
mov rbx, qword [r12 + rdx*8 - 8]
mov qword [rax], r13
cmove r14, rax
test rbx, rbx
jne 0x1004827a0
mov rcx, r12
mov r13, rsi
mov r12, rax
mov rsi, qword [rbp + 0x50]
call sub.msys_2.0.dll_free
mov qword [r14], r15
mov ecx, 0x10
add dword [rbp - 0x90], r13d
test rdi, rdi
je 0x1004828f2
call sub.msys_2.0.dll_malloc
mov r15, r12
mov rbx, rax
jmp 0x10048269c
mov ecx, 0x10
call sub.msys_2.0.dll_malloc
test rdi, rdi
cmove rdi, rax
mov r13, rax
jmp 0x10048256c
call sub.msys_2.0.dll_free
mov rcx, rbx
xor r15d, r15d
xor edi, edi
call sub.msys_2.0.dll_free
mov dword [rbp - 0x90], 0
jmp 0x100482206
mov rcx, qword [rbp - 0x88]
mov rsi, r15
call sub.msys_2.0.dll_closedir
mov eax, dword [rbp + 0x60]
not eax
test eax, 0x210
jne 0x1004828b9
mov rcx, qword [rbp + 0x58]
call sub.msys_2.0.dll_strlen
lea ebx, [rax + 1]
movsxd rbx, ebx
mov rcx, rbx
call sub.msys_2.0.dll_malloc
mov ecx, 0x10
mov r14, rax
call sub.msys_2.0.dll_malloc
mov rsi, rax
test rax, rax
je 0x1004829dc
test r14, r14
je 0x1004829cf
mov qword [rax + 8], r14
mov qword [rax], r15
test dword [rbp + 0x60], 0x100
je 0x1004828c8
mov byte [r14], 0
add dword [rbp - 0x90], 1
mov r15, rsi
jmp 0x100482206
mov rdx, qword [rbp + 0x58]
mov r8, rbx
mov rcx, r14
call sub.msys_2.0.dll_memcpy
jmp 0x1004828b2
xor r10d, r10d
jmp 0x100482254
mov rcx, qword [rbp - 0x98]
call sub.msys_2.0.dll_free
jmp 0x100482430
call sub.msys_2.0.dll_malloc
mov r15, r12
mov rdi, r14
mov rbx, rax
jmp 0x10048269c
lea rax, [sym.bash.exe_glob_error_return]
cmp rcx, rax
je 0x100482688
call sub.msys_2.0.dll_free
jmp 0x100482688
xor edi, edi
jmp 0x1004825e8
mov r10, r13
mov r9, r12
test rdi, rdi
je 0x10048293b
cmp r13, rdi
je 0x100482951
test r13, r13
jne 0x100482953
test r9, r9
je 0x1004825d0
mov rcx, r9
call sub.msys_2.0.dll_free
jmp 0x1004825d0
xor edi, edi
mov rcx, r10
mov qword [rbp - 0x90], r9
call sub.msys_2.0.dll_free
mov r9, qword [rbp - 0x90]
jmp 0x10048293b
mov rcx, r12
mov rbx, r12
test r13, r13
je 0x10048298a
mov rcx, r13
mov r13, qword [r13]
call sub.msys_2.0.dll_free
test r13, r13
jne 0x100482976
mov rcx, rbx
call sub.msys_2.0.dll_free
mov rcx, qword [rbp - 0x98]
call sub.msys_2.0.dll_free
jmp 0x1004825d0
mov rax, rcx
test rdi, rdi
je 0x1004829f2
cmp rdi, rbx
jne 0x1004829f2
xor edi, edi
mov rcx, rbx
mov qword [rbp - 0x90], rax
call sub.msys_2.0.dll_free
mov rax, qword [rbp - 0x90]
test rax, rax
je 0x10048298f
mov rcx, rax
jmp 0x10048298a
test rax, rax
je 0x1004829dc
mov rcx, rax
call sub.msys_2.0.dll_free
test r14, r14
je 0x1004825dc
mov rcx, r14
call sub.msys_2.0.dll_free
jmp 0x1004825dc
test rbx, rbx
jne 0x1004829af
jmp 0x1004829c5
test r12, r12
je 0x100482a06
mov rcx, r12
call sub.msys_2.0.dll_free
test rbx, rbx
je 0x100482726
mov rcx, rbx
xor ebx, ebx
call sub.msys_2.0.dll_free
jmp 0x100482288