Function at 0x1400dd4d0
Capabilities:
Encode data using base64

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0x70]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rcx
mov rax, qword [rcx + 0x20]
cmp rax, 0x80
jb 0x1400dd586
add rax, 0xffffffffffffff80
mov qword [rsi + 0x20], rax
mov r12, qword [rsi + 8]
mov rbx, qword [rsi + 0x10]
mov r15, qword [r12]
lea rdi, [r12 + 8]
mov qword [rsi + 8], rdi
cmp rbx, qword [rsi + 0x18]
jne 0x1400dd927
mov rcx, qword [rsi]
mov rax, rdi
sub rax, rcx
jbe 0x1400dd674
sar rax, 3
lea rcx, [rax + 1]
shr rcx, 0x3f
add rax, rcx
inc rax
sar rax, 1
mov r12, rax
neg r12
shl rax, 3
mov r14, rdi
sub r14, rax
sub rbx, rdi
je 0x1400dd572
mov rcx, r14
mov rdx, rdi
mov r8, rbx
call fcn.140111410
mov rdi, qword [rsi + 8]
add rbx, r14
mov qword [rsi + 0x10], rbx
lea rax, [rdi + r12*8]
mov qword [rsi + 8], rax
jmp 0x1400dd927
mov rdi, qword [rsi + 0x10]
mov rax, qword [rsi]
mov r9, qword [rsi + 8]
mov rbx, rdi
sub rbx, r9
mov r15, rbx
sar r15, 3
mov rdx, qword [rsi + 0x18]
mov rcx, rdx
sub rcx, rax
mov r8, rcx
sar r8, 3
cmp r15, r8
jae 0x1400dd5dc
mov ecx, 0x1000
cmp rdx, rdi
je 0x1400dd6ea
call fcn.14010e7c0
mov qword [rbp - 0x30], rax
lea rdx, [rbp - 0x30]
mov rcx, rsi
call fcn.140087780
jmp 0x1400dd92f
mov qword [rbp - 8], r9
sar rcx, 2
cmp rdx, rax
mov r12d, 1
cmovne r12, rcx
lea rax, [rsi + 0x20]
mov qword [rbp - 0x10], rax
mov rax, r12
shr rax, 0x3d
jne 0x1400dd9b8
lea rcx, [r12*8]
call fcn.14010e7c0
mov r14, rax
mov qword [rbp - 0x30], rax
lea r13, [rax + r15*8]
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x28], r13
lea rax, [rax + r12*8]
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x48], r13
mov ecx, 0x1000
call fcn.14010e7c0
cmp r15, r12
jne 0x1400dd7ff
test rbx, rbx
jle 0x1400dd7a3
lea rcx, [r15 + 1]
shr rcx, 0x3f
add rcx, r15
inc rcx
shl rcx, 2
and rcx, 0xfffffffffffffff8
sub r13, rcx
mov qword [rbp - 0x28], r13
jmp 0x1400dd7ff
mov rax, rbx
sub rax, rcx
sar rax, 2
mov qword [rbp - 8], rcx
cmp rbx, rcx
mov r13d, 1
cmovne r13, rax
mov rax, r13
shr rax, 0x3d
jne 0x1400dd9b8
mov r14, r13
shr r14, 2
lea rcx, [r13*8]
call fcn.14010e7c0
lea rcx, [rax + r14*8]
mov r9, rbx
sub r9, rdi
lea rdx, [rax + r13*8]
mov r8, rcx
sub rbx, rdi
je 0x1400dd903
and r9, 0xfffffffffffffff8
mov r8, r9
add r8, rcx
add rbx, 0xfffffffffffffff8
cmp rbx, 0x68
jae 0x1400dd883
mov r9, rcx
jmp 0x1400dd8f0
call fcn.14010e7c0
mov qword [rbp - 0x30], rax
lea rdx, [rbp - 0x30]
mov rcx, rsi
call fcn.140087940
mov r12, qword [rsi + 8]
mov rbx, qword [rsi + 0x10]
mov r15, qword [r12]
lea rdi, [r12 + 8]
mov qword [rsi + 8], rdi
cmp rbx, qword [rsi + 0x18]
jne 0x1400dd927
mov rcx, qword [rsi]
mov rax, rdi
sub rax, rcx
ja 0x1400dd536
mov rax, rbx
sub rax, rcx
sar rax, 2
mov qword [rbp - 8], rcx
cmp rbx, rcx
mov r13d, 1
cmovne r13, rax
mov rax, r13
shr rax, 0x3d
jne 0x1400dd9b8
mov r14, r13
shr r14, 2
lea rcx, [r13*8]
call fcn.14010e7c0
lea rcx, [rax + r14*8]
mov r9, rbx
sub r9, rdi
lea rdx, [rax + r13*8]
mov r8, rcx
sub rbx, rdi
je 0x1400dd903
and r9, 0xfffffffffffffff8
mov r8, r9
add r8, rcx
add rbx, 0xfffffffffffffff8
cmp rbx, 0x68
jae 0x1400dd940
mov r9, rcx
jmp 0x1400dd9a0
sar rbx, 2
cmp rdi, qword [rbp - 8]
mov edi, 1
cmovne rdi, rbx
mov rcx, rdi
shr rcx, 0x3d
jne 0x1400dd9bd
lea rcx, [rdi*8]
mov rbx, rax
mov qword [rbp - 0x38], rax
call fcn.14010e7c0
mov rcx, rdi
and rcx, 0xfffffffffffffffc
lea r13, [rax + rcx*2]
lea rcx, [rax + rdi*8]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], r13
mov qword [rbp - 0x18], rcx
mov rcx, r14
call fcn.14010e7fc
mov rdi, qword [rsi + 0x10]
mov rax, rbx
mov qword [r13], rax
add r13, 8
mov qword [rbp - 0x20], r13
lea rbx, [rbp - 0x30]
nop
cmp rdi, qword [rsi + 8]
je 0x1400dd82f
add rdi, 0xfffffffffffffff8
mov qword [rbp - 0x38], 0
mov rcx, rbx
mov rdx, rdi
call fcn.140087940
jmp 0x1400dd810
mov rcx, qword [rsi]
movaps xmm0, xmmword [rbp - 0x30]
mov qword [rbp - 0x30], rcx
movups xmmword [rsi], xmm0
mov qword [rbp - 0x28], rdi
mov rax, qword [rsi + 0x10]
mov rdx, qword [rsi + 0x18]
movaps xmm0, xmmword [rbp - 0x20]
mov qword [rbp - 0x20], rax
movups xmmword [rsi + 0x10], xmm0
mov qword [rbp - 0x18], rdx
cmp rax, rdi
je 0x1400dd870
sub rdi, rax
add rdi, 7
and rdi, 0xfffffffffffffff8
add rdi, rax
mov qword [rbp - 0x20], rdi
test rcx, rcx
je 0x1400dd92f
call fcn.14010e7fc
jmp 0x1400dd92f
lea r9, [rax + r14*8]
sub r9, rdi
cmp r9, 0x20
jae 0x1400dd895
mov r9, rcx
jmp 0x1400dd8f0
shr rbx, 3
inc rbx
shl r14, 3
mov r10, rbx
and r10, 0xfffffffffffffffc
lea r9, [rcx + r10*8]
lea rdi, [rdi + r10*8]
lea r11, [r14 + rax]
add r11, 0x10
xor r14d, r14d
nop word [rax + rax]
movups xmm0, xmmword [r12 + r14*8 + 8]
movups xmm1, xmmword [r12 + r14*8 + 0x18]
movups xmmword [r11 + r14*8 - 0x10], xmm0
movups xmmword [r11 + r14*8], xmm1
add r14, 4
cmp r10, r14
jne 0x1400dd8c0
cmp rbx, r10
je 0x1400dd903
nop word cs:[rax + rax]
mov r10, qword [rdi]
mov qword [r9], r10
add r9, 8
add rdi, 8
cmp r9, r8
jne 0x1400dd8f0
mov qword [rsi], rax
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], r8
mov qword [rsi + 0x18], rdx
mov rbx, r8
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400dd927
call fcn.14010e7fc
mov rbx, qword [rsi + 0x10]
mov qword [rbx], r15
add qword [rsi + 0x10], 8
add rsp, 0x78
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea r9, [rax + r14*8]
sub r9, rdi
cmp r9, 0x20
jae 0x1400dd952
mov r9, rcx
jmp 0x1400dd9a0
shr rbx, 3
inc rbx
shl r14, 3
mov r10, rbx
and r10, 0xfffffffffffffffc
lea r9, [rcx + r10*8]
lea rdi, [rdi + r10*8]
lea r11, [r14 + rax]
add r11, 0x10
xor r14d, r14d
movups xmm0, xmmword [r12 + r14*8 + 8]
movups xmm1, xmmword [r12 + r14*8 + 0x18]
movups xmmword [r11 + r14*8 - 0x10], xmm0
movups xmmword [r11 + r14*8], xmm1
add r14, 4
cmp r10, r14
jne 0x1400dd977
cmp rbx, r10
je 0x1400dd903
mov r10, qword [rdi]
mov qword [r9], r10
add r9, 8
add rdi, 8
cmp r9, r8
jne 0x1400dd9a0
jmp 0x1400dd903
call fcn.140012fe0
mov qword [rbp - 0x38], rax
call fcn.140012fe0
int3