Function at 0x180066288
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xf0
mov qword [rsp + 0xa0], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov rax, qword [0x1800ba080]
xor rax, rsp
mov qword [rsp + 0xe8], rax
mov r14, r9
mov qword [rsp + 0x80], r9
mov qword [rsp + 0x98], r8
mov rbx, rdx
mov r13, rcx
mov rsi, qword [rsp + 0x150]
mov qword [r11 - 0x48], rsi
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x90], rax
xor edx, edx
mov r8d, 0x1000
call fcn.1800729a0
movabs r11, 0x706c646f70bfbbef
mov qword [r13], r11
mov dword [r13 + 8], 3
lea rcx, [r13 + 0xc]
mov r8d, 0x80
lea rdx, [0x1800bc420]
call qword [sym.imp.KERNEL32.dll_lstrcpynA]
lea rcx, [r13 + 0x8c]
mov r8d, 0x80
lea rdx, str._r_n_r_n_r_n
call qword [sym.imp.KERNEL32.dll_lstrcpynA]
lea rcx, [r13 + 0x10c]
mov r8d, 0x64
lea rdx, str._r_nN_A_r_n
call qword [sym.imp.KERNEL32.dll_lstrcpynA]
call fcn.180064860
mov dword [r13 + 0x184], eax
mov dword [rsp + 0x20], 6
lea r9, str.prehdr
mov r8d, 0x188
mov rdx, r13
lea rcx, [rsp + 0x38]
call fcn.180062344
cmp qword [rax + 0x20], 0x10
jb 0x18006639d
mov rax, qword [rax + 8]
jmp 0x1800663a1
add rax, 8
mov eax, dword [rax]
mov dword [r13 + 0x188], eax
cmp qword [rsp + 0x58], 0x10
jb 0x1800663bc
mov rcx, qword [rsp + 0x40]
call fcn.18006e998
lea r15, [r13 + 0x190]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetLocalTime]
mov rcx, qword [rbx + 0x20]
sub rcx, qword [rbx + 0x18]
movabs r8, 0x2aaaaaaaaaaaaaab
mov rax, r8
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov dword [r15 + 0x10], edx
xor r12d, r12d
mov rcx, qword [rbx + 0x20]
sub rcx, qword [rbx + 0x18]
mov rax, r8
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test edx, edx
jle 0x1800664a8
lea rdi, [r15 + 0x14]
mov r15, r8
movsxd rbp, r12d
cmp rbp, rdx
jb 0x180066431
call fcn.18006e940
lea rcx, [rbp + rbp*2]
shl rcx, 4
add rcx, qword [rbx + 0x18]
lea rdx, [rsp + 0x38]
call fcn.1800693d4
cmp qword [rax + 0x20], 0x10
jb 0x180066455
mov rcx, qword [rax + 8]
jmp 0x180066459
lea rcx, [rax + 8]
mov rax, qword [rcx]
mov qword [rdi], rax
movzx eax, word [rcx + 8]
mov word [rdi + 8], ax
cmp qword [rsp + 0x58], 0x10
jb 0x180066479
mov rcx, qword [rsp + 0x40]
call fcn.18006e998
inc r12d
add rdi, 0xa
mov rcx, qword [rbx + 0x20]
sub rcx, qword [rbx + 0x18]
mov rax, r15
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r12d, edx
jl 0x180066424
lea r15, [r13 + 0x190]
lea rdx, [rsp + 0x38]
mov rcx, rbx
call fcn.18006863c
nop
xor r12d, r12d
mov byte [rsp + 0x30], r12b
mov rdi, qword [rsp + 0x58]
mov rax, rdi
mov rbx, qword [rsp + 0x50]
sub rax, rbx
cmp rax, 0x40
jae 0x180066538
mov rbp, rdi
cmp rbx, rdi
jbe 0x1800664eb
call fcn.18006e940
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rbp
movaps xmm0, xmmword [rsp + 0x80]
movdqa xmmword [rsp + 0x70], xmm0
sub rbx, rdi
lea r9, [rsp + 0x30]
lea r8, [rbx + 0x40]
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x38]
call fcn.180068cd0
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
jmp 0x180066638
cmp rax, 0x40
jbe 0x180066638
mov rbp, rdi
cmp rbx, rdi
jbe 0x180066559
call fcn.18006e940
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
cmp rbx, rdi
jbe 0x180066563
call fcn.18006e940
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rbx
mov r8d, 0x40
lea rdx, [rsp + 0xa8]
lea rcx, [rsp + 0x70]
call fcn.180068b68
movdqu xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x70], xmm0
mov rbx, qword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
cmp rbx, r12
ja 0x1800665ad
mov rdi, qword [rsp + 0x58]
cmp r12, rdi
jbe 0x1800665bc
call fcn.18006e940
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
mov r14, qword [rsp + 0x38]
cmp rbx, rbp
ja 0x1800665cb
cmp rbp, rdi
jbe 0x1800665da
call fcn.18006e940
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
test r14, r14
je 0x1800665e6
cmp r14, qword [rsp + 0x38]
je 0x1800665f5
call fcn.18006e940
mov rdi, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x50]
cmp r12, rbp
je 0x18006662d
sub rdi, rbp
mov rdx, rdi
add rdi, r12
test rdx, rdx
jle 0x18006661b
mov r9, rdx
mov r8, rbp
mov rcx, r12
call fcn.18006e150
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x58], rdi
mov r14, qword [rsp + 0x80]
xor r12d, r12d
jmp 0x180066638
mov r14, qword [rsp + 0x80]
xor r12d, r12d
mov rbp, rbx
cmp rbx, rdi
jbe 0x18006664a
call fcn.18006e940
mov rbx, qword [rsp + 0x50]
cmp qword [rsp + 0x38], r12
jne 0x180066660
call fcn.18006e940
mov r11, r12
mov rbx, qword [rsp + 0x50]
jmp 0x180066668
mov rax, qword [rsp + 0x38]
mov r11, qword [rax]
cmp rbp, qword [r11 + 0x20]
jb 0x180066678
call fcn.18006e940
mov rbx, qword [rsp + 0x50]
lea rcx, [r15 + 0x72c]
mov rdx, rbp
mov r8d, 0x40
call fcn.18006f6e0
mov dword [r15 + 0x728], 0x63636573
cmp rbx, r12
je 0x1800666a5
mov rcx, rbx
call fcn.18006e998
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x60], r12
mov rcx, qword [rsp + 0x38]
call fcn.18006e998
mov rdx, qword [rsp + 0x90]
lea rcx, [rsp + 0xb8]
call fcn.1800648b4
nop
mov ebp, 0x80
mov r8, rbp
xor edx, edx
lea rcx, [r15 + 0x294]
call fcn.1800729a0
mov r8, qword [rsp + 0xd0]
lea eax, [rbp - 1]
cmp r8, rax
cmova r8, rax
lea rdx, [rsp + 0xc0]
lea edi, [rbp - 0x70]
cmp qword [rsp + 0xd8], rdi
cmovae rdx, qword [rsp + 0xc0]
lea rcx, [r15 + 0x294]
call fcn.18006f6e0
mov r11, qword [rsp + 0x98]
mov qword [r15 + 0x318], r11
mov qword [r15 + 0x320], r14
lea rcx, [r15 + 0x328]
mov r8d, ebp
lea rdx, [0x1800bf7a0]
call qword [sym.imp.KERNEL32.dll_lstrcpynW]
lea rcx, [r15 + 0x428]
mov r8d, ebp
lea rdx, [0x1800bf8a0]
call qword [sym.imp.KERNEL32.dll_lstrcpynW]
lea rcx, [r15 + 0x528]
mov r8d, ebp
lea rdx, [0x1800bf9a0]
call qword [sym.imp.KERNEL32.dll_lstrcpynW]
lea rcx, [r15 + 0x628]
lea r8d, [rbp - 0x6c]
lea rdx, [0x1800bfaa0]
call qword [sym.imp.KERNEL32.dll_lstrcpynA]
cmp qword [rsi + 0x18], rdi
jae 0x1800667b5
mov r8, rdi
lea rdx, [0x18009afb8]
mov rcx, rsi
call fcn.18003b1bc
cmp qword [rsi + 0x18], rdi
jb 0x18006679d
cmp qword [rsi + 0x20], rdi
jb 0x1800667c4
lea rbx, [rsi + 8]
mov rax, qword [rbx]
jmp 0x1800667cb
lea rbx, [rsi + 8]
mov rax, rbx
movdqu xmm0, xmmword [rax]
movdqu xmmword [r15 + 0x63c], xmm0
call fcn.180064860
mov dword [r13 + 0x18c], eax
mov edx, 0x190
imul eax, eax, 0x343fd
add eax, 0x269ec3
mov ecx, eax
shr ecx, 0x10
xor byte [rdx + r13], cl
inc rdx
cmp rdx, 0x1000
jl 0x1800667e9
cmp qword [rsp + 0xd8], rdi
jb 0x180066820
mov rcx, qword [rsp + 0xc0]
call fcn.18006e998
mov ebp, 0xf
mov qword [rsp + 0xd8], rbp
mov qword [rsp + 0xd0], r12
mov byte [rsp + 0xc0], r12b
cmp qword [rsi + 0x20], rdi
jb 0x18006684b
mov rcx, qword [rbx]
call fcn.18006e998
mov qword [rsi + 0x20], rbp
mov qword [rsi + 0x18], r12
mov byte [rbx], r12b
mov rcx, qword [rsp + 0xe8]
xor rcx, rsp
call fcn.18006e130
mov rbx, qword [rsp + 0x140]
add rsp, 0xf0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret