handler 3 ▁function ▁in ▁m sv c rt . dll , ▁then ▁adds ▁the ▁record ▁to ▁the ▁list ' s ▁head . ▁At ▁the ▁end ▁of ▁the ▁__ try ▁block ▁a ▁compiler - defined ▁E H _ ep ilog ▁function ▁is ▁called ▁that ▁does ▁the ▁reverse ▁operation . ▁Either ▁of ▁these ▁compiler - defined ▁rout ines ▁can ▁be ▁inline . ▁All ▁the ▁programmer - defined ▁__ except ▁and ▁__ fin ally ▁blocks ▁are ▁called ▁from ▁within ▁__ except _ handler 3 . ▁If ▁the ▁programmer - defined ▁blocks ▁are ▁present , ▁the ▁_ EX CE PT ION _ REG IST R ATION _ RE C ORD ▁created ▁by ▁E H _ pro log ▁is ▁extended ▁with ▁a ▁few ▁additional ▁fields ▁used ▁by ▁__ except _ handler 3 . ▁ ▁In ▁the ▁case ▁of ▁an ▁exception ▁in ▁user ▁mode ▁code , ▁the ▁operating ▁system ▁par s es ▁the ▁thread ' s ▁_ EX CE PT ION _ REG IST R ATION _ RE C ORD ▁list ▁and ▁calls ▁each ▁exception ▁handler ▁in ▁sequence ▁until ▁a ▁handler ▁signals ▁it ▁has ▁handled ▁the ▁exception ▁( by ▁return ▁value ) ▁or ▁the ▁list ▁is ▁exha usted . ▁The ▁last ▁one ▁in ▁the ▁list ▁is ▁always ▁the ▁kernel 3 2 ! Un hand led Exception Filter ▁which ▁displays ▁the ▁General ▁protection ▁fault ▁error ▁message . ▁Then ▁the ▁list ▁is ▁travers ed ▁once ▁more ▁giving ▁handlers ▁a ▁chance ▁to ▁clean ▁up ▁any ▁resources ▁used . ▁Finally , ▁the ▁execution ▁returns ▁to ▁kernel ▁mode ▁where ▁the ▁process ▁is ▁either ▁res