Function at 0x14004c280
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
movaps xmmword [rsp + 0xd0], xmm7
movaps xmmword [rsp + 0xc0], xmm6
mov r13, rdx
mov rax, qword [0x140100028]
xor rax, rsp
mov qword [rsp + 0xb8], rax
xorps xmm6, xmm6
movups xmmword [rdx], xmm6
mov qword [rdx + 0x10], 0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rcx + 0x18]
sub rcx, rax
sar rcx, 3
movabs rdx, 0xaaaaaaaaaaaaaaab
imul rcx, rdx
cmp rcx, 2
jb 0x14004c8af
mov byte [rsp + 0x37], 1
mov r14d, 1
movabs rdi, 0x7fffffffffffffef
movabs rsi, 0xaaaaaaaaaaaaaaaa
movaps xmm7, xmmword [0x1400e9af0]
lea r12, [rsp + 0x80]
lea rdx, [r14 + r14*2]
lea rcx, [rax + rdx*8]
mov qword [rsp + 0x90], rsi
movaps xmmword [rsp + 0x80], xmm7
cmp byte [rcx + 0x17], 0
jns 0x14004c8f3
mov rbp, qword [rax + rdx*8 + 8]
mov rbx, qword [rcx]
cmp rbp, 0xa
jbe 0x14004c89f
cmp rbp, rdi
ja 0x14004c973
mov r15, r12
mov r12, rdi
lea rdi, [rbp + 8]
and rdi, 0xfffffffffffffff8
lea rcx, [rdi + rdi]
int3
lea r8, [rbp + 2]
add r8, rbp
mov rdx, rbx
call fcn.14006b810
movaps xmmword [rsp + 0x60], xmm6
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x50], rax
movaps xmmword [rsp + 0x40], xmm6
movzx eax, byte [rsp + 0x97]
test al, al
movabs rdi, 0x7fffffffffffffef
jns 0x14004c3e1
mov rax, qword [rsp + 0x88]
cmp rax, 2
je 0x14004c90f
cmp r14, 2
jb 0x14004c400
mov rcx, r13
lea rdx, [0x1400ec29e]
int3
test byte [rsp + 0x37], 1
je 0x14004c53f
cmp byte [rsp + 0x77], 0
js 0x14004c943
mov word [rsp + 0x60], 0
mov byte [rsp + 0x77], 0
cmp byte [rsp + 0x57], 0
js 0x14004c95b
mov word [rsp + 0x40], 0
mov byte [rsp + 0x57], 0
movzx ecx, byte [rsp + 0x97]
mov rax, r12
test cl, cl
jns 0x14004c458
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0xb0], rsi
movaps xmmword [rsp + 0xa0], xmm7
mov byte [rsp + 0xb7], 2
mov dword [rsp + 0xa0], 0x2d002d
mov word [rsp + 0xa4], 0
cmp rcx, 1
jbe 0x14004c4ad
movzx edx, word [rax]
cmp dx, word [rsp + 0xa0]
jne 0x14004c4ad
movzx edx, word [rax + 2]
cmp dx, word [rsp + 0xa2]
jne 0x14004c4ad
mov edx, 2
jmp 0x14004c4e3
movaps xmmword [rsp + 0xa0], xmm7
mov qword [rsp + 0xb0], rsi
mov dword [rsp + 0xa0], 0x2d
test rcx, rcx
je 0x14004c51c
movzx ebp, word [rax]
mov edx, 1
cmp bp, word [rsp + 0xa0]
jne 0x14004c796
cmp rdx, rcx
je 0x14004c53f
lea rbp, [rax + rcx*2]
mov rdx, rbp
test rcx, rcx
jle 0x14004c61c
mov rdx, rax
nop dword [rax + rax]
cmp word [rdx], 0x3d
je 0x14004c615
add rdx, 2
add rcx, 0xffffffffffffffff
jne 0x14004c500
mov rdx, rbp
jmp 0x14004c61c
mov qword [rsp + 0xb0], rsi
movaps xmmword [rsp + 0xa0], xmm7
mov byte [rsp + 0xb7], 1
mov dword [rsp + 0xa0], 0x2f
lea rcx, [rsp + 0xa0]
mov rdx, r12
int3
test rdx, rdx
cmove rdx, rbp
mov rbx, rdx
sub rbx, rax
sar rbx, 1
cmp rdx, rbp
mov rax, 0xffffffffffffffff
cmove rbx, rax
lea rax, [rsp + 0x98]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
mov rdx, r12
xor r8d, r8d
mov r9, rbx
call fcn.14004b01e
cmp byte [rsp + 0x77], 0
js 0x14004c980
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x70], rax
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x60], xmm0
cmp rbx, 0xffffffffffffffff
je 0x14004c6d0
inc rbx
lea rax, [rsp + 0x98]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0xa0]
mov rdx, r12
mov r8, rbx
mov r9, 0xffffffffffffffff
call fcn.14004b01e
cmp byte [rsp + 0x57], 0
js 0x14004c98f
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [rsp + 0xa0]
movaps xmmword [rsp + 0x40], xmm0
movzx r8d, byte [rsp + 0x77]
test r8b, r8b
cmovs r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
lea rax, [rsp + 0x60]
cmovns rdx, rax
mov rcx, r13
int3
mov qword [rsp + 0xb0], rsi
movaps xmmword [rsp + 0xa0], xmm7
mov byte [rsp + 0xb7], 1
mov dword [rsp + 0xa0], 0x2f
test rcx, rcx
je 0x14004c53f
movzx ebp, word [rax]
cmp bp, word [rsp + 0xa0]
je 0x14004c4e3
jmp 0x14004c53f
mov byte [rsp + 0x97], bpl
mov rcx, r12
jmp 0x14004c39a
mov rcx, qword [rsp + 0xb8]
xor rcx, rsp
call fcn.140069890
mov rax, r13
movaps xmm6, xmmword [rsp + 0xc0]
movaps xmm7, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x90], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x80], xmm0
jmp 0x14004c3ad
mov qword [rsp + 0x20], 2
lea r9, [0x1400ec2d4]
lea rcx, [rsp + 0x80]
xor edx, edx
mov r8, 0xffffffffffffffff
int3
mov rax, qword [rsp + 0x60]
mov word [rax], 0
mov qword [rsp + 0x68], 0
jmp 0x14004c422
mov rax, qword [rsp + 0x40]
mov word [rax], 0
mov qword [rsp + 0x48], 0
jmp 0x14004c439
lea rcx, [rsp + 0x80]
int3
mov rcx, qword [rsp + 0x60]
call fcn.1400672f8
jmp 0x14004c661
mov rcx, qword [rsp + 0x40]
call fcn.1400672f8
jmp 0x14004c6b6