EtwpCovSampCaptureBufferQueue

CHAR __stdcall EtwpCovSampCaptureBufferQueue(INT64 a1, INT64 a2){
  INT64 v2; 
  INT64 v3; 
  int v4; 
  size_t v6; 
  __int64 v7; 
  INT64 v8; 

  v2 = a2;
  v8 = 0i64;
  v3 = a1;
  v4 = *(unsigned __int16 *)(a2 + 62);
  if( !(_WORD)v4 )
    return EtwpCovSampCaptureBufferRelease(a1, a2);
  v6 = 8 * v4;
  LODWORD(v7) = EtwpCovSampSampleBufferReserve(a1, 8 * v4, &v8);
  if( v7 )
  {
    *(_DWORD *)(v7 + 4) ^= (*(_DWORD *)(v7 + 4) ^ (*(unsigned __int16 *)(v2 + 62) << 16)) & 0x7FFF0000;
    *(_DWORD *)(v7 + 4) = (*(_DWORD *)(v2 + 56) << 29) ^ (*(_DWORD *)(v7 + 4) ^ (*(_DWORD *)(v2 + 56) << 29)) & 0x7FFFFFFF;
    memmove((VOID *)(v7 + 8), (const VOID *)(v2 + 64), v6);
    EtwpCovSampSampleBufferDecRef(v3, v8);
    a2 = v2;
    a1 = v3;
    return EtwpCovSampCaptureBufferRelease(a1, a2);
  }
  return EtwpCovSampCaptureQueueBuffer(v3, (PFN_WDFUSBTARGETDEVICECREATE *)v2);
}

Referenced by:

EtwpCovSampCaptureBufferMapAddressesAndQueue
EtwpCovSampCaptureSample