Function at 0x18014ec58
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
neg bh
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
and rbp, rcx
cmp r13w, dx
inc dil
push r12
bts r12d, edx
cmp r12w, 0x1fca
rcr bpl, 0xff
push r13
cmc
push r14
push r15
mov r12b, 0x91
sub rsp, 0x40
mov dil, 0x4d
mov rbx, qword [rsp + 0x90]
jmp 0x18014eca2
mov r12, rdx
movzx r15, sp
movsx bp, r13b
mov rbp, rcx
cqo
cmovg rdi, r10
mov rdx, r9
mov r14b, dil
bswap cx
mov rcx, rbx
mov rdi, r9
xchg r14, r14
mov r14d, r14d
movzx r14w, r15b
mov r15d, r8d
mov r14b, 0x77
movzx r14d, sp
mov r14d, dword [rbx + 0xc]
jmp 0x18014ece4
call fcn.1800a5a05
xor r10d, r10d
bts si, r14w
cmovbe si, di
bsr esi, r15d
mov esi, eax
test r11, 0x1a7d463f
jmp 0x18014ed07
test r14d, r14d
jmp 0x18014ed0f
je 0x18014ef5f
mov r8, qword [rdi + 8]
adc rcx, 0x64e42c73
sal rdx, 0x72
jmp 0x18014ed29
or eax, 0xffffffff
sub r11b, r8b
movsxd r11, dword [rbx + 0x10]
sal cl, 0xb9
shr r13d, 0x9a
sar cx, cl
mov r9d, eax
shr ebx, cl
sar cx, cl
mov r13d, eax
mov edx, r14d
stc
movsx rcx, cx
lea ebx, [rdx - 1]
adc ax, 0x44d1
lea rcx, [rbx + rbx*4]
shr eax, cl
btc ax, 0xe4
lea rax, [r8 + rcx*4]
cmc
cmp esi, dword [rax + r11 + 4]
jmp 0x18014ed71
jle 0x18014ed87
cmp esi, dword [rax + r11 + 8]
jmp 0x18014ed81
jle 0x18014edb0
mov edx, ebx
cmp r13b, 8
cmc
mov eax, ebx
test sp, 0x6b96
cmc
test ebx, ebx
jmp 0x18014ed9d
jne 0x18014ed50
test eax, eax
jmp 0x18014edaa
je 0x18014edd8
lea eax, [rdx - 1]
stc
setbe dl
lea rax, [rax + rax*4]
xor rdx, 0x60521c44
movzx rdx, r13w
lea rdx, [r11 + rax*4]
clc
add rdx, r8
jmp 0x18014edd3
jmp 0x18014eddb
mov rdx, r10
lea rcx, [r8 + r11]
sub r8d, ebx
mov r8w, bp
mov r8d, r10d
test r8b, 0x54
or r11d, 0xffffffff
cmc
test rdx, rdx
jmp 0x18014edfa
je 0x18014ee21
mov eax, dword [rdx + 4]
clc
cmp r9d, esp
cmp dword [rcx], eax
jle 0x18014ee61
mov eax, dword [rdx + 8]
cmc
cmp dword [rcx + 4], eax
jmp 0x18014ee1b
jg 0x18014ee61
cmp r15d, dword [rcx]
jmp 0x18014ee29
jl 0x18014ee61
cmp r15d, dword [rcx + 4]
jmp 0x18014ee38
jg 0x18014ee61
cmp r9d, r11d
setae r13b
mov eax, r8d
not r13b
mov r13d, r8d
jmp 0x18014ee53
cmovne eax, r9d
not r9d
bswap r9w
mov r9d, eax
inc r8d
test r11w, 0x7b1f
jmp 0x18014ee6f
add rcx, 0x14
test r15b, 0x89
clc
cmp r8d, r14d
jmp 0x18014ee80
jb 0x18014edf2
cmp r9d, r11d
movsx rsi, r11w
movsx esi, dx
movsx si, r9b
mov qword [rsp + 0x20], r12
mov eax, r10d
movsxd rbx, r13d
movzx r15w, r12b
movsx r14w, al
mov qword [rsp + 0x30], r12
mov r12d, 0x74b47d05
cmovne eax, r9d
lea r11, [rsp + 0x40]
mov sil, sil
mov rbx, qword [r11 + 0x30]
xchg r15b, r12b
movzx r14, r12w
mov rsi, qword [r11 + 0x40]
movsx r14w, r8b
mov dword [rsp + 0x28], eax
lea eax, [r13 + 1]
movsxd r13, r10d
movups xmm0, xmmword [rsp + 0x20]
mov r14, 0x40dd258b
cmovne r10d, eax
mov rax, rbp
movzx r13w, al
movsx edi, si
movzx r12, r14w
mov dword [rsp + 0x38], r10d
movsx r12, r10w
not r13w
jmp 0x18014ef11
movups xmm1, xmmword [rsp + 0x30]
setb r13b
movdqu xmmword [rbp], xmm0
not r13b
mov r15, r8
movdqu xmmword [rbp + 0x10], xmm1
mov rbp, qword [r11 + 0x38]
movsx r13, r9w
cmovo r14d, r8d
movzx r12, cx
mov rsp, r11
pop r15
movsxd r13, r11d
pop r14
cmovge r13w, di
movsx r13w, r13b
not di
pop r13
movzx r12d, r14w
setns dil
pop r12
pop rdi
ret
call fcn.18015a14e
int3