nom de la fonction appelante

nom de la fonction appelante - ASM - Programmation

Marsh Posté le 23-10-2002 à 18:11:45    


Comment on peut récupérer le nom de la fonction appelante ?
 
Merci

Reply

Marsh Posté le 23-10-2002 à 18:11:45   

Reply

Marsh Posté le 23-10-2002 à 19:34:56    

Que veux tu faire exactement ? Donne plus d'infos, car la c'est le flou artistique.... :sarcastic:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 23-10-2002 à 19:39:33    

Je crains que meme avec plus d'infos ce qu'il demande soit impossible ( surtout dans la catégorie asm )

Reply

Marsh Posté le 23-10-2002 à 19:41:16    

C'est ce que je crains aussi... au mieux il pourra récupérer l'adresse de la fonction appelante, mais au prix d'une gymnastique pas possible avec la pile...


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 23-10-2002 à 19:43:21    

Au prix d'une autre gymnastique je pense qu'il pourra récupérer le nom, a condition de se trouver dans une DLL ( car sinon de toutes manieres le nom de la fonction a été perdu depuis le linkage )
 
Edit : c'est juste de la curiosité mais je me demande a quoi ca peut servir ca! D'autant plus que l'intéret de faire de l'asm aujourd'hui - je vais sans doute me faire incendier et provoquer un troll - c'est le cracking, les virus, et les demos...


Message édité par Ace17 le 23-10-2002 à 19:45:16
Reply

Marsh Posté le 23-10-2002 à 20:01:31    

tu peux peut etre l'avoir en utilisant un debogueur

Reply

Marsh Posté le 23-10-2002 à 22:05:17    

Ah ouais pas bete, un débuggeur pourrait certainement faire cette gymnastique a ta place. C'est quoi que tu essaie de cracker? :D

Reply

Marsh Posté le 23-10-2002 à 22:14:40    

:lol:
 
c vrai que c forcément pour ça, en y réflechissant bien :)
y'a un débugger qui est génial pour ça ;)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 23-10-2002 à 22:17:14    

;)  
 
Personnelement j'utilise Softice :D

Reply

Marsh Posté le 23-10-2002 à 22:22:06    

Ace17 a écrit a écrit :

;)  
 
Personnelement j'utilise Softice :D




copaing ;)
t'arrives à le faire fonctionner sous XP ? et avec une souris USB ?


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 23-10-2002 à 22:22:06   

Reply

Marsh Posté le 24-10-2002 à 09:55:50    

LOL sous XP! Non je n'ai jamais essayé; mais personnelement j'ai gardé un Win98 a coté de mon 2k pour ce genre d'opérations. Quand a la souris ps/2, elle n'a jamais marché parfaitement.

Reply

Marsh Posté le 24-10-2002 à 12:19:00    

euh c'est vrai j'ai pas ete tres clair
 
en fait c'est pour debugger mes dll pas pour cracker  :lol: . Dans la pile doit bien avoir l'adresse de la fonction appelante nan ? Je vais certainement dire une connerie mais elle est pas stockée dans le registre ebp ?
Et je me disais qu'a partir de son addr on pouvait recup son nom.

Reply

Marsh Posté le 24-10-2002 à 12:34:22    

oui & non, généralement le compilo fait la chose suivante:
 
yopla:
push ebp
mov ebp,esp
 
.....
sub esp,8 ;// "allocation" de 2 long int
 
mov eax,[ebp+8] ;// premier param (skip sauvegarde ebp+val retour)
....
...
 
add esp,8
pop ebp
ret
 
ebp sert à accéder aux paramètres (en sauvegardant esp), comme ça le compilo peut "allouer" des variables sur la pile.
mais bon c'est -pas- nécessaire il faut juste que le compilo maintienne un offset aux paramètres passé dans la pile....
 
yopla:
sub esp,8 ;//(2 longs)
....
mov eax,[esp+4+8] ;// premier parmètre (skip 8 octets "alloués" + val retour)
....
 
add esp,8
ret


Message édité par bjone le 24-10-2002 à 12:36:59
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed