Function at 0x58dd40
Capabilities:
Encode data using base64

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x58dff9
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x78], rcx
lea rax, [0x005edf60]
xor ebx, ebx
mov ecx, 0x21
nop dword [rax]
call fcn.00449bc0
mov qword [rsp + 0x50], rax
lea rax, [0x005ff520]
call fcn.0040d720
mov qword [rax + 0x10], 0x21
cmp dword [0x0081ed80], 0
jne 0x58ddb1
mov rdx, qword [rsp + 0x50]
mov qword [rax], rdx
jmp 0x58ddbe
mov rdi, rax
mov rdx, qword [rsp + 0x50]
call fcn.00464720
mov qword [rsp + 0x40], rax
mov rdx, qword [rsp + 0x70]
mov rsi, qword [rdx + 0x18]
mov rdi, qword [rsi]
mov rdi, qword [rdi + 8]
mov r8, rdi
shl rdi, 6
sub rdi, r8
sub rdi, qword [rsi + 8]
lea rsi, [rdi + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rcx, [rsi + rdi]
lea rcx, [rcx + 7]
sar rcx, 3
mov qword [rsp + 0x30], rcx
lea rax, [0x005ee060]
mov rbx, rcx
call fcn.00449bc0
mov qword [rsp + 0x50], rax
mov rbx, qword [rsp + 0x80]
mov rcx, rax
mov rdi, qword [rsp + 0x30]
mov rsi, rdi
mov r8, rsi
mov rax, qword [rsp + 0x78]
call fcn.0046ede0
test rbx, rbx
jne 0x58df38
mov rdx, qword [rsp + 0x70]
mov r8, qword [rdx + 0x18]
mov r9, qword [r8]
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
shl rdi, 3
mov r9, qword [r9 + 8]
mov r10, r9
shl r9, 6
sub r9, r10
sub r9, qword [r8 + 8]
sub rdi, r9
test rdi, rdi
jle 0x58deda
mov qword [rsp + 0x38], rdi
mov rcx, qword [rdx + 8]
mov rax, qword [rdx + 0x10]
mov rcx, qword [rcx + 0x30]
nop
call rcx
mov rcx, qword [rax + 0x30]
cmp qword [rax + 0x38], 5
jne 0x58dfe5
cmp dword [rcx], 0x32352d50
jne 0x58dfe5
cmp byte [rcx + 4], 0x31
jne 0x58dfe5
mov rdi, qword [rsp + 0x30]
test rdi, rdi
jbe 0x58dfd7
mov rcx, qword [rsp + 0x38]
cmp rcx, 8
sbb edx, edx
mov rbx, qword [rsp + 0x50]
movzx r8d, byte [rbx]
shr r8b, cl
and r8d, edx
mov byte [rbx], r8b
mov rcx, rdi
mov rdx, qword [rsp + 0x70]
mov rsi, qword [rdx + 0x18]
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x50]
mov rdi, rcx
call fcn.0057a740
test rbx, rbx
je 0x58defc
mov rsi, qword [rsp + 0x40]
jmp 0x58df16
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsi]
mov r8, qword [rsi + 8]
xor eax, eax
mov ecx, 1
jmp 0x58df79
test rcx, rcx
je 0x58df82
mov rdx, qword [0x007c87c0]
nop dword [rax]
test rdx, rdx
je 0x58ddc3
mov rax, qword [rdx]
call rax
mov rsi, qword [rsp + 0x40]
jmp 0x58ddc3
mov rax, qword [rsp + 0x40]
mov rdi, rcx
mov rcx, rbx
xor ebx, ebx
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov r9, qword [rdi + rax*8]
mov r10, r9
sub r9, 0
sbb r9, r9
xor r11d, r11d
sub r11, r10
sbb r10, r10
inc rax
neg r9
neg r10
or r9, r10
xor r9, 1
and rcx, r9
cmp rax, r8
jl 0x58df4f
nop
jmp 0x58df11
mov rax, qword [rsp + 0x70]
mov rdx, qword [rax]
mov rcx, qword [rdx]
call rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x70]
mov rbx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x40]
call fcn.0057a5c0
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rdx]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0x48]
call rsi
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
xor eax, eax
mov rcx, rax
nop dword [rax]
call fcn.00464aa0
lea rax, [0x005edea0]
lea rbx, [0x00694360]
call fcn.004357a0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.00462440
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.0058dd40