Function at 0x1400152d0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x48
mov rsi, rcx
mov r8, qword [rcx]
test r8, r8
je 0x1400153c8
mov r10, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
cmp rcx, r10
jae 0x1400153c8
movzx eax, byte [r8 + rcx]
cmp eax, 0x42
je 0x1400153e3
cmp eax, 0x49
jne 0x1400153c8
inc rcx
mov qword [rsi + 0x10], rcx
mov rcx, rsi
xor edx, edx
call sym._ZN14rustc_demangle2v07Printer10print_path17heccb5cbe2b01e121E.llvm.6233056155743818567
test al, al
jne 0x140015508
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x14001534c
lea rdx, [0x140093edb]
mov r8d, 1
call sym.core::fmt::Formatter::pad::he3e89bc34a65c9da
test al, al
jne 0x140015508
mov rax, qword [rsi]
mov dil, 1
test rax, rax
je 0x1400153d7
xor r14d, r14d
lea rbx, [0x140093a41]
nop word cs:[rax + rax]
mov rcx, qword [rsi + 0x10]
cmp rcx, qword [rsi + 8]
jae 0x140015389
test rax, rax
je 0x140015389
cmp byte [rax + rcx], 0x45
je 0x14001552a
sub r14, 1
jb 0x1400153ae
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x1400153ae
mov r8d, 2
mov rdx, rbx
call sym.core::fmt::Formatter::pad::he3e89bc34a65c9da
test al, al
jne 0x140015508
mov rcx, rsi
call sym.rustc_demangle::v0::Printer::print_generic_arg::h97937a49299c2f15
test al, al
jne 0x140015508
mov rax, qword [rsi]
test rax, rax
jne 0x140015370
jmp 0x1400153d7
mov rcx, rsi
xor edx, edx
call sym._ZN14rustc_demangle2v07Printer10print_path17heccb5cbe2b01e121E.llvm.6233056155743818567
mov edi, eax
add dil, dil
mov eax, edi
add rsp, 0x48
pop rbx
pop rdi
pop rsi
pop r14
ret
lea r11, [rcx + 1]
mov qword [rsi + 0x10], r11
cmp r11, r10
jae 0x140015403
cmp byte [r8 + r11], 0x5f
jne 0x140015403
lea rax, [rcx + 2]
mov qword [rsi + 0x10], rax
xor eax, eax
jmp 0x14001546e
xor eax, eax
mov edi, 0x3e
nop word [rax + rax]
mov r9b, 1
cmp r11, r10
jae 0x1400154cf
movzx edx, byte [r8 + r11]
cmp dl, 0x5f
je 0x140015462
lea ebx, [rdx - 0x30]
cmp bl, 0xa
jb 0x14001544c
lea ebx, [rdx - 0x61]
cmp bl, 0x1a
jae 0x14001543b
add dl, 0xa9
jmp 0x14001544a
lea ebx, [rdx - 0x41]
cmp bl, 0x1a
jae 0x1400154cf
add dl, 0xe3
mov ebx, edx
inc r11
mov qword [rsi + 0x10], r11
mul rdi
jo 0x1400154cf
movzx edx, bl
add rax, rdx
jae 0x140015410
jmp 0x1400154cf
inc r11
mov qword [rsi + 0x10], r11
inc rax
je 0x1400154cf
cmp rax, rcx
jae 0x1400154cc
mov ecx, dword [rsi + 0x18]
inc ecx
cmp ecx, 0x1f4
ja 0x140015522
cmp qword [rsi + 0x20], 0
je 0x14001551b
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movaps xmmword [rsp + 0x30], xmm1
movaps xmmword [rsp + 0x20], xmm0
mov qword [rsi + 0x10], rax
mov dword [rsi + 0x18], ecx
mov rcx, rsi
call sym.rustc_demangle::v0::Printer::print_path_maybe_open_generics::h74c27cf3ed676609
mov edi, eax
movaps xmm0, xmmword [rsp + 0x20]
movaps xmm1, xmmword [rsp + 0x30]
movups xmmword [rsi], xmm0
movups xmmword [rsi + 0x10], xmm1
cmp al, 2
jne 0x1400153d7
jmp 0x140015508
mov r9b, 1
xor edi, edi
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x140015510
mov eax, r9d
xor al, 1
movzx eax, al
lea r8, [rax + rax*8]
add r8, 0x10
lea rax, str.invalid_syntaxrecursion_limit_reached_for_______::closureshim_as__mut_const___dyn___Cunsafe_extern__
lea rdx, [0x140093a20]
test r9b, r9b
cmovne rdx, rax
call sym.core::fmt::Formatter::pad::he3e89bc34a65c9da
test al, al
je 0x140015510
mov dil, 2
jmp 0x1400153d7
mov qword [rsi], 0
mov byte [rsi + 8], dil
xor edi, edi
jmp 0x1400153d7
mov dil, 1
xor r9d, r9d
jmp 0x1400154d1
inc rcx
mov qword [rsi + 0x10], rcx
jmp 0x1400153d7