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

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xa0
mov rax, qword [0x180091040]
xor rax, rsp
mov qword [rbp + 0x17], rax
mov rsi, rdx
mov rdi, rcx
mov qword [rbp - 0x51], rcx
xor eax, eax
mov r13, qword [0x1800923a0]
mov rbx, qword [0x180092398]
cmp rbx, r13
je 0x18003831a
nop dword [rax]
mov rdx, rbx
lea rcx, [rbp - 0x41]
call fcn.1800399a0
mov rdx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x180038289
mov rdx, qword [rsi]
lea rcx, [rbp - 0x41]
mov r15, qword [rbp - 0x29]
cmp r15, 0xf
seta r12b
mov rdi, qword [rbp - 0x41]
cmova rcx, rdi
mov r8, qword [rbp - 0x31]
cmp r8, qword [rsi + 0x10]
jne 0x1800382b9
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800382b9
mov r14b, 1
jmp 0x1800382bc
xor r14b, r14b
test r12b, r12b
je 0x1800382f2
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1800382ea
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18003845a
mov rcx, rdi
call fcn.18003c6d4
test r14b, r14b
jne 0x180038304
add rbx, 0x38
cmp rbx, r13
jne 0x180038270
mov r13, qword [0x1800923a0]
mov rdi, qword [rbp - 0x51]
xor eax, eax
cmp rbx, r13
jne 0x180038466
xorps xmm0, xmm0
movups xmmword [rbp - 0x21], xmm0
movdqa xmm1, xmmword [0x180089e80]
movdqu xmmword [rbp - 0x11], xmm1
mov byte [rbp - 0x21], 0
movdqu xmmword [rbp - 1], xmm0
mov qword [rbp + 0xf], rax
mov rdx, rsi
lea rcx, [rbp - 0x21]
call fcn.180039910
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x180038354
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x180038366
shr eax, 4
test al, 1
jne 0x18003836e
mov rcx, rdi
call fcn.180037040
mov r8, rsi
mov rdx, rdi
lea rcx, [rbp - 0x41]
call fcn.180039dd0
nop
mov rcx, rax
call fcn.180037040
nop
mov rdx, qword [rbp - 0x29]
cmp rdx, 0xf
jbe 0x1800383c5
inc rdx
mov rcx, qword [rbp - 0x41]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800383c0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1800383c0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18003c6d4
mov rbx, qword [0x1800923a0]
cmp rbx, qword [0x1800923a8]
je 0x180038408
mov qword [rbp - 0x51], rbx
lea rdx, [rbp - 0x21]
mov rcx, rbx
call fcn.1800399a0
nop
lea rcx, [rbx + 0x20]
lea rdx, [rbp - 1]
call fcn.180039640
nop
mov rax, qword [0x1800923a0]
add rax, 0x38
mov qword [0x1800923a0], rax
jmp 0x18003841b
lea r8, [rbp - 0x21]
mov rdx, rbx
call fcn.18003aed0
mov rax, qword [0x1800923a0]
lea rbx, [rax - 0x38]
lea rcx, [rbp - 1]
call fcn.1800395b0
mov rdx, qword [rbp - 9]
cmp rdx, 0xf
jbe 0x180038466
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180038461
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180038461
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18003c6d4
mov rax, rbx
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.18003c190
mov rbx, qword [rsp + 0xf0]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret