PopCountDataAsProduced
CHAR __fastcall PopCountDataAsProduced(INT64 a1, CHAR *a2, CHAR *a3, CHAR *a4, INT64 a5, CHAR a6){
INT64 v7;
unsigned int v11;
unsigned int v12;
CHAR *Buffer;
CHAR result;
unsigned __int64 v15;
unsigned __int64 v16;
v7 = qword_140C234D8;
v11 = 8 * (unsigned __int8)*(_DWORD *)a3;
v12 = ((*(_DWORD *)a3 >> 8) & 0x3FFFFF) + v11;
Buffer = (CHAR *)ProducerGetBuffer(qword_140C234D8, v12 + 4, (unsigned int)((_DWORD)a5 << 12), a6);
result = 0;
if( Buffer )
{
ProducerConsumerCopyToContextBuffer(a3, 4ui64, v7, Buffer);
ProducerConsumerCopyToContextBuffer(a4, v11, v7, Buffer + 4);
ProducerConsumerCopyToContextBuffer(a2, (*(_DWORD *)a3 >> 8) & 0x3FFFFF, v7, &Buffer[v11 + 4]);
v15 = __rdtsc();
ProducerConsumerBufferComplete(v7, v7 + 32, (int)Buffer, v12 + 4);
v16 = __rdtsc();
*(_QWORD *)(a1 + 80) += (((unsigned __int64)HIDWORD(v16) << 32) | (unsigned int)v16) - v15;
return 1;
}
return result;
}Referenced by:
PopCompressHiberBlocks
PopWriteHiberImage