Function at 0x1400fdc30
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
push rbx
push rsi
push rdi
push r12
push r14
sub rsp, 0x20
mov rdi, qword [rcx + 0x28]
lea rax, [rdx + r8]
mov r14, r9
mov rsi, r8
mov r12, rdx
mov rbx, rcx
cmp rax, rdi
jle 0x1400fdc5b
mov rsi, rdi
sub rsi, rdx
test rsi, rsi
jg 0x1400fddec
mov rsi, qword [rsp + 0x70]
test rsi, rsi
jle 0x1400fdf4f
cmp r12, rdi
jl 0x1400fddb6
mov rax, qword [rcx + 0x20]
sub rax, rdi
cmp rax, rsi
jl 0x1400fdd8c
cmp rsi, 1
jne 0x1400fdcca
test r14, r14
jne 0x1400fdcaf
mov rax, qword [rbx + 0x18]
xor cl, cl
mov byte [rdi + rax], cl
inc qword [rbx + 0x28]
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
movzx ecx, byte [r9]
mov rax, qword [rbx + 0x18]
mov byte [rdi + rax], cl
inc qword [rbx + 0x28]
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
cmp rsi, 2
jne 0x1400fdd0c
test r14, r14
jne 0x1400fdcef
mov rax, qword [rbx + 0x18]
xor ecx, ecx
mov word [rdi + rax], cx
add qword [rbx + 0x28], rsi
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
movzx ecx, word [r9]
mov rax, qword [rbx + 0x18]
mov word [rdi + rax], cx
add qword [rbx + 0x28], 2
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
cmp rsi, 4
jne 0x1400fdd4b
test r14, r14
jne 0x1400fdd30
mov rax, qword [rbx + 0x18]
xor ecx, ecx
mov dword [rdi + rax], ecx
add qword [rbx + 0x28], rsi
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
mov ecx, dword [r9]
mov rax, qword [rbx + 0x18]
mov dword [rdi + rax], ecx
add qword [rbx + 0x28], 4
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
cmp rsi, 8
jne 0x1400fdd8c
test r14, r14
jne 0x1400fdd70
mov rax, qword [rbx + 0x18]
xor ecx, ecx
mov qword [rdi + rax], rcx
add qword [rbx + 0x28], rsi
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
mov rcx, qword [r9]
mov rax, qword [rbx + 0x18]
mov qword [rdi + rax], rcx
add qword [rbx + 0x28], 8
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
lea rdx, [rdi + rsi]
call fcn.1400fda80
add rax, rdi
mov rcx, rax
mov r8, rsi
test r14, r14
je 0x1400fddda
mov rdx, r14
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
jmp fcn.14010bf90
lea rdx, [rdi + rsi]
call fcn.1400fda80
sub rdi, r12
mov r8, rdi
lea rbx, [r12 + rax]
lea rcx, [rbx + rsi]
mov rdx, rbx
call fcn.14010bf90
mov rcx, rbx
jmp 0x1400fdd9b
xor edx, edx
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
jmp fcn.14010c660
mov qword [rsp + 0x50], rbp
mov rbp, qword [rsp + 0x70]
test rbp, rbp
jg 0x1400fdeb1
cmp r12, 0xffffffffffffffff
jg 0x1400fde33
sub rdi, rsi
test rdi, rdi
jg 0x1400fde1b
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x1400fde77
mov rax, qword [rcx]
jmp 0x1400fde74
mov rdx, rdi
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
jmp fcn.1400fda80
mov rax, rdi
sub rax, r12
cmp rsi, rax
jge 0x1400fde59
mov rcx, qword [rcx + 0x18]
sub rdi, r12
add rcx, r12
sub rdi, rsi
mov r8, rdi
lea rdx, [rcx + rsi]
call fcn.14010bf90
jmp 0x1400fde5c
mov rsi, rax
mov rdx, qword [rbx + 0x28]
cmp rdx, rsi
jne 0x1400fde96
mov rdx, qword [rbx + 0x18]
test rdx, rdx
je 0x1400fde77
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x18]
mov rbp, qword [rsp + 0x50]
xor ecx, ecx
mov qword [rbx + 0x18], rcx
mov qword [rbx + 0x28], rcx
mov qword [rbx + 0x20], rcx
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret
sub rdx, rsi
mov rcx, rbx
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
jmp fcn.1400fda80
mov qword [rsp + 0x58], r13
mov r13, rdi
sub r13, r12
mov qword [rsp + 0x60], r15
sub r13, rsi
cmp rbp, rsi
jle 0x1400fdef0
sub rdi, rsi
lea rdx, [rdi + rbp]
call fcn.1400fda80
lea r15, [r12 + rax]
test r13, r13
jle 0x1400fdf24
lea rdx, [r15 + rsi]
mov r8, r13
lea rcx, [r15 + rbp]
call fcn.14010bf90
jmp 0x1400fdf24
mov r15, qword [rcx + 0x18]
add r15, r12
cmp rbp, rsi
jge 0x1400fdf24
test r13, r13
jle 0x1400fdf11
lea rdx, [r15 + rsi]
mov r8, r13
lea rcx, [r15 + rbp]
call fcn.14010bf90
sub rdi, rsi
mov rcx, rbx
lea rdx, [rdi + rbp]
call fcn.1400fda80
lea r15, [r12 + rax]
mov r13, qword [rsp + 0x58]
mov r8, rbp
mov rcx, r15
test r14, r14
je 0x1400fdf3e
mov rdx, r14
call fcn.14010bf90
jmp 0x1400fdf45
xor edx, edx
call fcn.14010c660
mov r15, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r14
pop r12
pop rdi
pop rsi
pop rbx
ret