home *** CD-ROM | disk | FTP | other *** search
- .text
- ; This is the default routine for the signal handler, when a trap occurs
- ; It just uses the global variable _CurrentException and _CurrentContext
- ; set up by the startup for putting a message box and then exits
- .file "defsig.c"
- .type __signalHandler,function
- __signalHandler:
- subl $512,%esp
- movl %esp,%edi
- movl %esp,%ebx
- movb $0,(%esp)
- movl __CurrentException,%ecx
- or %ecx,%ecx
- je _$76
- pushl 12(%ecx)
- pushl (%ecx)
- pushl $_$75
- pushl %edi
- call _sprintf
- movl __CurrentContext,%esi
- orl %esi,%esi
- je _$76
- xor %eax,%eax
- stc
- sbb %ecx,%ecx
- repne
- scasb
- decl %edi
- pushl 168(%esi)
- pushl 172(%esi)
- pushl 164(%esi)
- pushl 176(%esi)
- pushl $_$78
- pushl %edi
- call _sprintf
- xor %eax,%eax
- stc
- sbb %ecx,%ecx
- repne
- scasb
- decl %edi
- pushl 184(%esi)
- pushl 180(%esi)
- pushl 156(%esi)
- pushl 160(%esi)
- pushl $_$79
- pushl %edi
- call _sprintf
- _$76:
- pushl $0x10010
- pushl $_$80
- pushl %ebx
- pushl $0
- call _MessageBoxA@16
- pushl $-1
- call __exit
- _$86:
- .size __signalHandler,_$86-__signalHandler
- .globl __signalHandler
- .extern __exit
- .text
- .extern _sprintf
- .text
- .extern __CurrentContext
- .text
- .extern __CurrentException
- .text
- .extern _MessageBoxA@16
- .text
- .align 2
- _$80:
- .byte 108,99,99,32,114,117,110,116,105,109,101,32,101,114,114,111
- .byte 114,0
- _$79:
- .byte 69,83,73,32,37,48,56,120,32,69,68,73,32,37,48,56
- .byte 120,32,69,66,80,32,37,48,56,120,32,69,73,80,32
- .byte 37,48,56,120,13,10,0
- _$78:
- .byte 69,65,88,32,37,48,56,120,32,69,66,88,32,37,48,56
- .byte 120,32,69,67,88,32,37,48,56,120,32,69,68,88,32
- .byte 37,48,56,120,13,10,0
- _$75:
- .byte 69,120,99,101,112,116,105,111,110,32,37,120,44,32,97,116
- .byte 32,97,100,100,114,101,115,115,32,37,120,10,0
-