code: public static final void bytesToInts( int[] dst, int dst_offset, byte[] src, int src_offset, int length ) {
          if ((src == null) || (dst == null) || ((src_offset + length) > src.length) || ((dst_offset + length) > (dst.length * 4))
                  || ((dst_offset % 4) != 0) || ((length % 4) != 0)) {
              croak("bytesToInts parameters are invalid"
                      + " src=="
                      + Arrays.toString(src)
                      + " dst=="
                      + Arrays.toString(dst)
                      + (((src == null) || (dst == null)) ? " " : (" (src_offset+length)>src.length==" + (src_offset + length)
                              + ">" + src.length + " (dst_offset+length)>(dst.length*4)==" + (dst_offset + length) + ">"
                              + (dst.length * 4) + " (dst_offset%4)==" + (dst_offset % 4) + " (length%4)==" + (length % 4)
                              + " dest.length==" + dst.length + " length==" + length)));
          }
  
          // Convert parameters to normal format
          int[] offset = new int[1];
          offset[0] = src_offset;
  
          int int_dst_offset = dst_offset / 4;
  
          for( int i = 0; i < (length / 4); ++i ) {
              dst[int_dst_offset++] = bytesToInt(src, offset);
          }
      }
docs: Convert an array of <code>bytes</code>s into an array of
  <code>ints</code>.
  
  @param dst the array to write
  @param dst_offset the start offset in <code>dst</code>, times 4. This
  measures the offset as if <code>dst</code> were an array of
  <code>byte</code>s (rather than <code>int</code>s).
  @param src the array to read
  @param src_offset the start offset in <code>src</code>
  @param length the number of <code>byte</code>s to copy.