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

Disassembly:
push rbp
push rdi
push r12
push r15
lea rbp, [rsp - 0x4a8]
sub rsp, 0x5a8
mov rdi, rcx
xor r12d, r12d
lea rcx, [rbp - 0x80]
mov dword [rbp + 0x4d8], r12d
mov r15, rdx
call fcn.18008a730
mov rdx, rax
lea rcx, [rbp + 0x20]
call fcn.18008ab80
lea rdx, [0x180103e78]
lea rcx, [rbp - 0x80]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.18008a600
cmp qword [rbp + 0x38], 0x10
lea r8, [rbp + 0x20]
mov r9, qword [rbp + 0x30]
mov rcx, rax
cmovae r8, qword [rbp + 0x20]
call fcn.1800a9670
mov rdx, r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [r15 + 0x18], 0x10
jb 0x1800a1e3f
mov rdx, qword [r15]
mov r8, qword [r15 + 0x10]
lea rcx, [rsp + 0x20]
call fcn.1800a7730
lea rdx, [0x180103f38]
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008a600
mov rcx, qword [rbp - 0x48]
mov rdx, rax
mov r9, qword [rbp - 0x50]
mov r8, qword [rax + 0x10]
mov rax, rcx
sub rax, r9
cmp r8, rax
jbe 0x1800a1ec5
mov rax, qword [rdx + 0x18]
sub rax, r8
cmp rax, r9
jb 0x1800a1ec5
cmp rcx, 0x10
lea r8, [rbp - 0x60]
mov rcx, rdx
cmovae r8, qword [rbp - 0x60]
call fcn.1800a9670
jmp 0x1800a1ed8
cmp qword [rdx + 0x18], 0x10
jb 0x1800a1ecf
mov rdx, qword [rdx]
lea rcx, [rbp - 0x60]
call fcn.1800a7730
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov byte [rax], r12b
mov qword [rax + 0x18], 0xf
mov qword [rax + 0x10], r12
mov rdx, qword [rbp - 0x48]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp], xmm0
cmp rdx, 0x10
jb 0x1800a1f31
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a1f2c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f86
call fcn.1800afef0
mov rdx, qword [rsp + 0x38]
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], r12b
cmp rdx, 0x10
jb 0x1800a1f7e
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a1f79
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f86
call fcn.1800afef0
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r12b
cmp rdx, 0x10
jb 0x1800a1fce
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a1fc9
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f86
call fcn.1800afef0
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r12b
cmp rdx, 0x10
jb 0x1800a201e
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2019
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f86
call fcn.1800afef0
lea rdx, [rbp + 0xa0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x50], r12
mov r8, 0xffffffffffffffff
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r12b
inc r8
cmp byte [rax + r8], r12b
jne 0x1800a2051
lea rdx, [rbp + 0xa0]
lea rcx, [rsp + 0x40]
call fcn.1800a7f50
cmp qword [rbp + 0x38], 0x10
lea rdx, [rbp + 0x20]
mov r8, qword [rbp + 0x30]
lea rcx, [rsp + 0x40]
cmovae rdx, qword [rbp + 0x20]
call fcn.1800a7730
cmp qword [rbp + 0x18], 0x10
lea rdx, [rbp]
mov r8, qword [rbp + 0x10]
lea rcx, [rsp + 0x20]
cmovae rdx, qword [rbp]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
call fcn.1800a7730
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800a211e
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2119
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f8c
call fcn.1800afef0
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r12b
cmp rdx, 0x10
jb 0x1800a216e
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2169
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f8c
call fcn.1800afef0
cmp qword [rdi + 0x18], 0x10
mov rcx, rdi
jb 0x1800a217b
mov rcx, qword [rdi]
mov qword [rsp + 0x5d0], rbx
mov qword [rsp + 0x5e0], rsi
mov qword [rsp + 0x5a0], r14
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x1800a2e05
test al, 0x10
je 0x1800a2e05
lea rdx, [0x1801039b8]
lea rcx, [rbp + 0x80]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a21d6
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rsp + 0x20]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x38], 0x10
cmovae rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x1800a2228
mov ebx, 3
jmp 0x1800a234a
test al, 0x10
jne 0x1800a2236
mov ebx, 3
jmp 0x1800a234a
lea rdx, [0x180103f18]
lea rcx, [rbp + 0x60]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a2260
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rsp + 0x40]
lea rdx, [0x1800f1da0]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x58], 0x10
cmovae rcx, qword [rsp + 0x40]
call fcn.1800b7fc8
test rax, rax
je 0x1800a2345
mov rcx, rax
call fcn.1800b8058
lea rdx, [0x180103c38]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a22e3
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rbp - 0x60]
lea rdx, [0x1800f1da0]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rbp - 0x48], 0x10
cmovae rcx, qword [rbp - 0x60]
call fcn.1800b7fc8
test rax, rax
je 0x1800a233e
mov rcx, rax
call fcn.1800b8058
mov sil, 1
mov ebx, 0x3f
jmp 0x1800a234d
mov ebx, 0x3f
jmp 0x1800a234a
mov ebx, 0xf
xor sil, sil
test bl, 0x20
je 0x1800a23a0
mov rdx, qword [rbp - 0x48]
and ebx, 0xffffffdf
cmp rdx, 0x10
jb 0x1800a2390
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a238b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f92
call fcn.1800afef0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], r12b
test bl, 0x10
je 0x1800a23f3
mov rdx, qword [rbp - 8]
and ebx, 0xffffffef
cmp rdx, 0x10
jb 0x1800a23e3
mov rcx, qword [rbp - 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a23de
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f92
call fcn.1800afef0
mov qword [rbp - 0x10], r12
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], r12b
test bl, 8
je 0x1800a2448
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800a2435
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2430
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f92
call fcn.1800afef0
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r12b
test bl, 4
je 0x1800a249d
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800a248a
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2485
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f92
call fcn.1800afef0
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], r12b
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800a24da
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a24d5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f92
call fcn.1800afef0
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r12b
cmp rdx, 0x10
jb 0x1800a2528
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2523
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f92
call fcn.1800afef0
test sil, sil
je 0x1800a2e05
lea rdx, [0x180104038]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x20]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a255b
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rdx, [0x1801039b8]
lea rcx, [rbp + 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a25af
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x20]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
call fcn.18008d3f0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800a2623
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a261e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f98
call fcn.1800afef0
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], r12b
cmp rdx, 0x10
jb 0x1800a2673
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a266e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f98
call fcn.1800afef0
lea rdx, [0x180103d78]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a269c
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rbx, [rsp + 0x40]
lea rdx, [0x180103f18]
lea rcx, [rbp + 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x58], 0x10
cmovae rbx, qword [rsp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a2703
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x38], 0x10
cmovae rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800a278c
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2787
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f9e
call fcn.1800afef0
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r12b
cmp rdx, 0x10
jb 0x1800a27dc
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a27d7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f9e
call fcn.1800afef0
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], r12b
cmp rdx, 0x10
jb 0x1800a282c
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2827
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f9e
call fcn.1800afef0
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r12b
cmp rdx, 0x10
jb 0x1800a287a
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2875
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f9e
call fcn.1800afef0
lea rdx, [0x180103d38]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a28a3
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rbx, [rsp + 0x40]
lea rdx, [0x180103af8]
lea rcx, [rbp + 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x58], 0x10
cmovae rbx, qword [rsp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a290a
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rbx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x38], 0x10
cmovae rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800a2993
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a298e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fa4
call fcn.1800afef0
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r12b
cmp rdx, 0x10
jb 0x1800a29e3
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a29de
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fa4
call fcn.1800afef0
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x70], r12
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], r12b
cmp rdx, 0x10
jb 0x1800a2a33
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2a2e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fa4
call fcn.1800afef0
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], r12b
cmp rdx, 0x10
jb 0x1800a2a81
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2a7c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fa4
call fcn.1800afef0
movdqa xmm0, xmmword [0x1800f28b0]
lea rdx, [0x1800f2610]
mov r8d, 3
mov byte [rsp + 0x60], r12b
lea rcx, [rsp + 0x60]
movdqu xmmword [rsp + 0x70], xmm0
call fcn.1800a7f50
cmp qword [rbp - 0x28], 0x10
lea r14, [rbp - 0x40]
mov rsi, qword [rbp - 0x30]
cmovae r14, qword [rbp - 0x40]
cmp rsi, 0x10
jae 0x1800a2ad7
movups xmm0, xmmword [r14]
mov qword [rsp + 0x38], 0xf
movups xmmword [rsp + 0x20], xmm0
jmp 0x1800a2b53
movabs rax, 0x7fffffffffffffff
mov rbx, rsi
or rbx, 0xf
cmp rbx, rax
cmova rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800a2b2b
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800a2faa
mov rcx, rax
call fcn.1800afef8
mov rcx, rax
test rax, rax
je 0x1800a2fb0
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800a2b3a
test rcx, rcx
je 0x1800a2b37
call fcn.1800afef8
jmp 0x1800a2b3a
mov rax, r12
lea r8, [rsi + 1]
mov qword [rsp + 0x20], rax
mov rdx, r14
mov rcx, rax
call fcn.1800b2f60
mov qword [rsp + 0x38], rbx
lea rdx, [0x180103ab8]
mov qword [rsp + 0x30], rsi
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a2b81
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x80]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r12
movups xmmword [rbp - 0x80], xmm0
mov qword [rax + 0x18], 0xf
movups xmmword [rbp - 0x70], xmm1
mov byte [rax], r12b
call fcn.18008c9d0
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x1800a2bf9
mov rcx, qword [rbp - 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2bf4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fb0
call fcn.1800afef0
cmp qword [rbp - 0x28], 0x10
lea rcx, [rbp - 0x40]
lea rdx, [0x1800f1da0]
cmovae rcx, qword [rbp - 0x40]
call fcn.1800b7fc8
test rax, rax
je 0x1800a2c5b
mov rcx, rax
call fcn.1800b8058
lea rdx, [rbp]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
lea rdx, [rbp - 0x40]
mov rbx, rax
lea rcx, [rbp + 0x60]
call fcn.1800a79d0
mov rcx, rax
mov rdx, rbx
call fcn.18008cd90
cmp qword [rbp - 0x28], 0x10
lea rcx, [rbp - 0x40]
cmovae rcx, qword [rbp - 0x40]
call fcn.1800b82e4
lea rdx, [0x180103ab8]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rbp - 0x80]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a2c84
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rsp + 0x20]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
cmp qword [rsp + 0x38], 0x10
cmovae rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x1800a2cd2
xor bl, bl
jmp 0x1800a2cd8
shr bl, 4
and bl, 1
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x1800a2d15
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2d10
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fb6
call fcn.1800afef0
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], r12b
cmp rdx, 0x10
jb 0x1800a2d63
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2d5e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2fb6
call fcn.1800afef0
test bl, bl
je 0x1800a2e05
lea rdx, [0x180103ab8]
lea rcx, [rbp + 0x40]
call fcn.1800a79d0
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.18008a600
cmp qword [rdi + 0x18], 0x10
mov r8, rdi
jb 0x1800a2d95
mov r8, qword [rdi]
mov r9, qword [rdi + 0x10]
mov rcx, rax
call fcn.1800a9670
lea rcx, [rbp - 0x80]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
call fcn.18008d5a0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800a2e05
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2e00
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f7a
call fcn.1800afef0
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x1800a2e40
mov rcx, qword [rbp - 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2e3b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f80
call fcn.1800afef0
mov rdx, qword [rbp + 0x18]
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], r12b
cmp rdx, 0x10
jb 0x1800a2e8b
mov rcx, qword [rbp]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2e86
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f80
call fcn.1800afef0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x1800a2ec6
mov rcx, qword [rbp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800a2ec1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800a2f80
call fcn.1800afef0
mov rdx, qword [rdi + 0x18]
cmp rdx, 0x10
jb 0x1800a2f00
mov rcx, qword [rdi]
inc rdx
cmp rdx, 0x1000
jb 0x1800a2efb
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800a2f80
mov rcx, r8
call fcn.1800afef0
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], 0xf
mov byte [rdi], r12b
mov rdx, qword [r15 + 0x18]
cmp rdx, 0x10
jb 0x1800a2f45
mov rcx, qword [r15]
inc rdx
cmp rdx, 0x1000
jb 0x1800a2f40
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800a2f80
mov rcx, r8
call fcn.1800afef0
mov rsi, qword [rsp + 0x5e0]
mov rbx, qword [rsp + 0x5d0]
mov r14, qword [rsp + 0x5a0]
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], 0xf
mov byte [r15], r12b
add rsp, 0x5a8
pop r15
pop r12
pop rdi
pop rbp
ret
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3
call fcn.1800893c0
int3
call fcn.1800bb0c0
int3
call fcn.1800bb0c0
int3