diff --git a/dataType.js b/dataType.js
index <HASH>..<HASH> 100644
--- a/dataType.js
+++ b/dataType.js
@@ -33,7 +33,7 @@ function Data(buffer,offset){
 			b = this.getUint8();
 			ret |= ((b & 127) << shift);
 		}
-		return ret*shift;
+		return ret*sign;
 	};
 	this.getUint16 = function(){
 		var out = this.data.getUint16(this.offset,true);
@@ -56,4 +56,4 @@ function Data(buffer,offset){
 		return out;
 	};
 }
-module.exports = Data;
\ No newline at end of file
+module.exports = Data;
Fix varint() for several bytes values

Completely untested, but there was an obvious error.