in injector.c: (L995:)
if (result.length!=inj.last_len && inj.index<result.length-1) { inj.index++; } inj.last_len=result.length; inj.i.bytes[inj.index]++;
According to this, when the last iteration increases the instruction length, inj.index goes deeper only one byte and then do the increment from this byte, which is different from the deep-first instruction search algorithm described in the whitepaper that deeps to the end of the instruction.
Is this implementation reasonable, and if so, how shall I understand the principle of deeping only one byte no matter how long the instruction is lengthened in the last iteration.