Function at 0x1400c4ae0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push rbx
push rbp
push r14
push r15
sub rsp, 0x48
xor eax, eax
mov dword [rsp + 0x88], 0xffffffff
mov r14, rcx
mov qword [rsp + 0x20], rax
mov rcx, rdx
mov dword [rsp + 0x80], eax
mov r15d, eax
mov rbx, rdx
xor bpl, bpl
call fcn.1400c3310
test rax, rax
jne 0x1400c4b55
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x1400c4b45
xor edx, edx
mov r8d, 0xffffffff
mov rcx, r14
add rsp, 0x48
pop r15
pop r14
pop rbp
pop rbx
jmp fcn.1400c5130
mov eax, 0xffffffff
add rsp, 0x48
pop r15
pop r14
pop rbp
pop rbx
ret
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], r12
lea r12, [rbx - 1]
mov qword [rsp + 0x30], r13
nop dword [rax]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [rbx + rax], 0
jne 0x1400c4b77
add rax, r12
cmp rax, rbx
jbe 0x1400c4ba0
nop dword [rax + rax]
mov r13, rax
dec rax
cmp byte [rax], 0x2f
je 0x1400c4ba3
cmp rax, rbx
ja 0x1400c4b90
mov r13, rax
movzx esi, byte [r13]
mov byte [r13], 0
test r15, r15
je 0x1400c4bb5
mov byte [r15], bpl
mov rcx, r14
mov r15, r13
movzx ebp, sil
call fcn.1400c4930
mov rdi, rax
test rax, rax
jne 0x1400c4bd1
cmp r13, rbx
ja 0x1400c4b70
movzx eax, byte [r13 + 1]
lea rbx, [r13 + 1]
test al, al
je 0x1400c4c05
nop
cmp al, 0x2f
je 0x1400c4ca7
call fcn.1401507f4
movsxd rdx, eax
mov rcx, rbx
call fcn.1401505b8
movsxd rcx, eax
add rbx, rcx
movzx eax, byte [rbx]
test al, al
jne 0x1400c4be0
xor r12d, r12d
mov rcx, 0xffffffffffffffff
mov r15d, r12d
inc rcx
cmp byte [r14 + rcx], r12b
jne 0x1400c4c12
add rcx, 0x100
test rdi, rdi
je 0x1400c4e42
call fcn.140139fe8
mov rbp, rax
test rax, rax
je 0x1400c4e47
mov rdx, rax
sub rdx, r14
nop dword [rax]
nop word [rax + rax]
movzx ecx, byte [r14]
mov byte [rdx + r14], cl
lea r14, [r14 + 1]
test cl, cl
jne 0x1400c4c50
mov r14, 0xffffffffffffffff
nop word [rax + rax]
cmp byte [r14 + rax + 1], 0
lea r14, [r14 + 1]
jne 0x1400c4c70
mov byte [r13], sil
mov rbx, r13
test sil, sil
je 0x1400c4d10
movabs r12, 0x2000000200001
cmp sil, 0x5c
jne 0x1400c4ce2
cmp byte [rbx + 1], 0
je 0x1400c4cf2
inc rbx
jmp 0x1400c4cf2
mov byte [rbx], 0
lea r15, [rbx + 1]
mov rax, 0xffffffffffffffff
inc rax
cmp byte [r15 + rax], 0
jne 0x1400c4cb5
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r14 + rcx], 0
jne 0x1400c4cc6
add rcx, 0x101
add rcx, rax
xor r12d, r12d
jmp 0x1400c4c22
sub sil, 0x2a
cmp sil, 0x31
ja 0x1400c4cf2
bt r12, rsi
jb 0x1400c4d1d
call fcn.1401507f4
movsxd rdx, eax
mov rcx, rbx
call fcn.1401505b8
movsxd rcx, eax
add rbx, rcx
movzx esi, byte [rbx]
test sil, sil
jne 0x1400c4c96
mov ebx, 0xffffffff
xor r12d, r12d
jmp 0x1400c4e69
xor r12d, r12d
cmp dword [rdi + 8], r12d
je 0x1400c4d2c
mov dword [rdi + 8], r12d
jmp 0x1400c4d40
mov rcx, qword [rdi]
lea rdx, [rdi + 0xc]
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
mov rcx, r12
test eax, eax
je 0x1400c4d43
mov rcx, rdi
cmp dword [0x1401fcf68], r12d
jne 0x1400c4d57
test rcx, rcx
je 0x1400c4d57
test byte [rcx + 0xc], 6
jne 0x1400c4d20
test rcx, rcx
lea rax, [rcx + 0x38]
mov rbx, r12
cmovne rbx, rax
test rbx, rbx
je 0x1400c4e62
cmp byte [rbx], 0x2e
jne 0x1400c4d8a
cmp byte [rbx + 1], r12b
je 0x1400c4d20
cmp byte [rbx], 0x2e
jne 0x1400c4d8a
cmp byte [rbx + 1], 0x2e
jne 0x1400c4d8a
cmp byte [rbx + 2], r12b
je 0x1400c4d20
xor r8d, r8d
mov rdx, rbx
mov rcx, r13
call fcn.1400c3760
test eax, eax
je 0x1400c4d20
lea rsi, [r14 + rbp]
mov rcx, rsi
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rbx]
lea rbx, [rbx + 1]
mov byte [rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x1400c4db0
test r15, r15
je 0x1400c4e09
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp byte [rdx + rbp], r12b
jne 0x1400c4dd0
add rdx, rbp
mov rcx, r15
mov byte [rdx], 0x2f
inc rdx
mov r8, rdx
sub r8, r15
nop dword [rax + rax]
movzx eax, byte [rcx]
mov byte [r8 + rcx], al
lea rcx, [rcx + 1]
test al, al
jne 0x1400c4df0
mov rcx, rbp
call fcn.1400c4ae0
jmp 0x1400c4e17
mov r8d, dword [rdi + 0xc]
xor edx, edx
mov rcx, rbp
call fcn.1400c5130
mov dword [rsp + 0x88], eax
mov ebx, eax
mov byte [rsi], r12b
test eax, eax
jne 0x1400c4e37
mov dword [rsp + 0x80], 1
jmp 0x1400c4d20
cmp ebx, 0xffffffff
je 0x1400c4d20
jmp 0x1400c4e69
mov rbp, qword [rsp + 0x20]
mov byte [r13], sil
test rdi, rdi
mov ebx, 0xffffffff
mov eax, 4
mov esi, r12d
cmovne ebx, eax
je 0x1400c4e81
jmp 0x1400c4e70
mov ebx, dword [rsp + 0x88]
mov esi, dword [rsp + 0x80]
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, rdi
call fcn.140137f30
mov r13, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x40]
test r15, r15
je 0x1400c4e95
mov byte [r15 - 1], 0x2f
test rbp, rbp
je 0x1400c4ea2
mov rcx, rbp
call fcn.140137f30
cmp ebx, 0xffffffff
jne 0x1400c4ead
test esi, esi
cmovne ebx, r12d
mov r12, qword [rsp + 0x38]
mov eax, ebx
mov rsi, qword [rsp + 0x70]
add rsp, 0x48
pop r15
pop r14
pop rbp
pop rbx
ret