Function at 0x1401261c0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rax, qword [rsp + 0xf8]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140126297
mov rbp, r8
mov r13, rdx
mov r14, rcx
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x48], rax
mov r15, qword [rsp + 0xf0]
movabs r12, 0xcccccccccccccccd
mov rax, qword [rsp + 0x68]
cmp r15, rax
mov rcx, qword [rsp + 0x58]
jle 0x140126744
cmp rcx, rax
jle 0x140126744
test r15, r15
je 0x140126297
movzx edx, word [r13]
mov rcx, qword [r9]
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
sub rcx, rax
sar rcx, 3
imul rcx, r12
cmp rcx, rdx
jbe 0x1401262ab
lea r8, [rdx + rdx*4]
lea r8, [rax + r8*8]
add r8, 0x10
neg r15
xor ebx, ebx
mov rsi, r15
movzx edi, word [r14 + rbx]
movzx r10d, di
cmp rcx, r10
jbe 0x1401262ab
mov r11d, dword [r8]
lea r10, [r10 + r10*4]
cmp r11d, dword [rax + r10*8 + 0x10]
jb 0x1401262be
add rbx, 2
inc rsi
jne 0x140126272
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x1402f4f7c]
lea rdx, str....._third_partylibc_srcinclude_vector:1418:_assertion___n___size___failed:_vector___index_out_of_bounds_n
call fcn.1401ec0b0
mov r8, rsi
neg r8
lea r11, [r14 + rbx]
mov r10, qword [rsp + 0x58]
cmp r8, r10
mov qword [rsp + 0x70], rbp
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x80], r11
jl 0x1401263dd
cmp rsi, 0xffffffffffffffff
mov r15, r13
je 0x1401268b8
mov r11, r8
shr r11, 0x3f
add r11, r8
mov r13, r11
and r13, 0xfffffffffffffffe
add r13, r14
add r13, rbx
mov r9, rbp
sub r9, r15
sar r9, 1
cmp rbp, r15
je 0x140126393
mov r12, r9
and r12, 0xfffffffffffffffe
movzx edx, word [r15 + r12]
cmp rcx, rdx
jbe 0x1401262ab
movzx r8d, word [r13]
cmp rcx, r8
jbe 0x1401262ab
mov rdi, r11
mov r11, r9
shr r9, 1
add r12, r15
lea r10, [rdx + rdx*4]
lea rdx, [r8 + r8*4]
mov edx, dword [rax + rdx*8 + 0x10]
add r12, 2
mov r8, r9
not r8
add r8, r11
cmp dword [rax + r10*8 + 0x10], edx
cmovae r8, r9
cmovae r12, r15
test r8, r8
jne 0x1401263ad
mov r9, r12
sub r9, r15
sar r9, 1
mov r10, qword [rsp + 0x58]
mov r11, rdi
sar r11, 1
lea rbp, [r14 + r11*2]
add rbp, rbx
mov rcx, r15
jmp 0x14012648e
mov r12, rbp
jmp 0x140126381
add r12, r10
add r12, 2
not r9
add r9, r8
mov r8, r9
test r9, r9
je 0x140126370
mov r10, r8
and r10, 0xfffffffffffffffe
movzx r11d, word [r12 + r10]
cmp rcx, r11
jbe 0x1401262ab
mov r9, r8
shr r9, 1
lea r11, [r11 + r11*4]
cmp dword [rax + r11*8 + 0x10], edx
jae 0x1401263a5
jmp 0x140126398
mov rbp, r15
jmp 0x140126479
mov r9, r10
shr r9, 0x3f
add r9, r10
mov r12, r9
and r12, 0xfffffffffffffffe
mov r15, r13
add r12, r13
cmp r11, r13
je 0x1401263d5
movzx edx, word [r12]
cmp rcx, rdx
jbe 0x1401262ab
mov r13, r9
mov r9, r15
sub r9, r14
sub r9, rbx
sar r9, 1
mov r8, r9
and r8, 0xfffffffffffffffe
add r8, r14
movzx r8d, word [rbx + r8]
cmp rcx, r8
jbe 0x1401262ab
mov rdi, r11
lea rdx, [rdx + rdx*4]
lea rdx, [rax + rdx*8]
add rdx, 0x10
mov r10, r9
shr r10, 1
mov edx, dword [rdx]
lea r11, [r8 + r8*4]
mov r8, r10
not r8
add r8, r9
cmp edx, dword [rax + r11*8 + 0x10]
lea r9, [r14 + r10*2]
lea rbp, [rbx + r9 + 2]
cmovb rbp, rdi
cmovb r8, r10
test r8, r8
jne 0x14012653b
mov r10, qword [rsp + 0x58]
mov r9, r13
sar r9, 1
mov r11, rbp
sub r11, r14
sub r11, rbx
sar r11, 1
mov rcx, r15
mov r13, rbp
mov r8, r12
cmp r13, r15
je 0x140126652
mov r8, rbp
cmp r15, r12
je 0x140126652
mov qword [rsp + 0x78], r11
lea r10, [r13 + 2]
cmp r10, r15
je 0x140126612
lea r11, [r15 + 2]
cmp r11, r12
je 0x140126564
mov qword [rsp + 0x50], r9
mov r8, r12
sub r8, rcx
sub rcx, rbp
mov r9, rcx
sar r9, 1
mov rdx, r8
sar rdx, 1
mov rax, r9
cmp r9, rdx
jne 0x14012659f
mov r9, qword [rsp + 0x50]
movzx eax, word [r10 - 2]
movzx ecx, word [r11 - 2]
mov word [r10 - 2], cx
mov word [r11 - 2], ax
cmp r10, r15
je 0x140126645
add r10, 2
lea rax, [r11 + 2]
cmp r11, r12
mov r11, rax
jne 0x1401264f0
jmp 0x140126645
add rbp, r10
add rbp, 2
not r9
add r9, r8
mov r8, r9
test r9, r9
je 0x140126471
mov r10, r8
and r10, 0xfffffffffffffffe
movzx r11d, word [rbp + r10]
cmp rcx, r11
jbe 0x1401262ab
mov r9, r8
shr r9, 1
lea r11, [r11 + r11*4]
cmp edx, dword [rax + r11*8 + 0x10]
jb 0x14012652f
jmp 0x140126522
lea rax, [r12 - 2]
movzx edi, word [r12 - 2]
mov r8, rax
sub r8, rbp
mov r15, r12
sub r15, r8
cmp rax, r13
je 0x140126595
mov rcx, r15
mov rdx, r13
mov qword [rsp + 0x50], r9
call fcn.1401b1b20
mov r9, qword [rsp + 0x50]
mov word [r13], di
jmp 0x140126645
mov r10, rdx
cqo
idiv r10
mov rax, r10
test rdx, rdx
jne 0x14012659f
lea rax, [r10*2]
add rax, r13
movzx edx, word [rax - 2]
lea r11, [rax + rcx]
add r11, 0xfffffffffffffffe
add rax, 0xfffffffffffffffe
mov rdi, rax
mov r10, r11
movzx r11d, word [r11]
mov word [rdi], r11w
mov r11, r12
sub r11, r10
sar r11, 1
mov rdi, r9
sub rdi, r11
lea r15, [r10 + r9*2]
lea r11, [r13 + rdi*2]
cmovl r11, r15
mov rdi, r10
cmp r11, rax
jne 0x1401265cd
mov word [r10], dx
cmp rax, r13
jne 0x1401265ba
add r8, r13
mov r15, r8
mov r9, qword [rsp + 0x50]
jmp 0x140126645
movzx eax, word [r13]
mov word [rsp + 0x50], ax
mov rdi, r12
sub rdi, rcx
mov rcx, r13
mov rdx, r15
mov r8, rdi
mov r15, r9
call fcn.1401b1b20
mov r9, r15
lea r15, [rdi + r13]
movzx ecx, word [rsp + 0x50]
mov word [r13 + rdi], cx
mov r8, r15
mov r10, qword [rsp + 0x58]
mov r11, qword [rsp + 0x78]
lea r15, [r11 + rsi]
neg r15
mov rdi, r10
sub rdi, r9
lea rax, [r11 + r9]
sub r10, rax
sub r10, rsi
cmp rax, r10
jl 0x1401266b7
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r15
mov rcx, r8
mov rdx, r12
mov rbp, r8
mov r8, qword [rsp + 0x70]
mov rdi, r9
mov r9, qword [rsp + 0x60]
mov r15, r11
call fcn.1401261c0
mov r12, r13
mov r14, qword [rsp + 0x80]
jmp 0x1401266f0
add r14, rbx
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r11
mov rcx, r14
mov rdx, rbp
mov r14, r8
mov r9, qword [rsp + 0x60]
call fcn.1401261c0
mov rbp, qword [rsp + 0x70]
mov qword [rsp + 0x58], rdi
mov r13, r12
test rdi, rdi
mov r9, qword [rsp + 0x60]
movabs r12, 0xcccccccccccccccd
jne 0x14012621e
jmp 0x140126297
cmp rax, qword [rsp + 0x48]
je 0x140126297
xor ecx, ecx
lea rdx, [rax + rcx]
add rdx, 0xfffffffffffffffe
movzx r8d, word [rdx]
mov word [rbp + rcx], r8w
add rcx, 0xfffffffffffffffe
cmp rdx, qword [rsp + 0x48]
jne 0x140126722
jmp 0x140126297
cmp r15, rcx
jle 0x1401267e6
cmp r13, rbp
je 0x140126297
mov rax, qword [rsp + 0x48]
mov rcx, r13
movzx edx, word [rcx]
mov word [rax], dx
add rcx, 2
add rax, 2
cmp rcx, rbp
jne 0x14012675e
add rbp, 0xfffffffffffffffe
mov rbx, qword [rsp + 0x48]
cmp r13, r14
je 0x140126715
movzx ecx, word [rax - 2]
mov r8, qword [r9]
mov rdx, qword [r8]
mov r11, qword [r8 + 8]
sub r11, rdx
sar r11, 3
imul r11, r12
cmp r11, rcx
jbe 0x1401262ab
lea r8, [r13 - 2]
movzx r10d, word [r8]
cmp r11, r10
jbe 0x1401262ab
lea rdi, [rax - 2]
lea r11, [rcx + rcx*4]
mov r11d, dword [rdx + r11*8 + 0x10]
lea rsi, [r10 + r10*4]
cmp r11d, dword [rdx + rsi*8 + 0x10]
cmovb ecx, r10d
cmovb r13, r8
cmovae rax, rdi
mov word [rbp], cx
add rbp, 0xfffffffffffffffe
cmp rax, rbx
jne 0x14012677a
jmp 0x140126297
cmp r14, r13
je 0x140126297
mov rax, qword [rsp + 0x48]
mov r8, rax
neg r8
mov rcx, r14
mov r10, r13
movzx edx, word [rcx]
mov word [rax], dx
add rcx, 2
add rax, 2
add r8, 0xfffffffffffffffe
cmp rcx, r10
jne 0x140126800
cmp r13, rbp
je 0x140126892
movzx ecx, word [r13]
mov rdx, qword [r9]
mov rbx, qword [rdx]
mov r10, qword [rdx + 8]
sub r10, rbx
sar r10, 3
imul r10, r12
cmp r10, rcx
mov r15, qword [rsp + 0x48]
jbe 0x1401262ab
movzx edx, word [r15]
cmp r10, rdx
jbe 0x1401262ab
lea r10, [rcx + rcx*4]
mov r10d, dword [rbx + r10*8 + 0x10]
lea r11, [rdx + rdx*4]
xor esi, esi
xor edi, edi
cmp r10d, dword [rbx + r11*8 + 0x10]
setae sil
setb dil
cmovb edx, ecx
lea r15, [r15 + rsi*2]
lea r13, [r13 + rdi*2]
mov word [r14], dx
add r14, 2
mov qword [rsp + 0x48], r15
cmp rax, r15
jne 0x140126817
jmp 0x140126297
mov rdx, qword [rsp + 0x48]
add r8, rdx
neg r8
mov rcx, r14
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1401b1b20
mov word [r14 + rbx], dx
mov word [r15], di
jmp 0x140126297