Function at 0x140033530
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov r11, rsp
push rbp
push r14
sub rsp, 0x68
mov ebp, dword [rcx + 4]
mov r14, rdx
mov r8d, ebp
mov eax, ebp
shl r8d, 0x10
and eax, 0xff00
or r8d, eax
mov r9, rcx
and r8d, 0xffffff
cmp r8d, 0x7f7f00
jne 0x1400337e9
movzx eax, byte [rcx]
xor r10d, r10d
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
movzx esi, word [rcx]
mov qword [r11 - 0x18], r12
mov r12d, ebp
imul r8d, eax, 0x25
movzx eax, byte [rcx + 1]
mov qword [r11 - 0x28], r15
mov r15d, ebp
lea r11, [rcx + 1]
shr r12d, 0x10
shr r15d, 0x18
add r8d, eax
cmp esi, 2
je 0x1400335b2
cmp esi, 0x17
jne 0x1400335bc
lea r11, [rcx + 8]
lea r10d, [rsi - 7]
jmp 0x1400335bc
lea r11, [rcx + 4]
mov r10d, 4
xor edx, edx
test r10, r10
je 0x1400335e5
xor eax, eax
nop word [rax + rax]
movzx ecx, byte [rax + r11]
inc edx
imul r8d, r8d, 0x25
mov eax, edx
add r8d, ecx
cmp rax, r10
jb 0x1400335d0
movzx eax, r8w
lea rcx, [0x140000000]
and eax, 0x7f
mov rbx, qword [rcx + rax*8 + 0xd6b00]
test rbx, rbx
je 0x1400337cf
movzx ecx, word [r9 + 2]
mov qword [rsp + 0x90], rdi
mov edi, 2
cmp cx, word [rbx + 0x22]
jne 0x140033812
cmp si, word [rbx + 0x20]
jne 0x140033812
cmp di, si
jne 0x1400337f1
xor eax, eax
cmp ebp, dword [rbx + 0x24]
sete al
test eax, eax
je 0x140033812
test rbx, rbx
je 0x1400337c7
mov rbp, qword [rbx + 0x80]
test rbp, rbp
je 0x1400337c7
mov byte [r14], 8
mov eax, 0x3f
mov word [r14 + 2], ax
mov eax, dword [rbp + 0xf4]
mov dword [r14 + 8], eax
mov eax, dword [rbp + 0xf8]
mov dword [r14 + 0xc], eax
mov eax, dword [rbp + 0xfc]
mov dword [r14 + 0x10], eax
mov eax, dword [rbp + 0x100]
mov dword [r14 + 0x14], eax
mov eax, dword [rbp + 0x104]
mov dword [r14 + 0x18], eax
mov eax, dword [rbp + 0x108]
mov dword [r14 + 0x1c], eax
mov eax, dword [rbp + 0x10c]
mov dword [r14 + 0x20], eax
mov eax, dword [rbp + 0x110]
mov dword [r14 + 0x24], eax
mov dword [r14 + 4], 0xfffffffc
mov rax, qword [rbp + 0x118]
mov qword [r14 + 0x48], rax
mov rax, qword [rbp + 0x120]
mov qword [r14 + 0x50], rax
cmp byte [r14 + 1], dil
jbe 0x14003379f
mov qword [rsp + 0x58], r13
movabs r13, 0x8000000000000000
movaps xmmword [rsp + 0x40], xmm6
movsd xmm6, qword [0x1400bdda0]
movaps xmmword [rsp + 0x30], xmm7
movsd xmm7, qword [0x1400bde10]
movaps xmmword [rsp + 0x20], xmm8
xorps xmm8, xmm8
nop word [rax + rax]
xor esi, esi
lea eax, [rdi - 2]
movsd xmm0, qword [rbp + rax*8 + 0x140]
comisd xmm8, xmm0
seta sil
test esi, esi
je 0x14003373e
xorps xmm0, xmm7
mov edx, 0x20
call fcn.140082910
xor eax, eax
comisd xmm0, xmm6
jb 0x14003375d
subsd xmm0, xmm6
comisd xmm0, xmm6
jae 0x14003375d
mov rax, r13
cvttsd2si rcx, xmm0
add rcx, rax
test esi, esi
je 0x14003376f
not rcx
inc rcx
mov eax, edi
inc edi
mov dword [r14 + rax*8 + 0x4c], ecx
shr rcx, 0x20
mov dword [r14 + rax*8 + 0x48], ecx
movzx eax, byte [r14 + 1]
cmp edi, eax
jb 0x140033720
movaps xmm8, xmmword [rsp + 0x20]
movaps xmm7, xmmword [rsp + 0x30]
movaps xmm6, xmmword [rsp + 0x40]
mov r13, qword [rsp + 0x58]
movzx eax, r12b
lea rcx, [0x140000000]
mov rax, qword [rcx + rax*8 + 0xa7710]
mov r9, qword [rax + 0x28]
test r9, r9
je 0x1400337c7
mov r8, rbx
mov rdx, r14
mov ecx, r15d
call r9
mov rdi, qword [rsp + 0x90]
mov r12, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x80]
mov r15, qword [rsp + 0x50]
add rsp, 0x68
pop r14
pop rbp
ret
mov rax, qword [rbx + 0x30]
cmp qword [r9 + 0x10], rax
jne 0x140033812
mov rax, qword [rbx + 0x28]
cmp qword [r9 + 8], rax
jne 0x140033812
mov eax, dword [rbx + 0x38]
cmp dword [r9 + 0x18], eax
je 0x140033643
mov rbx, qword [rbx + 8]
test rbx, rbx
jne 0x140033616
jmp 0x1400337c7