IopMarkApcRoutineIfAsynchronousIo32
INT64 __fastcall IopMarkApcRoutineIfAsynchronousIo32(UINT64 **a1, INT64 *a2, CHAR a3){
UINT64 *v4;
INT64 result;
__int16 v6;
UINT64 *v7;
INT64 v8;
v4 = *a1;
result = *(_QWORD *)(*((_QWORD *)KeGetCurrentThread() + 23) + 1408i64);
if( result )
{
v6 = *(_WORD *)(result + 8);
result = 332i64;
if( v6 == 332 || (result = 452i64, v6 == 452) )
{
if( !a3 )
{
v7 = (UINT64 *)*(unsigned int *)v4;
v8 = *a2 | 1;
result = *(unsigned int *)v7;
*(_DWORD *)v7 = result;
*a1 = v7;
*a2 = v8;
}
}
}
return result;
}Referenced by:
BuildQueryDirectoryIrp
IopXxxControlFile
NtLockFile
NtNotifyChangeDirectoryFileEx
NtReadFile
NtReadFileScatter
NtWriteFile
NtWriteFileGather