Function at 0x1400d62c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rax, rsp
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa8
vmovaps xmmword [rax - 0x58], xmm6
vmovaps xmmword [rax - 0x68], xmm7
vmovaps xmmword [rax - 0x78], xmm8
vmovaps xmmword [rsp + 0x60], xmm9
vmovaps xmmword [rsp + 0x50], xmm10
lea rbp, [rsp + 0x20]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14011e7d8]
xor rax, rsp
mov qword [rbp + 0x20], rax
sub r8, rdx
mov qword [rbp + 0x18], rdx
mov r11, rdx
mov qword [rbp], rcx
mov rbx, r9
mov r10, rcx
movsxd rcx, dword [rcx + 0x3c]
mov rax, r8
mov r9, qword [rsp + 0x110]
cqo
and edx, 3
mov qword [rbp + 0x10], rbx
movsxd rsi, dword [r10 + 0x38]
sub r9, rbx
mov qword [rsp + 0x110], r9
lea r15, [rdx + rax]
sar r15, 2
lea rax, [rcx - 1]
imul r15, r9
add rax, r15
cqo
idiv rcx
imul rsi, rax
lea rcx, [rsi + rax]
cmp rcx, r15
cmovle r15, rcx
mov qword [rbp + 8], r15
cmp rsi, r15
jge 0x1400d6623
nop word [rax + rax]
mov r14, qword [r10 + 0x18]
mov rax, rsi
cqo
idiv r9
vpxor xmm6, xmm6, xmm6
vxorps xmm7, xmm7, xmm7
vxorps xmm8, xmm8, xmm8
vxorps xmm9, xmm9, xmm9
lea r8, [r11 + rax*4]
xor r11d, r11d
lea r9, [rdx + rbx]
test r14, r14
jle 0x1400d6550
mov rbx, qword [r10 + 0x20]
mov rax, r9
imul rax, qword [r10 + 0x28]
mov rdi, qword [r10]
vmovdqu ymm10, ymmword [0x140108520]
imul rdx, rax, 0x22
add rdx, qword [r10 + 8]
lea r10, [0x1401a6dc0]
nop dword [rax + rax]
movzx eax, word [rdx]
vmovdqu ymm4, ymmword [rdx + 2]
lea rdx, [rdx + 0x22]
vmovss xmm5, dword [r10 + rax*4]
mov rax, rbx
imul rax, r8
add rax, r11
imul rax, rax, 0x22
vmovdqu ymm0, ymmword [rax + rdi + 2]
vpsignb ymm1, ymm4, ymm0
vpsignb ymm0, ymm0, ymm0
vpmaddubsw ymm1, ymm0, ymm1
vpmaddwd ymm2, ymm1, ymm10
vcvtdq2ps ymm3, ymm2
mov rax, rbx
imul rax, r8
add rax, r11
imul rax, rax, 0x22
movzx ecx, word [rax + rdi]
lea rax, [r8 + 1]
imul rax, rbx
vmulss xmm0, xmm5, dword [r10 + rcx*4]
add rax, r11
imul rax, rax, 0x22
vbroadcastss ymm0, xmm0
vfmadd231ps ymm6, ymm0, ymm3
vmovdqu ymm0, ymmword [rax + rdi + 2]
vpsignb ymm1, ymm4, ymm0
vpsignb ymm0, ymm0, ymm0
vpmaddubsw ymm1, ymm0, ymm1
vpmaddwd ymm2, ymm1, ymm10
vcvtdq2ps ymm3, ymm2
lea rax, [r8 + 1]
imul rax, rbx
add rax, r11
imul rax, rax, 0x22
movzx ecx, word [rax + rdi]
lea rax, [r8 + 2]
imul rax, rbx
vmulss xmm0, xmm5, dword [r10 + rcx*4]
add rax, r11
imul rax, rax, 0x22
vbroadcastss ymm0, xmm0
vfmadd231ps ymm7, ymm0, ymm3
vmovdqu ymm0, ymmword [rax + rdi + 2]
vpsignb ymm1, ymm4, ymm0
vpsignb ymm0, ymm0, ymm0
vpmaddubsw ymm1, ymm0, ymm1
vpmaddwd ymm2, ymm1, ymm10
lea rax, [r8 + 2]
imul rax, rbx
vcvtdq2ps ymm3, ymm2
add rax, r11
imul rax, rax, 0x22
movzx ecx, word [rax + rdi]
lea rax, [r8 + 3]
imul rax, rbx
vmulss xmm0, xmm5, dword [r10 + rcx*4]
add rax, r11
imul rax, rax, 0x22
vbroadcastss ymm0, xmm0
vfmadd231ps ymm8, ymm0, ymm3
vmovdqu ymm0, ymmword [rax + rdi + 2]
vpsignb ymm1, ymm4, ymm0
vpsignb ymm0, ymm0, ymm0
vpmaddubsw ymm1, ymm0, ymm1
lea rax, [r8 + 3]
imul rax, rbx
vpmaddwd ymm2, ymm1, ymm10
add rax, r11
inc r11
imul rax, rax, 0x22
vcvtdq2ps ymm3, ymm2
movzx ecx, word [rax + rdi]
vmulss xmm0, xmm5, dword [r10 + rcx*4]
vbroadcastss ymm0, xmm0
vfmadd231ps ymm9, ymm0, ymm3
cmp r11, r14
jl 0x1400d63e0
mov r10, qword [rbp]
mov r15, qword [rbp + 8]
mov rbx, qword [rbp + 0x10]
nop dword [rax + rax]
mov rax, qword [r10 + 0x10]
mov rcx, r9
imul rcx, qword [r10 + 0x30]
mov r11, qword [rbp + 0x18]
inc rsi
add rcx, r8
vextractf128 xmm0, ymm6, 1
vaddps xmm1, xmm0, xmm6
vmovhlps xmm0, xmm1, xmm1
vaddps xmm2, xmm0, xmm1
vmovshdup xmm1, xmm2
vaddss xmm2, xmm2, xmm1
vmovss dword [rax + rcx*4], xmm2
mov rax, qword [r10 + 0x10]
mov rcx, r9
imul rcx, qword [r10 + 0x30]
vextractf128 xmm0, ymm7, 1
vaddps xmm1, xmm0, xmm7
vmovhlps xmm0, xmm1, xmm1
vaddps xmm2, xmm0, xmm1
vmovshdup xmm1, xmm2
vaddss xmm2, xmm2, xmm1
add rcx, r8
vextractf128 xmm0, ymm8, 1
vaddps xmm1, xmm0, xmm8
vmovhlps xmm0, xmm1, xmm1
vmovss dword [rax + rcx*4 + 4], xmm2
mov rax, qword [r10 + 0x10]
mov rcx, r9
imul rcx, qword [r10 + 0x30]
vaddps xmm2, xmm0, xmm1
vmovshdup xmm1, xmm2
vaddss xmm2, xmm2, xmm1
add rcx, r8
vextractf128 xmm0, ymm9, 1
vaddps xmm1, xmm0, xmm9
vmovhlps xmm0, xmm1, xmm1
vmovss dword [rax + rcx*4 + 8], xmm2
imul r9, qword [r10 + 0x30]
mov rax, qword [r10 + 0x10]
add r9, r8
vaddps xmm2, xmm0, xmm1
vmovshdup xmm1, xmm2
vaddss xmm2, xmm2, xmm1
vmovss dword [rax + r9*4 + 0xc], xmm2
mov r9, qword [rsp + 0x110]
cmp rsi, r15
jl 0x1400d6380
vzeroupper
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1400eafe0
lea r11, [rsp + 0xa8]
vmovaps xmm6, xmmword [r11 - 0x18]
vmovaps xmm7, xmmword [r11 - 0x28]
vmovaps xmm8, xmmword [r11 - 0x38]
vmovaps xmm9, xmmword [r11 - 0x48]
vmovaps xmm10, xmmword [r11 - 0x58]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret