not sure, I didn't delve that far in, that is a rabbit hole for you ;) also the 4 bytes after MEMB+24 4 Unsigned Int Vertex section length is the number of face indices (if you didn't know already)
yep alternating.... my mxs code faceindices = for f = 1 to nindices collect ( 1 + ReadShort bstream unsigned; ) faces = for f = 1 to faceindices.count - 2 collect ( face = [0,0,0]; face.x = faceindices[f+2]; face.y = faceindices[f+1]; face.z = faceindices[f]; if mod f 2 == 0 then swap face.x face.y face )