Function at 0x140083970
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rcx
mov rax, qword [rcx]
mov rcx, qword [rcx + 8]
sub rcx, rax
je 0x140083a81
cmp rcx, 2
jb 0x140083a81
cmp byte [rax], 0x64
jne 0x140083a81
movsx ecx, byte [rax + 1]
cmp ecx, 0x58
je 0x140083a94
cmp ecx, 0x78
je 0x140083b68
cmp ecx, 0x69
jne 0x140083a81
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseSourceName
test rax, rax
je 0x140083c22
mov rdi, rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseBracedExpr
test rax, rax
je 0x140083c22
mov rbx, rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x140083a33
mov ecx, 0x1000
call sym.malloc
test rax, rax
je 0x140083c30
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x30]
mov qword [r14 + 8], rax
lea rax, [r14 + rcx]
add rax, 0x10
mov byte [r14 + rcx + 0x18], 0x4d
and byte [r14 + rcx + 0x1c], 0xc0
movzx edx, byte [r14 + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [r14 + rcx + 0x20], dl
lea rdx, sym._anonymous_namespace_::itanium_demangle::Node::hasRHSComponentSlow__anonymous_namespace_::itanium_demangle::OutputBuffer__const
mov qword [r14 + rcx + 0x10], rdx
mov qword [r14 + rcx + 0x28], rdi
mov qword [r14 + rcx + 0x30], rbx
mov byte [r14 + rcx + 0x38], 0
jmp 0x140083c24
mov rcx, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
jmp sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseExpr__
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseExpr__
test rax, rax
je 0x140083c22
mov rdi, rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseExpr__
test rax, rax
je 0x140083c22
mov rbx, rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseBracedExpr
test rax, rax
je 0x140083c22
mov r14, rax
mov r15, qword [rsi + 0x1330]
mov rcx, qword [r15 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x140083b1b
mov ecx, 0x1000
call sym.malloc
test rax, rax
je 0x140083c30
mov qword [rax], r15
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r15, rax
lea rax, [rcx + 0x30]
mov qword [r15 + 8], rax
lea rax, [r15 + rcx]
add rax, 0x10
mov byte [r15 + rcx + 0x18], 0x4e
and byte [r15 + rcx + 0x1c], 0xc0
movzx edx, byte [r15 + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [r15 + rcx + 0x20], dl
lea rdx, sym._anonymous_namespace_::itanium_demangle::Node::hasRHSComponentSlow__anonymous_namespace_::itanium_demangle::OutputBuffer__const
mov qword [r15 + rcx + 0x10], rdx
mov qword [r15 + rcx + 0x28], rdi
mov qword [r15 + rcx + 0x30], rbx
mov qword [r15 + rcx + 0x38], r14
jmp 0x140083c24
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseExpr__
test rax, rax
je 0x140083c22
mov rdi, rax
mov rcx, rsi
call sym._anonymous_namespace_::itanium_demangle::AbstractManglingParser__anonymous_namespace_::itanium_demangle::ManglingParser__anonymous_namespace_::DefaultAllocator____anonymous_namespace_::DefaultAllocator_::parseBracedExpr
test rax, rax
je 0x140083c22
mov rbx, rax
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x140083bd7
mov ecx, 0x1000
call sym.malloc
test rax, rax
je 0x140083c30
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x30]
mov qword [r14 + 8], rax
lea rax, [r14 + rcx]
add rax, 0x10
mov byte [r14 + rcx + 0x18], 0x4d
and byte [r14 + rcx + 0x1c], 0xc0
movzx edx, byte [r14 + rcx + 0x20]
and dl, 0xc0
or dl, 0x15
mov byte [r14 + rcx + 0x20], dl
lea rdx, sym._anonymous_namespace_::itanium_demangle::Node::hasRHSComponentSlow__anonymous_namespace_::itanium_demangle::OutputBuffer__const
mov qword [r14 + rcx + 0x10], rdx
mov qword [r14 + rcx + 0x28], rdi
mov qword [r14 + rcx + 0x30], rbx
mov byte [r14 + rcx + 0x38], 1
jmp 0x140083c24
xor eax, eax
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
call method.std.terminate__
int3