Esto es todo lo que he encontrado hasta ahora:
Sólo mantener la alimentación de la serpiente con su propia cola. Como señaló $f(f(1))=1$. Así que con $x=y=f(1)$, vemos que $1=f(f(1))=(f(1))^2$, de modo que $f(1)=\pm 1$. Como casi correctamente dicho, hemos de $y=f(1)$ que
$$
f(x)+f(f(x)f(1))=2xf(1)
$$
que de hecho se muestra que el $f$ es inyectiva. Con esa observación, la observación del Pp.. funciona a la conclusión de que la $f$ es extraño dado que $f(xf(x))=x^2=f(-xf(-x))$ implica entonces $f(x)=-f(-x)$.
Ahora, si sabíamos que $f$ fue un polinomio sería fácil conlude que $f(xf(x))=x^2$ implica $\deg f(\deg f+1)=2$ $f$ tiene grado 1 en ese caso. Desde $f(0)=0$$f(1)=\pm 1$, que luego se implican $f(x)=\pm x$.
Pero si $f$ no es un polinomio, todo lo que puedo decirte en este momento es que $f$ es inyectiva, función odd con $f(0)=0$ $f(1)=\pm 1$ y un bucnh de las ecuaciones funcionales conectados a él. Tal vez alguien más puede elaborar más ...