Suppose there are infinitely many integers good for $f$, obviously we have $k_n<n$ and $f(n)$ is odd, using the LTE lemma we know that $v_2(f(n)^{k_n}-1) \le v_2(f(n)-1)+v_2(f(n)+1)+v_2(k_n)$, so at least one of $\{v_2(f(n)-1), v_2(f(n)+1),v_2(k_n)\}$ is greater than $\frac{1}{3}v_2(n!)$ for good $n$, as there are infinitely many ones of them we also know one of the following assertions is true :
$\bullet$ There infinitely $n$ such that $v_2(f(n)-1) >\frac{1}{3}v_2(n!)$
$\bullet$ There infinitely $n$ such that $v_2(f(n)+1) >\frac{1}{3}v_2(n!)$
$\bullet$ There infinitely $n$ such that $v_2(k_n) >\frac{1}{3}v_2(n!)$
We also know that for good $n$ sufficiently large $v_2(n!) =\sum_{k\ge 0} \left \lfloor \frac{n}{2^k} \right \rfloor \ge \frac{n}{2}$.
So if the first or the second assertion is true we know that for any sufficiently large $n$, $f(n)>2^{ \frac{n}{6}}$ which contradicts the polynomial asymptotic behavior of $f$. If the last assertion is true then we also have for sufficiently large $n$, $k_n>2^{ \frac{n}{6}}>n$.
Which gives a contradiction $\diamond$