No the line I commented on, wont if(*cb == 255) actually also work just as well in the first-case?
You get ing * 255 * ina >> 16, which should result in the same result, without any added branching in here?

Or?