2013년 2월 27일 수요일

seh


16:   {
00401070   push        ebp
00401071   mov         ebp,esp
00401073   push        0FFh
00401075   push        offset string "1: Raise an Exception\n"+20h (0042f080)
0040107A   push        offset __except_handler3 (004083e4)
0040107F   mov         eax,fs:[00000000]
00401085   push        eax
00401086   mov         dword ptr fs:[0],esp
0040108D   add         esp,0B8h
00401090   push        ebx
00401091   push        esi
00401092   push        edi
00401093   mov         dword ptr [ebp-18h],esp
00401096   lea         edi,[ebp-58h]
00401099   mov         ecx,10h
0040109E   mov         eax,0CCCCCCCCh
004010A3   rep stos    dword ptr [edi]
17:       __try
004010A5   mov         dword ptr [ebp-4],0
18:       {
19:           __try{
004010AC   mov         dword ptr [ebp-4],1
20:               printf("1: Raise an Exception\n");
004010B3   push        offset string "1: Raise an Exception\n" (0042f060)
004010B8   call        printf (00408270)
004010BD   add         esp,4
21:               RAISE_AN_EXCEPTION();
004010C0   call        @ILT+0(RAISE_AN_EXCEPTION) (00401005)
22:           }
004010C5   mov         dword ptr [ebp-4],0
004010CC   call        $L8443 (004010d3)
004010D1   jmp         $L8446 (004010e1)
23:           __finally
24:           {
25:               printf("2: In Finally\n");
004010D3   push        offset string "2: In Finally\n" (0042f04c)
004010D8   call        printf (00408270)
004010DD   add         esp,4
$L8444:
004010E0   ret
26:           }
27:       }
004010E1   mov         dword ptr [ebp-4],0FFFFFFFFh
004010E8   jmp         $L8440+17h (0040110f)
28:       __except( printf("3: In Filter\n"))
004010EA   push        offset string "3: In Filter\n" (0042f03c)
004010EF   call        printf (00408270)
004010F4   add         esp,4
$L8441:
004010F7   ret
$L8440:
004010F8   mov         esp,dword ptr [ebp-18h]
29:       {
30:           printf("4: In Exception Handler\n");
004010FB   push        offset string "4: In Exception Handler\n" (0042f01c)
00401100   call        printf (00408270)
00401105   add         esp,4
31:       }
00401108   mov         dword ptr [ebp-4],0FFFFFFFFh
32:       return 0;
0040110F   xor         eax,eax
33:   }
00401111   mov         ecx,dword ptr [ebp-10h]
00401114   mov         dword ptr fs:[0],ecx
0040111B   pop         edi
0040111C   pop         esi
0040111D   pop         ebx
0040111E   add         esp,58h
00401121   cmp         ebp,esp
00401123   call        __chkesp (00408230)
00401128   mov         esp,ebp
0040112A   pop         ebp
0040112B   ret

댓글 없음:

댓글 쓰기