#ifndef __PROBE__
#define __PROBE__

/***************************************************************
 * These functions are defines in asm_code.asm
 * It's needed thus we can properly inject exception into code
 * eg. If we want to see that some address if writable, eg. 
 * call emulation, we will do ->
 * ProbeForWrite(pctx->reg_esp, 1, sizeof(ULONG));
 * of when checking if some instruction can be decoded we will
 * use->
 * ProbeForRead(pctx->reg_eip, 16, sizeof(BYTE));
 ***************************************************************/
NTSTATUS WINAPI ProbeForRead(__in VOID  *Address, __in SIZE_T Length, __in DWORD Alignment);
NTSTATUS WINAPI ProbeForWrite(__in VOID  *Address, __in SIZE_T  Length, __in DWORD Alignment);


#endif

