AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [Assemmbler] Aufrufkonvention erkennen
Thema durchsuchen
Ansicht
Themen-Optionen

[Assemmbler] Aufrufkonvention erkennen

Ein Thema von scp · begonnen am 24. Aug 2005 · letzter Beitrag vom 26. Aug 2005
 
scp

Registriert seit: 31. Okt 2003
1.120 Beiträge
 
Delphi 7 Personal
 
#1

[Assemmbler] Aufrufkonvention erkennen

  Alt 24. Aug 2005, 23:38
Kann man anhand des Aufrufs einer Funktion in einem fremden Programm, die Paramteranzahl dieser Funktion ermitteln? Ich schätze die Funktion hat etwa sieben Parameter, die ersten drei sind PWideChars, 4-8 sind einfach 0, wenn ich die Funktion zum test hooke.
Sie hat auch einen Rückgabewert, da ja eax mit 1 verglichen wird.

Eigentlich dachte ich immer, die ersten drei Paramter werden in ebx, ecx und edx abgelegt, aber wie funktioniert das nun bei so vielen Parametern?

Code:
* Reference To: KERNEL32.GetProcAddress, Ord:0197h
                                  |
:00407753 FF1580104000            Call dword ptr [00401080]
:00407759 3BC6                    cmp eax, esi
:0040775B 743D                   je 0040779A
:0040775D 56                      push esi
:0040775E FF7524                  push [ebp+24]
:00407761 FF7520                  push [ebp+20]
:00407764 FF751C                 push [ebp+1C]
:00407767 FF7518                  push [ebp+18]
:0040776A FF7514                  push [ebp+14]
:0040776D 56                      push esi
:0040776E 56                      push esi
:0040776F 56                      push esi
:00407770 56                      push esi
:00407771 56                      push esi
:00407772 FF7510                  push [ebp+10]
:00407775 FF750C                 push [ebp+0C]
:00407778 FF7508                  push [ebp+08]
:0040777B FFD0                    call eax
:0040777D 83F801                  cmp eax, 00000001
:00407780 7429                    je 004077AB
:00407782 50                      push eax
:00407783 6868254000              push 00402568
:00407788 6838254000              push 00402538
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz