This is certainly a reasonable guess, haukex, and it certainly could be correct. I hope that the OP will elect to elaborate further to remove all doubt.
Certainly, the file appears to consist of hexadecimal data, and I would treat it as such in conversion – if only to quickly and reliably detect any problems in the input file itself. Then, the “valid” values, now converted to a stream 32-bit integer quantities, would be those that fall within a particular numeric range. Any anomalies, likewise, could now be tackled in the context of that now-successfully-decoded integer (not text ...) data stream.
In general, does not make good sense to me to attack the file with regular expressions that consider only characters, when a stronger definition of the file’s expected format is that it consists of hexadecimal-encoded integers ... representative of an original data stream which also consisted of integers. “The strings,” one might safely say here, “are merely the encoding” of the actual data-of-interest, and therefore should not be the first object of the attack.