Function at 0x14019f50d
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x128
mov rdi, rdx
mov r13, rcx
mov rcx, rdx
call fcn.140197b69
cmp eax, 0x70
je 0x14019f544
mov rcx, rdi
call fcn.140197b69
cmp eax, 0x50
jne 0x14019ffea
mov r15, qword [rdi + 0x10]
cmp qword [r15 + 0x80], 0
jne 0x14019ffbc
mov qword [r15 + 0x80], 0xffffffffffffffff
mov qword [r15 + 0x98], 0
mov rcx, rdi
call fcn.140197b69
mov esi, eax
mov rcx, rdi
call fcn.14019b46d
test al, al
je 0x14019f71d
mov rcx, rdi
call fcn.140197b69
cmp eax, 0x7b
jne 0x14019f7c6
lea r14, [r15 + 0x88]
lea rbp, [rsp + 0x90]
mov rcx, rbp
mov rdx, rdi
call fcn.14019887c
mov rax, qword [rbp + 0x28]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [rbp + 0x18]
movaps xmmword [rsp + 0x40], xmm0
mov rcx, rdi
call fcn.14019b46d
test al, al
je 0x14019f859
mov rcx, rdi
call fcn.140197b69
cmp eax, 0x7d
je 0x14019f859
mov rcx, rdi
call fcn.140197b69
mov ebx, eax
cmp eax, 0x80
jae 0x14019f627
mov rdx, qword [r15 + 0x98]
cmp rdx, qword [r15 + 0x88]
jne 0x14019f614
mov rcx, r14
call fcn.1402363d0
mov rdx, qword [r15 + 0x98]
mov rax, qword [r15 + 0x90]
mov byte [rax + rdx], bl
inc qword [r15 + 0x98]
jmp 0x14019f5c3
mov dword [rsp + 0x90], 0
mov eax, ebx
cmp ebx, 0x800
jae 0x14019f65c
shr eax, 6
or al, 0xc0
mov byte [rsp + 0x90], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x91], bl
mov ebx, 2
jmp 0x14019f6d2
cmp ebx, 0x10000
jae 0x14019f694
shr eax, 0xc
or al, 0xe0
mov byte [rsp + 0x90], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x91], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x92], bl
mov ebx, 3
jmp 0x14019f6d2
shr eax, 0x12
or al, 0xf0
mov byte [rsp + 0x90], al
mov eax, ebx
shr eax, 0xc
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x91], al
mov eax, ebx
shr eax, 6
and al, 0x3f
or al, 0x80
mov byte [rsp + 0x92], al
and bl, 0x3f
or bl, 0x80
mov byte [rsp + 0x93], bl
mov ebx, 4
mov rax, qword [r15 + 0x88]
mov rdx, qword [r15 + 0x98]
sub rax, rdx
cmp rax, rbx
jb 0x14019f709
add rdx, qword [r15 + 0x90]
mov rcx, rdx
mov rdx, rbp
mov r8, rbx
call fcn.1403abad0
add qword [r15 + 0x98], rbx
jmp 0x14019f5c3
mov rcx, r14
mov r8, rbx
call fcn.1403b89f8
mov rdx, qword [r15 + 0x98]
jmp 0x14019f6e8
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0xb8], rax
movups xmm0, xmmword [r15 + 0xa0]
movups xmmword [rsp + 0xa8], xmm0
movups xmm0, xmmword [r15 + 0xa0]
movaps xmmword [rsp + 0x90], xmm0
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0xa0], rax
mov rbx, qword [rdi]
mov rdi, qword [rdi + 8]
mov rcx, rdi
call fcn.140236205
mov rbp, rax
mov rsi, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, rdi
call fcn.1403abad0
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0xb0]
movups xmmword [r13 + 8], xmm0
movups xmmword [r13 + 0x18], xmm1
movups xmmword [r13 + 0x28], xmm2
mov qword [r13 + 0x38], rbp
mov qword [r13 + 0x40], rsi
mov qword [r13 + 0x48], rdi
mov dword [r13 + 0x50], 0xa
mov qword [r13], 1
jmp 0x14019ff71
mov rax, qword [r15 + 0xb0]
mov qword [rsp + 0x50], rax
movups xmm0, xmmword [r15 + 0xa0]
movaps xmmword [rsp + 0x40], xmm0
mov rcx, rdi
call fcn.140197b69
cmp eax, 0x5c
jne 0x14019f8f6
lea rsi, [rsp + 0x90]
mov rcx, rsi
mov rdx, rdi
call fcn.14019887c
mov rbx, qword [rdi]
mov rdi, qword [rdi + 8]
mov rcx, rdi
call fcn.140236205
mov r14, rax
mov rbp, rdx
mov rcx, rdx
mov rdx, rbx
mov r8, rdi
call fcn.1403abad0
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmm2, xmmword [rsi + 0x20]
movups xmmword [r13 + 8], xmm0
movups xmmword [r13 + 0x18], xmm1
movups xmmword [r13 + 0x28], xmm2
mov qword [r13 + 0x38], r14
mov qword [r13 + 0x40], rbp
mov qword [r13 + 0x48], rdi
mov dword [r13 + 0x50], 0x1f
jmp 0x14019f7b9
mov rbx, qword [r15 + 0xa0]
cmp rbx, qword [rdi + 8]
jne 0x14019f922
lea rax, [r15 + 0xa0]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xb8], rcx
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xa8], xmm0
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x90], xmm0
mov rax, qword [rax + 0x10]
mov qword [rsp + 0xa0], rax
mov rsi, qword [rdi]
mov rcx, rbx
call fcn.140236205
mov rdi, rax
mov rbp, rdx
mov rcx, rdx
mov rdx, rsi
mov r8, rbx
call fcn.1403abad0
movaps xmm0, xmmword [rsp + 0x90]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0xb0]
movups xmmword [r13 + 8], xmm0
movups xmmword [r13 + 0x18], xmm1
movups xmmword [r13 + 0x28], xmm2
mov qword [r13 + 0x38], rdi
mov qword [r13 + 0x40], rbp
mov qword [r13 + 0x48], rbx
jmp 0x14019f7b1
mov ebp, eax
mov dword [rsp + 0x3c], esi
mov rcx, rdi
call fcn.14019b46d
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
xor eax, eax
mov rdx, r15
jmp 0x14019ff11
mov rcx, rdi
call fcn.140197b69
mov dword [rsp + 0x8c], eax
cmp eax, 0x7d
jne 0x1401a0004
mov dword [rsp + 0x3c], esi
mov rcx, rdi
call fcn.140198955
mov rsi, qword [r15 + 0x90]
mov r14, qword [r15 + 0x98]
mov qword [rsp + 0x20], 2
lea r9, [0x14045c680]
lea rbx, [rsp + 0x90]
mov rcx, rbx
mov rdx, rsi
mov r8, r14
call fcn.140061d70
cmp qword [rbx + 0x20], 0
je 0x14019fb42
mov qword [rsp + 0x100], r14
mov r11, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xd8]
lea rcx, [rdx + r12]
dec rcx
cmp rcx, r11
jae 0x14019fc36
mov r8, qword [rsp + 0xe8]
mov r10, qword [rsp + 0x90]
mov r9, qword [rsp + 0xa0]
lea rax, [rdx - 1]
mov qword [rsp + 0x120], rax
mov rbx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xc8]
mov r14, rsi
mov rsi, rdx
mov qword [rsp + 0x110], rbp
sub rsi, rbp
mov qword [rsp + 0x108], rsi
mov rsi, r14
mov qword [rsp + 0x30], rax
neg rax
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x80], rbx
movzx ecx, byte [r10 + rcx]
bt rbx, rcx
jae 0x14019fa9f
mov r14, rsi
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
cmp rax, rcx
cmova rcx, rax
cmp r8, 0xffffffffffffffff
cmove rcx, rax
lea rbp, [r10 + r12]
mov rsi, rcx
cmp rsi, rdx
jae 0x14019faac
lea rbx, [r12 + rsi]
cmp rbx, r11
jae 0x14019ff8c
lea rbx, [rsi + 1]
mov al, byte [r9 + rsi]
cmp al, byte [rbp + rsi]
mov rsi, rbx
je 0x14019fa58
add r12, qword [rsp + 0x118]
add r12, rbx
cmp r8, 0xffffffffffffffff
je 0x14019fb35
xor ecx, ecx
mov rsi, r14
mov rbx, qword [rsp + 0x80]
jmp 0x14019fb16
add r12, rdx
cmp r8, 0xffffffffffffffff
je 0x14019fb1b
xor ecx, ecx
jmp 0x14019fb16
mov rbx, r8
cmp r8, 0xffffffffffffffff
mov r8, qword [rsp + 0x28]
mov eax, 0
cmove r8, rax
mov rcx, qword [rsp + 0x30]
mov rsi, r14
cmp r8, rcx
jae 0x14019fcd8
dec rcx
cmp rcx, rdx
jae 0x14019ff9f
lea rbp, [rcx + r12]
cmp rbp, r11
jae 0x14019ffa8
mov al, byte [r9 + rcx]
cmp al, byte [r10 + rbp]
je 0x14019fac9
add r12, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x108]
mov r8, rbx
cmp rbx, 0xffffffffffffffff
mov rbx, qword [rsp + 0x80]
je 0x14019fb1b
mov qword [rsp + 0x28], rcx
mov rax, qword [rsp + 0x120]
lea rcx, [rax + r12]
cmp rcx, r11
jb 0x14019fa2a
jmp 0x14019fc36
mov rsi, r14
mov rbx, qword [rsp + 0x80]
jmp 0x14019fb1b
cmp byte [rsp + 0xca], 0
jne 0x14019fc3e
mov rcx, qword [rsp + 0x90]
mov r12, qword [rsp + 0x98]
mov r8, qword [rsp + 0xb8]
mov al, byte [rsp + 0xc8]
test r8, r8
je 0x14019fb8b
cmp r12, r8
jbe 0x14019fb85
cmp byte [rcx + r8], 0xbf
jg 0x14019fb8b
jmp 0x1401a0031
jne 0x1401a0031
cmp r8, r12
je 0x14019febf
mov bl, byte [rcx + r8]
movzx edx, bl
test dl, dl
jns 0x14019fbf3
mov r9, rsi
mov ebp, edx
and ebp, 0x1f
movzx esi, byte [rcx + r8 + 1]
and esi, 0x3f
cmp dl, 0xdf
jbe 0x14019fbe2
movzx edx, byte [rcx + r8 + 2]
shl esi, 6
and edx, 0x3f
or edx, esi
cmp bl, 0xf0
jb 0x14019fbeb
movzx ebx, byte [rcx + r8 + 3]
and ebp, 7
shl ebp, 0x12
shl edx, 6
and ebx, 0x3f
or ebx, edx
or ebx, ebp
mov edx, ebx
jmp 0x14019fbf0
shl ebp, 6
or ebp, esi
mov edx, ebp
jmp 0x14019fbf0
shl ebp, 0xc
or edx, ebp
mov rsi, r9
test al, al
jne 0x14019fecc
cmp edx, 0x110000
je 0x14019fc3e
mov eax, 1
cmp edx, 0x80
jb 0x14019fc2c
mov eax, 2
cmp edx, 0x800
jb 0x14019fc2c
cmp edx, 0x10000
mov eax, 4
sbb rax, 0
add r8, rax
mov al, 1
jmp 0x14019fb6f
mov r14, qword [rsp + 0x100]
mov rcx, rsi
mov rdx, r14
mov r8d, 0x3a
call fcn.1401a06b8
cmp rax, 1
jne 0x14019fc81
mov rbp, rdx
mov r12, rdx
test rdx, rdx
je 0x14019fde8
cmp rbp, r14
jae 0x14019fde2
cmp byte [rsi + r12], 0xbf
jg 0x14019fde8
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
jmp 0x14019fcf8
mov rcx, rsi
mov rdx, r14
mov r8d, 0x3d
call fcn.1401a06b8
cmp rax, 1
jne 0x14019fd0b
mov rbp, rdx
mov r12, rdx
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
test rdx, rdx
je 0x14019fe72
cmp rbp, r14
jae 0x14019fe6c
cmp byte [rsi + r12], 0xbf
jg 0x14019fe72
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
jmp 0x14019fcf8
mov r14, qword [rsp + 0x100]
test r12, r12
je 0x14019fd4e
cmp r12, r14
jae 0x14019fd4c
cmp byte [rsi + r12], 0xbf
jg 0x14019fd4e
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r14
xor r8d, r8d
jmp 0x1401a0040
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
mov rcx, r14
call fcn.140236205
mov qword [rsp + 0x28], rax
mov rcx, rdx
mov qword [rsp + 0x30], rdx
mov rdx, rsi
mov r8, r14
call fcn.1403abad0
mov al, 1
xor r8d, r8d
mov r12, r14
jmp 0x14019ff03
jne 0x14019fcf1
mov rcx, r12
call fcn.140236205
mov qword [rsp + 0x28], rax
mov rcx, rdx
mov qword [rsp + 0x30], rdx
mov rdx, rsi
mov r8, r12
call fcn.1403abad0
mov r8, r12
add r8, 2
je 0x14019fd9c
cmp r14, r8
jbe 0x14019fd9a
cmp byte [rsi + r8], 0xbf
jg 0x14019fd9c
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r14
jmp 0x14019feb7
jne 0x14019fd83
add rsi, r8
sub r14, r8
mov rcx, r14
call fcn.140236205
mov rbx, rax
mov r8, r14
mov r14, rdx
mov rcx, rdx
mov rdx, rsi
mov rsi, r8
call fcn.1403abad0
mov r9, rbx
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
mov al, 2
mov r8b, 2
jmp 0x14019ff03
jne 0x14019fc78
mov rcx, r12
call fcn.140236205
mov qword [rsp + 0x28], rax
mov rcx, rdx
mov qword [rsp + 0x30], rdx
mov rdx, rsi
mov r8, r12
call fcn.1403abad0
inc rbp
je 0x14019fe26
cmp r14, rbp
jbe 0x14019fe24
cmp byte [rsi + rbp], 0xbf
jg 0x14019fe26
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
jmp 0x14019fea9
jne 0x14019fe18
add rsi, rbp
sub r14, rbp
mov rcx, r14
call fcn.140236205
mov rbx, rax
mov r8, r14
mov r14, rdx
mov rcx, rdx
mov rdx, rsi
mov rsi, r8
call fcn.1403abad0
mov r9, rbx
movaps xmm0, xmmword [rsp + 0x40]
movaps xmmword [rsp + 0x60], xmm0
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x70], rax
mov r8b, 1
mov al, 2
jmp 0x14019ff03
jne 0x14019fccf
mov rcx, r12
call fcn.140236205
mov qword [rsp + 0x28], rax
mov rcx, rdx
mov qword [rsp + 0x30], rdx
mov rdx, rsi
mov r8, r12
call fcn.1403abad0
inc rbp
je 0x14019fed6
cmp r14, rbp
jbe 0x14019fed4
cmp byte [rsi + rbp], 0xbf
jg 0x14019fed6
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
mov qword [rsp + 0x20], rax
mov rcx, rsi
mov rdx, r14
mov r8, rbp
mov r9, r14
jmp 0x1401a0043
test al, al
jne 0x14019fce0
jmp 0x14019fc3e
mov r12, r8
jmp 0x14019fce0
jne 0x14019fea2
add rsi, rbp
sub r14, rbp
mov rcx, r14
call fcn.140236205
mov rbx, rax
mov r8, r14
mov r14, rdx
mov rcx, rdx
mov rdx, rsi
mov rsi, r8
call fcn.1403abad0
mov r9, rbx
mov al, 2
xor r8d, r8d
mov rdx, qword [rdi + 0x10]
mov rbx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
cmp dword [rsp + 0x3c], 0x50
mov rdi, qword [rsp + 0x70]
mov qword [r13 + 0x18], rdi
movaps xmm0, xmmword [rsp + 0x60]
movups xmmword [r13 + 8], xmm0
mov rdi, qword [rdx + 0xb0]
mov qword [r13 + 0x30], rdi
movups xmm0, xmmword [rdx + 0xa0]
movups xmmword [r13 + 0x20], xmm0
mov byte [r13 + 0x38], al
mov byte [r13 + 0x39], r8b
mov dword [r13 + 0x3c], ebp
mov qword [r13 + 0x40], rbx
mov qword [r13 + 0x48], rcx
mov qword [r13 + 0x50], r12
mov qword [r13 + 0x58], r9
mov qword [r13 + 0x60], r14
mov qword [r13 + 0x68], rsi
sete byte [r13 + 0x70]
mov qword [r13], 0
inc qword [r15 + 0x80]
add rsp, 0x128
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add rcx, r12
cmp r11, rcx
cmova rcx, r11
lea r8, str._rustc_d5a82bbd26e1ad8b7401f6a718a9c57c96905483librarycore_src_strpattern.rs
jmp 0x14019ffb2
lea r8, str._rustc_d5a82bbd26e1ad8b7401f6a718a9c57c96905483librarycore_src_strpattern.rs
jmp 0x14019ffb5
lea r8, str._rustc_d5a82bbd26e1ad8b7401f6a718a9c57c96905483librarycore_src_strpattern.rs
mov rcx, rbp
mov rdx, r11
call fcn.1403af8b0
ud2
lea rax, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
mov qword [rsp + 0x20], rax
lea rcx, str.already_borrowed
lea r9, [0x14045bc30]
lea r8, [rsp + 0x90]
mov edx, 0x10
call fcn.1403afcb0
ud2
lea rcx, [0x14045c5fa]
lea r8, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
mov edx, 0x3e
call fcn.1403af950
ud2
lea r8, [rsp + 0x90]
mov qword [r8 + 0x10], 0
lea rdx, [0x14045c488]
lea r9, str.C:Usersuser1.cargo_registry_srcgithub.com_1ecc6299db9ec823_regex_syntax_0.8.2_src_astparse.rs
lea rcx, [rsp + 0x8c]
call fcn.1403b63f3
ud2
lea rax, str._rustc_d5a82bbd26e1ad8b7401f6a718a9c57c96905483librarycore_src_strpattern.rs
mov qword [rsp + 0x20], rax
mov rdx, r12
mov r9, r12
call fcn.1403afdc0
ud2