code: public int []getSwitchTargets()
    {
      switch (getOpcode()) {
      case TABLESWITCH:
        {
          int arg = _offset + 1;
          arg += (4 - arg % 4) % 4;
  
          int low = getInt(arg + 4);
          int high = getInt(arg + 8);
  
          int []targets = new int[high - low + 2];
          targets[0] = getInt(arg) + _offset;
  
          for (int i = 0; i <= high - low; i++) {
            targets[i + 1] = getInt(arg + 12 + i * 4) + _offset;
          }
  
          return targets;
        }
        
      case LOOKUPSWITCH:
        {
          int arg = _offset + 1;
          arg += (4 - arg % 4) % 4;
  
          int n = getInt(arg + 4);
  
          int []targets = new int[n + 1];
          targets[0] = getInt(arg) + _offset;
  
          for (int i = 0; i < n; i++) {
            int off = arg + 8 + i * 8 + 4;
  
            targets[i + 1] = getInt(off) + _offset;
          }
  
          return targets;
        }
  
      default:
        throw new UnsupportedOperationException("getSwitchTargets");
      }
    }
docs: Returns the branch target.