NTSTATUS __stdcall ObAdjustSecurityQuota(VOID *Object, UINT64 NewSize){
_OBJECT_HEADER *v2;
unsigned int v3;
_OBJECT_HEADER_QUOTA_INFO *v4;
VOID *v5;
VOID *SecurityDescriptorQuotaBlock;
v2 = (_OBJECT_HEADER *)((char *)Object - 48);
v3 = NewSize;
if( v2->ObjectCreateInfo == (_OBJECT_CREATE_INFORMATION *)1 )
return 0;
v4 = OBJECT_HEADER_TO_QUOTA_INFO(v2);
v5 = PsChargeSharedPoolQuota(KeGetCurrentThread()->ApcState.Process, v3, 0i64);
if( v5 )
{
SecurityDescriptorQuotaBlock = v4->SecurityDescriptorQuotaBlock;
if( SecurityDescriptorQuotaBlock )
PsReturnSharedPoolQuota(SecurityDescriptorQuotaBlock, v4->SecurityDescriptorCharge, 0);
v4->SecurityDescriptorCharge = v3;
v4->SecurityDescriptorQuotaBlock = v5;
return 0;
}
return -1073741756;
}