Function at 0x4f7f80
Capabilities:
Encode data using base64
Hash data using sha512

Disassembly:
lea r12, [rsp - 0xa0]
cmp r12, qword [r14 + 0x10]
jbe 0x4f8246
push rbp
mov rbp, rsp
sub rsp, 0x118
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rbx
movups xmm0, xmmword [0x00628b40]
movups xmmword [rsp + 0xc0], xmm0
movups xmm0, xmmword [0x00628b50]
movups xmmword [rsp + 0xd0], xmm0
movups xmm0, xmmword [0x00628b60]
movups xmmword [rsp + 0xe0], xmm0
movups xmm0, xmmword [0x00628b70]
movups xmmword [rsp + 0xf0], xmm0
mov r9, rbx
or rbx, 0x1010000
xor qword [rsp + 0xc0], rbx
movups xmmword [rsp + 0x100], xmm15
cmp rdi, 0x80
jle 0x4f80c6
mov r10, rdi
and rdi, 0xffffffffffffff80
lea r11, [rdi - 0x80]
cmp r10, rdi
cmove rdi, r11
cmp rsi, rdi
jb 0x4f823a
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0x148], rsi
mov qword [rsp + 0x110], r10
mov qword [rsp + 0x138], rcx
lea rax, [rsp + 0xc0]
lea rbx, [rsp + 0x100]
mov r8, rsi
mov rsi, rdi
mov rdi, rcx
xor ecx, ecx
call sym.golang.org_x_crypto_blake2b.hashBlocks
mov rcx, qword [rsp + 0x110]
mov rax, qword [rsp + 0xb8]
cmp rcx, rax
jb 0x4f8235
mov rdx, qword [rsp + 0x148]
mov r9, rax
sub rax, rdx
sar rax, 0x3f
and rax, r9
sub rcx, r9
mov rdx, qword [rsp + 0x138]
add rdx, rax
mov rax, qword [rsp + 0x128]
mov r9, qword [rsp + 0x130]
mov rdi, rcx
mov rcx, rdx
mov rdx, rdi
lea rdi, [rsp + 0x30]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046b302
mov rbp, qword [rbp]
cmp rdx, 0x80
mov r8d, pe_nt_image_headers64
cmovl r8, rdx
lea rdi, [rsp + 0x30]
cmp rcx, rdi
je 0x4f8142
mov qword [rsp + 0xb0], r8
mov rax, rdi
mov rbx, rcx
mov rcx, r8
nop
call sym.runtime.memmove
mov rax, qword [rsp + 0x128]
lea rdi, [rsp + 0x30]
mov r8, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x130]
lea rdx, [r8 - 0x80]
neg rdx
cmp qword [rsp + 0x100], rdx
jae 0x4f815b
dec qword [rsp + 0x108]
mov rdx, qword [rsp + 0x100]
lea rdx, [r8 + rdx]
lea rdx, [rdx - 0x80]
mov qword [rsp + 0x100], rdx
lea rax, [rsp + 0xc0]
lea rbx, [rsp + 0x100]
mov rcx, 0xffffffffffffffff
mov esi, pe_nt_image_headers64
mov r8, rsi
call sym.golang.org_x_crypto_blake2b.hashBlocks
mov rdx, qword [rsp + 0x130]
lea r9, [rdx + 7]
sar r9, 0x3f
shr r9, 0x3d
lea rcx, [r9 + rdx]
lea rcx, [rcx + 7]
sar rcx, 3
cmp rcx, 8
ja 0x4f822b
mov rdx, qword [rsp + 0x128]
xor eax, eax
jmp 0x4f81da
test byte [rdx], al
mov rsi, qword [rsp + rax*8 + 0xc0]
mov qword [rdx + rbx], rsi
inc rax
cmp rax, rcx
jge 0x4f8208
mov rbx, rax
shl rbx, 3
cmp rbx, 0x40
ja 0x4f821e
lea rsi, [rbx - 0x40]
mov rdi, rsi
neg rsi
sar rdi, 0x3f
and rbx, rdi
nop dword [rax]
cmp rsi, 7
ja 0x4f81c9
jmp 0x4f8211
add rsp, 0x118
pop rbp
ret
mov eax, 7
mov rcx, rsi
call sym.runtime.panicIndex
mov rax, rbx
mov ecx, 0x40
call sym.runtime.panicSliceB
mov edx, 8
call sym.runtime.panicSliceAlen
call sym.runtime.panicSliceB
mov rcx, rdi
mov rdx, rsi
call sym.runtime.panicSliceAcap
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
nop
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
nop
jmp sym.golang.org_x_crypto_blake2b.checkSum