Function at 0x14009dbc0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x88
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm8
movaps xmmword [rsp + 0x40], xmm9
mov rsi, rcx
mov edi, edx
mov rbx, r8
mov rbp, r9
mov edx, edi
mov rcx, rsi
call fcn.140099db0
mov ecx, eax
lea rsi, [rsi + rcx*2]
sub edi, eax
jne 0x14009dc3d
xor eax, eax
mov qword [rbx], rax
mov dword [rbp], eax
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x40]
add rsp, 0x88
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
xor r14d, r14d
xor r15d, r15d
mov ecx, edi
lea r12, [rsi + rcx*2]
test byte [0x1401a67b0], 0x10
je 0x14009dd43
cmp edi, 8
jl 0x14009de78
movups xmm6, xmmword [0x14015fc90]
movups xmm7, xmmword [case.0x14008819e.5]
movups xmm8, xmmword [0x14015fcb0]
lea rdi, [r12 - 0x10]
movups xmm9, xmmword [rsi]
add rsi, 0x10
movaps xmm0, xmm9
pminuw xmm0, xmm6
movaps xmm1, xmm9
paddusw xmm1, xmm7
por xmm0, xmm1
pmovmskb ecx, xmm0
test byte [0x1401a67b0], 0x40
je 0x14009dcae
xor r13d, r13d
popcnt r13d, ecx
jmp 0x14009dcb6
call fcn.140087a20
mov r13d, eax
mov r13d, r13d
movaps xmm0, xmm9
paddw xmm0, xmm8
movaps xmm1, xmm7
pcmpgtw xmm1, xmm0
pmovmskb ecx, xmm1
cmp ecx, 0xffff
jne 0x14009dce2
add r14, r13
cmp rsi, rdi
jbe 0x14009dc7a
jmp 0x14009de78
not ecx
psrlw xmm9, 3
pmovmskb eax, xmm9
mov edx, eax
and edx, ecx
xor eax, 0x5555
and ecx, eax
shl ecx, 2
movzx eax, cx
cmp eax, edx
jne 0x14009dd3a
cmp ecx, 0xffff
jbe 0x14009dd17
movzx ecx, cx
add r13, 0xfffffffffffffffe
add rsi, 0xfffffffffffffffe
test byte [0x1401a67b0], 0x40
je 0x14009dd28
xor eax, eax
popcnt eax, ecx
jmp 0x14009dd2d
call fcn.140087a20
mov eax, eax
sub r15d, eax
sub r14, rax
sub r14, rax
jmp 0x14009dcd5
add rsi, 0xfffffffffffffff0
jmp 0x14009de78
cmp edi, 8
jl 0x14009de78
movups xmm0, xmmword [0x14015fc90]
movups xmm1, xmmword [0x14015fcc0]
movups xmm2, xmmword [0x14015fcd0]
lea rax, [r12 - 0x10]
movups xmm3, xmmword [rsi]
movups xmm4, xmmword [0x14015fce0]
movaps xmm5, xmm3
psubw xmm5, xmm4
movaps xmm6, xmm0
psubw xmm6, xmm4
movaps xmm7, xmm5
pcmpgtw xmm7, xmm6
movaps xmm6, xmm3
pcmpeqw xmm6, xmm0
por xmm6, xmm7
xorps xmm7, xmm7
psubw xmm7, xmm6
movaps xmm6, xmm1
psubw xmm6, xmm4
pcmpgtw xmm5, xmm6
movaps xmm8, xmm3
pcmpeqw xmm8, xmm1
por xmm5, xmm8
psubw xmm7, xmm5
movaps xmmword [rsp + 0x30], xmm7
mov rdx, qword [rsp + 0x30]
movaps xmmword [rsp + 0x30], xmm7
add rdx, qword [rsp + 0x38]
mov ecx, edx
shr rdx, 0x20
add ecx, edx
movzx edx, cx
shr ecx, 0x10
add ecx, edx
psubw xmm3, xmm2
psubw xmm3, xmm4
pcmpgtw xmm6, xmm3
xorps xmm5, xmm5
pcmpeqw xmm5, xmm6
pmovmskb edx, xmm5
cmp edx, 0xffff
je 0x14009de66
movups xmm5, xmmword [0x14015fcf0]
psubw xmm5, xmm4
pcmpgtw xmm5, xmm3
movaps xmm3, xmm5
pandn xmm3, xmm6
pextrw edx, xmm3, 0
test edx, edx
jne 0x14009decf
xor edx, edx
xor r8d, r8d
movups xmmword [rsp + 0x20], xmm5
movzx r9d, word [rsp + r8*2 + 0x20]
sub edx, r9d
movzx edx, dx
inc r8d
movups xmmword [rsp + 0x20], xmm3
movzx r10d, word [rsp + r8*2 + 0x20]
cmp r10d, r9d
jne 0x14009de78
cmp r8d, 7
jl 0x14009de1f
pextrw r8d, xmm5, 7
test r8d, r8d
je 0x14009de5b
add rsi, 0xfffffffffffffffe
add ecx, 0xfffffffe
mov edx, edx
sub r15d, edx
sub r14, rdx
sub r14, rdx
mov edx, ecx
add r14, rdx
add rsi, 0x10
cmp rsi, rax
jbe 0x14009dd66
cmp rsi, r12
jae 0x14009decf
movzx eax, word [rsi]
cmp eax, 0x7f
jbe 0x14009dec6
lea edx, [rax + 0x1f800]
shr edx, 0x10
add r14, rdx
add eax, 0xffff2800
cmp eax, 0x7ff
ja 0x14009dec6
add r14, 0xfffffffffffffffe
mov rax, r12
sub rax, rsi
cmp rax, 4
jb 0x14009decf
mov eax, dword [rsi]
add eax, 0x23ff2800
test eax, 0xfc00fc00
jne 0x14009decf
dec r15d
add r14, 2
add rsi, 2
add rsi, 2
cmp rsi, r12
jb 0x14009de7d
mov qword [rbx], r14
mov dword [rbp], r15d
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm9, xmmword [rsp + 0x40]
add rsp, 0x88
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret