VfThunkAddTargetNotify
VOID __fastcall VfThunkAddTargetNotify(INT64 a1){
void **v1;
v1 = (void **)(a1 + 24);
if( !(unsigned int)ViThunkCreateSharedExportInformation(
*(char **)a1,
(__int64)&VfRegularThunks,
48i64,
&VfRegularThunksBitMapHeader,
(void **)(a1 + 24))
|| !(unsigned int)ViThunkCreateSharedExportInformation(
*(char **)a1,
(__int64)&VfPoolThunks,
48i64,
&VfPoolThunksBitMapHeader,
(void **)(a1 + 32))
|| !(unsigned int)ViThunkCreateSharedExportInformation(
*(char **)a1,
(__int64)&VfOrderDependentThunks,
56i64,
&VfOrderDependentThunksBitMapHeader,
(void **)(a1 + 40))
|| !(unsigned int)ViThunkCreateSharedExportInformation(
*(char **)a1,
(__int64)&VfXdvThunks,
48i64,
&VfXdvThunksBitMapHeader,
(void **)(a1 + 48)) )
{
ViThunkFreeSharedThunksArray(v1);
ViThunkFreeSharedThunksArray((void **)(a1 + 32));
ViThunkFreeSharedThunksArray((void **)(a1 + 40));
ViThunkFreeSharedThunksArray((void **)(a1 + 48));
*(_DWORD *)v1 |= 1u;
}
}Referenced by:
VfTargetDriversAdd