Annexe technique · Accueil · English
Il y a deux bases de données :
maup.exe.i64 : IDA, nommée par des travaux
antérieurs. Non modifiée par la révision, donc ses noms
trompeurs y restent.
maup.exe.bndb : Binary Ninja, avec les noms
corrigés. symbols.tsv
les liste tous, avec chaque adresse dans les deux bases et l'ancien nom
IDA quand il diffère.
MAUPITI1.EXE.bndb : Binary Ninja, avec les noms de
symbols-maupiti1.tsv.
Son adresse = décalage de fichier = EA - 0xEA00.
Binary Ninja peut se tromper d'architecture pour
MAUPITI1.EXE. Ouverte en x86-16, la vue à plat n'a pas de
point d'entrée et ne montre qu'un vidage hexadécimal. Pour la
reconstruire, exécutez
exec(open("<repo>/tools/bn_seed_m1.py").read()) dans
sa console Python : cela crée les fonctions et applique les noms.
| Nom IDA | Nom Binary Ninja | Raison |
|---|---|---|
Font_LoadCharset |
Intro_Run |
joue l'introduction |
Font_LoadStrings |
Intro_OpLoadPicture |
charge des images |
sub_14930 |
Img_Decode |
décodeur d'images |
sub_157C3 |
Txt_DrawIndexed |
service 9, décode et dessine une chaîne |
sub_171A4 |
Intro_OpShowCredit |
affiche un crédit |
sub_1428C |
Ui_CaptureSpriteSheet |
copie 64 lignes vers la planche |
sub_10536 |
Game_Main |
entrée principale |
Vid_CanvasPtr |
Vid_PagePtr |
adresse la page |
Vid_BlitTile16x12 |
Vid_BlitTile |
la taille vient de CX |
Vid_FlushCanvas_Mono |
Vid_SpriteDispatch |
aiguillage par mode |
Vid_FlushCanvas_CGA16 |
Vid_SpriteAmstrad |
mode 0 |
Vid_FlushCanvas_EGA |
Vid_SpriteEga |
mode 2 |
wConStagingSeg |
wPageSeg |
la page de dessin |
wVidCanvasSeg / Ofs |
wSheetSeg / Ofs |
planche de sprites |
word_1CC2B |
wPage2Seg |
seconde page |
bGlyphDirectStore |
bBlitViaPutPixel |
le sens était inversé |
wGlyphRowPitch |
wTextColorCur |
contient la couleur |
word_1A4F4 |
wTextColor |
contient la couleur |
bHufIndexVariant |
bSoundCard |
type de carte son |
bConOpenState |
bConCurrentDisk |
numéro de disque |
wLzChunkLimitLo/Hi |
wLzProgressLimitLo/Hi |
pas de format par blocs |
unk_1CBAB |
IntroStringBuf |
tampon de décodage |
Con_ archives, Huf_ flux, Lz_
codec, Mau_ fichiers bruts, Save_ sauvegardes,
Img_ images, Txt_ chaînes, Font_
polices, Vid_ dessin, Ui_ éléments de la
planche, Intro_ introduction, Far_ aides pour
pointeurs, SvcNN services INT 0FEh dont le rôle n'est pas
établi.
DS: ne sont pas
résolus, donc les noms des globales n'apparaissent pas dans le code qui
s'en sert. Par exemple, [0x496] s'affiche
data_496, et les valeurs constantes montrées peuvent être
fausses.symbols.tsv et symbols-maupiti1.tsv.Main de MAUPITI1.EXE s'arrête
après son premier appel far, et son code continue dans
Main_Body.Img_Decode, Txt_Decode5Bit,
Vid_DrawGlyph, Vid_DrawString,
Lz_ReadDistance, Lz_Decompress,
Lz_DecompressFar. Beaucoup d'autres lisent leurs arguments
par mov bp,cx, que Binary Ninja ne traite pas comme des
arguments.Précédent : Parole · Suivant : Affirmations réfutées · Annexe technique · Accueil