DECREMENT_COMMON_BUFFERS

void __fastcall DECREMENT_COMMON_BUFFERS(__int64 a1){
  signed __int32 v2; 
  unsigned int v3; 
  unsigned __int32 v4; 
  UINT64 v5; 

  v2 = _InterlockedExchangeAdd((volatile signed __int32 *)(a1 + 176), 1u);
  v3 = *(_DWORD *)(a1 + 172);
  v4 = v2 + 1;
  if( v4 > v3 )
  {
    ViHalPreprocessOptions(
      (UINT64 *)((char *)&qword_140C12CBC + 4),
      (PSTR)"Freed too many common buffers.",
      3ui64,
      v4 - v3,
      0i64,
      0i64,
      v5);
    VfReportIssueWithOptions(0xE6ui64, 3u, v4 - *(_DWORD *)(a1 + 172), 0, 0, (UINT64 *)((char *)&qword_140C12CBC + 4));
  }
}

Referenced by:

VfFreeCommonBuffer
ViSpecialFreeCommonBuffer