Function at 0x14003d4a0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x30
xor r13d, r13d
mov rdi, r9
mov r12d, r8d
mov r14d, edx
mov rsi, rcx
test rcx, rcx
je 0x14003d4dc
mov r15, qword [rbp + 0x50]
test r15, r15
jne 0x14003d4e6
mov ecx, 0x80070057
jmp 0x14003d71d
lea r8, [rbp + 0x30]
mov edx, 2
mov ecx, r14d
call fcn.140077818
mov ebx, eax
test eax, eax
js 0x14003d59f
mov eax, 0xaaaaaaab
lea r8, [rbp + 0x30]
mul dword [rbp + 0x30]
mov ecx, edx
mov edx, 4
shr ecx, 1
call fcn.140077940
mov ebx, eax
test eax, eax
js 0x14003d59f
and r12d, 1
je 0x14003d56d
mov ecx, dword [rbp + 0x30]
lea r8, [rbp - 0x10]
mov edx, 0x3f
call fcn.140077818
mov ebx, eax
test eax, eax
js 0x14003d59f
mov ecx, dword [rbp - 0x10]
lea r8, [rbp - 0x10]
shr ecx, 6
mov edx, 2
call fcn.140077940
mov ebx, eax
test eax, eax
js 0x14003d59f
mov edx, dword [rbp - 0x10]
lea r8, [rbp + 0x30]
mov ecx, dword [rbp + 0x30]
call fcn.140077818
mov ebx, eax
test eax, eax
js 0x14003d59f
mov ecx, dword [rbp + 0x30]
mov edx, 1
test rdi, rdi
jne 0x14003d590
mov r8, r15
call fcn.140077818
mov ebx, eax
test eax, eax
js 0x14003d59f
mov ebx, r13d
jmp 0x14003d72c
lea r8, [rbp - 0x10]
call fcn.140077818
mov ebx, eax
test eax, eax
jns 0x14003d5a6
mov ecx, eax
jmp 0x14003d71f
mov r13d, dword [rbp - 0x10]
cmp dword [r15], r13d
jae 0x14003d5bb
mov ebx, 0x8007007a
mov ecx, ebx
jmp 0x14003d71f
xor eax, eax
lea r9, [rdi + r13*2]
mov r11d, eax
lea ecx, [rax + 0xa]
lea r10d, [rax + 0xd]
test r14d, r14d
jle 0x14003d6f8
lea r8, [rdi + 6]
lea rdx, [rdi + 2]
test r12d, r12d
je 0x14003d60d
cmp r11d, 0x10
jne 0x14003d60a
mov r11d, eax
cmp rdx, r9
jae 0x14003d718
mov dword [rdi], 0xa000d
add rdx, 4
add rdi, 4
mov eax, 0xa
add r8, 4
inc r11d
mov al, byte [rsi]
xor r10d, r10d
inc rsi
mov word [rbp - 0x10], r10w
mov byte [rbp + 0x30], al
cmp r14d, 1
jbe 0x14003d636
mov cl, byte [rsi]
inc rsi
cmp r14d, 2
jbe 0x14003d639
mov r10b, byte [rsi]
inc rsi
jmp 0x14003d639
mov cl, byte [rbp - 0xf]
cmp r8, r9
jae 0x14003d718
movzx eax, al
lea r15, [0x14039b950]
shr rax, 2
movzx eax, byte [rax + r15]
mov r15, qword [rbp + 0x50]
mov word [rdi], ax
movzx eax, cl
mov ecx, eax
mov dword [rbp - 0xc], eax
movzx eax, byte [rbp + 0x30]
shl eax, 4
shr ecx, 4
or rcx, rax
lea rax, [0x14039b950]
and ecx, 0x3f
movzx eax, byte [rcx + rax]
mov word [rdi + 2], ax
cmp r14d, 1
jbe 0x14003d6aa
mov eax, dword [rbp - 0xc]
shl eax, 2
movzx ecx, r10b
shr rcx, 6
or rcx, rax
lea rax, [0x14039b950]
and ecx, 0x3f
movzx eax, byte [rcx + rax]
jmp 0x14003d6af
mov eax, 0x3d
mov word [rdi + 4], ax
cmp r14d, 2
jbe 0x14003d6cd
movzx eax, r10b
lea rcx, [0x14039b950]
and eax, 0x3f
movzx ecx, byte [rax + rcx]
jmp 0x14003d6d2
mov ecx, 0x3d
mov word [rdi + 6], cx
add rdx, 8
add rdi, 8
add r8, 8
add r14d, 0xfffffffd
xor eax, eax
test r14d, r14d
jg 0x14003d5dc
lea ecx, [rax + 0xa]
lea r10d, [rax + 0xd]
test r12d, r12d
je 0x14003d713
lea rax, [rdi + 2]
cmp rax, r9
jae 0x14003d718
mov word [rdi], r10w
lea rdi, [rax + 2]
mov word [rax], cx
xor eax, eax
cmp rdi, r9
jb 0x14003d726
mov ecx, 0x8000ffff
mov ebx, ecx
call fcn.14003e510
jmp 0x14003d72c
mov word [rdi], ax
mov dword [r15], r13d
mov ecx, ebx
call fcn.14006a5bc
mov rsi, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rbp
ret