Function at 0x14049e5d8
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov bp, 0x2b8e
mov qword [rax + 0x18], rsi
shl bpl, cl
mov qword [rax + 0x20], rdi
bsr di, ax
push r14
or rdi, r15
sub rsp, 0x60
mov qword [rsp + 0x20], rdx
sub bpl, 0x1b
mov rdi, rdx
shr bpl, 0x18
movaps xmmword [rax - 0x18], xmm6
sal bp, cl
mov rbp, rcx
sar cl, 0x4d
test spl, 0x3e
rol cl, 0x96
mov qword [rsp + 0x30], rdx
sub ebx, ebx
movsx rcx, di
mov dword [rsp + 0x28], ebx
movsx dx, r9b
lea rdx, [rax - 0x28]
xchg ch, cl
movsx rcx, r8w
cmova ecx, eax
movaps xmm6, xmmword [rsp + 0x20]
bswap ecx
not ch
mov rcx, rdi
jmp 0x14049e655
movdqa xmmword [rax - 0x28], xmm6
mov r14d, r8d
cmp r9w, r15w
cmc
sub esi, esi
jmp 0x14049e669
call fcn.1400f14bc
mov r9d, dword [rdi]
cmc
sub edx, edx
jmp 0x14049e683
test r9d, r9d
jmp 0x14049e68b
je 0x14049e80b
mov r8, qword [rdi + 8]
movsx cx, dil
lea r10, [0x140000000]
mov rax, qword [rdi + 0x18]
and ch, 0x61
bts cx, ax
btr cx, r11w
mov ecx, ebx
cmp r14d, eax
jmp 0x14049e6bb
jl 0x14049e6fc
shr rax, 0x20
stc
cmc
cmp r14d, eax
jmp 0x14049e6cf
jg 0x14049e6fc
test ecx, ecx
not bx
movsx rax, sp
mov ebx, edx
mov esi, edx
sets ah
cmovle rax, rbx
cmove ebx, ecx
jmp 0x14049e6f1
mov dword [rsp + 0x28], ebx
dec ch
movaps xmm6, xmmword [rsp + 0x20]
movzx ecx, byte [r8]
inc edx
and ecx, 0xf
movzx rax, r12w
btc eax, 0x7e
movsx rax, byte [rcx + r10 + 0xc1a30]
cmp edi, ebp
cmp r14d, 0x31cc4c6f
test edi, 0x15586279
mov cl, byte [rcx + r10 + 0xc1a40]
sub r8, rax
sar eax, cl
mov eax, dword [r8 - 4]
cmc
cmp ecx, 0x636516b
shr eax, cl
mov qword [rdi + 8], r8
movsx ecx, r8w
movsxd rcx, edi
mov dword [rdi + 0x18], eax
xadd cx, ax
rcl ch, 0x63
btr cx, 0x85
movzx ecx, byte [r8]
shr ah, 0xa7
and rax, 0x5cc95382
and ecx, 0xf
movzx rax, r13w
adc al, r15b
movsx rax, byte [rcx + r10 + 0xc1a30]
mov cl, byte [rcx + r10 + 0xc1a40]
test r15w, r12w
sub r8, rax
mov eax, dword [r8 - 4]
stc
shr eax, cl
shl cl, cl
rol rcx, 0x56
rcr rcx, cl
mov qword [rdi + 8], r8
btr ecx, 0x2c
mov dword [rdi + 0x1c], eax
movzx ecx, byte [r8]
rcr ah, 0x5e
btr ax, r11w
and ecx, 0xf
rol rax, cl
bsr eax, r11d
setbe al
movsx rax, byte [rcx + r10 + 0xc1a30]
mov cl, byte [rcx + r10 + 0xc1a40]
sub r8, rax
mov ax, ax
bswap eax
mov eax, dword [r8 - 4]
shr eax, cl
mov qword [rdi + 8], r8
test dil, sil
mov dword [rdi + 0x20], eax
sar al, 0x85
btc ax, ax
xor ah, 0xec
mov eax, dword [r8]
add r8, 4
test bl, bpl
mov qword [rdi + 8], r8
mov dword [rdi + 0x24], eax
cmc
cmp edx, r9d
jne 0x14049e6a1
inc esi
jmp 0x14049e812
movdqa xmmword [rsp + 0x40], xmm6
lea rdx, [rsp + 0x40]
movzx ecx, di
mov dword [rsp + 0x38], esi
movzx ecx, r14w
mov rcx, rdi
jmp 0x14049e830
call fcn.1400f14bc
movups xmm0, xmmword [rsp + 0x30]
movzx r11w, spl
cdqe
movsx r11w, dil
lea r11, [rsp + 0x60]
xchg rsi, rsi
cwde
not bl
mov rax, rbp
mov rbx, qword [r11 + 0x10]
jmp 0x14049e865
mov rsi, qword [r11 + 0x20]
movsx edi, r8w
mov rdi, qword [r11 + 0x28]
movzx r14d, si
movdqu xmmword [rbp], xmm6
movaps xmm6, xmmword [rsp + 0x50]
xchg r14b, r14b
mov r14b, 0x2e
movdqu xmmword [rbp + 0x10], xmm0
setl r14b
mov r14, 0x4a157c0e
movzx rbp, bx
mov rbp, qword [r11 + 0x18]
mov r14d, r10d
mov rsp, r11
pop r14
jmp 0x14049e8aa
ret