Function at 0x1400ccfab
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x2a8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x220], 0xfffffffffffffffe
mov r14, r9
mov rdi, r8
mov rsi, rcx
mov r8, qword [rbp + 0x290]
mov r9, qword [rbp + 0x298]
movups xmm0, xmmword [rdx]
mov qword [rbp + 0x210], rdx
movups xmm1, xmmword [rdx + 0x10]
lea rdx, [rbp + 0xc0]
movaps xmmword [rdx + 0x10], xmm1
movaps xmmword [rdx], xmm0
mov byte [rbp + 0x21f], 1
lea rcx, [rbp + 0x1c0]
call fcn.14008a7bc
mov qword [rbp + 0x1f8], rdi
mov byte [rbp + 0x21e], 1
lea rcx, [rbp + 0x188]
lea rdx, [rbp + 0x1c0]
call fcn.14008ab60
mov qword [rbp + 0x200], rsi
movzx eax, word [r14 + 0x60]
mov word [rbp + 0x20e], ax
mov r12w, word [r14 + 0x62]
movups xmm0, xmmword [r14 + 0x18]
movups xmm1, xmmword [r14 + 0x28]
lea rcx, [rbp - 0x50]
movups xmmword [rcx + 0x28], xmm1
movups xmmword [rcx + 0x18], xmm0
movups xmm0, xmmword [r14 + 0x38]
movups xmm1, xmmword [r14 + 0x48]
movups xmmword [rcx + 0x38], xmm0
movups xmmword [rcx + 0x48], xmm1
mov rax, qword [r14 + 0x58]
mov qword [rcx + 0x58], rax
mov r13w, word [r14 + 0x64]
mov bx, word [r14 + 0x66]
mov r15b, byte [r14 + 0x68]
mov dil, byte [r14 + 0x69]
mov rdx, r14
call fcn.14007dae9
lea rsi, [rbp - 0x50]
movzx eax, word [rbp + 0x20e]
mov word [rsi + 0x60], ax
mov word [rsi + 0x62], r12w
mov word [rsi + 0x64], r13w
mov word [rsi + 0x66], bx
mov byte [rsi + 0x68], r15b
mov byte [rsi + 0x69], dil
lea rdi, [rbp + 0x28]
mov byte [rdi + 0x90], 2
movabs rax, 0x8000000000000002
mov qword [rdi - 8], rax
mov ecx, 0xe
rep movsq qword [rdi], qword [rsi]
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0x20]
call fcn.1400cea6a
movabs rax, 0x7fffffffffffffff
add rax, qword [rbp + 0xc0]
cmp rax, 4
setb cl
cmp rax, 1
setne al
test cl, al
jne 0x1400cd12d
mov rdx, qword [rbp + 0xc8]
mov r8, qword [rbp + 0xd0]
lea rcx, [rbp + 0x188]
call fcn.14008a8f0
lea rcx, [rbp + 0xc0]
call fcn.1400cad36
mov rdx, qword [rbp + 0x1b0]
mov rax, qword [rbp + 0x1b8]
lea rcx, [rbp + 0xc0]
call qword [rax + 0x18]
mov rax, qword [rbp + 0x210]
lea r12, [rax + 0xc8]
lea r9, [rbp + 0xc0]
mov r8d, 0x20
mov rcx, qword [rbp + 0x1f8]
mov rdx, r12
call fcn.1400ab58e
lea rcx, [r14 + 0x38]
lea r8, [rbp + 0x28]
mov qword [r8 - 8], rax
add r14, 0x30
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0xc0]
lea rdx, [rbp + 0x20]
mov r9, r14
call fcn.1400d95a0
mov rsi, qword [rbp + 0xe0]
mov r14, qword [rbp + 0xe8]
mov dil, 1
cmp rsi, r14
jae 0x1400cd1eb
mov r15, qword [rbp + 0xc0]
mov r13, qword [rbp + 0xd0]
mov al, byte [r13 + rsi]
xor al, byte [r15 + rsi]
mov ecx, eax
neg cl
or cl, al
not cl
shr cl, 7
call fcn.140089d41
inc rsi
and dil, al
cmp rsi, r14
jne 0x1400cd1c7
mov ecx, edi
call fcn.140089d41
test al, al
mov byte [rbp + 0x20e], al
je 0x1400cd283
mov rax, qword [rbp + 0x1f0]
lea rsi, [rbp + 0xc0]
mov qword [rsi + 0x48], rax
movups xmm0, xmmword [rbp + 0x1c0]
movups xmm1, xmmword [rbp + 0x1d0]
movups xmm2, xmmword [rbp + 0x1e0]
movups xmmword [rsi + 0x38], xmm2
movups xmmword [rsi + 0x28], xmm1
movups xmmword [rsi + 0x18], xmm0
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movaps xmmword [rsi + 0x50], xmm0
movaps xmmword [rsi + 0x60], xmm1
mov rax, qword [rbp + 0x210]
movups xmm0, xmmword [rax + 0x38]
movaps xmmword [rsi], xmm0
mov rax, qword [rax + 0x48]
mov qword [rsi + 0x10], rax
mov ecx, 0xe
mov rbx, qword [rbp + 0x200]
mov rdi, rbx
rep movsq qword [rdi], qword [rsi]
mov byte [rbp + 0x21e], 0
lea rcx, [rbp + 0x188]
call fcn.14009c078
jmp 0x1400cd2bd
movabs rax, 0x8000000000000000
mov rbx, qword [rbp + 0x200]
mov qword [rbx], rax
mov byte [rbp + 0x21e], 1
lea rcx, [rbp + 0x188]
call fcn.14009c078
mov byte [rbp + 0x21f], 1
lea rcx, [rbp + 0x1c0]
call fcn.14009c078
xor eax, eax
mov rcx, qword [rbp + 0x210]
cmp rax, qword [rcx + 0x50]
jo 0x1400cd2dc
mov rax, qword [rbp + 0x210]
lea rcx, [rax + 0x50]
call fcn.140001b46
mov rax, qword [rbp + 0x210]
cmp qword [rax + 0xb0], 0
je 0x1400cd300
mov rax, qword [rbp + 0x210]
lea rcx, [rax + 0xb0]
call fcn.1400062c6
mov rax, qword [rbp + 0x210]
lea rcx, [rax + 0xa0]
call fcn.1400062c6
mov rax, qword [rbp + 0x210]
cmp byte [rax + 0x70], 0
jne 0x1400cd33f
xor eax, eax
mov rcx, qword [rbp + 0x210]
cmp rax, qword [rcx + 0x78]
jo 0x1400cd33f
mov rax, qword [rbp + 0x210]
lea rcx, [rax + 0x78]
call fcn.140001b46
mov rax, qword [rbp + 0x210]
lea rcx, [rax + 0x20]
call fcn.140001b46
cmp byte [rbp + 0x20e], 0
jne 0x1400cd373
mov rcx, qword [rbp + 0x210]
add rcx, 0x38
mov edx, 2
mov r8d, 4
call fcn.1401053a0
mov rax, rbx
add rsp, 0x2a8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret