NTSTATUS UtilsZwRaiseHardError(ULONG ZwIndex,...){
NTSTATUS status;
_asm{
mov eax,[ZwIndex]
Lea edx,[ebp+0x0c]
Int 0x2e
mov [status],eax
}
return status;
}
void ShowMessage(PWSTR Caption, PWSTR Msg)
{
ULONG pUnicodeArguments[] = {0, 0, 0};
ULONG ReturnValue;
UNICODE_STRING uniText;
UNICODE_STRING uniCaption;
RtlInitUnicodeString(&uniText, Caption);
RtlInitUnicodeString(&uniCaption, Msg);
pUnicodeArguments[0] = (ULONG)&uniCaption;
pUnicodeArguments[1] = (ULONG)&uniText;
UtilsZwRaiseHardError(0xb6,0x50000018, 3, 3, pUnicodeArguments, 1, &ReturnValue);
}
NTSTATUS status;
_asm{
mov eax,[ZwIndex]
Lea edx,[ebp+0x0c]
Int 0x2e
mov [status],eax
}
return status;
}
void ShowMessage(PWSTR Caption, PWSTR Msg)
{
ULONG pUnicodeArguments[] = {0, 0, 0};
ULONG ReturnValue;
UNICODE_STRING uniText;
UNICODE_STRING uniCaption;
RtlInitUnicodeString(&uniText, Caption);
RtlInitUnicodeString(&uniCaption, Msg);
pUnicodeArguments[0] = (ULONG)&uniCaption;
pUnicodeArguments[1] = (ULONG)&uniText;
UtilsZwRaiseHardError(0xb6,0x50000018, 3, 3, pUnicodeArguments, 1, &ReturnValue);
}