Function at 0x42eb5b
Capabilities:
Encode data using base64

Disassembly:
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x20
mov rsi, qword [str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789__E]
mov rdi, rcx
mov rbx, rdx
test r8b, r8b
je 0x42eb7e
mov rsi, qword [0x00467b60]
imul rax, rbx, 4
jo 0x42ebbb
cqo
mov ebp, 3
idiv rbp
add rax, 6
mov rcx, rax
jns 0x42ebc0
movabs r8, 0x7fffffffffffffff
xor edx, edx
call fcn.004400b2
movzx ebp, byte [rdi + r11]
mov rcx, r11
shl ebp, 0x10
mov r12d, ebp
inc rcx
jns 0x42ec08
call fcn.0044097b
mov rdx, rax
xor ecx, ecx
call fcn.0043ea3a
mov r10, rbx
xor r11d, r11d
mov r8, rax
mov rax, rbx
cqo
idiv rbp
sub r10, rdx
seto r11b
jo 0x42ebbb
xor eax, eax
cmp r10, r11
jne 0x42ebfa
cmp rdx, 1
jne 0x42ecec
jmp 0x42ecfb
cmp r11, rbx
jl 0x42eba8
lea rdx, [rbx - 1]
mov rcx, r11
jmp 0x42ec1b
cmp rcx, r11
jb 0x42ebbb
test rcx, rcx
js 0x42ec17
cmp rcx, rbx
jl 0x42ec20
lea rdx, [rbx - 1]
call fcn.00441535
movzx ebp, byte [rdi + rcx]
lea rcx, [r11 + 2]
mov r9d, ebp
shl r9d, 8
cmp rbx, rcx
jle 0x42ec17
movzx ebp, byte [rdi + r11 + 2]
add r11, 3
or ebp, r9d
or ebp, r12d
test r8, r8
je 0x42ec5a
mov r9, qword [r8]
cmp rax, r9
jl 0x42ec63
lea rdx, [r9 - 1]
jmp 0x42ee1f
or rdx, 0xffffffffffffffff
jmp 0x42ee1f
mov ecx, ebp
mov r12, rax
shr ecx, 0x12
mov cl, byte [rsi + rcx]
mov byte [r8 + rax + 0x10], cl
inc r12
js 0x42ebbb
cmp r12, rax
jb 0x42ebbb
test r12, r12
js 0x42ec8f
cmp r12, r9
jl 0x42ec98
lea rdx, [r9 - 1]
mov rcx, r12
jmp 0x42ec1b
mov eax, ebp
lea rcx, [r12 + 1]
shr eax, 0xc
and eax, 0x3f
mov al, byte [rsi + rax]
mov byte [r8 + r12 + 0x10], al
cmp r9, rcx
jle 0x42eccc
mov eax, ebp
shr eax, 6
and eax, 0x3f
mov al, byte [rsi + rax]
mov byte [r8 + rcx + 0x10], al
lea rcx, [r12 + 2]
cmp r9, rcx
jg 0x42ecd5
lea rdx, [r9 - 1]
jmp 0x42ec1b
mov eax, ebp
and eax, 0x3f
mov al, byte [rsi + rax]
mov byte [r8 + rcx + 0x10], al
lea rax, [r12 + 3]
jmp 0x42ebe6
cmp rdx, 2
jne 0x42ee9d
jmp 0x42edb1
cmp r10, rbx
jge 0x42edb6
movzx ecx, byte [rdi + r10]
mov rdx, r10
shl ecx, 0x10
inc rdx
js 0x42ebbb
cmp rdx, r10
jb 0x42ebbb
or rdx, 0xffffffffffffffff
test r8, r8
je 0x42ee1f
mov rdx, qword [r8]
cmp rax, rdx
jge 0x42ee1c
mov r9d, ecx
shr r9d, 0x12
mov r9b, byte [rsi + r9]
mov byte [r8 + rax + 0x10], r9b
mov r9, rax
inc r9
js 0x42ebbb
cmp r9, rax
jb 0x42ebbb
test r9, r9
js 0x42ed69
cmp r9, rdx
jl 0x42ed74
dec rdx
mov rcx, r9
jmp 0x42ec1b
shr ecx, 0xc
and ecx, 0x30
mov al, byte [rsi + rcx]
lea rcx, [r9 + 1]
mov byte [r8 + r9 + 0x10], al
cmp rdx, rcx
jle 0x42ee8b
mov byte [r8 + rcx + 0x10], 0x3d
lea rcx, [r9 + 2]
cmp rdx, rcx
jle 0x42ee8b
mov byte [r8 + rcx + 0x10], 0x3d
lea rax, [r9 + 3]
jmp 0x42ee9d
cmp r10, rbx
jl 0x42edc2
lea rdx, [rbx - 1]
mov rcx, r10
jmp 0x42ec1b
movzx r9d, byte [rdi + r10]
mov rcx, r10
mov edx, r9d
shl edx, 0x10
inc rcx
js 0x42ebbb
cmp rcx, r10
jb 0x42ebbb
test rcx, rcx
js 0x42ec17
cmp rcx, rbx
jge 0x42ec17
movzx r9d, byte [rdi + r10 + 1]
shl r9d, 8
or r9d, edx
add rcx, 1
jo 0x42ebbb
or rdx, 0xffffffffffffffff
test r8, r8
je 0x42ee1f
mov rdx, qword [r8]
cmp rax, rdx
jl 0x42ee27
dec rdx
mov rcx, rax
jmp 0x42ec1b
mov ecx, r9d
shr ecx, 0x12
mov cl, byte [rsi + rcx]
mov byte [r8 + rax + 0x10], cl
mov rcx, rax
inc rcx
js 0x42ebbb
cmp rcx, rax
jb 0x42ebbb
test rcx, rcx
js 0x42ee8b
cmp rcx, rdx
jge 0x42ee8b
mov r10d, r9d
shr r10d, 0xc
and r10d, 0x3f
mov r10b, byte [rsi + r10]
mov byte [r8 + rcx + 0x10], r10b
lea rcx, [rax + 2]
cmp rcx, rdx
jge 0x42ee8b
shr r9d, 6
and r9d, 0x3c
mov r9b, byte [rsi + r9]
mov byte [r8 + rcx + 0x10], r9b
lea rcx, [rax + 3]
cmp rcx, rdx
jl 0x42ee93
dec rdx
jmp 0x42ec1b
mov byte [r8 + rcx + 0x10], 0x3d
add rax, 4
mov rdx, rax
mov rcx, r8
add rsp, 0x20
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
jmp fcn.0043ea3a