Function at 0x14002b570
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
push r15
mov r8, qword [rdx]
mov r9, rcx
movzx esi, word [rcx]
mov r15d, 0x200
movzx eax, byte [r8 + 0x72]
movzx r10d, byte [r8 + 0x73]
shl r10d, 8
or r10d, eax
movzx eax, byte [r8 + 0x71]
shl r10d, 8
or r10d, eax
movzx eax, byte [r8 + 0x74]
shl eax, 0x18
or r10d, eax
cmp r10d, 0x10000
jg 0x14003fc2a
mov ebp, dword [rdx + 0xc]
mov r14d, ebp
movzx eax, byte [r8 + 4]
movzx ecx, byte [r8 + 5]
movzx r11d, byte [r8 + 0x4b]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 2]
shl ecx, 8
or ecx, eax
movzx eax, byte [r8 + 0x4a]
cmp ecx, ebp
cmovbe r14d, ecx
movsx ecx, word [r9 + 8]
shl r11w, 8
or r11w, ax
movsx eax, r11w
cdq
xor eax, edx
sub eax, edx
cmp eax, ecx
jg 0x14002b719
movzx ecx, byte [r8 + 0x4f]
movzx eax, byte [r8 + 0x4e]
shl cx, 8
or cx, ax
jl 0x14002b719
movzx ecx, byte [r8 + 0x4d]
movzx eax, byte [r8 + 0x4c]
shl cx, 8
or cx, ax
cmp cx, r11w
jg 0x14002b719
movzx ecx, byte [r9 + 4]
movzx r11d, byte [r9 + 5]
cmp cl, r11b
ja 0x14002b719
mov dl, byte [r9 + 6]
xor edi, edi
lea eax, [rcx + rdx]
cmp al, r11b
ja 0x14003fc39
mov dl, byte [r9 + 7]
lea eax, [rcx + rdx]
cmp al, r11b
ja 0x14003fc56
movsxd rbx, dword [r9 + 0x10]
cmp ebx, 0x76
jne 0x14003fc73
sub r11d, ecx
lea r9, [r8 + rbx]
lea rdx, [r9 + 2]
cmp si, r15w
jne 0x14003fc84
movzx eax, word [rdx]
cmp r10d, eax
jne 0x14002b719
lea r11d, [r11*4 + 4]
lea eax, [rbx + 2]
add eax, r11d
cmp eax, ebp
ja 0x14002b719
mov eax, r11d
lea r8, [r9 + 2]
add r8, rax
cmp rdx, r8
jae 0x14002b6fa
movzx ecx, byte [rdx + 1]
movzx eax, byte [rdx]
shl ecx, 8
or ecx, eax
cmp ecx, r14d
ja 0x14002b719
add rdx, 4
jmp 0x14002b6d0
mov eax, 0x300
cmp si, ax
je 0x14003fd04
mov eax, 1
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret
xor eax, eax
jmp 0x14002b6ff
cmp si, r15w
jne 0x14002b5cb
jmp 0x14002b719
cmp dl, cl
jb 0x14003fc4d
cmp dl, r11b
ja 0x14003fc4d
sub dl, cl
mov byte [r9 + 6], dl
jmp 0x14002b67a
mov byte [r9 + 6], dil
jmp 0x14002b67a
cmp dl, cl
jb 0x14003fc6a
cmp dl, r11b
ja 0x14003fc6a
sub dl, cl
mov byte [r9 + 7], dl
jmp 0x14002b68a
mov byte [r9 + 7], dil
jmp 0x14002b68a
cmp ebx, 0x94
jne 0x14002b719
jmp 0x14002b697
movzx eax, byte [r9 + 3]
movzx ecx, byte [r9 + 4]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx]
shl ecx, 8
or ecx, eax
movzx eax, byte [r9 + 5]
shl eax, 0x18
or ecx, eax
cmp r10d, ecx
jne 0x14002b719
lea eax, [r11 + 1]
lea ecx, [rax + rax*2]
add ecx, ecx
lea eax, [rbx + 2]
add eax, ecx
cmp eax, ebp
ja 0x14002b719
mov eax, ecx
lea r10, [r9 + 2]
add r10, rax
jmp 0x14003fcfa
movzx eax, byte [rdx + 2]
movzx ecx, byte [rdx + 3]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 1]
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx]
shl ecx, 8
or ecx, eax
cmp ecx, r14d
ja 0x14002b719
add rdx, 6
cmp rdx, r10
jb 0x14003fccf
jmp 0x14002b6ec
test byte [r8 + 0x76], 0xe0
jne 0x14002b719
movzx ecx, byte [r8 + 0x81]
movzx edx, byte [r8 + 0x82]
shl edx, 8
or edx, ecx
movzx ecx, byte [r8 + 0x80]
shl edx, 8
or edx, ecx
movzx ecx, byte [r8 + 0x83]
shl ecx, 0x18
or edx, ecx
sete dil
mov eax, edi
jmp 0x14002b6ff