Function at 0x14000a2d0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
movzx r8d, byte [rcx + 0x91]
mov rax, qword [rdx + 0xbbd0]
vmovdqa ymm0, ymmword [0x1400884e0]
vmovdqa ymm1, ymmword [0x1400884c0]
vpxor xmm2, xmm2, xmm2
mov r9, 0xffffffffffffffd0
lea r10, [section..rodata]
test r8, r8
je 0x14000a400
nop word cs:[rax + rax]
vpmaxsw ymm3, ymm1, ymmword [rax + r9*2 + 0x660]
vpminsw ymm3, ymm3, ymm0
vpmullw ymm4, ymm3, ymmword [r10 + r9*2 + 0x120660]
vpmaddwd ymm3, ymm4, ymm3
vpmaxsw ymm4, ymm1, ymmword [rax + r9*2 + 0x60]
vpaddd ymm2, ymm3, ymm2
vpminsw ymm3, ymm4, ymm0
vpmullw ymm4, ymm3, ymmword [r10 + r9*2 + 0x120c60]
vpmaddwd ymm3, ymm4, ymm3
vpmaxsw ymm4, ymm1, ymmword [rax + r9*2 + 0x680]
vpminsw ymm4, ymm4, ymm0
vpmullw ymm5, ymm4, ymmword [r10 + r9*2 + 0x120680]
vpmaddwd ymm4, ymm5, ymm4
vpaddd ymm3, ymm4, ymm3
vpaddd ymm2, ymm3, ymm2
vpmaxsw ymm3, ymm1, ymmword [rax + r9*2 + 0x80]
vpminsw ymm3, ymm3, ymm0
vpmullw ymm4, ymm3, ymmword [r10 + r9*2 + 0x120c80]
vpmaxsw ymm5, ymm1, ymmword [rax + r9*2 + 0x6a0]
vpmaddwd ymm3, ymm4, ymm3
vpminsw ymm4, ymm5, ymm0
vpmullw ymm5, ymm4, ymmword [r10 + r9*2 + 0x1206a0]
vpmaddwd ymm4, ymm5, ymm4
vpaddd ymm3, ymm4, ymm3
vpmaxsw ymm4, ymm1, ymmword [rax + r9*2 + 0xa0]
vpminsw ymm4, ymm4, ymm0
vpmullw ymm5, ymm4, ymmword [r10 + r9*2 + 0x120ca0]
vpmaddwd ymm4, ymm5, ymm4
vpaddd ymm3, ymm3, ymm4
vpaddd ymm2, ymm3, ymm2
add r9, 0x30
cmp r9, 0x2d0
jb 0x14000a320
jmp 0x14000a4ce
vpmaxsw ymm3, ymm1, ymmword [rax + r9*2 + 0x60]
vpminsw ymm3, ymm3, ymm0
vpmullw ymm4, ymm3, ymmword [r10 + r9*2 + 0x120660]
vpmaddwd ymm3, ymm4, ymm3
vpmaxsw ymm4, ymm1, ymmword [rax + r9*2 + 0x660]
vpaddd ymm2, ymm3, ymm2
vpminsw ymm3, ymm4, ymm0
vpmullw ymm4, ymm3, ymmword [r10 + r9*2 + 0x120c60]
vpmaddwd ymm3, ymm4, ymm3
vpmaxsw ymm4, ymm1, ymmword [rax + r9*2 + 0x80]
vpminsw ymm4, ymm4, ymm0
vpmullw ymm5, ymm4, ymmword [r10 + r9*2 + 0x120680]
vpmaddwd ymm4, ymm5, ymm4
vpaddd ymm3, ymm4, ymm3
vpaddd ymm2, ymm3, ymm2
vpmaxsw ymm3, ymm1, ymmword [rax + r9*2 + 0x680]
vpminsw ymm3, ymm3, ymm0
vpmullw ymm4, ymm3, ymmword [r10 + r9*2 + 0x120c80]
vpmaxsw ymm5, ymm1, ymmword [rax + r9*2 + 0xa0]
vpmaddwd ymm3, ymm4, ymm3
vpminsw ymm4, ymm5, ymm0
vpmullw ymm5, ymm4, ymmword [r10 + r9*2 + 0x1206a0]
vpmaddwd ymm4, ymm5, ymm4
vpaddd ymm3, ymm4, ymm3
vpmaxsw ymm4, ymm1, ymmword [rax + r9*2 + 0x6a0]
vpminsw ymm4, ymm4, ymm0
vpmullw ymm5, ymm4, ymmword [r10 + r9*2 + 0x120ca0]
vpmaddwd ymm4, ymm5, ymm4
vpaddd ymm3, ymm3, ymm4
vpaddd ymm2, ymm3, ymm2
add r9, 0x30
cmp r9, 0x2d0
jb 0x14000a400
vphaddd ymm0, ymm2, ymm2
vphaddd ymm0, ymm0, ymm0
vextracti128 xmm1, ymm0, 1
vpaddd xmm0, xmm1, xmm0
vmovd eax, xmm0
cdqe
imul r9, rax, 0xffffffff80808081
shr r9, 0x20
add eax, r9d
mov r9d, eax
shr r9d, 0x1f
sar eax, 7
add eax, r9d
movsx esi, word [0x1401b1200]
add esi, eax
imul eax, esi, 0x190
movsxd r9, eax
imul rax, r9, 0xffffffff80808081
shr rax, 0x20
add r9d, eax
mov eax, r9d
shr eax, 0x1f
sar r9d, 0xd
add r9d, eax
movzx r11d, byte [rcx + 0x80]
movzx r10d, byte [rcx + 0x81]
mov eax, r11d
sub eax, r10d
imul eax, eax, 0x64
movzx edi, byte [rcx + 0x82]
movzx ebx, byte [rcx + 0x83]
movzx ebp, byte [rcx + 0x84]
add ebp, edi
movzx edi, byte [rcx + 0x85]
add edi, ebx
sub ebp, edi
movzx edi, byte [rcx + 0x86]
movzx ebx, byte [rcx + 0x87]
sub edi, ebx
imul edi, edi, 0x1f4
add edi, eax
movzx eax, byte [rcx + 0x88]
movzx ebx, byte [rcx + 0x89]
sub eax, ebx
imul eax, eax, 0x384
imul ebx, ebp, 0x12c
add ebx, edi
add ebx, eax
mov edi, ebx
neg edi
test r8b, r8b
cmove edi, ebx
mov ebx, r9d
neg ebx
cmovs ebx, r9d
lea eax, [rbx + rbx]
mov r14d, 0xaaaaaaab
imul r14, rax
shr r14, 0x21
lea ebp, [rbx - 0x2bc]
cmp r14d, 0x12d
mov r15d, 0x12c
cmovge r15d, r14d
mov eax, 0x12c
cmovae eax, r14d
cmp r15d, ebp
movsx r14d, di
cmovl eax, ebp
cmp esi, 0x29
jl 0x14000a61d
lea ebp, [rax + r14]
mov edi, r9d
sub edi, ebp
jle 0x14000a61d
movsxd rax, edi
imul rax, rax, 0x66666667
mov rdi, rax
sar rdi, 0x22
shr rax, 0x3f
add edi, eax
add edi, 0x19
jmp 0x14000a64e
xor edi, edi
cmp esi, 0xffffffd7
jg 0x14000a64e
mov ebp, r14d
sub ebp, eax
cmp r9d, ebp
jge 0x14000a64e
add eax, r9d
sub r14d, eax
movsxd rax, r14d
imul rax, rax, 0xffffffff99999999
mov rdi, rax
sar rdi, 0x22
shr rax, 0x3f
add edi, eax
add edi, 0xffffffe7
movzx eax, word [rdx + 0xbb90]
movzx ebp, word [rdx + 0xbb92]
lea r14, [rax - 4]
sub eax, ebp
mov r15d, eax
sar r15d, 0x1f
andn r15d, r15d, eax
lea r12d, [r15 + 2]
xor eax, eax
cmp r12d, r14d
jge 0x14000a716
lea r12, [r15 + r15*2]
movsx eax, word [rdx + r12*8 + 0x1c]
add r15, 2
lea rdx, [rdx + r12*8]
add rdx, 0xac
xor r12d, r12d
jmp 0x14000a6ad
add r15, 2
add rdx, 0x30
cmp r15, r14
jge 0x14000a6d7
cmp word [rdx - 0x60], ax
jge 0x14000a6a0
cmp word [rdx - 0x48], ax
jle 0x14000a6a0
cmp word [rdx - 0x30], ax
jge 0x14000a6a0
cmp word [rdx - 0x18], ax
jle 0x14000a6a0
movsx r13d, word [rdx]
cmp r13w, ax
jge 0x14000a6a0
add r13d, eax
mov r12d, r13d
jmp 0x14000a6a0
test r12d, r12d
je 0x14000a714
test bpl, 1
jne 0x14000a7e0
cmp esi, 0x1811
mov eax, 0x28
mov edx, 0x14
cmovge edx, eax
cmp esi, 0x4fd9
mov eax, 0x3c
cmovl eax, edx
cmp ebx, 0x1f5
jae 0x14000a722
jmp 0x14000a7cb
xor eax, eax
cmp ebx, 0x1f5
jb 0x14000a7cb
xor r8, 1
movzx edx, byte [rcx + r8 + 0x80]
imul edx, edx, 0x64
mov rsi, r8
or rsi, 2
movzx esi, byte [rcx + rsi + 0x80]
mov rbx, r8
or rbx, 4
movzx ebx, byte [rcx + rbx + 0x80]
add ebx, esi
mov rsi, r8
or rsi, 6
movzx esi, byte [rcx + rsi + 0x80]
imul esi, esi, 0x28a
add esi, edx
or r8, 8
movzx ecx, byte [rcx + r8 + 0x80]
imul ecx, ecx, 0x4e2
imul edx, ebx, 0x1c2
add edx, esi
lea r8d, [rcx + rdx]
add r8d, 7
add edx, ecx
test dx, dx
cmovns r8d, edx
movsx ecx, r8w
sar ecx, 3
add r10d, r11d
shl r10d, 2
lea edx, [r10 + r10*4]
sub ecx, edx
add ecx, 0x200
imul ecx, r9d
movsxd rcx, ecx
imul r9, rcx, 0x2aaaaaab
mov rcx, r9
shr rcx, 0x3f
sar r9, 0x27
add r9d, ecx
add eax, edi
add eax, r9d
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
vzeroupper
ret
cmp esi, 0xffffe7f0
mov eax, 0xffffffd8
mov edx, 0xffffffec
cmovl edx, eax
cmp esi, 0xffffb028
mov eax, 0xffffffc4
cmovge eax, edx
cmp ebx, 0x1f5
jae 0x14000a722
jmp 0x14000a7cb