Hi everyone and sorry for the silly question. Let's say that "main" calls an "add" function (pseudocode):
main { add(5,10) }
The stack would be something similar:
...main...
| 10 |
| 05 |
| RET |
| EBP |
...add...
The stack frame of "add" starts from EBP or include also 10, 5 (args) and RET? In a CDECL calling convention the caller (main) is in charge of cleaning the stack after the "add" function returns. I suppose clean means "remove" (by increasing esp) the arguments from the stack, not the local vars of the "add" function, right?
Thanks a lot