亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? seh.inc

?? 這是asm驅動的開發包
?? INC
字號:
; SEH.inc (MASM)

SEH STRUCT 
	SafeOffset		dd	?	; The offset where it's safe to continue execution 
	PrevEsp			dd	?	; the old value in esp 
	PrevEbp			dd	?	; The old value in ebp 
SEH ENDS

SEH_SafePlaceCounter	= 0

externdef g_hConsoleOutput:HANDLE

PrintConsole proto :LPSTR, :DWORD
externdef PrintConsole:proc

;g_cbInclude

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

_try MACRO SafePlace, xHandler:=<DefaultExceptionHandler>
	local sp_lbl

	PUSHCONTEXT ASSUMES    
	assume fs:nothing
	
	IFNDEF seh
		.data
		seh	SEH <>
		.code
	ENDIF
   
	push offset xHandler
	push fs:[0]						; address of next ERR structure
	mov fs:[0], esp					; give FS:[0] the ERR address just made

	IFB <SafePlace>
		sp_lbl TEXTEQU @CatStr(<SEH_SafePlace>, %(SEH_SafePlaceCounter))
		IFDEF DEBUG
		% echo sp_lbl
		ENDIF
		mov seh.SafeOffset, offset sp_lbl
	ELSE
		mov seh.SafeOffset, offset SafePlace	
	ENDIF
	mov seh.PrevEbp, ebp
	mov seh.PrevEsp, esp

	POPCONTEXT ASSUMES

ENDM

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

_finally MACRO
	local sp_lbl

	sp_lbl TEXTEQU @CatStr(<SEH_SafePlace>, %(SEH_SafePlaceCounter))
	SEH_SafePlaceCounter = SEH_SafePlaceCounter + 1
	sp_lbl:

	PUSHCONTEXT ASSUMES    
	assume fs:nothing
	pop fs:[0]						; restore next ERR structure to FS:[0]
	add esp, sizeof DWORD			; throw away rest of ERR structure
	POPCONTEXT ASSUMES
ENDM

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

_throw MACRO ExceptionCode:REQ
;	IFB <ExceptionCode>
;		ECHO _throw macro ERROR! Specify Exception Code.
;		.ERR; <_throw macro ERROR! Specify Exception Code.>
;	ENDIF
	xor eax, eax
	invoke	RaiseException, ExceptionCode, eax, eax, eax
ENDM

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.code

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DefaultExceptionHandler proc C uses esi pExcept:DWORD, pFrame:DWORD, pContext:DWORD, pDispatch:DWORD

;local dwNumberOfBytesWritten:DWORD
local acMessage[128]:CHAR

	mov esi, pExcept

	.if [esi][EXCEPTION_RECORD.ExceptionCode] == EXCEPTION_ACCESS_VIOLATION
		; which address ?
		mov eax, [esi][EXCEPTION_RECORD.ExceptionInformation][4]

		mov ecx, g_pInclude
		add ecx, g_cbInclude

		mov edx, g_pSymEntries
		add edx, g_cbSymEntries

		.if ( ( eax >= g_pInclude ) && ( eax < ecx ) ) || ( ( eax >= g_pSymEntries ) && ( eax < edx ) )
			.if [esi][EXCEPTION_RECORD.ExceptionInformation][0]			; Read or write ?
				; parser needs more memory to write data to
				; let's commit one page more

				invoke VirtualAlloc, [esi][EXCEPTION_RECORD.ExceptionInformation][4], \ 
										1000h , MEM_COMMIT, PAGE_READWRITE
				.if eax == NULL
					; if could not be committed prompt ot user
;					invoke WriteFile, g_hConsoleOutput, \
;								$CTA0("\nException handling: Insufficient Memory Available\:\n\n", szInsufficientMemory), \
;								sizeof szInsufficientMemory, addr dwNumberOfBytesWritten, NULL
					invoke PrintConsole, $CTA0("\nException handling: Insufficient Memory Available\:\n\n"), 0

				.else
					; exception successefuly handled. let's continue
					; reload context & continue execution
					IFDEF DEBUG
					invoke wsprintf, addr acMessage, \
							$CTA0("\nException handling: Memory (one page) allocated at address %08X\n\n"), eax
