Function at 0x18004aed0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov ebx, dword [rsp + 0x90]
mov r9, rdx
imul eax, r8d, 0x690
mov r14, rcx
mov r15d, r8d
mov dword [rsp + 0x34], eax
cmp r8d, eax
ja 0x18004b26e
mov r12d, dword [rsp + 0x90]
movabs rdx, 0xaaaaaaaaaaaaaaab
mov ebp, dword [rsp + 0x90]
mov dword [rsp + 0x98], ebx
mov rsi, qword [rsp + 0x98]
mov rdi, qword [rsp + 0x98]
mov r13, qword [rsp + 0x98]
nop word [rax + rax]
cmp r15d, 0x2845
ja 0x18004b056
je 0x18004b26e
mov eax, r15d
sub eax, 0x28
je 0x18004b029
sub eax, 0x15
je 0x18004b00b
sub eax, 0x5f
je 0x18004aff6
sub eax, 0x19
je 0x18004afb0
cmp eax, 0x19b3
jne 0x18004b255
cmp qword [r14 + 0x18], 0x10
mov rsi, r14
jb 0x18004af9a
mov rsi, qword [r14]
cmp qword [r9 + 0x18], 0x10
mov rdi, r9
jb 0x18004b255
mov rdi, qword [r9]
jmp 0x18004b255
test r14, r14
je 0x18004b26e
mov qword [rsp + 0x28], 0
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], StrCmpCA
mov rdx, r14
xor ecx, ecx
call fcn.1800388b0
inc dword [r14 + 0xc]
mov eax, dword [r14 + 0xc]
inc dword [r14]
mov r9, qword [rsp + 0x88]
mov dword [r14 + 8], eax
jmp 0x18004b24b
mov dword [r14 + 0x10], 0xffffffff
mov qword [r14 + 8], 0
jmp 0x18004b255
mov rax, qword [r14 + 0x10]
test rax, rax
jne 0x18004b288
mov ebx, 0xffffffff
mov dword [rsp + 0x98], ebx
jmp 0x18004b255
mov rcx, qword [r14 + 0x10]
mov rax, rdx
add rcx, 2
xor r8d, r8d
mul rcx
mov rcx, r9
shr rdx, 1
shl rdx, 2
call fcn.18004b2a0
mov r9, qword [rsp + 0x88]
jmp 0x18004b24b
cmp r15d, 0x34a8
je 0x18004b238
cmp r15d, 0x4ee8
je 0x18004b172
cmp r15d, 0x6928
je 0x18004b097
cmp r15d, 0x777d
jne 0x18004b255
movsxd rcx, dword [r14 + 8]
mov rax, qword [r14 + 0x10]
mov qword [rax + rcx*8], r9
jmp 0x18004b255
cmp r13, qword [r14 + 0x10]
jae 0x18004b255
mov ebx, dword [rsp + 0x30]
mov r8d, 0x56
nop dword [rax + rax]
mov eax, r8d
sub eax, 0x56
je 0x18004b151
sub eax, 1
je 0x18004b139
cmp eax, 1
jne 0x18004b155
mov rax, qword [0x1800827a0]
mov ecx, r12d
shr rcx, 2
movzx ecx, byte [rcx + rax]
mov eax, ebp
mov byte [rdi], cl
mov ecx, r12d
and ecx, 3
shr eax, 4
shl ecx, 4
add ecx, eax
mov rax, qword [0x1800827a0]
movzx ecx, byte [rcx + rax]
lea rax, [r13 + 1]
mov byte [rdi + 1], cl
cmp rax, qword [r14 + 0x10]
jae 0x18004b12b
mov ecx, ebp
mov eax, ebx
and ecx, 0xf
shr eax, 6
lea ecx, [rax + rcx*4]
mov rax, qword [0x1800827a0]
movzx edx, byte [rcx + rax]
mov byte [rdi + 2], dl
mov byte [rdi + 3], 0x3d
add rdi, 4
jmp 0x18004b155
mov dl, 0x3d
mov byte [rdi + 2], dl
mov byte [rdi + 3], dl
add rdi, 4
jmp 0x18004b155
lea rax, [r13 + 1]
cmp rax, qword [r14 + 0x10]
jae 0x18004b14b
movzx ebp, byte [rsi + 1]
xor ebx, ebx
jmp 0x18004b155
xor ebp, ebp
xor ebx, ebx
jmp 0x18004b155
movzx r12d, byte [rsi]
inc r8d
cmp r8d, 0x59
jb 0x18004b0b0
mov dword [rsp + 0x30], ebx
mov ebx, dword [rsp + 0x98]
jmp 0x18004b24b
mov rcx, qword [rsp + 0x38]
xor r13d, r13d
test rcx, rcx
je 0x18004b255
dec rcx
mov rax, rdx
mul rcx
mov r8, rdx
shr r8, 1
inc r8
lea r13, [r8 + r8*2]
nop dword [rax]
mov eax, 0xa7
cmp eax, 0xa7
jne 0x18004b21c
mov rcx, qword [0x1800827a0]
movzx edx, byte [rsi]
shr rdx, 2
movzx edx, byte [rdx + rcx]
mov byte [rdi], dl
movzx edx, byte [rsi]
movzx ecx, byte [rsi + 1]
and edx, 3
shl edx, 4
shr ecx, 4
add edx, ecx
mov rcx, qword [0x1800827a0]
movzx edx, byte [rdx + rcx]
mov byte [rdi + 1], dl
movzx edx, byte [rsi + 1]
movzx ecx, byte [rsi + 2]
and edx, 0xf
shr ecx, 6
lea edx, [rcx + rdx*4]
mov rcx, qword [0x1800827a0]
movzx edx, byte [rdx + rcx]
mov byte [rdi + 2], dl
movzx edx, byte [rsi + 2]
mov rcx, qword [0x1800827a0]
and edx, 0x3f
movzx edx, byte [rdx + rcx]
mov byte [rdi + 3], dl
add rdi, 4
add rsi, 3
add eax, 0x43d8
cmp eax, 0x43d8
jbe 0x18004b1a5
sub r8, 1
jne 0x18004b1a0
jmp 0x18004b24b
mov rax, rdx
mul qword [r14 + 0x10]
shr rdx, 1
lea rax, [rdx + rdx*2]
mov qword [rsp + 0x38], rax
movabs rdx, 0xaaaaaaaaaaaaaaab
imul eax, dword [rsp + 0x90], 0xa8
add r15d, eax
cmp r15d, dword [rsp + 0x34]
jbe 0x18004af50
mov eax, ebx
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movsxd rcx, dword [r9]
mov rax, qword [rax + 8]
mov eax, dword [rax + rcx*4]
jmp 0x18004b270