Function at 0x14049ef3e
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
clc
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
movsx bp, sil
mov qword [rax + 0x20], rdi
rcl edi, cl
push r14
test bpl, r10b
sub rsp, 0x60
clc
movzx ebp, r8w
mov qword [rsp + 0x20], rdx
mov rdi, rdx
movaps xmmword [rax - 0x18], xmm6
movsx ebp, dx
mov rbp, rcx
bts ecx, edi
mov qword [rsp + 0x30], rdx
stc
sub ebx, ebx
setne ch
mov dword [rsp + 0x28], ebx
lea rdx, [rax - 0x28]
cmovo ecx, r11d
bswap cx
movsxd rcx, ebp
movaps xmm6, xmmword [rsp + 0x20]
mov rcx, rdi
movdqa xmmword [rax - 0x28], xmm6
mov r14d, r8d
xor esi, esi
jmp 0x14049efb0
call fcn.1400e1998
mov r9d, dword [rdi]
cmp cl, dil
xor edx, edx
cmp dl, 5
test r9d, r9d
jmp 0x14049efc8
je 0x14049f170
mov r8, qword [rdi + 8]
lea r10, [0x140000000]
xor al, dl
add al, sil
mov rax, qword [rdi + 0x18]
btc cx, r9w
bswap cx
sbb cl, spl
mov ecx, ebx
cmp r14d, eax
jl 0x14049f043
shr rax, 0x20
cmp r14d, eax
jmp 0x14049f004
jg 0x14049f043
test ecx, ecx
movsx bx, r13b
movzx si, r9b
not bl
mov ebx, edx
movsx si, r13b
mov esi, edx
movsx rax, r12w
cwde
cmove ebx, ecx
movsx ax, spl
cmovbe ax, r13w
inc ch
mov dword [rsp + 0x28], ebx
cbw
mov rax, rsp
movaps xmm6, xmmword [rsp + 0x20]
movzx ecx, byte [r8]
inc ax
inc edx
movsx eax, r10w
bt rax, 0x7c
ror ah, 0x60
and ecx, 0xf
rcr rax, 0x41
rol ax, 0xb
mov ax, 0x7a0c
movsx rax, byte [rcx + r10 + 0xc1a30]
jmp 0x14049f076
mov cl, byte [rcx + r10 + 0xc1a40]
stc
clc
sub r8, rax
mov eax, dword [r8 - 4]
cmp dil, spl
jmp 0x14049f08f
shr eax, cl
cmp bl, 0xd8
ror ecx, cl
mov qword [rdi + 8], r8
rcl cx, 0xd0
clc
or cx, dx
mov dword [rdi + 0x18], eax
movzx ecx, byte [r8]
bt eax, eax
rcl ah, 0x9c
and ecx, 0xf
adc rax, r11
movsx rax, byte [rcx + r10 + 0xc1a30]
mov cl, byte [rcx + r10 + 0xc1a40]
test r15w, 0x499e
sub r8, rax
mov eax, dword [r8 - 4]
shr eax, cl
ror rcx, 0x15
shr ch, 6
xchg cx, cx
mov qword [rdi + 8], r8
shr cx, cl
mov dword [rdi + 0x1c], eax
shld ax, r10w, 0x80
mov ax, r11w
movzx ecx, byte [r8]
rcl rax, cl
rcr ax, cl
xadd rax, rax
and ecx, 0xf
add al, bpl
xadd ah, ah
bsf eax, r10d
movsx rax, byte [rcx + r10 + 0xc1a30]
mov cl, byte [rcx + r10 + 0xc1a40]
stc
sub r8, rax
jmp 0x14049f12e
mov eax, dword [r8 - 4]
shr eax, cl
mov qword [rdi + 8], r8
test edi, 0x3fe5734e
clc
cmp rsi, 0x74a1670
mov dword [rdi + 0x20], eax
mov eax, dword [r8]
jmp 0x14049f154
add r8, 4
mov qword [rdi + 8], r8
stc
test r12b, cl
cmc
mov dword [rdi + 0x24], eax
cmp r14b, r13b
cmp edx, r9d
jne 0x14049efde
inc esi
jmp 0x14049f177
movdqa xmmword [rsp + 0x40], xmm6
lea rdx, [rsp + 0x40]
movsx ecx, sp
setp ch
mov dword [rsp + 0x38], esi
xchg rcx, rcx
mov rcx, rdi
jmp 0x14049f197
call fcn.1400e1998
movups xmm0, xmmword [rsp + 0x30]
movsx ax, r10b
cwde
movzx r14d, sp
lea r11, [rsp + 0x60]
mov rax, rbp
jmp 0x14049f1bc
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
jmp 0x14049f1c9
mov rdi, qword [r11 + 0x28]
movsxd r14, r13d
bswap r14
movzx r14w, r13b
movdqu xmmword [rbp], xmm6
mov r14b, r13b
movaps xmm6, xmmword [rsp + 0x50]
movdqu xmmword [rbp + 0x10], xmm0
movsx r14, bx
setge bpl
mov rbp, qword [r11 + 0x18]
xchg r14d, r14d
mov rsp, r11
movzx r14w, sil
mov r14b, 0xcb
movsx r14d, ax
pop r14
ret