Function at 0x1401ab940
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
test r8d, r8d
js 0x1401abd54
mov rax, rcx
movzx r10d, word [rdx + 2]
xor r9d, r9d
test r10d, r10d
mov r11d, 0x8a
mov ecx, 7
cmove ecx, r11d
setne r9b
add r9d, 3
inc r8d
xor r11d, r11d
mov r14d, 0xffffffff
xor edi, edi
jmp 0x1401abc72
mov word [rax + 0x175c], bx
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea r15d, [r9 + 1]
mov dword [rax + 0x28], r15d
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov ebx, dword [rax + 0x28]
lea r15d, [rbx + 1]
mov dword [rax + 0x28], r15d
mov byte [r9 + rbx], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
add r9d, r14d
add r9d, 0xfffffff0
mov ebx, ebp
jmp 0x1401abafc
movzx ebp, di
mov ecx, r9d
shl edi, cl
or ebx, edi
mov word [rax + 0x175c], bx
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea edi, [r9 + 1]
mov dword [rax + 0x28], edi
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov edi, dword [rax + 0x28]
lea ebx, [rdi + 1]
mov dword [rax + 0x28], ebx
mov byte [r9 + rdi], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
mov word [rax + 0x175c], bp
add r9d, 0xfffffff7
jmp 0x1401abc41
mov word [rax + 0x175c], bx
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea r15d, [r9 + 1]
mov dword [rax + 0x28], r15d
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov ebx, dword [rax + 0x28]
lea r15d, [rbx + 1]
mov dword [rax + 0x28], r15d
mov byte [r9 + rbx], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
add r9d, r14d
add r9d, 0xfffffff0
mov ebx, ebp
jmp 0x1401abb5e
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea r15d, [r9 + 1]
mov dword [rax + 0x28], r15d
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov ebx, dword [rax + 0x28]
lea r15d, [rbx + 1]
mov dword [rax + 0x28], r15d
mov byte [r9 + rbx], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
add r9d, r14d
add r9d, 0xfffffff0
mov ebx, ebp
jmp 0x1401abbe2
movzx r14d, word [rax + 0xb3e]
movzx ebp, word [rax + 0xb3c]
mov r15d, ebp
mov ecx, r9d
shl r15d, cl
mov ecx, 0x10
sub ecx, r14d
or ebx, r15d
cmp r9d, ecx
jg 0x1401ab98b
add r9d, r14d
mov dword [rax + 0x1760], r9d
add edi, 0xfff6
cmp r9d, 0xa
jge 0x1401ab9db
mov ecx, r9d
shl edi, cl
or ebx, edi
mov word [rax + 0x175c], bx
add r9d, 7
jmp 0x1401abc41
cmp edi, 9
jg 0x1401abacd
movzx r14d, word [rax + 0xb3a]
movzx ebp, word [rax + 0xb38]
mov r15d, ebp
mov ecx, r9d
shl r15d, cl
mov ecx, 0x10
sub ecx, r14d
or ebx, r15d
cmp r9d, ecx
jg 0x1401aba34
add r9d, r14d
mov dword [rax + 0x1760], r9d
add edi, 0xfffe
cmp r9d, 0xe
jge 0x1401abe08
mov ecx, r9d
shl edi, cl
or ebx, edi
mov word [rax + 0x175c], bx
add r9d, 3
jmp 0x1401abc41
mov edi, ebp
jmp 0x1401abbe9
mov r9d, dword [rax + 0x1760]
movzx ebx, word [rax + 0x175c]
test esi, esi
je 0x1401abb2a
cmp esi, r14d
je 0x1401abb8c
mov ecx, esi
movzx r14d, word [rax + rcx*4 + 0xaf6]
mov r15d, 0x10
movzx ebp, word [rax + rcx*4 + 0xaf4]
mov r12d, ebp
mov ecx, r9d
shl r12d, cl
sub r15d, r14d
or ebx, r12d
mov word [rax + 0x175c], bx
cmp r9d, r15d
jg 0x1401aba84
add r9d, r14d
mov dword [rax + 0x1760], r9d
movzx r14d, word [rax + 0xb36]
movzx ebp, word [rax + 0xb34]
mov r15d, ebp
mov ecx, r9d
shl r15d, cl
mov ecx, 0x10
sub ecx, r14d
or ebx, r15d
cmp r9d, ecx
jg 0x1401abd5f
add r9d, r14d
mov dword [rax + 0x1760], r9d
add edi, 0xfffd
cmp r9d, 0xf
jge 0x1401abdaf
mov ecx, r9d
shl edi, cl
or ebx, edi
mov word [rax + 0x175c], bx
add r9d, 2
mov dword [rax + 0x1760], r9d
jmp 0x1401abce1
xor ebx, ebx
jmp 0x1401abc88
mov ecx, 0x8a
mov r9d, 3
jmp 0x1401abc61
mov esi, r14d
inc r11
mov r14d, esi
mov edi, ebp
cmp r11, r8
je 0x1401abd54
mov esi, r10d
movzx r10d, word [rdx + r11*4 + 6]
lea ebp, [rdi + 1]
cmp esi, r10d
sete bl
cmp ebp, ecx
jge 0x1401abc4d
test bl, bl
jne 0x1401abc5e
cmp ebp, r9d
jge 0x1401abb90
mov r9d, esi
mov ecx, dword [rax + 0x1760]
movzx edi, word [rax + 0x175c]
movzx ebx, word [rax + r9*4 + 0xaf6]
mov r15d, 0x10
movzx r14d, word [rax + r9*4 + 0xaf4]
mov r12d, r14d
shl r12d, cl
sub r15d, ebx
or edi, r12d
mov word [rax + 0x175c], di
cmp ecx, r15d
jg 0x1401abd05
add ecx, ebx
mov dword [rax + 0x1760], ecx
dec ebp
jne 0x1401abca5
xor ebp, ebp
test r10d, r10d
je 0x1401abc51
xor ecx, ecx
cmp esi, r10d
sete cl
mov r9d, 4
sub r9d, ecx
xor ecx, 7
jmp 0x1401abc61
mov rcx, qword [rax + 0x10]
mov r15d, dword [rax + 0x28]
lea r12d, [r15 + 1]
mov dword [rax + 0x28], r12d
mov byte [rcx + r15], dil
mov cl, byte [rax + 0x175d]
mov rdi, qword [rax + 0x10]
mov r15d, dword [rax + 0x28]
lea r12d, [r15 + 1]
mov dword [rax + 0x28], r12d
mov byte [rdi + r15], cl
mov edi, dword [rax + 0x1760]
mov cl, 0x10
sub cl, dil
shr r14d, cl
mov word [rax + 0x175c], r14w
lea ecx, [rbx + rdi]
add ecx, 0xfffffff0
mov edi, r14d
jmp 0x1401abcd7
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov word [rax + 0x175c], bx
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea r15d, [r9 + 1]
mov dword [rax + 0x28], r15d
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov ebx, dword [rax + 0x28]
lea r15d, [rbx + 1]
mov dword [rax + 0x28], r15d
mov byte [r9 + rbx], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
add r9d, r14d
add r9d, 0xfffffff0
mov ebx, ebp
jmp 0x1401abc18
movzx ebp, di
mov ecx, r9d
shl edi, cl
or ebx, edi
mov word [rax + 0x175c], bx
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea edi, [r9 + 1]
mov dword [rax + 0x28], edi
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov edi, dword [rax + 0x28]
lea ebx, [rdi + 1]
mov dword [rax + 0x28], ebx
mov byte [r9 + rdi], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
mov word [rax + 0x175c], bp
add r9d, 0xfffffff2
jmp 0x1401abc41
movzx ebp, di
mov ecx, r9d
shl edi, cl
or ebx, edi
mov word [rax + 0x175c], bx
mov rcx, qword [rax + 0x10]
mov r9d, dword [rax + 0x28]
lea edi, [r9 + 1]
mov dword [rax + 0x28], edi
mov byte [rcx + r9], bl
mov cl, byte [rax + 0x175d]
mov r9, qword [rax + 0x10]
mov edi, dword [rax + 0x28]
lea ebx, [rdi + 1]
mov dword [rax + 0x28], ebx
mov byte [r9 + rdi], cl
mov r9d, dword [rax + 0x1760]
mov cl, 0x10
sub cl, r9b
shr ebp, cl
mov word [rax + 0x175c], bp
add r9d, 0xfffffff3
jmp 0x1401abc41