Without checking for integer overflow, invalid members can be added, if
the calculated key overflows, becomes positive and the largest key.
This fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=7560
While looking at the code, the check below also could potentially be
problematic, in case we have only negative indices, with the difference
between smallest and largest bigger than Factor.
// The largest index is always less than the interleave factor.
if (Index >= static_cast<int>(Factor))