code: function getIntFromBuffer (buffer, start, end) {
    var sum = 0
    var sign = 1
  
    for (var i = start; i < end; i++) {
      var num = buffer[i]
  
      if (num < 58 && num >= 48) {
        sum = sum * 10 + (num - 48)
        continue
      }
  
      if (i === start && num === 43) { // +
        continue
      }
  
      if (i === start && num === 45) { // -
        sign = -1
        continue
      }
  
      if (num === 46) { // .
        // its a float. break here.
        break
      }
  
      throw new Error('not a number: buffer[' + i + '] = ' + num)
    }
  
    return sum * sign
  }
docs: replaces parseInt(buffer.toString('ascii', start, end)).
  For strings with less then ~30 charachters, this is actually a lot faster.
  
  @param {Buffer} data
  @param {Number} start
  @param {Number} end
  @return {Number} calculated number