Function at 0x140100c80
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov rsi, rcx
movzx eax, byte [r9]
test r8b, 1
jne 0x140100d2e
test al, al
je 0x140100d32
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
mov r9, qword [rdx + 0x18]
mov rdx, rax
cmp r8, r9
je 0x140100db7
mov rdx, rax
jmp 0x140100ced
add r8, 0x20
cmp r8, r9
je 0x140100db7
movzx r10d, word [r8]
cmp r10w, 2
je 0x140100db7
movups xmm0, xmmword [r8 + 2]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [rbp - 0x42], xmm1
movaps xmmword [rbp - 0x50], xmm0
test r10w, r10w
je 0x140100ce0
mov word [rdx], r10w
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx + 2], xmm0
movups xmm0, xmmword [rbp - 0x42]
movups xmmword [rdx + 0x10], xmm0
add rdx, 0x20
jmp 0x140100ce0
test al, al
je 0x140100d50
mov rbx, qword [rdx + 8]
mov r14, qword [rdx + 0x18]
cmp r14, rbx
je 0x140100dd8
cmp word [rbx], 0
sete r15b
jmp 0x140100ddb
mov rax, qword [rdx]
mov r8, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
mov r9, qword [rdx + 0x18]
mov rdx, rax
cmp r8, r9
je 0x140100db7
mov rdx, rax
jmp 0x140100d79
add r8, 0x20
cmp r8, r9
je 0x140100db7
movzx r10d, word [r8]
cmp r10w, 2
je 0x140100db7
movups xmm0, xmmword [r8 + 2]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [rbp - 0x42], xmm1
movaps xmmword [rbp - 0x50], xmm0
test r10w, r10w
jne 0x140100d70
mov word [rdx], 0
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rdx + 2], xmm0
movups xmm0, xmmword [rbp - 0x42]
movups xmmword [rdx + 0x10], xmm0
add rdx, 0x20
jmp 0x140100d70
movabs r8, 0x7ffffffffffffff
and rcx, r8
mov r8d, 4
xor r9d, r9d
mov r10d, 4
jmp 0x140100e65
mov r15b, 1
mov rax, qword [rdx]
mov qword [rbp - 0x58], rax
mov rax, qword [rdx + 0x10]
mov qword [rbp + 8], rax
mov qword [rbp - 0x10], 0
mov qword [rbp - 8], 4
mov qword [rbp], 0
mov qword [rbp - 0x28], 0
mov qword [rbp - 0x20], 4
mov qword [rbp - 0x18], 0
cmp r14, rbx
jne 0x140100ede
mov rdx, qword [rbp + 8]
test rdx, rdx
je 0x140100e3f
shl rdx, 5
mov r8d, 4
mov rcx, qword [rbp - 0x58]
call fcn.140011880
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 8]
mov rdx, qword [rbp]
mov r9, qword [rbp - 0x28]
mov r8, qword [rbp - 0x20]
mov r10, qword [rbp - 0x18]
shl rdx, 5
add rdx, rax
shl r10, 5
add r10, r8
mov qword [rsi], rax
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rcx
mov qword [rsi + 0x18], rdx
mov qword [rsi + 0x20], r8
mov qword [rsi + 0x28], r8
mov qword [rsi + 0x30], r9
mov qword [rsi + 0x38], r10
mov rax, rsi
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, rdi
call fcn.14010cba0
mov rax, qword [rdi + 8]
mov rcx, r13
shl rcx, 5
mov word [rax + rcx], r12w
movaps xmm0, xmmword [rbp - 0x50]
movups xmmword [rax + rcx + 2], xmm0
movups xmm0, xmmword [rbp - 0x42]
movups xmmword [rax + rcx + 0x10], xmm0
inc r13
mov qword [rdi + 0x10], r13
add rbx, 0x20
cmp rbx, r14
je 0x140100e23
movzx r12d, word [rbx]
cmp r12w, 2
je 0x140100e23
movups xmm0, xmmword [rbx + 2]
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x42], xmm1
movaps xmmword [rbp - 0x50], xmm0
test r12w, r12w
setne al
xor al, r15b
je 0x140100f20
mov r13, qword [rbp]
lea rdi, [rbp - 0x10]
cmp r13, qword [rbp - 0x10]
je 0x140100ea0
jmp 0x140100ea8
mov r13, qword [rbp - 0x18]
lea rdi, [rbp - 0x28]
cmp r13, qword [rbp - 0x28]
je 0x140100ea0
jmp 0x140100ea8