Take Two -- Courtney’s Muller (using a while loop, and solve).

eps=10^(-6);
its=0;
nits=10;
Clear[a,b,c,x1,x2,x3,f1,f2,f3,f,r0,r1,r2];
muller[f]:=
	While[Abs[f3]>eps && its<nits,
its=its+1;
f1=f[x1];
f2=f[x2];
f3=f[x3];

Clear[a,b,c];
sol=Solve[a (x1^2) +b x1 +c ==f1 && a (x2^2) +b x2+c ==f2 && a (x3^2) +b x3+c ==f3,{a,b,c}];
a=a/.sol[[1]];
b=b/.sol[[1]];
c=c/.sol[[1]];
If[b≥0, r1=((2 c)/(-b-(Sqrt[(b^2)-4 a c]))),r1=((-b+(Sqrt[(b^2)-4 a c]))/(2 a))];

If[b≥0,r2=((-b-(Sqrt[(b^2)-4 a c]))/(2 a)), r2=((2 c)/(-b-(Sqrt[(b^2)-4 a c])))];

If[Abs[x3-r1]≥ Abs[x3-r2], r0=r2,r0=r1];
Print[r0];
Print[r1];
x1=x2;
x2=x3;
x3=r0;
Print[{a,b,c,x1,x2,x3,f1,f2,f3, r0,r1,r2}]];

f[x_]:=(E^x)-(1/(x^2))
Plot[{(E^x)-(1/(x^2)),-41.301(x^2)+70.091x-27.071}, {x,0,1}]
x1=0.3;
x2=0.5;
x3=1;
f1=f[x1];
f2=f[x2];
f3=f[x3];
muller[f]
{{x1,f1},{x2,f2},{x3,f3}}
Plot[{(E^x)-(1/(x^2)),a (x^2)+b x + c}, {x,0,1}]