Function at 0x140186520
Capabilities:
Encode data using base64

Disassembly:
lea r12, [rsp - 0x10]
cmp r12, qword [r14 + 0x10]
jbe 0x14018681f
sub rsp, 0x90
mov qword [rsp + 0x88], rbp
lea rbp, [rsp + 0x88]
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xc0], r8
mov qword [rsp + 0xb8], rsi
mov rdx, qword [rax]
mov r12, qword [rdx + 0x10]
mov rdx, qword [rdx + 8]
lea r13, [r12 - 1]
test r13, r13
jl 0x1401865e9
mov r15, qword [rdx + r12*8 - 8]
mov qword [rsp + 0x78], r15
shr r15, 1
mov rsi, qword [rsp + 0x78]
or r15, rsi
mov rsi, r15
shr r15, 2
or r15, rsi
mov rsi, r15
shr r15, 4
or r15, rsi
mov rsi, r15
shr r15, 8
or r15, rsi
mov rsi, r15
shr r15, 0x10
or r15, rsi
mov rsi, r15
shr r15, 0x20
or r15, rsi
bsr rsi, r15
mov r15, 0xffffffffffffffff
cmove rsi, r15
mov r15, r13
shl r13, 6
lea rsi, [r13 + rsi]
lea rsi, [rsi + 1]
mov r13, r15
mov r15, rsi
mov rsi, qword [rsp + 0xb8]
jmp 0x1401865ec
xor r15d, r15d
lea rsi, [r15 + 7]
sar rsi, 0x3f
shr rsi, 0x3d
lea rsi, [r15 + rsi]
lea rsi, [rsi + 7]
sar rsi, 3
cmp r9, rsi
jne 0x14018671f
test r11, r11
je 0x140186617
mov rsi, qword [r11]
jmp 0x140186620
xor esi, esi
nop dword [rax]
cmp rsi, 0xffffffffffffffff
jl 0x140186701
mov qword [rsp + 0xd8], r11
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rdi
test r13, r13
jl 0x1401866aa
mov rdx, qword [rdx + r12*8 - 8]
mov rsi, rdx
shr rdx, 1
or rdx, rsi
mov rsi, rdx
shr rdx, 2
or rdx, rsi
mov rsi, rdx
shr rdx, 4
or rdx, rsi
mov rsi, rdx
shr rdx, 8
or rdx, rsi
mov rsi, rdx
shr rdx, 0x10
or rdx, rsi
mov rsi, rdx
shr rdx, 0x20
or rdx, rsi
bsr rdx, rdx
mov rsi, 0xffffffffffffffff
cmove rdx, rsi
shl r13, 6
lea rdx, [r13 + rdx]
lea rdx, [rdx + 1]
jmp 0x1401866ac
xor edx, edx
mov qword [rsp + 0x50], rdx
mov rbx, r8
mov rcx, r9
mov rdi, r10
call fcn.140186c40
mov rdx, qword [rsp + 0x50]
lea rsi, [rdx + 6]
sar rsi, 0x3f
shr rsi, 0x3d
lea rsi, [rdx + rsi]
lea rsi, [rsi + 6]
test rdi, rdi
jne 0x1401866e3
sar rsi, 3
jmp 0x140186756
mov rax, qword [0x140597090]
mov rbx, qword [0x140597098]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov rax, qword [0x1405970d0]
mov rbx, qword [0x1405970d8]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov rax, qword [0x140597090]
mov rbx, qword [0x140597098]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
dec rcx
mov rdi, rcx
neg rcx
sar rcx, 0x3f
and ecx, 1
add rax, rcx
dec rbx
mov rcx, rdi
cmp rbx, rsi
jle 0x140186795
nop dword [rax + rax]
test rbx, rbx
je 0x140186788
cmp byte [rax], 0
je 0x14018673d
mov rax, qword [0x140597090]
mov rbx, qword [0x140597098]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov rsi, qword [rsp + 0xd8]
test rsi, rsi
jmp 0x1401867a0
mov rsi, qword [rsp + 0xd8]
test rsi, rsi
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x80], rax
je 0x1401867b9
mov rsi, qword [rsi]
jmp 0x1401867bb
xor esi, esi
mov qword [rsp + 0x58], rsi
mov rax, qword [rsp + 0x70]
call fcn.140094d40
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov r9, qword [rsp + 0x50]
dec r9
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov r10, qword [rsp + 0x58]
call fcn.140185fa0
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
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
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x48], r11
call fcn.1400632e0
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]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
mov r11, qword [rsp + 0x48]
nop
jmp fcn.140186520