PopDiagDeviceRundownWorker
VOID __stdcall PopDiagDeviceRundownWorker(PVOID Context){
unsigned __int16 *v1;
unsigned __int16 *i;
unsigned __int16 *v3;
_InterlockedExchange(&PopDiagDeviceRundownRequests, 0);
IoControlPnpDeviceActionQueue(1u);
v1 = (unsigned __int16 *)IopRootDeviceNode;
for( i = (unsigned __int16 *)*((_QWORD *)IopRootDeviceNode + 1); i; i = (unsigned __int16 *)*((_QWORD *)i + 1) )
v1 = i;
while( v1 != IopRootDeviceNode )
{
PoDiagTraceDeviceRundown((__int64)v1, v1 + 20, v1 + 28, *((_DWORD *)v1 + 39));
v3 = *(unsigned __int16 **)v1;
if( *(_QWORD *)v1 )
{
do
{
v1 = v3;
v3 = (unsigned __int16 *)*((_QWORD *)v3 + 1);
}
while( v3 );
}
else
{
v1 = (unsigned __int16 *)*((_QWORD *)v1 + 2);
}
}
IoControlPnpDeviceActionQueue(0);
}Referenced by:
No references.