KiOp_MOVDQA
NTSTATUS __stdcall KiOp_MOVDQA(INT64 a1){
__int64 CurrentThread;
NTSTATUS result;
if( *(_BYTE *)(a1 + 58) )
return 0;
if( *(_BYTE *)(a1 + 81) != 1 )
return 0;
CurrentThread = (__int64)KeGetCurrentThread();
if( (*(_DWORD *)(CurrentThread + 120) & 4) == 0 )
{
CurrentThread = *(unsigned int *)(*(_QWORD *)(CurrentThread + 184) + 632i64);
if( (CurrentThread & 1) == 0 )
return 0;
}
result = KiOpPatchCode(CurrentThread, *(_QWORD *)a1, 243);
if( (int)(result + 0x80000000) < 0 || result == -1073741267 )
{
*(_BYTE *)(a1 + 96) = 1;
return 0;
}
return result;
}Referenced by:
No references.