Function at 0x14002e4aa
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov r11, rdx
mov r10, qword [rsp + 0x80]
movsx rax, r8b
lea rdx, [0x140178b30]
mov rbx, qword [rdx + rax*8]
xor edi, edi
mov rdx, r11
mov esi, 0
sub rdx, 0x1a
cmovb rdx, rdi
jbe 0x14002e79c
mov eax, 0x20
xor edi, edi
mov rsi, rax
lea rax, [rdi + 0x1a]
cmp rax, r11
ja 0x14002e9d4
test rsi, rsi
je 0x14002e9e0
cmp rsi, r10
ja 0x14002e9f2
mov rax, qword [rcx + rdi]
bswap rax
mov r14, rax
shr r14, 0x3a
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x20], bpl
mov r14, rax
shr r14, 0x34
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x1f], bpl
mov r14, rax
shr r14, 0x2e
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x1e], bpl
mov r14, rax
shr r14, 0x28
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x1d], bpl
mov r14, rax
shr r14, 0x22
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x1c], bpl
mov r14, rax
shr r14, 0x1c
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x1b], bpl
mov r14d, eax
shr r14d, 0x16
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x1a], bpl
shr eax, 0x10
and eax, 0x3f
mov bpl, byte [rbx + rax]
mov rax, qword [rcx + rdi + 6]
bswap rax
mov byte [r9 + rsi - 0x19], bpl
mov r14, rax
shr r14, 0x3a
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x18], bpl
mov r14, rax
shr r14, 0x34
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x17], bpl
mov r14, rax
shr r14, 0x2e
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x16], bpl
mov r14, rax
shr r14, 0x28
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x15], bpl
mov r14, rax
shr r14, 0x22
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x14], bpl
mov r14, rax
shr r14, 0x1c
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x13], bpl
mov r14d, eax
shr r14d, 0x16
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x12], bpl
shr eax, 0x10
and eax, 0x3f
mov al, byte [rbx + rax]
mov byte [r9 + rsi - 0x11], al
mov rax, qword [rcx + rdi + 0xc]
bswap rax
mov r14, rax
shr r14, 0x3a
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0x10], bpl
mov r14, rax
shr r14, 0x34
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0xf], bpl
mov r14, rax
shr r14, 0x2e
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0xe], bpl
mov r14, rax
shr r14, 0x28
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0xd], bpl
mov r14, rax
shr r14, 0x22
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0xc], bpl
mov r14, rax
shr r14, 0x1c
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0xb], bpl
mov r14d, eax
shr r14d, 0x16
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 0xa], bpl
shr eax, 0x10
and eax, 0x3f
mov al, byte [rbx + rax]
mov byte [r9 + rsi - 9], al
mov rax, qword [rcx + rdi + 0x12]
bswap rax
mov r14, rax
shr r14, 0x3a
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 8], bpl
mov r14, rax
shr r14, 0x34
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 7], bpl
mov r14, rax
shr r14, 0x2e
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 6], bpl
mov r14, rax
shr r14, 0x28
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 5], bpl
mov r14, rax
shr r14, 0x22
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 4], bpl
mov r14, rax
shr r14, 0x1c
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 3], bpl
mov r14d, eax
shr r14d, 0x16
and r14d, 0x3f
mov bpl, byte [rbx + r14]
mov byte [r9 + rsi - 2], bpl
shr eax, 0x10
and eax, 0x3f
mov al, byte [rbx + rax]
mov byte [r9 + rsi - 1], al
add rdi, 0x18
lea rax, [rsi + 0x20]
cmp rdi, rdx
jbe 0x14002e4f1
movabs rdx, 0xaaaaaaaaaaaaaaab
mov rax, r11
mul rdx
shr rdx, 1
lea rdx, [rdx + rdx*2]
cmp rdi, rdx
jae 0x14002e863
cmp rdi, 0xfffffffffffffffc
ja 0x14002e9fb
lea r14, [rdi + 3]
cmp r14, r11
ja 0x14002ea0b
cmp rsi, 0xfffffffffffffffb
ja 0x14002ea1e
lea rax, [rsi + 4]
cmp rax, r10
ja 0x14002ea33
movzx r15d, byte [rcx + rdi]
mov r12, r15
shr r12, 2
mov bpl, byte [rbx + r12]
mov byte [r9 + rsi], bpl
mov bpl, byte [rcx + rdi + 1]
shl r15b, 4
mov r12d, ebp
shr r12b, 4
or r12b, r15b
movzx r15d, r12b
and r15d, 0x3f
mov r15b, byte [rbx + r15]
mov byte [r9 + rsi + 1], r15b
movzx edi, byte [rcx + rdi + 2]
shl bpl, 2
mov r15d, edi
shr r15b, 6
or r15b, bpl
movzx r15d, r15b
and r15d, 0x3f
mov bpl, byte [rbx + r15]
mov byte [r9 + rsi + 2], bpl
and edi, 0x3f
mov dil, byte [rbx + rdi]
mov byte [r9 + rsi + 3], dil
mov rsi, rax
mov rdi, r14
cmp r14, rdx
jb 0x14002e7bc
jmp 0x14002e866
mov rax, rsi
mov rsi, r11
sub rsi, rdx
cmp rsi, 1
je 0x14002e8ea
cmp rsi, 2
jne 0x14002e92b
cmp rax, r10
jae 0x14002e992
movzx edi, byte [rcx + rdx]
mov r14, rdi
shr r14, 2
mov bpl, byte [rbx + r14]
mov byte [r9 + rax], bpl
inc rdx
cmp rdx, r11
jae 0x14002e9a7
lea r11, [rax + 1]
cmp r11, r10
jae 0x14002e9bf
mov dl, byte [rcx + rdx]
mov ecx, edx
shr cl, 4
shl dil, 4
or dil, cl
movzx ecx, dil
and ecx, 0x3f
mov cl, byte [rbx + rcx]
mov byte [r9 + rax + 1], cl
lea rcx, [rax + 2]
cmp rcx, r10
jae 0x14002e9cb
shl dl, 2
and dl, 0x3c
mov r11d, 3
jmp 0x14002e91e
cmp rax, r10
jae 0x14002e99b
movzx edx, byte [rcx + rdx]
mov rcx, rdx
shr rcx, 2
mov cl, byte [rbx + rcx]
mov byte [r9 + rax], cl
lea rcx, [rax + 1]
cmp rcx, r10
jae 0x14002e9b6
shl dl, 4
and dl, 0x30
mov r11d, 2
movzx edx, dl
mov dl, byte [rbx + rdx]
mov byte [r9 + rcx], dl
add rax, r11
bt r8d, 8
jb 0x14002e936
xor ecx, ecx
jmp 0x14002e966
cmp rax, r10
ja 0x14002ea65
xor ecx, ecx
test rsi, rsi
je 0x14002e966
xor rsi, 3
je 0x14002e966
sub r10, rax
add r9, rax
xor ecx, ecx
cmp r10, rcx
je 0x14002e97e
mov byte [r9 + rcx], 0x3d
inc rcx
cmp rsi, rcx
jne 0x14002e954
add rax, rcx
jb 0x14002ea4b
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, r10
mov rdx, r10
call fcn.1401091b0
ud2
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
jmp 0x14002e9a2
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rax
jmp 0x14002e988
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rdx
mov rdx, r11
jmp 0x14002e98b
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
jmp 0x14002e988
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, r11
jmp 0x14002e988
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
jmp 0x14002e988
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rax
jmp 0x14002ea19
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, 0xffffffffffffffe0
xor edx, edx
jmp 0x14002ea2c
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
jmp 0x14002ea3e
lea rdx, [rdi + 3]
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rdi
jmp 0x14002ea2c
add rdi, 3
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rdi
mov rdx, r11
jmp 0x14002ea44
lea rdx, [rsi + 4]
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rsi
call fcn.1401094d0
ud2
add rsi, 4
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rsi
mov rdx, r10
call fcn.140109240
ud2
lea rcx, str.usize_overflow_when_calculating_b64_length
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov edx, 0x2a
call fcn.140109580
ud2
lea r8, str.C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_base64_0.13.1_srcencode.rsInvalid_UTF8
mov rcx, rax
mov rdx, r10
call fcn.140109230
ud2