PfTAcquireLogEntry

__int64 __fastcall PfTAcquireLogEntry(_PFP_BUFFER_MANAGER *BufferMgr, _DWORD *a2, int a3){
  __int64 result; 
  int v7; 

  result = *(_QWORD *)&BufferMgr[1]._bf_0;
  if( (unsigned int)(a3 + *(_DWORD *)(result + 16)) > *(_DWORD *)(result + 20) )
  {
    while( PfTReplaceCurrentBuffer(&BufferMgr->_bf_0) != -1073741823 )
    {
      result = *(_QWORD *)&BufferMgr[1]._bf_0;
      if( (unsigned int)(a3 + *(_DWORD *)(result + 16)) <= *(_DWORD *)(result + 20) )
        goto LABEL_2;
    }
    result = 0i64;
    *a2 = 0xFFFF;
  }
  else
  {
LABEL_2:
    v7 = *(_DWORD *)(result + 16);
    *a2 = v7;
    *(_DWORD *)(result + 16) = v7 + a3;
  }
  return result;
}

Referenced by:

PfpCopyEvent
PfpFlushBuffers