Function at 0x1406f7208
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov dword [rsp + 0x18], r8d
btc ax, 0xa9
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
rdtsc
btc ax, r12w
sub rsp, 0x38
add r9b, r11b
adc ax, 0x2abb
mov eax, 1
imul rax, rax, 0
bts r9d, ebx
shl r8d, cl
mov rcx, qword [rsp + 0x48]
cmovg dx, bx
movzx eax, byte [rcx + rax]
shl eax, 0x18
bt cx, r15w
mov ecx, 1
xadd r9d, r8d
imul rcx, rcx, 1
test r12b, 0x1e
bts r9, r14
ror edx, 0x19
mov rdx, qword [rsp + 0x48]
and r8w, di
xor r8w, 0x37bf
shrd r9, rdi, 0x29
movzx ecx, byte [rdx + rcx]
cdq
shl ecx, 0x10
mov edx, 1
test r14b, 0x34
stc
imul rdx, rdx, 2
xadd r8b, r8b
mov r8, qword [rsp + 0x48]
movzx edx, byte [r8 + rdx]
xadd r8b, r9b
jmp 0x1406f72ac
shl edx, 8
sub r9w, r15w
mov r8d, 1
imul r8, r8, 3
cmp r8w, cx
mov r9, qword [rsp + 0x48]
movzx r8d, byte [r9 + r8]
add edx, r8d
add ecx, edx
test r10w, r13w
clc
add eax, ecx
stc
cmc
cmp eax, 0x57bc0000
jmp 0x1406f72e3
je 0x1406f72f0
sub eax, eax
jmp 0x1406f76bd
mov eax, 1
add r8b, bpl
test al, r8b
sbb ch, dl
imul rax, rax, 4
mov rcx, qword [rsp + 0x48]
rcl r9d, cl
bsr dx, bx
movzx eax, byte [rcx + rax]
shl eax, 0x18
cmp dl, r10b
mov ecx, 1
cqo
bswap r8w
imul rcx, rcx, 5
mov rdx, qword [rsp + 0x48]
xadd r9b, r8b
bt r8w, 9
movzx ecx, byte [rdx + rcx]
dec dh
add dx, r15w
ror r8w, 2
shl ecx, 0x10
cmp dh, ah
clc
neg r8d
mov edx, 1
rcr r9d, 0x2f
imul rdx, rdx, 6
inc r9d
mov r8, qword [rsp + 0x48]
movzx r9, ax
test cl, 0xb5
adc r9b, cl
movzx edx, byte [r8 + rdx]
adc r8d, 0x8cb1b39e
shl edx, 8
and r9b, al
mov r8d, 1
rcr r9b, 0x3f
imul r8, r8, 7
rcl r9b, cl
mov r9d, 0xcf102117
movzx r9w, r12b
mov r9, qword [rsp + 0x48]
cmc
stc
cmp ch, 0x1c
movzx r8d, byte [r9 + r8]
test dl, 0x32
jmp 0x1406f73b2
add edx, r8d
stc
jmp 0x1406f73bb
add ecx, edx
add eax, ecx
cmp r12b, 9
clc
test eax, eax
jmp 0x1406f73cb
je 0x1406f73d8
sub eax, eax
jmp 0x1406f76bd
mov rcx, qword [rsp + 0x48]
jmp 0x1406f73e2
call fcn.14031b738
mov dword [rsp + 0x20], eax
jmp 0x1406f73f0
mov rax, qword [rsp + 0x48]
btc cx, 0x3d
sal rcx, 0x8d
mov qword [0x1400ccd20], rax
shrd cx, cx, 0xad
cbw
cwde
mov eax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x40]
test esp, 0x939a69b
add rcx, rax
rol ax, 0x3a
inc ah
mov rax, rcx
movsx cx, spl
mov qword [0x1400ccd28], rax
cmove cx, r12w
rol rcx, 0x35
mov rax, qword [rsp + 0x40]
mov qword [0x1400ccd30], rax
mov rax, qword [rsp + 0x48]
add rax, 0x10
movzx ecx, cx
movzx rcx, r8w
movsx rcx, r9w
mov qword [rsp + 0x48], rax
jmp 0x1406f746e
mov rax, qword [rsp + 0x40]
mov cx, r12w
mov qword [0x1400ccd38], rax
not cx
mov rax, qword [rsp + 0x48]
jmp 0x1406f748b
mov qword [rsp + 0x28], rax
not ch
mov rcx, qword [rsp + 0x48]
jmp 0x1406f749c
call fcn.1406f6248
mov qword [rsp + 0x48], rax
cdqe
movzx eax, r13w
sar ax, 0x15
mov rax, qword [rsp + 0x28]
cmp rdi, 0x211f87a1
cmp qword [rsp + 0x48], rax
jmp 0x1406f74c6
jne 0x1406f767a
mov rax, qword [rsp + 0x48]
cmp r15d, 0x12bd0c99
clc
movzx eax, byte [rax]
test r14d, edx
cmp r12b, 0x14
cmp r10w, r14w
cmp eax, 5
jmp 0x1406f74ef
jne 0x1406f766e
mov eax, 1
sal cx, cl
test r11w, bx
imul rax, rax, 1
movsx cx, spl
movzx ecx, bx
shrd cx, r10w, 0xd
mov rcx, qword [rsp + 0x48]
cmc
movzx eax, byte [rcx + rax]
cmp eax, 0xfa
jmp 0x1406f7527
jne 0x1406f766e
mov eax, dword [rsp + 0x20]
sar ch, cl
dec cx
mov rcx, qword [rsp + 0x40]
lea rcx, [rcx + rax]
mov rax, rcx
jmp 0x1406f754b
cmp qword [0x1400ccd38], rax
je 0x1406f7564
sub eax, eax
jmp 0x1406f755f
jmp 0x1406f76bd
mov r8d, dword [rsp + 0x20]
mov rdx, qword [rsp + 0x40]
mov cx, di
mov ch, 0x28
cmovle cx, r8w
mov ecx, 1
call fcn.1406f6c75
mov ecx, 1
imul rcx, rcx, 2
ror r10w, cl
mov rdx, qword [rsp + 0x48]
bt r9, 0xb8
cmp sil, bl
movzx ecx, byte [rdx + rcx]
bsr r8, rdx
shl ecx, 0x18
xchg r8w, dx
mov edx, 1
mov r8w, 0x39
neg r9b
sbb r9d, 0xeb066511
imul rdx, rdx, 3
mov r8, qword [rsp + 0x48]
rcl r9b, cl
add r10b, 0xd
movzx edx, byte [r8 + rdx]
or r8b, r11b
or r10b, 0x29
movzx r10, r15w
shl edx, 0x10
mov r8d, 1
imul r8, r8, 4
mov r9, qword [rsp + 0x48]
mov r10d, 0xffb1fd8e
setbe r10b
movzx r8d, byte [r9 + r8]
shl r8d, 8
movzx r9w, r10b
rol r10b, 0xb8
mov r9d, 1
add r10, r15
imul r9, r9, 5
or r10w, 0xf8b8
mov r10, qword [rsp + 0x48]
test r10w, bx
cmp edx, r15d
movzx r9d, byte [r10 + r9]
test bl, 0xa6
cmp r10d, edx
add r8d, r9d
add edx, r8d
clc
cmp bl, bl
test bl, r10b
add ecx, edx
stc
jmp 0x1406f764c
cmp eax, ecx
jmp 0x1406f7653
je 0x1406f7665
sub eax, eax
jmp 0x1406f7660
jmp 0x1406f76bd
mov eax, dword [rsp + 0x20]
jmp 0x1406f76bd
xor eax, eax
jmp 0x1406f7675
jmp 0x1406f76bd
mov eax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x40]
jmp 0x1406f768b
lea rcx, [rcx + rax]
bsf ax, r9w
add ax, dx
mov rax, rcx
cmp qword [0x1400ccd38], rax
jmp 0x1406f76a6
jbe 0x1406f76b8
xor eax, eax
jmp 0x1406f76b3
jmp 0x1406f76bd
jmp 0x1406f7481
add rsp, 0x38
jmp 0x1406f76c6
ret