NTSTATUS __stdcall KiFindFirstAvailableNode(UINT16 *Node){
unsigned __int16 v1;
unsigned __int16 v2;
__int64 v3;
unsigned __int16 *v4;
v1 = KeNumberNodes;
v2 = 0;
if( !KeNumberNodes )
return -1073741275;
while( 1 )
{
v3 = *((_QWORD *)&KeNodeBlock + v2);
if( (*(_BYTE *)(v3 + 181) & 2) != 0 && !KiIsNodeFull(v3) )
break;
if( ++v2 >= v1 )
return -1073741275;
}
*v4 = v2;
return 0;
}