Прошу проверить arraybuffer Reader
(function(global){
var FOpen = function(arraybuffer){
this.bin = arraybuffer;
this.off = 0;
}
FOpen.prototype.read = function(b,l,o){
if(!o) o = 0;
if(!l) l = b.lenght;
var u8 = new Uint8Array(this.bin,this.off,l);
b.set(new b.constructor(new Uint8Array(u8).buffer),o);
this.off += l;
}
FOpen.prototype.seek = function(l){
this.off += l;
}
global.FOpen = FOpen;
})(this);