1

Comme j'ai à peu près fini le désassemblage de programmes kernel et nostub, j'ai bien envie de m'attaquer au désassemblage de l'AMS ou d'app flash. Quelqu'un sait à quoi doit vaguement ressembler le code désassemblé pour obtenir qqc d'exlpoitable ? (l'équivalent des xdef _main, xdef _comment, etc...)
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

2

Ben xdef _ROM_CALL_xxx, xdef vector_zz et xdef vector_table, ça devrait déjà être pas mal non?

[message subliminal] Et fais le en C ! [/message subliminal]

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

3

Ok, ça sera fait comme ça. Vector_table, c'est la jump table ?
[message subliminal] LOL [/message subliminal] faudrait que je refasse toute la fonction de désassemblage, alors que là j'en ai pour quelques heures seulement
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

4

"Jump table" = "liste des ROM CALLs" ? Si c'est le cas, non. Je parlais de la table des vecteurs d'interruption (en RAM, 0x0 -> 0x100 ; valeurs initiales, en ROM : 0x212088->0x212188). Donc en particulier le label correspondant à vector_C8 est la liste des rom calls... Et le label correspondant à vector_04 est le code de reset.
A mon humble avis tu vas avoir du mal à faire un désassembleur qui désassemble _toute_ la ROM et gère tous les appels BCD qui sont un peu tordus aussi rapidement que tu le dis neutral

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

5

On verra bien smile Je vois pas trop ce qui pourrait avoir de plus dur que le désassemblage de programmes kernel, mais je connais pas trop la gestion des BCD sad
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

6

C'est pas plus dur que les progs kernels. C'est fini ces enfantillages ?

7

Chouette smile Je vais pouvoir m'y mettre aujourd'hui je pense
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

8

En théorie, rien de différent, oui. Sauf que tu n'as pas de table de relocation pour t'aider, etc... (et donc si tu le fais de manière "heuristique" tu risques de prendre des données pour une adresse). Et la taille de la ROM est tellement énorme que tu ne peux pas tout désassembler en RAM roll Tu es obligé de tout désassembler "à la volée", ce qui fait que tes heuristiques de détermination code/données ne peuvent pas se servir des cross-references.
Miam, _bcd_math miam

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

9

c'est clair que le résultat ne sera pas parfait sad A priori il y aura des données qui seront désassemblées comme du code, même si tout ne le sera pas (j'espère). Si je suis vraiment obligé de tout désassembler à la volée, c'est clair que le résultat ne sera pas terrible mourn mais je n'en suis pas encore sûr smile



y a pas que les BCD, y a aussi les codes de protection de la flash qui me font eeek
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

10

De toute façon, on pourra toujours l'aider en lui indiquant une liste d'adresse à considérer comme du code (je fais déjà ça pour les programmes) et peut-être également une liste d'adresse à considérer comme des données
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

11

Tiens je savais pas que # slurp # était un smiley smile j'édite mon post précédent parce que ça correspond pas trop à ce que je voulais tongue

Ben en tout cas bon courage smile

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)