I am trying to reverse engineer software to extend its functionality as expected of me. So I don't have the source code with me. Anyways, I am used to seeing codes that start like the one below, and is clear to me what is actually going on there.
push ebp mov ebp,esp sub esp,10h
But my worries came when I saw one that looks like this below
mov edi,dword ptr [0E9A474h]; imul eax,dword ptr [edi+5AF4h],70h; cmp dword ptr [ebp+eax-35DCh],0h; je some_location
And the prologue for the function doesn't have any instruction like this
At least I could have known the size of the stack the function is using for local variable storage.
And additional question is:
- Is this a good programming as far as assembly language is a concern?
- Can there be any collision in memory between this function and another?
- Is it possible to know the limit of this function in the stack? Either the Size