Function at 0x14000c0b0
Capabilities:
Encode data using xor

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov rbx, qword [rsp + 0xa0]
mov r12, rcx
mov r13, rdx
mov rsi, r8
mov rdi, r9
test rcx, rcx
je 0x14000c170
test rdx, rdx
je 0x14000c190
test r8, r8
je 0x14000c1b0
test r9, r9
je 0x14000c150
test rbx, rbx
je 0x14000c1d0
call fcn.1401f39f0
mov rbp, rax
test rax, rax
je 0x14000c138
call fcn.1401ea380
xor r8d, r8d
mov r9, r13
mov rcx, rbp
mov qword [rsp + 0x20], 0
mov rdx, rax
call fcn.1401f4d20
test eax, eax
jne 0x14000c1f0
mov rcx, rbp
call fcn.1401f3a20
nop dword [rax]
xor eax, eax
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
lea r8, [0x140362d03]
lea rdx, str.chunk_mac_calculate
xor ecx, ecx
call fcn.1400d2b10
jmp 0x14000c138
lea r8, [0x1403632bb]
lea rdx, str.chunk_mac_calculate
xor ecx, ecx
call fcn.1400d2b10
jmp 0x14000c138
lea r8, [0x140362d16]
lea rdx, str.chunk_mac_calculate
xor ecx, ecx
call fcn.1400d2b10
jmp 0x14000c138
lea r8, str.data___NULL
lea rdx, str.chunk_mac_calculate
xor ecx, ecx
call fcn.1400d2b10
jmp 0x14000c138
lea r8, str.mac___NULL
lea rdx, str.chunk_mac_calculate
xor ecx, ecx
call fcn.1400d2b10
jmp 0x14000c138
xor edx, edx
mov rcx, rbp
add rdi, rsi
call fcn.1401f43d0
mov rax, qword [r12]
mov qword [rbx], rax
mov rax, qword [r12]
lea r12, [rsp + 0x3c]
mov qword [rbx + 8], rax
jmp 0x14000c248
mov rax, qword [rsi - 0x10]
xor qword [rbx], rax
mov r9, rbx
mov r8, r12
mov rax, qword [rsi - 8]
xor qword [rbx + 8], rax
mov rdx, rbx
mov rcx, rbp
mov dword [rsp + 0x20], 0x10
call fcn.1401f3d00
test eax, eax
je 0x14000c12d
mov rax, rsi
lea rsi, [rsi + 0x10]
cmp rsi, rdi
jb 0x14000c218
mov rcx, rdi
sub rcx, rax
test rcx, rcx
jle 0x14000c2c5
cmp rax, rdi
jae 0x14000c2a2
lea r8, [rcx - 1]
mov r9, rcx
cmp r8, 6
jbe 0x14000c420
lea rdx, [rax + 1]
mov r10, rbx
sub r10, rdx
xor edx, edx
cmp r10, 0xe
ja 0x14000c2e0
nop word [rax + rax]
movzx r8d, byte [rax + rdx]
xor byte [rbx + rdx], r8b
add rdx, 1
cmp rcx, rdx
jne 0x14000c290
mov r9, rbx
lea r8, [rsp + 0x3c]
mov rdx, rbx
mov rcx, rbp
mov dword [rsp + 0x20], 0x10
call fcn.1401f3d00
test eax, eax
je 0x14000c12d
mov rcx, rbp
call fcn.1401f3a20
mov eax, 1
jmp 0x14000c13a
cmp r8, 0xe
jbe 0x14000c427
mov r8, rcx
and r8, 0xfffffffffffffff0
nop dword [rax]
movdqu xmm0, xmmword [rax + rdx]
movdqu xmm2, xmmword [rbx + rdx]
pxor xmm0, xmm2
movups xmmword [rbx + rdx], xmm0
add rdx, 0x10
cmp r8, rdx
jne 0x14000c2f8
mov r10, rcx
and r10, 0xfffffffffffffff0
lea rdx, [rax + r10]
mov r8d, r10d
test cl, 0xf
je 0x14000c2a2
sub rcx, r10
mov r9, rcx
lea rcx, [rcx - 1]
cmp rcx, 6
jbe 0x14000c367
lea rcx, [rbx + r10]
movq xmm0, qword [rax + r10]
mov rax, r9
movq xmm1, qword [rcx]
and rax, 0xfffffffffffffff8
add rdx, rax
add r8d, eax
and r9d, 7
pxor xmm0, xmm1
movq qword [rcx], xmm0
je 0x14000c2a2
movsxd rax, r8d
movzx r9d, byte [rdx]
lea ecx, [r8 + 1]
xor byte [rbx + rax], r9b
lea rax, [rdx + 1]
cmp rax, rdi
jae 0x14000c2a2
movsxd rax, ecx
movzx ecx, byte [rdx + 1]
lea r9d, [r8 + 2]
xor byte [rbx + rax], cl
lea rax, [rdx + 2]
cmp rax, rdi
jae 0x14000c2a2
movsxd rax, r9d
movzx r9d, byte [rdx + 2]
lea ecx, [r8 + 3]
xor byte [rbx + rax], r9b
lea rax, [rdx + 3]
cmp rax, rdi
jae 0x14000c2a2
movsxd rax, ecx
movzx ecx, byte [rdx + 3]
lea r9d, [r8 + 4]
xor byte [rbx + rax], cl
lea rax, [rdx + 4]
cmp rax, rdi
jae 0x14000c2a2
movsxd rax, r9d
movzx r9d, byte [rdx + 4]
lea ecx, [r8 + 5]
xor byte [rbx + rax], r9b
lea rax, [rdx + 5]
cmp rax, rdi
jae 0x14000c2a2
movsxd rcx, ecx
lea eax, [r8 + 6]
movzx r8d, byte [rdx + 5]
xor byte [rbx + rcx], r8b
lea rcx, [rdx + 6]
cmp rcx, rdi
jae 0x14000c2a2
cdqe
movzx edx, byte [rdx + 6]
xor byte [rbx + rax], dl
jmp 0x14000c2a2
xor edx, edx
jmp 0x14000c290
mov rdx, rax
xor r10d, r10d
xor r8d, r8d
jmp 0x14000c33a