Function at 0x1400ed9c0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], r9
push rdi
push r12
push r13
push r14
push r15
lea eax, [rdx + 0x3f]
mov r10d, edx
shr eax, 6
xor r12d, r12d
sub r10d, eax
xor r14d, r14d
inc r10d
mov rdi, r9
mov r13, r8
mov esi, edx
mov r11, rcx
lea eax, [r10 + r10*2]
shr eax, 2
cmp eax, dword [r9]
ja 0x1400edcec
cmp edx, 3
jbe 0x1400edcc8
mov r8d, edx
mov edx, r14d
movzx ecx, byte [r14 + r11]
movabs rbx, 0x100002400
cmp cl, 0x20
ja 0x1400eda76
bt rbx, rcx
jae 0x1400eda76
lea r8d, [rsi - 1]
lea edx, [r14 + 1]
test r8d, r8d
je 0x1400eda55
cmp cl, 0x20
jne 0x1400eda55
movzx ecx, byte [rdx + r11]
inc edx
add r8d, 0xffffffff
jne 0x1400eda43
cmp cl, 0xd
jne 0x1400eda6d
test r8d, r8d
je 0x1400edcde
movzx ecx, byte [rdx + r11]
inc edx
dec r8d
cmp cl, 0xa
jne 0x1400edcde
test r8d, r8d
je 0x1400edcc8
mov eax, edx
movzx r10d, byte [rax + r11]
lea eax, [rdx + 1]
test r10b, r10b
je 0x1400edcc8
lea edx, [r8 - 1]
test edx, edx
je 0x1400edce5
movzx r8d, byte [rax + r11]
cmp r8b, 0x20
ja 0x1400edaf1
bt rbx, r8
jae 0x1400edaf1
inc eax
sub edx, 1
je 0x1400edac8
cmp r8b, 0x20
jne 0x1400edac8
movzx r8d, byte [rax + r11]
inc eax
add edx, 0xffffffff
jne 0x1400edab6
cmp r8b, 0xd
jne 0x1400edadf
test edx, edx
je 0x1400edcde
movzx r8d, byte [rax + r11]
inc eax
dec edx
cmp r8b, 0xa
jne 0x1400edcde
test edx, edx
je 0x1400edce5
movzx r9d, byte [rax + r11]
lea ecx, [rax + 1]
sub edx, 1
je 0x1400edce5
movzx r8d, byte [rcx + r11]
cmp r8b, 0x20
ja 0x1400edb5b
bt rbx, r8
jae 0x1400edb5b
inc ecx
sub edx, 1
je 0x1400edb32
nop word [rax + rax]
cmp r8b, 0x20
jne 0x1400edb32
movzx r8d, byte [rcx + r11]
inc ecx
add edx, 0xffffffff
jne 0x1400edb20
cmp r8b, 0xd
jne 0x1400edb49
test edx, edx
je 0x1400edcde
movzx r8d, byte [rcx + r11]
inc ecx
dec edx
cmp r8b, 0xa
jne 0x1400edcde
test edx, edx
je 0x1400edce5
movzx r15d, byte [rcx + r11]
lea r8d, [rdx - 1]
inc ecx
test r8d, r8d
je 0x1400edce5
movzx edx, byte [rcx + r11]
cmp dl, 0x20
ja 0x1400edbc3
bt rbx, rdx
jae 0x1400edbc3
inc ecx
sub r8d, 1
je 0x1400edb99
cmp dl, 0x20
jne 0x1400edb99
movzx edx, byte [rcx + r11]
inc ecx
add r8d, 0xffffffff
jne 0x1400edb87
cmp dl, 0xd
jne 0x1400edbb1
test r8d, r8d
je 0x1400edcde
movzx edx, byte [rcx + r11]
inc ecx
dec r8d
cmp dl, 0xa
jne 0x1400edcde
test r8d, r8d
je 0x1400edce5
movzx ebx, byte [rcx + r11]
lea r14d, [rcx + 1]
lea esi, [r8 - 1]
mov edx, r14d
mov r8d, esi
cmp r10b, 0x2b
jb 0x1400edcde
cmp r9b, 0x2b
jb 0x1400edcde
cmp r15b, 0x2b
jb 0x1400edcde
cmp bl, 0x2b
jb 0x1400edcde
cmp r10b, 0x7a
ja 0x1400edcde
cmp r9b, 0x7a
ja 0x1400edcde
cmp r15b, 0x7a
ja 0x1400edcde
cmp bl, 0x7a
ja 0x1400edcde
xor eax, eax
cmp bl, 0x3d
setne al
xor ecx, ecx
cmp r15b, 0x3d
setne cl
add eax, r12d
inc ecx
add ecx, eax
cmp ecx, dword [rdi]
ja 0x1400edcec
lea rcx, [0x14097dd90]
movzx ebp, byte [r10 + rcx - 0x2b]
movzx edi, byte [r9 + rcx - 0x2b]
cmp r15b, 0x3d
jne 0x1400edc62
xor r9b, r9b
jmp 0x1400edc68
movzx r9d, byte [r15 + rcx - 0x2b]
cmp bl, 0x3d
jne 0x1400edc71
xor al, al
jmp 0x1400edc76
movzx eax, byte [rbx + rcx - 0x2b]
shl bpl, 2
movzx ecx, dil
shr cl, 4
movzx r10d, r9b
or cl, bpl
shl r10b, 6
mov byte [r12 + r13], cl
or r10b, al
inc r12d
cmp r15b, 0x3d
je 0x1400edcae
shr r9b, 2
shl dil, 4
or r9b, dil
mov byte [r12 + r13], r9b
inc r12d
mov rdi, qword [rsp + 0x48]
cmp bl, 0x3d
je 0x1400edcc8
mov byte [r12 + r13], r10b
inc r12d
cmp esi, 3
ja 0x1400eda1c
test r13, r13
je 0x1400edcd7
cmp dword [rdi], r12d
jbe 0x1400edcd7
mov byte [r12 + r13], 0
mov dword [rdi], r12d
xor eax, eax
jmp 0x1400edcf1
mov eax, 0xffffff66
jmp 0x1400edcf1
mov eax, 0xffffff7c
jmp 0x1400edcf1
mov eax, 0xffffff53
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
pop r15
pop r14
pop r13
pop r12
pop rdi
ret