DSolve[-(y[x]^2*(-1 + x^2*y[x])) + 2*x^2*y[x]^2*(-x + y[x])*Derivative[1][y][x] + x^2*(-1 + x*y[x]^2)*Derivative[1][y][x]^2 == 0,y[x],x]