Function at 0x14001bdd0
Capabilities:
Encode data using base64

Disassembly:
push rbp
push rdi
sub rsp, 0x48
mov rbp, rdx
mov rdi, rcx
test rcx, rcx
jne 0x14001bdeb
xor eax, eax
add rsp, 0x48
pop rdi
pop rbp
ret
mov qword [rsp + 0x68], rbx
mov edx, 1
mov rcx, rbp
mov qword [rsp + 0x38], r12
call fcn.14002f9e8
mov r12, rax
test rax, rax
jne 0x14001be11
xor ebx, ebx
jmp 0x14001c0d0
mov qword [rsp + 0x40], rsi
mov r8, rbp
mov rdx, rdi
mov qword [rsp + 0x28], r14
mov rcx, r12
call fcn.14002e590
xor ebx, ebx
xorps xmm0, xmm0
mov esi, ebx
cvtsi2sd xmm0, rbp
test rbp, rbp
jns 0x14001be42
addsd xmm0, qword [0x140056188]
divsd xmm0, qword [0x140056178]
call fcn.140037168
movsd xmm1, qword [0x140056180]
xor eax, eax
comisd xmm0, xmm1
jb 0x14001be76
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14001be76
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si rdi, xmm0
mov edx, 1
add rdi, rax
lea rcx, [rdi*4 + 1]
call fcn.14002f9e8
mov r14, rax
test rax, rax
je 0x14001c0c6
mov qword [rsp + 0x30], r13
mov r13d, ebx
mov byte [rax + rdi*4], bl
mov r9d, ebx
test rbp, rbp
je 0x14001c075
mov qword [rsp + 0x20], r15
mov rcx, rbx
mov qword [rsp + 0x78], rbx
mov rax, rbx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rax + r12]
inc esi
mov byte [rsp + rcx + 0x60], al
inc rcx
movzx r15d, byte [rsp + 0x62]
movzx r10d, byte [rsp + 0x61]
movzx r11d, byte [rsp + 0x60]
cmp rcx, 3
jne 0x14001bf8e
lea rsi, [0x140066260]
movzx ecx, r11b
and cl, 3
movzx eax, r11b
shr al, 2
add r13d, 4
movzx r8d, al
movzx eax, r10b
shr al, 4
shl cl, 4
add cl, al
mov byte [rsp + 0x70], r8b
movzx edi, cl
movzx eax, r15b
shr al, 6
movzx ecx, r10b
and cl, 0xf
mov byte [rsp + 0x71], dil
shl cl, 2
add cl, al
movzx eax, r15b
and al, 0x3f
movzx edx, cl
movzx ecx, al
movzx eax, byte [r8 + rsi]
mov r8, qword [rsp + 0x78]
mov byte [rsp + 0x73], cl
mov byte [rsp + 0x72], dl
mov byte [r8 + r14], al
movzx eax, byte [rdi + rsi]
mov byte [r8 + r14 + 1], al
movzx eax, byte [rdx + rsi]
mov byte [r8 + r14 + 2], al
movzx eax, byte [rcx + rsi]
mov esi, ebx
mov byte [r8 + r14 + 3], al
mov rcx, rbx
add r8, 4
mov qword [rsp + 0x78], r8
inc r9d
mov eax, r9d
cmp rax, rbp
jb 0x14001bed0
test esi, esi
je 0x14001c070
mov r8d, 3
cmp esi, r8d
jge 0x14001bfd9
mov eax, r8d
lea rdi, [rsp + 0x60]
sub eax, esi
movsxd rcx, eax
movsxd rax, esi
add rdi, rax
xor eax, eax
rep stosb byte [rdi], al
movzx r15d, byte [rsp + 0x62]
movzx r10d, byte [rsp + 0x61]
movzx r11d, byte [rsp + 0x60]
movzx eax, r11b
lea edi, [rsi + 1]
shr al, 2
and r11b, r8b
mov byte [rsp + 0x70], al
movzx eax, r10b
shr al, 4
and r10b, 0xf
shl r11b, 4
add r11b, al
shl r10b, 2
movzx eax, r15b
mov byte [rsp + 0x71], r11b
shr al, 6
and r15b, 0x3f
add r10b, al
mov byte [rsp + 0x73], r15b
mov byte [rsp + 0x72], r10b
movsxd rdx, edi
test edi, edi
jle 0x14001c058
movsxd rcx, r13d
add rcx, r14
add r13d, edi
lea rdi, [0x140066260]
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rsp + rbx + 0x70]
lea rcx, [rcx + 1]
inc rbx
movzx eax, byte [rax + rdi]
mov byte [rcx - 1], al
cmp rbx, rdx
jl 0x14001c040
cmp esi, r8d
jge 0x14001c070
movsxd rdi, r13d
mov eax, 0x3d
add rdi, r14
sub r8d, esi
movsxd rcx, r8d
rep stosb byte [rdi], al
mov r15, qword [rsp + 0x20]
mov r13, qword [rsp + 0x30]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [r14 + rcx], 0
jne 0x14001c081
inc rcx
mov edx, 1
call fcn.14002f9e8
mov rbx, rax
mov rax, r14
mov rdx, rbx
sub rdx, r14
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rax]
mov byte [rdx + rax], cl
lea rax, [rax + 1]
test cl, cl
jne 0x14001c0b0
mov rcx, r14
call fcn.14002fc28
mov rsi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x28]
mov rcx, r12
call fcn.14002fc28
mov r12, qword [rsp + 0x38]
mov rax, rbx
mov rbx, qword [rsp + 0x68]
add rsp, 0x48
pop rdi
pop rbp
ret