Function at 0x14001d860
Capabilities:
Encode data using base64

Disassembly:
push rbx
push rbp
sub rsp, 0x48
mov rbp, rdx
mov rbx, rcx
test rcx, rcx
jne 0x14001d87b
xor eax, eax
add rsp, 0x48
pop rbp
pop rbx
ret
mov edx, 1
mov qword [rsp + 0x38], r12
mov rcx, rbp
call fcn.14003853c
mov r12, rax
test rax, rax
jne 0x14001d89c
xor ebx, ebx
jmp 0x14001db67
mov qword [rsp + 0x68], rsi
mov r8, rbp
mov qword [rsp + 0x40], rdi
mov rdx, rbx
mov rcx, r12
mov qword [rsp + 0x28], r14
call fcn.1400372c0
xor ebx, ebx
xorps xmm0, xmm0
mov edi, ebx
test rbp, rbp
js 0x14001d8cc
cvtsi2sd xmm0, rbp
jmp 0x14001d8e4
mov rax, rbp
mov rcx, rbp
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2sd xmm0, rcx
addsd xmm0, xmm0
divsd xmm0, qword [0x14005f160]
call fcn.140042984
movsd xmm1, qword [0x14005f168]
xor eax, eax
comisd xmm0, xmm1
jb 0x14001d918
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x14001d918
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si r14, xmm0
mov edx, 1
add r14, rax
lea rcx, [r14*4 + 1]
call fcn.14003853c
mov rsi, rax
test rax, rax
je 0x14001db58
mov qword [rsp + 0x30], r13
mov r13d, ebx
mov byte [rax + r14*4], bl
mov r10d, ebx
test rbp, rbp
je 0x14001db14
mov qword [rsp + 0x20], r15
mov rcx, rbx
mov qword [rsp + 0x78], rbx
mov rax, rbx
nop word [rax + rax]
movzx eax, byte [rax + r12]
inc edi
mov byte [rsp + rcx + 0x60], al
inc rcx
movzx r15d, byte [rsp + 0x62]
movzx r11d, byte [rsp + 0x61]
movzx r14d, byte [rsp + 0x60]
cmp rcx, 3
jne 0x14001da30
lea rdi, [0x140071290]
movzx ecx, r14b
and cl, 3
movzx eax, r14b
shr al, 2
add r13d, 4
movzx r9d, al
movzx eax, r11b
shr al, 4
shl cl, 4
add cl, al
mov byte [rsp + 0x70], r9b
movzx r8d, cl
movzx eax, r15b
shr al, 6
movzx ecx, r11b
and cl, 0xf
mov byte [rsp + 0x71], r8b
shl cl, 2
add cl, al
movzx eax, r15b
and al, 0x3f
movzx edx, cl
movzx ecx, al
movzx eax, byte [r9 + rdi]
mov r9, qword [rsp + 0x78]
mov byte [rsp + 0x73], cl
mov byte [rsp + 0x72], dl
mov byte [r9 + rsi], al
movzx eax, byte [r8 + rdi]
mov byte [r9 + rsi + 1], al
movzx eax, byte [rdx + rdi]
mov byte [r9 + rsi + 2], al
movzx eax, byte [rcx + rdi]
mov edi, ebx
mov byte [r9 + rsi + 3], al
mov rcx, rbx
add r9, 4
mov qword [rsp + 0x78], r9
inc r10d
mov eax, r10d
cmp rax, rbp
jb 0x14001d970
test edi, edi
je 0x14001db0f
mov ebp, 3
cmp edi, ebp
jge 0x14001da7b
mov eax, ebp
lea rcx, [rsp + 0x60]
sub eax, edi
xor edx, edx
movsxd r8, eax
movsxd rax, edi
add rcx, rax
call fcn.1400376d0
movzx r11d, byte [rsp + 0x61]
movzx r15d, byte [rsp + 0x62]
movzx r14d, byte [rsp + 0x60]
movzx eax, r14b
lea r8d, [rdi + 1]
shr al, 2
and r14b, bpl
mov byte [rsp + 0x70], al
movzx eax, r11b
shr al, 4
and r11b, 0xf
shl r14b, 4
add r14b, al
shl r11b, 2
movzx eax, r15b
mov byte [rsp + 0x71], r14b
shr al, 6
and r15b, 0x3f
add r11b, al
mov byte [rsp + 0x73], r15b
mov byte [rsp + 0x72], r11b
movsxd rdx, r8d
test r8d, r8d
jle 0x14001daf9
movsxd rcx, r13d
add rcx, rsi
add r13d, r8d
lea r8, [0x140071290]
nop dword [rax + rax]
movzx eax, byte [rsp + rbx + 0x70]
lea rcx, [rcx + 1]
inc rbx
movzx eax, byte [rax + r8]
mov byte [rcx - 1], al
cmp rbx, rdx
jl 0x14001dae0
cmp edi, ebp
jge 0x14001db0f
sub ebp, edi
movsxd rcx, r13d
add rcx, rsi
movsxd r8, ebp
mov dl, 0x3d
call fcn.1400376d0
mov r15, qword [rsp + 0x20]
mov r13, qword [rsp + 0x30]
mov rcx, 0xffffffffffffffff
inc rcx
cmp byte [rsi + rcx], 0
jne 0x14001db20
inc rcx
mov edx, 1
call fcn.14003853c
mov rbx, rax
mov rax, rsi
mov rdx, rbx
sub rdx, rsi
movzx ecx, byte [rax]
mov byte [rdx + rax], cl
lea rax, [rax + 1]
test cl, cl
jne 0x14001db42
mov rcx, rsi
call fcn.140038520
mov rdi, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x68]
mov r14, qword [rsp + 0x28]
mov rcx, r12
call fcn.140038520
mov r12, qword [rsp + 0x38]
mov rax, rbx
add rsp, 0x48
pop rbp
pop rbx
ret