Function at 0x140025000
Capabilities:
Encode data using base64

Disassembly:
push rdi
push r15
sub rsp, 0x58
mov r15, rdx
mov rdi, rcx
test rcx, rcx
jne 0x14002501d
xor eax, eax
add rsp, 0x58
pop r15
pop rdi
ret
mov qword [rsp + 0x78], rbx
mov edx, 1
mov qword [rsp + 0x50], rbp
mov rcx, r15
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r14
call fcn.14002f9e8
mov r13, rax
test rax, rax
jne 0x140025057
xor ebx, ebx
jmp 0x140025323
mov r8, r15
mov rdx, rdi
mov rcx, r13
call fcn.14002e590
xor ebx, ebx
xorps xmm0, xmm0
mov ebp, ebx
cvtsi2sd xmm0, r15
test r15, r15
jns 0x14002507e
addsd xmm0, qword [0x140056188]
divsd xmm0, qword [0x140056178]
call fcn.140037168
movsd xmm1, qword [0x140056180]
xor eax, eax
comisd xmm0, xmm1
jb 0x1400250b2
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400250b2
movabs rcx, 0x8000000000000000
mov rax, rcx
cvttsd2si rdi, xmm0
mov rsi, 0xffffffffffffffff
lea edx, [rsi + 2]
add rdi, rax
shl rdi, 2
mov rcx, rdi
add rcx, 1
cmovb rcx, rsi
call fcn.14002f9e8
mov r14, rax
test rax, rax
je 0x140025323
mov byte [rax + rdi], bl
mov edi, ebx
mov dword [rsp + 0x88], ebx
mov r9d, ebx
test r15, r15
je 0x1400252d5
mov qword [rsp + 0x20], rbx
lea rsi, [0x14005aaf0]
mov rcx, rbx
mov rax, rbx
nop
movzx eax, byte [rax + r13]
inc ebp
mov byte [rsp + rcx + 0x70], al
inc rcx
movzx r12d, byte [rsp + 0x72]
movzx r10d, byte [rsp + 0x71]
movzx r11d, byte [rsp + 0x70]
cmp rcx, 3
jne 0x1400251e0
movzx ecx, r11b
movzx eax, r11b
shr al, 2
and cl, 3
movzx r8d, al
mov ebp, ebx
shl cl, 4
movzx eax, r10b
shr al, 4
add cl, al
mov byte [rsp + 0x80], r8b
movzx edi, cl
movzx eax, r12b
shr al, 6
movzx ecx, r10b
and cl, 0xf
mov byte [rsp + 0x81], dil
shl cl, 2
add cl, al
movzx eax, r12b
and al, 0x3f
movzx edx, cl
movzx ecx, al
movzx eax, byte [r8 + rsi]
mov r8, qword [rsp + 0x20]
mov byte [rsp + 0x83], cl
mov byte [rsp + 0x82], dl
mov byte [r8 + r14], al
movzx eax, byte [rdi + rsi]
mov edi, dword [rsp + 0x88]
mov byte [r8 + r14 + 1], al
add edi, 4
movzx eax, byte [rdx + rsi]
mov byte [r8 + r14 + 2], al
movzx eax, byte [rcx + rsi]
mov rcx, rbx
mov byte [r8 + r14 + 3], al
add r8, 4
mov qword [rsp + 0x20], r8
mov dword [rsp + 0x88], edi
inc r9d
mov eax, r9d
cmp rax, r15
jb 0x140025110
mov rsi, 0xffffffffffffffff
test ebp, ebp
je 0x1400252d5
movsxd rax, ebp
cmp rax, 3
jge 0x14002522c
jae 0x140025354
mov byte [rsp + rax + 0x70], bl
inc rax
cmp rax, 3
jl 0x140025207
movzx r12d, byte [rsp + 0x72]
movzx r10d, byte [rsp + 0x71]
movzx r11d, byte [rsp + 0x70]
movzx eax, r11b
lea r8d, [rbp + 1]
shr al, 2
and r11b, 3
mov byte [rsp + 0x80], al
movzx eax, r10b
shr al, 4
and r10b, 0xf
shl r11b, 4
add r11b, al
shl r10b, 2
movzx eax, r12b
mov byte [rsp + 0x81], r11b
shr al, 6
and r12b, 0x3f
add r10b, al
mov byte [rsp + 0x83], r12b
mov byte [rsp + 0x82], r10b
movsxd rdx, r8d
test r8d, r8d
jle 0x1400252bc
movsxd rcx, edi
add rcx, r14
add edi, r8d
lea r8, [0x14005aaf0]
nop word [rax + rax]
movzx eax, byte [rsp + rbx + 0x80]
lea rcx, [rcx + 1]
inc rbx
movzx eax, byte [rax + r8]
mov byte [rcx - 1], al
cmp rbx, rdx
jl 0x1400252a0
cmp ebp, 3
jge 0x1400252d5
movsxd rdi, edi
mov ecx, 3
add rdi, r14
mov eax, 0x3d
sub ecx, ebp
rep stosb byte [rdi], al
mov rcx, rsi
nop dword [rax + rax]
inc rcx
cmp byte [r14 + rcx], 0
jne 0x1400252e0
add rcx, 1
mov edx, 1
cmovb rcx, rsi
call fcn.14002f9e8
mov rbx, rax
nop
cmp byte [r14 + rsi + 1], 0
lea rsi, [rsi + 1]
jne 0x140025300
lea rdx, [rsi + 1]
mov r8, r14
mov rcx, rax
call fcn.14002fbc8
mov rcx, r14
call fcn.14002fc28
mov rcx, r13
call fcn.14002fc28
mov r13, qword [rsp + 0x38]
mov rax, rbx
mov rbx, qword [rsp + 0x78]
mov r12, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
mov r14, qword [rsp + 0x30]
add rsp, 0x58
pop r15
pop rdi
ret
call fcn.14002d6ec
int3