Function at 0x1800bbd00
Capabilities:
Check if file exists
Copy file
Create directory
Enumerate files on windows
Get common file path
Get file attributes

Disassembly:
push rbp
push rsi
push rdi
push r15
lea rbp, [rsp - 0x728]
sub rsp, 0x828
mov rax, qword [0x180126010]
xor rax, rsp
mov qword [rbp + 0x710], rax
xor r15d, r15d
mov qword [rbp - 0x30], rcx
lea rax, [rbp + 0x310]
mov dword [rsp + 0x60], r15d
xor ecx, ecx
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov edi, r15d
call qword [sym.imp.SHELL32.dll_SHGetFolderPathA]
mov rsi, 0xffffffffffffffff
mov qword [rsp + 0x40], r15
mov r8, rsi
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 0xf
lea rax, [rbp + 0x310]
inc r8
cmp byte [rax + r8], dil
jne 0x1800bbd75
lea rdx, [rbp + 0x310]
lea rcx, [rsp + 0x40]
call fcn.1800bfba0
mov r8d, 1
lea rdx, [0x1801150b8]
lea rcx, [rsp + 0x40]
call fcn.1800bf270
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x78], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x88], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800bbe04
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bbdff
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5e1
call fcn.1800cd2cc
lea rcx, [rbp - 0x50]
call fcn.18008ab60
mov rdx, rax
lea rcx, [rbp + 0x178]
call fcn.18008afb0
lea rdx, [0x180129778]
lea rcx, [rbp - 0x50]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.18008aa30
cmp qword [rbp + 0x190], 0x10
lea r8, [rbp + 0x178]
mov r9, qword [rbp + 0x188]
mov rcx, rax
cmovae r8, qword [rbp + 0x178]
call fcn.1800c44c0
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
mov rdx, qword [rbp - 0x60]
movups xmmword [rbp + 0x138], xmm0
movups xmmword [rbp + 0x148], xmm1
cmp rdx, 0x10
jb 0x1800bbebd
mov rcx, qword [rbp - 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bbeb8
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5e7
call fcn.1800cd2cc
lea rdx, [rbp + 0x310]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rax, [rbp + 0x310]
mov qword [rsp + 0x40], r15
mov r8, rsi
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 0xf
nop dword [rax]
inc r8
cmp byte [rax + r8], dil
jne 0x1800bbef0
lea rdx, [rbp + 0x310]
lea rcx, [rsp + 0x40]
call fcn.1800bfba0
cmp qword [rbp + 0x150], 0x10
lea rdx, [rbp + 0x138]
mov r8, qword [rbp + 0x148]
lea rcx, [rsp + 0x40]
cmovae rdx, qword [rbp + 0x138]
call fcn.1800bf270
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x118], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x128], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], dil
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800bbf93
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bbf8e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5ed
call fcn.1800cd2cc
lea rdx, [rbp + 0x310]
mov qword [rsp + 0x860], r12
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathA]
lea rax, [rbp + 0x310]
mov qword [rbp + 0x98], r15
mov r8, rsi
mov qword [rbp + 0xa8], r15
mov qword [rbp + 0xb0], 0xf
inc r8
cmp byte [rax + r8], dil
jne 0x1800bbfd0
lea rdx, [rbp + 0x310]
lea rcx, [rbp + 0x98]
call fcn.1800bfba0
lea rdx, [0x180129318]
lea rcx, [rbp - 0x50]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp + 0xf8]
call fcn.18008aa30
mov rcx, qword [rbp + 0xa8]
movabs r12, 0x7fffffffffffffff
mov rdx, qword [rbp + 0x108]
mov rax, r12
sub rax, rcx
cmp rax, rdx
jb 0x1800bd5f3
cmp qword [rbp + 0xb0], 0x10
lea r9, [rbp + 0x98]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xf8]
cmovae r9, qword [rbp + 0x98]
cmp qword [rbp + 0x110], 0x10
mov qword [rsp + 0x858], rbx
cmovae rax, qword [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
call fcn.1800c27f0
cmp qword [rsp + 0x58], 0x10
lea rcx, [rsp + 0x40]
cmovae rcx, qword [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x1800bc0a3
mov bl, 1
jmp 0x1800bc0ab
shr bl, 4
not bl
and bl, 1
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800bc0e8
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc0e3
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5f9
call fcn.1800cd2cc
test bl, bl
je 0x1800bc1aa
mov rcx, qword [rbp + 0xa8]
mov rax, r12
mov rdx, qword [rbp + 0x108]
sub rax, rcx
cmp rax, rdx
jb 0x1800bd5ff
cmp qword [rbp + 0xb0], 0x10
lea r9, [rbp + 0x98]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xf8]
cmovae r9, qword [rbp + 0x98]
cmp qword [rbp + 0x110], 0x10
cmovae rax, qword [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x40]
call fcn.1800c27f0
cmp qword [rsp + 0x58], 0x10
lea rcx, [rsp + 0x40]
cmovae rcx, qword [rsp + 0x40]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryA]
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800bc1aa
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc1a5
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd605
call fcn.1800cd2cc
mov rax, qword [rbp + 0x88]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 0xf
lea rcx, [rax - 1]
cmp rax, rcx
jb 0x1800bd60b
sub rax, rcx
lea rdx, [rbp + 0x78]
mov r8d, 1
cmp rax, r8
cmovb r8, rax
cmp qword [rbp + 0x90], 0x10
cmovae rdx, qword [rbp + 0x78]
add rdx, rcx
lea rcx, [rsp + 0x40]
call fcn.1800bfba0
mov rdx, qword [rsp + 0x58]
lea rax, [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
cmp rdx, 0x10
cmovae rax, rcx
cmp qword [rsp + 0x50], 1
jne 0x1800bc227
cmp byte [rax], 0x5c
jne 0x1800bc227
xor bl, bl
jmp 0x1800bc229
mov bl, 1
mov qword [rsp + 0x868], r13
mov qword [rsp + 0x820], r14
cmp rdx, 0x10
jb 0x1800bc26c
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc267
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rcx, qword [rbp + 0x88]
mov rax, r12
sub rax, rcx
test bl, bl
je 0x1800bc299
cmp rax, 2
jb 0x1800bd5db
mov qword [rsp + 0x30], 2
lea rax, [0x180115238]
jmp 0x1800bc2b3
cmp rax, 1
jb 0x1800bd5db
mov qword [rsp + 0x30], 1
lea rax, [0x18010e748]
cmp qword [rbp + 0x90], 0x10
lea r9, [rbp + 0x78]
mov qword [rsp + 0x28], rax
cmovae r9, qword [rbp + 0x78]
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x78]
call fcn.1800c27f0
mov rdx, qword [rbp + 0x90]
cmp rdx, 0x10
jb 0x1800bc315
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc310
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
movups xmm1, xmmword [rbp - 0x68]
lea rcx, [rbp + 0x78]
movups xmm0, xmmword [rbp - 0x78]
lea rdx, [rbp + 0x1d0]
movups xmmword [rbp + 0x88], xmm1
cmp qword [rbp + 0x90], 0x10
movups xmmword [rbp + 0x78], xmm0
cmovae rcx, qword [rbp + 0x78]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov rbx, rax
mov qword [rbp - 0x58], rax
mov dword [rsp + 0x60], r15d
mov qword [rbp + 0x158], r15
lea rax, [rbp + 0x1fc]
mov qword [rbp + 0x168], r15
mov r8, rsi
mov qword [rbp + 0x170], 0xf
inc r8
cmp byte [rax + r8], 0
jne 0x1800bc375
lea rdx, [rbp + 0x1fc]
lea rcx, [rbp + 0x158]
call fcn.1800bfba0
test byte [rbp + 0x1d0], 0x10
jne 0x1800bcd90
mov rax, qword [rbp + 0x88]
lea rdx, [rbp + 0x78]
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 0xf
lea r8, [rax - 2]
cmp rax, r8
cmovb r8, rax
cmp qword [rbp + 0x90], 0x10
cmovae rdx, qword [rbp + 0x78]
call fcn.1800bfba0
mov r8d, 1
lea rdx, [0x1801150b8]
lea rcx, [rsp + 0x40]
call fcn.1800bf270
cmp qword [rbp + 0x170], 0x10
lea rdx, [rbp + 0x158]
mov r8, qword [rbp + 0x168]
lea rcx, [rsp + 0x68]
cmovae rdx, qword [rbp + 0x158]
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
call fcn.1800bf270
mov qword [rbp + 0xd8], r15
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], r15
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe8], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 0x80]
cmp rdx, 0x10
jb 0x1800bc4c1
mov rcx, qword [rsp + 0x68]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc4bc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd611
call fcn.1800cd2cc
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], 0xf
mov byte [rsp + 0x68], 0
cmp rdx, 0x10
jb 0x1800bc510
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc50b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd611
call fcn.1800cd2cc
cmp qword [rbp + 0xf0], 0x10
lea r14, [rbp + 0xd8]
mov rsi, qword [rbp + 0xe8]
cmovae r14, qword [rbp + 0xd8]
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x78], r15
mov qword [rbp - 0x80], r15
cmp rsi, 0x10
jae 0x1800bc555
movups xmm0, xmmword [r14]
mov qword [rbp - 0x80], 0xf
movups xmmword [rsp + 0x68], xmm0
jmp 0x1800bc5c6
mov rbx, rsi
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800bc59f
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800bd61d
mov rcx, rax
call fcn.1800cd2d4
mov rcx, rax
test rax, rax
je 0x1800bd617
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800bc5ae
test rcx, rcx
je 0x1800bc5ab
call fcn.1800cd2d4
jmp 0x1800bc5ae
mov rax, r15
lea r8, [rsi + 1]
mov qword [rsp + 0x68], rax
mov rdx, r14
mov rcx, rax
call fcn.1800d03a0
mov qword [rbp - 0x80], rbx
lea rdx, [rsp + 0x68]
mov qword [rsp + 0x78], rsi
lea rcx, [rbp - 0x50]
call fcn.1800bb9e0
mov rdx, rax
lea rcx, [rbp + 0xb8]
call fcn.18008a520
mov rsi, qword [0x180128f48]
lea r14, [0x180128f38]
or edi, 1
cmp qword [0x180128f50], 0x10
cmovae r14, qword [0x180128f38]
cmp rsi, 0x10
jae 0x1800bc623
movups xmm0, xmmword [r14]
mov qword [rsp + 0x58], 0xf
movups xmmword [rsp + 0x40], xmm0
jmp 0x1800bc695
mov rbx, rsi
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800bc66d
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800bd623
mov rcx, rax
call fcn.1800cd2d4
mov rcx, rax
test rax, rax
je 0x1800bd629
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800bc67c
test rcx, rcx
je 0x1800bc679
call fcn.1800cd2d4
jmp 0x1800bc67c
mov rax, r15
lea r8, [rsi + 1]
mov qword [rsp + 0x40], rax
mov rdx, r14
mov rcx, rax
call fcn.1800d03a0
mov qword [rsp + 0x58], rbx
lea rdx, [rsp + 0x40]
mov qword [rsp + 0x50], rsi
lea rcx, [rbp - 0x50]
call fcn.18008aa30
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800bc6b5
mov rdx, qword [rax]
mov r13, qword [rbp + 0xd0]
lea rcx, [rbp + 0xb8]
mov r15, qword [rbp + 0xb8]
cmp r13, 0x10
mov rbx, qword [rbp + 0xc8]
cmovae rcx, r15
cmp rbx, qword [rax + 0x10]
jne 0x1800bc6ef
mov r8, rbx
call fcn.1800d1770
test eax, eax
je 0x1800bc82f
lea rdx, [0x1801299b8]
or edi, 2
lea rcx, [rbp + 0x38]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp - 0x78]
call fcn.18008aa30
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800bc71b
mov rdx, qword [rax]
cmp r13, 0x10
lea rcx, [rbp + 0xb8]
cmovae rcx, r15
cmp rbx, qword [rax + 0x10]
jne 0x1800bc740
mov r8, rbx
call fcn.1800d1770
test eax, eax
je 0x1800bc82f
lea rdx, [0x180129298]
or edi, 4
lea rcx, [rbp + 0x58]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp - 8]
call fcn.18008aa30
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800bc76c
mov rdx, qword [rax]
cmp r13, 0x10
lea rcx, [rbp + 0xb8]
cmovae rcx, r15
cmp rbx, qword [rax + 0x10]
jne 0x1800bc791
mov r8, rbx
call fcn.1800d1770
test eax, eax
je 0x1800bc82f
lea rdx, [0x180129098]
or edi, 8
lea rcx, [rbp + 0x198]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.18008aa30
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800bc7c0
mov rdx, qword [rax]
cmp r13, 0x10
lea rcx, [rbp + 0xb8]
cmovae rcx, r15
cmp rbx, qword [rax + 0x10]
jne 0x1800bc7e1
mov r8, rbx
call fcn.1800d1770
test eax, eax
je 0x1800bc82f
lea rdx, [0x180128e38]
or edi, 0x10
lea rcx, [rbp + 0x18]
call fcn.1800bf440
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.18008aa30
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800bc80e
mov rdx, qword [rax]
cmp r13, 0x10
lea rcx, [rbp + 0xb8]
cmovae rcx, r15
cmp rbx, qword [rax + 0x10]
jne 0x1800bc833
mov r8, rbx
call fcn.1800d1770
test eax, eax
jne 0x1800bc833
mov bl, 1
jmp 0x1800bc835
xor bl, bl
test dil, 0x10
je 0x1800bc890
mov rdx, qword [rbp - 0x80]
and edi, 0xffffffef
cmp rdx, 0x10
jb 0x1800bc87a
mov rcx, qword [rsp + 0x68]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc875
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd629
call fcn.1800cd2cc
xor esi, esi
mov qword [rbp - 0x80], 0xf
mov qword [rsp + 0x78], rsi
mov byte [rsp + 0x68], sil
jmp 0x1800bc892
xor esi, esi
test dil, 8
je 0x1800bc8e6
mov rdx, qword [rbp - 0x10]
and edi, 0xfffffff7
cmp rdx, 0x10
jb 0x1800bc8d6
mov rcx, qword [rbp - 0x28]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc8d1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd629
call fcn.1800cd2cc
mov qword [rbp - 0x18], rsi
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
test dil, 4
je 0x1800bc93a
mov rdx, qword [rbp + 0x10]
and edi, 0xfffffffb
cmp rdx, 0x10
jb 0x1800bc92a
mov rcx, qword [rbp - 8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc925
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd629
call fcn.1800cd2cc
mov qword [rbp + 8], rsi
mov qword [rbp + 0x10], 0xf
mov byte [rbp - 8], 0
test dil, 2
je 0x1800bc98e
mov rdx, qword [rbp - 0x60]
and edi, 0xfffffffd
cmp rdx, 0x10
jb 0x1800bc97e
mov rcx, qword [rbp - 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc979
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd629
call fcn.1800cd2cc
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov rdx, qword [rbp - 0x38]
and edi, 0xfffffffe
cmp rdx, 0x10
jb 0x1800bc9cc
mov rcx, qword [rbp - 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bc9c7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd629
call fcn.1800cd2cc
test bl, bl
je 0x1800bcd00
mov rsi, qword [rbp + 0xe8]
lea r14, [rbp + 0xd8]
xor ebx, ebx
cmp qword [rbp + 0xf0], 0x10
mov qword [rsp + 0x68], rbx
cmovae r14, qword [rbp + 0xd8]
mov qword [rsp + 0x78], rbx
mov qword [rbp - 0x80], rbx
cmp rsi, 0x10
jae 0x1800bca1b
movups xmm0, xmmword [r14]
mov qword [rbp - 0x80], 0xf
movups xmmword [rsp + 0x68], xmm0
jmp 0x1800bca8d
mov rbx, rsi
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800bca65
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800bd635
mov rcx, rax
call fcn.1800cd2d4
mov rcx, rax
test rax, rax
je 0x1800bd62f
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800bca73
test rcx, rcx
je 0x1800bca71
call fcn.1800cd2d4
jmp 0x1800bca73
xor eax, eax
lea r8, [rsi + 1]
mov qword [rsp + 0x68], rax
mov rdx, r14
mov rcx, rax
call fcn.1800d03a0
mov qword [rbp - 0x80], rbx
xor ebx, ebx
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x78], rsi
call fcn.18008b3c0
cmp eax, 0x32000
jge 0x1800bcd00
cmp qword [rbp + 0xf0], 0x10
lea r14, [rbp + 0xd8]
mov rsi, qword [rbp + 0xe8]
cmovae r14, qword [rbp + 0xd8]
mov qword [rbp + 0xb8], rbx
mov qword [rbp + 0xc8], rbx
mov qword [rbp + 0xd0], rbx
cmp rsi, 0x10
jae 0x1800bcaf8
movups xmm0, xmmword [r14]
mov qword [rbp + 0xd0], 0xf
movups xmmword [rbp + 0xb8], xmm0
jmp 0x1800bcb6f
mov rbx, rsi
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800bcb42
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800bd63b
mov rcx, rax
call fcn.1800cd2d4
mov rcx, rax
test rax, rax
je 0x1800bd641
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800bcb50
test rcx, rcx
je 0x1800bcb4e
call fcn.1800cd2d4
jmp 0x1800bcb50
xor eax, eax
lea r8, [rsi + 1]
mov qword [rbp + 0xb8], rax
mov rdx, r14
mov rcx, rax
call fcn.1800d03a0
mov qword [rbp + 0xd0], rbx
xor ebx, ebx
mov rcx, qword [rbp + 0xa8]
mov rax, r12
mov rdx, qword [rbp + 0x108]
sub rax, rcx
mov qword [rbp + 0xc8], rsi
cmp rax, rdx
jb 0x1800bd647
cmp qword [rbp + 0xb0], 0x10
lea r9, [rbp + 0x98]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xf8]
cmovae r9, qword [rbp + 0x98]
cmp qword [rbp + 0x110], 0x10
cmovae rax, qword [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x78]
call fcn.1800c27f0
lea rdx, [rbp + 0xb8]
lea rcx, [rbp - 0x50]
call fcn.1800bbb70
mov r9, rax
lea r8, [rbp - 0x78]
lea rcx, [rsp + 0x40]
call fcn.1800c2600
cmp qword [rsp + 0x58], 0x10
lea rdx, [rsp + 0x40]
lea rcx, [rbp + 0xd8]
mov r8d, 1
cmovae rdx, qword [rsp + 0x40]
cmp qword [rbp + 0xf0], 0x10
cmovae rcx, qword [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800bcc6b
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bcc66
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd641
call fcn.1800cd2cc
mov rdx, qword [rbp - 0x60]
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], 0
cmp rdx, 0x10
jb 0x1800bccb9
mov rcx, qword [rbp - 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bccb4
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd641
call fcn.1800cd2cc
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x1800bccf4
mov rcx, qword [rbp - 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bccef
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd641
call fcn.1800cd2cc
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x60], eax
jmp 0x1800bcd04
mov eax, dword [rsp + 0x60]
cmp eax, 0x14
je 0x1800bcdee
cmp r13, 0x10
jb 0x1800bcd44
lea rdx, [r13 + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1800bcd3c
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd64d
mov rcx, r15
call fcn.1800cd2cc
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0x10
jb 0x1800bcd85
mov rcx, qword [rbp + 0xd8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bcd80
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd64d
call fcn.1800cd2cc
mov rbx, qword [rbp - 0x58]
xor r15d, r15d
lea rsi, [r15 - 1]
mov rdx, qword [rbp + 0x170]
cmp rdx, 0x10
jb 0x1800bcdd1
mov rcx, qword [rbp + 0x158]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bcdcc
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
lea rdx, [rbp + 0x1d0]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
test eax, eax
jne 0x1800bc352
jmp 0x1800bcec7
cmp r13, 0x10
jb 0x1800bce25
lea rdx, [r13 + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x1800bce1d
mov r15, qword [r15 - 8]
add rdx, 0x27
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd64d
mov rcx, r15
call fcn.1800cd2cc
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0x10
jb 0x1800bce66
mov rcx, qword [rbp + 0xd8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bce61
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd64d
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x170]
xor r15d, r15d
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], 0xf
mov byte [rbp + 0xd8], r15b
cmp rdx, 0x10
jb 0x1800bcec3
mov rcx, qword [rbp + 0x158]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bcebe
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd64d
call fcn.1800cd2cc
mov rbx, qword [rbp - 0x58]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindClose]
mov rcx, qword [rbp + 0xa8]
mov rax, r12
mov rdx, qword [rbp + 0x108]
sub rax, rcx
cmp rax, rdx
jb 0x1800bd653
cmp qword [rbp + 0xb0], 0x10
lea r9, [rbp + 0x98]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xf8]
cmovae r9, qword [rbp + 0x98]
cmp qword [rbp + 0x110], 0x10
cmovae rax, qword [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x78]
call fcn.1800c27f0
cmp qword [rbp - 0x60], 0x10
lea rcx, [rbp - 0x78]
cmovae rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x1800bcf52
xor bl, bl
jmp 0x1800bcf58
shr bl, 4
and bl, 1
mov rdx, qword [rbp - 0x60]
cmp rdx, 0x10
jb 0x1800bcf93
mov rcx, qword [rbp - 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bcf8e
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd659
call fcn.1800cd2cc
test bl, bl
je 0x1800bd123
cmp qword [rbp + 0x130], 0x10
lea rsi, [rbp + 0x118]
mov rdi, qword [rbp + 0x128]
cmovae rsi, qword [rbp + 0x118]
cmp rdi, 0x10
jae 0x1800bcfd2
movups xmm0, xmmword [rsi]
mov qword [rsp + 0x58], 0xf
movups xmmword [rsp + 0x40], xmm0
jmp 0x1800bd044
mov rbx, rdi
or rbx, 0xf
cmp rbx, r12
cmova rbx, r12
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800bd01c
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800bd65f
mov rcx, rax
call fcn.1800cd2d4
mov rcx, rax
test rax, rax
je 0x1800bd5d5
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x1800bd02b
test rcx, rcx
je 0x1800bd028
call fcn.1800cd2d4
jmp 0x1800bd02b
mov rax, r15
lea r8, [rdi + 1]
mov qword [rsp + 0x40], rax
mov rdx, rsi
mov rcx, rax
call fcn.1800d03a0
mov qword [rsp + 0x58], rbx
mov rcx, qword [rbp + 0xa8]
mov rax, r12
mov rdx, qword [rbp + 0x108]
sub rax, rcx
mov qword [rsp + 0x50], rdi
cmp rax, rdx
jb 0x1800bd5db
cmp qword [rbp + 0xb0], 0x10
lea r9, [rbp + 0x98]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xf8]
cmovae r9, qword [rbp + 0x98]
cmp qword [rbp + 0x110], 0x10
cmovae rax, qword [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x50]
call fcn.1800c27f0
lea rdx, [rsp + 0x40]
lea rcx, [rbp - 0x50]
call fcn.18008cf90
mov rcx, qword [rbp + 0xa8]
mov rdx, qword [rbp + 0x108]
sub r12, rcx
cmp r12, rdx
jb 0x1800bd665
cmp qword [rbp + 0xb0], 0x10
lea r9, [rbp + 0x98]
mov qword [rsp + 0x30], rdx
lea rax, [rbp + 0xf8]
cmovae r9, qword [rbp + 0x98]
cmp qword [rbp + 0x110], 0x10
cmovae rax, qword [rbp + 0xf8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x50]
call fcn.1800c27f0
lea rcx, [rbp - 0x50]
call fcn.18008da10
cmp qword [rbp + 0x130], 0x10
lea rcx, [rbp + 0x118]
lea rdx, [0x180115130]
cmovae rcx, qword [rbp + 0x118]
call fcn.1800d8f08
test rax, rax
je 0x1800bd39e
mov rcx, rax
call fcn.1800d8f98
lea rdx, [rbp + 0x118]
lea rcx, [rbp + 0x18]
call fcn.1800bf440
mov rbx, rax
mov rcx, rax
cmp qword [rax + 0x18], 0x10
jb 0x1800bd177
mov rcx, qword [rax]
lea rdx, [rbp + 0x198]
call fcn.1800db318
mov rdx, qword [rbx + 0x18]
test eax, eax
mov rdi, 0xffffffffffffffff
cmove edi, dword [rbp + 0x1ac]
cmp rdx, 0x10
jb 0x1800bd1cd
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x1800bd1c8
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800bd671
mov rcx, r8
call fcn.1800cd2cc
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
cmp edi, 1
jle 0x1800bd382
mov rdi, qword [rbp - 0x30]
mov rdx, rdi
mov rax, qword [rdi + 0x18]
cmp rax, 0x10
jb 0x1800bd1f9
mov rdx, qword [rdi]
mov rcx, qword [rdi + 0x10]
cmp rcx, 1
jne 0x1800bd241
cmp byte [rdx], 0x30
jne 0x1800bd241
lea rdx, [rbp + 0x138]
lea rcx, [rbp + 0x18]
call fcn.1800bf440
lea rdx, [rbp + 0x118]
mov rbx, rax
lea rcx, [rbp + 0x198]
call fcn.1800bf440
mov rcx, rax
mov rdx, rbx
call fcn.18008d270
mov rax, qword [rdi + 0x18]
mov rcx, qword [rdi + 0x10]
mov rdx, rdi
cmp rax, 0x10
jb 0x1800bd24d
mov rdx, qword [rdi]
cmp rcx, 1
jne 0x1800bd382
cmp byte [rdx], 0x31
jne 0x1800bd382
lea rcx, [rbp - 0x50]
call fcn.18008c8f0
cmp qword [rbp + 0x150], 0x10
lea rdx, [rbp + 0x138]
mov r8, qword [rbp + 0x148]
mov rcx, rax
cmovae rdx, qword [rbp + 0x138]
call fcn.1800bf270
lea rdx, [rbp + 0xb8]
mov r8d, 1
lea rcx, [rbp + 0x118]
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xb8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xc8], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
cmp qword [rbp + 0xd0], 0x10
cmovae rdx, qword [rbp + 0xb8]
cmp qword [rbp + 0x130], 0x10
cmovae rcx, qword [rbp + 0x118]
call qword [sym.imp.KERNEL32.dll_CopyFileA]
mov rdx, qword [rbp + 0xd0]
cmp rdx, 0x10
jb 0x1800bd32e
mov rcx, qword [rbp + 0xb8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd329
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd66b
call fcn.1800cd2cc
mov rdx, qword [rbp - 0x38]
mov qword [rbp + 0xc8], r15
mov qword [rbp + 0xd0], 0xf
mov byte [rbp + 0xb8], 0
cmp rdx, 0x10
jb 0x1800bd382
mov rcx, qword [rbp - 0x50]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd37d
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd66b
call fcn.1800cd2cc
cmp qword [rbp + 0x130], 0x10
lea rcx, [rbp + 0x118]
cmovae rcx, qword [rbp + 0x118]
call fcn.1800d9174
mov rdx, qword [rbp + 0x110]
cmp rdx, 0x10
jb 0x1800bd3df
mov rcx, qword [rbp + 0xf8]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd3da
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x1800bd420
mov rcx, qword [rbp + 0x98]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd41b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x130]
cmp rdx, 0x10
jb 0x1800bd461
mov rcx, qword [rbp + 0x118]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd45c
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x150]
mov qword [rbp + 0x128], r15
mov qword [rbp + 0x130], 0xf
mov byte [rbp + 0x118], 0
cmp rdx, 0x10
jb 0x1800bd4bb
mov rcx, qword [rbp + 0x138]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd4b6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x190]
cmp rdx, 0x10
jb 0x1800bd4fc
mov rcx, qword [rbp + 0x178]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd4f7
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rdx, qword [rbp + 0x90]
cmp rdx, 0x10
jb 0x1800bd53a
mov rcx, qword [rbp + 0x78]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800bd535
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800bd5d5
call fcn.1800cd2cc
mov rbx, qword [rbp - 0x30]
mov qword [rbp + 0x88], r15
mov qword [rbp + 0x90], 0xf
mov byte [rbp + 0x78], 0
mov rdx, qword [rbx + 0x18]
cmp rdx, 0x10
jb 0x1800bd58a
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x1800bd585
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800bd5d5
mov rcx, r8
call fcn.1800cd2cc
mov r13, qword [rsp + 0x868]
mov r14, qword [rsp + 0x820]
mov r12, qword [rsp + 0x860]
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rbx, qword [rsp + 0x858]
mov rcx, qword [rbp + 0x710]
xor rcx, rsp
call fcn.1800cd010
add rsp, 0x828
pop r15
pop rdi
pop rsi
pop rbp
ret
call fcn.1800dc358
int3
call fcn.180088c60
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.180088c60
int3
call fcn.1800dc358
int3
call fcn.180088c60
int3
call fcn.1800dc358
int3
call fcn.1800bfe50
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.180088bc0
int3
call fcn.180088bc0
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3
call fcn.180088bc0
int3
call fcn.180088bc0
int3
call fcn.1800dc358
int3
call fcn.180088c60
int3
call fcn.1800dc358
int3
call fcn.180088c60
int3
call fcn.1800dc358
int3
call fcn.180088bc0
int3
call fcn.180088c60
int3
call fcn.1800dc358
int3
call fcn.1800dc358
int3