hola
@CybermadnessPucha, realmente todo depende del formato. Un archivo .dat realmente no significa nada, porque es la extensión de data, entonces tienes que saber un poco más del archivo, de su origen, etc.
Tal como
@vrivri dijo, hay una técnica fácil, y bastante conocida (que yo no la sé, pero está dando vuelta desde hace mucho tiempo por internet) de como descomprimir los dat hechos con bgt, porque usan una compresión bien estándar de ciertos desarrollos con c++.
ya por otros formatos, depende realmente de su origen. si son archivos afs, adx, xnb, etc. Hay que hacer una búsqueda en google siempre dependiendo del formato.