static int uint(byte[] data, int offset) { return sint(data, offset); }
case kFmt30t: case kFmt31t: target = offset + sint(insns, u1offset + 2); if (target < 0 || target * 2 > insns.length ) { throw new BadOpException("jump out of insns %s -> %04x", op, target); int u1SwitchData = 2 * (offset + sint(insns, u1offset + 2)); if (u1SwitchData + 2 < insns.length) { int b = u1SwitchData + 8;// targets for (int i = 0; i < size; i++) { target = offset + sint(insns, b + i * 4); if (target < 0 || target * 2 > insns.length ) { throw new BadOpException("jump out of insns %s -> %04x", op, target); int b = u1SwitchData + 4 + 4 * size;// targets for (int i = 0; i < size; i++) { target = offset + sint(insns, b + i * 4); if (target < 0 || target * 2 > insns.length ) { throw new BadOpException("jump out of insns %s -> %04x", op, target);
target = offset + sint(insns, u1offset + 2); dcv.visitJumpStmt(op, -1, -1, labelsMap.get(target)); break; case kFmt31t: target = offset + sint(insns, u1offset + 2); a = ubyte(insns, u1offset + 1); int u1SwitchData = 2 * target; int[] data = new int[size]; for (int i = 0; i < size; i++) { data[i] = sint(insns, u1SwitchData + 8 + 4 * i); int z = u1SwitchData + 4; for (int i = 0; i < size; i++) { keys[i] = sint(insns, z + i * 4); labels[i] = labelsMap.get(offset + sint(insns, z + i * 4)); int first_key = sint(insns, u1SwitchData + 4); DexLabel labels[] = new DexLabel[size]; int z = u1SwitchData + 8; for (int i = 0; i < size; i++) { labels[i] = labelsMap.get(offset + sint(insns, z)); z += 4; b = sint(insns, u1offset + 2); if (op == Op.CONST) { dcv.visitConstStmt(op, a, b);
static int uint(byte[] data, int offset) { return sint(data, offset); }
case kFmt30t: case kFmt31t: target = offset + sint(insns, u1offset + 2); if (target < 0 || target * 2 > insns.length ) { throw new BadOpException("jump out of insns %s -> %04x", op, target); int u1SwitchData = 2 * (offset + sint(insns, u1offset + 2)); if (u1SwitchData + 2 < insns.length) { int b = u1SwitchData + 8;// targets for (int i = 0; i < size; i++) { target = offset + sint(insns, b + i * 4); if (target < 0 || target * 2 > insns.length ) { throw new BadOpException("jump out of insns %s -> %04x", op, target); int b = u1SwitchData + 4 + 4 * size;// targets for (int i = 0; i < size; i++) { target = offset + sint(insns, b + i * 4); if (target < 0 || target * 2 > insns.length ) { throw new BadOpException("jump out of insns %s -> %04x", op, target);
target = offset + sint(insns, u1offset + 2); dcv.visitJumpStmt(op, -1, -1, labelsMap.get(target)); break; case kFmt31t: target = offset + sint(insns, u1offset + 2); a = ubyte(insns, u1offset + 1); int u1SwitchData = 2 * target; int[] data = new int[size]; for (int i = 0; i < size; i++) { data[i] = sint(insns, u1SwitchData + 8 + 4 * i); int z = u1SwitchData + 4; for (int i = 0; i < size; i++) { keys[i] = sint(insns, z + i * 4); labels[i] = labelsMap.get(offset + sint(insns, z + i * 4)); int first_key = sint(insns, u1SwitchData + 4); DexLabel labels[] = new DexLabel[size]; int z = u1SwitchData + 8; for (int i = 0; i < size; i++) { labels[i] = labelsMap.get(offset + sint(insns, z)); z += 4; b = sint(insns, u1offset + 2); if (op == Op.CONST) { dcv.visitConstStmt(op, a, b);