Function at 0x14005cb30
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x60
mov rax, qword [0x1400b0118]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rax, qword [r8]
mov r12, r8
mov qword [rsp + 0x20], rdx
xor ebx, ebx
mov qword [rsp + 0x38], r8
xor r11b, r11b
mov qword [rsp + 0x30], rcx
and byte [rax], 0xf8
mov rax, qword [r8]
movsxd r14, r9d
mov dword [rsp + 8], ebx
mov dword [rsp + 0xc], ebx
and byte [rax + 1], 0xfc
mov rax, qword [r8]
and byte [rax + 2], 0xf8
mov rax, qword [r8 + 8]
and byte [rax], 0xf8
mov rax, qword [r8 + 8]
and byte [rax + 1], 0xfc
mov rax, qword [r8 + 8]
and byte [rax + 2], 0xf8
mov rsi, qword [r8]
mov r15, qword [r8 + 8]
mov rbp, rsi
mov qword [rsp + 0x18], r15
mov rdi, r15
movzx eax, byte [rsi]
movzx edx, byte [rsi + 1]
movzx r8d, byte [r15 + 1]
shl ax, 5
or dx, ax
movzx eax, byte [rsi + 2]
shr al, 3
movzx ecx, al
movzx eax, byte [r15]
shl ax, 5
or r8w, ax
shl dx, 3
movzx eax, byte [r15 + 2]
or dx, cx
shr al, 3
shl r8w, 3
movzx ecx, al
or r8w, cx
mov word [rsp], dx
mov word [rsp + 2], r8w
cmp dx, r8w
jae 0x14005cc2a
mov rdi, rsi
mov qword [r12 + 8], rsi
mov rsi, r15
mov qword [r12], r15
mov rbp, r15
mov qword [rsp + 0x18], rdi
mov r15, rdi
mov word [rsp], r8w
mov word [rsp + 2], dx
lea rax, [rsp + 0x40]
sub rsi, rax
lea rax, [rsp + 0x40]
sub rdi, rax
nop word [rax + rax]
movzx eax, byte [rbx + rbp]
lea r10, [rsp + 0x40]
add r10, rbx
movzx r9d, byte [rsi + r10]
movzx r8d, byte [rdi + r10]
mov byte [r10], al
movzx eax, byte [rbx + r15]
inc rbx
mov byte [r10 + 4], al
mov eax, 0xaaaaaaab
lea ecx, [r8 + r9*2]
mul ecx
lea ecx, [r9 + r8*2]
mov eax, 0xaaaaaaab
shr edx, 1
mov byte [r10 + 8], dl
mul ecx
shr edx, 1
mov byte [r10 + 0xc], dl
cmp rbx, 3
jl 0x14005cc40
mov r10d, dword [rsp + 0xc0]
xor r13d, r13d
mov dword [rsp + 4], 0
mov r9, r14
mov qword [rsp + 0x28], r14
test r10d, r10d
jle 0x14005cda7
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x10], rax
nop dword [rax + rax]
test r9, r9
jle 0x14005cd88
lea esi, [r13*8]
mov r12, r9
lea r8, [rax + 2]
nop dword [rax + rax]
movzx ebp, byte [r8 - 2]
lea r9, [rsp + 0x41]
movzx r14d, byte [r8 - 1]
mov edi, 0xffffffff
movzx r15d, byte [r8]
xor ebx, ebx
nop word [rax + rax]
movzx eax, byte [r9 - 1]
lea r9, [r9 + 4]
mov edx, ebp
mov ecx, r14d
sub edx, eax
movzx eax, byte [r9 - 4]
sub ecx, eax
imul edx, edx
movzx eax, byte [r9 - 3]
imul ecx, ecx
shl edx, 2
shl ecx, 4
add edx, ecx
mov ecx, r15d
sub ecx, eax
movzx eax, r11b
imul ecx, ecx
add edx, ecx
movzx ecx, bl
cmp edx, edi
mov r10d, edx
cmovae r10d, edi
cmovae ecx, eax
inc ebx
movzx r11d, cl
mov edi, r10d
cmp ebx, 4
jl 0x14005cd00
add dword [rsp + 4], r10d
mov ecx, esi
mov eax, r11d
add esi, 2
shl eax, cl
add r8, 4
or dword [rsp + 8], eax
sub r12, 1
jne 0x14005cce0
mov rax, qword [rsp + 0x10]
mov r9, qword [rsp + 0x28]
mov r10d, dword [rsp + 0xc0]
add rax, 0x10
inc r13d
mov qword [rsp + 0x10], rax
cmp r13d, r10d
jl 0x14005ccc0
mov r15, qword [rsp + 0x18]
mov r12, qword [rsp + 0x38]
mov r8d, dword [rsp + 0xc8]
lea eax, [r8 - 0x83f0]
cmp eax, 1
jbe 0x14005cdc6
mov r12d, 0xffffffff
jmp 0x14005cf44
mov rdx, qword [r12]
xor r12d, r12d
movzx ecx, byte [r15]
mov word [rsp + 0x4c], 0
mov byte [rsp + 0x4e], 0
movzx eax, byte [rdx]
add ecx, eax
movzx eax, byte [rdx + 1]
shr ecx, 1
mov byte [rsp + 0x48], cl
movzx ecx, byte [r15 + 1]
add ecx, eax
movzx eax, byte [rdx + 2]
shr ecx, 1
mov byte [rsp + 0x49], cl
movzx ecx, byte [r15 + 2]
add ecx, eax
xor eax, eax
shr ecx, 1
mov byte [rsp + 0x4a], cl
mov dword [rsp + 0x10], eax
test r10d, r10d
jle 0x14005cf44
mov rdx, qword [rsp + 0x20]
xor r13d, r13d
mov rcx, rdx
mov qword [rsp + 0x18], rdx
nop dword [rax]
xor edi, edi
test r9, r9
jle 0x14005cf28
lea r15d, [rax*8]
lea rbx, [rcx + 2]
nop word [rax + rax]
mov r10d, 0xffffffff
cmp r8d, 0x83f1
jne 0x14005ce75
lea rax, [rdi + r13]
cmp byte [rdx + rax*4 + 3], 0x7f
ja 0x14005ce75
mov r11b, 3
xor r10d, r10d
jmp 0x14005cef3
movzx esi, byte [rbx - 2]
lea r9, [rsp + 0x41]
movzx ebp, byte [rbx - 1]
xor r8d, r8d
movzx r14d, byte [rbx]
nop dword [rax]
movzx ecx, byte [r9 - 1]
mov eax, esi
sub eax, ecx
mov edx, ebp
movzx ecx, byte [r9]
sub edx, ecx
imul eax, eax
movzx ecx, byte [r9 + 1]
imul edx, edx
shl eax, 2
shl edx, 4
add eax, edx
mov edx, r14d
sub edx, ecx
imul edx, edx
add eax, edx
cmp eax, r10d
jae 0x14005ced4
mov r10d, eax
movzx r11d, r8b
cmp r8d, 1
jg 0x14005ced4
xor r11b, 1
inc r8d
add r9, 4
cmp r8d, 3
jl 0x14005ce90
mov r8d, dword [rsp + 0xc8]
mov r9, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
mov ecx, r15d
movzx eax, r11b
shl eax, cl
add r12d, r10d
or dword [rsp + 0xc], eax
add r15d, 2
inc rdi
add rbx, 4
cmp rdi, r9
jl 0x14005ce50
mov eax, dword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov r10d, dword [rsp + 0xc0]
inc eax
add rcx, 0x10
add r13, 4
mov dword [rsp + 0x10], eax
mov qword [rsp + 0x18], rcx
cmp eax, r10d
jl 0x14005ce30
cmp dword [rsp + 4], r12d
ja 0x14005cf6f
cmp byte [rsp + 0xd0], 0
jne 0x14005cf6f
mov edi, dword [rsp + 8]
mov eax, edi
movzx r8d, word [rsp + 2]
mov ecx, edi
movzx esi, word [rsp]
movzx ebx, r8w
mov edx, edi
jmp 0x14005cf8e
mov r8d, dword [rsp + 0xc]
mov eax, r8d
movzx esi, word [rsp + 2]
mov ecx, r8d
mov edx, r8d
mov edi, r8d
movzx r8d, word [rsp]
movzx ebx, r8w
mov r14, qword [rsp + 0x30]
movzx r9d, si
lea r10, [r14 + 4]
shr eax, 0x18
shr ecx, 0x10
mov r11, r10
shr edx, 8
mov byte [r14], sil
shr r8w, 8
shr r9w, 8
mov byte [r14 + 1], r9b
mov byte [r14 + 2], bl
mov byte [r14 + 3], r8b
mov byte [r10], dil
mov byte [r10 + 1], dl
mov byte [r10 + 2], cl
mov byte [r10 + 3], al
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.14006c570
mov rbx, qword [rsp + 0xa8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret