__int64 __fastcall SmcProcessDeleteRequest(__int64 a1, __int64 *a2, int a3, char a4){
__int64 result;
__int64 v5;
if( a3 != 8 )
return 3221225990i64;
if( a4 && ((unsigned __int8)a2 & 3) != 0 )
ExRaiseDatatypeMisalignment();
v5 = *a2;
if( (unsigned __int8)*a2 != 1 || (v5 & 0xFFFFFF00) != 0 )
return 3221225485i64;
result = SmcCacheDelete(a1, HIDWORD(v5));
if( (int)result >= 0 )
return 0i64;
return result;
}