Function at 0x140029eb0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r13, r8
mov r15, rdx
mov rbx, rcx
xor edi, edi
mov dword [rsp + 0x20], edi
lea r10, [r8 + 2]
movabs rax, 0xaaaaaaaaaaaaaaab
mul r10
shr rdx, 1
shl rdx, 2
mov esi, 0x3d
mov eax, 0x2e
test r9b, r9b
cmovne esi, eax
movzx eax, r9b
lea r12, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
mov r12, qword [r12 + rax*8]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rdi
mov qword [rcx + 0x18], 0xf
mov byte [rcx], dil
mov dword [rsp + 0x20], 1
call fcn.14002a1f0
test r13, r13
je 0x14002a1ca
lea r14d, [rdi + 2]
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdi + r15]
shr rax, 2
movzx r9d, byte [rax + r12]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x140029f8a
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x140029f7f
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140029f99
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
lea eax, [r14 - 1]
mov ecx, eax
mov rdx, qword [rbx + 0x18]
cmp rcx, r13
jae 0x14002a0f4
lea rbp, [rax + r15]
movzx ecx, byte [rdi + r15]
and ecx, 3
shl ecx, 4
movzx eax, byte [rbp]
shr eax, 4
add ecx, eax
movzx r9d, byte [rcx + r12]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x140029ff1
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x140029fe6
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14002a000
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
mov eax, r14d
mov rdx, qword [rbx + 0x18]
cmp rax, r13
jae 0x14002a0b9
add r15, rax
movzx ecx, byte [rbp]
and ecx, 0xf
movzx eax, byte [r15]
shr eax, 6
lea eax, [rax + rcx*4]
movzx r9d, byte [rax + r12]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x14002a051
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14002a046
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14002a060
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
movzx eax, byte [r15]
and eax, 0x3f
movzx r9d, byte [rax + r12]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14002a0a0
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14002a08d
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
mov r15, qword [rsp + 0x78]
jmp 0x14002a1b9
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
mov r15, qword [rsp + 0x78]
jmp 0x14002a1b9
movzx eax, byte [rbp]
and eax, 0xf
movzx r9d, byte [r12 + rax*4]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x14002a16b
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14002a0e6
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14002a17a
movzx eax, byte [rdi + r15]
and eax, 3
add rax, rax
movzx r9d, byte [r12 + rax*8]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x14002a12c
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14002a121
mov rax, qword [rbx]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14002a13b
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rbx + 0x18]
cmp rcx, rdx
jae 0x14002a167
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
mov rax, rbx
cmp rdx, 0x10
jb 0x14002a15c
mov rax, qword [rbx]
mov byte [rax + rcx], sil
mov byte [rax + rcx + 1], 0
jmp 0x14002a17a
movzx r9d, sil
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
mov rdx, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x10]
cmp rcx, rdx
jae 0x14002a1a6
lea rax, [rcx + 1]
mov qword [rbx + 0x10], rax
cmp rdx, 0x10
mov rax, rbx
jb 0x14002a19b
mov rax, qword [rbx]
mov byte [rax + rcx + 1], 0
mov byte [rax + rcx], sil
jmp 0x14002a1b9
movzx r9d, sil
xor r8d, r8d
lea edx, [r8 + 1]
mov rcx, rbx
call fcn.14000c6c0
add r14d, 3
lea edi, [r14 - 2]
cmp rdi, r13
jb 0x140029f50
mov rax, rbx
mov rbx, qword [rsp + 0x80]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret