Function at 0x14000b8d0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x70
mov rsi, qword [rsp + 0xe8]
xor r15d, r15d
mov rbx, rdx
cmp r8d, 8
mov eax, r15d
mov rdi, rcx
sete al
mov r10d, r8d
mov r8d, r15d
lea r13d, [r15 + 2]
mov rdx, rsi
mov ebp, 8
lea ecx, [rax + 6]
mov eax, r15d
shr rdx, cl
mov rcx, rbx
add rdx, 2
mov qword [rsp + 0xe8], rdx
cmp rsi, 0x4000
mov edx, r15d
setae dl
cmp rsi, 0x400
setae al
lea r12d, [rax + 3]
mov rax, rdi
add r12d, edx
mov edx, ebp
cmp rsi, 0x100
setb r8b
mov dword [rsp + 0xc8], r8d
nop word [rax + rax]
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rax]
lea rax, [rax + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm1, xmmword [rax - 0x70]
movups xmmword [rcx - 0x70], xmm1
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx - 0x60], xmm0
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx - 0x50], xmm1
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx - 0x40], xmm0
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx - 0x30], xmm1
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx - 0x20], xmm0
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x14000b960
mov eax, dword [rax]
mov dword [rcx], eax
test r9d, r9d
je 0x14000b9ea
mov r8, qword [rsp + 0xe0]
mov r9, rsi
mov rdx, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0xd0]
add rsp, 0x70
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
jmp fcn.14000b820
mov ecx, dword [rdi + 0x400]
mov edx, 6
cmp ecx, r13d
mov eax, 0x3f
cmove eax, edx
mov rdx, qword [rsp + 0xd8]
cmp rsi, rax
ja 0x14000ba33
mov r8, qword [rsp + 0xe0]
mov r9, rsi
mov rcx, qword [rsp + 0xd0]
add rsp, 0x70
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
jmp fcn.14000b820
lea rax, [r12 + 1]
cmp rdx, rax
jae 0x14000ba53
mov rax, 0xffffffffffffffba
add rsp, 0x70
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov dword [rsp + 0xc0], ecx
mov eax, r15d
cmp r10d, 4
jge 0x14000ba6d
cmp rsi, 0x400
setbe al
mov qword [rsp + 0xb0], r14
cmp ecx, r13d
jne 0x14000ba8d
cmp r12, 3
jne 0x14000ba8d
mov dword [rsp + 0xc8], 1
jmp 0x14000ba92
test r8d, r8d
je 0x14000babf
mov dword [rsp + 0x58], eax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 1
jmp 0x14000bae7
mov dword [rsp + 0x58], eax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], r15d
mov r14, qword [rsp + 0xd0]
mov r9, rsi
mov r8, qword [rsp + 0xe0]
sub rdx, r12
lea rcx, [r12 + r14]
call fcn.1400057c0
cmp dword [rsp + 0xc0], r15d
mov rdx, rax
mov eax, 3
mov ecx, r15d
cmovne r13d, eax
mov rax, rsi
sub rax, qword [rsp + 0xe8]
cmp rdx, rax
mov eax, r15d
setae cl
cmp rdx, 0xffffffffffffff88
seta al
or ecx, eax
mov eax, r15d
test rdx, rdx
sete al
or ecx, eax
je 0x14000bbc7
nop dword [rax + rax]
lea rbx, [rbx + 0x80]
movups xmm0, xmmword [rdi]
lea rdi, [rdi + 0x80]
movups xmmword [rbx - 0x80], xmm0
movups xmm1, xmmword [rdi - 0x70]
movups xmmword [rbx - 0x70], xmm1
movups xmm0, xmmword [rdi - 0x60]
movups xmmword [rbx - 0x60], xmm0
movups xmm1, xmmword [rdi - 0x50]
movups xmmword [rbx - 0x50], xmm1
movups xmm0, xmmword [rdi - 0x40]
movups xmmword [rbx - 0x40], xmm0
movups xmm1, xmmword [rdi - 0x30]
movups xmmword [rbx - 0x30], xmm1
movups xmm0, xmmword [rdi - 0x20]
movups xmmword [rbx - 0x20], xmm0
movups xmm1, xmmword [rdi - 0x10]
movups xmmword [rbx - 0x10], xmm1
sub rbp, 1
jne 0x14000bb50
mov eax, dword [rdi]
mov r9, rsi
mov r8, qword [rsp + 0xe0]
mov rcx, r14
mov rdx, qword [rsp + 0xd8]
mov dword [rbx], eax
call fcn.14000b820
jmp 0x14000bd3b
cmp rdx, 1
jne 0x14000bcb9
lea rbx, [rbx + 0x80]
movups xmm0, xmmword [rdi]
lea rdi, [rdi + 0x80]
movups xmmword [rbx - 0x80], xmm0
movups xmm1, xmmword [rdi - 0x70]
movups xmmword [rbx - 0x70], xmm1
movups xmm0, xmmword [rdi - 0x60]
movups xmmword [rbx - 0x60], xmm0
movups xmm1, xmmword [rdi - 0x50]
movups xmmword [rbx - 0x50], xmm1
movups xmm0, xmmword [rdi - 0x40]
movups xmmword [rbx - 0x40], xmm0
movups xmm1, xmmword [rdi - 0x30]
movups xmmword [rbx - 0x30], xmm1
movups xmm0, xmmword [rdi - 0x20]
movups xmmword [rbx - 0x20], xmm0
movups xmm1, xmmword [rdi - 0x10]
movups xmmword [rbx - 0x10], xmm1
sub rbp, 1
jne 0x14000bbd1
mov eax, dword [rdi]
cmp rsi, 0xfff
mov dword [rbx], eax
mov eax, r15d
seta al
cmp rsi, 0x1f
seta r15b
lea edx, [rax + 1]
add edx, r15d
mov eax, edx
sub eax, 1
je 0x14000bc98
sub eax, 1
je 0x14000bc75
cmp eax, 1
jne 0x14000bca2
mov rax, qword [rsp + 0xe0]
shl rsi, 4
add esi, 0xd
mov dword [r14], esi
movzx eax, byte [rax]
mov byte [rdx + r14], al
lea eax, [rdx + 1]
jmp 0x14000bd3b
mov rax, qword [rsp + 0xe0]
shl rsi, 4
add si, 5
mov word [r14], si
movzx eax, byte [rax]
mov byte [rdx + r14], al
lea eax, [rdx + 1]
jmp 0x14000bd3b
shl sil, 3
inc sil
mov byte [r14], sil
mov rax, qword [rsp + 0xe0]
movzx eax, byte [rax]
mov byte [rdx + r14], al
lea eax, [rdx + 1]
jmp 0x14000bd3b
cmp r13d, 2
jne 0x14000bcc9
mov dword [rbx + 0x400], 1
mov rax, r12
sub rax, 3
je 0x14000bd12
sub rax, 1
je 0x14000bcfe
cmp rax, 1
jne 0x14000bd37
mov eax, edx
shl eax, 0x12
add eax, esi
shl eax, 4
add eax, 0xc
add eax, r13d
mov dword [r14], eax
mov rax, rdx
shr rax, 0xa
mov byte [r14 + 4], al
jmp 0x14000bd37
mov eax, edx
shl eax, 0xe
add eax, esi
shl eax, 4
add eax, ebp
add eax, r13d
mov dword [r14], eax
jmp 0x14000bd37
mov ecx, dword [rsp + 0xc8]
mov eax, edx
shl eax, 0xa
xor ecx, 1
add eax, esi
shl eax, 4
add eax, r13d
lea ecx, [rax + rcx*4]
mov word [r14], cx
shr ecx, 0x10
mov byte [r14 + 2], cl
lea rax, [rdx + r12]
mov r14, qword [rsp + 0xb0]
add rsp, 0x70
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret