HalpInsertProfileSource
CHAR __fastcall HalpInsertProfileSource(INT64 a1, _QWORD **a2, INT64 a3, _QWORD *a4){
int v4;
_QWORD *v5;
_QWORD **v9;
_DWORD *v10;
_QWORD *v11;
_QWORD *v12;
*a4 = 0i64;
v4 = a3 + 1;
v5 = *a2;
v9 = a2;
if( *a2 == a2 )
{
LABEL_7:
*(_DWORD *)a1 = v4;
v11 = (_QWORD *)(a1 + 8);
v12 = v9[1];
if( (_QWORD **)*v12 != v9 )
__fastfail(3u);
*v11 = v9;
*(_QWORD *)(a1 + 16) = v12;
*v12 = v11;
v9[1] = v11;
return 1;
}
else
{
while( 1 )
{
v10 = v5 - 1;
if( !(unsigned int)wcsncmp((const WCHAR *)v5[24], *(const WCHAR **)(a1 + 200), 0xFFui64) )
break;
if( v4 == *v10 )
{
v9 = (_QWORD **)*v5;
++v4;
}
if( !v4 )
return 0;
v5 = (_QWORD *)*v5;
if( v5 == a2 )
goto LABEL_7;
}
*a4 = v10;
return 0;
}
}Referenced by:
Amd64AddProfileSource
EmonAddProfileSource