Function at 0x14011c610
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rsi, rdx
mov rbx, rcx
mov rax, qword [0x140219028]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov r13, qword [rdx + 0x2b8]
mov rcx, qword [rdx + 0x2c0]
mov rax, rcx
sub rax, r13
je 0x14011c87f
mov r8, rax
sar r8, 3
mov rdx, r13
mov r9, rdx
mov r10, r8
shr r10, 1
mov r11, r10
not r11
add r11, r8
cmp qword [rdx + r10*8], rbx
lea rdx, [rdx + r10*8 + 8]
cmovae r11, r10
cmovae rdx, r9
mov r8, r11
test r11, r11
jne 0x14011c659
mov r14, rcx
cmp rdx, rcx
je 0x14011c6b6
mov r14, rdx
cmp qword [rdx], rbx
jne 0x14011c6b6
xor esi, esi
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14012ec00
mov eax, esi
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, r14
sub rbp, r13
mov rdi, r13
add rdi, rbp
mov rdx, qword [rsi + 0x2c8]
cmp rcx, rdx
jae 0x14011c755
cmp rdi, rcx
jne 0x14011c6f3
test rcx, rcx
je 0x14011c921
mov qword [rcx], rbx
add rcx, 8
mov qword [rsi + 0x2c0], rcx
mov sil, 1
jmp 0x14011c696
lea rax, [rcx - 8]
mov rdx, rcx
cmp rax, rcx
jae 0x14011c71e
mov rdx, rcx
test rdx, rdx
je 0x14011c921
mov r8, qword [rax]
mov qword [rdx], r8
add rax, 8
add rdx, 8
cmp rax, rcx
jb 0x14011c702
lea rax, [rdi + 8]
mov qword [rsi + 0x2c0], rdx
cmp rcx, rax
je 0x14011c74a
mov r8, rcx
sub r8, rax
mov rax, r8
sar rax, 3
shl rax, 3
sub rcx, rax
mov rdx, rdi
call fcn.140130690
mov qword [rdi], rbx
mov sil, 1
jmp 0x14011c696
lea rcx, [rsi + 0x2b8]
sar rax, 3
inc rax
mov r8, rax
shr r8, 0x3d
jne 0x14011c94d
movabs r8, 0x1fffffffffffffff
sub rdx, r13
mov r12, rdx
sar r12, 2
cmp r12, rax
cmovbe r12, rax
movabs rax, 0x7ffffffffffffff8
cmp rdx, rax
cmovae r12, r8
test r12, r12
mov qword [rsp + 0x30], rcx
je 0x14011c887
cmp r12, r8
ja 0x14011c952
lea rcx, [r12*8]
call fcn.14012c264
mov rdx, rbp
sar rdx, 3
lea r15, [rax + rdx*8]
lea r8, [rax + r12*8]
cmp rdx, r12
je 0x14011c88e
test r15, r15
je 0x14011c921
mov qword [r15], rbx
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
mov r14, r15
cmp rdi, rax
je 0x14011c80f
mov r14, r15
mov rcx, rdi
mov rdx, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
mov qword [r14 - 8], rdx
add r14, 0xfffffffffffffff8
cmp rcx, rax
jne 0x14011c7fa
add r15, 8
mov rbx, qword [rsi + 0x2c0]
sub rbx, rdi
je 0x14011c83a
mov rcx, r15
mov rdx, rdi
mov rdi, r8
mov r8, rbx
call fcn.140130690
mov r8, rdi
mov rdi, qword [rsi + 0x2c0]
add r15, rbx
mov rcx, qword [rsi + 0x2b8]
mov qword [rsi + 0x2b8], r14
mov qword [rsi + 0x2c0], r15
mov qword [rsi + 0x2c8], r8
cmp rdi, rcx
je 0x14011c869
add rdi, 0xfffffffffffffff8
jne 0x14011c859
jmp 0x14011c957
mov sil, 1
test rcx, rcx
je 0x14011c696
call fcn.14012c25c
jmp 0x14011c696
mov r14, rcx
jmp 0x14011c6b6
xor eax, eax
jmp 0x14011c7c0
test rbp, rbp
jle 0x14011c8b2
lea rcx, [rdx + 1]
shr rcx, 0x3f
lea rax, [rdx + rcx]
inc rax
shl rax, 2
and rax, 0xfffffffffffffff8
sub r15, rax
jmp 0x14011c7d8
mov r12, rax
lea rax, [rsi + 0x2d0]
sar rbp, 2
cmp r13, r14
mov r14d, 1
cmovne r14, rbp
mov qword [rsp + 0x58], rax
movabs rax, 0x1fffffffffffffff
cmp r14, rax
ja 0x14011c952
lea rcx, [r14*8]
call fcn.14012c264
mov rcx, r14
and rcx, 0xfffffffffffffffc
lea r13, [rax + rcx*2]
lea r14, [rax + r14*8]
lea rcx, [rsp + 0x38]
mov qword [rcx], r12
mov qword [rcx + 8], r15
mov qword [rcx + 0x10], r15
mov qword [rcx + 0x18], r15
call fcn.14011ace0
mov r8, r14
mov r15, r13
jmp 0x14011c7d8
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.140167880
call fcn.14016bd00
call fcn.140167880
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.140167880
int3