Be warned - imul multiplies two signed integers...so you may get dodgy results with higher numbers.