ExpLegacyWorkerInitialization

INT64 __stdcall ExpLegacyWorkerInitialization(){
  int v0; 
  int v1; 
  int v2; 
  __int64 v3; 
  ULONG_PTR v4; 
  __int64 v5; 
  INT64 result; 
  v0 = ExpAdditionalCriticalWorkerThreads;
  if( (unsigned int)ExpAdditionalCriticalWorkerThreads > 0x64 )
  {
    v0 = 100;
    ExpAdditionalCriticalWorkerThreads = 100;
  }
  v1 = ExpAdditionalDelayedWorkerThreads;
  if( (unsigned int)ExpAdditionalDelayedWorkerThreads > 0x64 )
  {
    v1 = 100;
    ExpAdditionalDelayedWorkerThreads = 100;
  }
  v2 = 5;
  if( (_BYTE)dword_140CFA19C )
    v2 = 10;
  ExCriticalWorkerThreads = v0 + v2;
  ExDelayedWorkerThreads = v1 + 7;
  v3 = 0i64;
  if( *(__int64 **)&KeNodeBlock != KiNodeInit )
    v3 = *(_QWORD *)&KeNodeBlock;
  v4 = **(_QWORD **)(*(_QWORD *)(*((_QWORD *)PspSystemPartition + 2) + 8i64) + 8i64 * *(unsigned __int16 *)(v3 + 146));
  if( (v4 & 1) != 0 )
    v4 = 0i64;
  ExWorkerQueue = v4;
  v5 = 0i64;
  if( *(__int64 **)&KeNodeBlock != KiNodeInit )
    v5 = *(_QWORD *)&KeNodeBlock;
  result = *(_QWORD *)(*(_QWORD *)(*(_QWORD *)(*((_QWORD *)PspSystemPartition + 2) + 8i64)
                                 + 8i64 * *(unsigned __int16 *)(v5 + 146))
                     + 8i64);
  if( (result & 1) != 0 )
    result = 0i64;
  IoWorkerQueue = result;
  return result;
}

Referenced by:

No references.