Function at 0x559160
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x10]
cmp r12, qword [r14 + 0x10]
jbe 0x5595e6
push rbp
mov rbp, rsp
sub rsp, 0x88
mov qword [rsp + 0xd8], r9
mov qword [rsp + 0xe0], r10
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xb8], rcx
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xa8], rax
mov rdx, qword [rsp + 0x98]
mov r11, qword [rdx + 0x28]
mov rax, qword [rsp + 0xa0]
call r11
mov rcx, qword [rsp + 0xe0]
cmp rcx, 0xffffffffffffffff
jne 0x5591e4
mov rcx, rax
jmp 0x5591ef
mov rcx, rax
mov rax, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xd8]
lea r11, [rdx + 7]
sar r11, 0x3f
shr r11, 0x3d
lea rbx, [r11 + rdx]
lea rbx, [rbx + 7]
sar rbx, 3
mov r11, qword [rsp + 0xc8]
nop word [rax + rax]
cmp r11, rbx
jne 0x559426
mov r11, qword [rsp + 0xb0]
cmp rcx, r11
jne 0x55940f
lea r12, [rax + rcx]
lea r12, [r12 + 2]
cmp r12, rbx
jg 0x5593f8
mov r12, qword [rsp + 0xc0]
movzx r13d, byte [rbx + r12 - 1]
nop word [rax + rax]
cmp r13b, 0xbc
jne 0x5593e1
mov r9, rbx
sub rbx, rcx
lea r13, [rbx - 1]
mov r10, qword [rsp + 0xd0]
mov r15, r10
sub r15, rbx
inc r15
mov rcx, r15
neg r15
sar r15, 0x3f
and r15, r13
mov rsi, r9
shl rsi, 3
sub rsi, rdx
sub r9, rbx
lea r8, [r12 + r15]
test rsi, rsi
jl 0x5595e0
mov rdx, rcx
mov rcx, rsi
mov r15d, 0xffffffff
shr r15b, cl
movzx edi, byte [r12]
cmp rcx, 8
sbb ecx, ecx
and r15d, ecx
mov ecx, r15d
not r15d
test dil, r15b
jne 0x5593c9
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x80], r8
mov byte [rsp + 0x47], cl
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x68], rax
mov rax, r12
mov rbx, r13
mov rcx, r10
mov rdi, qword [rsp + 0x98]
mov rsi, qword [rsp + 0xa0]
mov r10, rdx
call fcn.00559b80
mov rdx, qword [rsp + 0xc0]
movzx r11d, byte [rdx]
movzx r12d, byte [rsp + 0x47]
and r12d, r11d
mov byte [rdx], r12b
mov r11, qword [rsp + 0x68]
test r11, r11
jne 0x55939c
nop
mov qword [rsp], rdx
mov rax, qword [rsp + 0x58]
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x10], rax
mov byte [rsp + 0x18], 1
nop dword [rax]
call fcn.004038c0
xorps xmm15, xmm15
mov r14, qword [0x00c4bbb8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0x20]
nop dword [rax]
test rax, rax
jl 0x5593b2
mov rcx, qword [rsp + 0x70]
sub rcx, rax
lea rax, [rcx - 2]
mov rdx, qword [rsp + 0xc0]
mov r11, rax
mov rcx, qword [rsp + 0x70]
mov rsi, rcx
sub rcx, r11
lea rdi, [rcx - 2]
xor eax, eax
jmp 0x559460
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
nop
ret
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
nop
lea rax, [0x00696f80]
call fcn.0040c9c0
mov qword [rax + 8], 0x28
lea rcx, [0x006f3dc4]
mov qword [rax], rcx
mov rbx, rax
lea rax, [0x00765980]
add rsp, 0x88
pop rbp
ret
inc rax
nop dword [rax + rax]
cmp rax, rdi
jge 0x559486
movzx r8d, byte [rdx + rax]
test r8b, r8b
je 0x559458
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
movzx edi, byte [rcx + rdx - 2]
cmp dil, 1
jne 0x5595c8
mov qword [rsp + 0x68], rcx
lea rax, [0x0067e740]
call fcn.0040c9c0
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
sub rcx, rdx
mov qword [rsp + 0x48], rcx
mov rbx, qword [rsp + 0xd0]
sub rbx, rdx
inc rbx
mov qword [rsp + 0x50], rbx
neg rbx
sar rbx, 0x3f
dec rdx
and rdx, rbx
mov rbx, qword [rsp + 0xc0]
add rdx, rbx
mov qword [rsp + 0x78], rdx
mov rbx, qword [rsp + 0x98]
mov rdi, qword [rbx + 0x38]
mov r8, rax
mov rax, qword [rsp + 0xa0]
mov rbx, r8
mov ecx, 8
mov r11, rdi
mov rdi, rcx
call r11
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rcx + 0x38]
mov rax, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0xb0]
call rdx
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rcx + 0x38]
mov rax, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
call rdx
mov rcx, qword [rsp + 0x98]
mov rcx, qword [rcx + 0x30]
mov rax, qword [rsp + 0xa0]
xor ebx, ebx
xor edi, edi
mov rdx, rcx
mov rcx, rdi
call rdx
mov rcx, qword [rsp + 0x60]
cmp rbx, rcx
jne 0x5595a4
mov rcx, rbx
mov rbx, qword [rsp + 0x80]
call fcn.004033a0
nop dword [rax]
test al, al
jne 0x5595bb
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
xor eax, eax
xor ebx, ebx
add rsp, 0x88
pop rbp
ret
mov rax, qword [0x00baf0a0]
mov rbx, qword [0x00baf0a8]
add rsp, 0x88
pop rbp
ret
call fcn.00430840
nop
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x50], r10
call fcn.0045a0c0
mov rax, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
nop dword [rax + rax]
jmp fcn.00559160