Function at 0x14000c370
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2a8
mov r8, qword [rcx + 0x28]
mov r9, qword [rcx + 0x38]
mov rdi, qword [rcx + 0x30]
mov r11, qword [rcx + 8]
mov rsi, qword [rcx + 0x10]
mov r10, qword [rcx + 0x18]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0x18], rcx
mov qword [rsp], r8
mov r8, qword [rdx]
mov qword [rsp + 0x10], r9
mov r9, qword [rcx + 0x40]
mov qword [rsp + 8], rdi
movbe qword [rsp + 0x20], r8
mov rcx, qword [rdx + 8]
movbe qword [rsp + 0x28], rcx
mov rcx, qword [rdx + 0x10]
movbe qword [rsp + 0x30], rcx
mov rcx, qword [rdx + 0x18]
movbe qword [rsp + 0x38], rcx
mov rcx, qword [rdx + 0x20]
movbe qword [rsp + 0x40], rcx
mov rcx, qword [rdx + 0x28]
movbe qword [rsp + 0x48], rcx
mov rcx, qword [rdx + 0x30]
movbe qword [rsp + 0x50], rcx
mov rcx, qword [rdx + 0x38]
movbe qword [rsp + 0x58], rcx
mov rcx, qword [rdx + 0x40]
movbe qword [rsp + 0x60], rcx
mov rcx, qword [rdx + 0x48]
movbe qword [rsp + 0x68], rcx
mov rcx, qword [rdx + 0x50]
movbe qword [rsp + 0x70], rcx
mov rcx, qword [rdx + 0x58]
movbe qword [rsp + 0x78], rcx
mov rcx, qword [rdx + 0x60]
movbe qword [rsp + 0x80], rcx
mov rcx, qword [rdx + 0x68]
movbe qword [rsp + 0x88], rcx
mov rcx, qword [rdx + 0x70]
movbe qword [rsp + 0x90], rcx
mov rcx, qword [rdx + 0x78]
mov edx, 0x1f
movbe qword [rsp + 0x98], rcx
mov rbx, qword [rsp + 0x20]
nop dword [rax + rax]
mov rcx, qword [rsp + rdx*8 - 0x68]
mov r13, qword [rsp + rdx*8 - 0xd0]
rorx rdi, rcx, 0x13
rorx r15, rcx, 0x3d
shr rcx, 6
rorx r12, r13, 1
xor r15, rdi
rorx rdi, r13, 8
xor rcx, r15
mov r15, qword [rsp + rdx*8 - 0xc8]
xor rdi, r12
add rcx, qword [rsp + rdx*8 - 0x90]
rorx r12, r15, 1
rorx rbp, r15, 8
mov r14, r15
shr r14, 7
xor rbp, r12
xor r14, rbp
add r14, r13
shr r13, 7
xor r13, rdi
add r13, rbx
add r13, rcx
mov qword [rsp + rdx*8 - 0x58], r13
mov rcx, qword [rsp + rdx*8 - 0x60]
rorx rdi, rcx, 0x13
rorx rbx, rcx, 0x3d
shr rcx, 6
xor rbx, rdi
rorx rdi, r13, 0x3d
xor rcx, rbx
add rcx, qword [rsp + rdx*8 - 0x88]
rorx rbx, r13, 0x13
shr r13, 6
xor rdi, rbx
xor r13, rdi
add r14, rcx
mov qword [rsp + rdx*8 - 0x50], r14
mov rbp, qword [rsp + rdx*8 - 0xc0]
add r13, qword [rsp + rdx*8 - 0x80]
rorx rcx, rbp, 1
rorx rbx, rbp, 8
mov r8, rbp
shr r8, 7
xor rbx, rcx
xor r8, rbx
rorx rbx, r14, 0x13
add r8, r15
rorx r15, r14, 0x3d
shr r14, 6
add r8, r13
xor r15, rbx
mov qword [rsp + rdx*8 - 0x48], r8
xor r14, r15
rorx rdi, r8, 0x13
rorx r12, r8, 0x3d
shr r8, 6
mov r15, qword [rsp + rdx*8 - 0xb8]
add r14, qword [rsp + rdx*8 - 0x78]
xor r12, rdi
xor r8, r12
rorx rbx, r15, 1
rorx r13, r15, 8
xor r13, rbx
mov rbx, r15
shr rbx, 7
xor rbx, r13
add rbx, rbp
add rbx, r14
mov qword [rsp + rdx*8 - 0x40], rbx
rorx r14, rbx, 0x13
mov rbp, qword [rsp + rdx*8 - 0xb0]
add r8, qword [rsp + rdx*8 - 0x70]
rorx rdi, rbp, 1
rorx r13, rbp, 8
mov r12, rbp
shr r12, 7
xor r13, rdi
rorx rdi, rbx, 0x3d
shr rbx, 6
xor r12, r13
xor rdi, r14
add r12, r15
xor rbx, rdi
add r12, r8
mov qword [rsp + rdx*8 - 0x38], r12
mov rdi, qword [rsp + rdx*8 - 0xa8]
mov r15, qword [rsp + rdx*8 - 0xa0]
add rbx, qword [rsp + rdx*8 - 0x68]
rorx r13, rdi, 1
rorx rcx, rdi, 8
rorx r8, r15, 1
rorx r14, r15, 8
xor rcx, r13
mov r13, r15
xor r14, r8
shr r13, 7
rorx r8, r12, 0x3d
xor r13, r14
add r13, rdi
shr rdi, 7
xor rdi, rcx
rorx rcx, r12, 0x13
shr r12, 6
add rdi, rbp
xor r8, rcx
add rdi, rbx
xor r12, r8
mov qword [rsp + rdx*8 - 0x30], rdi
rorx rcx, rdi, 0x13
rorx rbx, rdi, 0x3d
shr rdi, 6
add r12, qword [rsp + rdx*8 - 0x60]
xor rbx, rcx
xor rdi, rbx
add r13, r12
mov qword [rsp + rdx*8 - 0x28], r13
mov rbx, qword [rsp + rdx*8 - 0x98]
add rdi, qword [rsp + rdx*8 - 0x58]
rorx rcx, rbx, 1
rorx r14, rbx, 8
mov r8, rbx
shr r8, 7
xor r14, rcx
xor r8, r14
rorx r14, r13, 0x3d
add r8, r15
add r8, rdi
rorx rdi, r13, 0x13
shr r13, 6
mov qword [rsp + rdx*8 - 0x20], r8
xor r14, rdi
mov rdi, qword [rsp + rdx*8 - 0x90]
xor r13, r14
add r13, qword [rsp + rdx*8 - 0x50]
rorx r14, rdi, 1
rorx r12, rdi, 8
mov r15, rdi
shr r15, 7
xor r12, r14
rorx r14, r8, 0x3d
xor r15, r12
add r15, rbx
rorx rbx, r8, 0x13
shr r8, 6
add r15, r13
xor r14, rbx
mov qword [rsp + rdx*8 - 0x18], r15
xor r8, r14
rorx rcx, r15, 0x13
mov r13, qword [rsp + rdx*8 - 0x88]
add r8, qword [rsp + rdx*8 - 0x48]
rorx rbx, r13, 1
rorx r14, r13, 8
xor r14, rbx
mov rbx, r13
shr rbx, 7
xor rbx, r14
add rbx, rdi
rorx rdi, r15, 0x3d
shr r15, 6
add rbx, r8
xor rdi, rcx
mov qword [rsp + rdx*8 - 0x10], rbx
xor r15, rdi
mov rbp, qword [rsp + rdx*8 - 0x80]
add r15, qword [rsp + rdx*8 - 0x40]
rorx rcx, rbp, 1
rorx rdi, rbp, 8
mov r12, rbp
shr r12, 7
xor rdi, rcx
rorx rcx, rbx, 0x13
xor r12, rdi
rorx rdi, rbx, 0x3d
shr rbx, 6
add r12, r13
xor rdi, rcx
add r12, r15
xor rbx, rdi
mov qword [rsp + rdx*8 - 8], r12
mov r15, qword [rsp + rdx*8 - 0x70]
mov rdi, qword [rsp + rdx*8 - 0x78]
add rbx, qword [rsp + rdx*8 - 0x38]
rorx r13, r15, 1
rorx r8, r15, 8
rorx r14, rdi, 1
rorx rcx, rdi, 8
xor r8, r13
mov r13, r15
shr r13, 7
xor rcx, r14
xor r13, r8
rorx r8, r12, 0x3d
add r13, rdi
shr rdi, 7
xor rdi, rcx
rorx rcx, r12, 0x13
shr r12, 6
add rdi, rbp
xor r8, rcx
add rdi, rbx
xor r12, r8
mov qword [rsp + rdx*8], rdi
rorx rcx, rdi, 0x13
rorx r8, rdi, 0x3d
shr rdi, 6
add r12, qword [rsp + rdx*8 - 0x30]
xor r8, rcx
xor rdi, r8
add r13, r12
mov qword [rsp + rdx*8 + 8], r13
rorx r14, r13, 0x3d
mov rbx, qword [rsp + rdx*8 - 0x68]
add rdi, qword [rsp + rdx*8 - 0x28]
rorx rcx, rbx, 1
rorx r8, rbx, 8
mov rbp, rbx
shr rbp, 7
xor r8, rcx
xor rbp, r8
rorx r8, r13, 0x13
shr r13, 6
add rbp, r15
xor r14, r8
add rbp, rdi
xor r13, r14
mov qword [rsp + rdx*8 + 0x10], rbp
mov r12, qword [rsp + rdx*8 - 0x60]
add r13, qword [rsp + rdx*8 - 0x20]
rorx r8, r12, 1
rorx r14, r12, 8
mov r15, r12
shr r15, 7
xor r14, r8
xor r15, r14
rorx r14, rbp, 0x13
add r15, rbx
rorx rbx, rbp, 0x3d
shr rbp, 6
add r15, r13
xor rbx, r14
mov qword [rsp + rdx*8 + 0x18], r15
xor rbp, rbx
mov rbx, qword [rsp + rdx*8 - 0x58]
add rbp, qword [rsp + rdx*8 - 0x18]
rorx r8, rbx, 1
rorx r14, rbx, 8
mov r15, rbx
shr r15, 7
xor r14, r8
xor r15, r14
add r15, r12
add r15, rbp
mov qword [rsp + rdx*8 + 0x20], r15
add rdx, 0x10
cmp rdx, 0x5f
jne 0x14000c480
mov r15, qword [rsp + 0x10]
mov r14, qword [rsp + 8]
mov r13, qword [rsp]
mov rdx, 0xfffffffffffffff8
nop word [rax + rax]
rorx r8, r13, 0xe
rorx rbx, r13, 0x12
rorx rdi, r13, 0x29
lea rcx, [0x14002b300]
mov rbp, r13
xor rbx, r8
andn r8, r13, r15
mov r12, rcx
xor rdi, rbx
mov rbx, rsi
or rbx, r11
add rdi, r9
add rdi, qword [rcx + rdx*8 + 0x40]
mov r9, r14
and r9, r13
rorx rcx, r11, 0x27
and rbx, r10
add rdi, qword [rsp + rdx*8 + 0x60]
or r9, r8
rorx r8, r11, 0x1c
add rdi, r9
rorx r9, r11, 0x22
xor r9, r8
add rax, rdi
xor rcx, r9
mov r9, rsi
and r9, r11
and rbp, rax
rorx r8, rax, 0xe
or r9, rbx
rorx rbx, rax, 0x12
add r9, rcx
mov rcx, r14
andn r14, rax, r14
xor rbx, r8
rorx r8, rax, 0x29
add rcx, qword [r12 + rdx*8 + 0x50]
or rbp, r14
xor r8, rbx
add r9, rdi
add rcx, qword [rsp + rdx*8 + 0x70]
add rbp, r15
add rbp, qword [r12 + rdx*8 + 0x48]
rorx rbx, r9, 0x22
rorx r14, r9, 0x27
add rbp, r8
add rbp, qword [rsp + rdx*8 + 0x68]
rorx r8, r9, 0x1c
xor rbx, r8
mov r8, r9
and r8, r11
xor r14, rbx
mov rbx, r9
or rbx, r11
and rbx, rsi
or r8, rbx
add r10, rbp
add r8, r14
rorx rdi, r10, 0xe
rorx rbx, r10, 0x12
rorx r15, r10, 0x29
andn r14, r10, r13
add r8, rbp
mov rbp, r12
add r13, qword [rbp + rdx*8 + 0x58]
mov r12, r10
xor rbx, rdi
add r13, qword [rsp + rdx*8 + 0x78]
xor r15, rbx
mov rbx, rax
and rbx, r10
or rbx, r14
rorx r14, r8, 0x22
add rcx, rbx
rorx rbx, r8, 0x1c
xor r14, rbx
rorx rbx, r8, 0x27
add rcx, r15
mov r15, r8
and r15, r9
xor rbx, r14
mov r14, r8
or r14, r9
add rsi, rcx
and r14, r11
rorx rdi, rsi, 0xe
and r12, rsi
or r15, r14
andn r14, rsi, rax
add rax, qword [rbp + rdx*8 + 0x60]
add r15, rbx
rorx rbx, rsi, 0x12
or r12, r14
add rax, qword [rsp + rdx*8 + 0x80]
add r15, rcx
xor rbx, rdi
rorx rdi, rsi, 0x29
add r13, r12
xor rdi, rbx
rorx rbx, r15, 0x1c
rorx r14, r15, 0x22
mov r12, r15
and r12, r8
xor r14, rbx
mov rbx, r15
or rbx, r8
add r13, rdi
rorx rdi, r15, 0x27
and rbx, r9
add r11, r13
xor rdi, r14
or r12, rbx
rorx rcx, r11, 0xe
rorx rbx, r11, 0x12
andn r14, r11, r10
add r12, rdi
xor rbx, rcx
mov rcx, rbp
mov rdi, qword [rcx + rdx*8 + 0x70]
add r10, qword [rcx + rdx*8 + 0x68]
add r12, r13
rorx r13, r11, 0x29
add r10, qword [rsp + rdx*8 + 0x88]
xor r13, rbx
mov rbx, rsi
and rbx, r11
mov rbp, r12
or rbp, r15
or rbx, r14
rorx r14, r12, 0x1c
and rbp, r8
add rax, rbx
rorx rbx, r12, 0x22
add rax, r13
xor rbx, r14
rorx r13, r12, 0x27
mov r14, r12
and r14, r15
add rdi, rsi
add rdi, qword [rsp + rdx*8 + 0x90]
add r9, rax
xor r13, rbx
mov rbx, qword [rcx + rdx*8 + 0x78]
or r14, rbp
rorx rbp, r9, 0xe
rorx rcx, r9, 0x12
andn rsi, r9, rsi
add r14, r13
rorx r13, r9, 0x29
xor rcx, rbp
mov rbp, r11
and rbp, r9
add r14, rax
or rbp, rsi
xor r13, rcx
mov rsi, r9
rorx rax, r14, 0x1c
add rbp, r10
add rbp, r13
add rbx, r11
add rbx, qword [rsp + rdx*8 + 0x98]
add r8, rbp
rorx rcx, r8, 0xe
rorx r10, r8, 0x12
andn r11, r8, r11
and rsi, r8
mov r13, r8
or rsi, r11
xor r10, rcx
rorx rcx, r8, 0x29
xor rcx, r10
add rsi, rdi
add rsi, rcx
lea rdi, [rsi + r15]
rorx rcx, rdi, 0xe
rorx r10, rdi, 0x12
andn r11, rdi, r9
and r13, rdi
xor r10, rcx
rorx rcx, rdi, 0x29
or r13, r11
mov r11, r14
or r11, r12
xor rcx, r10
rorx r10, r14, 0x22
add r13, rbx
rorx rbx, r14, 0x27
and r11, r15
xor r10, rax
add r13, rcx
xor rbx, r10
mov r10, r14
and r10, r12
lea rax, [r13 + r12]
or r10, r11
add r10, rbx
add r10, rbp
rorx rcx, r10, 0x1c
rorx r11, r10, 0x22
mov rbx, r10
or rbx, r14
rorx rbp, r10, 0x27
xor r11, rcx
and rbx, r12
xor rbp, r11
mov r11, r10
and r11, r14
or r11, rbx
rorx rbx, rax, 0x12
add r11, rbp
add r11, rsi
rorx rcx, r11, 0x1c
rorx rsi, r11, 0x22
rorx r15, r11, 0x27
mov rbp, r11
and rbp, r10
xor rsi, rcx
andn rcx, rax, r8
xor r15, rsi
mov rsi, r11
or rsi, r10
and rsi, r14
or rbp, rsi
rorx rsi, rax, 0xe
add rbp, r15
xor rbx, rsi
rorx rsi, rax, 0x29
mov r15, r11
xor rsi, rbx
add rbp, r13
lea r13, [0x14002b300]
add rsi, r9
add rsi, qword [r13 + rdx*8 + 0x80]
mov r9, rdi
and r9, rax
or r15, rbp
rorx rbx, rbp, 0x22
add rsi, qword [rsp + rdx*8 + 0xa0]
or r9, rcx
rorx rcx, rbp, 0x1c
and r15, r10
xor rbx, rcx
rorx rcx, rbp, 0x27
xor rcx, rbx
add rsi, r9
mov r9, r11
and r9, rbp
or r9, r15
add r14, rsi
add r9, rcx
andn r15, r14, rdi
rorx rcx, r14, 0xe
rorx rbx, r14, 0x12
add rdi, qword [r13 + rdx*8 + 0x90]
add r9, rsi
mov rsi, rax
and rsi, r14
xor rbx, rcx
rorx rcx, r14, 0x29
add rdi, qword [rsp + rdx*8 + 0xb0]
or rsi, r15
xor rcx, rbx
mov rbx, r9
or rbx, rbp
mov r15, r9
and r15, rbp
add rsi, r8
add rsi, qword [r13 + rdx*8 + 0x88]
rorx r8, r9, 0x22
and rbx, r11
or r15, rbx
mov rbx, r14
add rsi, rcx
add rsi, qword [rsp + rdx*8 + 0xa8]
rorx rcx, r9, 0x1c
xor r8, rcx
rorx rcx, r9, 0x27
xor rcx, r8
add r15, rcx
add r10, rsi
add r15, rsi
rorx rcx, r10, 0xe
rorx r8, r10, 0x12
and rbx, r10
rorx rsi, r10, 0x29
mov r12, r15
or r12, r9
xor r8, rcx
andn rcx, r10, rax
add rax, qword [r13 + rdx*8 + 0x98]
and r12, rbp
or rbx, rcx
xor rsi, r8
rorx rcx, r15, 0x1c
rorx r8, r15, 0x22
add rax, qword [rsp + rdx*8 + 0xb8]
add rdi, rbx
mov rbx, r15
and rbx, r9
xor r8, rcx
rorx rcx, r15, 0x27
add rdi, rsi
or rbx, r12
xor rcx, r8
mov r12, r10
add r11, rdi
add rbx, rcx
rorx rcx, r11, 0xe
rorx r8, r11, 0x12
add rbx, rdi
andn rsi, r11, r14
and r12, r11
add r14, qword [r13 + rdx*8 + 0xa0]
xor r8, rcx
rorx rcx, r11, 0x29
or r12, rsi
rorx rsi, rbx, 0x1c
rorx rdi, rbx, 0x27
add r14, qword [rsp + rdx*8 + 0xc0]
xor rcx, r8
rorx r8, rbx, 0x22
add rax, r12
mov r12, rbx
and r12, r15
xor r8, rsi
mov rsi, rbx
or rsi, r15
add rax, rcx
and rsi, r9
xor rdi, r8
add rbp, rax
or r12, rsi
rorx rcx, rbp, 0x12
mov rsi, r11
and rsi, rbp
rorx r8, rbp, 0x29
add r12, rdi
add r12, rax
rorx rax, rbp, 0xe
xor rcx, rax
andn rax, rbp, r10
rorx rdi, r12, 0x27
add r10, qword [r13 + rdx*8 + 0xa8]
or rsi, rax
xor r8, rcx
rorx rax, r12, 0x1c
rorx rcx, r12, 0x22
add r10, qword [rsp + rdx*8 + 0xc8]
add r14, rsi
mov rsi, r12
or rsi, rbx
xor rcx, rax
mov rax, r12
and rax, rbx
and rsi, r15
xor rdi, rcx
add r14, r8
mov rcx, r13
or rax, rsi
add r9, r14
add rax, rdi
mov rdi, qword [r13 + rdx*8 + 0xb0]
rorx rcx, r9, 0xe
rorx rsi, r9, 0x12
mov r13, qword [r13 + rdx*8 + 0xb8]
xor rsi, rcx
rorx rcx, r9, 0x29
add rax, r14
xor rcx, rsi
mov rsi, rbp
and rsi, r9
add rdi, r11
andn r11, r9, r11
add rdi, qword [rsp + rdx*8 + 0xd0]
add r13, rbp
add r13, qword [rsp + rdx*8 + 0xd8]
add rdx, 0x10
or rsi, r11
mov r11, r9
add rsi, r10
add rsi, rcx
add r15, rsi
andn r10, r15, rbp
and r11, r15
rorx rcx, r15, 0xe
rorx r8, r15, 0x12
mov rbp, r15
or r11, r10
xor r8, rcx
rorx rcx, r15, 0x29
xor rcx, r8
add r11, rdi
add r11, rcx
lea rdi, [r11 + rbx]
andn r8, rdi, r9
and rbp, rdi
rorx rcx, rdi, 0xe
rorx r10, rdi, 0x12
mov r14, rdi
rorx rdi, rax, 0x22
or rbp, r8
mov r8, rax
or r8, r12
xor r10, rcx
rorx rcx, rax, 0x1c
and r8, rbx
rorx rbx, r14, 0x29
xor rdi, rcx
rorx rcx, rax, 0x27
add rbp, r13
xor rbx, r10
mov r10, rax
and r10, r12
xor rcx, rdi
or r10, r8
add rbp, rbx
add r10, rcx
lea r13, [rbp + r12]
add r10, rsi
mov rbx, r10
or rbx, rax
rorx rcx, r10, 0x1c
rorx r8, r10, 0x22
mov rsi, r10
and rsi, rax
xor r8, rcx
rorx rcx, r10, 0x27
and rbx, r12
xor rcx, r8
or rsi, rbx
add rsi, rcx
add rsi, r11
mov rdi, rsi
or rdi, r10
rorx rcx, rsi, 0x1c
rorx r8, rsi, 0x22
mov r11, rsi
rorx rbx, rsi, 0x27
and r11, r10
xor r8, rcx
and rdi, rax
xor rbx, r8
or r11, rdi
add r11, rbx
add r11, rbp
cmp rdx, 0x48
jb 0x14000c910
mov rcx, qword [rsp + 0x18]
vmovq xmm0, rax
vmovq xmm1, r10
vmovq xmm2, r11
vpunpcklqdq xmm0, xmm1, xmm0
vmovq xmm1, rsi
vpunpcklqdq xmm1, xmm2, xmm1
vmovq xmm2, r13
vinserti128 ymm0, ymm1, xmm0, 1
vmovq xmm1, r15
vpaddq ymm0, ymm0, ymmword [rcx + 8]
vmovdqu ymmword [rcx + 8], ymm0
vmovq xmm0, r9
vpunpcklqdq xmm0, xmm1, xmm0
vmovq xmm1, r14
vpunpcklqdq xmm1, xmm2, xmm1
vinserti128 ymm0, ymm1, xmm0, 1
vpaddq ymm0, ymm0, ymmword [rcx + 0x28]
vmovdqu ymmword [rcx + 0x28], ymm0
add rsp, 0x2a8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
vzeroupper
ret