This is going to overflow as its all computed as an int.  Also, the precedence of + and << isn't that widely known, so we prefer to wrap with () here to make the order of operations clear to everyone.

So instead:

  size = ((long)rawlstat[9]) + (((long)rawlstat[10]) << 32);

FWIW, given that almost everywhere else we use big endian ordering, its weird to see the high 32 bits of the size occur later in the array than the low 32 bits.