Function at 0x14000e1b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x60
mov r13, r9
mov r15, r8
mov rdi, rdx
mov esi, ecx
cmp ecx, 5
jg 0x14000e3c7
cmp ecx, 1
jne 0x14000e1fe
mov rbx, qword [rsp + 0xb0]
mov rdx, qword [r9]
mov r8, rbx
mov rcx, qword [r15]
call fcn.14000efc0
mov qword [rbx + 8], rax
jmp 0x14000e843
cmp esi, 2
jne 0x14000e280
mov rdx, qword [r9]
lea r8, [rsp + 0x38]
mov rcx, qword [r15]
call fcn.14000efc0
mov rdx, qword [r13 + 8]
lea r8, [rsp + 0x40]
mov rcx, qword [r15 + 8]
mov rdi, rax
call fcn.14000efc0
mov rdx, qword [r13 + 8]
lea r8, [rsp + 0x30]
mov rcx, qword [r15]
mov rbx, rax
xor rdx, qword [r13]
xor rcx, qword [r15 + 8]
call fcn.14000efc0
mov r9, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0x38]
xor rax, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x30]
xor rax, rbx
xor rdx, qword [rsp + 0x40]
xor rdx, rcx
mov qword [r9], rcx
xor rdx, rdi
mov qword [r9 + 0x18], rbx
xor rax, rdi
mov qword [r9 + 8], rdx
mov qword [r9 + 0x10], rax
jmp 0x14000e843
cmp esi, 3
jne 0x14000e38d
mov rdx, qword [r9]
lea r8, [rsp + 0x40]
mov rcx, qword [r15]
call fcn.14000efc0
mov rdx, qword [r13 + 8]
lea r8, [rsp + 0x30]
mov rcx, qword [r15 + 8]
mov rbp, rax
call fcn.14000efc0
mov rdx, qword [r13 + 0x10]
lea r8, [rsp + 0x50]
mov rcx, qword [r15 + 0x10]
mov r14, rax
call fcn.14000efc0
mov rdx, qword [r13]
lea r8, [rsp + 0x38]
mov rcx, qword [r15]
mov rsi, rax
xor rdx, qword [r13 + 8]
xor rcx, qword [r15 + 8]
call fcn.14000efc0
mov rdx, qword [r13 + 0x10]
lea r8, [rsp + 0x58]
mov rcx, qword [r15 + 0x10]
mov rbx, rax
xor rdx, qword [r13 + 8]
xor rcx, qword [r15 + 8]
call fcn.14000efc0
mov rdx, qword [r13 + 0x10]
lea r8, [rsp + 0x48]
mov rcx, qword [r15]
mov rdi, rax
xor rdx, qword [r13]
xor rcx, qword [r15 + 0x10]
call fcn.14000efc0
xor rbx, qword [rsp + 0x48]
mov r9, rax
xor r9, qword [rsp + 0x58]
mov r10, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x50]
mov r8, qword [rsp + 0x30]
xor r9, rax
mov rdx, qword [rsp + 0x40]
xor rbx, rax
mov rcx, qword [rsp + 0x38]
xor r9, rsi
xor rbx, r8
mov qword [r10], rdx
xor r9, r8
mov qword [r10 + 0x28], rsi
xor rcx, r8
xor rbx, r14
xor r9, r14
xor rcx, rdx
xor rbx, rdx
xor rdi, rax
xor r9, rbp
xor rcx, rbp
xor rbx, rbp
mov qword [r10 + 8], rcx
xor rdi, rsi
mov qword [r10 + 0x10], rbx
xor rdi, r14
mov qword [r10 + 0x18], r9
mov qword [r10 + 0x20], rdi
jmp 0x14000e843
cmp esi, 4
jne 0x14000e3aa
mov r8, qword [rsp + 0xb0]
mov rdx, r13
mov rcx, r15
call fcn.14000ea20
jmp 0x14000e843
cmp esi, 5
jne 0x14000e3c7
mov r8, qword [rsp + 0xb0]
mov rdx, r13
mov rcx, r15
call fcn.14000ec80
jmp 0x14000e843
mov qword [rsp + 0x98], r12
test sil, 1
jne 0x14000e3e3
mov eax, esi
mov ebp, esi
cdq
sub eax, edx
sar eax, 1
mov r12d, eax
jmp 0x14000e3f9
dec esi
lea ebp, [rcx + 1]
mov eax, ebp
cdq
sub eax, edx
sar eax, 1
mov r12d, eax
mov eax, esi
cdq
sub eax, edx
sar eax, 1
mov rbx, qword [rsp + 0xb0]
mov r14d, eax
movsxd r9, r12d
mov qword [rsp + 0x38], r9
mov dword [rsp + 0x90], eax
mov dword [rsp + 0x30], r12d
test r12d, r12d
jle 0x14000e459
lea r11, [r9*8]
mov r8, rbx
sub r11, r15
sub r8, r15
add r11, rbx
mov r10, r13
sub r10, r15
mov rdx, r15
mov rcx, r9
nop dword [rax]
mov rax, qword [rdx]
mov qword [r8 + rdx], rax
mov rax, qword [r10 + rdx]
mov qword [r11 + rdx], rax
lea rdx, [rdx + 8]
sub rcx, 1
jne 0x14000e440
movsxd r8, r14d
test r14d, r14d
jle 0x14000e49d
mov r10, r15
lea rdx, [rbx + r9*8]
mov r11, r13
sub r10, r13
sub r11, rbx
mov rax, r9
neg rax
lea r14, [rax*8]
nop
lea rcx, [r11 + rdx]
mov rax, qword [rcx + r10]
xor qword [r14 + rdx], rax
lea rdx, [rdx + 8]
mov rax, qword [rcx]
xor qword [rdx - 8], rax
sub r8, 1
jne 0x14000e480
lea rax, [r9*8]
movsxd r14, ebp
lea r9, [rax + rbx]
mov qword [rsp + 0x50], rax
mov r8, rbx
mov qword [rsp + 0x20], rdi
lea rcx, [r14*8]
mov qword [rsp + 0x58], rcx
lea rdx, [rdi + rcx]
mov ecx, r12d
call fcn.14000e1b0
lea rdx, [r14*8]
mov qword [rsp + 0x20], rbx
add rdx, rdi
mov r9, r13
mov r8, r15
mov ecx, r12d
call fcn.14000e1b0
xor r12d, r12d
mov edx, r12d
test ebp, ebp
jle 0x14000e5af
cmp ebp, 8
jb 0x14000e5af
lea eax, [rbp - 1]
movsxd rcx, eax
lea rax, [rbx + rcx*8]
lea r8, [rdi + rcx*8]
cmp rdi, rax
ja 0x14000e523
cmp r8, rbx
jae 0x14000e5af
mov ecx, ebp
and ecx, 0x80000007
jge 0x14000e534
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, ebp
mov r8, r12
sub eax, ecx
mov rcx, rbx
movsxd r9, eax
sub rcx, rdi
lea rax, [rdi + 0x10]
nop dword [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add edx, 8
add r8, 8
movdqu xmm1, xmmword [rax + rcx - 0x10]
movdqu xmm2, xmmword [rcx + rax]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rax + rcx - 0x30]
pxor xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rax + rcx - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp r8, r9
jl 0x14000e550
movsxd rax, edx
cmp rax, r14
jge 0x14000e5e1
mov r9, rbx
lea rcx, [rdi + rax*8]
sub r9, rdi
mov r8, r14
sub r8, rax
nop word [rax + rax]
mov rax, qword [r9 + rcx]
xor qword [rcx], rax
lea rcx, [rcx + 8]
sub r8, 1
jne 0x14000e5d0
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
lea r9, [rcx + r13]
lea rax, [rdx + rbx]
add rdx, rdi
lea r8, [rcx + r15]
mov qword [rsp + 0x20], rax
mov ecx, dword [rsp + 0x90]
call fcn.14000e1b0
mov r8d, r12d
test esi, esi
jle 0x14000e6d4
cmp esi, 8
jb 0x14000e6d4
lea ecx, [rsi - 1]
movsxd rax, ecx
lea rdx, [rdi + rax*8]
lea eax, [rcx + rbp]
movsxd rcx, eax
lea rax, [rbx + rcx*8]
cmp rdi, rax
ja 0x14000e64c
lea rax, [r14*8]
add rax, rbx
cmp rdx, rax
jae 0x14000e6d4
mov ecx, esi
and ecx, 0x80000007
jge 0x14000e65d
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, esi
mov rdx, r12
sub eax, ecx
lea rcx, [rdi + 0x20]
movsxd r9, eax
nop dword [rax + rax]
movdqu xmm0, xmmword [rcx - 0x20]
lea rax, [rdx + r14]
add r8d, 8
movdqu xmm1, xmmword [rbx + rax*8]
add rdx, 8
lea rcx, [rcx + 0x40]
movdqu xmm2, xmmword [rbx + rax*8 + 0x20]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x60], xmm1
movdqu xmm0, xmmword [rcx - 0x50]
movdqu xmm1, xmmword [rbx + rax*8 + 0x10]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm0, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [rbx + rax*8 + 0x30]
pxor xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm2
movdqu xmm0, xmmword [rcx - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
cmp rdx, r9
jl 0x14000e670
movsxd rdx, r8d
movsxd r8, esi
cmp rdx, r8
jge 0x14000e6f4
nop
lea rax, [rdx + r14]
mov rcx, qword [rbx + rax*8]
xor qword [rdi + rdx*8], rcx
inc rdx
cmp rdx, r8
jl 0x14000e6e0
mov r8, qword [rsp + 0x38]
mov r9d, r12d
test ebp, ebp
jle 0x14000e801
cmp ebp, 8
jb 0x14000e801
mov eax, dword [rsp + 0x30]
lea edx, [rbp - 1]
add eax, edx
lea r15, [r8*8]
movsxd rcx, eax
movsxd rax, edx
lea r10, [rbx + rcx*8]
lea rcx, [rdi + rax*8]
lea rax, [r15 + rbx]
cmp rax, rcx
ja 0x14000e73e
cmp r10, rdi
jae 0x14000e801
mov eax, ebp
and eax, 0x80000007
jge 0x14000e74e
dec eax
or eax, 0xfffffff8
inc eax
sub ebp, eax
lea rcx, [r8*8 + 0x20]
movsxd rsi, ebp
lea rax, [r8*8 + 0x10]
mov ebp, 2
lea rdx, [rcx + rbx]
sub rbp, r8
mov r10, rdi
sub r10, rax
shl rbp, 3
sub rbp, rbx
mov r11, rdi
sub r11, r15
mov rax, rdi
add rbp, rdi
sub r10, rbx
sub r11, rbx
sub rax, rcx
sub rax, rbx
nop dword [rax]
nop dword [rax + rax]
movdqu xmm0, xmmword [rdx - 0x20]
add r9d, 8
add r12, 8
movdqu xmm1, xmmword [rdx + rax]
movdqu xmm2, xmmword [r11 + rdx]
lea rdx, [rdx + 0x40]
pxor xmm1, xmm0
movdqu xmmword [rdx - 0x60], xmm1
movdqu xmm0, xmmword [rdx - 0x50]
movdqu xmm1, xmmword [rdx + r10 - 0x40]
pxor xmm1, xmm0
movdqu xmmword [rdx - 0x50], xmm1
movdqu xmm0, xmmword [rdx - 0x40]
movdqu xmm1, xmmword [rdx + rbp - 0x40]
pxor xmm2, xmm0
movdqu xmmword [rdx - 0x40], xmm2
movdqu xmm0, xmmword [rdx - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rdx - 0x30], xmm1
cmp r12, rsi
jl 0x14000e7a0
mov r12, qword [rsp + 0x98]
movsxd rdx, r9d
cmp rdx, r14
jge 0x14000e843
lea rax, [rdx + r8]
lea rcx, [rbx + rax*8]
lea rax, [r8*8]
sub rdi, rax
sub rdi, rbx
nop word [rax + rax]
mov rax, qword [rcx + rdi]
inc rdx
xor qword [rcx], rax
lea rcx, [rcx + 8]
cmp rdx, r14
jl 0x14000e830
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret