
La técnica del Escaneo Relativo por HeXPLuS
La clásica técnica de invertir valores, restar 200 hex, o como sea (la verdad no la uso nunca), no es regla y existen valores que jamás vas a encontrar así y lo que vas a hacer es frustrarte.
Aquí pongo una manera práctica, simple y rápida para encontrar tablas de punteros.
Como ya saben en una tabla de punteros hay un valor que cambia su valor constantemente y otro que no tanto, de la forma:
00 D0 07 D0 0E D0... ---> en este caso el byte segundo es el que casi no cambia.
Los datos de la tabla de punteros son de acuerdo a los diálogos, así los bytes que están entre uno y otro díalogo son los que nos van a dar la información que necesitamos para poder encontrar nuestra tabla de punteros.
Una manera excelente de buscar tablas de punteros es hacerlo relativamente. Como ya indiqué el cálculo de punteros se basa en la posición de inicio de texto y en la cantidad de bytes que hay de ahí al siguiente diálogo. Así que con estos datos tienes que los bytes que cambiarían en la tabla de punteros son los primeros dos, entonces con el translhextion haces un "scan" relativo con esos datos, por ejemplo, que el cálculo entre diálogo y diálogo dió: 00, 07, 0E, 17, 22, 2B; ésto antes de llegar a FF(Ésto NO es la tabla de punteros, son los valores calculados entre diálogo y díalogo, repito). Entonces el "scan" relativo lo hacés así:
Nota: La opción "Value Scan Relative" del Translhextion la accedes mediante el menú "Search".

Pasos a seguir:
1. En la caja de texto de Values pones "00" que es nuestro primer valor a buscar y presionas Add Value, esto con (*) Hex seleccionado.
2. Presionas el botón Skip Value, pues no sabemos cuál va a ser
3. Repetimos el punto 1, pero con el valor "07"
3. Repetimos el punto 2
4. Repetimos el punto 1, pero con el valor "0E"
Nota: Nos saltamos un valor pues es el valor que casi no cambia, en la tabla de punteros: 00 XX 07 XX 0E .... ojalá quede claro.
Con esos tres valores es suficiente, ahora presionas el botón "Scan, te va a dar varios resultados:

Éstos resultados los puedes guardar en un archivo .txt que puedes consultar, recomiendo hacerlo.
Si ves el archivo, puedes ir y buscar algo que parezca una tabla de punteros, con el patrón que un byte cambia significativamente y el otro permanece casi siempre igual, encontramos entoces este valor:
Offset: 86390=0x15176
Hex Data: 00 D0 07 D0 0E
ASCII Data:
Relative Offsets: A=?? a=?? 1=??
y ¡bingo!, ¡ésa es nuestra tabla de punteros! que está exactamente en la dirección u offset 0x15176, más fácil no puede ser.

Ésta técnica no se por qué nadie la había explicado, es mejor que cualquier otra. ^^
Si alguno cree que tengo que ampliar detalles en alguna parte, que me lo indique y lo haré con gusto lo antes que me sea posible.
xFF+





Gracias!!