- Suppose $a,b\in\mathbb{Z}$. If $a^2(b^2-2b)$ is odd, then $a$ and $b$ are odd.
Assume not, that is either $a$ is not odd or $b$ is not odd. Wlog, assume $a$ is even. So $a^2$ is even. Let $(b^2-2b)=x$. Then, $a^2 x=a^2(b^2-2b)$ is even, contradiction.
Can you check my proof?
Your proof is problematic.
You can't assume without loss of generality that $a$ is even because there's no symmetry between $a$ or $b$ in this question (Edit: see also @Bill Dubuque comment below).
Instead you have to check both cases separately. Indeed, if $a$ is even then $a^2(b^2-2b)$ is even as you said.
Now if $b$ is even can you show that $a^2(b^2-2b)$ is also even?
Once you do, you're done. Because you showed that if either $a$ or $b$ is even, then $a^2(b^2-2b)$ is even which is equivalent (using a proof by contradiction) to the statement in the question.