Function at 0x14003f520
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x40
mov rax, qword [0x1400e0040]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rbx, rdx
mov r14, rcx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x28], rdx
xor r12d, r12d
mov r15, qword [rdx + 0x10]
lea rcx, [r15 + 2]
movabs rax, 0xaaaaaaaaaaaaaaab
mul rcx
mov rdi, rdx
shr rdi, 1
shl rdi, 2
xorps xmm0, xmm0
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], r12
mov qword [r14 + 0x18], r12
movabs rbp, 0x7fffffffffffffff
cmp rdi, rbp
ja 0x14003f869
cmp rdi, 0xf
ja 0x14003f5c1
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x18], 0xf
mov r8, rdi
xor edx, edx
mov rcx, r14
call sub.VCRUNTIME140.dll_memset
mov byte [r14 + rdi], r12b
jmp 0x14003f656
mov rax, rdi
or rax, 0xf
cmp rax, rbp
jbe 0x14003f5f6
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.140047220
test rax, rax
je 0x14003f62b
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14003f63a
mov rbp, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rbp, rcx
lea rcx, [rbp + 1]
test rcx, rcx
jne 0x14003f613
mov rsi, r12
jmp 0x14003f63a
cmp rcx, 0x1000
jb 0x14003f632
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x14003f86f
jmp 0x14003f5db
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140047220
mov rsi, rax
mov qword [r14], rsi
mov qword [r14 + 0x10], rdi
mov qword [r14 + 0x18], rbp
mov r8, rdi
xor edx, edx
mov rcx, rsi
call sub.VCRUNTIME140.dll_memset
mov byte [rsi + rdi], 0
mov r8, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x14003f663
mov r8, qword [r14]
mov rdx, r12
lea r10, [r15 - 2]
lea r11, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_
test r10, r10
je 0x14003f73e
nop word [rax + rax]
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f68d
mov rax, qword [rbx]
movzx eax, byte [rax + rdx]
shr rax, 2
movzx eax, byte [rax + r11]
mov byte [r8], al
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f6ad
mov rax, qword [rbx]
lea r9, [rdx + rax]
jmp 0x14003f6b4
lea r9, [rbx + rdx]
mov rax, rbx
movzx ecx, byte [rax + rdx + 1]
shr rcx, 4
movsx rax, byte [r9]
and eax, 3
shl rax, 4
or rcx, rax
movzx eax, byte [rcx + r11]
mov byte [r8 + 1], al
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f6e4
mov rax, qword [rbx]
lea r9, [rax + 1]
jmp 0x14003f6eb
lea r9, [rbx + 1]
mov rax, rbx
add r9, rdx
movzx ecx, byte [rax + rdx + 2]
shr rcx, 6
movsx rax, byte [r9]
and eax, 0xf
shl rax, 2
or rcx, rax
movzx eax, byte [rcx + r11]
mov byte [r8 + 2], al
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f71b
mov rax, qword [rbx]
movsx rax, byte [rax + rdx + 2]
and eax, 0x3f
movzx eax, byte [rax + r11]
mov byte [r8 + 3], al
add r8, 4
add rdx, 3
cmp rdx, r10
jb 0x14003f680
cmp rdx, r15
jae 0x14003f7f4
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f754
mov rax, qword [rbx]
movzx eax, byte [rax + rdx]
shr rax, 2
movzx eax, byte [rax + r11]
mov byte [r8], al
lea rax, [r15 - 1]
cmp rdx, rax
jne 0x14003f796
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f77a
mov rax, qword [rbx]
movsx rax, byte [rax + rdx]
and eax, 3
add rax, rax
movzx eax, byte [r11 + rax*8]
mov byte [r8 + 1], al
mov al, 0x3d
add r8, 2
jmp 0x14003f7ec
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f7a6
mov rax, qword [rbx]
lea r9, [rax + rdx]
jmp 0x14003f7ad
lea r9, [rdx + rbx]
mov rax, rbx
movzx ecx, byte [rax + rdx + 1]
shr rcx, 4
movsx rax, byte [r9]
and eax, 3
shl rax, 4
or rcx, rax
movzx eax, byte [rcx + r11]
mov byte [r8 + 1], al
add r8, 2
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14003f7de
mov rax, qword [rbx]
movsx rax, byte [rax + rdx + 1]
and eax, 0xf
movzx eax, byte [r11 + rax*4]
mov byte [r8], al
mov byte [r8 + 1], 0x3d
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x14003f82a
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x14003f825
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14003f862
mov rcx, r8
call fcn.14004756c
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
mov rax, r14
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1400470e0
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call fcn.140005fa0
nop
call fcn.140001990
int3