flat assembler
Message board for the users of flat assembler.
Index
> Compiler Internals > unexpected code |
Author |
|
revolution 07 Nov 2016, 09:27
Immediately after the call to ExitProcess the next procedure "MainWindow" begins. That is exactly what you coded. If you put an intervening instruction like int3 you would see where the function begins.
Code: end_loop: invoke ExitProcess,[msg.wParam] int3 proc MainWindow hwnd,wmsg,wparam,lparam push ebx esi edi |
|||
07 Nov 2016, 09:27 |
|
Corsair59 07 Nov 2016, 10:18
The upper code is from the fasmw.asm file. below the dotted line is what was generated. note that the data pushes and procedure call are absent. exit process and the register pushes frame the abhorrent code. the push and move instructions were not supposed to be there. You can check this yourself by matching the fasmw.asm file with the disassembled program. this was 1.71.57 new release.
|
|||
07 Nov 2016, 10:18 |
|
revolution 07 Nov 2016, 10:33
AFAIKT everything is there as you coded:
Code: invoke ExitProcess,[msg.wParam] ;push dword ptr [msg.wParam] ;call dword ptr [exitprocess] proc MainWindow hwnd,wmsg,wparam,lparam ;push ebp ;mov ebp,esp push ebx esi edi ;push ebx ;push esi ;push edi |
|||
07 Nov 2016, 10:33 |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.