CmpVolumeManagerGetContextForGuidUnsafe

INT64 __fastcall CmpVolumeManagerGetContextForGuidUnsafe(INT64 a1, _QWORD *a2){
  __int64 v2; 
  INT64 v3; 
  __int64 v4; 

  v2 = qword_140D2DF58;
  v3 = 0i64;
  while( (__int64 *)v2 != &qword_140D2DF58 )
  {
    v4 = *(_QWORD *)(v2 + 32) - *a2;
    if( !v4 )
      v4 = *(_QWORD *)(v2 + 40) - a2[1];
    if( !v4 )
    {
      v3 = v2;
      if( v2 && _InterlockedIncrement64((volatile signed __int64 *)(v2 + 24)) <= 1 )
        __fastfail(0xEu);
      return v3;
    }
    v2 = *(_QWORD *)v2;
  }
  return v3;
}

Referenced by:

CmpVolumeManagerGetContextForFile