Function at 0x1400d2160
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
sub rsp, 0x40
lea rbp, [rsp + 0x40]
mov r10, qword [rcx]
test r10, r10
je 0x1400d21e4
mov r11, qword [rcx + 8]
mov r8, qword [rcx + 0x10]
cmp r8, r11
jae 0x1400d21e4
movzx eax, byte [r10 + r8]
cmp eax, 0x49
mov rbx, rcx
je 0x1400d21fd
cmp eax, 0x42
jne 0x1400d21e4
lea rsi, [r8 + 1]
mov qword [rcx + 0x10], rsi
mov r9b, 1
cmp rsi, r11
jae 0x1400d232d
cmp byte [r10 + rsi], 0x5f
jne 0x1400d22bc
lea rax, [r8 + 2]
mov qword [rcx + 0x10], rax
xor eax, eax
cmp rax, r8
jae 0x1400d232d
mov edx, dword [rcx + 0x18]
inc edx
cmp edx, 0x1f4
jbe 0x1400d2387
mov dil, 1
xor r9d, r9d
jmp 0x1400d232f
xor edx, edx
call sym.rustc_demangle::v0::Printer::print_path::hcf8c88adebe9fe6a
mov esi, eax
add sil, sil
mov eax, esi
add rsp, 0x40
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret
inc r8
mov qword [rcx + 0x10], r8
xor edx, edx
call sym.rustc_demangle::v0::Printer::print_path::hcf8c88adebe9fe6a
test al, al
jne 0x1400d236d
mov rdx, rbx
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x1400d223c
lea rdx, [0x1402821a3]
mov r8d, 1
call sym.core::fmt::Formatter::pad::hb8b9c353098ce8d9
mov rdx, rbx
test al, al
jne 0x1400d236d
mov rax, qword [rdx]
mov sil, 1
test rax, rax
je 0x1400d21f0
xor r14d, r14d
lea rdi, [0x1402824f9]
nop word cs:[rax + rax]
mov rcx, qword [rdx + 0x10]
cmp rcx, qword [rdx + 8]
jae 0x1400d2274
cmp byte [rax + rcx], 0x45
je 0x1400d23c0
sub r14, 1
jb 0x1400d229c
mov rcx, qword [rdx + 0x20]
test rcx, rcx
je 0x1400d229c
mov r8d, 2
mov rdx, rdi
call sym.core::fmt::Formatter::pad::hb8b9c353098ce8d9
mov rdx, rbx
test al, al
jne 0x1400d236d
mov rcx, rdx
call sym.rustc_demangle::v0::Printer::print_generic_arg::h2a0cef0c4c445ba5
test al, al
jne 0x1400d236d
mov rdx, rbx
mov rax, qword [rbx]
test rax, rax
jne 0x1400d2260
jmp 0x1400d21f0
xor eax, eax
mov r14d, 0x3e
nop word cs:[rax + rax]
movzx edx, byte [r10 + rsi]
cmp dl, 0x5f
je 0x1400d231d
lea edi, [rdx - 0x30]
cmp dil, 0xa
jb 0x1400d22ff
lea edi, [rdx - 0x61]
cmp dil, 0x1a
jae 0x1400d22f1
add dl, 0xa9
jmp 0x1400d22fd
lea edi, [rdx - 0x41]
cmp dil, 0x1a
jae 0x1400d232d
add dl, 0xe3
mov edi, edx
inc rsi
mov qword [rcx + 0x10], rsi
mul r14
jo 0x1400d232d
movzx edx, dil
xor edi, edi
add rax, rdx
jb 0x1400d232f
cmp rsi, r11
jb 0x1400d22d0
jmp 0x1400d232f
inc rsi
mov qword [rcx + 0x10], rsi
inc rax
jne 0x1400d21bf
xor edi, edi
mov rax, qword [rcx + 0x20]
test rax, rax
je 0x1400d2375
mov ecx, r9d
xor cl, 1
movzx ecx, cl
lea r8, [rcx + rcx*8]
add r8, 0x10
lea rcx, str.invalid_syntaxrecursion_limit_reached_for_______::closureshim_as__mut_const___dyn___unsafe_extern__
lea rdx, [0x1402824d8]
test r9b, r9b
cmovne rdx, rcx
mov rcx, rax
call sym.core::fmt::Formatter::pad::hb8b9c353098ce8d9
mov rcx, rbx
test al, al
je 0x1400d2375
mov sil, 2
jmp 0x1400d21f0
mov qword [rcx], 0
mov byte [rcx + 8], dil
xor esi, esi
jmp 0x1400d21f0
cmp qword [rcx + 0x20], 0
je 0x1400d2380
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movaps xmmword [rbp - 0x10], xmm1
movaps xmmword [rbp - 0x20], xmm0
mov qword [rcx + 0x10], rax
mov dword [rcx + 0x18], edx
mov rsi, rcx
call sym.rustc_demangle::v0::Printer::print_path_maybe_open_generics::h005aced0d4c39a8c
movaps xmm0, xmmword [rbp - 0x20]
movaps xmm1, xmmword [rbp - 0x10]
movups xmmword [rsi], xmm0
movups xmmword [rsi + 0x10], xmm1
jmp 0x1400d21f2
inc rcx
mov qword [rdx + 0x10], rcx
jmp 0x1400d21f0