SMKM_STORE_MGR::SmReadPickStore

__int64 __fastcall SMKM_STORE_MGR::SmReadPickStore(
        _SMKM_STORE_LIST *StoreMgr,
        unsigned int *a2,
        unsigned int *a3,
        _QWORD *a4,
        __int64 a5){
  unsigned int v7; 
  unsigned int v9; 
  VOID *v10; 
  _DWORD *v11; 
  int v12; 
  bool v13; 
  unsigned int v15; 
  __int64 v16[4]; 
  int v17; 

  v15 = *a3;
  v7 = 0;
  v16[0] = 0i64;
  v17 = 0;
  v9 = SMKM_STORE_MGR::SmFeReadInitiate((__int64)StoreMgr, a2, &v15, v16, &v17);
  if( v9 == 1024 )
    return(unsigned int)-1073741275;
  ++StoreMgr[467];
  if( v16[0] && v16[0] > KeQueryPerformanceCounter(0i64) + (unsigned int)StoreMgr[466] )
    return(unsigned int)-1073741763;
  v10 = SmKmStoreReferenceEx(StoreMgr, v9);
  if( !v10 )
  {
    return(unsigned int)-1073741275;
  }
  else
  {
    v11 = (_DWORD *)a5;
    v12 = 0;
    v13 = v17 == 0;
    *a4 = v10;
    if( !v13 )
      v12 = 1;
    *v11 = v12;
    *a3 = v15;
  }
  return v7;
}

Referenced by:

No references.