Home Mac OS Rilasciato PS4 GTA V Native Updater

[Scena PS4] Rilasciato PS4 GTA V Native Updater

391
0

Il developer 2much4u ha realizzato un nuovo script IDA in python che ci permette di aggiornare gli indirizzi nativi per le nuove versioni di gioco di Grand Theft Auto V.

Rockstar Games randomizza gli hash nativi in ogni nuova versione di GTA V. Gli strumenti di modding hanno bisogno di questi nuovi hash per determinare quale indirizzo chiamare per una data funzione nativa.

Questo script IDA genererà il file natives.h per qualsiasi nuova versione di GTA V da utilizzare in progetti come Native Caller o Menu Base. Per maggiori informazioni leggere il file README per Native Caller.

Utilizzo

  • Caricare il file EBOOT di GTA V in IDA Pro (7.0+).
  • Selezionare File -> File script e selezionare questo script.
  • Selezionare un file crossmap.

Un file crossmap è un file di testo che rappresenta una mappa dagli hash nativi di una versione precedente di GTA V agli hash nativi di una nuova versione. Questi possono essere trovati comunemente online con una rapida ricerca su Google per qualsiasi versione di GTA V. Il formato del file dovrebbe essere:

0xOLDHASH,0xNEWHASH
0xOLDHASH2,0xNEWHASH2
0xOLDHASH3,0xNEWHASH3
...

Selezionare la funzione registerNative

Questa è una funzione utilizzata nel binario del gioco per registrare i nativi. Dovrai trovarlo da solo, ma è abbastanza facile da trovare. Per trovarlo, cerca byte con ALT+B in IDA per uno qualsiasi dei nuovi hash nel file crossmap.

Qualsiasi hash andrà oltre i nativi di SYSTEM. Vedere più informazioni sui nativi di SYSTEM più avanti. Dopo aver cercato il modello di byte, dovresti trovare un risultato simile a questo:

...
lea     rsi, sub_1065770          # native function
mov     rdi, 97C63D95072367BAh    # hash searched for
call    sub_228BC10               # registerNative
lea     rdi, loc_1065260
call    nullsub_581
lea     rsi, loc_1065850          # native function
mov     rdi, 0AFEFADC285965BBEh   # native hash
call    sub_228BC10               # registerNative
lea     rdi, sub_1065270
call    nullsub_581
lea     rsi, sub_1065870          # native function
mov     rdi, 89F38C325D9E03E7h    # native hash
call    sub_228BC10               # registerNative
...

In questo esempio, sub_228BC10 è la funzione registerNative. Questa è la funzione che desideri selezionare quando richiesto da questo script.

Selezione di un file header nativo

Questo è un file natives.h pulito scaricato da nativedb, è sempre possibile trovare l’ultima versione di questo file su: http://www.dev-c.com/nativedb/natives.h

Questo è tutto! Lo script è finito

Dovresti aspettarti un output da IDA che assomigli a questo:

Found 6166 natives in crossmap
Found 6160 natives in EBOOT
Merged 6140 natives in the maps
Failed to find address for 0xae3fee8709b39dcbL
Failed to find address for 0x64e630faf5f60f44L
Failed to find address for 0x7eec2a316c250073L
Failed to find address for 0x80e4a6eddb0be8d9L
Failed to find address for 0xa306f470d1660581L
Failed to find address for 0x966c2bc2a7fe3f30L
Failed to find address for 0x676ed266aadd31e0L
Failed to find address for 0x77faddcbe3499df7L
newHeader.h created
Unable to replace 8 natives

Il file newHeader.h può essere trovato nella stessa directory del database IDA. Il valore esadecimale 0xDEADBEEF verrà inserito per qualsiasi nativo per cui questo script non è in grado di trovare un indirizzo di funzione.

(Facoltativo) Correggere l’intestazione da utilizzare in Native Caller

Per l’utilizzo in PS4 GTA V Native Caller, dovrete andare a sostituire:

#include "types.h"
#include "nativeCaller.h"

All’interno dell’output newHeader.h di questo script con:

#include "invoker.h"

Prima di sostituire il file PS4-GTA-V-Native-Caller/gtaPayload/include/natives.h.

Note sui nativi SYSTEM

Alcune mappe incrociate includono nativi SYSTEM e altre no. Questi nativi non cambiano gli hash tra le versioni di GTA V e vengono registrati utilizzando una funzione diversa rispetto a registerNative annotato in precedenza.

Questo script troverà automaticamente questa diversa funzione di registrazione e troverà i nativi SYSTEM utilizzando un elenco di hash codificato.

Download: PS4 GTA V Native Updater

Download: Source code PS4 GTA V Native Updater

Fonte: twitter.com

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.