A missing facet if you're just looking at
>>3 is this preceding line:
local unsigned short bi_buf;
So not only is there an assumption of 8-bit bytes, but that unsigned short is at least the size of 2 chars.
But then the fuckers multiply by another 8 for no apparent reason.
THey're working with specific bit-level file formats and playing shitty games with C's exposing of potentially variable machine word widths. What dumbfucks.