https://bugs.winehq.org/show_bug.cgi?id=39993
Bug ID: 39993 Summary: OllyDbg fails to change some registers Product: Wine Version: 1.9.0 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: kernel32 Assignee: wine-bugs@winehq.org Reporter: b7.10110111@gmail.com Distribution: ---
If you try to set some registers in OllyDbg while debugging an application, it'll reset them to original values after single step. This must mean that its write request has failed.
To reproduce:
1. Run OllyDbg (2.x) 2. File->Open, choose any PE file, e.g. Test.exe from OllyDbg distribution 3. Press space bar, assemble something like `dw 0xfeeb` to make sure no registers are changed on single step 4. Try to change any of the following registers (others work correctly): * ST2 or any other FPU data register * FST * FCW * MXCSR * data register tags via right clicking on "empty" and selecting "zero" 5. Single step (pressing F7) 6. See the changed registers return to original values, i.e. fail to actually change
https://bugs.winehq.org/show_bug.cgi?id=39993
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |http://www.ollydbg.de/odbg2 | |01.zip
https://bugs.winehq.org/show_bug.cgi?id=39993
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sebastian@fds-team.de
https://bugs.winehq.org/show_bug.cgi?id=39993
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|kernel32 |wineserver
--- Comment #1 from Ruslan Kabatsayev b7.10110111@gmail.com --- It actually seems to be wineserver which has the bug, not kernel32, since kernel32 only forwards the context to ntdll with SetThreadContext, and it to the server with NtSetContextThread, and in this case self!=0.
https://bugs.winehq.org/show_bug.cgi?id=39993
--- Comment #2 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.0-235-g2dd0fb8.
https://bugs.winehq.org/show_bug.cgi?id=39993
--- Comment #3 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still reproduces with wine-2.5.
To make sure you don't hit bug 42353, change step 3 in instructions to reproduce to assembly of `dd 0x90feeb90` instead of `dw 0xfeeb`.
https://bugs.winehq.org/show_bug.cgi?id=39993
--- Comment #4 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.15-74-g083e61f. Also reproduces with x32dbg.
https://bugs.winehq.org/show_bug.cgi?id=39993
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source
--- Comment #5 from Ruslan Kabatsayev b7.10110111@gmail.com --- x32dbg is open-source and reproduces this bug too, so adding "source" keyword.
https://bugs.winehq.org/show_bug.cgi?id=39993
--- Comment #6 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.22-158-g47e9e91.
https://bugs.winehq.org/show_bug.cgi?id=39993
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |7ee66b29cb52fd3fc18fe2314c7 | |20b3a0e348e43 Component|wineserver |ntdll URL|http://www.ollydbg.de/odbg2 |https://web.archive.org/web |01.zip |/20140209193012/http://olly | |dbg.de/odbg201.zip Resolution|--- |FIXED CC| |focht@gmx.net Summary|OllyDbg fails to change |OllyDbg 2.x: Manually |some registers |changed FPU registers are | |reset to original values | |after single step (F7) Status|UNCONFIRMED |RESOLVED
--- Comment #7 from Anastasius Focht focht@gmx.net --- Hello folks,
this was fixed by commit https://source.winehq.org/git/wine.git/commitdiff/7ee66b29cb52fd3fc18fe2314c... ("ntdll: Send first chance debug event while on signal stack on i386.").
Part of Wine 4.17 release.
Thanks Alexandre
$ sha1sum odbg201.zip d41fe77a2801d38476f20468ab61ddce14c3abb8 odbg201.zip
$ du -sh odbg201.zip 6.7M odbg201.zip
$ wine --version wine-4.16-49-g7ee66b29cb5
Regards
https://bugs.winehq.org/show_bug.cgi?id=39993
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #8 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.2.