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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x90
mov r14, rcx
mov r8, qword [rcx + 0x10]
mov rdx, rcx
mov r9, qword [rcx + 0x18]
cmp r9, 8
jb 0x14002074b
mov rdx, qword [rcx]
mov rsi, 0xffffffffffffffff
test r8, r8
je 0x140020787
lea rcx, [r8 - 1]
mov rax, rsi
cmp rcx, rax
cmovb rax, rcx
lea rbx, [rdx + rax*2]
cmp word [rbx], 0x2e
je 0x14002077f
nop
cmp rbx, rdx
je 0x140020787
sub rbx, 2
cmp word [rbx], 0x2e
jne 0x140020770
sub rbx, rdx
sar rbx, 1
jmp 0x14002078a
mov rbx, rsi
xor r13d, r13d
mov qword [rbp + 0x27], r13
mov qword [rbp + 0x2f], 7
mov word [rbp + 0x17], r13w
mov qword [rbp + 7], r13
mov qword [rbp + 0xf], 7
mov word [rbp - 9], r13w
cmp rbx, 0xffffffffffffffff
je 0x14002094c
mov qword [rbp - 0x19], r13
mov qword [rbp - 0x11], 7
mov word [rbp - 0x29], r13w
mov rax, rbx
cmp r8, rbx
cmovb rax, r8
mov rdx, r14
cmp r9, 8
jb 0x1400207e0
mov rdx, qword [r14]
mov r8, rax
lea rcx, [rbp - 0x29]
call fcn.140014c30
mov rdx, qword [rbp + 0x2f]
cmp rdx, 8
jb 0x14002082c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x17]
cmp rdx, 0x1000
jb 0x140020827
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140020b4e
mov rcx, r8
call fcn.14003f840
movups xmm0, xmmword [rbp - 0x29]
movups xmmword [rbp + 0x17], xmm0
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rbp + 0x27], xmm1
mov qword [rbp - 0x11], 7
mov word [rbp - 0x29], r13w
mov rax, qword [r14 + 0x10]
cmp rax, rbx
jb 0x140020b3c
sub rax, rbx
mov r15, rsi
cmp rax, rsi
cmovb r15, rax
mov rax, r14
cmp qword [r14 + 0x18], 8
jb 0x140020870
mov rax, qword [r14]
lea r12, [rax + rbx*2]
cmp r15, 7
ja 0x140020899
mov qword [rbp - 0x19], r15
lea rbx, [r15 + r15]
mov r8, rbx
mov rdx, r12
lea rcx, [rbp - 0x29]
call fcn.140043570
mov word [rbp + rbx - 0x29], r13w
jmp 0x1400208fa
movabs rbx, 0x7ffffffffffffffe
cmp r15, rbx
ja 0x140020b42
mov rax, r15
or rax, 7
cmp rax, rbx
ja 0x1400208c7
mov rbx, rax
mov ecx, 0xa
cmp rax, rcx
cmovb rbx, rcx
lea rdx, [rbx + 1]
lea rcx, [rbp - 0x29]
call fcn.140014a40
mov rdi, rax
mov qword [rbp - 0x19], r15
mov qword [rbp - 0x11], rbx
lea rbx, [r15 + r15]
mov r8, rbx
mov rdx, r12
mov rcx, rax
call fcn.140043570
mov word [rbx + rdi], r13w
mov qword [rbp - 0x29], rdi
mov rdx, qword [rbp + 0xf]
cmp rdx, 8
jb 0x14002093a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 9]
cmp rdx, 0x1000
jb 0x140020935
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140020b4e
mov rcx, r8
call fcn.14003f840
movups xmm0, xmmword [rbp - 0x29]
movups xmmword [rbp - 9], xmm0
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rbp + 7], xmm1
jmp 0x14002096a
lea rax, [rbp + 0x17]
cmp rax, r14
je 0x14002096a
mov rdx, r14
cmp r9, 8
jb 0x140020961
mov rdx, qword [r14]
lea rcx, [rbp + 0x17]
call fcn.140014c30
mov r15, qword [r14 + 0x10]
add r15, 4
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x29], xmm0
mov rdi, r13
mov qword [rbp - 0x19], r13
je 0x1400209ca
movabs rax, 0x7fffffffffffffff
cmp r15, rax
ja 0x140020b48
mov rdx, r15
lea rcx, [rbp - 0x29]
call fcn.140014a40
mov rbx, rax
mov qword [rbp - 0x29], rax
lea rdi, [rax + r15*2]
mov qword [rbp - 0x19], rdi
mov r8, rdi
sub r8, rax
xor edx, edx
mov rcx, rax
call fcn.140043980
mov r15, rdi
mov qword [rbp - 0x21], rdi
jmp 0x1400209d2
mov r15, qword [rbp - 0x21]
mov rbx, qword [rbp - 0x29]
mov r12d, r13d
sub r15, rbx
sar r15, 1
nop dword [rax + rax]
lea rax, [rbp - 9]
cmp qword [rbp + 0xf], 8
cmovae rax, qword [rbp - 9]
inc r12d
lea r9, [rbp + 0x17]
cmp qword [rbp + 0x2f], 8
cmovae r9, qword [rbp + 0x17]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], r12d
lea r8, [0x140089d20]
mov rdx, r15
mov rcx, rbx
call fcn.140014e00
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140020a30
test al, 0x10
je 0x1400209e0
nop dword [rax]
inc rsi
cmp word [rbx + rsi*2], 0
jne 0x140020a30
mov r8, rsi
mov rdx, rbx
mov rcx, r14
call fcn.140014c30
nop
test rbx, rbx
je 0x140020a86
sub rdi, rbx
sar rdi, 1
lea rdx, [rdi + rdi]
cmp rdx, 0x1000
jb 0x140020a7d
add rdx, 0x27
mov rcx, qword [rbx - 8]
sub rbx, rcx
lea rax, [rbx - 8]
cmp rax, 0x1f
ja 0x140020b4e
mov rbx, rcx
mov rcx, rbx
call fcn.14003f840
nop
mov rdx, qword [rbp + 0xf]
cmp rdx, 8
jb 0x140020ac2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 9]
cmp rdx, 0x1000
jb 0x140020abd
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140020b30
mov rcx, r8
call fcn.14003f840
mov qword [rbp + 7], r13
mov qword [rbp + 0xf], 7
mov word [rbp - 9], r13w
mov rdx, qword [rbp + 0x2f]
cmp rdx, 8
jb 0x140020b0f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x17]
cmp rdx, 0x1000
jb 0x140020b0a
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140020b36
mov rcx, r8
call fcn.14003f840
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14004dd7c
nop
call fcn.14004dd7c
nop
call fcn.14002c260
int3
call fcn.1400119a0
int3
call fcn.14002c240
int3
call fcn.14004dd7c
int3