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

Disassembly:
push rbp
push rsi
push rdi
push r14
lea rbp, [rsp - 0x4b8]
sub rsp, 0x5b8
mov rax, qword [0x180126010]
xor rax, rsp
mov qword [rbp + 0x4a0], rax
mov r14, rdx
mov rsi, rcx
mov rdx, rcx
mov rdi, r8
lea rcx, [rbp - 0x80]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.1800b4100
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800b4295
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4290
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a77
call fcn.1800cd2cc
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x5b0], r15
call fcn.18008ab60
mov rdx, rax
lea rcx, [rbp + 0x80]
call fcn.18008afb0
mov rdx, rsi
lea rcx, [rbp + 0x20]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.1800b4100
cmp qword [rbp + 0x98], 0x10
lea r8, [rbp + 0x80]
mov r9, qword [rbp + 0x90]
mov rcx, rax
cmovae r8, qword [rbp + 0x80]
call fcn.1800c44c0
xor r15d, r15d
lea rdx, [0x180129138]
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r15
movups xmmword [rsp + 0x60], xmm0
mov qword [rax + 0x18], 0xf
movups xmmword [rsp + 0x70], xmm1
mov byte [rax], r15b
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.18008aa30
mov r9, rax
lea r8, [rsp + 0x60]
lea rcx, [rsp + 0x20]
call fcn.1800c2600
cmp qword [r14 + 0x18], 0x10
mov rdx, r14
jb 0x1800b4352
mov rdx, qword [r14]
mov r8, qword [r14 + 0x10]
lea rcx, [rsp + 0x20]
call fcn.1800bf270
lea rdx, [0x1801293f8]
lea rcx, [rbp]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r15
movups xmmword [rbp - 0x40], xmm0
mov qword [rax + 0x18], 0xf
movups xmmword [rbp - 0x30], xmm1
mov byte [rax], r15b
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18008aa30
mov r9, rax
lea r8, [rbp - 0x40]
lea rcx, [rbp + 0x60]
call fcn.1800c2600
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x1800b43e5
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b43e0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a7d
call fcn.1800cd2cc
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800b4422
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b441d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a7d
call fcn.1800cd2cc
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r15b
cmp rdx, 0x10
jb 0x1800b4472
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b446d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a7d
call fcn.1800cd2cc
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800b44af
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b44aa
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a7d
call fcn.1800cd2cc
mov rdx, qword [rbp - 0x48]
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r15b
cmp rdx, 0x10
jb 0x1800b44fd
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b44f8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a7d
call fcn.1800cd2cc
mov rdx, qword [rbp - 0x68]
mov qword [rbp - 0x50], r15
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], r15b
cmp rdx, 0x10
jb 0x1800b4548
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4543
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a7d
call fcn.1800cd2cc
lea rdx, [rbp + 0xa0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x40], r15
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 0xf
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r15b
jne 0x1800b4580
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x40]
call fcn.1800bfba0
cmp qword [rbp + 0x98], 0x10
lea rdx, [rbp + 0x80]
mov r8, qword [rbp + 0x90]
lea rcx, [rsp + 0x40]
cmovae rdx, qword [rbp + 0x80]
call fcn.1800bf270
cmp qword [rbp + 0x78], 0x10
lea rdx, [rbp + 0x60]
mov r8, qword [rbp + 0x70]
lea rcx, [rsp + 0x20]
cmovae rdx, qword [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], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
call fcn.1800bf270
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x50], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800b4659
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4654
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a83
call fcn.1800cd2cc
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r15b
cmp rdx, 0x10
jb 0x1800b46a9
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b46a4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a83
call fcn.1800cd2cc
cmp qword [rsi + 0x18], 0x10
mov rcx, rsi
jb 0x1800b46b6
mov rcx, qword [rsi]
mov qword [rsp + 0x5f8], rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x1800b48a1
test al, 0x10
je 0x1800b48a1
lea rdx, [rbp + 0x40]
lea rcx, [rbp]
call fcn.1800bf440
mov rdx, rsi
lea rcx, [rbp - 0x20]
mov rbx, rax
call fcn.1800bf440
mov rcx, rax
mov rdx, rbx
call fcn.18008cf90
cmp qword [rbp + 0x58], 0x10
lea rcx, [rbp + 0x40]
lea rdx, [0x180115130]
cmovae rcx, qword [rbp + 0x40]
call fcn.1800d8f08
test rax, rax
je 0x1800b48a1
mov rcx, rax
call fcn.1800d8f98
mov rcx, qword [rdi + 0x18]
mov rdx, rdi
cmp rcx, 0x10
jb 0x1800b4737
mov rdx, qword [rdi]
mov rax, qword [rdi + 0x10]
cmp rax, 1
jne 0x1800b4776
cmp byte [rdx], 0x30
jne 0x1800b4776
lea rdx, [rbp + 0x60]
lea rcx, [rbp]
call fcn.1800bf440
lea rdx, [rbp + 0x40]
mov rbx, rax
lea rcx, [rbp - 0x20]
call fcn.1800bf440
mov rcx, rax
mov rdx, rbx
call fcn.18008d270
mov rcx, qword [rdi + 0x18]
mov rax, qword [rdi + 0x10]
mov rdx, rdi
cmp rcx, 0x10
jb 0x1800b4782
mov rdx, qword [rdi]
cmp rax, 1
jne 0x1800b488e
cmp byte [rdx], 0x31
jne 0x1800b488e
lea rcx, [rbp - 0x80]
call fcn.18008c8f0
cmp qword [rbp + 0x78], 0x10
lea rdx, [rbp + 0x60]
mov r8, qword [rbp + 0x70]
mov rcx, rax
cmovae rdx, qword [rbp + 0x60]
call fcn.1800bf270
lea rdx, [rsp + 0x20]
mov r8d, 1
lea rcx, [rbp + 0x40]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], r15b
cmp qword [rsp + 0x38], 0x10
cmovae rdx, qword [rsp + 0x20]
cmp qword [rbp + 0x58], 0x10
cmovae rcx, qword [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800b4840
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b483b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a6b
call fcn.1800cd2cc
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r15b
cmp rdx, 0x10
jb 0x1800b488e
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4889
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a6b
call fcn.1800cd2cc
cmp qword [rbp + 0x58], 0x10
lea rcx, [rbp + 0x40]
cmovae rcx, qword [rbp + 0x40]
call fcn.1800d9174
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x1800b48dc
mov rcx, qword [rbp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b48d7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a71
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x78]
mov qword [rbp + 0x50], r15
mov qword [rbp + 0x58], 0xf
mov byte [rbp + 0x40], r15b
cmp rdx, 0x10
jb 0x1800b4927
mov rcx, qword [rbp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4922
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a71
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x98]
cmp rdx, 0x10
jb 0x1800b4968
mov rcx, qword [rbp + 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b4963
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800b4a71
call fcn.1800cd2cc
mov rdx, qword [rsi + 0x18]
cmp rdx, 0x10
jb 0x1800b49a2
mov rcx, qword [rsi]
inc rdx
cmp rdx, 0x1000
jb 0x1800b499d
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800b4a71
mov rcx, r8
call fcn.1800cd2cc
mov qword [rsi + 0x10], r15
mov qword [rsi + 0x18], 0xf
mov byte [rsi], r15b
mov rdx, qword [r14 + 0x18]
cmp rdx, 0x10
jb 0x1800b49eb
mov rcx, qword [r14]
inc rdx
cmp rdx, 0x1000
jb 0x1800b49e6
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800b4a71
mov rcx, r8
call fcn.1800cd2cc
mov qword [r14 + 0x10], r15
mov qword [r14 + 0x18], 0xf
mov byte [r14], r15b
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x1800b4a30
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x1800b4a2b
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800b4a71
mov rcx, r8
call fcn.1800cd2cc
mov rbx, qword [rsp + 0x5f8]
mov qword [rdi + 0x10], r15
mov byte [rdi], r15b
mov r15, qword [rsp + 0x5b0]
mov qword [rdi + 0x18], 0xf
mov rcx, qword [rbp + 0x4a0]
xor rcx, rsp
call fcn.1800cd010
add rsp, 0x5b8
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3