Function at 0x10047b980
Capabilities:
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb8
mov eax, edx
mov dword [rsp + 0x108], edx
mov rbx, rcx
mov r12, rcx
and eax, 8
mov dword [rsp + 0x24], eax
je 0x10047bcb0
cmp byte [rbx], 0
jne 0x10047bc2f
call sub.msys_2.0.dll___locale_ctype_ptr
movzx edx, byte [r12]
mov r8, rax
mov rax, rdx
test byte [rdx + r8 + 1], 3
jne 0x10047bd51
test al, al
je 0x10047bd0a
mov dword [rsp + 0x28], 0
mov r14, r12
mov byte [rsp + 0x2e], 0x2e
mov dword [rsp + 0x20], 0
mov edi, dword [rsp + 0x108]
mov rsi, r14
mov rbp, r14
mov rbx, r14
lea r13, [rsp + 0x30]
and edi, 2
nop dword [rax]
cmp al, 0x2f
je 0x10047baf0
cmp al, 0x5c
je 0x10047baf0
cmp al, 0x2e
je 0x10047bb00
mov r15, r14
cmp r14, rbp
je 0x10047ba5b
mov byte [rbp], 0x2f
lea r15, [rbp + 1]
jmp 0x10047ba5b
cmp al, 0x2f
je 0x10047bb80
cmp al, 0x5c
je 0x10047bb80
mov byte [r15], al
add r15, 1
add rbx, 1
movzx eax, byte [rbx]
test al, al
jne 0x10047ba40
test edi, edi
je 0x10047bac0
movzx ebp, byte [r15]
mov byte [r15], 0
call sub.msys_2.0.dll___errno
mov rdx, r13
mov rcx, r12
mov dword [rax], 0
call sub.msys_2.0.dll_stat
test eax, eax
jne 0x10047ba98
mov eax, dword [rsp + 0x40]
and eax, 0xf000
cmp eax, 0x4000
je 0x10047baa8
mov rcx, r12
call fcn.10047b8b0
test eax, eax
je 0x10047bd8b
mov byte [r15], bpl
movzx eax, byte [rbx]
mov rbp, r15
test al, al
jne 0x10047ba10
mov r15, rbp
nop dword [rax]
cmp r12, r15
je 0x10047bd1a
mov byte [r15], 0
cmp byte [r12], 0x2f
je 0x10047bcd1
mov rax, r12
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movzx eax, byte [rbx + 1]
add rbx, 1
jmp 0x10047bab1
movzx eax, byte [rbx + 1]
cmp al, 0x2f
sete dl
cmp al, 0x5c
sete cl
or dl, cl
jne 0x10047bb16
test al, al
jne 0x10047bb20
add rbx, 1
jmp 0x10047bab1
cmp al, 0x2e
jne 0x10047ba28
movzx eax, byte [rbx + 2]
cmp al, 0x2f
mov ecx, eax
sete dl
cmp al, 0x5c
sete r8b
or dl, r8b
jne 0x10047bb46
test al, al
jne 0x10047ba28
lea r15, [rbx + 2]
cmp rsi, rbp
jae 0x10047bb90
test byte [rsp + 0x108], 1
je 0x10047bb6c
jmp 0x10047bbd8
movzx eax, byte [rbp]
cmp al, 0x2f
je 0x10047bb75
cmp al, 0x5c
je 0x10047bb75
sub rbp, 1
cmp rbp, rsi
jne 0x10047bb60
mov eax, ecx
mov rbx, r15
jmp 0x10047bab1
test edi, edi
je 0x10047baab
jmp 0x10047ba66
mov r9d, dword [rsp + 0x20]
test r9d, r9d
jne 0x10047bbd0
mov rax, r14
cmp r14, rbp
je 0x10047bbaa
mov byte [rbp], 0x2f
lea rax, [rbp + 1]
lea rbp, [rax + 2]
mov r8d, 0x2e2e
mov word [rax], r8w
mov rsi, rbp
movzx eax, byte [rbx + 2]
mov rbx, r15
jmp 0x10047bab1
mov rbx, r15
jmp 0x10047bab1
movzx eax, byte [rbp]
mov byte [rbp], 0
mov byte [rsp + 0x2f], al
call sub.msys_2.0.dll___errno
mov rdx, r13
mov rcx, r12
mov dword [rax], 0
call sub.msys_2.0.dll_stat
test eax, eax
jne 0x10047bc0e
mov eax, dword [rsp + 0x40]
and eax, 0xf000
cmp eax, 0x4000
je 0x10047bc1e
mov rcx, r12
call fcn.10047b8b0
test eax, eax
je 0x10047bd8b
movzx eax, byte [rsp + 0x2f]
mov byte [rbp], al
movzx ecx, byte [rbx + 2]
jmp 0x10047bb6c
call sub.msys_2.0.dll___locale_ctype_ptr
movzx edx, byte [rbx]
mov r8, rax
mov rax, rdx
test byte [rdx + r8 + 1], 3
jne 0x10047bd7c
cmp al, 0x2f
je 0x10047bc55
cmp al, 0x5c
jne 0x10047b9b8
call sub.msys_2.0.dll___locale_ctype_ptr
movzx edx, byte [r12]
test byte [rdx + rax + 1], 3
je 0x10047bc73
cmp byte [r12 + 1], 0x3a
lea r14, [r12 + 3]
je 0x10047bc78
lea r14, [r12 + 1]
cmp byte [rbx], 0x2f
mov dword [rsp + 0x28], 0
je 0x10047bd2c
mov dword [rsp + 0x20], 1
mov byte [rsp + 0x2e], 0x2f
movzx eax, byte [r14]
test al, al
jne 0x10047b9f4
mov r15, r14
jmp 0x10047bac0
call sub.msys_2.0.dll_strlen
lea rcx, [rax + 1]
call sym.bash.exe_xmalloc
mov rdx, rbx
mov rcx, rax
call fcn.1004d3420
mov r12, rax
jmp 0x10047b9af
cmp byte [r12 + 1], 0x2f
jne 0x10047bad8
mov edx, dword [rsp + 0x28]
movzx eax, byte [r12 + 2]
test edx, edx
jne 0x10047bad8
cmp al, 0x2f
je 0x10047bad8
test al, al
jne 0x10047bda5
mov byte [r12 + 1], 0
jmp 0x10047bad8
mov dword [rsp + 0x28], 0
mov r15, r12
mov byte [rsp + 0x2e], 0x2e
movzx eax, byte [rsp + 0x2e]
add r15, 1
mov byte [r15 - 1], al
jmp 0x10047bac9
cmp byte [rbx + 1], 0x2f
jne 0x10047bc89
cmp byte [rbx + 2], 0x2f
je 0x10047bc89
mov dword [rsp + 0x28], 1
add r14, 1
jmp 0x10047bc89
cmp byte [r12 + 1], 0x3a
jne 0x10047b9d4
mov dword [rsp + 0x20], 0
lea r14, [r12 + 2]
mov dword [rsp + 0x28], 0
mov byte [rsp + 0x2e], 0x2e
jmp 0x10047bc96
cmp byte [rbx + 1], 0x3a
jne 0x10047bc49
jmp 0x10047bc55
mov ecx, dword [rsp + 0x24]
test ecx, ecx
je 0x10047bd9b
xor r12d, r12d
jmp 0x10047bad8
mov rcx, r12
call fcn.1004d2c80
jmp 0x10047bd93
lea rdx, [r12 + 1]
mov rcx, r12
call fcn.1004d3420
jmp 0x10047bad8