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

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

?? sharedsection.bat

?? KmdKit 匯編下開發驅動的工具 由俄羅斯某強男開發
?? BAT
字號:
;@echo off
;goto make

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;
;  SharedSection - How to share section between kernel-mode driver and its user-mode client
;
; This method is applicable only for highest-level or monolithic driver
; because the section object is always mapped in the user address space of a process
; So, the address is valid only if it is accessed in the context of the process.
;
;  Written by Four-F (four-f@mail.ru)
;
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.386
.model flat, stdcall
option casemap:none

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                  I N C L U D E   F I L E S                                        
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

include \masm32\include\w2k\ntstatus.inc
include \masm32\include\w2k\ntddk.inc
include \masm32\include\w2k\ntoskrnl.inc
include \masm32\include\w2k\native.inc

includelib \masm32\lib\w2k\ntoskrnl.lib

include \masm32\Macros\Strings.mac

include ..\common.inc
include seh0.inc

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                 R E A D O N L Y    D A T A                                        
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.const

CCOUNTED_UNICODE_STRING	"\\Device\\SharedSection", g_usDeviceName, 4
CCOUNTED_UNICODE_STRING	"\\DosDevices\\SharedSection", g_usSymbolicLinkName, 4

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                         C O D E                                                   
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.code

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                   DispatchCreateClose                                             
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DispatchCreateClose proc pDeviceObject:PDEVICE_OBJECT, pIrp:PIRP

	mov eax, pIrp
	mov (_IRP PTR [eax]).IoStatus.Status, STATUS_SUCCESS
	and (_IRP PTR [eax]).IoStatus.Information, 0

	fastcall IofCompleteRequest, pIrp, IO_NO_INCREMENT

	mov eax, STATUS_SUCCESS
	ret

DispatchCreateClose endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                     DispatchControl                                               
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DispatchControl proc uses esi edi pDeviceObject:PDEVICE_OBJECT, pIrp:PIRP

local hSection:HANDLE
local oa:OBJECT_ATTRIBUTES
local pSectionBaseAddress:PVOID
local liViewSize:LARGE_INTEGER

	invoke DbgPrint, $CTA0("\nSharedSection: Entering DispatchControl\n")

	mov esi, pIrp
	assume esi:ptr _IRP

	; Assume unsuccess
	mov [esi].IoStatus.Status, STATUS_UNSUCCESSFUL
	; We copy nothing
	and [esi].IoStatus.Information, 0

	IoGetCurrentIrpStackLocation esi
	mov edi, eax
	assume edi:ptr IO_STACK_LOCATION

	.if [edi].Parameters.DeviceIoControl.IoControlCode == IOCTL_SHARE_MY_SECTION

		invoke DbgPrint, $CTA0("SharedSection: Opening section object\n")

		lea ecx, oa
		InitializeObjectAttributes ecx, offset g_usSectionName, OBJ_CASE_INSENSITIVE, NULL, NULL
		invoke ZwOpenSection, addr hSection, SECTION_MAP_WRITE + SECTION_MAP_READ, addr oa
		.if eax == STATUS_SUCCESS

			invoke DbgPrint, $CTA0("SharedSection: Section object opened\n")

			and pSectionBaseAddress, NULL			; The system itself should choose the address
			and liViewSize.HighPart, 0
			and liViewSize.LowPart, 0
			; NtCurrentProcess equ -1
			invoke ZwMapViewOfSection, hSection, NtCurrentProcess, addr pSectionBaseAddress, 0, SECTION_SIZE, \
									NULL, addr liViewSize, ViewShare, 0, PAGE_READWRITE
			.if eax == STATUS_SUCCESS

				invoke DbgPrint, $CTA0("SharedSection: Section mapped at address %08X\n"), pSectionBaseAddress

				_try

				invoke _strrev, pSectionBaseAddress
				mov [esi].IoStatus.Status, STATUS_SUCCESS

				invoke DbgPrint, $CTA0("SharedSection: String reversed\n")

				_finally

				invoke ZwUnmapViewOfSection, NtCurrentProcess, pSectionBaseAddress

				invoke DbgPrint, $CTA0("SharedSection: Section at address %08X unmapped \n"), pSectionBaseAddress

			.else
				invoke DbgPrint, $CTA0("SharedSection: Couldn't map view of section. Status: %08X\n"), eax
			.endif
			invoke ZwClose, hSection
			invoke DbgPrint, $CTA0("SharedSection: Section object handle closed\n")
		.else
			invoke DbgPrint, $CTA0("SharedSection: Couldn't open section. Status: %08X\n"), eax
		.endif

	.else
		mov [esi].IoStatus.Status, STATUS_INVALID_DEVICE_REQUEST
	.endif

	; We MUST NOT touch IRP after IoCompleteRequest has returned. It might be freed.

	push [esi].IoStatus.Status

	assume edi:nothing
	assume esi:nothing
	
	fastcall IofCompleteRequest, esi, IO_NO_INCREMENT

	invoke DbgPrint, $CTA0("SharedSection: Leaving DispatchControl\n")

	pop eax
	ret

