RtlLookupElementGenericTableAvl
NTSTATUS __stdcall RtlLookupElementGenericTableAvl(RTL_AVL_TABLE *Table, PVOID Buffer){
NTSTATUS v2;
_RTL_BALANCED_LINKS *i;
_RTL_GENERIC_COMPARE_RESULTS v6;
int v7;
NTSTATUS v8;
v2 = 0;
LODWORD(i) = 0;
if( Table->NumberGenericTableElements )
{
for( i = Table->BalancedRoot.RightChild; ; i = i->LeftChild )
{
while( 1 )
{
v6 = Table->CompareRoutine(Table, Buffer, &i[1]);
if( v6 == GenericLessThan )
break;
if( v6 != GenericGreaterThan )
{
v7 = 1;
goto LABEL_10;
}
if( !i->RightChild )
{
v7 = 3;
goto LABEL_10;
}
i = i->RightChild;
}
if( !i->LeftChild )
break;
}
v7 = 2;
}
else
{
v7 = 0;
}
LABEL_10:
v8 = (_DWORD)i + 32;
if( v7 == 1 )
return v8;
return v2;
}Referenced by:
IopCleanupFileObjectIosbRange
PiDcHandleDeviceEvent
PiDmLookupObject
PiDqQueryApplyObjectEvent
PiLookupInDDBCache
PiPnpRtlObjectEventWorker
PiSwFindBusRelations
PiSwFindSwDevice
PiUpdateDriverDBCache
PnpDeviceObjectFromDeviceInstanceWithTag
PopAvlFindOrMakeStatsForPowerRequest
PopAvlFindOrMakeStatsForScenarioType
PopDirectedDripsUmMarkTestDevices
PopHandleConvergedPowerRequestUpdate
PopNotifySessionUserPowerRequestCreated
PopPowerRequestDeleteEntryById
PopPowerRequestFindEntryById