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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x140]
sub rsp, 0x240
mov rax, qword [0x180053038]
xor rax, rsp
mov qword [rbp + 0x130], rax
mov r15, r8
mov qword [rsp + 0x28], r8
mov rbx, rdx
mov qword [rsp + 0x20], rdx
mov r13, rcx
mov qword [rbp - 0x18], rcx
mov qword [rbp + 0xb0], rdx
mov qword [rbp + 0xb8], r8
xor r12d, r12d
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0xf8], xmm1
mov ecx, r12d
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x108], rcx
movdqu xmmword [rbp + 0xc0], xmm1
mov esi, r12d
mov qword [rbp + 0xd0], r12
movups xmmword [r13], xmm0
mov qword [r13], r12
mov qword [r13 + 8], r12
mov qword [r13 + 0x10], r12
mov dword [rsp + 0x30], 1
mov r9, rdx
cmp qword [rdx + 0x18], 8
jb 0x180004272
mov r9, qword [rdx]
mov rcx, qword [0x180055798]
mov rax, qword [rcx]
mov r8d, 2
lea rdx, str.Searching_for_all_files_in__s
call qword [rax]
mov rdx, rbx
lea rcx, [rbp - 0x38]
call fcn.180007760
lea r8, [0x180003da0]
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.1800141f0
lea rcx, [rbp + 0xf8]
cmp rcx, rax
je 0x1800042e9
mov rdi, qword [rax]
mov qword [rbp + 0xf8], rdi
mov r14, qword [rax + 8]
mov qword [rbp + 0x100], r14
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x68], rcx
mov qword [rbp + 0x108], rcx
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x10], r12
jmp 0x1800042f7
mov r14, qword [rbp + 0x100]
mov rdi, qword [rbp + 0xf8]
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], r14
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x18000435e
mov rdx, qword [rsp + 0x50]
call fcn.180008220
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000434b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004aca
call fcn.180019ff0
mov qword [rsp + 0x48], r12
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x50], xmm0
mov r9, r14
sub r9, rdi
sar r9, 5
mov rcx, qword [0x180055798]
mov rax, qword [rcx]
mov r8d, 2
lea rdx, str.Number_of_entities_in_current_directory__d
call qword [rax + 0x10]
mov r12, rdi
mov qword [rsp + 0x60], rdi
cmp rdi, r14
mov r14, qword [rbp + 0xc0]
je 0x18000495b
nop word [rax + rax]
mov rdx, r12
lea rcx, [rbp + 0x110]
call fcn.180007760
nop
lea rax, [rbp - 0x80]
mov qword [rbp - 0x40], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
xor eax, eax
mov qword [rbp - 0x70], rax
mov qword [rbp - 0x68], rax
lea r15, [rbp + 0x110]
cmp qword [rbp + 0x128], 8
cmovae r15, qword [rbp + 0x110]
mov rdi, qword [rbp + 0x120]
movabs rcx, 0x7ffffffffffffffe
cmp rdi, rcx
ja 0x180004b06
mov qword [rbp - 0x68], 7
cmp rdi, 8
jae 0x180004419
mov qword [rbp - 0x70], rdi
movups xmm0, xmmword [r15]
movups xmmword [rbp - 0x80], xmm0
jmp 0x1800044c5
mov rbx, rdi
or rbx, 7
cmp rbx, rcx
jbe 0x180004438
mov rbx, rcx
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x180004468
cmp rbx, 0xa
mov ecx, 0xa
cmovb rbx, rcx
lea rcx, [rbx + 1]
movabs rdx, 0x7fffffffffffffff
cmp rcx, rdx
ja 0x180004b00
add rcx, rcx
cmp rcx, 0x1000
jb 0x180004497
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004b00
mov rcx, rax
call fcn.180019ff8
mov rcx, rax
test rax, rax
je 0x180004ad6
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800044a1
test rcx, rcx
je 0x1800044a1
call fcn.180019ff8
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], rbx
lea r8, [rdi*2 + 2]
mov rdx, r15
mov rcx, rax
call fcn.18001c300
mov rbx, qword [rsp + 0x20]
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.180007760
nop
lea r8, [rbp - 0x80]
mov rdx, rax
lea rcx, [rbp + 0xd8]
call fcn.180013bf0
nop
lea rcx, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 8
cmovae rcx, qword [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x18000477a
test al, 0x10
je 0x18000477a
lea rax, [rbp + 0x50]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0x10]
mov qword [rbp - 0x40], rax
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x10]
call fcn.180007760
mov rbx, rax
mov rdx, qword [rsp + 0x28]
lea rcx, [rbp + 0x30]
call fcn.180007760
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rbp + 0x50]
call fcn.180013bf0
mov r12, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
xor eax, eax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rax
lea r15, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 8
cmovae r15, qword [rbp + 0xd8]
mov rdi, qword [rbp + 0xe8]
movabs rcx, 0x7ffffffffffffffe
cmp rdi, rcx
ja 0x180004ae8
mov qword [rbp - 0x48], 7
cmp rdi, 8
jae 0x1800045ba
mov qword [rbp - 0x50], rdi
movups xmm0, xmmword [r15]
movups xmmword [rbp - 0x60], xmm0
jmp 0x180004662
mov rbx, rdi
or rbx, 7
cmp rbx, rcx
jbe 0x1800045d9
mov rbx, rcx
movabs rax, 0x7fffffffffffffff
lea rcx, [rax + rax]
jmp 0x180004609
cmp rbx, 0xa
mov ecx, 0xa
cmovb rbx, rcx
lea rcx, [rbx + 1]
movabs rdx, 0x7fffffffffffffff
cmp rcx, rdx
ja 0x180004ae2
add rcx, rcx
cmp rcx, 0x1000
jb 0x180004638
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180004ae2
mov rcx, rax
call fcn.180019ff8
mov rcx, rax
test rax, rax
je 0x180004adc
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x180004642
test rcx, rcx
je 0x180004642
call fcn.180019ff8
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x50], rdi
mov qword [rbp - 0x48], rbx
lea r8, [rdi*2 + 2]
mov rdx, r15
mov rcx, rax
call fcn.18001c300
nop
mov r8, r12
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x48]
call fcn.1800041c0
mov rbx, rax
lea rax, [rbp + 0xc0]
cmp rax, rbx
je 0x1800046fc
test r14, r14
je 0x1800046cd
mov rdx, qword [rbp + 0xc8]
mov rcx, r14
call fcn.180008220
sub rsi, r14
and rsi, 0xffffffffffffffe0
mov rax, r14
cmp rsi, 0x1000
jb 0x1800046c2
add rsi, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004adc
mov rdx, rsi
mov rcx, r14
call fcn.180019ff0
mov r14, qword [rbx]
mov qword [rbp + 0xc0], r14
mov rdi, qword [rbx + 8]
mov qword [rbp + 0xc8], rdi
mov rsi, qword [rbx + 0x10]
mov qword [rbp + 0xd0], rsi
xor eax, eax
mov qword [rbx], rax
mov qword [rbx + 8], rax
mov qword [rbx + 0x10], rax
jmp 0x180004703
mov rdi, qword [rbp + 0xc8]
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x180004752
mov rdx, qword [rsp + 0x50]
call fcn.180008220
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000474d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004adc
call fcn.180019ff0
mov r9, rdi
sub r9, r14
sar r9, 5
mov rdx, qword [r13 + 8]
mov r8, r14
mov rcx, r13
call fcn.180008b10
mov r12, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x20]
jmp 0x1800048b0
lea rcx, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 8
cmovae rcx, qword [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1800047a4
test al, 0x10
jne 0x1800047a4
mov al, 1
jmp 0x1800047a6
xor al, al
test al, al
je 0x180004880
lea rax, [rbp + 0x70]
mov qword [rsp + 0x78], rax
lea rdx, [rbp + 0x110]
lea rcx, [rbp + 0x70]
call fcn.180007760
mov rbx, rax
mov r15, qword [rsp + 0x28]
mov rdx, r15
lea rcx, [rbp + 0x90]
call fcn.180007760
nop
mov r8, rbx
mov rdx, rax
lea rcx, [rbp - 0x38]
call fcn.180013bf0
nop
mov rdx, qword [r13 + 8]
cmp rdx, qword [r13 + 0x10]
je 0x18000482d
xorps xmm0, xmm0
movups xmmword [rdx], xmm0
xor ecx, ecx
mov qword [rdx + 0x10], rcx
mov qword [rdx + 0x18], rcx
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rdx + 0x10], xmm1
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], 7
mov word [rax], cx
add qword [r13 + 8], 0x20
jmp 0x180004839
mov r8, rax
mov rcx, r13
call fcn.180009160
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x180004879
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180004874
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004aee
call fcn.180019ff0
mov rbx, qword [rsp + 0x20]
jmp 0x1800048b5
lea r9, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 8
cmovae r9, qword [rbp + 0xd8]
mov rcx, qword [0x180055798]
mov rax, qword [rcx]
mov r8d, 2
lea rdx, str.Unsupported_file__s
call qword [rax]
mov r15, qword [rsp + 0x28]
mov rdx, qword [rbp + 0xf0]
cmp rdx, 8
jb 0x1800048fc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800048f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004af4
call fcn.180019ff0
nop
mov rdx, qword [rbp + 0x128]
cmp rdx, 8
jb 0x180004942
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18000493d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004afa
call fcn.180019ff0
add r12, 0x20
mov qword [rsp + 0x60], r12
cmp r12, qword [rsp + 0x38]
jne 0x1800043a0
mov rdi, qword [rsp + 0x40]
test r14, r14
je 0x1800049a7
mov rdx, qword [rbp + 0xc8]
mov rcx, r14
call fcn.180008220
sub rsi, r14
and rsi, 0xffffffffffffffe0
mov rax, r14
cmp rsi, 0x1000
jb 0x18000499b
add rsi, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004ad0
mov rdx, rsi
mov rcx, r14
call fcn.180019ff0
nop
test rdi, rdi
je 0x1800049f6
mov rdx, qword [rsp + 0x38]
mov rcx, rdi
call fcn.180008220
mov rcx, qword [rsp + 0x68]
sub rcx, rdi
and rcx, 0xffffffffffffffe0
mov rax, rdi
cmp rcx, 0x1000
jb 0x1800049ea
add rcx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004b0c
mov rdx, rcx
mov rcx, rdi
call fcn.180019ff0
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 8
jb 0x180004a35
mov rcx, qword [rbx]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x180004a30
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180004abe
mov rcx, r8
call fcn.180019ff0
xor edi, edi
mov qword [rbx + 0x10], rdi
mov qword [rbx + 0x18], 7
mov word [rbx], di
mov rdx, qword [r15 + 0x18]
cmp rdx, 8
jb 0x180004a81
lea rdx, [rdx*2 + 2]
mov rcx, qword [r15]
cmp rdx, 0x1000
jb 0x180004a7c
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180004ac4
mov rcx, r8
call fcn.180019ff0
mov qword [r15 + 0x10], rdi
mov qword [r15 + 0x18], 7
mov word [r15], di
mov rax, r13
mov rcx, qword [rbp + 0x130]
xor rcx, rsp
call fcn.180019fd0
mov rbx, qword [rsp + 0x298]
add rsp, 0x240
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.180021034
nop
call fcn.180021034
nop
call fcn.180021034
nop
call fcn.180021034
nop
call fcn.180021034
nop
call fcn.180021034
int3
call fcn.180003440
int3
call fcn.1800034e0
nop
call fcn.180021034
nop
call fcn.180021034
nop
call fcn.180021034
nop
call fcn.180003440
int3
call fcn.1800034e0
nop
call fcn.180021034
int3