vi espongo gli ultimi risultati (per ora senza sbocco

) sull'analisi del file LWD.
nell'immagine seguente c'e' il primo blocco (quello che inizia all'offset 0x0800) di un file originale PSA:
il primo numero evidenziato (offset 0x0010 rispetto all'inizio del blocco) e' la lunghezza dei byte che seguono, quindi questo blocco termina a 0x1640+0x0814 = 0x1E54 in cui troviamo ancora 4 byte che dovrebbero essere un checksum32.
il secondo numero evidenziato (offset 0x0034 rispetto all'inizio del blocco) per me e' l'offset in cui inizia una tabella di word, mentre il terzo numero evidenziato (offset 0x0040 rispetto all'inizio del blocco) e' l'offset in cui iniziano i dati veri e propri.
in questo caso
inizio tabella = 0x0048
inizio dati = 0x0120
lunghezza tabella = ( 0x0120-0x0048 )/2 = 0x006C (108 decimale) word
le word di questa tabella contengono a loro volta degli offset all'interno dei byte che seguono.
l'ultimo numero evidenziato (0x1630) e' il numero piu' alto in tabella, ossia un numero minore della dimensione del blocco che e' 0x1640, questo avvalora l'idea che i numeri in tabella siano offset all'interno dei dati che seguono, calcolati a partire dall'inizio del blocco.
tanto per conplicare la vita a noi poveri hacker della domenica, alcune posizioni della tabella contengono pero' o zero, o un valore inferiore all'inizio dei dati (in questo caso 0x0120), mentre tutti gli offset maggiori o uguali all'inizio dei dati, puntano a byte con il bit 7 alto.
tutti i blocchi che ho esaminato fino ad ora hanno questa struttura.
a cosa serva la tabella, e soprattutto come si interpretano i bytes seguenti, questo ancora non lo so
