ViThunkCreateSharedExportInformation
__int64 __fastcall ViThunkCreateSharedExportInformation(
char *a1,
__int64 a2,
__int64 a3,
struct _RTL_BITMAP *a4,
void **a5){
unsigned int v9;
unsigned int v10;
unsigned int v11;
void *PoolWithTag;
v9 = 1;
v10 = RtlNumberOfClearBits(a4);
v11 = v10;
if( v10 )
{
PoolWithTag = ExAllocatePoolWithTag(NonPagedPoolNx, 32i64 * v10, 0x54496656ui64);
*a5 = PoolWithTag;
if( PoolWithTag )
{
memset((INT64)PoolWithTag, 0i64);
if( !(unsigned int)ViThunkSnapSharedExports(a1, a2, a3, a4, v11, (__int64)*a5) )
ViThunkFreeSharedThunksArray(a5);
}
else
{
return 0;
}
}
else
{
*a5 = 0i64;
}
return v9;
}Referenced by:
VfThunkAddTargetNotify