Function at 0x1800b4200
Capabilities:
Check if file exists
Get common file path
Get file attributes

Disassembly:
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x450]
sub rsp, 0x550
mov rax, qword [0x180124010]
xor rax, rsp
mov qword [rbp + 0x440], rax
lea rcx, [rsp + 0x60]
call fcn.180089880
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.180089cd0
lea rdx, [0x1801269b8]
lea rcx, [rsp + 0x60]
call fcn.1800bd4e0
mov rdx, rax
lea rcx, [rbp]
call fcn.180089750
lea rcx, [rsp + 0x40]
mov rbx, rax
call fcn.18008c300
mov r8, qword [rbx + 0x10]
mov rcx, rax
mov rdx, qword [rax + 0x18]
mov r9, qword [rax + 0x10]
mov rax, rdx
sub rax, r9
cmp r8, rax
jbe 0x1800b42a0
mov rax, qword [rbx + 0x18]
sub rax, r8
cmp rax, r9
jb 0x1800b42a0
cmp rdx, 0x10
jb 0x1800b4293
mov rcx, qword [rcx]
mov r8, rcx
mov rcx, rbx
call fcn.1800c2200
jmp 0x1800b42b2
cmp qword [rbx + 0x18], 0x10
jb 0x1800b42aa
mov rbx, qword [rbx]
mov rdx, rbx
call fcn.1800bd330
movups xmm0, xmmword [rax]
xor edi, edi
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov byte [rax], dil
mov qword [rax + 0x18], 0xf
mov qword [rax + 0x10], rdi
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800b430f
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b430a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49a9
call fcn.1800caa30
mov rdx, qword [rbp + 0x18]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
cmp rdx, 0x10
jb 0x1800b435d
mov rcx, qword [rbp]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4358
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49a9
call fcn.1800caa30
lea rdx, [0x180127298]
lea rcx, [rbp - 0x80]
call fcn.1800bd4e0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.180089750
cmp qword [rbp + 0x38], 0x10
lea r8, [rbp + 0x20]
mov r9, qword [rbp + 0x30]
mov rcx, rax
cmovae r8, qword [rbp + 0x20]
call fcn.1800c2200
lea rdx, [0x180127098]
lea rcx, [rbp - 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
call fcn.1800bd4e0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.180089750
mov rcx, qword [rsp + 0x38]
mov rdx, rax
mov r9, qword [rsp + 0x30]
mov r8, qword [rax + 0x10]
mov rax, rcx
sub rax, r9
cmp r8, rax
jbe 0x1800b4412
mov rax, qword [rdx + 0x18]
sub rax, r8
cmp rax, r9
jb 0x1800b4412
cmp rcx, 0x10
lea r8, [rsp + 0x20]
mov rcx, rdx
cmovae r8, qword [rsp + 0x20]
call fcn.1800c2200
jmp 0x1800b4426
cmp qword [rdx + 0x18], 0x10
jb 0x1800b441c
mov rdx, qword [rdx]
lea rcx, [rsp + 0x20]
call fcn.1800bd330
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov byte [rax], 0
mov qword [rax + 0x18], 0xf
mov qword [rax + 0x10], rdi
mov rdx, qword [rsp + 0x38]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
cmp rdx, 0x10
jb 0x1800b4481
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b447c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49af
call fcn.1800caa30
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], 0
cmp rdx, 0x10
jb 0x1800b44d1
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b44cc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49af
call fcn.1800caa30
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
cmp rdx, 0x10
jb 0x1800b4521
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b451c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49af
call fcn.1800caa30
lea rdx, [rbp + 0x40]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rax, [rbp + 0x40]
mov qword [rsp + 0x30], rdi
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], 0
nop
inc r8
cmp byte [rax + r8], 0
jne 0x1800b4550
lea rdx, [rbp + 0x40]
lea rcx, [rsp + 0x20]
call fcn.1800bdba0
cmp qword [rbp + 0x18], 0x10
lea rdx, [rbp]
mov r8, qword [rbp + 0x10]
lea rcx, [rsp + 0x20]
cmovae rdx, qword [rbp]
call fcn.1800bd330
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], rdi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800b45df
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b45da
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49b5
call fcn.1800caa30
cmp qword [rbp - 8], 0x10
lea rcx, [rbp - 0x20]
mov qword [rsp + 0x570], rsi
cmovae rcx, qword [rbp - 0x20]
mov qword [rsp + 0x578], r14
mov qword [rsp + 0x580], r15
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x1800b486d
test al, 0x10
je 0x1800b486d
lea rdx, [0x180127758]
lea rcx, [rbp - 0x60]
call fcn.1800bd4e0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.180089750
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008b670
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800b4682
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b467d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49bb
call fcn.1800caa30
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp qword [rbp - 0x28], 0x10
lea r14, [rbp - 0x40]
mov rsi, qword [rbp - 0x30]
movabs r15, 0x7fffffffffffffff
cmovae r14, qword [rbp - 0x40]
cmp rsi, 0x10
jae 0x1800b46c3
movups xmm0, xmmword [r14]
mov qword [rsp + 0x38], 0xf
movups xmmword [rsp + 0x20], xmm0
jmp 0x1800b4735
mov rbx, rsi
or rbx, 0xf
cmp rbx, r15
cmova rbx, r15
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800b470d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800b49c1
mov rcx, rax
call fcn.1800caa38
mov rcx, rax
test rax, rax
je 0x1800b49c7
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800b471c
test rcx, rcx
je 0x1800b4719
call fcn.1800caa38
jmp 0x1800b471c
mov rax, rdi
lea r8, [rsi + 1]
mov qword [rsp + 0x20], rax
mov rdx, r14
mov rcx, rax
call fcn.1800ce0c0
mov qword [rsp + 0x38], rbx
cmp qword [rbp - 8], 0x10
lea r14, [rbp - 0x20]
mov qword [rsp + 0x30], rsi
mov rsi, qword [rbp - 0x10]
cmovae r14, qword [rbp - 0x20]
cmp rsi, 0x10
jae 0x1800b4766
movups xmm0, xmmword [r14]
mov qword [rsp + 0x58], 0xf
movups xmmword [rsp + 0x40], xmm0
jmp 0x1800b47d8
mov rbx, rsi
or rbx, 0xf
cmp rbx, r15
cmova rbx, r15
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800b47b0
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800b49c1
mov rcx, rax
call fcn.1800caa38
mov rcx, rax
test rax, rax
je 0x1800b49c7
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800b47bf
test rcx, rcx
je 0x1800b47bc
call fcn.1800caa38
jmp 0x1800b47bf
mov rax, rdi
lea r8, [rsi + 1]
mov qword [rsp + 0x40], rax
mov rdx, r14
mov rcx, rax
call fcn.1800ce0c0
mov qword [rsp + 0x58], rbx
lea rdx, [0x180126e78]
mov qword [rsp + 0x50], rsi
lea rcx, [rbp - 0x60]
call fcn.1800bd4e0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.180089750
mov r8, rax
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.18008bbe0
cmp qword [rbp - 0x28], 0x10
lea rcx, [rbp - 0x40]
lea rdx, [0x180112c10]
cmovae rcx, qword [rbp - 0x40]
call fcn.1800d6948
test rax, rax
je 0x1800b486d
mov rcx, rax
call fcn.1800d69d8
lea rdx, [rbp]
lea rcx, [rbp - 0x60]
call fcn.1800bd4e0
lea rdx, [rbp - 0x40]
mov rbx, rax
lea rcx, [rbp - 0x80]
call fcn.1800bd4e0
mov rcx, rax
mov rdx, rbx
call fcn.18008bf90
cmp qword [rbp - 0x28], 0x10
lea rcx, [rbp - 0x40]
cmovae rcx, qword [rbp - 0x40]
call fcn.1800d6bb4
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x1800b48a8
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b48a3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49a3
call fcn.1800caa30
mov rdx, qword [rbp + 0x18]
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
cmp rdx, 0x10
jb 0x1800b48f3
mov rcx, qword [rbp]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b48ee
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49a3
call fcn.1800caa30
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x1800b492a
mov rcx, qword [rbp - 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4925
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49a3
call fcn.1800caa30
mov rdx, qword [rbp + 0x38]
mov qword [rbp - 0x10], rdi
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
cmp rdx, 0x10
jb 0x1800b4971
mov rcx, qword [rbp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b496c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b49a3
call fcn.1800caa30
mov r14, qword [rsp + 0x578]
mov rsi, qword [rsp + 0x570]
mov r15, qword [rsp + 0x580]
mov rcx, qword [rbp + 0x440]
xor rcx, rsp
call fcn.1800ca770
add rsp, 0x550
pop rdi
pop rbx
pop rbp
ret
call fcn.1800d9c90
int3
call fcn.1800d9c90
int3
call fcn.1800d9c90
int3
call fcn.1800d9c90
int3
call fcn.1800d9c90
int3
call fcn.1800883a0
int3
call fcn.1800d9c90
int3