VOID __fastcall WdipSemBuildScenarioInstance(INT64 a1){
struct _SLIST_ENTRY *v1;
struct _SLIST_ENTRY *v2;
PSLIST_ENTRY v4;
PSLIST_ENTRY v5;
struct _SLIST_ENTRY v6;
v2 = v1;
if( a1 && v1 )
{
v4 = WdipSemFastAllocate(3, 0x220u);
v5 = v4;
if( v4 )
{
memset((INT64)v4, 0i64);
v6 = *v2;
v5[2].Next = (_SLIST_ENTRY *)a1;
*((_DWORD *)&v5[2].Next + 3) = 1;
v5[1] = v6;
}
}
}