Function at 0x140219060
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
mov r14, rdx
mov rdi, rcx
mov rcx, rdx
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
cmp eax, 0x70
je 0x140219097
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
cmp eax, 0x50
jne 0x140219ea6
mov r15, qword [r14]
cmp qword [r15 + 0x80], 0
jne 0x140219e87
mov qword [r15 + 0x80], 0xffffffffffffffff
mov qword [r15 + 0x98], 0
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
mov dword [rsp + 0xd8], eax
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump::h5ab731afecfcb9f3
test al, al
je 0x1402191bc
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump_space::hd411f22686eb08bd
mov rsi, qword [r14 + 0x10]
cmp qword [r15 + 0xa0], rsi
je 0x1402191c0
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
lea rcx, [r15 + 0xa0]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rcx]
mov qword [rsp + 0x40], rcx
cmp eax, 0x7b
jne 0x1402193a3
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
mov ecx, 1
cmp eax, 0x80
jb 0x140219149
mov ecx, 2
cmp eax, 0x800
jb 0x140219149
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
mov rax, qword [rsp + 0x40]
add rax, rcx
jb 0x140219ebe
mov qword [rsp + 0x40], rax
mov rax, qword [r15 + 0xb0]
inc rax
mov qword [rsp + 0x48], rax
je 0x140219ec7
mov rax, qword [r15 + 0xa8]
mov qword [rsp + 0xd0], rax
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
lea rbx, [r15 + 0x88]
xor ecx, ecx
cmp eax, 0xa
sete cl
mov eax, 1
mov rdx, qword [rsp + 0x48]
cmove rdx, rax
mov qword [rsp + 0x48], rdx
add qword [rsp + 0xd0], rcx
lea r12, [rsp + 0x50]
jmp 0x140219266
mov rsi, qword [r14 + 0x10]
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0x78], rax
movups xmm0, xmmword [r15 + 0xa0]
movups xmmword [rsp + 0x68], xmm0
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [r15 + 0xa0]
movaps xmmword [rsp + 0x50], xmm0
mov rbx, qword [r14 + 8]
test rsi, rsi
je 0x14021953b
js 0x140219e93
mov rax, qword [0x14050df18]
movzx eax, byte [rax]
mov r12d, 1
mov edx, 1
mov rcx, rsi
call sym.__rust_alloc
test rax, rax
je 0x140219e96
mov r14, rax
jmp 0x140219541
mov rbp, qword [r15 + 0x98]
mov rcx, qword [r15 + 0x90]
add rcx, rbp
mov rdx, r12
mov r8, r13
call sym.memcpy
add rbp, r13
mov qword [r15 + 0x98], rbp
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump::h5ab731afecfcb9f3
test al, al
je 0x1402194fe
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump_space::hd411f22686eb08bd
mov rax, qword [rsp + 0x38]
cmp qword [rax], rsi
je 0x1402194fe
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
cmp eax, 0x7d
je 0x1402194fe
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
mov ebp, eax
cmp eax, 0x80
jae 0x1402192e0
mov r13, qword [r15 + 0x98]
cmp r13, qword [r15 + 0x88]
jne 0x1402192c6
mov rcx, rbx
call sym.alloc::raw_vec::RawVec_T_A_::grow_one::h59bd08bbe1ee9cba
mov rax, qword [r15 + 0x90]
mov byte [rax + r13], bpl
inc r13
mov qword [r15 + 0x98], r13
jmp 0x140219266
mov dword [rsp + 0x50], 0
mov eax, ebp
cmp ebp, 0x800
jae 0x140219310
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x50], al
mov r13d, 2
mov eax, 1
jmp 0x140219369
cmp ebp, 0x10000
jae 0x14021933b
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x50], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x51], al
mov r13d, 3
mov eax, 2
jmp 0x140219369
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x50], al
mov eax, ebp
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x51], al
mov eax, ebp
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x52], al
mov r13d, 4
mov eax, 3
and bpl, 0x3f
or bpl, 0x80
mov byte [rsp + rax + 0x50], bpl
mov rax, qword [r15 + 0x88]
mov rbp, qword [r15 + 0x98]
sub rax, rbp
cmp rax, r13
jae 0x140219247
mov rcx, rbx
mov rdx, rbp
mov r8, r13
call sym.alloc::raw_vec::RawVec_T_A_::reserve::do_reserve_and_handle::h4eebade093d755f2
jmp 0x140219240
mov rax, qword [r15 + 0xa8]
mov qword [rsp + 0xd0], rax
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0x48], rax
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
mov r13d, eax
cmp eax, 0x5c
jne 0x140219597
mov rax, qword [rsp + 0x38]
mov r12, qword [rax]
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
mov ecx, 1
cmp eax, 0x80
jb 0x140219408
mov ecx, 2
cmp eax, 0x800
jb 0x140219408
cmp eax, 0x10000
mov ecx, 4
sbb rcx, 0
add r12, rcx
jb 0x140219ebe
mov rbp, qword [r15 + 0xb0]
inc rbp
je 0x140219ec7
mov rax, qword [r15 + 0xa8]
mov qword [rsp + 0xd8], rax
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
xor r13d, r13d
cmp eax, 0xa
sete r8b
mov ebx, 1
cmove rbp, rbx
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x50], xmm0
mov rdx, qword [r14 + 8]
test rsi, rsi
je 0x1402194b3
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], r12
js 0x140219e93
mov r14d, r8d
mov rax, qword [0x14050df18]
movzx eax, byte [rax]
mov r12d, 1
mov edx, 1
mov rcx, rsi
call sym.__rust_alloc
test rax, rax
je 0x140219e96
mov rbx, rax
mov r12, qword [rsp + 0x38]
mov r8d, r14d
mov rdx, qword [rsp + 0x40]
mov r13b, r8b
mov r14, qword [rsp + 0xd8]
add r14, r13
mov rcx, rbx
mov r8, rsi
call sym.memcpy
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [rdi + 0x50], xmm0
mov rax, qword [rsp + 0x60]
mov qword [rdi + 0x60], rax
mov qword [rdi], rsi
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rsi
mov dword [rdi + 0x18], 0x1f
mov qword [rdi + 0x68], r12
mov qword [rdi + 0x70], r14
mov qword [rdi + 0x78], rbp
jmp 0x14021957c
mov rcx, qword [rsp + 0x38]
cmp qword [rcx], rsi
jne 0x1402195ba
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x78], rax
movups xmm0, xmmword [rcx]
movups xmmword [rsp + 0x68], xmm0
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x60], rax
movups xmm0, xmmword [rcx]
movaps xmmword [rsp + 0x50], xmm0
mov rbx, qword [r14 + 8]
test rsi, rsi
jne 0x1402191ff
mov r14d, 1
mov rcx, r14
mov rdx, rbx
mov r8, rsi
call sym.memcpy
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmm2, xmmword [rsp + 0x70]
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm1
movups xmmword [rdi + 0x70], xmm2
mov qword [rdi], rsi
mov qword [rdi + 8], r14
mov qword [rdi + 0x10], rsi
mov dword [rdi + 0x18], 0xa
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump::h5ab731afecfcb9f3
movabs rbx, 0x8000000000000000
test al, al
je 0x1402195b5
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump_space::hd411f22686eb08bd
jmp 0x140219ca5
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::char::h9869448dc5afa22f
mov dword [rsp + 0xe4], eax
cmp eax, 0x7d
jne 0x140219ed5
mov rcx, r14
call sym.regex_syntax::ast::parse::ParserI_P_::bump::h5ab731afecfcb9f3
mov rbx, qword [r15 + 0x90]
mov r14, qword [r15 + 0x98]
mov qword [rsp + 0x20], 2
lea r9, [0x14047b598]
lea rcx, [rsp + 0x50]
mov rdx, rbx
mov r8, r14
call sym.core::str::pattern::StrSearcher::new::hbcaf30e36deef7a4
cmp qword [rsp + 0x50], 0
mov qword [rsp + 0xc8], rdi
je 0x140219757
mov r12, qword [rsp + 0x88]
mov r9, qword [rsp + 0x98]
mov rax, qword [rsp + 0xb0]
lea rcx, [rax - 1]
mov rdx, qword [rsp + 0xa0]
mov r11, qword [rsp + 0xa8]
cmp r12, 0xffffffffffffffff
mov qword [rsp + 0x28], rcx
je 0x1402197aa
mov rsi, qword [rsp + 0x78]
add rcx, rsi
cmp rcx, rdx
jae 0x140219a5d
mov r8, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x58]
mov r10, qword [rsp + 0x68]
mov rdi, rax
mov qword [rsp + 0xc0], r10
sub rdi, r10
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0x30], r8
jmp 0x1402196ab
add rsi, rax
xor r12d, r12d
mov rcx, qword [rsp + 0x28]
add rcx, rsi
cmp rcx, rdx
jae 0x140219a5d
movzx ecx, byte [r9 + rcx]
bt r8, rcx
jae 0x140219694
cmp rbp, r12
mov rdi, r12
cmova rdi, rbp
lea r8, [r9 + rsi]
mov rcx, rdi
nop word [rax + rax]
cmp rcx, rax
jae 0x140219704
lea r10, [rsi + rcx]
cmp r10, rdx
jae 0x140219d92
lea r10, [rcx + 1]
movzx r13d, byte [r11 + rcx]
cmp r13b, byte [r8 + rcx]
mov rcx, r10
je 0x1402196d0
sub rsi, rbp
add rsi, r10
xor r12d, r12d
mov r8, qword [rsp + 0x30]
jmp 0x14021969a
mov rdi, rbp
nop word [rax + rax]
cmp r12, rdi
jae 0x14021992c
dec rdi
cmp rdi, rax
jae 0x140219dce
lea rcx, [rdi + rsi]
cmp rcx, rdx
jae 0x140219ddd
movzx r8d, byte [r11 + rdi]
cmp r8b, byte [r9 + rcx]
je 0x140219710
add rsi, qword [rsp + 0xc0]
mov r12, qword [rsp + 0xb8]
mov r8, qword [rsp + 0x30]
jmp 0x14021969a
cmp byte [rsp + 0x6a], 0
jne 0x140219a5d
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xa0]
movzx edx, byte [rsp + 0x68]
test rax, rax
je 0x1402198a4
lea r9, [0x14047ab68]
cmp rax, rsi
jae 0x14021989e
cmp byte [rcx + rax], 0xc0
jge 0x1402198a4
mov r14, rsi
mov r8, rax
jmp 0x140219949
mov rsi, qword [rsp + 0x78]
lea r8, [rsi + rcx]
cmp r8, rdx
jae 0x140219a5d
mov r10, qword [rsp + 0x70]
mov r13, qword [rsp + 0x58]
lea rdi, [r13 - 1]
cmp rdi, rax
mov qword [rsp + 0x30], r10
jae 0x140219dee
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xb8], rcx
lea rcx, [r11 + rdi]
mov qword [rsp + 0xc0], rcx
jmp 0x140219808
add rsi, rax
mov rcx, qword [rsp + 0x28]
lea r8, [rsi + rcx]
cmp r8, rdx
jae 0x140219a5d
movzx ecx, byte [r9 + r8]
bt r10, rcx
jae 0x1402197f3
mov r8, rsi
neg r8
lea rbp, [r9 + rsi]
mov r12, r13
cmp rax, r12
je 0x140219856
lea rcx, [rsi + r12]
cmp rcx, rdx
jae 0x140219e51
movzx ecx, byte [r11 + r12]
lea r10, [r12 + 1]
dec r8
cmp cl, byte [rbp + r12]
mov r12, r10
je 0x140219820
neg r8
mov rsi, r8
mov r10, qword [rsp + 0x30]
jmp 0x1402197f6
lea r8, [rdi + rsi]
mov rbp, qword [rsp + 0xc0]
mov r12, r13
sub r12, 1
jb 0x14021992c
cmp r8, rdx
jae 0x140219de2
movzx ecx, byte [rbp]
dec rbp
lea r10, [r8 - 1]
cmp cl, byte [r9 + r8]
mov r8, r10
je 0x140219865
add rsi, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x30]
jmp 0x1402197f6
jne 0x14021979f
cmp rax, rsi
jne 0x1402198b5
mov rsi, rax
test dl, dl
jne 0x14021992c
jmp 0x140219a5d
movzx r9d, byte [rcx + rax]
test r9b, r9b
jns 0x140219921
mov r8d, r9d
and r8d, 0x1f
movzx r11d, byte [rcx + rax + 1]
and r11d, 0x3f
cmp r9b, 0xe0
jb 0x14021990b
movzx r10d, byte [rcx + rax + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp r9b, 0xf0
jb 0x140219917
movzx r9d, byte [rcx + rax + 3]
and r8d, 7
shl r8d, 0x12
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
or r9d, r8d
jmp 0x140219921
shl r8d, 6
or r8d, r11d
mov r9d, r8d
jmp 0x140219921
shl r8d, 0xc
or r10d, r8d
mov r9d, r10d
test dl, dl
je 0x140219a50
mov rsi, rax
cmp r9d, 0x110000
jne 0x140219d43
mov r8d, 1
cmp r9d, 0x80
jb 0x140219d72
mov r8d, 2
cmp r9d, 0x800
jb 0x140219d72
cmp r9d, 0x10000
add rdi, rsi
cmp rdx, rdi
cmova rdi, rdx
lea r8, [0x14047aaf8]
jmp 0x140219e65
mov rdx, rax
lea r8, [0x14047aac8]
jmp 0x140219e65
mov rdi, rcx
jmp 0x140219de5
mov rdi, r8
lea r8, [0x14047aae0]
jmp 0x140219e65
lea rbp, [r9 + r13]
lea rcx, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_regex_syntax_0.8.3_src_ast_parse.rs
call sym.core::cell::panic_already_borrowed::h84c134fe425e0ec9
lea rcx, str.assertion_failed:_self.char____p__self.char____P
lea r8, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_regex_syntax_0.8.3_src_ast_parse.rs
mov edx, 0x3a
call sym.core::panicking::panic::h2104b77c7bdaa98f
lea rcx, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_regex_syntax_0.8.3_src_ast_parse.rs
jmp 0x140219ece
lea rcx, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_regex_syntax_0.8.3_src_ast_parse.rs
call sym.core::option::unwrap_failed::h511674c62460528b
jmp 0x140219f50
mov qword [rsp + 0x50], 0
lea rax, str._root_.cargo_registry_src_index.crates.io_6f17d22bba15001f_regex_syntax_0.8.3_src_ast_parse.rs
mov qword [rsp + 0x20], rax
lea r8, [0x14047b408]
lea rdx, [rsp + 0xe4]
lea r9, [rsp + 0x50]
xor ecx, ecx
call sym.core::panicking::assert_failed::hc47370799f09da5c
jmp 0x140219f50