;					mov ecx, eax
;					invoke WriteFile, g_hConsoleOutput, addr acMessage, ecx, addr dwNumberOfBytesWritten, NULL
					invoke PrintConsole, addr acMessage, 0
					ENDIF
				    xor eax, eax		;mov eax, ExceptionContinueExecution
				    ret
				.endif

			.endif
		.else
			Fix Remove this
			mov eax, g_pInclude
			add eax, g_cbInclude
		.endif
	.endif

	invoke PrintConsole, $CTA0("\nAn exception has occured\:\n"), FOREGROUND_RED + FOREGROUND_INTENSITY

	CTA  "  Exception Code:    %08X\n", g_szExceptionInfo
	CTA0 "  Exception Address: %08X\n\n"
	CTA0 "  Attempt to %s data at address %08X\n\n", g_szAccessViolation

	invoke wsprintf, addr acMessage, addr g_szExceptionInfo, [esi][EXCEPTION_RECORD.ExceptionCode], [esi][EXCEPTION_RECORD.ExceptionAddress]
;	mov ecx, eax
;	invoke WriteFile, g_hConsoleOutput, addr acMessage, ecx, addr dwNumberOfBytesWritten, NULL
	invoke PrintConsole, addr acMessage, 0

	.if [esi][EXCEPTION_RECORD.ExceptionCode] == EXCEPTION_ACCESS_VIOLATION
		; There is some extra info
		.if [esi][EXCEPTION_RECORD.ExceptionInformation][0]			; Read or write ?
			mov eax, $CTA0("write")
		.else
			mov eax, $CTA0("read")
		.endif
		invoke wsprintf, addr acMessage, addr g_szAccessViolation, eax, [esi][EXCEPTION_RECORD.ExceptionInformation][4]
;		mov ecx, eax
;		invoke WriteFile, g_hConsoleOutput, addr acMessage, ecx, addr dwNumberOfBytesWritten, NULL
		invoke PrintConsole, addr acMessage, 0
	.endif

	IFNDEF seh
		.data
		seh	SEH <>
		.code
	ENDIF

	lea eax, seh
    push (SEH PTR [eax]).SafeOffset
    push (SEH PTR [eax]).PrevEsp
    push (SEH PTR [eax]).PrevEbp

	mov eax, pContext
    pop (CONTEXT PTR [eax]).regEbp
    pop (CONTEXT PTR [eax]).regEsp
    pop (CONTEXT PTR [eax]).regEip

	; reload context & continue execution
    xor eax, eax						;mov eax, ExceptionContinueExecution

    ret 

