Function at 0x520cc0
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x520f11
push rbp
mov rbp, rsp
sub rsp, 0x58
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rbx
mov rdx, qword [rax]
mov rax, rdx
call fcn.00520920
test rcx, rcx
jne 0x520dab
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rbx
lea rax, [0x00598ec0]
call fcn.0040e960
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rcx + 8]
mov rbx, qword [rcx + 0x10]
mov qword [rax], rdx
cmp dword [0x0077f770], 0
je 0x520d34
call fcn.0046a260
mov qword [r11], rbx
mov qword [rsp + 0x40], rax
mov qword [rax + 8], rbx
lea rax, [0x0058bfc0]
call fcn.0040e960
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rcx + 0x18]
mov rbx, qword [rdx]
mov rbx, qword [rbx + 8]
shl rbx, 6
sub rbx, qword [rdx + 8]
lea rdx, [rbx + 7]
sar rdx, 0x3f
shr rdx, 0x3d
lea rbx, [rdx + rbx]
lea rbx, [rbx + 7]
sar rbx, 3
mov qword [rsp + 0x30], rbx
nop
lea rax, [0x0057b8e0]
mov rcx, rbx
call fcn.0044e820
mov rcx, qword [rsp + 0x48]
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov rbx, qword [rsp + 0x30]
mov rsi, rbx
xor edi, edi
jmp 0x520dc0
xor eax, eax
mov rbx, rcx
mov rcx, rdi
add rsp, 0x58
pop rbp
ret
inc rdi
mov rbx, r10
nop
cmp rdi, rcx
jge 0x520de2
mov r9, qword [rdx + rdi*8]
xor r8d, r8d
jmp 0x520ed0
test r9, r9
je 0x520db9
jmp 0x520ef0
mov r10, rbx
nop
jmp 0x520db9
mov rdx, qword [rsp + 0x38]
mov rbx, qword [rdx + 0x10]
mov rcx, qword [rdx + 0x18]
mov r9, qword [rdx + 8]
mov rdi, rax
mov r8, rsi
mov rax, r9
nop dword [rax]
call fcn.004f7f60
mov rdx, qword [rsp + 0x38]
mov qword [rdx + 0x10], rbx
mov qword [rdx + 0x18], rcx
cmp dword [0x0077f770], 0
jne 0x520e22
mov rsi, qword [rsp + 0x40]
jmp 0x520e43
call fcn.0046a2c0
mov qword [r11], rax
mov rsi, qword [rdx + 8]
mov qword [r11 + 8], rsi
mov qword [r11 + 0x10], rdx
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsi + 0x20]
mov qword [r11 + 0x18], rdi
mov qword [rdx + 8], rax
mov byte [rdx], 0
mov qword [rsi + 0x20], rdx
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rdx + 8]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
call fcn.0051ef20
cmp dword [0x0077f770], 0
jne 0x520e76
mov rdx, qword [rsp + 0x40]
jmp 0x520e97
call fcn.0046a2c0
mov qword [r11], rax
mov rdx, qword [rsp + 0x40]
mov rsi, qword [rdx + 0x10]
mov qword [r11 + 8], rsi
mov qword [r11 + 0x10], rbx
mov rsi, qword [rdx + 0x18]
mov qword [r11 + 0x18], rsi
mov qword [rdx + 0x10], rax
mov qword [rdx + 0x18], rbx
nop
test rcx, rcx
je 0x520eb3
xor eax, eax
mov rbx, rcx
mov rcx, rdi
add rsp, 0x58
pop rbp
ret
mov rax, rdx
xor ebx, ebx
xor ecx, ecx
add rsp, 0x58
pop rbp
nop
ret
mov byte [rbx + rax - 1], r9b
inc r8
shr r9, 8
mov rbx, r10
cmp r8, 8
jge 0x520ddb
lea r10, [rbx - 1]
nop
test r10, r10
jl 0x520dd1
cmp rsi, r10
ja 0x520ec1
jmp 0x520f05
lea rax, [0x0057b860]
lea rbx, [0x005fff58]
nop
call fcn.00437b40
mov rax, r10
mov rcx, rsi
call fcn.0046a620
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.00468340
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
nop
jmp fcn.00520cc0