Function at 0x14049e489
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
sar bh, cl
mov qword [rsp + 0x10], rbp
ror bh, 0x15
shr bp, cl
mov qword [rsp + 0x18], rsi
shr ebp, 0x7c
adc bpl, r9b
btc bx, r10w
push rdi
jmp 0x14049e4b1
push r12
push r13
xor ebx, 0x68c17613
add bpl, 0x18
push r14
movzx di, dil
bswap r12w
push r15
bts r12, rcx
movzx r15d, cx
sbb r15w, 0x163a
sub rsp, 0x40
setl r14b
mov rbx, qword [rsp + 0x90]
movsx r12w, r12b
mov r12, rdx
mov r15b, cl
mov rbp, rcx
movzx r15w, dl
setl dh
mov rdx, r9
not r14b
mov rcx, rbx
movzx di, r8b
movzx edi, r14w
mov rdi, r9
movzx r15w, r11b
mov r14b, 0xcf
movzx r14d, r13w
mov r15d, r8d
setno r14b
mov r14d, dword [rbx + 0xc]
jmp 0x14049e531
call fcn.1401f7a9a
xor r10d, r10d
mov esi, eax
stc
cmp r9w, 0x1e99
test r14d, r14d
je 0x14049e7b5
mov r11, qword [rdi + 8]
shrd cx, r13w, 0xa7
sal dl, 0x6b
or eax, 0xffffffff
movsxd rbx, dword [rbx + 0x10]
movzx dx, r9b
mov r9d, eax
and ch, 0x69
not r8w
rol r13w, cl
mov r13d, eax
rol dh, cl
sub dl, spl
mov edx, r14d
jmp 0x14049e582
lea r8d, [rdx - 1]
bts eax, ebp
shl cl, cl
lea rcx, [r8 + r8*4]
cbw
add al, 0x31
lea rax, [r11 + rcx*4]
cmc
cmp esi, dword [rax + rbx + 4]
jmp 0x14049e5a1
jle 0x14049e5b6
cmp esi, dword [rax + rbx + 8]
jmp 0x14049e5b0
jle 0x14049e5ce
mov edx, r8d
cmp r10w, ax
test r9b, bpl
test r8d, r8d
jmp 0x14049e5c8
jne 0x14049e582
mov r8d, r10d
cmp r12b, r13b
test bp, 0x7859
test edx, edx
jmp 0x14049e5e0
je 0x14049e60f
lea eax, [rdx - 1]
add dl, spl
neg dl
xchg dx, dx
lea rax, [rax + rax*4]
add edx, 0x59560c98
and dx, 0x4388
inc dh
lea rdx, [rbx + rax*4]
cmc
add rdx, r11
jmp 0x14049e619
mov rdx, r10
add rcx, 0x49863476
lea rcx, [r11 + rbx]
or r11d, 0xffffffff
cmc
test rdx, rdx
je 0x14049e658
mov eax, dword [rdx + 4]
cmp bpl, 0x1e
test r12b, sil
jmp 0x14049e63a
cmp dword [rcx], eax
jmp 0x14049e641
jle 0x14049e6b1
mov eax, dword [rdx + 8]
cmp dword [rcx + 4], eax
jmp 0x14049e652
jg 0x14049e6b1
cmp r15d, dword [rcx]
jmp 0x14049e660
jl 0x14049e6b1
cmp r15d, dword [rcx + 4]
jmp 0x14049e66f
jg 0x14049e6b1
cmp r9d, r11d
jmp 0x14049e684
mov eax, r8d
movsx r13d, ax
movzx r13d, r11w
movsx r13w, r15b
mov r13d, r8d
jmp 0x14049e69c
cmovne eax, r9d
jmp 0x14049e6a9
mov r9d, eax
jmp 0x14049e6b1
inc r8d
test dil, r12b
jmp 0x14049e6bc
add rcx, 0x14
test r14b, al
cmp r8d, r14d
jb 0x14049e622
cmp r9d, r11d
setg sil
mov qword [rsp + 0x20], r12
jmp 0x14049e6dd
mov eax, r10d
movsx edi, r14w
mov qword [rsp + 0x30], r12
movzx r14w, r11b
movzx r12d, cx
cmovne eax, r9d
movsxd rbx, r12d
movzx rsi, bp
lea r11, [rsp + 0x40]
setg r15b
cmovo rbx, rdi
movsx r15, r14w
mov rbx, qword [r11 + 0x30]
movsxd r15, r8d
mov rsi, qword [r11 + 0x40]
movsxd r14, ebp
movsx r15d, r15w
mov dword [rsp + 0x28], eax
lea eax, [r13 + 1]
mov r14b, 0x6b
xchg r13w, di
sets r14b
movups xmm0, xmmword [rsp + 0x20]
cmovge r13, r9
movsxd r12, r13d
movsx r13d, r8w
cmovne r10d, eax
mov rax, rbp
cmovl r13, r10
xchg r12w, r14w
jmp 0x14049e757
mov dword [rsp + 0x38], r10d
not di
xchg r15b, r12b
movups xmm1, xmmword [rsp + 0x30]
movzx r12d, r10w
mov r15b, bpl
movdqu xmmword [rbp], xmm0
movsxd r15, ecx
mov r12w, si
jmp 0x14049e77f
movdqu xmmword [rbp + 0x10], xmm1
mov rbp, qword [r11 + 0x38]
movsxd r14, r13d
mov rsp, r11
jmp 0x14049e797
pop r15
pop r14
cmove r13w, bx
jmp 0x14049e7a5
pop r13
pop r12
movsx di, sil
pop rdi
jmp 0x14049e7b4
ret
call fcn.1404b37c9
int3