ViFindMappedRegisterInFile

_MAP_REGISTER *__stdcall ViFindMappedRegisterInFile(
        _MAP_REGISTER_FILE *MapRegisterFile,
        VOID *CurrentSa,
        UINT64 *MapRegisterNumber){
  unsigned int v3; 
  _MAP_REGISTER *result; 
  int v5; 

  v3 = MapRegisterFile[7];
  result = MapRegisterFile + 22;
  v5 = 0;
  if( !v3 )
    return 0i64;
  while( CurrentSa != *(VOID **)result )
  {
    result += 8;
    if( ++v5 >= v3 )
      return 0i64;
  }
  if( MapRegisterNumber )
    *(_DWORD *)MapRegisterNumber = v5;
  return result;
}

Referenced by:

ViFlushDoubleBuffer
ViFreeMapRegistersToFile
ViSwap