Function at 0x56b780
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x30]
cmp r12, qword [r14 + 0x10]
jbe 0x56ba4b
push rbp
mov rbp, rsp
sub rsp, 0xa8
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rdi
mov qword [rsp + 0xd8], rsi
mov qword [rsp + 0xe0], r8
mov qword [rsp + 0x60], 0
movups xmmword [rsp + 0x68], xmm15
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x48], rdx
lea rsi, [rdx + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rdi, [rdx + rsi]
lea rdi, [rdi + 7]
sar rdi, 3
mov qword [rsp + 0x58], rdi
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
nop dword [rax + rax]
call sym.math_big.nat.make
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0xc8], rcx
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], 0
jmp 0x56b855
cmp qword [rsp + 0x30], 8
jge 0x56b865
nop dword [rax]
jmp 0x56b912
mov rax, qword [rsp + 0x30]
lea rsi, [rax - 8]
mov qword [rsp + 0x48], rsi
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xd0]
cmp rdx, rcx
jae 0x56b892
jmp 0x56ba45
cmp rcx, rsi
jae 0x56b89c
jmp 0x56ba3d
sub rcx, rax
sub rdx, rax
add rdx, 8
lea rbx, [rcx + 8]
mov rcx, rdx
neg rdx
sar rdx, 0x3f
and rsi, rdx
lea rax, [rdi + rsi]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x88], rcx
call sym.math_big.bigEndianWord
mov qword [rsp + 0x40], rax
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xb8]
cmp rdx, rcx
jb 0x56b8f9
jmp 0x56ba35
lea rsi, [rsi + rdx*8]
mov qword [rsi], rax
add qword [rsp + 0x30], 0xfffffffffffffff8
jmp 0x56b908
inc qword [rsp + 0x28]
jmp 0x56b855
cmp qword [rsp + 0x30], 0
jg 0x56b91c
jmp 0x56b930
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x20], 0
jmp 0x56b984
jmp 0x56b932
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
call sym.math_big.nat.norm
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rcx
mov rax, qword [rsp + 0x60]
add rsp, 0xa8
pop rbp
ret
cmp qword [rsp + 0x30], 0
jg 0x56b98e
jmp 0x56b9df
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0x30]
lea rsi, [rax - 1]
cmp rcx, rsi
ja 0x56b9ae
jmp 0x56ba2d
lea rdx, [rax + rdx]
lea rdx, [rdx - 1]
movzx edx, byte [rdx]
mov rcx, qword [rsp + 0x20]
shl rdx, cl
cmp rcx, 0x40
sbb rsi, rsi
and rdx, rsi
or qword [rsp + 0x38], rdx
dec qword [rsp + 0x30]
jmp 0x56b9d7
add qword [rsp + 0x20], 8
jmp 0x56b984
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x48], rax
lea rdx, [rax - 1]
mov qword [rsp + 0x50], rdx
mov rcx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x38]
cmp rcx, rdx
ja 0x56ba11
jmp 0x56ba25
lea rdx, [rsi + rax*8]
lea rdx, [rdx - 8]
mov qword [rdx], rdi
nop dword [rax]
jmp 0x56b932
mov rax, rdx
call sym.runtime.panicIndex
mov rax, rsi
call sym.runtime.panicIndex
mov rax, rdx
call sym.runtime.panicIndex
mov rax, rsi
call sym.runtime.panicSliceB
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
mov qword [rsp + 0x30], r8
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]
mov r8, qword [rsp + 0x30]
jmp sym.math_big.nat.setBytes