demux: asf: fix variable length reading.

While current spec doesn't make use of > WORD sizes,
the code was following the spec and reading variable length
up to 3 bytes precision and writing it to a (int *)...
This patch fixes signedness too.