DispatchControl endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                       DriverUnload                                                
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DriverUnload proc pDriverObject:PDRIVER_OBJECT

	invoke IoDeleteSymbolicLink, addr g_usSymbolicLinkName

	mov eax, pDriverObject
	invoke IoDeleteDevice, (DRIVER_OBJECT PTR [eax]).DeviceObject

	ret

DriverUnload endp

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                              D I S C A R D A B L E   C O D E                                      
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

.code INIT

;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
;                                       DriverEntry                                                 
;:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

DriverEntry proc pDriverObject:PDRIVER_OBJECT, pusRegistryPath:PUNICODE_STRING

local status:NTSTATUS
local pDeviceObject:PDEVICE_OBJECT

	mov status, STATUS_DEVICE_CONFIGURATION_ERROR

	invoke IoCreateDevice, pDriverObject, 0, addr g_usDeviceName, FILE_DEVICE_UNKNOWN, 0, TRUE, addr pDeviceObject
	.if eax == STATUS_SUCCESS
		invoke IoCreateSymbolicLink, addr g_usSymbolicLinkName, addr g_usDeviceName
		.if eax == STATUS_SUCCESS
			mov eax, pDriverObject
			assume eax:ptr DRIVER_OBJECT
			mov [eax].MajorFunction[IRP_MJ_CREATE*(sizeof PVOID)],			offset DispatchCreateClose
			mov [eax].MajorFunction[IRP_MJ_CLOSE*(sizeof PVOID)],			offset DispatchCreateClose
			mov [eax].MajorFunction[IRP_MJ_DEVICE_CONTROL*(sizeof PVOID)],	offset DispatchControl
			mov [eax].DriverUnload,											offset DriverUnload
			assume eax:nothing
			mov status, STATUS_SUCCESS
		.else
			invoke IoDeleteDevice, pDeviceObject
		.endif
	.endif

	mov eax, status
	ret

DriverEntry endp

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

end DriverEntry

:make

set drv=SharedSection

\masm32\bin\ml /nologo /c /coff %drv%.bat
\masm32\bin\link /nologo /driver /base:0x10000 /align:32 /out:%drv%.sys /subsystem:native /ignore:4078 %drv%.obj

del %drv%.obj
move %drv%.sys ..

