Function at 0x4d0d20
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x10]
jbe 0x4d17f7
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rsp + 0xb8], rdi
mov byte [rsp + 0xc0], sil
mov byte [rsp + 0xc1], r8b
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], r10
mov qword [rsp + 0xd8], r11
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x98]
call fcn.004c2fc0
mov rax, qword [rsp + 0xd8]
test byte [rax], al
call fcn.004bf340
mov rcx, qword [rsp + 0xd8]
mov rcx, qword [rcx]
add rcx, 0xffffffffffffffc4
neg rcx
mov rdx, qword [rsp + 0xc8]
mov rbx, rdx
shl rdx, cl
test rbx, rbx
mov rbx, qword [rsp + 0xd0]
mov esi, 0
cmove rbx, rsi
cmp rcx, 0x40
sbb rcx, rcx
and rdx, rcx
jmp 0x4d0de4
shl rdx, 1
dec rbx
test rdx, rdx
je 0x4d0df0
bt rdx, 0x3c
jae 0x4d0dde
mov rcx, qword [rsp + 0xb8]
cmp rcx, 0xf
jae 0x4d0e76
mov r8, rcx
shl r8, 2
mov rax, rcx
mov rcx, r8
mov r9, rdx
shl rdx, cl
lea r10, [rcx - 0x3c]
neg r10
mov rcx, r10
shr r9, cl
cmp r8, 0x40
sbb r8, r8
and rdx, r8
movabs r8, 0xfffffffffffffff
and r8, rdx
cmp rcx, 0x40
sbb rdx, rdx
and r9, rdx
mov r11, r9
and r9d, 1
or r8, r9
movabs r9, 0x800000000000000
cmp r9, r8
jae 0x4d0e5e
lea r9, [r11 + 1]
jmp 0x4d0e61
mov r9, r11
shl r9, cl
and r9, rdx
bt r9, 0x3d
jae 0x4d0e7c
shr r9, 1
inc rbx
jmp 0x4d0e7c
mov rax, rcx
mov r9, rdx
movzx edx, byte [rsp + 0xc0]
cmp dl, 0x58
jne 0x4d0e92
lea rcx, [0x005b5a27]
jmp 0x4d0e99
lea rcx, [0x005b59a7]
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x60], r9
movzx r8d, byte [rsp + 0xc1]
test r8b, r8b
je 0x4d0f6f
mov r8, qword [rsp + 0xa8]
lea r10, [r8 + 1]
mov r11, qword [rsp + 0xb0]
cmp r11, r10
jb 0x4d0edd
mov rsi, qword [rsp + 0xa0]
jmp 0x4d0f0d
mov rax, qword [rsp + 0xa0]
mov rbx, r10
mov rcx, r11
mov edi, 1
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov r8, qword [rsp + 0xa8]
mov rsi, rax
mov r10, rbx
mov r11, rcx
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x50], r11
lea rax, [r8 + rsi]
call fcn.004bf3a0
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x88]
mov byte [rax + rcx], 0x2d
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x70]
movzx edx, byte [rsp + 0xc0]
mov rbx, qword [rsp + 0x68]
mov r9, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0x88]
jmp 0x4d0f87
mov rsi, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb0]
mov r8, qword [rsp + 0xa0]
mov qword [rsp + 0x58], rsi
lea r10, [rsi + 3]
cmp rdi, r10
jae 0x4d0fbd
mov rax, r8
mov rbx, r10
mov rcx, rdi
mov edi, 3
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov rsi, qword [rsp + 0x58]
mov r8, rax
mov r10, rbx
mov rdi, rcx
mov qword [rsp + 0x88], r8
mov qword [rsp + 0x50], r10
mov qword [rsp + 0x48], rdi
lea rax, [r8 + rsi]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x88]
mov byte [rdx + rcx], 0x30
lea rax, [rcx + rdx]
lea rax, [rax + 1]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x88]
movzx edx, byte [rsp + 0xc0]
mov rbx, qword [rsp + 0x58]
mov byte [rbx + rcx + 1], dl
lea rax, [rbx + rcx]
lea rax, [rax + 2]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x60]
mov rdx, rcx
shr rcx, 0x3c
and ecx, 1
add ecx, 0x30
mov rax, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x58]
mov byte [rbx + rax + 2], cl
shl rdx, 4
mov qword [rsp + 0x60], rdx
mov rcx, qword [rsp + 0xb8]
test rcx, rcx
jge 0x4d10d3
test rdx, rdx
je 0x4d10d0
mov rbx, qword [rsp + 0x50]
lea r8, [rbx + 1]
mov rcx, qword [rsp + 0x48]
cmp rcx, r8
jae 0x4d108d
mov rbx, r8
mov edi, 1
lea rsi, [0x0058a480]
nop dword [rax]
call fcn.004a1fa0
mov r8, rbx
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x48], r8
lea rdx, [rax + rbx]
mov rax, rdx
call fcn.004bf3a0
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x88]
mov byte [rax + rcx], 0x2e
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
jmp 0x4d1796
test rcx, rcx
jle 0x4d115b
mov rbx, qword [rsp + 0x50]
lea r8, [rbx + 1]
mov r9, qword [rsp + 0x48]
cmp r9, r8
jae 0x4d1110
mov rbx, r8
mov rcx, r9
mov edi, 1
lea rsi, [0x0058a480]
nop
call fcn.004a1fa0
mov r8, rbx
mov r9, rcx
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x48], r9
lea rcx, [rax + rbx]
mov rax, rcx
call fcn.004bf3a0
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x88]
mov byte [rax + rcx], 0x2e
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x48]
jmp 0x4d16e8
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x50]
movzx r8d, byte [rsp + 0xc0]
mov r9d, r8d
or r8d, 0x20
cmp r9b, r8b
jne 0x4d1182
mov ebx, 0x70
nop
jmp 0x4d1187
mov ebx, 0x50
mov qword [rsp + 0x58], rdx
mov byte [rsp + 0x2d], bl
lea r8, [rdx + 1]
cmp rcx, r8
jae 0x4d11b5
mov rbx, r8
mov edi, 1
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov rdx, qword [rsp + 0x58]
mov r8, rbx
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x48], rcx
lea rbx, [rax + rdx]
mov rax, rbx
call fcn.004bf3a0
mov rcx, qword [rsp + 0x58]
movzx edx, byte [rsp + 0x2d]
mov rax, qword [rsp + 0x88]
mov byte [rax + rcx], dl
mov rcx, qword [rsp + 0x68]
test rcx, rcx
jge 0x4d11fc
neg rcx
mov edx, 0x2d
jmp 0x4d1201
mov edx, 0x2b
mov qword [rsp + 0x68], rcx
mov byte [rsp + 0x2d], dl
mov rbx, qword [rsp + 0x50]
lea r8, [rbx + 1]
mov r9, qword [rsp + 0x48]
cmp r9, r8
jae 0x4d123f
mov rbx, r8
mov rcx, r9
mov edi, 1
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov r8, rbx
mov r9, rcx
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x48], r9
lea rcx, [rax + rbx]
mov rax, rcx
call fcn.004bf3a0
mov rcx, qword [rsp + 0x50]
movzx edx, byte [rsp + 0x2d]
mov rbx, qword [rsp + 0x88]
mov byte [rbx + rcx], dl
mov rcx, qword [rsp + 0x68]
nop word [rax + rax]
cmp rcx, 0x64
jge 0x4d1360
mov rdx, qword [rsp + 0x58]
lea r8, [rdx + 2]
mov r9, rcx
sar rcx, 0x3f
movabs rax, 0xcccccccccccccccd
mov rsi, rdx
imul r9
add rdx, r9
sar rdx, 3
sub rdx, rcx
mov qword [rsp + 0x68], rdx
lea r10, [rdx + rdx*4]
shl r10, 1
sub r9, r10
mov qword [rsp + 0x50], r9
mov rcx, qword [rsp + 0x48]
cmp rcx, r8
jae 0x4d12f4
mov rax, rbx
mov rbx, r8
mov edi, 2
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov rsi, qword [rsp + 0x58]
mov r8, rbx
mov rbx, rax
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x40], r8
lea rax, [rbx + rsi]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x88]
lea rax, [rdx + rcx]
lea rax, [rax + 1]
mov rbx, qword [rsp + 0x68]
add ebx, 0x30
mov byte [rdx + rcx], bl
call fcn.004bf3a0
mov rcx, qword [rsp + 0x50]
add ecx, 0x30
mov rbx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov byte [rdx + rbx + 1], cl
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
jmp 0x4d1668
cmp rcx, 0x3e8
jge 0x4d14ba
mov rdx, qword [rsp + 0x58]
lea r8, [rdx + 3]
movabs rax, 0xa3d70a3d70a3d70b
mov rsi, rdx
imul rcx
movabs rax, 0xcccccccccccccccd
mov rdi, rdx
imul rcx
add rdx, rcx
mov r9, rdx
sar rdx, 3
movabs rax, 0xcccccccccccccccd
mov r10, rdx
imul rdx
add rdx, r10
sar rdx, 3
sar r9, 0x3f
sub rdx, r9
lea rdx, [rdx + rdx*4]
shl rdx, 1
lea r9, [r10 + r10*4]
shl r9, 1
lea r11, [rcx + rdi]
mov qword [rsp + 0x68], r11
sub r10, rdx
mov qword [rsp + 0x50], r10
sub rcx, r9
mov qword [rsp + 0x40], rcx
mov rdx, qword [rsp + 0x48]
cmp rdx, r8
jae 0x4d1417
mov rax, rbx
mov rbx, r8
mov rcx, rdx
mov edi, 3
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov rsi, qword [rsp + 0x58]
mov rdx, rcx
mov r8, rbx
mov rbx, rax
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x88], rbx
lea rax, [rbx + rsi]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x88]
lea rax, [rdx + rcx]
lea rax, [rax + 1]
lea rbx, [rdx + rcx]
lea rbx, [rbx + 2]
mov qword [rsp + 0x80], rbx
mov rsi, qword [rsp + 0x68]
sar rsi, 6
add esi, 0x30
mov byte [rdx + rcx], sil
call fcn.004bf3a0
mov rcx, qword [rsp + 0x50]
add ecx, 0x30
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x58]
mov byte [rbx + rdx + 1], cl
mov rax, qword [rsp + 0x80]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x40]
add ecx, 0x30
mov rbx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov byte [rdx + rbx + 2], cl
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
jmp 0x4d1668
mov rdx, qword [rsp + 0x58]
lea r8, [rdx + 4]
movabs rax, 0xa3d70a3d70a3d70b
mov rsi, rdx
imul rcx
add rdx, rcx
sar rdx, 6
movzx r9d, dl
imul r9d, r9d, 0x19a
shr r9d, 0xc
lea r9d, [r9 + r9*4]
shl r9d, 1
movabs rax, 0xcccccccccccccccd
mov rdi, rdx
imul rcx
add rdx, rcx
mov r10, rdx
sar rdx, 3
movabs rax, 0xcccccccccccccccd
mov r11, rdx
imul rdx
add rdx, r11
sar rdx, 3
sar r10, 0x3f
sub rdx, r10
lea rdx, [rdx + rdx*4]
shl rdx, 1
lea r10, [r11 + r11*4]
shl r10, 1
movabs rax, 0x4189374bc6a7ef9e
mov r12, rdx
imul rcx
mov qword [rsp + 0x68], rdx
sub edi, r9d
mov byte [rsp + 0x2f], dil
sub r11, r12
mov qword [rsp + 0x50], r11
sub rcx, r10
mov qword [rsp + 0x40], rcx
mov r9, qword [rsp + 0x48]
cmp r9, r8
jae 0x4d1595
mov rax, rbx
mov rbx, r8
mov rcx, r9
mov edi, 4
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov rsi, qword [rsp + 0x58]
mov r9, rcx
mov r8, rbx
mov rbx, rax
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x38], r8
lea rax, [rbx + rsi]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x88]
lea rax, [rdx + rcx]
lea rax, [rax + 1]
lea rbx, [rdx + rcx]
lea rbx, [rbx + 2]
mov qword [rsp + 0x80], rbx
lea rsi, [rcx + rdx]
lea rsi, [rsi + 3]
mov qword [rsp + 0x78], rsi
mov rdi, qword [rsp + 0x68]
sar rdi, 8
add edi, 0x30
mov byte [rdx + rcx], dil
call fcn.004bf3a0
movzx ecx, byte [rsp + 0x2f]
add ecx, 0x30
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x58]
mov byte [rbx + rdx + 1], cl
mov rax, qword [rsp + 0x80]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x50]
add ecx, 0x30
mov rdx, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x58]
mov byte [rbx + rdx + 2], cl
mov rax, qword [rsp + 0x78]
nop dword [rax + rax]
call fcn.004bf3a0
mov rcx, qword [rsp + 0x40]
add ecx, 0x30
mov rbx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x58]
mov byte [rdx + rbx + 3], cl
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x58], rcx
call fcn.004c3000
mov rax, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x58]
add rsp, 0x90
pop rbp
ret
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x50], rsi
lea rcx, [rax + rbx]
mov rax, rcx
call fcn.004bf3a0
mov rcx, qword [rsp + 0x40]
movzx edx, byte [rsp + 0x2e]
mov rax, qword [rsp + 0x88]
mov byte [rax + rcx], dl
mov rcx, qword [rsp + 0x30]
dec rcx
mov rdx, qword [rsp + 0x60]
shl rdx, 4
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
test rcx, rcx
jle 0x4d1745
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x60], rdx
lea r8, [rbx + 1]
shr rdx, 0x3c
and edx, 0xf
mov r10, qword [rsp + 0x70]
movzx edx, byte [r10 + rdx]
mov byte [rsp + 0x2e], dl
cmp rsi, r8
jae 0x4d169a
mov rbx, r8
mov rcx, rsi
mov edi, 1
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov r8, rbx
mov rsi, rcx
mov rbx, qword [rsp + 0x40]
nop dword [rax]
jmp 0x4d169a
mov rcx, rsi
mov rdx, rbx
jmp 0x4d1165
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x50], rdx
lea rcx, [rax + rbx]
mov rax, rcx
call fcn.004bf3a0
mov rcx, qword [rsp + 0x40]
movzx edx, byte [rsp + 0x2e]
mov rax, qword [rsp + 0x88]
mov byte [rax + rcx], dl
mov rcx, qword [rsp + 0x60]
shl rcx, 4
mov rdx, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x58]
test rcx, rcx
je 0x4d17ec
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x40], rbx
lea r8, [rbx + 1]
shr rcx, 0x3c
and ecx, 0xf
mov r10, qword [rsp + 0x70]
movzx r11d, byte [r10 + rcx]
mov byte [rsp + 0x2e], r11b
nop
cmp rdx, r8
jae 0x4d1750
mov rbx, r8
mov rcx, rdx
mov edi, 1
lea rsi, [0x0058a480]
call fcn.004a1fa0
mov r8, rbx
mov rdx, rcx
mov rbx, qword [rsp + 0x40]
jmp 0x4d1750
mov rcx, rdx
mov rdx, rbx
jmp 0x4d1165
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov byte [rsp + 0x28], sil
mov byte [rsp + 0x29], r8b
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x40], r11
call fcn.004bbcc0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
movzx r8d, byte [rsp + 0x29]
mov r9, qword [rsp + 0x30]
mov r10, qword [rsp + 0x38]
mov r11, qword [rsp + 0x40]
jmp fcn.004d0d20