prevSlice = currSlice;
currSlice = timeline.getSlice(i);
//filling type of destination register
String dstType = "(UNKNOWN)";
OpcodeData opcodeData = instruction.getOpcodeData();
if(opcodeData.getType() == OpcodeData.TYPE_GET) {
//TODO: handle aget*
List<SmaliCodeEntity> args = instruction.getArguments();
FieldRef srcField = (FieldRef) args.get(args.size() - 1);
dstType = srcField.getType();
} else if(opcodeData.getType() == OpcodeData.TYPE_CONST) {
if(opcodeData.getOpcode() == Opcodes.OP_CONST_STRING)
dstType = "Ljava/lang/String;";
else
dstType = "(BY CONST)";
} else if(opcodeData.getType() == OpcodeData.TYPE_NEW) {
if(opcodeData.getOpcode() == Opcodes.OP_NEW_INSTANCE) {
List<SmaliCodeEntity> args = instruction.getArguments();
ClassRef srcClass = (ClassRef) args.get(args.size() - 1);
dstType = srcClass.getName();
} else
dstType = "(BY NEW)";