echo.
pause

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一区二区三区蜜臀| 91在线观看免费视频| 欧美一区二区三区视频在线| 婷婷国产v国产偷v亚洲高清| 欧美一区二区三区系列电影| 久久国产综合精品| 国产蜜臀av在线一区二区三区| 高清国产午夜精品久久久久久| 亚洲私人黄色宅男| 欧美日韩免费在线视频| 狠狠网亚洲精品| 亚洲欧美日韩在线不卡| 欧美精品亚洲二区| 国产成人av一区| 亚洲一区二区在线播放相泽| 日韩一本二本av| eeuss鲁片一区二区三区在线看| 亚洲与欧洲av电影| 精品国产一区二区三区av性色 | 亚洲国产欧美日韩另类综合 | 国产日韩av一区二区| 色国产综合视频| 久久er精品视频| 亚洲欧美中日韩| 91精品欧美福利在线观看| 国产自产v一区二区三区c| 亚洲色图欧美激情| 精品国精品自拍自在线| 97超碰欧美中文字幕| 蜜桃av噜噜一区二区三区小说| 中日韩av电影| 日韩亚洲欧美高清| 欧美一区二区三区思思人| 激情图片小说一区| 亚洲成人免费在线观看| 国产日韩欧美综合在线| 欧美一区二区视频在线观看 | 精品一区精品二区高清| 亚洲免费观看高清| 久久久午夜电影| 欧美一区二区久久| 色老综合老女人久久久| 国产福利一区二区| 欧美aⅴ一区二区三区视频| 亚洲三级在线免费观看| 国产午夜精品一区二区三区四区| 欧美理论片在线| 色呦呦国产精品| 国产91在线看| 国产一区二区三区香蕉| 日本欧美一区二区| 一区二区三区欧美| 国产精品国产a级| 久久综合色天天久久综合图片| 欧美日韩精品一区二区三区 | 欧美久久高跟鞋激| 色88888久久久久久影院按摩| 成人天堂资源www在线| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美午夜电影在线播放| 成人精品小蝌蚪| 国产精品1区二区.| 国产一区二区三区在线观看免费| 青青草伊人久久| 亚洲一二三区在线观看| 亚洲尤物在线视频观看| 日本不卡免费在线视频| 日韩精品午夜视频| 午夜电影久久久| 人禽交欧美网站| 日韩成人免费在线| 蜜臀精品一区二区三区在线观看| 视频精品一区二区| 久久精品国产网站| 激情另类小说区图片区视频区| 久久99国产乱子伦精品免费| 青青草成人在线观看| 麻豆精品在线播放| 国内一区二区在线| 国产高清久久久| 99热99精品| 色综合久久综合网欧美综合网| 91色porny在线视频| 91在线观看美女| 91麻豆.com| 欧美日韩国产一区| 欧美成va人片在线观看| 久久品道一品道久久精品| 国产女同性恋一区二区| 亚洲国产经典视频| 一区二区三区在线视频观看 | 日韩一区二区在线观看视频播放| 日韩一二三区视频| 国产欧美日韩麻豆91| 亚洲三级电影网站| 亚洲超碰97人人做人人爱| 蜜桃久久av一区| 成人中文字幕合集| 欧美性受xxxx| 欧美r级在线观看| 久久精品一区四区| 亚洲乱码日产精品bd| 日韩高清不卡在线| 国产精品一二三四五| 色综合欧美在线| 欧美一级生活片| 国产亚洲欧美在线| 亚洲综合久久久| 久久99久久久欧美国产| aaa亚洲精品| 日韩一区二区电影在线| 亚洲欧洲成人自拍| 喷水一区二区三区| 成人av资源在线| 欧美丰满少妇xxxxx高潮对白| 久久久久久99精品| 亚洲图片欧美色图| 从欧美一区二区三区| 欧美日韩国产乱码电影| 国产精品视频免费看| 日本不卡一区二区三区| 99精品视频在线观看免费| 91精品国产福利在线观看| 国产精品丝袜一区| 日韩激情在线观看| 91碰在线视频| 亚洲精品在线观看网站| 亚洲小说春色综合另类电影| 国产大陆a不卡| 日韩一区二区麻豆国产| 亚洲欧美综合另类在线卡通| 精品亚洲免费视频| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 色综合久久久久综合| 久久这里只精品最新地址| 亚洲一区二区三区国产| 成人h动漫精品一区二区| 精品少妇一区二区三区视频免付费| 亚洲免费毛片网站| 成人一级片网址| 久久综合九色综合欧美98| 五月婷婷综合激情| 91行情网站电视在线观看高清版| 久久精品人人做人人综合| 另类欧美日韩国产在线| 欧美群妇大交群的观看方式| 亚洲理论在线观看| 91在线国内视频| 中文字幕免费观看一区| 国产精品一区二区男女羞羞无遮挡| 欧美日韩1234| 亚洲va国产天堂va久久en| 一本色道a无线码一区v| 中文字幕一区二| 国产成人自拍在线| 久久精品亚洲国产奇米99| 久久99国产精品免费网站| 日韩一区二区免费在线电影| 日韩成人精品在线观看| 91精品国产美女浴室洗澡无遮挡| 亚洲综合另类小说| 欧美视频一区在线| 偷窥少妇高潮呻吟av久久免费| 在线观看免费成人| 亚洲国产成人av网| 欧美精品免费视频| 蜜乳av一区二区| 久久亚洲综合av| 高清不卡一区二区| 1024精品合集| 色av成人天堂桃色av| 亚洲午夜久久久久久久久电影网 | 欧美成va人片在线观看| 国内精品国产三级国产a久久| 精品久久五月天| 国产成人亚洲精品狼色在线| 亚洲国产高清aⅴ视频| 色综合久久综合网| 亚洲国产精品一区二区久久 | 制服丝袜成人动漫| 久久99久国产精品黄毛片色诱| 精品国内片67194| 成人aaaa免费全部观看| 一区二区三区在线视频播放 | 色婷婷av一区| 日韩激情一区二区| 久久久精品黄色| 91在线免费播放| 午夜电影一区二区三区| 精品国偷自产国产一区| 成人av小说网| 性做久久久久久免费观看欧美| 欧美videofree性高清杂交| 国产91精品欧美| 亚洲第一福利视频在线| 久久久一区二区| 欧美唯美清纯偷拍| 国内成人精品2018免费看| 亚洲免费观看高清在线观看| 欧美一区午夜精品|