Je fais ce projet et cette partie particulière me trouble. On nous donne cette représentation au niveau machine et il va lire six nombres que je dois comprendre. Jusqu'à présent, je sais que c'est une boucle et il va itérer jusqu'à ce qu'il atteigne sa clause d'arrêt. Nous ne voulons pas qu'il fasse l'appel à exploser à 0x08048d3a: appel 0x80492f3. Est-ce que quelqu'un sait ce que six nombres vont être générés. Toute aide est grandement appréciée.Représentation au niveau de la machine
0x08048d0b <phase_2+0>: push %ebp
0x08048d0c <phase_2+1>: mov %esp,%ebp
0x08048d0e <phase_2+3>: push %esi
0x08048d0f <phase_2+4>: push %ebx
0x08048d10 <phase_2+5>: sub $0x30,%esp
0x08048d13 <phase_2+8>: lea -0x20(%ebp),%eax
0x08048d16 <phase_2+11>: mov %eax,0x4(%esp)
0x08048d1a <phase_2+15>: mov 0x8(%ebp),%eax
0x08048d1d <phase_2+18>: mov %eax,(%esp)
0x08048d20 <phase_2+21>: call 0x8049335 <read_six_numbers>
0x08048d25 <phase_2+26>: mov $0x2,%ebx
0x08048d2a <phase_2+31>: lea -0x20(%ebp),%esi
0x08048d2d <phase_2+34>: mov -0x8(%esi,%ebx,4),%eax
0x08048d31 <phase_2+38>: add $0x5,%eax
0x08048d34 <phase_2+41>: cmp %eax,-0x4(%esi,%ebx,4)
0x08048d38 <phase_2+45>: je 0x8048d3f <phase_2+52>
0x08048d3a <phase_2+47>: call 0x80492f3 <explode_bomb>
0x08048d3f <phase_2+52>: add $0x1,%ebx
0x08048d42 <phase_2+55>: cmp $0x7,%ebx
0x08048d45 <phase_2+58>: jne 0x8048d2d <phase_2+34>
0x08048d47 <phase_2+60>: add $0x30,%esp
0x08048d4a <phase_2+63>: pop %ebx
0x08048d4b <phase_2+64>: pop %esi
0x08048d4c <phase_2+65>: pop %ebp
0x08048d4d <phase_2+66>: ret
pouvez-vous expliquer précisément ce qui se passe dans ces lignes
0x08048d10 <phase_2+5>: sub $0x30,%esp
0x08048d13 <phase_2+8>: lea -0x20(%ebp),%eax
0x08048d16 <phase_2+11>: mov %eax,0x4(%esp)
0x08048d1a <phase_2+15>: mov 0x8(%ebp),%eax
0x08048d1d <phase_2+18>: mov %eax,(%esp)
Merci !!
pourquoi tomber les balises devoirs et x86? – Flexo
Vous devriez envisager de résoudre certains problèmes sur http://crackmes.de/. – ruslik
Nous sommes heureux de vous aider à faire vos devoirs, mais vous demandez la réponse. Nous ne faisons pas cela. Pouvez-vous poser une question plus spécifique? (comment interpréter 'jne 0x8048d2d' etc? –