flat assembler
Message board for the users of flat assembler.

Index > Windows > x64 exception handling logic?

Author
Thread Post new topic Reply to topic
ProMiNick



Joined: 24 Mar 2012
Posts: 802
Location: Russian Federation, Sochi
ProMiNick 11 Nov 2018, 10:03
https://board.flatassembler.net/topic.php?p=206568#206568

1st post part ATL.DLL and it exported AtlModuleInit

exception handling realized differently for x86 & x64.
for x86 - CPPEH_RECORD via fs:[0] with _SCOPETABLE

for x64 - after error suspecting call added just 1 jmp instruction that skipped some way in case of exception occurs.

_________________
I don`t like to refer by "you" to one person.
My soul requires acronim "thou" instead.
Post 11 Nov 2018, 10:03
View user's profile Send private message Send e-mail Reply with quote
Feryno



Joined: 23 Mar 2005
Posts: 509
Location: Czech republic, Slovak republic
Feryno 13 Nov 2018, 08:14
exception handling in 32 bit is per thread, you have to setup it in thread registers - fs:0
exception handling in x64 is per process, info about handling exceptions is in exception directory in executable binary
Post 13 Nov 2018, 08:14
View user's profile Send private message Visit poster's website ICQ Number Reply with quote
Furs



Joined: 04 Mar 2016
Posts: 2522
Furs 15 Nov 2018, 19:36
x64 exception handling is very complicated. Be prepared for hell.
Post 15 Nov 2018, 19:36
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.