flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
Ivan2k2 08 Apr 2006, 02:58
hi blacky
it's not junk code, it's buggy ollydbg =) e.g.: "push ebx esi edi" is equal to next 3 lines Code: 004020AC 53 DB 53 ; CHAR 'S' 004020AD 56 DB 56 ; CHAR 'V' 004020AE 57 DB 57 ; CHAR 'W' and so on... |
|||
![]() |
|
Madis731 08 Apr 2006, 09:05
Maybe its the configuration of the Olly, because mine is OK. The only problem is that it doesn't recognize the structure:
Code: invoke CreateWindowEx,WS_EX_OVERLAPPEDWINDOW,winclass,'Test',WS_VISIBLE+WS_OVERLAPPEDWINDOW,100,100,200,200,0,eax,[wc.hInstance],0 ;Instead, this is shown: 00402039 |. 6A 00 PUSH 0 0040203B |. FF35 32104000 PUSH [DWORD 401032] 00402041 |. 50 PUSH EAX 00402042 |. 6A 00 PUSH 0 00402044 |. 68 C8000000 PUSH 0C8 00402049 |. 68 C8000000 PUSH 0C8 0040204E |. 6A 64 PUSH 64 00402050 |. 6A 64 PUSH 64 00402052 |. 68 0000CF10 PUSH 10CF0000 00402057 |. E8 05000000 CALL test.00402061 ; PUSH ASCII "Test" 0040205C |. 54 65 73 74 0>ASCII "Test",0 00402061 |> 68 00104000 PUSH test.00401000 ; |Class = "TestClass" 00402066 |. 68 00030000 PUSH 300 ; |ExtStyle = WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE 0040206B |. FF15 D0304000 CALL [<&USER32.CreateWindowExA>] ; \CreateWindowExA This is because the high level the FASM macros can get - I'm only using the "win32a.inc" for my projects, but that "win32ax.inc" lets you define constructs like this: Code: invoke MyProcedure,eax,"some string",[ebx] ;This will be assembled to something like the next: push [ebx] call @f db "some string",0 @@: push eax call [MyProcedure] |
|||
![]() |
|
vid 08 Apr 2006, 09:17
i wonder why OllyDbg claims it handle this then. BTW, FASMLIB macros define PUSHD-defined string in data block, like
Code: idata { ..string db "Ain't it fun waitin' 'round in data segment?",0 } push ..string |
|||
![]() |
|
Madis731 08 Apr 2006, 09:19
As I already said - its the configuration. His Olly showed only ASCII, mine showed them as ops, but didn't recognize the structure as a whole, but only the end of it. Maybe there are still some ticks to be clicked
![]() ![]() |
|||
![]() |
|
Ivan2k2 08 Apr 2006, 10:14
Madis731 is right, when i checked "Debugging options -> Analysis 1 -> Decode tricky code sequences", this disassembly code became more readable.
|
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.