mirror of
https://github.com/reactos/reactos.git
synced 2025-04-27 17:10:22 +00:00
more chages to bring up to krnl0012
svn path=/trunk/; revision=62
This commit is contained in:
parent
537bf0fdf6
commit
3afc66723c
8 changed files with 13 additions and 2771 deletions
|
@ -1,6 +1,6 @@
|
||||||
all: test.bin
|
all: test.bin
|
||||||
|
|
||||||
test.bin: test.asm
|
test.bin: test.o
|
||||||
$(LD) -Ttext 0x10000 test.o ../../lib/ntdll/ntdll.a -o test.exe
|
$(LD) -Ttext 0x10000 test.o ../../lib/ntdll/ntdll.a -o test.exe
|
||||||
$(OBJCOPY) -O binary test.exe test.bin
|
$(OBJCOPY) -O binary test.exe test.bin
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,4 @@ all: ide.o
|
||||||
|
|
||||||
ide.o: ide.c ide.h idep.h partitio.h
|
ide.o: ide.c ide.h idep.h partitio.h
|
||||||
|
|
||||||
dummy:
|
include ../../../rules.mak
|
||||||
|
|
||||||
include ../../rules.mak
|
|
||||||
|
|
|
@ -1,320 +0,0 @@
|
||||||
/*
|
|
||||||
* Win32 Global/Local heap functions (GlobalXXX, LocalXXX).
|
|
||||||
* These functions included in Win32 for compatibility with 16 bit Windows
|
|
||||||
* Especially the moveable blocks and handles are oldish.
|
|
||||||
* But the ability to directly allocate memory with GPTR and LPTR is widely
|
|
||||||
* used.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <windows.h>
|
|
||||||
|
|
||||||
#define MAGIC_GLOBAL_USED 0x5342BEEF
|
|
||||||
#define GLOBAL_LOCK_MAX 0xFF
|
|
||||||
|
|
||||||
typedef struct __GLOBAL_LOCAL_HANDLE
|
|
||||||
{
|
|
||||||
ULONG Magic;
|
|
||||||
LPVOID Pointer;
|
|
||||||
BYTE Flags;
|
|
||||||
BYTE LockCount;
|
|
||||||
} GLOBAL_HANDLE, LOCAL_HANDLE, *PGLOBAL_HANDLE, *PLOCAL_HANDLE;
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalAlloc -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
HGLOBAL WINAPI GlobalAlloc(UINT flags, DWORD size)
|
|
||||||
{
|
|
||||||
PGLOBAL_HANDLE phandle;
|
|
||||||
LPVOID palloc;
|
|
||||||
|
|
||||||
aprintf("GlobalAlloc( 0x%X, 0x%lX )\n", flags, size );
|
|
||||||
|
|
||||||
if((flags & GMEM_MOVEABLE)==0) /* POINTER */
|
|
||||||
{
|
|
||||||
palloc=HeapAlloc(__ProcessHeap, 0, size);
|
|
||||||
return (HGLOBAL) palloc;
|
|
||||||
}
|
|
||||||
else /* HANDLE */
|
|
||||||
{
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
|
|
||||||
|
|
||||||
phandle=__HeapAllocFragment(__ProcessHeap, 0, sizeof(GLOBAL_HANDLE));
|
|
||||||
if(size)
|
|
||||||
{
|
|
||||||
palloc=HeapAlloc(__ProcessHeap, 0, size+sizeof(HANDLE));
|
|
||||||
*(PHANDLE)palloc=(HANDLE) &(phandle->Pointer);
|
|
||||||
phandle->Pointer=palloc+sizeof(HANDLE);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
phandle->Pointer=NULL;
|
|
||||||
phandle->Magic=MAGIC_GLOBAL_USED;
|
|
||||||
phandle->Flags=flags>>8;
|
|
||||||
phandle->LockCount=0;
|
|
||||||
HeapUnlock(__ProcessHeap);
|
|
||||||
|
|
||||||
return (HGLOBAL) &(phandle->Pointer);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalLock -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
LPVOID WINAPI GlobalLock(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
PGLOBAL_HANDLE phandle;
|
|
||||||
LPVOID palloc;
|
|
||||||
|
|
||||||
aprintf("GlobalLock( 0x%lX )\n", (ULONG) hmem );
|
|
||||||
|
|
||||||
if(((ULONG)hmem%8)==0)
|
|
||||||
return (LPVOID) hmem;
|
|
||||||
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
phandle=(PGLOBAL_HANDLE)(((LPVOID) hmem)-4);
|
|
||||||
if(phandle->Magic==MAGIC_GLOBAL_USED)
|
|
||||||
{
|
|
||||||
if(phandle->LockCount<GLOBAL_LOCK_MAX)
|
|
||||||
phandle->LockCount++;
|
|
||||||
palloc=phandle->Pointer;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dprintf("GlobalLock: invalid handle\n");
|
|
||||||
palloc=(LPVOID) hmem;
|
|
||||||
}
|
|
||||||
HeapUnlock(__ProcessHeap);
|
|
||||||
return palloc;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalUnlock -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
BOOL WINAPI GlobalUnlock(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
PGLOBAL_HANDLE phandle;
|
|
||||||
BOOL locked;
|
|
||||||
|
|
||||||
aprintf("GlobalUnlock( 0x%lX )\n", (ULONG) hmem );
|
|
||||||
|
|
||||||
if(((ULONG)hmem%8)==0)
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
phandle=(PGLOBAL_HANDLE)(((LPVOID) hmem)-4);
|
|
||||||
if(phandle->Magic==MAGIC_GLOBAL_USED)
|
|
||||||
{
|
|
||||||
if((phandle->LockCount<GLOBAL_LOCK_MAX)&&(phandle->LockCount>0))
|
|
||||||
phandle->LockCount--;
|
|
||||||
|
|
||||||
locked=(phandle->LockCount==0) ? TRUE : FALSE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dprintf("GlobalUnlock: invalid handle\n");
|
|
||||||
locked=FALSE;
|
|
||||||
}
|
|
||||||
HeapUnlock(__ProcessHeap);
|
|
||||||
return locked;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalHandle -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
HGLOBAL WINAPI GlobalHandle(LPCVOID pmem)
|
|
||||||
{
|
|
||||||
aprintf("GlobalHandle( 0x%lX )\n", (ULONG) pmem );
|
|
||||||
|
|
||||||
if(((ULONG)pmem%8)==0) /* FIXED */
|
|
||||||
return (HGLOBAL) pmem;
|
|
||||||
else /* MOVEABLE */
|
|
||||||
return (HGLOBAL) *(LPVOID *)(pmem-sizeof(HANDLE));
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalReAlloc -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
HGLOBAL WINAPI GlobalReAlloc(HGLOBAL hmem, DWORD size, UINT flags)
|
|
||||||
{
|
|
||||||
LPVOID palloc;
|
|
||||||
HGLOBAL hnew;
|
|
||||||
PGLOBAL_HANDLE phandle;
|
|
||||||
|
|
||||||
aprintf("GlobalReAlloc( 0x%lX, 0x%lX, 0x%X )\n", (ULONG) hmem, size, flags );
|
|
||||||
|
|
||||||
hnew=NULL;
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
if(flags & GMEM_MODIFY) /* modify flags */
|
|
||||||
{
|
|
||||||
if( (((ULONG)hmem%8)==0) && (flags & GMEM_MOVEABLE))
|
|
||||||
{
|
|
||||||
/* make a fixed block moveable
|
|
||||||
* actually only NT is able to do this. And it's soo simple
|
|
||||||
*/
|
|
||||||
size=HeapSize(__ProcessHeap, 0, (LPVOID) hmem);
|
|
||||||
hnew=GlobalAlloc( flags, size);
|
|
||||||
palloc=GlobalLock(hnew);
|
|
||||||
memcpy(palloc, (LPVOID) hmem, size);
|
|
||||||
GlobalUnlock(hnew);
|
|
||||||
GlobalFree(hmem);
|
|
||||||
}
|
|
||||||
else if((((ULONG)hmem%8) != 0)&&(flags & GMEM_DISCARDABLE))
|
|
||||||
{
|
|
||||||
/* change the flags to make our block "discardable" */
|
|
||||||
phandle=(PGLOBAL_HANDLE)(((LPVOID) hmem)-4);
|
|
||||||
phandle->Flags = phandle->Flags | (GMEM_DISCARDABLE >> 8);
|
|
||||||
hnew=hmem;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
SetLastError(ERROR_INVALID_PARAMETER);
|
|
||||||
hnew=NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(((ULONG)hmem%8)!=0)
|
|
||||||
{
|
|
||||||
/* reallocate fixed memory */
|
|
||||||
hnew=(HANDLE)HeapReAlloc(__ProcessHeap, 0, (LPVOID) hmem, size);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* reallocate a moveable block */
|
|
||||||
phandle=(PGLOBAL_HANDLE)(((LPVOID) hmem)-4);
|
|
||||||
if(phandle->LockCount!=0)
|
|
||||||
SetLastError(ERROR_INVALID_HANDLE);
|
|
||||||
else if(size!=0)
|
|
||||||
{
|
|
||||||
hnew=hmem;
|
|
||||||
if(phandle->Pointer)
|
|
||||||
{
|
|
||||||
palloc=HeapReAlloc(__ProcessHeap, 0,
|
|
||||||
phandle->Pointer-sizeof(HANDLE),
|
|
||||||
size+sizeof(HANDLE) );
|
|
||||||
phandle->Pointer=palloc+sizeof(HANDLE);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
palloc=HeapAlloc(__ProcessHeap, 0, size+sizeof(HANDLE));
|
|
||||||
*(PHANDLE)palloc=hmem;
|
|
||||||
phandle->Pointer=palloc+sizeof(HANDLE);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if(phandle->Pointer)
|
|
||||||
{
|
|
||||||
HeapFree(__ProcessHeap, 0, phandle->Pointer-sizeof(HANDLE));
|
|
||||||
phandle->Pointer=NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
HeapUnlock(__ProcessHeap);
|
|
||||||
return hnew;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalFree -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
HGLOBAL WINAPI GlobalFree(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
PGLOBAL_HANDLE phandle;
|
|
||||||
|
|
||||||
aprintf("GlobalFree( 0x%lX )\n", (ULONG) hmem );
|
|
||||||
|
|
||||||
if(((ULONG)hmem%4)==0) /* POINTER */
|
|
||||||
{
|
|
||||||
HeapFree(__ProcessHeap, 0, (LPVOID) hmem);
|
|
||||||
}
|
|
||||||
else /* HANDLE */
|
|
||||||
{
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
phandle=(PGLOBAL_HANDLE)(((LPVOID) hmem)-4);
|
|
||||||
if(phandle->Magic==MAGIC_GLOBAL_USED)
|
|
||||||
{
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
if(phandle->LockCount!=0)
|
|
||||||
SetLastError(ERROR_INVALID_HANDLE);
|
|
||||||
if(phandle->Pointer)
|
|
||||||
HeapFree(__ProcessHeap, 0, phandle->Pointer-sizeof(HANDLE));
|
|
||||||
__HeapFreeFragment(__ProcessHeap, 0, phandle);
|
|
||||||
}
|
|
||||||
HeapUnlock(__ProcessHeap);
|
|
||||||
}
|
|
||||||
return hmem;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalSize -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
DWORD WINAPI GlobalSize(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
DWORD retval;
|
|
||||||
PGLOBAL_HANDLE phandle;
|
|
||||||
|
|
||||||
aprintf("GlobalSize( 0x%lX )\n", (ULONG) hmem );
|
|
||||||
|
|
||||||
if(((ULONG)hmem%8)==0)
|
|
||||||
{
|
|
||||||
retval=HeapSize(__ProcessHeap, 0, hmem);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
HeapLock(__ProcessHeap);
|
|
||||||
phandle=(PGLOBAL_HANDLE)(((LPVOID) hmem)-4);
|
|
||||||
if(phandle->Magic==MAGIC_GLOBAL_USED)
|
|
||||||
{
|
|
||||||
retval=HeapSize(__ProcessHeap, 0, (phandle->Pointer)-sizeof(HANDLE))-4;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
dprintf("GlobalSize: invalid handle\n");
|
|
||||||
retval=0;
|
|
||||||
}
|
|
||||||
HeapUnlock(__ProcessHeap);
|
|
||||||
}
|
|
||||||
return retval;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalWire -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
LPVOID WINAPI GlobalWire(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
return GlobalLock( hmem );
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalUnWire -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
BOOL WINAPI GlobalUnWire(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
return GlobalUnlock( hmem);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalFix -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
VOID WINAPI GlobalFix(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
GlobalLock( hmem );
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalUnfix -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
VOID WINAPI GlobalUnfix(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
GlobalUnlock( hmem);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*********************************************************************
|
|
||||||
* GlobalFlags -- KERNEL32 *
|
|
||||||
*********************************************************************/
|
|
||||||
UINT WINAPI GlobalFlags(HGLOBAL hmem)
|
|
||||||
{
|
|
||||||
return LocalFlags( (HLOCAL) hmem);
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,23 +0,0 @@
|
||||||
/*
|
|
||||||
* COPYRIGHT: See COPYING in the top level directory
|
|
||||||
* PROJECT: ReactOS user mode libraries
|
|
||||||
* FILE: kernel32/mem/utils.cc
|
|
||||||
* PURPOSE: Various simple memory initalizations functions
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <windows.h>
|
|
||||||
|
|
||||||
VOID ZeroMemory(PVOID Destination, DWORD Length)
|
|
||||||
{
|
|
||||||
#ifdef __i386__
|
|
||||||
|
|
||||||
#endif /* __i386__ */
|
|
||||||
}
|
|
||||||
|
|
||||||
VOID CopyMemory(PVOID Destination, CONST VOID* Source, DWORD Length)
|
|
||||||
{
|
|
||||||
#ifdef __i386__
|
|
||||||
#endif /* __i386__ */
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
|
@ -1,123 +0,0 @@
|
||||||
#include <windows.h>
|
|
||||||
#include <string.h>
|
|
||||||
#include <wstring.h>
|
|
||||||
|
|
||||||
int
|
|
||||||
STDCALL
|
|
||||||
lstrcmpA(
|
|
||||||
LPCSTR lpString1,
|
|
||||||
LPCSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return strcmp(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
STDCALL
|
|
||||||
lstrcmpiA(
|
|
||||||
LPCSTR lpString1,
|
|
||||||
LPCSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return stricmp(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
LPSTR
|
|
||||||
STDCALL
|
|
||||||
lstrcpynA(
|
|
||||||
LPSTR lpString1,
|
|
||||||
LPCSTR lpString2,
|
|
||||||
int iMaxLength
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return strncpy(lpString1,lpString2,iMaxLength);
|
|
||||||
}
|
|
||||||
|
|
||||||
LPSTR
|
|
||||||
STDCALL
|
|
||||||
lstrcpyA(
|
|
||||||
LPSTR lpString1,
|
|
||||||
LPCSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return strcpy(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
|
|
||||||
LPSTR
|
|
||||||
STDCALL
|
|
||||||
lstrcatA(
|
|
||||||
LPSTR lpString1,
|
|
||||||
LPCSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return strcat(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
STDCALL
|
|
||||||
lstrlenA(
|
|
||||||
LPCSTR lpString
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return strlen(lpString);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
STDCALL
|
|
||||||
lstrcmpW(
|
|
||||||
LPCWSTR lpString1,
|
|
||||||
LPCWSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return wcscmp(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
STDCALL
|
|
||||||
lstrcmpiW(
|
|
||||||
LPCWSTR lpString1,
|
|
||||||
LPCWSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return wcsicmp(lpString1,lpString2);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
LPWSTR
|
|
||||||
STDCALL
|
|
||||||
lstrcpynW(
|
|
||||||
LPWSTR lpString1,
|
|
||||||
LPCWSTR lpString2,
|
|
||||||
int iMaxLength
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return wcsncpy(lpString1,lpString2,iMaxLength);
|
|
||||||
}
|
|
||||||
|
|
||||||
LPWSTR
|
|
||||||
STDCALL
|
|
||||||
lstrcpyW(
|
|
||||||
LPWSTR lpString1,
|
|
||||||
LPCWSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return wcscpy(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
|
|
||||||
LPWSTR
|
|
||||||
STDCALL
|
|
||||||
lstrcatW(
|
|
||||||
LPWSTR lpString1,
|
|
||||||
LPCWSTR lpString2
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return wcscat(lpString1,lpString2);
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
STDCALL
|
|
||||||
lstrlenW(
|
|
||||||
LPCWSTR lpString
|
|
||||||
)
|
|
||||||
{
|
|
||||||
return wcslen(lpString);
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load diff
|
@ -53,8 +53,7 @@ NTSTATUS ZwReadFile(HANDLE FileHandle,
|
||||||
PULONG Key)
|
PULONG Key)
|
||||||
{
|
{
|
||||||
NTSTATUS Status;
|
NTSTATUS Status;
|
||||||
COMMON_BODY_HEADER* hdr = ObGetObjectByHandle(FileHandle);
|
PFILE_OBJECT FileObject;
|
||||||
PFILE_OBJECT FileObject = (PFILE_OBJECT)hdr;
|
|
||||||
PIRP Irp;
|
PIRP Irp;
|
||||||
PIO_STACK_LOCATION StackPtr;
|
PIO_STACK_LOCATION StackPtr;
|
||||||
KEVENT Event;
|
KEVENT Event;
|
||||||
|
@ -67,7 +66,7 @@ NTSTATUS ZwReadFile(HANDLE FileHandle,
|
||||||
FILE_READ_DATA,
|
FILE_READ_DATA,
|
||||||
NULL,
|
NULL,
|
||||||
UserMode,
|
UserMode,
|
||||||
&FileObject,
|
(PVOID *) &FileObject,
|
||||||
NULL);
|
NULL);
|
||||||
if (Status != STATUS_SUCCESS)
|
if (Status != STATUS_SUCCESS)
|
||||||
{
|
{
|
||||||
|
@ -160,15 +159,20 @@ NTSTATUS ZwWriteFile(HANDLE FileHandle,
|
||||||
PULONG Key)
|
PULONG Key)
|
||||||
{
|
{
|
||||||
NTSTATUS Status;
|
NTSTATUS Status;
|
||||||
COMMON_BODY_HEADER* hdr = ObGetObjectByHandle(FileHandle);
|
PFILE_OBJECT FileObject;
|
||||||
PFILE_OBJECT FileObject = (PFILE_OBJECT)hdr;
|
|
||||||
PIRP Irp;
|
PIRP Irp;
|
||||||
PIO_STACK_LOCATION StackPtr;
|
PIO_STACK_LOCATION StackPtr;
|
||||||
KEVENT Event;
|
KEVENT Event;
|
||||||
|
|
||||||
if (hdr==NULL)
|
Status = ObReferenceObjectByHandle(FileHandle,
|
||||||
|
FILE_WRITE_DATA,
|
||||||
|
NULL,
|
||||||
|
UserMode,
|
||||||
|
(PVOID *) &FileObject,
|
||||||
|
NULL);
|
||||||
|
if (Status != STATUS_SUCCESS)
|
||||||
{
|
{
|
||||||
return(STATUS_INVALID_HANDLE);
|
return(Status);
|
||||||
}
|
}
|
||||||
|
|
||||||
KeInitializeEvent(&Event,NotificationEvent,FALSE);
|
KeInitializeEvent(&Event,NotificationEvent,FALSE);
|
||||||
|
|
|
@ -1,399 +0,0 @@
|
||||||
/*
|
|
||||||
* This file was machine generated by export
|
|
||||||
* Don't edit
|
|
||||||
*
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
#include <internal/symbol.h>
|
|
||||||
#include <ddk/ntddk.h>
|
|
||||||
#include <ddk/ntifs.h>
|
|
||||||
#include <internal/ke.h>
|
|
||||||
#include <internal/ntoskrnl.h>
|
|
||||||
#include <internal/mm.h>
|
|
||||||
#include <wstring.h>
|
|
||||||
#ifdef __cplusplus
|
|
||||||
extern "C" {
|
|
||||||
#endif
|
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
export symbol_table[]={
|
|
||||||
{"_free_page",(unsigned int)free_page},
|
|
||||||
{"_get_dma_page",(unsigned int)get_dma_page},
|
|
||||||
{"_DbgPrint",(unsigned int)DbgPrint},
|
|
||||||
{"_printk",(unsigned int)printk},
|
|
||||||
{"_ExAcquireFastMutex",(unsigned int)ExAcquireFastMutex},
|
|
||||||
{"_ExAcquireFastMutexUnsafe",(unsigned int)ExAcquireFastMutexUnsafe},
|
|
||||||
{"_ExAcquireResourceExclusive",(unsigned int)ExAcquireResourceExclusive},
|
|
||||||
{"_ExAcquireResourceExclusiveLite",(unsigned int)ExAcquireResourceExclusiveLite},
|
|
||||||
{"_ExAcquireResourceSharedLite",(unsigned int)ExAcquireResourceSharedLite},
|
|
||||||
{"_ExAcquireSharedStarveExclusive",(unsigned int)ExAcquireSharedStarveExclusive},
|
|
||||||
{"_ExAcquireSharedWaitForExclusive",(unsigned int)ExAcquireSharedWaitForExclusive},
|
|
||||||
{"_ExAllocateFromNPagedLookasideList",(unsigned int)ExAllocateFromNPagedLookasideList},
|
|
||||||
{"_ExAllocateFromPagedLookasideList",(unsigned int)ExAllocateFromPagedLookasideList},
|
|
||||||
{"_ExAllocateFromZone",(unsigned int)ExAllocateFromZone},
|
|
||||||
{"_ExAllocatePool",(unsigned int)ExAllocatePool},
|
|
||||||
{"_ExAllocatePoolWithQuota",(unsigned int)ExAllocatePoolWithQuota},
|
|
||||||
{"_ExAllocatePoolWithQuotaTag",(unsigned int)ExAllocatePoolWithQuotaTag},
|
|
||||||
{"_ExAllocatePoolWithTag",(unsigned int)ExAllocatePoolWithTag},
|
|
||||||
{"_ExConvertExclusiveToSharedLite",(unsigned int)ExConvertExclusiveToSharedLite},
|
|
||||||
{"_ExDeleteNPagedLookasideList",(unsigned int)ExDeleteNPagedLookasideList},
|
|
||||||
{"_ExDeletePagedLookasideList",(unsigned int)ExDeletePagedLookasideList},
|
|
||||||
{"_ExDeleteResource",(unsigned int)ExDeleteResource},
|
|
||||||
{"_ExDeleteResourceLite",(unsigned int)ExDeleteResourceLite},
|
|
||||||
{"_ExExtendZone",(unsigned int)ExExtendZone},
|
|
||||||
{"_ExFreePool",(unsigned int)ExFreePool},
|
|
||||||
{"_ExFreeToNPagedLookasideList",(unsigned int)ExFreeToNPagedLookasideList},
|
|
||||||
{"_ExFreeToPagedLookasideList",(unsigned int)ExFreeToPagedLookasideList},
|
|
||||||
{"_ExFreeToZone",(unsigned int)ExFreeToZone},
|
|
||||||
{"_ExGetCurrentResourceThread",(unsigned int)ExGetCurrentResourceThread},
|
|
||||||
{"_ExGetExclusiveWaiterCount",(unsigned int)ExGetExclusiveWaiterCount},
|
|
||||||
{"_ExGetSharedWaiterCount",(unsigned int)ExGetSharedWaiterCount},
|
|
||||||
{"_ExHookException",(unsigned int)ExHookException},
|
|
||||||
{"_ExInitializeFastMutex",(unsigned int)ExInitializeFastMutex},
|
|
||||||
{"_ExInitializeNPagedLookasideList",(unsigned int)ExInitializeNPagedLookasideList},
|
|
||||||
{"_ExInitializePagedLookasideList",(unsigned int)ExInitializePagedLookasideList},
|
|
||||||
{"_ExInitializeResource",(unsigned int)ExInitializeResource},
|
|
||||||
{"_ExInitializeResourceLite",(unsigned int)ExInitializeResourceLite},
|
|
||||||
{"_ExInitializeSListHead",(unsigned int)ExInitializeSListHead},
|
|
||||||
{"_ExInitializeWorkItem",(unsigned int)ExInitializeWorkItem},
|
|
||||||
{"_ExInitializeZone",(unsigned int)ExInitializeZone},
|
|
||||||
{"_ExInterlockedAddLargeInteger",(unsigned int)ExInterlockedAddLargeInteger},
|
|
||||||
{"_ExInterlockedAddUlong",(unsigned int)ExInterlockedAddUlong},
|
|
||||||
{"_ExInterlockedAllocateFromZone",(unsigned int)ExInterlockedAllocateFromZone},
|
|
||||||
{"_ExInterlockedDecrementLong",(unsigned int)ExInterlockedDecrementLong},
|
|
||||||
{"_ExInterlockedExchangeUlong",(unsigned int)ExInterlockedExchangeUlong},
|
|
||||||
{"_ExInterlockedExtendZone",(unsigned int)ExInterlockedExtendZone},
|
|
||||||
{"_ExInterlockedFreeToZone",(unsigned int)ExInterlockedFreeToZone},
|
|
||||||
{"_ExInterlockedIncrementLong",(unsigned int)ExInterlockedIncrementLong},
|
|
||||||
{"_ExInterlockedInsertHeadList",(unsigned int)ExInterlockedInsertHeadList},
|
|
||||||
{"_ExInterlockedInsertTailList",(unsigned int)ExInterlockedInsertTailList},
|
|
||||||
{"_ExInterlockedPopEntryList",(unsigned int)ExInterlockedPopEntryList},
|
|
||||||
{"_ExInterlockedPopEntrySList",(unsigned int)ExInterlockedPopEntrySList},
|
|
||||||
{"_ExInterlockedPushEntryList",(unsigned int)ExInterlockedPushEntryList},
|
|
||||||
{"_ExInterlockedPushEntrySList",(unsigned int)ExInterlockedPushEntrySList},
|
|
||||||
{"_ExInterlockedRemoveHeadList",(unsigned int)ExInterlockedRemoveHeadList},
|
|
||||||
{"_ExIsFullZone",(unsigned int)ExIsFullZone},
|
|
||||||
{"_ExIsObjectInFirstZoneSegment",(unsigned int)ExIsObjectInFirstZoneSegment},
|
|
||||||
{"_ExIsResourceAcquiredExclusiveLite",(unsigned int)ExIsResourceAcquiredExclusiveLite},
|
|
||||||
{"_ExIsResourceAcquiredSharedLite",(unsigned int)ExIsResourceAcquiredSharedLite},
|
|
||||||
{"_ExLocalTimeToSystemTime",(unsigned int)ExLocalTimeToSystemTime},
|
|
||||||
{"_ExQueryDepthSListHead",(unsigned int)ExQueryDepthSListHead},
|
|
||||||
{"_ExQueueWorkItem",(unsigned int)ExQueueWorkItem},
|
|
||||||
{"_ExRaiseStatus",(unsigned int)ExRaiseStatus},
|
|
||||||
{"_ExReinitializeResourceLite",(unsigned int)ExReinitializeResourceLite},
|
|
||||||
{"_ExReleaseFastMutex",(unsigned int)ExReleaseFastMutex},
|
|
||||||
{"_ExReleaseFastMutexUnsafe",(unsigned int)ExReleaseFastMutexUnsafe},
|
|
||||||
{"_ExReleaseResource",(unsigned int)ExReleaseResource},
|
|
||||||
{"_ExReleaseResourceForThread",(unsigned int)ExReleaseResourceForThread},
|
|
||||||
{"_ExReleaseResourceForThreadLite",(unsigned int)ExReleaseResourceForThreadLite},
|
|
||||||
{"_ExSystemTimeToLocalTime",(unsigned int)ExSystemTimeToLocalTime},
|
|
||||||
{"_ExTryToAcquireFastMutex",(unsigned int)ExTryToAcquireFastMutex},
|
|
||||||
{"_ExTryToAcquireResourceExclusiveLite",(unsigned int)ExTryToAcquireResourceExclusiveLite},
|
|
||||||
{"_InterlockedCompareExchange",(unsigned int)InterlockedCompareExchange},
|
|
||||||
{"_InterlockedExchange",(unsigned int)InterlockedExchange},
|
|
||||||
{"_InterlockedExchangeAdd",(unsigned int)InterlockedExchangeAdd},
|
|
||||||
{"_InterlockedIncrement",(unsigned int)InterlockedIncrement},
|
|
||||||
{"_HalAllocateCommonBuffer",(unsigned int)HalAllocateCommonBuffer},
|
|
||||||
{"_HalAssignSlotResources",(unsigned int)HalAssignSlotResources},
|
|
||||||
{"_HalExamineMBR",(unsigned int)HalExamineMBR},
|
|
||||||
{"_HalFreeCommonBuffer",(unsigned int)HalFreeCommonBuffer},
|
|
||||||
{"_HalGetAdapter",(unsigned int)HalGetAdapter},
|
|
||||||
{"_HalGetBusData",(unsigned int)HalGetBusData},
|
|
||||||
{"_HalGetBusDataByOffset",(unsigned int)HalGetBusDataByOffset},
|
|
||||||
{"_HalGetDmaAlignmentRequirement",(unsigned int)HalGetDmaAlignmentRequirement},
|
|
||||||
{"_HalGetInterruptVector",(unsigned int)HalGetInterruptVector},
|
|
||||||
{"_HalQuerySystemInformation",(unsigned int)HalQuerySystemInformation},
|
|
||||||
{"_HalReadDmaCounter",(unsigned int)HalReadDmaCounter},
|
|
||||||
{"_HalSetBusData",(unsigned int)HalSetBusData},
|
|
||||||
{"_HalSetBusDataByOffset",(unsigned int)HalSetBusDataByOffset},
|
|
||||||
{"_HalTranslateBusAddress",(unsigned int)HalTranslateBusAddress},
|
|
||||||
{"_IoAcquireCancelSpinLock",(unsigned int)IoAcquireCancelSpinLock},
|
|
||||||
{"_IoAllocateAdapterChannel",(unsigned int)IoAllocateAdapterChannel},
|
|
||||||
{"_IoAllocateController",(unsigned int)IoAllocateController},
|
|
||||||
{"_IoAllocateErrorLogEntry",(unsigned int)IoAllocateErrorLogEntry},
|
|
||||||
{"_IoAllocateIrp",(unsigned int)IoAllocateIrp},
|
|
||||||
{"_IoAllocateMdl",(unsigned int)IoAllocateMdl},
|
|
||||||
{"_IoAssignArcName",(unsigned int)IoAssignArcName},
|
|
||||||
{"_IoAssignResources",(unsigned int)IoAssignResources},
|
|
||||||
{"_IoAttachDevice",(unsigned int)IoAttachDevice},
|
|
||||||
{"_IoAttachDeviceByPointer",(unsigned int)IoAttachDeviceByPointer},
|
|
||||||
{"_IoAttachDeviceToDeviceStack",(unsigned int)IoAttachDeviceToDeviceStack},
|
|
||||||
{"_IoBuildAsynchronousFsdRequest",(unsigned int)IoBuildAsynchronousFsdRequest},
|
|
||||||
{"_IoBuildDeviceIoControlRequest",(unsigned int)IoBuildDeviceIoControlRequest},
|
|
||||||
{"_IoBuildPartialMdl",(unsigned int)IoBuildPartialMdl},
|
|
||||||
{"_IoBuildSynchronousFsdRequest",(unsigned int)IoBuildSynchronousFsdRequest},
|
|
||||||
{"_IoCallDriver",(unsigned int)IoCallDriver},
|
|
||||||
{"_IoCancelIrp",(unsigned int)IoCancelIrp},
|
|
||||||
{"_IoCheckShareAccess",(unsigned int)IoCheckShareAccess},
|
|
||||||
{"_IoCompleteRequest",(unsigned int)IoCompleteRequest},
|
|
||||||
{"_IoConnectInterrupt",(unsigned int)IoConnectInterrupt},
|
|
||||||
{"_IoCreateController",(unsigned int)IoCreateController},
|
|
||||||
{"_IoCreateDevice",(unsigned int)IoCreateDevice},
|
|
||||||
{"_IoCreateNotificationEvent",(unsigned int)IoCreateNotificationEvent},
|
|
||||||
{"_IoCreateSymbolicLink",(unsigned int)IoCreateSymbolicLink},
|
|
||||||
{"_IoCreateSynchronizationEvent",(unsigned int)IoCreateSynchronizationEvent},
|
|
||||||
{"_IoCreateUnprotectedSymbolicLink",(unsigned int)IoCreateUnprotectedSymbolicLink},
|
|
||||||
{"_IoDeassignArcName",(unsigned int)IoDeassignArcName},
|
|
||||||
{"_IoDeleteController",(unsigned int)IoDeleteController},
|
|
||||||
{"_IoDeleteDevice",(unsigned int)IoDeleteDevice},
|
|
||||||
{"_IoDeleteSymbolicLink",(unsigned int)IoDeleteSymbolicLink},
|
|
||||||
{"_IoDetachDevice",(unsigned int)IoDetachDevice},
|
|
||||||
{"_IoDisconnectInterrupt",(unsigned int)IoDisconnectInterrupt},
|
|
||||||
{"_IoFlushAdapterBuffers",(unsigned int)IoFlushAdapterBuffers},
|
|
||||||
{"_IoFreeAdapterChannel",(unsigned int)IoFreeAdapterChannel},
|
|
||||||
{"_IoFreeController",(unsigned int)IoFreeController},
|
|
||||||
{"_IoFreeIrp",(unsigned int)IoFreeIrp},
|
|
||||||
{"_IoFreeMapRegisters",(unsigned int)IoFreeMapRegisters},
|
|
||||||
{"_IoFreeMdl",(unsigned int)IoFreeMdl},
|
|
||||||
{"_IoGetConfigurationInformation",(unsigned int)IoGetConfigurationInformation},
|
|
||||||
{"_IoGetCurrentIrpStackLocation",(unsigned int)IoGetCurrentIrpStackLocation},
|
|
||||||
{"_IoGetCurrentProcess",(unsigned int)IoGetCurrentProcess},
|
|
||||||
{"_IoGetDeviceObjectPointer",(unsigned int)IoGetDeviceObjectPointer},
|
|
||||||
{"_IoGetDeviceToVerify",(unsigned int)IoGetDeviceToVerify},
|
|
||||||
{"_IoGetFileObjectGenericMapping",(unsigned int)IoGetFileObjectGenericMapping},
|
|
||||||
{"_IoGetFunctionCodeFromCtlCode",(unsigned int)IoGetFunctionCodeFromCtlCode},
|
|
||||||
{"_IoGetInitialStack",(unsigned int)IoGetInitialStack},
|
|
||||||
{"_IoGetNextIrpStackLocation",(unsigned int)IoGetNextIrpStackLocation},
|
|
||||||
{"_IoGetRelatedDeviceObject",(unsigned int)IoGetRelatedDeviceObject},
|
|
||||||
{"_IoInitializeDpcRequest",(unsigned int)IoInitializeDpcRequest},
|
|
||||||
{"_IoInitializeIrp",(unsigned int)IoInitializeIrp},
|
|
||||||
{"_IoInitializeTimer",(unsigned int)IoInitializeTimer},
|
|
||||||
{"_IoIsErrorUserInduced",(unsigned int)IoIsErrorUserInduced},
|
|
||||||
{"_IoIsTotalDeviceFailure",(unsigned int)IoIsTotalDeviceFailure},
|
|
||||||
{"_IoMakeAssociatedIrp",(unsigned int)IoMakeAssociatedIrp},
|
|
||||||
{"_IoMapTransfer",(unsigned int)IoMapTransfer},
|
|
||||||
{"_IoMarkIrpPending",(unsigned int)IoMarkIrpPending},
|
|
||||||
{"_IoQueryDeviceDescription",(unsigned int)IoQueryDeviceDescription},
|
|
||||||
{"_IoRaiseHardError",(unsigned int)IoRaiseHardError},
|
|
||||||
{"_IoRaiseInformationalHardError",(unsigned int)IoRaiseInformationalHardError},
|
|
||||||
{"_IoReadPartitionTable",(unsigned int)IoReadPartitionTable},
|
|
||||||
{"_IoRegisterDriverReinitialization",(unsigned int)IoRegisterDriverReinitialization},
|
|
||||||
{"_IoRegisterFileSystem",(unsigned int)IoRegisterFileSystem},
|
|
||||||
{"_IoRegisterShutdownNotification",(unsigned int)IoRegisterShutdownNotification},
|
|
||||||
{"_IoReleaseCancelSpinLock",(unsigned int)IoReleaseCancelSpinLock},
|
|
||||||
{"_IoRemoveShareAccess",(unsigned int)IoRemoveShareAccess},
|
|
||||||
{"_IoReportResourceUsage",(unsigned int)IoReportResourceUsage},
|
|
||||||
{"_IoRequestDpc",(unsigned int)IoRequestDpc},
|
|
||||||
{"_IoSetCancelRoutine",(unsigned int)IoSetCancelRoutine},
|
|
||||||
{"_IoSetCompletionRoutine",(unsigned int)IoSetCompletionRoutine},
|
|
||||||
{"_IoSetHardErrorOrVerifyDevice",(unsigned int)IoSetHardErrorOrVerifyDevice},
|
|
||||||
{"_IoSetNextIrpStackLocation",(unsigned int)IoSetNextIrpStackLocation},
|
|
||||||
{"_IoSetPartitionInformation",(unsigned int)IoSetPartitionInformation},
|
|
||||||
{"_IoSetShareAccess",(unsigned int)IoSetShareAccess},
|
|
||||||
{"_IoSizeOfIrp",(unsigned int)IoSizeOfIrp},
|
|
||||||
{"_IoStartNextPacket",(unsigned int)IoStartNextPacket},
|
|
||||||
{"_IoStartNextPacketByKey",(unsigned int)IoStartNextPacketByKey},
|
|
||||||
{"_IoStartPacket",(unsigned int)IoStartPacket},
|
|
||||||
{"_IoStartTimer",(unsigned int)IoStartTimer},
|
|
||||||
{"_IoStopTimer",(unsigned int)IoStopTimer},
|
|
||||||
{"_IoUnregisterShutdownNotification",(unsigned int)IoUnregisterShutdownNotification},
|
|
||||||
{"_IoUpdateShareAccess",(unsigned int)IoUpdateShareAccess},
|
|
||||||
{"_IoWriteErrorLogEntry",(unsigned int)IoWriteErrorLogEntry},
|
|
||||||
{"_IoWritePartitionTable",(unsigned int)IoWritePartitionTable},
|
|
||||||
{"_KeAcquireSpinLock",(unsigned int)KeAcquireSpinLock},
|
|
||||||
{"_KeAcquireSpinLockAtDpcLevel",(unsigned int)KeAcquireSpinLockAtDpcLevel},
|
|
||||||
{"_KeBugCheck",(unsigned int)KeBugCheck},
|
|
||||||
{"_KeBugCheckEx",(unsigned int)KeBugCheckEx},
|
|
||||||
{"_KeCancelTimer",(unsigned int)KeCancelTimer},
|
|
||||||
{"_KeClearEvent",(unsigned int)KeClearEvent},
|
|
||||||
{"_KeDelayExecutionThread",(unsigned int)KeDelayExecutionThread},
|
|
||||||
{"_KeDeregisterBugCheckCallback",(unsigned int)KeDeregisterBugCheckCallback},
|
|
||||||
{"_KeEnterCriticalRegion",(unsigned int)KeEnterCriticalRegion},
|
|
||||||
{"_KeFlushIoBuffers",(unsigned int)KeFlushIoBuffers},
|
|
||||||
{"_KeGetCurrentIrql",(unsigned int)KeGetCurrentIrql},
|
|
||||||
{"_KeGetCurrentProcessorNumber",(unsigned int)KeGetCurrentProcessorNumber},
|
|
||||||
{"_KeGetDcacheFillSize",(unsigned int)KeGetDcacheFillSize},
|
|
||||||
{"_KeInitializeCallbackRecord",(unsigned int)KeInitializeCallbackRecord},
|
|
||||||
{"_KeInitializeDeviceQueue",(unsigned int)KeInitializeDeviceQueue},
|
|
||||||
{"_KeInitializeDpc",(unsigned int)KeInitializeDpc},
|
|
||||||
{"_KeInitializeEvent",(unsigned int)KeInitializeEvent},
|
|
||||||
{"_KeInitializeMutex",(unsigned int)KeInitializeMutex},
|
|
||||||
{"_KeInitializeSemaphore",(unsigned int)KeInitializeSemaphore},
|
|
||||||
{"_KeInitializeSpinLock",(unsigned int)KeInitializeSpinLock},
|
|
||||||
{"_KeInitializeTimer",(unsigned int)KeInitializeTimer},
|
|
||||||
{"_KeInitializeTimerEx",(unsigned int)KeInitializeTimerEx},
|
|
||||||
{"_KeInsertByKeyDeviceQueue",(unsigned int)KeInsertByKeyDeviceQueue},
|
|
||||||
{"_KeInsertDeviceQueue",(unsigned int)KeInsertDeviceQueue},
|
|
||||||
{"_KeInsertQueueDpc",(unsigned int)KeInsertQueueDpc},
|
|
||||||
{"_KeLeaveCriticalRegion",(unsigned int)KeLeaveCriticalRegion},
|
|
||||||
{"_KeLowerIrql",(unsigned int)KeLowerIrql},
|
|
||||||
{"_KeQueryPerformanceCounter",(unsigned int)KeQueryPerformanceCounter},
|
|
||||||
{"_KeQuerySystemTime",(unsigned int)KeQuerySystemTime},
|
|
||||||
{"_KeQueryTickCount",(unsigned int)KeQueryTickCount},
|
|
||||||
{"_KeQueryTimeIncrement",(unsigned int)KeQueryTimeIncrement},
|
|
||||||
{"_KeRaiseIrql",(unsigned int)KeRaiseIrql},
|
|
||||||
{"_KeReadStateEvent",(unsigned int)KeReadStateEvent},
|
|
||||||
{"_KeReadStateMutex",(unsigned int)KeReadStateMutex},
|
|
||||||
{"_KeReadStateSemaphore",(unsigned int)KeReadStateSemaphore},
|
|
||||||
{"_KeReadStateTimer",(unsigned int)KeReadStateTimer},
|
|
||||||
{"_KeRegisterBugCheckCallback",(unsigned int)KeRegisterBugCheckCallback},
|
|
||||||
{"_KeReleaseMutex",(unsigned int)KeReleaseMutex},
|
|
||||||
{"_KeReleaseSemaphore",(unsigned int)KeReleaseSemaphore},
|
|
||||||
{"_KeReleaseSpinLock",(unsigned int)KeReleaseSpinLock},
|
|
||||||
{"_KeReleaseSpinLockFromDpcLevel",(unsigned int)KeReleaseSpinLockFromDpcLevel},
|
|
||||||
{"_KeRemoveByKeyDeviceQueue",(unsigned int)KeRemoveByKeyDeviceQueue},
|
|
||||||
{"_KeRemoveDeviceQueue",(unsigned int)KeRemoveDeviceQueue},
|
|
||||||
{"_KeRemoveQueueDpc",(unsigned int)KeRemoveQueueDpc},
|
|
||||||
{"_KeResetEvent",(unsigned int)KeResetEvent},
|
|
||||||
{"_KeSetBasePriorityThread",(unsigned int)KeSetBasePriorityThread},
|
|
||||||
{"_KeSetEvent",(unsigned int)KeSetEvent},
|
|
||||||
{"_KeSetPriorityThread",(unsigned int)KeSetPriorityThread},
|
|
||||||
{"_KeSetTimer",(unsigned int)KeSetTimer},
|
|
||||||
{"_KeSetTimerEx",(unsigned int)KeSetTimerEx},
|
|
||||||
{"_KeStallExecutionProcessor",(unsigned int)KeStallExecutionProcessor},
|
|
||||||
{"_KeSynchronizeExecution",(unsigned int)KeSynchronizeExecution},
|
|
||||||
{"_KeWaitForMultipleObjects",(unsigned int)KeWaitForMultipleObjects},
|
|
||||||
{"_KeWaitForMutexObject",(unsigned int)KeWaitForMutexObject},
|
|
||||||
{"_KeWaitForSingleObject",(unsigned int)KeWaitForSingleObject},
|
|
||||||
{"_MmAllocateContiguousMemory",(unsigned int)MmAllocateContiguousMemory},
|
|
||||||
{"_MmAllocateNonCachedMemory",(unsigned int)MmAllocateNonCachedMemory},
|
|
||||||
{"_MmBuildMdlForNonPagedPool",(unsigned int)MmBuildMdlForNonPagedPool},
|
|
||||||
{"_MmCreateMdl",(unsigned int)MmCreateMdl},
|
|
||||||
{"_MmFreeContiguousMemory",(unsigned int)MmFreeContiguousMemory},
|
|
||||||
{"_MmFreeNonCachedMemory",(unsigned int)MmFreeNonCachedMemory},
|
|
||||||
{"_MmGetMdlByteCount",(unsigned int)MmGetMdlByteCount},
|
|
||||||
{"_MmGetMdlByteOffset",(unsigned int)MmGetMdlByteOffset},
|
|
||||||
{"_MmGetMdlVirtualAddress",(unsigned int)MmGetMdlVirtualAddress},
|
|
||||||
{"_MmGetPhysicalAddress",(unsigned int)MmGetPhysicalAddress},
|
|
||||||
{"_MmGetSystemAddressForMdl",(unsigned int)MmGetSystemAddressForMdl},
|
|
||||||
{"_MmInitializeMdl",(unsigned int)MmInitializeMdl},
|
|
||||||
{"_MmIsAddressValid",(unsigned int)MmIsAddressValid},
|
|
||||||
{"_MmIsNonPagedSystemAddressValid",(unsigned int)MmIsNonPagedSystemAddressValid},
|
|
||||||
{"_MmIsThisAnNtAsSystem",(unsigned int)MmIsThisAnNtAsSystem},
|
|
||||||
{"_MmLockPagableCodeSection",(unsigned int)MmLockPagableCodeSection},
|
|
||||||
{"_MmLockPagableDataSection",(unsigned int)MmLockPagableDataSection},
|
|
||||||
{"_MmLockPagableSectionByHandle",(unsigned int)MmLockPagableSectionByHandle},
|
|
||||||
{"_MmMapIoSpace",(unsigned int)MmMapIoSpace},
|
|
||||||
{"_MmMapLockedPages",(unsigned int)MmMapLockedPages},
|
|
||||||
{"_MmPageEntireDriver",(unsigned int)MmPageEntireDriver},
|
|
||||||
{"_MmResetDriverPaging",(unsigned int)MmResetDriverPaging},
|
|
||||||
{"_MmPrepareMdlForReuse",(unsigned int)MmPrepareMdlForReuse},
|
|
||||||
{"_MmProbeAndLockPages",(unsigned int)MmProbeAndLockPages},
|
|
||||||
{"_MmQuerySystemSize",(unsigned int)MmQuerySystemSize},
|
|
||||||
{"_MmSizeOfMdl",(unsigned int)MmSizeOfMdl},
|
|
||||||
{"_MmUnlockPages",(unsigned int)MmUnlockPages},
|
|
||||||
{"_MmUnlockPagableImageSection",(unsigned int)MmUnlockPagableImageSection},
|
|
||||||
{"_MmUnmapIoSpace",(unsigned int)MmUnmapIoSpace},
|
|
||||||
{"_MmUnmapLockedPages",(unsigned int)MmUnmapLockedPages},
|
|
||||||
{"_ObDereferenceObject",(unsigned int)ObDereferenceObject},
|
|
||||||
{"_ObReferenceObjectByHandle",(unsigned int)ObReferenceObjectByHandle},
|
|
||||||
{"_ObReferenceObjectByPointer",(unsigned int)ObReferenceObjectByPointer},
|
|
||||||
{"_PsCreateSystemThread",(unsigned int)PsCreateSystemThread},
|
|
||||||
{"_PsGetCurrentProcess",(unsigned int)PsGetCurrentProcess},
|
|
||||||
{"_PsGetCurrentThread",(unsigned int)PsGetCurrentThread},
|
|
||||||
{"_PsTerminateSystemThread",(unsigned int)PsTerminateSystemThread},
|
|
||||||
{"_InitializeListHead",(unsigned int)InitializeListHead},
|
|
||||||
{"_InitializeObjectAttributes",(unsigned int)InitializeObjectAttributes},
|
|
||||||
{"_InsertHeadList",(unsigned int)InsertHeadList},
|
|
||||||
{"_InsertTailList",(unsigned int)InsertTailList},
|
|
||||||
{"_PopEntryList",(unsigned int)PopEntryList},
|
|
||||||
{"_PushEntryList",(unsigned int)PushEntryList},
|
|
||||||
{"_RemoveEntryList",(unsigned int)RemoveEntryList},
|
|
||||||
{"_RemoveHeadList",(unsigned int)RemoveHeadList},
|
|
||||||
{"_RemoveTailList",(unsigned int)RemoveTailList},
|
|
||||||
{"_RtlAnsiStringToUnicodeSize",(unsigned int)RtlAnsiStringToUnicodeSize},
|
|
||||||
{"_RtlAnsiStringToUnicodeString",(unsigned int)RtlAnsiStringToUnicodeString},
|
|
||||||
{"_RtlAppendUnicodeStringToString",(unsigned int)RtlAppendUnicodeStringToString},
|
|
||||||
{"_RtlAppendUnicodeToString",(unsigned int)RtlAppendUnicodeToString},
|
|
||||||
{"_RtlCharToInteger",(unsigned int)RtlCharToInteger},
|
|
||||||
{"_RtlCheckRegistryKey",(unsigned int)RtlCheckRegistryKey},
|
|
||||||
{"_RtlCompareMemory",(unsigned int)RtlCompareMemory},
|
|
||||||
{"_RtlCompareString",(unsigned int)RtlCompareString},
|
|
||||||
{"_RtlCompareUnicodeString",(unsigned int)RtlCompareUnicodeString},
|
|
||||||
{"_RtlConvertLongToLargeInteger",(unsigned int)RtlConvertLongToLargeInteger},
|
|
||||||
{"_RtlConvertUlongToLargeInteger",(unsigned int)RtlConvertUlongToLargeInteger},
|
|
||||||
{"_RtlCopyBytes",(unsigned int)RtlCopyBytes},
|
|
||||||
{"_RtlCopyMemory",(unsigned int)RtlCopyMemory},
|
|
||||||
{"_RtlCopyString",(unsigned int)RtlCopyString},
|
|
||||||
{"_RtlCopyUnicodeString",(unsigned int)RtlCopyUnicodeString},
|
|
||||||
{"_RtlCreateRegistryKey",(unsigned int)RtlCreateRegistryKey},
|
|
||||||
{"_RtlCreateSecurityDescriptor",(unsigned int)RtlCreateSecurityDescriptor},
|
|
||||||
{"_RtlDeleteRegistryValue",(unsigned int)RtlDeleteRegistryValue},
|
|
||||||
{"_RtlEnlargedIntegerMultiply",(unsigned int)RtlEnlargedIntegerMultiply},
|
|
||||||
{"_RtlEnlargedUnsignedDivide",(unsigned int)RtlEnlargedUnsignedDivide},
|
|
||||||
{"_RtlEnlargedUnsignedMultiply",(unsigned int)RtlEnlargedUnsignedMultiply},
|
|
||||||
{"_RtlEqualString",(unsigned int)RtlEqualString},
|
|
||||||
{"_RtlEqualUnicodeString",(unsigned int)RtlEqualUnicodeString},
|
|
||||||
{"_RtlExtendedIntegerMultiply",(unsigned int)RtlExtendedIntegerMultiply},
|
|
||||||
{"_RtlExtendedLargeIntegerDivide",(unsigned int)RtlExtendedLargeIntegerDivide},
|
|
||||||
{"_RtlExtendedMagicDivide",(unsigned int)RtlExtendedMagicDivide},
|
|
||||||
{"_RtlFillMemory",(unsigned int)RtlFillMemory},
|
|
||||||
{"_RtlFreeAnsiString",(unsigned int)RtlFreeAnsiString},
|
|
||||||
{"_RtlFreeUnicodeString",(unsigned int)RtlFreeUnicodeString},
|
|
||||||
{"_RtlInitAnsiString",(unsigned int)RtlInitAnsiString},
|
|
||||||
{"_RtlInitString",(unsigned int)RtlInitString},
|
|
||||||
{"_RtlInitUnicodeString",(unsigned int)RtlInitUnicodeString},
|
|
||||||
{"_RtlIntegerToUnicodeString",(unsigned int)RtlIntegerToUnicodeString},
|
|
||||||
{"_RtlLargeIntegerAdd",(unsigned int)RtlLargeIntegerAdd},
|
|
||||||
{"_RtlLargeIntegerAnd",(unsigned int)RtlLargeIntegerAnd},
|
|
||||||
{"_RtlLargeIntegerArithmeticShift",(unsigned int)RtlLargeIntegerArithmeticShift},
|
|
||||||
{"_RtlLargeIntegerDivide",(unsigned int)RtlLargeIntegerDivide},
|
|
||||||
{"_RtlLargeIntegerEqualTo",(unsigned int)RtlLargeIntegerEqualTo},
|
|
||||||
{"_RtlLargeIntegerEqualToZero",(unsigned int)RtlLargeIntegerEqualToZero},
|
|
||||||
{"_RtlLargeIntegerGreaterThan",(unsigned int)RtlLargeIntegerGreaterThan},
|
|
||||||
{"_RtlLargeIntegerGreaterThanOrEqualTo",(unsigned int)RtlLargeIntegerGreaterThanOrEqualTo},
|
|
||||||
{"_RtlLargeIntegerGreaterThanOrEqualToZero",(unsigned int)RtlLargeIntegerGreaterThanOrEqualToZero},
|
|
||||||
{"_RtlLargeIntegerGreaterThanZero",(unsigned int)RtlLargeIntegerGreaterThanZero},
|
|
||||||
{"_RtlLargeIntegerLessThan",(unsigned int)RtlLargeIntegerLessThan},
|
|
||||||
{"_RtlLargeIntegerLessThanOrEqualTo",(unsigned int)RtlLargeIntegerLessThanOrEqualTo},
|
|
||||||
{"_RtlLargeIntegerLessThanZero",(unsigned int)RtlLargeIntegerLessThanZero},
|
|
||||||
{"_RtlLargeIntegerNegate",(unsigned int)RtlLargeIntegerNegate},
|
|
||||||
{"_RtlLargeIntegerNotEqualTo",(unsigned int)RtlLargeIntegerNotEqualTo},
|
|
||||||
{"_RtlLargeIntegerShiftLeft",(unsigned int)RtlLargeIntegerShiftLeft},
|
|
||||||
{"_RtlLargeIntegerShiftRight",(unsigned int)RtlLargeIntegerShiftRight},
|
|
||||||
{"_RtlLargeIntegerSubtract",(unsigned int)RtlLargeIntegerSubtract},
|
|
||||||
{"_RtlLengthSecurityDescriptor",(unsigned int)RtlLengthSecurityDescriptor},
|
|
||||||
{"_RtlMoveMemory",(unsigned int)RtlMoveMemory},
|
|
||||||
{"_RtlQueryRegistryValues",(unsigned int)RtlQueryRegistryValues},
|
|
||||||
{"_RtlRetrieveUlong",(unsigned int)RtlRetrieveUlong},
|
|
||||||
{"_RtlRetrieveUshort",(unsigned int)RtlRetrieveUshort},
|
|
||||||
{"_RtlSetDaclSecurityDescriptor",(unsigned int)RtlSetDaclSecurityDescriptor},
|
|
||||||
{"_RtlStoreUlong",(unsigned int)RtlStoreUlong},
|
|
||||||
{"_RtlStoreUshort",(unsigned int)RtlStoreUshort},
|
|
||||||
{"_RtlTimeFieldsToTime",(unsigned int)RtlTimeFieldsToTime},
|
|
||||||
{"_RtlTimeToTimeFields",(unsigned int)RtlTimeToTimeFields},
|
|
||||||
{"_RtlUnicodeStringToAnsiString",(unsigned int)RtlUnicodeStringToAnsiString},
|
|
||||||
{"_RtlUnicodeStringToInteger",(unsigned int)RtlUnicodeStringToInteger},
|
|
||||||
{"_RtlUpcaseUnicodeString",(unsigned int)RtlUpcaseUnicodeString},
|
|
||||||
{"_RtlUpperString",(unsigned int)RtlUpperString},
|
|
||||||
{"_RtlValidSecurityDescriptor",(unsigned int)RtlValidSecurityDescriptor},
|
|
||||||
{"_RtlWriteRegistryValue",(unsigned int)RtlWriteRegistryValue},
|
|
||||||
{"_RtlZeroMemory",(unsigned int)RtlZeroMemory},
|
|
||||||
{"_SeAccessCheck",(unsigned int)SeAccessCheck},
|
|
||||||
{"_SeAssignSecurity",(unsigned int)SeAssignSecurity},
|
|
||||||
{"_SeDeassignSecurity",(unsigned int)SeDeassignSecurity},
|
|
||||||
{"_SeSinglePrivilegeCheck",(unsigned int)SeSinglePrivilegeCheck},
|
|
||||||
{"_ZwClose",(unsigned int)ZwClose},
|
|
||||||
{"_ZwCreateDirectoryObject",(unsigned int)ZwCreateDirectoryObject},
|
|
||||||
{"_ZwCreateFile",(unsigned int)ZwCreateFile},
|
|
||||||
{"_ZwCreateKey",(unsigned int)ZwCreateKey},
|
|
||||||
{"_ZwDeleteKey",(unsigned int)ZwDeleteKey},
|
|
||||||
{"_ZwEnumerateKey",(unsigned int)ZwEnumerateKey},
|
|
||||||
{"_ZwEnumerateValueKey",(unsigned int)ZwEnumerateValueKey},
|
|
||||||
{"_ZwFlushKey",(unsigned int)ZwFlushKey},
|
|
||||||
{"_ZwMakeTemporaryObject",(unsigned int)ZwMakeTemporaryObject},
|
|
||||||
{"_ZwMapViewOfSection",(unsigned int)ZwMapViewOfSection},
|
|
||||||
{"_ZwOpenFile",(unsigned int)ZwOpenFile},
|
|
||||||
{"_ZwOpenKey",(unsigned int)ZwOpenKey},
|
|
||||||
{"_ZwOpenSection",(unsigned int)ZwOpenSection},
|
|
||||||
{"_ZwQueryInformationFile",(unsigned int)ZwQueryInformationFile},
|
|
||||||
{"_ZwQueryKey",(unsigned int)ZwQueryKey},
|
|
||||||
{"_ZwQueryValueKey",(unsigned int)ZwQueryValueKey},
|
|
||||||
{"_ZwReadFile",(unsigned int)ZwReadFile},
|
|
||||||
{"_ZwSetInformationFile",(unsigned int)ZwSetInformationFile},
|
|
||||||
{"_ZwSetInformationThread",(unsigned int)ZwSetInformationThread},
|
|
||||||
{"_ZwSetValueKey",(unsigned int)ZwSetValueKey},
|
|
||||||
{"_ZwUnmapViewOfSection",(unsigned int)ZwUnmapViewOfSection},
|
|
||||||
{"_ZwWriteFile",(unsigned int)ZwWriteFile},
|
|
||||||
{"_sprintf",(unsigned int)sprintf},
|
|
||||||
{"_wcschr",(unsigned int)wcschr},
|
|
||||||
{"_wcsncat",(unsigned int)wcsncat},
|
|
||||||
{"_wcsncpy",(unsigned int)wcsncpy},
|
|
||||||
{"_wtolower",(unsigned int)wtolower},
|
|
||||||
{"_wtoupper",(unsigned int)wtoupper},
|
|
||||||
{"_CbInitDccb",(unsigned int)CbInitDccb},
|
|
||||||
{"_CbAcquireForRead",(unsigned int)CbAcquireForRead},
|
|
||||||
{"_CbReleaseFromRead",(unsigned int)CbReleaseFromRead},
|
|
||||||
{NULL,NULL},
|
|
||||||
};
|
|
Loading…
Reference in a new issue