Professional Documents
Culture Documents
©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
ËÎÎϽÊË¿ÈÂÊÅÂÐÌͽ¿ÈÜÛÖÅÒÇËÊÎÏÍÐÇÓÅÆ
˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆÜÄØǽ®Å
¿ÏËͽÉÅͽÎÎɽÏÍÅ¿½ÛÏÎÜÊÂÇËÏËÍØÂÉÂÏËÁØÁÂÇËÉÌÅÈÜÓÅÅÌÍËÀͽÉÉʽÜÄØÇ®ÅvÉÂ
ÏËÁØ¿ËÎÎϽÊË¿ÈÂÊÅÜÎÏÍÐÇÏÐÍÊØÒÇËÊÎÏÍÐÇÓÅÆ˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆÜÄØǽ®ÅUSZDBUDI
ÅËÌÂͽÏËͽÀÂÊÂͽÓÅÅÅÎÇÈÛÔÂÊÅÆUISPX
¿ÂÁÂÊÅ ¡½ÊʽÜͽ¾ËϽÌËοÜÖÂʽÌÍ˾ÈÂÉ¿ËÎ
ÎϽÊË¿ÈÂÊÅÜ¿ØÎËÇËÐÍË¿Ê¿ØÒÐÌͽ¿ÈÜÛ
«
¾Í½ÏʽÜÅÊÃÂÊÂÍÅÜÎϽ¿ÅÏοËÂÆĽ ÖÅÒÎÏÍÐÇÏÐÍÊØÒÇËÊÎÏÍÐÇÓÅÆ
Á½ÔÂÆʽžËÈÂÂÌËÈÊË¿ËÎÎϽÊË¿ ª½ ÎÂÀËÁÊÜÕÊÅÆ ÁÂÊ٠ʽžËÈ ͽÎ
ÈÂÊÅÂÅÊÑËÍɽÓÅÅËÏËÉ
ǽÇͽ¾Ë ÌÍËÎÏͽÊÂÊÊØÂÜÄØÇÅÌÍËÀͽÉÉÅÍË¿½ÊÅÜ
ϽÂÏÎÅÎÏÂɽ¡ÈÜÚÏËÀË¿ÎÅÎÏÂÉÂÏ;ÐÂÏÎÜ ÏͽÊÎÈÅÍÐÂÉØ ¿ ɽÕÅÊÊØÆ ÇËÁ
v ÜÄØ
¿ØÁÂÈÅÏÙÇËÉÌËÊÂÊÏØ
ËÌÍÂÁÂÈÅÏٿĽÅÉË ÇÅ®ÅŮŬËÚÏËÉÐÁÂÇËÉÌÅÈÜÓÅÜÌÍË
οÜÄÅ ÉÂÃÁÐ ÊÅÉŠŠĽÇËÊØ
ÌË ÇËÏËÍØÉ ÀͽÉÉ
ʽÌÅνÊÊØÒʽÚÏÅÒÜÄØǽÒ
ÌÍÂÁ
ÌÍËÅÎÒËÁÅÏÑÐÊÇÓÅËÊÅÍË¿½ÊÅÂÇËÉÌËÊÂÊÏ ÎϽ¿ÈÜÂÏ Ê½Å¾ËÈÙÕÐÛ ÌͽÇÏÅÔÂÎÇÐÛ ÓÂÊ
¬ÍÅ˾ͽÏÊËÆÅÊÃÂÊÂÍÅÅÌÍËÀͽÉÉÊØÒÎÅÎ ÊËÎÏÙ
ÏÂÉÊÂ˾ÒËÁÅÉËÌËÁËÎÏÐÌÊËÉÐÅÎÌËÈÊÜ ª½ÎÏËÜÖ½ÜÎϽÏÙÜÜ¿ÈÜÂÏÎÜÌÍËÁËÈÃÂ
ÉËÉÐÇËÁÐÌËÎÏÍËÅÏÙÅÒ¿ØÎËÇËÐÍË¿Ê¿Ë ÊÅÂÉͽ¾ËÏØ<>
ÌËοÜÖÂÊÊËÆ¿ËÎÎϽÊË¿
ÌÍÂÁÎϽ¿ÈÂÊÅÂ
¿ÇÈÛÔ½ÛÖÂÂËÌÅνÊÅÂ½È ÈÂÊÅÛÎÏÍÐÇÏÐÍÊØÒÇËÊÎÏÍÐÇÓÅÆÜÄØǽ®Å
ËÎÎϽÊË¿ÈÂÊÅÂÐÌͽ¿ÈÜÛÖÅÒÇËÊÎÏÍÐÇÓÅÆ˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆÜÄØǽ®Å
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
ÇËÉÌÅÈÜÏËÍ)FY3BZTÊÂÐÔÅÏØ¿½ÂÏËÎ˾ÂÊ Í½
ÌËÈÊËÎÏÙÛĽÉÂÊÜÛÖ½ÜÅÎÌËÈÙÄÐÂÉÐÛ
ÊËÎÏÂÆÜÄØǽ®ÅÅÊ¿ËÎÎϽʽ¿ÈÅ¿½ÂÏ ÌËÐÉËÈÔ½ÊÅÛ
ÍÂÀÅËÊØUSZDBUDI «¾Í½¾ËÏǽÅÎÇÈÛÔÂÊÅÆ%XBSG¿ÇËÉÌÅ
ÈÜÏËͽÒ($$Å*OUFM$$PNQJMFSËÌÅνʽ
¨ÅÎÏÅÊÀ¬ÍÅÉÂÍÌÍËÀͽÉÉØʽÜÄØÇ®Š¿*UBOJVN$"#*<>
int main() «Í½¾ËϽÒ
ÌËοÜÖÂÊÊØÒ¿ËÎÎϽÊË¿ÈÂ
{ ÊÅÛÀͽÊÅÓÎÏÍÐÇÏÐÍÊØÒÇËÊÎÏÍÐÇÓÅÆUSZ
try { DBUDIÁÈÜÌÂÍÂÔÅÎÈÂÊÊØÒÅÈÅÁÍÐÀÅÒÎÌË
throw 34;
} catch (int) { Î˾˿˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆ
½¿ÏËͽÉʽ
} catch (char) { ÎÏËÜÖÂÆÎϽÏÙÅÊÂÅÄ¿ÂÎÏÊË
} catch (bool) {
}
return 0;
} ËÎÎϽÊË¿ÈÂÊÅÂÇËÊÎÏÍÐÇÓÅÆ
˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆÜÄØǽ®Å
ÅÎÅÁ¿ËÎÎϽÊË¿ÈÂÊÊËÀËÀͽѽÌËÏËǽÐÌͽ¿ÈÂÊÅÜÑÐÊÇÓÅÅNBJO¿*%"1SP
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
__$EHRec$.frameHandler = (int)_ehhandler__main;
__$EHRec$.pNext = a1;
v6 = a2;
v7 = a4;
v8 = a3;
__$EHCookie$ = (unsigned int)& s ^ __security_cookie;
__$EHRec$.SavedESP = (int)&__$EHCookie$;
__$EHRec$.state = 0;
v11 = 34;
_CxxThrowException(&v11, &_TI1H);
return _tryend__main_3;
}
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
ÅήÏÍÐÇÏÐͽ-BOHVBHF4QFDJGJD%BUB"SFB -4%"
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
¨ÅÎÏÅÊÀÈÀËÍÅÏÉ¿ËÎÎϽÊË¿ÈÂÊÅܾÈËÇË¿USZDBUDI¿ÑËÍɽÏÂ%XBSG
¨ÅÎÏÅÊÀ
ÊËÀËÑËÍɽϽ
ÏË¿ËÎÎϽÊË¿ÈÂÊžÈËÇË¿
¬ÍÅÉÂÍÇËÁ½ÌÈËÖ½ÁÇÅÌÍÅÄÂÉÈÂÊÅÜ%XBSG
USZDBUDIĽÇÈÛÔ½ÂÏÎܿͽľËÍÂÎÏÍÐÇÏÐÍ
Á½ÊÊØÒ¿ÎÂÇÓÅÜÒFI@GSBNFÅHDD@FYDFQU@ movl %eax, -24(%ebp)
UBCMFÈÀËÍÅÏÉϽÇËÀËͽľËͽÌÍÂÁÎϽ¿ÈÂÊ movl %edx, -28(%ebp)
cmpl $3, -28(%ebp)
¿ÈÅÎÏÅÊÀÂ je .L2
¡ÈÜ ËÌÍÂÁÂÈÂÊÅÜ ½ÁÍÂÎË¿ ÌËÈÙÄË¿½ cmpl $2, -28(%ebp)
ÏÂÈÙÎÇÅÒ˾ͽ¾ËÏÔÅÇË¿ÅÎÇÈÛÔÂÊÅÆÊÐà je .L4
cmpl $1, -28(%ebp)
ÊË¿ØÌËÈÊÅÏٽʽÈÅÄÇËÁ½¿¿ÂÍÕÅÊÂÌÈË
je .L5
Ö½ÁÇÅÌÍÅÄÂÉÈÂÊÅÜÀͽѽÌËÏËǽÐÌͽ¿ movl -24(%ebp), %eax
ÈÂÊÅÜ movl %eax, (%esp)
§½ÃÁËÉÐ ÌËÈÙÄË¿½ÏÂÈÙÎÇËÉР˾ͽ¾ËÏ .LEHB1:
call _Unwind_Resume
ÔÅÇÐÅÎÇÈÛÔÂÊÅÆÌËÎϽ¿ÈÂÊ¿ÎËËÏ¿ÂÏÎÏ¿Å .LEHE1:
ÏÅÌ˾ͽ¾½ÏØ¿½ÂÉËÀËÅÎÇÈÛÔÂÊÅÜvÊËÉÂÍ
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
«¾Í½¾ËÏǽÅÎÇÈÛÔÂÊÅÆ4K-K ÊÂÎËÁÂÍÃÅÏÅÊÑËÍɽÓÅÛËÂÀËÌËÈËÃÂÊÅÅ
®ÌËÎ˾˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆ4K-KÅÎ ¿ÇËÁÂÉÂÎÏËÚÏËÀËÊËÉÂÍÏÂÇÐÖÂÀËÍÂÀÅË
ÌËÈÙÄÐÂÏÎÜ ÌË ÐÉËÈÔ½ÊÅÛ ÇËÉÌÅÈÜÏËÍËÉ Ê½Å½ÁÍÂÎÌÈËÖ½ÁÇÅÌÍÅÄÂÉÈÂÊÅÜÒͽÊÜÏÎÜ
.JO(8 ($$ ¿ÂÍÎÅŠʽ ÌȽÏÑËÍÉ ¿ÎÏÍÐÇÏÐÍÂ4K-K@'VODUJPO@$POUFYUÅÉËÁÅÑÅ
8JO¡ÈÜÎËÒͽÊÂÊÅÜÅ¿ËÎÎϽÊË¿ÈÂÊÅÜ ÓÅÍÐÛÏÎÜÌËÒËÁÐͽ¾ËÏØÑÐÊÇÓÅÅ
ÇËÊÏÂÇÎϽÅÎÌËÈÊÂÊÅÜÌÍÅÉÂÊÜÛÏÑÐÊÇÓÅÅ §½ÇÅ¿%XBSG
ÁÈÜÀÂÊÂͽÓÅÅÊÂÎϽÊ
TFUKNQ
ÅMPOHKNQ
ÅÈŽʽÈËÀÅÔÊØÂÅÉ Á½ÍÏÊØÒÅÎÇÈÛÔÂÊÅÆÅÎÌËÈÙÄÐÂÏÎÜÑÐÊÇ
ÚÏËÅÁ½ÈËʽĿ½ÊÅÂ4K-K
ÓÅÜ@@DYB@UISPXËÏÈÅÔÅÂËÏ%XBSG
ÌÍÅ
¥ÎÇÈÛÔÂÊÅÜ4K-KÅÎÌËÈÙÄÐÛÏÁÅʽÉÅԠͽÈÅĽÓÅÅÅÎÇÈÛÔÂÊÅÆ4K-K¿ËÄÊÅǽÛÏʽ
ÎÇÅÂÎÏÍÐÇÏÐÍØÁ½ÊÊØÒ¬ÍÅ¿ÒËÁ¿ÑÐÊÇ ÇȽÁÊØÂͽÎÒËÁØ
οÜĽÊÊØÂÎ˾ÎÈÐÃÅ¿½
ÓÅÛʽÎÏÂÇÂÎËÄÁ½ÂÏÎÜÅĽÌËÈÊÜÂÏÎÜ4K-K@ ÊÅÂÉÎÏÂǽÎÏÍÐÇÏÐÍ4K-K@'VODUJPO@$POUFYU
'VODUJPO@$POUFYU«Ê½ÎËÁÂÍÃÅÏÐǽĽÏÂÈÙ ÅÌÍÅÎÐÏÎÏ¿ÐÛÖÅÂÊÂĽ¿ÅÎÅÉËËÏÏËÀË
ÌÍË
ʽ˾ȽÎÏÙÁ½ÊÊØÒ-4%"
ÎËËÏ¿ÂÏÎÏ¿ÐÛÖÐÛ ÅÎÒËÁÅϿͽ¾ËϽÛÖÂÆÌÍËÀͽÉÉÂÀÂÊÂͽ
ÑÐÊÇÓÅÅØÄË¿ËÉ@6OXJOE@4K-K@3FHJTUFSÎËÄ ÓÅÜÅÎÇÈÛÔÂÊÅÆÅÈÅÊÂÏǽÔÂÎÏ¿ÂÎÌË
Á½ÊʽÜÎÏÍÐÇÏÐͽÁ˾½¿ÈÜÂÏÎÜ¿ÇËÊÂÓÎÏÂǽ Î˾½Ë¾Í½¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆ.JO(8($$
ϽÇÅÒÎÏÍÐÇÏÐÍ
ͽÈÅÄË¿½ÊÊËÀË¿¿ÅÁÂοÜÄ ¿ÂÍÎÅÅÌËÐÉËÈÔ½ÊÅÛÅÎÌËÈÙÄÐÂÏ%XBSG
ÊËÀËÎÌÅÎǽ ÎÉÈÅÎÏÅÊÀ
¬ÂÍÂÁ¿ØÒËÁËÉ ¿ÅÁÐʽÈÅÔÅÜËÌÅνÊÊØÒÌÍ˾ÈÂÉÎÌÍË
ÅÄ ÑÐÊÇÓÅÅ ÌÍËÅÎÒËÁÅÏ ¿ØÄË¿ @6OXJOE@ ÅÄ¿ËÁÅÏÂÈÙÊËÎÏÙÛÐÅÎÇÈÛÔÂÊÅÆ4K-KÅÌË
4K-K@6OSFHJTUFS
¿ØϽÈÇÅ¿½ÛÖÅÆÎÏÍÐÇÏÐÍÐ ÎÈÂÁË¿½ÏÂÈÙÊËÀËËÏǽĽËÏÅÒÌÍÅÉÂÊÂÊÅÜ
ÅÄοÜÄÊËÀËÎÌÅÎǽ°Ç½Ä½ÊÊØÂÎÏÍÐÇÏÐÍØÅ ¿ÇËÉÌÅÈÜÏËÍÂ($$¿ÌËÈÙÄÐ%XBSG¿ËÎÎϽ
ÑÐÊÇÓÅÅËÌÍÂÁÂÈÂÊؿѽÆÈÂVOXJOETKMKD
ÊË¿ÈÂÊÅÂÅÊÑËÍɽÓÅÅ˾˾ͽ¾ËÏÔÅǽÒÅÎ
Ü¿ÈÜÛÖÂÉÎÜÔ½ÎÏÙÛÇËÉÌÅÈÜÏËͽ($$ ÇÈÛÔÂÊÅÆ4K-K¿Á½ÊÊËÆÎϽÏÙÂÊÂͽÎÎɽÏ
±ËÍÉ½Ï Ë¾È½ÎÏÅ -4%" ½Ê½ÈËÀÅÔÂÊ Â ÍÅ¿½ÂÏÎÜ
ÑËÍɽÏп%XBSG
ÊË
¿ËÏÈÅÔÅÂËÏ%XBSG
ĽÌÅÎÙÉÂÎϽ¿ØÄË¿½ $BMM4JUF&OUSZ
¿4K-K
ËÎÎϽÊË¿ÈÂÊÅÂÐÌͽ¿ÈÜÛÖÅÒÇËÊÎÏÍÐÇÓÅÆ˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆÜÄØǽ®Å
«¾Í½¾ËÏǽÅÎÇÈÛÔÂÊÅÆ¿ÇËÉÌÅÈÜÏËÍÂ
¨ÅÎÏÅÊÀ¬ÍÅÉÂÍÇËÁ½ÌÍËÈËÀ½ÑÐÊÇÓÅÅ
.JDSPTPGU7JTVBM$
ÅÎÌËÈÙÄÐÛÖÂÆÅÎÇÈÛÔÂÊÅÜ4K-K
ÇËÉÌÅÈÜÏËÍÂ.JDSPTPGU7JTVBM$ÁÈÜ
__Z1gv: ÌȽÏÑËÍÉØ8JOÅÎÇÈÛÔÂÊÅÜÜÄØǽ®Å
pushl %ebp
movl %esp, %ebp
ͽÈÅÄË¿½ÊØÌË¿ÂÍÒÎÏÍÐÇÏÐÍÊËÆ˾ͽ¾ËÏ
pushl %edi ÇÅÅÎÇÈÛÔÂÊÅÆ
pushl %esi ®ÏÍÐÇÏÐÍÊ½Ü Ë¾Í½¾ËÏǽ ÅÎÇÈÛÔÂÊÅÆ
pushl %ebx 4USVDUVSFE&YDFQUJPO)BOEMJOH
4&)
vÉÂ
subl $92, %esp
movl $___gxx_personality_sj0, Ò½ÊÅÄÉ˾ͽ¾ËÏÇÅËÕžËÇ
ÌÍÂÁËÎϽ¿ÈÜÂ
-44(%ebp) ÉØÆ8JOEPXT¬ÍÅ¿ËÄÊÅÇÊË¿ÂÊÅÅÅÎÇÈÛÔÅ
movl $LLSDA1426, -40(%ebp) ÏÂÈÙÊËÆÎÅÏнÓÅÅÐÌͽ¿ÈÂÊÅÂÌÂÍÂÁ½ÂÏÎÜ
leal -36(%ebp), %eax ËÌÂͽÓÅËÊÊËÆÎÅÎÏÂÉÂ
ÇËÏËͽܿØÌËÈÊÜÂÏ
leal -12(%ebp), %edx
movl %edx, (%eax) ÌËÅÎÇÌËÁÒËÁÜÖÂÀËÌËÈÙÄË¿½ÏÂÈÙÎÇËÀË˾
movl $L21, %edx ͽ¾ËÏÔÅǽÅͽÎÇÍÐÏÇÐÎÏÂǽ
movl %edx, 4(%eax) ÂÀÅÎÏͽÓÅÜ ÑÐÊÇÓÅÆ˾ͽ¾ËÏÔÅÇË¿
movl %esp, 8(%eax)
leal -68(%ebp), %eax
ÅÎÇÈÛÔÂÊÅÆ ËÎÐÖÂÎÏ¿ÈÜÂÏÎÜ ÌËÎÍÂÁÎÏ
movl %eax, (%esp) ¿ËÉ Ä½ÌËÈÊÂÊÅÜ Å ÍÂÀÅÎÏͽÓÅÅ ÎÏÍÐÇÏÐÍØ
call __Unwind_SjLj_Register &9$&15*0/@3&(*453"5*0/ <> ÎÉ ÈÅÎ
ÏÅÊÀ
¢ÂÁ½ÊÊØÂÁËÈÃÊØͽÎÌËȽÀ½ÏÙÎÜʽ
.JOJNBMJTU(/6GPS8JOEPXTvÌËÍÏ(/6$PNQJMFS
ÎÏÂÇÂÌÍËÓÂÎνÅÈÅÌËÏËǽ¬ËÈÂIBOEMFSÎË
ÁÂÍÃÅÏÐǽĽÏÂÈÙʽÌËÈÙÄË¿½ÏÂÈÙÎÇÅÆ˾ͽ
$PMMFDUJPO ($$
ͽÄͽ¾ËϽÊÊØÆ.JDSPTPGU8JOEPXT¿ÉÂ
ÎÏÂÎʽ¾ËÍËÉο˾ËÁÊËͽÎÌÍËÎÏͽÊÜÂÉØҾžÈÅËÏÂÇ ¾ËÏÔÅÇÅÎÇÈÛÔÂÊÅÆÌËÈÂQSFWvÐǽĽÏÂÈÙʽ
ÅÉÌËÍϽÅĽÀËÈË¿ËÔÊØÒѽÆÈË¿ÁÈÜ8JOEPXT"1* ÌÍÂÁØÁÐÖÐÛÎÏÍÐÇÏÐÍпοÜĽÊÊËÉÎÌÅÎÇÂ
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
ÅήÏÍÐÇÏÐͽÎÏÂǽ¿ÌÍËÀͽÉÉ ÎÇËÉÌÅÈÅÍË¿½ÊÊËÆ.JDSPTPGU7JTVBM$^
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
ÅήÏÍÐÇÏÐͽGVODJOGPÅοÜĽÊÊØÂÎÏÍÐÇÏÐÍØ ËÎÊË¿ÊØÂÌËÈÜ
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
ÅΠͽÑÌËÏËǽÐÌͽ¿ÈÂÊÅÜÌÍËÀͽÉÉØ
ÎËÁÂÍýÖÂÆÎÜ¿ÈÅÎÏÅÊÀÂ
ÌËÁÀͽÑØ
ÎËËÏ¿ÂÏÎÏ¿ÐÛÖÅÂÑÐÊÇÓÅÜÉ
ËÀͽÊÅÔÂÊØÌÍÜÉËÐÀËÈÙÊÅǽÉÅ
ËÎÎϽÊË¿ÈÂÊÅÂÐÌͽ¿ÈÜÛÖÅÒÇËÊÎÏÍÐÇÓÅÆ˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂÊÅÆÜÄØǽ®Å
ÅÁÅʽÉÅÔÂÎÇÅÒÎÏÍÐÇÏÐÍÁ½ÊÊØÒÎÌËÉËÖÙÛ
ͽľËÍÅÌÍÂÁÎϽ¿ÈÂÊÅÂÌȽÏÑËÍÉË
½ÈÀËÍÅÏÉË¿
ͽÎÎÉËÏÍÂÊÊØÒͽÊÂÂ
ÁËÈÃʽ Ľ¿ÅÎÅÉËÆ ÅÊÑËÍɽÓÅŠ˾ ÅÎÇÈÛÔÂÊÅÜÒ
¾ØÏÙÌÂÍÂÊÂÎÂʽ¿ÌÍÂÁÎϽ¿ÈÂÊÅÂÌÍËÀÍ½É %XBSGÅ.JDSPTPGU7JTVBM$
ÉØʽÜÄØÇ¿ØÎËÇËÀËÐÍË¿ÊÜ
ÍÂÇËÊÎÏÍÐÇÓÅÜÀͽѽÌËÏËǽÐÌͽ¿ÈÂ
ÊÅÜÎÐÔÂÏËÉͽÄ˾ͽÊÊËÆÌȽÏÑËÍÉËĽ¿Å
½ÈÅĽÓÅÜÅÚÇÎÌÂÍÅÉÂÊϽÈÙÊ½Ü ÎÅÉËÆÅÊÑËÍɽÓÅÅ
ÌÍË¿ÂÍǽ
ͽÄÉÂÏǽÍÂÀÅËÊË¿USZDBUDIÅ˾ͽ
¾ËÏÔÅÇË¿ÅÎÇÈÛÔÂÊÅÆ
ͽÉÇ½Ò ÁÂÇËÉÌÅÈÜÏËͽ 5Z%FD ¾ØȽ ¬ÍËÏËÏÅÌʽÜͽÈÅĽÓÅÜÌÍËÏÂÎÏÅÍË¿½
¿ØÌËÈÊÂʽÌÍËÏËÏÅÌʽÜͽÈÅĽÓÅÜÌÍÂÁ ʽʽʽ¾ËÍÂÌÍÅÉÂÍË¿
ÔÅÎÈÂÊÊØÂҽͽÇ
ÈËÃÂÊÊØÒ¿ÌÍÂÁØÁÐÖÅÒͽÄÁÂȽÒÌËÁÒË ÏÂÍÅÎÏÅÇÅÇËÏËÍØÒÌÍÂÁÎϽ¿ÈÂÊؿϽ¾È
ÁË¿ÅÉÂÏËÁË¿ÊÂÀËÁ˾½¿ÈÂʽÌËÁÁÂÍà §ËÈËÊǽ$-0$ÎËÁÂÍÃÅÏÇËÈÅÔÂÎÏ¿ËÎÏÍËÇ¿
ǽ¿ËÎÎϽÊË¿ÈÂÊÅÜÇËÊÎÏÍÐÇÓÅÆUSZDBUDI ÇËÁÂÅÎÒËÁÊËÆÌÍËÀͽÉÉØÇËÈËÊǽ"-0$v
ÅÄÌÍËÀͽÉÉʽÜÄØǽÎÎÂɾÈÂͽÁÈÜ½Í ÇËÈÅÔÂÎÏ¿ËÎÏÍËÇ¿ÌÍËÀͽÉÉÂʽÜÄØǽÎ
ÒÅÏÂÇÏÐÍØ Y
ÌËÈÐÔÂÊÊØÒ ¿ ÍÂÄÐÈÙϽÏ ÎÂɾÈÂͽ
ÌËÈÐÔÂÊÊËÆ¿ÍÂÄÐÈÙϽÏÂÇËÉÌÅ
ÏͽÊÎÈÜÓÅÅÌÍËÀͽÉÉʽÜÄØÇ®ÅÇËÉ ÈÜÓÅÅÅÎÒËÁÊËÆÌÍËÀͽÉÉØ
ÌÅÈÜÏËͽÉÅ($$
*OUFM$$PNQJMFS
.JDSP ¡ÈÜ¿ÎÂÒÏÂÎÏË¿¾ØÈËÐÎÌÂÕÊË¿ØÌËÈÊÂÊË
TPGU7JTVBM$ʽÌȽÏÑËÍɽÒ-JOVYÅ8JO ¿ËÎÎϽÊË¿ÈÂÊÅÂÎÏÍÐÇÏÐÍÁ½ÊÊØÒ
οÜĽÊÊØÒ
EPXT ÎÅÎÇÈÛÔÂÊÅÜÉÅ
¾ÈËÇ˿˾ͽ¾ËÏÇÅÅÎÇÈÛÔÂ
½ÈÅÄË¿½ÊʽÜÌËÁÁÂÍÃǽ˾ͽ¾ËÏÇÅÅÎ ÊÅÆ¡½ÈÂÂÌÍÅ¿ÂÁÂÊØÌÍÅÉÂÍؿؿËÁ½ÁÂ
ÇÈÛÔÂÊÅÆÜÄØǽ®ÅÎËÎÏËÅÏÅÄÎÈÂÁÐÛ ÇËÉÌÅÈÜÏËͽÁÈÜÊÂÇËÏËÍØÒÑÐÊÇÓÅÆÅÄÌÍË
ÖÅÒËÎÊË¿ÊØÒÚϽÌË¿ ÀͽÉÉÏÂÎÏË¿ËÀËʽ¾Ëͽ ÎÉÈÅÎÏÅÊÀÅ
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
¯½¾ÈÅÓ½
¨ÅÎÏÅÊÀËÎÎϽÊË¿ÈÂÊʽÜÑÐÊÇÓÅÜBOUMS" ¨ÅÎÏÅÊÀËÎÎϽÊË¿ÈÂÊʽÜÑÐÊÇÓÅÜ
/5-3&YDFQUJPO_"/5-3&YDFQUJPO
5PLFO4USFBN4FMFDUPSOFYU5PLFO
ÅÄÌÍÅÉÂͽMJCBOUMS %XBSG
ѽÆÈ ÅÄÌÍÅÉÂͽMJCBOUMS NTWD
"/5-3&YDFQUJPOIQQ ѽÆÈ5PLFO4USFBN4FMFDUPSDQQ
Void _ZN5antlr14ANTLRExceptionD0Ev(struc void ?nextToken@TokenStreamSelector@
t struct0* arg1) antlr@
{ #8$("$9"7RNHQ5HI&RXQW#97RNHQ#DQWOU####
int * v1; XZ
struct struct0 * eax2; (int arg1)
{
void * ebp3;
void * esp1; void * esp2;
int eax4;
void * ebp3; int v4;
int edx5;
int v5; int v6;
void * ebp6;
int ebx7; int v8;
int v7; int esi9; int v10;
void * ebp8; int edi11; int v12;
arg1- void * * fs13;
!¿HOG B=791DQWOU$17/5([FHSWLRQ( void * v14;
!¿HOG struct struct8 * v15;
v1=(int
DUJ!¿HOG struct struct8 * ecx16;
_LEHB24: int v17; int v18;
/* start of try block for landing pad int v19;
.L268 */ void * ebp20;
_ZNSsD1Ev(v1); void * ebp21;
_LEHE24: int * fs22;
/* end of try block for landing pad esp1 = esp2 - 4;
.L268 */ ebp3 = esp1;
eax2 = 1; v4 = -1;
if(eax2!=0) { v5 = __ehhandler$?nextToken@
eax2=_ZdlPv(arg1); TokenStreamSelector@antlr@
goto _LEHE25; #8$("$9"7RNHQ5HI&RXQW#97RNHQ#
} antlr@@@2@XZ;
v6 = ebx7;
_L268: /* landing pad */
v8 = esi9;
*(int*)(ebp3+ -1)=eax4;
v10 = edi11;
if(edx5==-1)
v12 = * ___security_cookie^(int)ebp3;
goto _L265; * fs13 = (void*)(-12 +((int)ebp3+4));
v7=*(int*)(ebp6+ -1); v14 = (void*)((int)esp1-4-4-4-4-8-4-4-
_LEHB25: /* start of try block without 4-4);
landing pad */ v15 = ecx16;
_Unwind_Resume (v7); v17 = 0; /* start of try block 0 */
_L265: /* exception handler for typeinfo $LN3@nextToken:
at 16777471 */ v18 = 0;
eax2 = __cxa_call_unexpected ((void(*)(int,int,int,int,int,struct
(*(int*)(ebp8+ -1)); struct8*,void*,int,int))
_LEHE25: /* end of try block without
Y!¿HOGDUJYYY
landing pad */ v6, v15, v14, v5, v4);
return; v19 = v17 | 1;
} goto $LN4@nextToken;
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ
¬¥§¨¡ª¼¥ª±«©¯¥§
¥ÊÎÏÍÐÉÂÊϽÈÙÊØÂÎÍÂÁÎÏ¿½ ©ËÁÂÈÅŽÈÀËÍÅÏÉØ