Function at 0x100474500
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 + 0xe0]
mov dword [rbp + 0x60], r8d
mov r13, rcx
mov r14, rdx
test rcx, rcx
je 0x100474533
cmp byte [rcx], 0
jne 0x100474620
lea rdx, [rbp - 0x80]
mov rcx, r14
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100474d8f
mov eax, dword [rbp - 0x70]
and eax, 0xf000
cmp eax, 0x4000
jne 0x100474d8f
sub rsp, 0x10
mov ecx, 1
mov qword [rsp + 0x20], 0
lea rbx, [rsp + 0x20]
mov r15, rbx
call fcn.1004d2f30
test rax, rax
je 0x100474f22
mov qword [rbx + 8], rax
mov byte [rax], 0
test r13, r13
jne 0x100474990
mov ecx, 0x10
call fcn.1004d2f30
mov r12, rax
test rax, rax
je 0x100474f59
mov ebx, 1
lea edx, [rbx - 1]
mov rax, r12
lea r8, [r12 + rdx*8 + 8]
mov rdx, r15
nop dword [rax + rax]
mov rcx, qword [rdx + 8]
add rax, 8
mov rdx, qword [rdx]
mov qword [rax - 8], rcx
cmp rax, r8
jne 0x1004745c0
mov eax, ebx
mov qword [r12 + rax*8], 0
test r13, r13
je 0x100474609
test r15, r15
je 0x100474609
nop dword [rax + rax]
mov rcx, r15
cmp r13, r15
je 0x100474980
mov r15, qword [r15]
call fcn.1004d2c80
test r15, r15
jne 0x1004745f0
mov rax, r12
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, r13
mov rsi, rax
call sym.bash.exe_glob_pattern_p
test eax, eax
je 0x100474be0
mov rcx, r14
lea r12, [sym.bash.exe_glob_error_return]
call sub.msys_2.0.dll_opendir
mov r15, rax
test rax, rax
je 0x100474609
cmp dword [sym.bash.exe_noglob_dot_filenames], 1
mov r8d, dword [sym.bash.exe_glob_ignore_case]
sbb eax, eax
and eax, 0xfffffffc
add eax, 5
mov dword [rbp - 0x9c], eax
test r8d, r8d
je 0x100474679
or eax, 0x10
mov dword [rbp - 0x9c], eax
mov rdx, qword [sym.bash.exe_extended_glob]
mov esi, dword [rbp + 0x60]
mov qword [rbp - 0x90], 0
mov edi, dword [rbp - 0x9c]
mov qword [rbp + 0x58], r14
mov dword [rbp - 0xa8], 0
mov ecx, dword [rdx]
mov dword [rbp - 0xa0], 0
mov eax, edi
mov qword [rbp - 0x88], 0
or eax, 0x20
test ecx, ecx
cmove eax, edi
mov dword [rbp - 0x9c], eax
mov eax, dword [rbp + 0x60]
and eax, 0x210
mov dword [rbp - 0xbc], eax
mov eax, dword [rbp + 0x60]
sar eax, 2
and eax, 4
mov edx, eax
or edx, 8
and esi, 0x100
cmove edx, eax
mov dword [rbp - 0xb0], esi
mov dword [rbp - 0xac], edx
nop word [rax + rax]
mov rax, qword [sym.bash.exe_interrupt_state]
mov eax, dword [rax]
test eax, eax
jne 0x1004748c0
mov rax, qword [sym.bash.exe_terminating_signal]
mov eax, dword [rax]
test eax, eax
jne 0x1004748c0
mov ecx, 2
call sym.bash.exe_signal_is_pending
mov r12d, eax
test eax, eax
jne 0x1004748c0
mov rcx, r15
call sub.msys_2.0.dll_readdir
mov rbx, rax
test rax, rax
je 0x100474dba
cmp qword [rax + 8], 0
je 0x100474700
call sub.msys_2.0.dll___locale_mb_cur_max
lea r12, [rbx + 0x18]
cmp eax, 1
jle 0x10047476f
mov rdx, r12
mov rcx, r13
call fcn.100474200
test eax, eax
jne 0x100474700
mov rdx, r12
mov rcx, r13
call fcn.100474060
test eax, eax
jne 0x100474700
mov ebx, dword [rbp + 0x60]
and ebx, 0x10
test byte [rbp + 0x60], 0x18
je 0x1004749f0
mov r8d, dword [rbp - 0xac]
mov rcx, qword [rbp + 0x58]
mov rdx, r12
call sym.bash.exe_sh_makepath
lea rdx, [rbp - 0x80]
mov qword [rbp - 0x98], rax
test ebx, ebx
je 0x100474aa8
mov rcx, rax
call sub.msys_2.0.dll_lstat
test eax, eax
js 0x100474b9c
mov eax, dword [rbp - 0x70]
and eax, 0xf000
cmp eax, 0x4000
jne 0x100474b9c
test ebx, ebx
jne 0x100474ac0
mov dword [rbp - 0xa4], 0
test byte [rbp + 0x60], 8
je 0x1004747fb
mov rcx, qword [rbp - 0x98]
call fcn.1004d2c80
mov rcx, r12
call sub.msys_2.0.dll_strlen
mov rcx, r12
mov rdx, rax
call sym.bash.exe_fnx_fromfs
mov r8d, dword [rbp - 0x9c]
mov rcx, r13
mov rdx, rax
call sym.bash.exe_strmatch
cmp eax, 1
je 0x100474700
mov eax, dword [rbp - 0xa8]
cmp eax, 0x1869f
jg 0x100474d68
add eax, 0x10
sub rsp, 0x10
mov dword [rbp - 0xa8], eax
lea rdi, [rsp + 0x20]
mov rcx, r12
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 1]
call fcn.1004d2f30
mov rbx, rax
test rdi, rdi
je 0x100474e14
test rax, rax
je 0x100474e37
mov rax, qword [rbp - 0x88]
mov qword [rdi + 8], rbx
mov rcx, r12
mov qword [rdi], rax
call sub.msys_2.0.dll_strlen
mov rdx, r12
mov rcx, rbx
lea r8, [rax + 1]
call sub.msys_2.0.dll_memmove
mov rax, qword [sym.bash.exe_interrupt_state]
add dword [rbp - 0xa0], 1
mov qword [rbp - 0x88], rdi
mov eax, dword [rax]
test eax, eax
je 0x100474711
nop word cs:[rax + rax]
mov r14, qword [rbp + 0x58]
mov r12d, 1
mov rcx, r15
call sub.msys_2.0.dll_closedir
cmp dword [rbp - 0xbc], 0x210
jne 0x100474d28
mov rcx, r14
call sub.msys_2.0.dll_strlen
lea ebx, [rax + 1]
movsxd rbx, ebx
mov rcx, rbx
call fcn.1004d2f30
mov ecx, 0x10
mov r13, rax
call fcn.1004d2f30
mov r15, rax
test rax, rax
je 0x100474efd
test r13, r13
je 0x100474ef0
mov qword [rax + 8], r13
mov rax, qword [rbp - 0x88]
mov qword [r15], rax
mov eax, dword [rbp - 0xb0]
test eax, eax
je 0x100474d50
mov byte [r13], 0
test r12d, r12d
je 0x100474cf0
mov rbx, qword [rbp - 0x90]
xor edi, edi
mov rcx, r13
test rbx, rbx
je 0x1004749d4
cmp rbx, r15
cmove rbx, rdi
call fcn.1004d2c80
mov rsi, qword [r15]
mov rcx, r15
call fcn.1004d2c80
test rsi, rsi
je 0x1004749e1
mov rcx, qword [rsi + 8]
mov r15, rsi
test rbx, rbx
jne 0x100474955
jmp 0x1004749d4
call fcn.1004d2c80
jmp 0x100474609
cmp byte [r13], 0
jne 0x100474fb0
mov ecx, 0x10
call fcn.1004d2f30
mov qword [rbp - 0x90], rax
test rax, rax
je 0x100474d41
mov dword [rbp - 0xa0], 1
xor edi, edi
jmp 0x100474cda
mov rcx, qword [r15 + 8]
call fcn.1004d2c80
mov r15, qword [r15]
test r15, r15
jne 0x1004749d0
xor r12d, r12d
jmp 0x100474609
test ebx, ebx
je 0x1004747e9
mov edx, dword [rbp - 0xa4]
test edx, edx
je 0x100474ac0
mov dword [rbp - 0xa4], 0xffffffff
mov ecx, 0x10
call fcn.1004d2f30
cmp qword [rbp - 0x90], 0
mov rdx, rax
je 0x100474bc0
mov r12, qword [rbp - 0x88]
mov qword [rbp - 0x88], rdx
mov rcx, qword [rbp - 0x98]
call sub.msys_2.0.dll_strlen
lea ebx, [rax + 1]
movsxd rbx, ebx
mov rcx, rbx
call fcn.1004d2f30
cmp qword [rbp - 0x88], 0
mov rcx, rax
je 0x100474ebe
test rax, rax
je 0x100474f81
mov rax, qword [rbp - 0x88]
mov rdi, qword [rbp - 0x98]
mov r8, rbx
mov qword [rax + 8], rcx
mov rdx, rdi
mov qword [rax], r12
call sub.msys_2.0.dll_memmove
mov rcx, rdi
call fcn.1004d2c80
add dword [rbp - 0xa0], 1
jmp 0x100474700
mov rcx, qword [rbp - 0x98]
call sub.msys_2.0.dll_stat
jmp 0x1004747bc
mov r8d, dword [rbp + 0x60]
mov rdx, qword [rbp - 0x98]
mov rcx, r13
and r8d, 0xfffffdff
call sym.bash.exe_glob_vector
mov qword [rbp - 0xb8], rax
test rax, rax
je 0x100474e05
mov r14, qword [rax]
mov edi, 1
xor ebx, ebx
xor r12d, r12d
test r14, r14
je 0x100474dde
mov rax, rbx
mov rbx, qword [rbp - 0xb8]
nop word [rax + rax]
mov ecx, 0x10
mov rsi, rax
call fcn.1004d2f30
test rax, rax
je 0x100474e5b
test r12, r12
mov qword [rax], rsi
mov esi, edi
cmove r12, rax
add rdi, 1
mov qword [rax + 8], r14
mov r14, qword [rbx + rdi*8 - 8]
test r14, r14
jne 0x100474b10
mov rcx, qword [rbp - 0xb8]
mov rbx, rax
call fcn.1004d2c80
mov rax, qword [rbp - 0x90]
mov ecx, 0x10
test rax, rax
cmove rax, r12
add dword [rbp - 0xa0], esi
mov qword [rbp - 0x90], rax
mov rax, qword [rbp - 0x88]
mov qword [r12], rax
call fcn.1004d2f30
mov qword [rbp - 0x88], rbx
mov dword [rbp - 0xa4], 0
mov rdx, rax
jmp 0x100474a2b
test byte [rbp + 0x60], 8
jne 0x100474dc3
mov dword [rbp - 0xa4], 0xffffffff
test ebx, ebx
jne 0x100474a10
jmp 0x1004747fb
mov r12, qword [rbp - 0x88]
mov qword [rbp - 0x90], rax
mov qword [rbp - 0x88], rax
jmp 0x100474a39
lea r15, [rbp - 0x80]
mov rcx, r14
mov rdx, r15
call sub.msys_2.0.dll_stat
test eax, eax
js 0x100474d8f
mov eax, dword [rbp - 0x70]
and eax, 0xf000
cmp eax, 0x4000
jne 0x100474d8f
mov rcx, r14
call sub.msys_2.0.dll_strlen
lea ecx, [rax + rsi + 2]
mov rbx, rax
movsxd rcx, ecx
call fcn.1004d2f30
lea ecx, [rsi + 1]
movsxd rcx, ecx
mov r12, rax
call fcn.1004d2f30
mov rsi, rax
test r12, r12
je 0x100474ea8
test rax, rax
je 0x100474e9b
mov rdx, r13
mov rcx, rax
call fcn.1004d3420
mov rcx, rsi
call fcn.100473cd0
mov rdx, r14
mov rcx, r12
call fcn.1004d3420
movsxd rax, ebx
lea ecx, [rbx + 1]
mov rdx, rsi
mov byte [r12 + rax], 0x2f
movsxd rcx, ecx
add rcx, r12
call fcn.1004d3420
mov rcx, r12
mov rdx, r15
call sub.msys_2.0.dll_lstat
mov rcx, r12
test eax, eax
js 0x100474d9b
call fcn.1004d2c80
sub rsp, 0x10
mov dword [rbp - 0xa0], 1
mov qword [rsp + 0x20], 0
lea r15, [rsp + 0x20]
mov qword [r15 + 8], rsi
xor edi, edi
mov eax, dword [rbp - 0xa0]
lea ecx, [rax + 1]
shl rcx, 3
call fcn.1004d2f30
mov qword [rbp - 0x90], rax
test rax, rax
je 0x100474f75
mov r12, qword [rbp - 0x90]
mov ebx, dword [rbp - 0xa0]
mov qword [rbp - 0x90], rdi
jmp 0x100474d0d
mov eax, dword [rbp - 0xa0]
lea ecx, [rax + 2]
lea ebx, [rax + 1]
shl rcx, 3
call fcn.1004d2f30
mov r12, rax
test rax, rax
je 0x100474d41
mov r13, qword [rbp - 0x90]
test ebx, ebx
jne 0x1004745ad
jmp 0x1004745d4
mov r15, qword [rbp - 0x88]
test r12d, r12d
je 0x100474f69
test r15, r15
je 0x1004749e1
mov r13, qword [r15 + 8]
jmp 0x100474944
mov r8, rbx
mov rdx, r14
mov rcx, r13
call fcn.1004d2fe0
jmp 0x10047493b
mov ecx, 0x10
call fcn.1004d2f30
mov rdi, rax
mov rax, qword [rbp - 0x90]
test rax, rax
cmove rax, rdi
mov qword [rbp - 0x90], rax
jmp 0x10047484c
lea r12, [sym.bash.exe_glob_error_return]
jmp 0x100474609
call fcn.1004d2c80
mov rcx, rsi
xor r15d, r15d
call fcn.1004d2c80
mov dword [rbp - 0xa0], 0
jmp 0x100474cb6
mov r14, qword [rbp + 0x58]
jmp 0x1004748ca
mov rcx, qword [rbp - 0x98]
call fcn.1004d2c80
mov dword [rbp - 0xa4], 0xffffffff
jmp 0x100474700
lea rdi, [sym.bash.exe_glob_error_return]
mov dword [rbp - 0xa4], 0
cmp rax, rdi
je 0x100474a10
mov rcx, rax
call fcn.1004d2c80
jmp 0x100474a10
mov dword [rbp - 0xa4], 0
jmp 0x100474a10
mov r14, qword [rbp + 0x58]
mov r9, rax
test r9, r9
je 0x100474fc2
mov rcx, r9
mov r12d, 1
call fcn.1004d2c80
jmp 0x1004748ca
mov r14, qword [rbp + 0x58]
mov r9, rax
test rdi, rdi
je 0x100474e1b
mov rcx, rdi
mov qword [rbp - 0x98], rax
call fcn.1004d2c80
mov r9, qword [rbp - 0x98]
jmp 0x100474e1b
mov r14, qword [rbp + 0x58]
mov r12, rsi
test rsi, rsi
je 0x100474e78
mov rcx, r12
mov r12, qword [r12]
call fcn.1004d2c80
test r12, r12
jne 0x100474e67
mov rcx, qword [rbp - 0xb8]
mov r12d, 1
call fcn.1004d2c80
mov rcx, qword [rbp - 0x98]
call fcn.1004d2c80
jmp 0x1004748ca
test r12, r12
je 0x100474ea8
mov rcx, r12
call fcn.1004d2c80
test rsi, rsi
je 0x1004749e1
mov rcx, rsi
call fcn.1004d2c80
jmp 0x1004749e1
mov r14, qword [rbp + 0x58]
mov r9, rax
test r9, r9
je 0x100474ed2
mov rcx, r9
call fcn.1004d2c80
mov rcx, qword [rbp - 0x98]
call fcn.1004d2c80
mov qword [rbp - 0x88], r12
mov r12d, 1
jmp 0x1004748ca
test rax, rax
je 0x100474efd
mov rcx, rax
call fcn.1004d2c80
test r13, r13
je 0x100474f16
mov rcx, r13
call fcn.1004d2c80
mov r15, qword [rbp - 0x88]
jmp 0x100474d38
mov r15, qword [rbp - 0x88]
jmp 0x100474d38
test r13, r13
je 0x1004749e1
cmp byte [r13], 0
je 0x1004749e1
mov dword [rbp - 0xa0], 0
mov r12d, 1
mov qword [rbp - 0x90], 0
mov r15, rax
jmp 0x100474d2f
mov qword [rbp - 0x90], 0
jmp 0x100474d41
mov rdi, qword [rbp - 0x90]
jmp 0x100474cb8
mov qword [rbp - 0x90], rdi
jmp 0x100474d38
mov rcx, qword [rbp - 0x88]
mov r14, qword [rbp + 0x58]
mov r9, rax
test rcx, rcx
je 0x100474ec5
mov qword [rbp - 0x88], rax
call fcn.1004d2c80
mov r9, qword [rbp - 0x88]
jmp 0x100474ec5
mov dword [rbp - 0xa0], 1
mov rax, rbx
xor r12d, r12d
jmp 0x100474f46
mov r12d, 1
jmp 0x1004748ca