Function at 0x4c8d80
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x48]
cmp r12, qword [r14 + 0x10]
jbe 0x4c9350
push rbp
mov rbp, rsp
sub rsp, 0xc0
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rdi
mov rdx, qword [r9]
nop dword [rax]
test rdx, rdx
je 0x4c8e02
mov r8, qword [r9 + 8]
cmp r8, 2
jge 0x4c8de0
mov r8, qword [0x006cf1e0]
mov r10, qword [0x006cf1e8]
jmp 0x4c8e10
cmp r8, 0x7fffffff
jle 0x4c8df9
mov r8, qword [0x006cf1f0]
mov r10, qword [0x006cf1f8]
jmp 0x4c8e10
xor r8d, r8d
xor r10d, r10d
nop
jmp 0x4c8e10
mov r8, qword [0x006cf1d0]
mov r10, qword [0x006cf1d8]
test r8, r8
jne 0x4c9192
mov r8, qword [rdx + 0x10]
lea r10, [r8 - 1]
nop
test r10, r10
jl 0x4c8e88
mov rdx, qword [rdx + 8]
mov rdx, qword [rdx + r8*8 - 8]
mov r8, rdx
shr rdx, 1
or rdx, r8
mov r8, rdx
shr rdx, 2
or rdx, r8
mov r8, rdx
shr rdx, 4
or rdx, r8
mov r8, rdx
shr rdx, 8
or rdx, r8
mov r8, rdx
shr rdx, 0x10
or rdx, r8
mov r8, rdx
shr rdx, 0x20
or rdx, r8
shl r10, 6
bsr rdx, rdx
mov r8, 0xffffffffffffffff
cmove rdx, r8
lea rdx, [rdx + r10]
lea rdx, [rdx + 1]
jmp 0x4c8e8a
xor edx, edx
lea r8, [rdx + 7]
sar r8, 0x3f
shr r8, 0x3d
lea rdx, [r8 + rdx]
lea rdx, [rdx + 7]
sar rdx, 3
mov r8, qword [rsp + 0xd8]
cmp r8, rdx
jg 0x4c8ef7
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x118], rdi
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x130], r9
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
mov rcx, qword [rax + 0x28]
mov rax, rbx
call rcx
lea rcx, [rax + rax]
lea rcx, [rcx + 2]
mov rdx, qword [rsp + 0x50]
cmp rcx, rdx
jle 0x4c8f15
mov rdi, qword [0x006cf200]
mov rsi, qword [0x006cf208]
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xc0
pop rbp
ret
mov rax, qword [rsp + 0x130]
mov rbx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xd8]
mov rdi, qword [rsp + 0xe0]
xor esi, esi
call fcn.004c82c0
nop dword [rax]
test rdi, rdi
jne 0x4c9182
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x58], rbx
mov rdx, qword [rsp + 0x100]
mov rsi, qword [rdx + 0x38]
mov rax, qword [rsp + 0x108]
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0xf8]
call rsi
mov rdx, qword [rsp + 0x100]
mov rsi, qword [rdx + 0x30]
mov rax, qword [rsp + 0x108]
xor ebx, ebx
xor ecx, ecx
mov rdi, rcx
call rsi
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0xa8], rax
mov rdx, qword [rsp + 0x100]
mov rsi, qword [rdx + 0x20]
mov rax, qword [rsp + 0x108]
call rsi
mov rdx, qword [rsp + 0x58]
test rdx, rdx
jbe 0x4c9345
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rcx + 0x28]
mov rbx, qword [rsp + 0xa0]
movzx esi, byte [rbx]
mov dword [rsp + 0x44], esi
mov rax, qword [rsp + 0x108]
call rdx
lea rcx, [rax + 1]
mov rdx, qword [rsp + 0x60]
cmp rdx, rcx
jb 0x4c9340
cmp rcx, 1
jb 0x4c9330
mov qword [rsp + 0x80], rax
lea rcx, [rdx - 1]
mov qword [rsp + 0x88], rcx
neg rcx
sar rcx, 0x3f
and ecx, 1
mov qword [rsp + 0x98], rcx
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsi + 0x28]
mov rax, qword [rsp + 0x108]
call rdi
lea rcx, [rax + 1]
mov rdx, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x98]
add rbx, rdx
mov r9, qword [rsp + 0x58]
cmp r9, rcx
jb 0x4c9325
mov qword [rsp + 0xb8], rbx
sub r9, rax
mov qword [rsp + 0x98], r9
mov r10, qword [rsp + 0x60]
sub r10, rax
mov qword [rsp + 0x90], r10
lea r11, [r10 - 1]
mov qword [rsp + 0x78], r11
lea r12, [r9 - 1]
mov qword [rsp + 0x70], r12
mov r13, r11
neg r11
sar r11, 0x3f
and r11, rcx
lea r8, [r11 + rdx]
mov qword [rsp + 0xb0], r8
mov rax, rbx
mov rbx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
mov r9, r12
mov r10, r13
call fcn.004c7a00
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x110]
mov rsi, qword [rsp + 0x118]
mov r8, qword [rsp + 0xb8]
mov r9, qword [rsp + 0x80]
mov r10, qword [rsp + 0x88]
call fcn.004c7a00
mov rdx, qword [rsp + 0x100]
mov r11, qword [rdx + 0x28]
mov rax, qword [rsp + 0x108]
call r11
mov rdx, qword [rsp + 0x78]
cmp rax, rdx
ja 0x4c931a
mov rcx, qword [rsp + 0x68]
nop
cmp rcx, rax
jne 0x4c917e
mov rdx, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xa8]
xor eax, eax
xor esi, esi
jmp 0x4c9306
xor eax, eax
jmp 0x4c91a8
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xc0
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
mov rdi, r8
mov rsi, r10
add rsp, 0xc0
pop rbp
ret
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x100]
mov rcx, qword [rcx + 0x28]
mov rax, qword [rsp + 0x108]
call rcx
mov rcx, qword [rsp + 0x70]
cmp rax, rcx
ja 0x4c92f0
mov rcx, qword [rsp + 0x90]
sub rcx, rax
mov rbx, qword [rsp + 0x98]
sub rbx, rax
lea rdx, [rcx - 1]
neg rdx
sar rdx, 0x3f
and rdx, rax
mov r8, qword [rsp + 0xb0]
add rdx, r8
lea r8, [rbx - 1]
xor eax, eax
mov esi, 1
xor edi, edi
xor r9d, r9d
jmp 0x4c926a
movzx r10d, byte [rax + rdx]
lea r11d, [r10 - 1]
shr r11d, 0x1f
not r11
xor r10d, 1
movzx r10d, r10b
dec r10d
shr r10d, 0x1f
mov r12d, r10d
and r10, rsi
mov r13, r10
neg r10
and r10, rax
dec r13
and r9, r13
dec r12
and rsi, r12
and r11, rsi
mov r12, r11
neg r11
and r11d, 1
dec r12
and rdi, r12
inc rax
nop
nop
or r9, r10
or rdi, r11
cmp rax, r8
jl 0x4c9212
not rdi
not rsi
mov r10d, dword [rsp + 0x44]
dec r10d
shr r10d, 0x1f
mov r11, qword [rsp + 0x48]
and r11, r10
and r11, rdi
and rsi, r11
cmp rsi, 1
jne 0x4c92ca
lea rax, [r9 + 1]
cmp rax, r8
ja 0x4c92e8
sub rbx, r9
sub rcx, r9
add rcx, 0xfffffffffffffffe
add rbx, 0xfffffffffffffffe
mov r8, rcx
neg r8
sar r8, 0x3f
and r8, rax
lea rax, [r8 + rdx]
xor edi, edi
xor esi, esi
add rsp, 0xc0
pop rbp
ret
mov rdi, qword [0x006cf200]
mov rsi, qword [0x006cf208]
xor eax, eax
xor ebx, ebx
mov rcx, rbx
add rsp, 0xc0
pop rbp
ret
mov rcx, r8
call fcn.00465360
call fcn.00465360
movzx edi, byte [rax + rbx]
movzx r8d, byte [rax + rdx]
xor edi, r8d
inc rax
or esi, edi
cmp rcx, rax
jg 0x4c92f5
movzx eax, sil
dec eax
nop
shr eax, 0x1f
jmp 0x4c91a8
mov rcx, rax
nop dword [rax]
call fcn.00465320
mov rax, rcx
mov rcx, r9
call fcn.00465360
mov eax, 1
xor ecx, ecx
call fcn.00465360
nop dword [rax]
call fcn.00465320
xor eax, eax
mov rcx, rax
call fcn.004652a0
nop
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x68], r9
call fcn.00463020
mov rax, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
mov r9, qword [rsp + 0x68]
nop dword [rax + rax]
jmp fcn.004c8d80