Function at 0x1401849c0
Capabilities:
Encrypt data using rc4 ksa

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
mov eax, dword [rcx + 0x950]
lea r9, [rcx + 0x3368]
mov dword [rsp + 0x30], r8d
mov edi, 0xffffffff
cmp edx, 5
mov dword [rsp + 0x28], eax
mov rbx, rcx
lea r8, [rcx + 0x3210]
lea rdx, [rcx + 0x17f0]
lea ebp, [rdi + 2]
jne 0x1400d8d48
mov eax, dword [rcx + 0x9b8]
mov dword [rsp + 0x20], eax
call fcn.1400d7990
cmp dword [rbx + 0x8c], 0
mov ecx, dword [rbx + 0x9b8]
je 0x1400d8d3e
cmp ecx, 3
je 0x1400d8d32
mov edx, 5
mov eax, 3
cmp ecx, edx
cmovne eax, edx
mov dword [rbx + 0x9b8], eax
jmp 0x1400d8d91
mov dword [rbx + 0x9b8], 4
jmp 0x1400d8d91
xor ecx, ebp
mov dword [rbx + 0x9b8], ecx
jmp 0x1400d8d91
mov dword [rsp + 0x20], edi
call fcn.1400d7990
mov eax, dword [rbx + 0x53a0]
test eax, eax
cmovle eax, ebp
mov dword [rbx + 0x1840], eax
mov ecx, dword [rbx + 0x53a4]
test ecx, ecx
cmovle ecx, ebp
mov dword [rbx + 0x1844], ecx
cmp eax, dword [rbx + 0x337c]
jne 0x1400d8d8b
cmp dword [rbx + 0x1800], ebp
jne 0x1400d8d91
cmp ecx, dword [rbx + 0x3380]
je 0x1400d8d91
mov dword [rbx + 0x183c], ebp
mov rax, qword [rbx + 0x5390]
cmp dword [rax + 0x14], 4
jne 0x1400d8dcf
cmp dword [rbx + 0x88], 0
je 0x1400d8dcf
cmp dword [rbx + 0x3164], 0
je 0x1400d8dcf
lea rcx, [rbx + 0x33b0]
mov dword [rbx + 0x33a8], ebp
mov r8d, 0x1a20
lea rdx, [rbx + 0x17f0]
call fcn.140260c10
mov rcx, qword [rbx + 0x5398]
mov eax, dword [rbx + 0x1810]
mov dword [rcx + 0x78], eax
cmp dword [rbx + 0x3230], 0
jne 0x1400d8e48
mov r8, qword [rbx + 0x5398]
xor edx, edx
mov r9d, dword [r8 + 8]
mov dword [rbx + 0x1824], r9d
cmp dword [rbx + 0xa8], edx
je 0x1400d8e21
mov ecx, dword [rbx + 0x3a8]
mov eax, edx
test ecx, ecx
sete al
add eax, r9d
test ecx, ecx
mov dword [rbx + 0x1824], eax
cmovne edi, ebp
jmp 0x1400d8e23
mov edi, edx
mov eax, edx
mov dword [rbx + 0x1828], edi
cmp edi, 0xffffffff
sete al
mov dword [r8 + 0xc], eax
cmp dword [rbx + 0x1828], ebp
mov rax, qword [rbx + 0x5398]
sete dl
mov dword [rax + 0x10], edx
mov rcx, rbx
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
jmp 0x1401849c0
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rax, qword [rcx + 0x5398]
mov rbx, rcx
xor esi, esi
mov edi, 0x1b60
mov r9d, esi
mov rcx, qword [rax + 0xee0]
mov qword [rbx + 0x6fd0], rcx
mov rax, qword [rbx + 0x5398]
mov rcx, qword [rax + 0xee8]
mov qword [rbx + 0x6fd8], rcx
mov rax, qword [rbx + 0x5398]
mov rcx, qword [rax + 0xef0]
mov qword [rbx + 0x7000], rcx
mov rax, qword [rbx + 0x5398]
mov rcx, qword [rax + 0x1b48]
mov qword [rbx + 0x6ff0], rcx
mov rax, qword [rbx + 0x5398]
mov rcx, qword [rax + 0x1b50]
mov qword [rbx + 0x6ff8], rcx
mov rcx, qword [rbx + 0x5398]
mov rax, qword [rcx + 0xed0]
mov qword [rbx + 0x6f98], rax
mov rax, qword [rcx + 0xed8]
mov qword [rbx + 0x6fa0], rax
mov rax, qword [rcx + 0x1008]
mov qword [rbx + 0x7218], rax
mov eax, dword [rbx + 0x53a0]
mov dword [rcx + 0x1b58], eax
mov eax, dword [rbx + 0x53a4]
mov rcx, qword [rbx + 0x5398]
mov dword [rcx + 0x1b5c], eax
mov eax, dword [rbx + 0x53a0]
test eax, eax
jle 0x140184ad7
mov edx, edi
lea r8, [rbx + 0x53a8]
nop dword [rax + rax]
mov rax, qword [r8]
lea r8, [r8 + 8]
mov rcx, qword [rbx + 0x5398]
lea rdx, [rdx + 4]
inc r9d
mov eax, dword [rax + 8]
mov dword [rdx + rcx - 4], eax
mov eax, dword [rbx + 0x53a0]
cmp r9d, eax
jl 0x140184ab0
mov ecx, dword [rbx + 0x1800]
cmp ecx, 1
jne 0x140184bac
mov edx, esi
cmp dword [rbx + 0x53a4], esi
jle 0x140184b24
mov r8d, 0x1ba0
lea r9, [rbx + 0x5440]
nop dword [rax]
mov rax, qword [r9]
lea r9, [r9 + 8]
mov rcx, qword [rbx + 0x5398]
lea r8, [r8 + 4]
inc edx
mov eax, dword [rax + 8]
mov dword [r8 + rcx - 4], eax
cmp edx, dword [rbx + 0x53a4]
jl 0x140184b00
mov word [rbx + 0xbe68], 0xfffe
mov r11d, esi
mov rax, qword [rbx + 0x5440]
cmp dword [rax + 0x1b58], esi
jle 0x140184c35
lea r10, [rbx + 0xbe6a]
nop word [rax + rax]
mov r9d, dword [rdi + rax]
mov edx, esi
mov byte [r10], 0xfe
mov r8d, dword [rbx + 0x53a0]
test r8d, r8d
jle 0x140184b8d
nop word [rax + rax]
movsxd rax, edx
mov rcx, qword [rbx + rax*8 + 0x53a8]
cmp dword [rcx + 8], r9d
je 0x140184b8a
inc edx
cmp edx, r8d
jl 0x140184b70
jmp 0x140184b8d
mov byte [r10], dl
mov rax, qword [rbx + 0x5440]
inc r11d
add rdi, 4
inc r10
cmp r11d, dword [rax + 0x1b58]
jl 0x140184b50
jmp 0x140184c35
test ecx, ecx
jne 0x140184c35
cmp dword [rbx + 0x31fc], 1
je 0x140184c35
cmp dword [rbx + 0x22c], 2
jne 0x140184c35
mov word [rbx + 0xbe80], 0xfffe
mov edx, esi
mov ecx, dword [rbx + 0x1814]
shl eax, cl
test eax, eax
jle 0x140184c35
nop dword [rax]
movsxd rax, edx
cmp dword [rbx + 0x6e64], esi
jne 0x140184bfc
mov rax, qword [rbx + rax*8 + 0x53a8]
movzx ecx, byte [rax + 0x78]
and cl, 0x3f
jmp 0x140184c17
sar rax, 1
mov rax, qword [rbx + rax*8 + 0x53a8]
movzx ecx, byte [rax + 0x78]
movzx eax, dl
and cl, 0x3f
and al, 1
add cl, cl
add cl, al
movsxd rax, edx
inc edx
mov byte [rax + rbx + 0xbe82], cl
mov eax, dword [rbx + 0x53a0]
mov ecx, dword [rbx + 0x1814]
shl eax, cl
cmp edx, eax
jl 0x140184be0
mov edx, 0xfffffffe
lea rcx, [rbx + 0xb560]
lea r8d, [rdx + 0x52]
call fcn.1402612c0
cmp dword [rbx + 0x53a0], esi
jle 0x140184cb6
cmp dword [rbx + 0x1814], esi
jl 0x140184cb6
mov r10d, 0x1be0
mov r9d, listen
nop word [rax + rax]
mov rax, qword [rbx + 0x53a8]
lea r9, [r9 + 4]
mov r8, qword [rbx + 0x5398]
lea r10, [r10 + 2]
inc esi
mov ecx, dword [r8 + r9 - 4]
sub ecx, dword [rax + r9 - 4]
sub ecx, dword [rax + 8]
add ecx, dword [r8 + 8]
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, 0x100
cdq
idiv ecx
mov word [r8 + r10 - 2], ax
cmp esi, dword [rbx + 0x1814]
jle 0x140184c70
mov rsi, qword [rsp + 0x38]
mov dword [rbx + 0x6f2c], 0xf
mov dword [rbx + 0x6f24], 0xf
mov dword [rbx + 0x6f18], 0xf
mov dword [rbx + 0x6f0c], 0xf
mov dword [rbx + 0x6ef0], 0xb
mov dword [rbx + 0x6f30], 0xb
mov dword [rbx + 0x6f28], 0xb
mov dword [rbx + 0x6f20], 0xb
mov dword [rbx + 0x6f10], 0xb
mov dword [rbx + 0x6f00], 0xb
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret