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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
lea rbp, [rsp - 0x37]
sub rsp, 0x90
mov r9, qword [rcx + 0x18]
mov rsi, rcx
mov rdx, rcx
cmp r9, 8
jb 0x1400180f6
mov rdx, qword [rcx]
mov r8, qword [rcx + 0x10]
or rdi, 0xffffffffffffffff
test r8, r8
je 0x140018137
lea rcx, [r8 - 1]
mov rax, rdi
cmp rcx, rdi
cmovb rax, rcx
cmp word [rdx + rax*2], 0x2e
lea rbx, [rdx + rax*2]
je 0x14001812f
nop dword [rax]
cmp rbx, rdx
je 0x140018137
sub rbx, 2
cmp word [rbx], 0x2e
jne 0x140018120
sub rbx, rdx
sar rbx, 1
jmp 0x14001813a
mov rbx, rdi
xor r12d, r12d
mov qword [rbp + 0x2f], 7
mov qword [rbp + 0x27], r12
mov word [rbp + 0x17], r12w
mov qword [rbp + 7], r12
mov qword [rbp + 0xf], 7
mov word [rbp - 9], r12w
cmp rbx, 0xffffffffffffffff
je 0x140018218
movdqa xmm0, xmmword [0x14005a090]
cmp r8, rbx
mov rax, rbx
mov word [rbp - 0x29], r12w
cmovb rax, r8
mov rdx, rsi
movdqu xmmword [rbp - 0x19], xmm0
cmp r9, 8
jb 0x140018191
mov rdx, qword [rsi]
mov r8, rax
lea rcx, [rbp - 0x29]
call fcn.140025010
lea rcx, [rbp + 0x17]
call fcn.14000b190
movups xmm0, xmmword [rbp - 0x29]
mov rax, qword [rsi + 0x10]
mov word [rbp - 0x29], r12w
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rbp + 0x17], xmm0
movdqa xmm0, xmmword [0x14005a090]
movdqu xmmword [rbp - 0x19], xmm0
movups xmmword [rbp + 0x27], xmm1
cmp rax, rbx
jb 0x14001842d
sub rax, rbx
mov r8, rdi
cmp rax, 0xffffffffffffffff
cmovb r8, rax
cmp qword [rsi + 0x18], 8
mov rax, rsi
jb 0x1400181f0
mov rax, qword [rsi]
lea rdx, [rax + rbx*2]
lea rcx, [rbp - 0x29]
call fcn.140025010
lea rcx, [rbp - 9]
call fcn.14000b190
movups xmm0, xmmword [rbp - 0x29]
movups xmm1, xmmword [rbp - 0x19]
movups xmmword [rbp - 9], xmm0
movups xmmword [rbp + 7], xmm1
jmp 0x140018236
lea rax, [rbp + 0x17]
cmp rax, rsi
je 0x140018236
mov rdx, rsi
cmp r9, 8
jb 0x14001822d
mov rdx, qword [rsi]
lea rcx, [rbp + 0x17]
call fcn.140025010
mov rdx, qword [rsi + 0x10]
lea r8, [rbp + 0x67]
add rdx, 4
mov qword [rsp + 0xc8], r14
lea rcx, [rbp - 0x29]
mov qword [rsp + 0xd0], r15
call fcn.140011bb0
mov r14, qword [rbp - 0x21]
mov r15d, r12d
mov rbx, qword [rbp - 0x29]
sub r14, rbx
sar r14, 1
nop dword [rax]
inc r15d
lea rax, [rbp - 9]
cmp qword [rbp + 0xf], 8
lea r9, [rbp + 0x17]
lea r8, str._s_03d_s
mov rdx, r14
cmovae rax, qword [rbp - 9]
mov rcx, rbx
cmp qword [rbp + 0x2f], 8
mov qword [rsp + 0x28], rax
cmovae r9, qword [rbp + 0x17]
mov dword [rsp + 0x20], r15d
call fcn.14000b680
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1400182bd
test al, 0x10
je 0x140018270
mov r15, qword [rsp + 0xd0]
mov r14, qword [rsp + 0xc8]
nop dword [rax]
inc rdi
cmp word [rbx + rdi*2], r12w
jne 0x1400182d0
mov r8, rdi
mov rdx, rbx
mov rcx, rsi
call fcn.140025010
movabs rdi, 0x7fffffffffffffff
test rbx, rbx
je 0x140018358
mov rax, qword [rbp - 0x19]
sub rax, rbx
sar rax, 1
cmp rax, rdi
ja 0x140018433
lea rdx, [rax + rax]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140018350
lea rcx, [rdx + 0x27]
cmp rcx, rdx
jbe 0x140018433
mov rdx, rcx
test al, 0x1f
jne 0x140018433
mov rbx, qword [rbx - 8]
cmp rbx, rax
jae 0x140018433
sub rax, rbx
sub rax, 8
cmp rax, 0x1f
ja 0x140018433
mov rcx, rbx
call fcn.14003068c
mov rax, qword [rbp + 0xf]
cmp rax, 8
jb 0x1400183bd
mov rcx, qword [rbp - 9]
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, rdi
ja 0x140018439
add rdx, rdx
cmp rdx, 0x1000
jb 0x1400183b8
lea r8, [rdx + 0x27]
cmp r8, rdx
jbe 0x140018439
mov rdx, r8
test al, 0x1f
jne 0x140018439
mov rcx, qword [rcx - 8]
cmp rcx, rax
jae 0x140018439
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
ja 0x140018439
call fcn.14003068c
mov rax, qword [rbp + 0x2f]
mov qword [rbp + 7], r12
mov qword [rbp + 0xf], 7
mov word [rbp - 9], r12w
cmp rax, 8
jb 0x14001841f
mov rcx, qword [rbp + 0x17]
lea rdx, [rax + 1]
mov rax, rcx
cmp rdx, rdi
ja 0x14001843f
add rdx, rdx
cmp rdx, 0x1000
jb 0x14001841a
lea r8, [rdx + 0x27]
cmp r8, rdx
jbe 0x14001843f
mov rdx, r8
test al, 0x1f
jne 0x14001843f
mov rcx, qword [rcx - 8]
cmp rcx, rax
jae 0x14001843f
sub rax, rcx
sub rax, 8
cmp rax, 0x1f
ja 0x14001843f
call fcn.14003068c
add rsp, 0x90
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140024dd0
int3
call fcn.14003ecdc
int3
call fcn.14003ecdc
int3
call fcn.14003ecdc
int3