IopRemoveCurrentRelationFromList

void __fastcall IopRemoveCurrentRelationFromList(_DEVICE_OBJECT_LIST **a1, _DEVICE_OBJECT *a2, _DWORD *a3){
  unsigned int v5; 
  _DEVICE_OBJECT_LIST **v6; 
  _DEVICE_OBJECT *v7; 

  v7 = 0i64;
  if( *a3 <= 1u )
  {
    v5 = a3[1] - 1;
    PipDeviceObjectListElementAt(*a1, v5, &v7, 0i64, 0i64);
    if( v7 == a2 )
    {
      PipDeviceObjectListRemove(*v6, v5);
      if( *a3 <= 1u )
        a3[1] = v5;
    }
  }
}

Referenced by:

PnpUnlinkDeviceRemovalRelations