filled-new-array/range instruction rewritten as filled-new-aray instruction
ASMDex tends to rewrite Filled-new-array-range instructions as filled-new-array.
Bug: >>Number greater than 16<< cannot be stored in 4-bit register exception is
thrown with "Apks" which have filled-new-array/range instructions which access
registers greater than 16 .
Cause (In ASMDex) : Instruction.test4bitslimit method fails.
Specific Cause (in ASMDex) : visitMultiNewArray Instruction is being called
even for filled-new-array/range instruction which rewrites the instruction as
filled-new-array in the transformed dex file.
I have included a test apk which fails. You dont have to do any sort of
instrumentation. Just use ASmDex to write the dex as is into a new file.