DefaultExceptionHandler endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲视频狠狠干| 久久精品欧美一区二区三区不卡| 精品无人区卡一卡二卡三乱码免费卡 | 欧美三片在线视频观看| 色综合久久久久久久久久久| 91色综合久久久久婷婷| 91亚洲男人天堂| 色哟哟日韩精品| 欧美性欧美巨大黑白大战| 欧美二区三区的天堂| 日韩欧美中文一区二区| 日韩精品一区国产麻豆| 国产精品入口麻豆九色| 中文字幕不卡的av| 一区二区免费视频| 免费成人在线影院| 成人免费精品视频| 欧美羞羞免费网站| 日韩免费高清av| 欧美激情综合五月色丁香小说| 亚洲欧美日韩国产一区二区三区| 亚洲福利国产精品| 国产在线一区观看| 色香蕉久久蜜桃| 欧美电影免费观看高清完整版在线 | 99精品视频一区二区| 欧美做爰猛烈大尺度电影无法无天| 欧美日韩一区二区三区四区| 日韩午夜av电影| 综合自拍亚洲综合图不卡区| 天天影视涩香欲综合网| 国产经典欧美精品| 欧美美女bb生活片| 久久久久九九视频| 亚洲图片欧美色图| 国产.欧美.日韩| 69p69国产精品| 亚洲国产电影在线观看| 青青草国产成人av片免费| 成人福利电影精品一区二区在线观看| 欧美综合一区二区| 国产精品美女久久久久久久| 日本美女视频一区二区| 91婷婷韩国欧美一区二区| 精品国产sm最大网站| 亚洲最新视频在线观看| 国产成人啪免费观看软件| 欧美日韩国产成人在线免费| 最新久久zyz资源站| 久久电影网站中文字幕| 欧美日韩黄色一区二区| 亚洲欧美日韩中文播放| 国产精品正在播放| 日韩一区二区精品| 婷婷久久综合九色国产成人 | 亚洲电影欧美电影有声小说| 成人久久视频在线观看| 国产亚洲制服色| 免费亚洲电影在线| 欧美日韩在线免费视频| 亚洲综合色视频| 91一区一区三区| 国产精品久久久久9999吃药| 国内久久婷婷综合| 精品免费日韩av| 老司机一区二区| 欧美成人女星排名| 韩国女主播成人在线| 日韩欧美在线不卡| 麻豆国产精品官网| 欧美精品一区二| 国产精品1区二区.| 久久精品视频免费| 成人国产精品视频| 中文字幕在线一区| 91色porny| 亚洲va欧美va人人爽| 欧美日韩一区不卡| 日韩精品1区2区3区| 日韩女优av电影在线观看| 久久精品国产77777蜜臀| 精品国产伦一区二区三区观看体验 | 日韩不卡一二三区| 日韩欧美一区二区免费| 国产一区高清在线| 国产精品理论在线观看| 在线亚洲精品福利网址导航| 亚洲一区二区影院| 91精品国产美女浴室洗澡无遮挡| 免费在线观看日韩欧美| 久久久精品日韩欧美| 国产成人av电影| 亚洲美女视频在线| 91精品中文字幕一区二区三区| 毛片av一区二区| 国产欧美日韩另类一区| 色婷婷综合久久久久中文 | 日韩久久免费av| 成人夜色视频网站在线观看| 一区二区三区欧美久久| 日韩欧美一级精品久久| va亚洲va日韩不卡在线观看| 亚洲国产一区二区在线播放| 2021久久国产精品不只是精品 | 亚洲韩国一区二区三区| 精品日韩一区二区三区| 色综合视频在线观看| 麻豆国产精品777777在线| 国产精品久久久久久妇女6080| 欧美日韩一区二区三区在线| 国产成人高清视频| 午夜电影一区二区三区| 中文一区在线播放| 欧美一区二区三区白人| av一区二区三区四区| 免费高清在线视频一区·| 综合久久一区二区三区| 欧美白人最猛性xxxxx69交| 91麻豆国产福利在线观看| 久久超碰97中文字幕| 亚洲激情自拍视频| 久久久99精品免费观看不卡| 91麻豆精品国产91久久久久| 高清不卡在线观看av| 免费国产亚洲视频| 一片黄亚洲嫩模| 1区2区3区精品视频| 精品福利av导航| 717成人午夜免费福利电影| 99久久亚洲一区二区三区青草| 国产一区二区三区电影在线观看 | 久久不见久久见中文字幕免费| 亚洲综合图片区| 亚洲免费在线观看| 精品一区二区三区在线播放视频 | 26uuu亚洲综合色欧美 | 日韩欧美黄色影院| 欧美性生活久久| 99精品国产视频| 国产成人精品免费看| 九九久久精品视频| 久久精品久久99精品久久| 夜夜精品视频一区二区| 亚洲欧美经典视频| 亚洲男人的天堂av| 亚洲精品福利视频网站| 亚洲精品第一国产综合野| 日韩伦理免费电影| 亚洲靠逼com| 亚洲一级在线观看| 亚洲777理论| 日韩精品一级二级| 麻豆免费精品视频| 国产乱人伦精品一区二区在线观看| 久久99国产精品尤物| 国产伦精品一区二区三区视频青涩| 免费成人av资源网| 国精品**一区二区三区在线蜜桃| 极品少妇xxxx精品少妇偷拍| 国产一区欧美二区| 国产v综合v亚洲欧| k8久久久一区二区三区 | 色美美综合视频| 91免费版在线看| 在线精品视频小说1| 欧美日韩一级片在线观看| 在线播放/欧美激情| 精品久久久久久无| 国产精品污网站| 亚洲国产日韩精品| 狠狠久久亚洲欧美| 不卡区在线中文字幕| 欧美午夜免费电影| 欧美xxxxxxxx| 国产精品伦理一区二区| 亚洲午夜精品网| 精品写真视频在线观看| 91丨porny丨首页| 欧美一区二区三区四区在线观看| 2020日本不卡一区二区视频| 亚洲欧美色图小说| 久久99精品久久久久久动态图| 福利视频网站一区二区三区| 91成人免费在线视频| 日韩精品资源二区在线| 亚洲欧洲日本在线| 亚洲成人你懂的| 精品一区二区三区香蕉蜜桃| 91福利国产精品| 日韩欧美高清在线| 国产精品黄色在线观看| 亚洲电影你懂得| 成人综合激情网| 欧美美女视频在线观看| 中文字幕精品一区二区精品绿巨人| 曰韩精品一区二区| 久久99精品久久久久久国产越南 | 久久这里只有精品首页| 亚洲图片欧美激情| 麻豆91精品视频|