Function at 0x140405336
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rdx
rcr rax, 0x9d
mov qword [rsp + 8], rcx
sal ah, 0x31
sub rsp, 0x48
ror ax, 7
sal ah, cl
xor ah, 4
mov rax, qword [rsp + 0x50]
jmp 0x14040535f
movzx eax, byte [rax]
cmp dil, 0x12
cmc
test eax, eax
jmp 0x14040536e
je 0x140405621
mov eax, 1
ror cl, 0x1d
imul rax, rax, 0
mov rcx, qword [rsp + 0x50]
jmp 0x14040538a
mov cl, byte [rcx + rax]
call fcn.1404052d1
mov dword [rsp + 0x30], eax
sub ecx, r9d
bts rdx, r8
mov ecx, 1
bt dx, r15w
imul rcx, rcx, 1
cqo
movzx rdx, r9w
bswap dx
mov rdx, qword [rsp + 0x50]
mov cl, byte [rdx + rcx]
jmp 0x1404053c1
call fcn.1404052d1
mov dword [rsp + 0x2c], eax
mov ecx, 1
movzx rdx, r9w
imul rcx, rcx, 2
jmp 0x1404053dc
mov rdx, qword [rsp + 0x50]
jmp 0x1404053e6
mov cl, byte [rdx + rcx]
jmp 0x1404053ee
call fcn.1404052d1
mov dword [rsp + 0x28], eax
mov ecx, 1
movsx edx, cx
imul rcx, rcx, 3
movsx dx, ah
cmovl dx, si
mov rdx, qword [rsp + 0x50]
jmp 0x140405415
mov cl, byte [rdx + rcx]
jmp 0x14040541d
call fcn.1404052d1
mov dword [rsp + 0x24], eax
stc
btc rcx, rsp
sar edx, cl
mov ecx, 1
rcr dx, 0x8a
imul rcx, rcx, 4
mov rdx, qword [rsp + 0x50]
jmp 0x140405444
mov cl, byte [rdx + rcx]
jmp 0x14040544c
call fcn.1404052d1
imul eax, eax, 0x55
mov ecx, dword [rsp + 0x24]
ror dh, 0x86
add ecx, eax
mov eax, ecx
shrd rdx, rdi, 7
xadd cx, dx
imul eax, eax, 0x55
shl rcx, 0xd
cmp bl, r8b
mov dh, cl
mov ecx, dword [rsp + 0x28]
add ecx, eax
cbw
mov eax, ecx
imul eax, eax, 0x55
movsx cx, bpl
mov ecx, dword [rsp + 0x2c]
btc rdx, 0x37
adc dh, 0xb9
add ecx, eax
mov rax, 0xffffffffc8945c8f
inc dx
mov eax, ecx
rcr cx, cl
sar dl, cl
imul eax, eax, 0x55
cdq
rcr ch, cl
btr rcx, 0x29
mov ecx, dword [rsp + 0x30]
movzx dx, bpl
movsx dx, ah
cdq
add ecx, eax
mov dx, bx
bsf rdx, r8
mov eax, ecx
rcr cx, cl
jmp 0x1404054d4
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
bt rcx, rsp
and eax, 0xff
bt edx, ebp
mov ecx, 1
rcl dx, 0xba
ror dh, 0xbe
imul rcx, rcx, 0
or dx, r12w
inc dl
mov rdx, qword [rsp + 0x58]
mov byte [rdx + rcx], al
mov eax, dword [rsp + 0x20]
test r9b, 0x9f
movzx dx, r14b
shr eax, 8
bt rcx, r12
and eax, 0xff
rcl ecx, 0x14
bt ecx, 0xb2
mov ecx, 1
sal dl, cl
rcr dx, cl
test r15d, 0xa0e190a
imul rcx, rcx, 1
stc
mov rdx, qword [rsp + 0x58]
jmp 0x140405549
mov byte [rdx + rcx], al
movsx dx, r10b
or dl, 0x2f
not rcx
mov eax, dword [rsp + 0x20]
sar cx, 0xa4
rcr dx, cl
add dx, bp
shr eax, 0x10
sub cl, r13b
sbb dl, r12b
and eax, 0xff
stc
movsx edx, sp
mov ecx, 1
imul rcx, rcx, 2
movsx rdx, r15w
ror dh, 0x9f
bsf dx, cx
mov rdx, qword [rsp + 0x58]
test r9w, r12w
mov byte [rdx + rcx], al
sub al, bpl
mov ax, 0x8884
cwd
mov eax, dword [rsp + 0x20]
test r9, r13
movzx edx, dx
rcl ch, 0xb7
shr eax, 0x18
adc cl, 1
movsx rdx, r15w
xor rdx, 0x760d1423
and eax, 0xff
stc
rcr rdx, cl
mov ecx, 1
movzx dx, dil
bswap dx
imul rcx, rcx, 3
or edx, 0xe63f0b95
rcr dl, 0x9d
bts dx, sp
mov rdx, qword [rsp + 0x58]
mov byte [rdx + rcx], al
mov rax, qword [rsp + 0x50]
cmp r10d, r8d
jmp 0x1404055fa
add rax, 5
cmc
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x58]
add rax, 4
jmp 0x140405612
mov qword [rsp + 0x58], rax
jmp 0x14040561c
jmp 0x140405354
add rsp, 0x48
jmp 0x14040562a
ret