Function at 0x14020b610
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
cmp dword [rcx + 0x8b60], 0
mov rbp, rcx
jne 0x14020ba7b
mov rsi, qword [rcx + 0x8b58]
test rsi, rsi
je 0x14020ba7b
mov eax, dword [rsi + 0x85bc]
lea r14, [0x1403f9fa0]
mov r11, qword [rcx + 0x80f8]
neg eax
mov eax, dword [rcx + 0x1c]
mov rbx, qword [rcx + 8]
sbb r12, r12
mov rsi, qword [rsi + 0x89b0]
xor r9d, r9d
and r12d, 3
mov qword [rsp + 0x38], r11
cmp dword [rcx + 0x18], 4
mov r11, qword [rcx + 0x80f0]
sete r9b
mov dword [rsp + 0xa8], eax
add r9, 3
mov qword [rsp + 0x28], r11
add r9, qword [rcx + 0x28]
xor r13d, r13d
mov qword [rsp + 0x20], r9
xor edi, edi
mov qword [rsp + 0x30], r13
nop word [rax + rax]
cmp eax, 1
jne 0x14020b70b
mov r10, qword [rbp + 0x20]
xor r8d, r8d
shr r10, 3
test rbx, rbx
je 0x14020b9dd
add r9, r11
nop dword [rax]
movzx edx, byte [r9]
mov rax, r8
and eax, 0xf
add edx, 0xffffff80
add rax, rdi
mov rcx, r12
shl edx, cl
add r9, r10
movzx ecx, byte [rax + r14]
mov rax, r8
and rax, 0xfffffffffffffff0
inc r8
shl rax, 4
add rcx, rax
mov dword [rsi + rcx*4], edx
cmp r8, rbx
jb 0x14020b6d0
jmp 0x14020b9dd
cmp eax, 2
jne 0x14020b794
mov rcx, qword [rbp + 0x20]
xor r8d, r8d
shr rcx, 4
mov r9, r11
test rbx, rbx
je 0x14020b9dd
mov rax, qword [rbp + 0x8b58]
lea r11, [rcx + rcx]
mov rbp, qword [rsp + 0x20]
movzx r10d, byte [rax + 0x80d0]
movzx edx, word [r9 + rbp*2]
mov rax, r8
and eax, 0xf
sub edx, 0x8000
add rax, rdi
mov ecx, r10d
sar edx, cl
add r9, r11
mov rcx, r12
shl edx, cl
movzx ecx, byte [rax + r14]
mov rax, r8
and rax, 0xfffffffffffffff0
inc r8
shl rax, 4
add rcx, rax
mov dword [rsi + rcx*4], edx
cmp r8, rbx
jb 0x14020b743
mov rbp, qword [rsp + 0x90]
mov r11, qword [rsp + 0x28]
jmp 0x14020b9dd
cmp eax, 3
jne 0x14020b81c
mov rcx, qword [rbp + 0x20]
xor r8d, r8d
mov rax, qword [rbp + 0x8b58]
mov r9, r11
shr rcx, 4
test rbx, rbx
je 0x14020b9dd
movzx r10d, byte [rax + 0x80d0]
lea r11, [rcx + rcx]
mov rbp, qword [rsp + 0x20]
nop dword [rax]
movsx edx, word [r9 + rbp*2]
mov rax, r8
and eax, 0xf
movzx ecx, r10b
add rax, rdi
sar edx, cl
mov rcx, r12
add r9, r11
shl edx, cl
movzx ecx, byte [rax + r14]
mov rax, r8
and rax, 0xfffffffffffffff0
inc r8
shl rax, 4
add rcx, rax
mov dword [rsi + rcx*4], edx
cmp r8, rbx
jb 0x14020b7d0
mov rbp, qword [rsp + 0x90]
mov r11, qword [rsp + 0x28]
jmp 0x14020b9dd
cmp eax, 4
jne 0x14020b8a0
mov rax, qword [rbp + 0x20]
xor r8d, r8d
shr rax, 4
mov r9, r11
test rbx, rbx
je 0x14020b9dd
mov rbp, qword [rsp + 0x20]
lea r10, [rax + rax]
nop dword [rax]
nop word [rax + rax]
movsx edx, word [r9 + rbp*2]
mov rcx, r12
mov eax, edx
add r9, r10
sar eax, 0x1f
and edx, 0x7fff
xor edx, eax
sub edx, eax
mov rax, r8
and eax, 0xf
shl edx, cl
add rax, rdi
movzx ecx, byte [rax + r14]
mov rax, r8
and rax, 0xfffffffffffffff0
inc r8
shl rax, 4
add rcx, rax
mov dword [rsi + rcx*4], edx
cmp r8, rbx
jb 0x14020b850
mov rbp, qword [rsp + 0x90]
jmp 0x14020b9dd
cmp eax, 6
jne 0x14020b92a
mov rcx, qword [rbp + 0x20]
xor r8d, r8d
shr rcx, 5
mov r9, r11
test rbx, rbx
je 0x14020b9dd
mov rax, qword [rbp + 0x8b58]
lea r11, [rcx*4]
mov rbp, qword [rsp + 0x20]
movzx r10d, byte [rax + 0x80d0]
nop dword [rax]
mov edx, dword [r9 + rbp*4]
mov rax, r8
and eax, 0xf
mov ecx, r10d
add rax, rdi
sar edx, cl
mov rcx, r12
add r9, r11
shl edx, cl
movzx ecx, byte [rax + r14]
mov rax, r8
and rax, 0xfffffffffffffff0
inc r8
shl rax, 4
add rcx, rax
mov dword [rsi + rcx*4], edx
cmp r8, rbx
jb 0x14020b8e0
mov rbp, qword [rsp + 0x90]
mov r11, qword [rsp + 0x28]
jmp 0x14020b9dd
cmp eax, 7
jne 0x14020ba8e
mov rax, qword [rbp + 0x8b58]
xor r14d, r14d
mov rcx, qword [rbp + 0x20]
mov r15, r11
shr rcx, 5
movzx edx, byte [rax + 0x80d0]
movzx eax, byte [rax + 0x80d1]
mov byte [rsp + 0xa0], al
test rbx, rbx
je 0x14020b9d6
lea r13, [rcx*4]
movzx ebp, dl
nop dword [rax]
movss xmm0, dword [r15 + r9*4]
movzx r8d, bpl
movzx edx, al
call fcn.1402096e0
mov r9, qword [rsp + 0x20]
lea rdx, [0x1403f9fa0]
mov rcx, r12
add r15, r13
shl eax, cl
mov rcx, r14
and ecx, 0xf
add rcx, rdi
movzx edx, byte [rcx + rdx]
mov rcx, r14
and rcx, 0xfffffffffffffff0
inc r14
shl rcx, 4
add rdx, rcx
mov dword [rsi + rdx*4], eax
movzx eax, byte [rsp + 0xa0]
cmp r14, rbx
jb 0x14020b970
mov rbp, qword [rsp + 0x90]
mov r11, qword [rsp + 0x28]
mov r13, qword [rsp + 0x30]
lea r14, [0x1403f9fa0]
inc r13
mov qword [rsp + 0x30], r13
cmp r13, qword [rsp + 0x38]
jae 0x14020b9f8
add r11, qword [rbp + 0x8100]
mov qword [rsp + 0x28], r11
mov rax, qword [rbp + 0x86e0]
mov r8, rbx
shl rax, 4
cmp rbx, rax
jae 0x14020ba5e
lea r9, [rbx - 1]
mov r10, r9
and r9, 0xfffffffffffffff0
and r10d, 0xf
add r10, rdi
shl r9, 4
movzx edx, byte [r10 + r14]
mov rax, r8
and eax, 0xf
add rdx, r9
add rax, rdi
movzx ecx, byte [rax + r14]
mov rax, r8
and rax, 0xfffffffffffffff0
inc r8
shl rax, 4
add rcx, rax
mov eax, dword [rsi + rdx*4]
mov dword [rsi + rcx*4], eax
mov rax, qword [rbp + 0x86e0]
shl rax, 4
cmp r8, rax
jb 0x14020ba21
mov r9, qword [rsp + 0x20]
add rdi, 0x10
mov eax, dword [rsp + 0xa8]
cmp rdi, 0x100
jb 0x14020b6b0
xor eax, eax
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov eax, 0xffffffff
jmp 0x14020ba7d