It looks like the very beginning of the gcmesh_pc file contains the index list, starting on byte 16.
gcmesh format:
int crc
byte padding[12]
It could be specifying triangle lists, but it seems odd that it contains degenerate faces. Or perhaps the second set of 3 numbers means something else.
it looks like this for the brute minigun:
0, 1, 2, 2, 3, 3, 3, 4, 5, 5, 6, 6, 6, 7, 8, 8, 9, 9, 9, 10, 11, 11, 12, 12, 12, 13, 14, 14, 15, 15, 15, 16, 17, 12, 12, 18, 18, 19, 20, 19, 21, 22
face:
0, 1, 2
2, 3, 3 (degenerate) or this data is something else
3, 4, 5
5, 6, 6 (degenerate)
6, 7, 8
8, 9, 9 (degenerate)
9, 10, 11
11, 12, 12 (degenerate)
12, 13, 14
14, 15, 15 (degenerate)
15, 16, 17
12, 12, 18 (degenerate)
18, 19, 20
19, 21, 22
I'd try connecting your vertices like that and see what happens.