Let $P(x,y):f(xf(y)-yf(x))=f(xy)-xy$
$P(x,0):f(xf(0))=f(0)$.If $f(0)\neq 0$ then $f(x)=f(0)\forall x$ which is impossible ($c=c-xy\Rightarrow...$)
So $f(0)=0$,$P(x,x):f(0)=f(x^2)-x^2\Leftrightarrow f(x^2)=x^2\Leftrightarrow f(x)=x,x\geq 0$
$P(x,1):f(x-f(x))=f(x)-x,P(1,x):f(f(x)-x)=f(x)-x\Leftrightarrow f(x-f(x))=f(f(x)-x)=f(x)-x$
Let $x_1<0$.If $x_1\geq f(x_1)$ then $x_1-f(x_1)\geq 0$ so $f(x_1)-x_1=f(x_1-f(x_1))=x_1-f(x_1)\Leftrightarrow x_1=f(x_1)$
so $x\leq f(x),x<0$
Let $x_1>0>y_1$,$P(x_1,y_1):f(x_1f(y_1)-x_1y_1)=f(x_1y_1)-x_1y_1$,but $f(y_1)\geq y_1$ so $f(x_1f(y_1)-x_1y_1)=x_1f(y_1)-x_1y_1\Rightarrow xf(y)=f(xy),x>0>y$
Set $x_1\rightarrow -y_1,y_1\rightarrow -x_1$ :$-y_1f(-x_1)=f(x_1y_1)=x_1f(y_1)\overset{x_1=1}{\Rightarrow }-y_1f(-1)=f(y_1)$ so $f(x)=-xf(-1),x<0$
Let $x_2<0<y_2$,$P(x_2,y_2):f(x_2y_2-(-x_2)f(-1)y_)=f(x_2y_2)-x_2y_2$.But $f(x_2)\geq x_2$ so $f(-1)(f(x_2)y_2-x_2y_2)=-x_2y_2f(-1)-x_2y_2\Leftrightarrow...\Leftrightarrow f(-1)=\pm 1$
If $f(-1)=-1 $ then $f(x)=-x(-1)=x,x<0$ so $\boxed{f(x)=x\forall x\in \mathbb{R}}$ which is a accepted solution.
If $f(-1)=1$ then $f(x)=-x,x<0$ so $\boxed{f(x)=|x|\forall x\in \mathbb{R}}$ which is a accepted solution.