Function at 0x18003bff0
Capabilities:
Encode data using base64

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], r8
mov qword [rax + 8], rcx
push rbx
push r13
push r14
sub rsp, 0x70
mov r13d, r9d
mov r14, rdx
mov r9, r8
lea ebx, [r13 + 0x3c0]
mov dword [rsp + 0xa8], ebx
cmp r13d, ebx
jae 0x18003c375
mov rbx, qword [rsp + 0x48]
movabs r8, 0xaaaaaaaaaaaaaaab
mov qword [rax + 0x10], rbp
mov ebp, dword [rsp + 0xa8]
mov qword [rax - 0x20], rsi
mov esi, dword [rsp + 0xa8]
mov qword [rax - 0x28], rdi
mov rdi, qword [rsp + 0x48]
mov qword [rax - 0x30], r12
mov r12d, dword [rsp + 0xa8]
mov qword [rax - 0x38], r15
mov r15, qword [rsp + 0x48]
mov eax, dword [rsp + 0xa8]
nop
cmp r13d, 0x1be
ja 0x18003c173
je 0x18003c15d
mov eax, r13d
sub eax, 0xfd
je 0x18003c0cd
sub eax, 0x21
je 0x18003c0a0
cmp eax, 0x7f
je 0x18003c359
jmp 0x18003c342
mov rcx, qword [r14 + 0x10]
mov rax, r8
add rcx, 2
xor r8d, r8d
mul rcx
mov rcx, r9
shr rdx, 1
shl rdx, 2
call fcn.180061db0
mov r9, qword [rsp + 0xa0]
jmp 0x18003c330
mov eax, dword [rcx]
lea rdx, [rsp + 0x48]
mov dword [rsp + 0x38], eax
lea rcx, [rsp + 0x40]
mov eax, dword [r9]
mov r8d, 0x90
mov dword [rsp + 0x40], eax
lea r9, [rsp + 0x38]
mov eax, dword [r14]
mov dword [rsp + 0x30], eax
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
call fcn.18009f250
mov eax, 0x66666667
mov ecx, 0x3e
imul dword [rsp + 0x48]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*4]
cmp dword [rsp + 0x48], eax
lea eax, [rdx + 1]
cmovne edx, eax
mov rax, qword [rsp + 0x90]
mov dword [rsp + 0x40], edx
lea rdx, [rsp + 0x40]
movsxd r8, dword [rax]
lea rax, [0x1800c0e78]
shl r8, 4
add r8, rax
call fcn.18000ec10
mov r9, qword [rsp + 0xa0]
jmp 0x18003c330
cmp qword [r14 + 0x18], 0x10
mov rdi, r14
jb 0x18003c349
mov rdi, qword [r14]
jmp 0x18003c349
cmp r13d, 0x25e
je 0x18003c263
cmp r13d, 0x2fe
jne 0x18003c349
cmp r15, qword [r14 + 0x10]
jae 0x18003c349
mov edx, 0x7d
nop dword [rax]
cmp edx, 0x7d
je 0x18003c249
cmp edx, 0x5b4f
je 0x18003c21c
cmp edx, 0xb621
jne 0x18003c24c
mov ecx, ebp
mov eax, esi
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x1800c56c8]
movzx ecx, byte [rcx + rax]
lea rax, [r15 + 1]
mov byte [rbx], cl
cmp rax, qword [r14 + 0x10]
jae 0x18003c20b
mov ecx, esi
mov eax, r12d
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800c56c8]
movzx r8d, byte [rcx + rax]
mov byte [rbx + 1], r8b
mov byte [rbx + 2], 0x3d
add rbx, 3
jmp 0x18003c24c
mov r8b, 0x3d
mov byte [rbx + 1], r8b
mov byte [rbx + 2], r8b
add rbx, 3
jmp 0x18003c24c
lea rax, [r15 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x18003c22c
movzx esi, byte [rdi + 1]
jmp 0x18003c22e
xor esi, esi
mov rax, qword [0x1800c56c8]
xor r12d, r12d
mov ecx, ebp
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
inc rbx
jmp 0x18003c24c
movzx ebp, byte [rdi]
add edx, 0x5ad2
cmp edx, 0x11076
jbe 0x18003c1a0
jmp 0x18003c330
cmp qword [r9 + 0x18], 0x10
mov rbx, r9
jb 0x18003c270
mov rbx, qword [r9]
mov rax, r8
xor r15d, r15d
mul qword [r14 + 0x10]
shr rdx, 1
lea rcx, [rdx + rdx*2]
test rcx, rcx
je 0x18003c33a
dec rcx
mov rax, r8
mul rcx
shr rdx, 1
inc rdx
lea r15, [rdx + rdx*2]
nop dword [rax]
mov r8d, 0x27
mov eax, r8d
sub eax, 0x25
je 0x18003c319
sub eax, 1
je 0x18003c2e0
cmp eax, 1
jne 0x18003c31d
mov rax, qword [0x1800c56c8]
movzx ecx, byte [rdi]
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
movzx ecx, byte [rdi]
movzx eax, byte [rdi + 1]
and ecx, 3
shl ecx, 4
shr eax, 4
add ecx, eax
jmp 0x18003c305
movzx ecx, byte [rdi + 1]
movzx eax, byte [rdi + 2]
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800c56c8]
movzx ecx, byte [rcx + rax]
mov byte [rbx], cl
movzx ecx, byte [rdi + 2]
and ecx, 0x3f
mov rax, qword [0x1800c56c8]
movzx ecx, byte [rcx + rax]
mov byte [rbx + 1], cl
add rbx, 2
jmp 0x18003c31d
add rdi, 3
dec r8d
cmp r8d, 0x24
ja 0x18003c2a6
sub rdx, 1
jne 0x18003c2a0
movabs r8, 0xaaaaaaaaaaaaaaab
mov rcx, qword [rsp + 0x90]
mov eax, dword [rsp + 0xa8]
add r13d, 0xa0
cmp r13d, eax
jb 0x18003c070
mov r12, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x98]
mov r15, qword [rsp + 0x50]
add rsp, 0x70
pop r14
pop r13
pop rbx
ret