Function at 0x18001b0c0
Capabilities:
Check if file exists

Disassembly:
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2000]
mov eax, 0x2100
call fcn.18002aaf0
sub rsp, rax
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rsp + 0x2138], rbx
mov qword [rsp + 0x2140], rsi
mov qword [rsp + 0x2148], rdi
mov rax, qword [0x1800a21e8]
xor rax, rsp
mov qword [rbp + 0x1ff0], rax
mov r15, rcx
lea rbx, [rcx + 8]
mov rcx, rbx
cmp qword [rbx + 0x18], 8
jb 0x18001b125
mov rcx, qword [rbx]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x18001b5db
xor r12d, r12d
mov qword [rsp + 0x30], r12
cmp qword [rbx + 0x18], 8
jb 0x18001b145
mov rbx, qword [rbx]
lea r8, [0x18007b1c4]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.180055040
cmp qword [rsp + 0x30], r12
je 0x18001b5db
lea rdx, str..ACP
xor ecx, ecx
call fcn.1800599d4
xor edx, edx
mov r8d, 0x2000
lea rcx, [rbp - 0x10]
call fcn.180048230
mov r9d, 0x1000
lea r8, [rbp - 0x10]
lea rdx, [0x18007b1d0]
mov rcx, qword [rsp + 0x30]
call fcn.180021db0
cmp eax, 0xffffffff
je 0x18001b5cc
lea r13, [0x18007844c]
nop
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 7
mov word [rsp + 0x50], r12w
lea rax, [rbp - 0x10]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x18001b1d0
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x50]
call fcn.1800041c0
nop
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], 7
mov word [rbp - 0x70], r12w
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r12w
lea r10, [rsp + 0x50]
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x68]
cmp rsi, 8
cmovae r10, rdi
mov r14, qword [rsp + 0x60]
cmp r14, 1
jb 0x18001b571
lea r11, [r10 + r14*2]
mov rax, r10
nop word [rax + rax]
mov rcx, r11
sub rcx, rax
sar rcx, 1
je 0x18001b571
cmp word [rax], 0x5b
je 0x18001b25f
add rax, 2
sub rcx, 1
jmp 0x18001b249
test rax, rax
je 0x18001b571
mov r8d, 1
mov rdx, r13
mov r9, rax
sub r9, r13
nop word [rax + rax]
movzx ecx, word [rdx]
cmp word [r9 + rdx], cx
jne 0x18001b2ef
add rdx, 2
sub r8, 1
jne 0x18001b280
sub rax, r10
sar rax, 1
cmp rax, 0xffffffffffffffff
je 0x18001b571
lea r11, [rax + 1]
lea r9, [rsp + 0x50]
cmp rsi, 8
cmovae r9, rdi
lea rax, [r14 - 1]
cmp r11, rax
ja 0x18001b53c
lea r10, [r9 + r14*2]
lea rbx, [r9 + r11*2]
nop word [rax + rax]
mov rax, r10
sub rax, rbx
sar rax, 1
je 0x18001b53c
cmp word [rbx], 0x5d
je 0x18001b2f8
add rbx, 2
sub rax, 1
jmp 0x18001b2d9
add rax, 2
jmp 0x18001b240
test rbx, rbx
je 0x18001b53c
mov edx, 1
lea rax, [0x18007af08]
mov rcx, rax
mov r8, rbx
sub r8, rax
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [r8 + rcx], ax
jne 0x18001b533
add rcx, 2
sub rdx, 1
jne 0x18001b320
sub rbx, r9
sar rbx, 1
cmp rbx, 0xffffffffffffffff
je 0x18001b53c
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], r12w
cmp r14, r11
jb 0x18001b60b
mov r8, rbx
sub r8, r11
sub r14, r11
cmp r14, r8
cmovb r8, r14
lea rax, [rsp + 0x50]
cmp rsi, 8
cmovae rax, rdi
lea rdx, [rax + r11*2]
lea rcx, [rbp - 0x50]
call fcn.1800041c0
lea rcx, [rbp - 0x70]
call fcn.180003f60
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rbp - 0x60], xmm1
inc rbx
mov qword [rbp - 0x40], r12
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], r12w
mov rax, qword [rsp + 0x60]
cmp rax, rbx
jb 0x18001b62f
sub rax, rbx
mov r8, 0xffffffffffffffff
cmp rax, r8
cmovb r8, rax
lea rax, [rsp + 0x50]
cmp qword [rsp + 0x68], 8
cmovae rax, qword [rsp + 0x50]
lea rdx, [rax + rbx*2]
lea rcx, [rbp - 0x50]
call fcn.1800041c0
lea rcx, [rsp + 0x70]
call fcn.180003f60
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rbp - 0x80], xmm1
lea rdx, [rbp - 0x70]
lea rcx, [rbp - 0x50]
call fcn.180003c50
nop
lea rdx, [rsp + 0x70]
lea rcx, [rbp - 0x30]
call fcn.180003c50
nop
lea rdx, [rbp - 0x50]
lea rcx, [r15 + 0x48]
call fcn.180015ab0
lea r9, [rax + 0x20]
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, [rsp + 0x40]
lea rcx, [r15 + 0x48]
call fcn.1800164d0
nop
lea rcx, [rbp - 0x30]
call fcn.180003f60
lea rcx, [rbp - 0x50]
call fcn.180003f60
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x18001b4ab
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b4a5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001b623
call fcn.180029f54
nop
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x18001b4ec
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b4e6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001b629
call fcn.180029f54
nop
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x18001b5a8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001b5a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001b611
jmp 0x18001b5a3
add rbx, 2
jmp 0x18001b2d0
cmp rsi, 8
jb 0x18001b5a8
lea rdx, [rsi*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18001b5a0
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001b617
jmp 0x18001b5a0
cmp rsi, 8
jb 0x18001b5a8
lea rdx, [rsi*2 + 2]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18001b5a0
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001b61d
mov rcx, rdi
call fcn.180029f54
mov r9d, 0x1000
lea r8, [rbp - 0x10]
lea rdx, [0x18007b1d0]
mov rcx, qword [rsp + 0x30]
call fcn.180021db0
cmp eax, 0xffffffff
jne 0x18001b1b0
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x18001b5db
call fcn.18005047c
mov rcx, qword [rbp + 0x1ff0]
xor rcx, rsp
call fcn.18002a070
lea r11, [rsp + 0x2100]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1800069c0
nop
call fcn.18004bb24
int3
call fcn.18004bb24
int3
call fcn.18004bb24
nop
call fcn.18004bb24
nop
call fcn.18004bb24
nop
call fcn.1800069c0
int3