SdbpReadTagData
__int64 __fastcall SdbpReadTagData(__int64 a1, UINT64 a2, void *a3, unsigned int a4){
unsigned int v6;
unsigned int TagDataSize;
unsigned int v9;
int TagHeadSize;
unsigned int v12;
unsigned int v13;
v6 = a2;
TagDataSize = SdbGetTagDataSize(a1, a2);
v9 = TagDataSize;
if( TagDataSize > a4 )
{
v13 = TagDataSize;
v12 = a4;
AslLogCallPrintf(1ui64, "SdbpReadTagData", 0x160ui64, "Buffer too small. Avail: %d, Need: %d", v12, v13);
}
else
{
TagHeadSize = SdbpGetTagHeadSize(a1, v6);
if( (unsigned int)SdbpReadMappedData(a1, v6 + TagHeadSize, a3, v9) )
return 1i64;
AslLogCallPrintf(1ui64, "SdbpReadTagData", 0x167ui64, "Error reading tag data");
}
return 0i64;
}Referenced by:
SdbReadBinaryTag
SdbReadDWORDTag
SdbReadQWORDTag
SdbReadWORDTag
SdbpReadStringRef