NTSTATUS __stdcall PopFxPlatformRegisterInterface(
_POFX_PLATFORM_INTERFACE_REGISTER_INPUT *InterfaceIn,
_POFX_PLATFORM_INTERFACE_REGISTER_OUTPUT *InterfaceOut){
signed __int64 v3;
NTSTATUS v4;
if( InterfaceIn[1] != 1 )
return -1073741735;
if( !*((_QWORD *)InterfaceIn + 1) )
return -1073741811;
v3 = *((_QWORD *)InterfaceIn + 3);
if( !v3 )
return -1073741811;
v4 = -1073741823;
if( !_InterlockedCompareExchange64(&qword_140C1E650, v3, 0i64) )
{
v4 = 0;
PopFxPlatformInterface = *(_OWORD *)(InterfaceIn + 2);
*((_QWORD *)InterfaceOut + 1) = 0i64;
*(_QWORD *)InterfaceOut = PoFxPlatformRequestHandler;
ObfReferenceObjectWithTag(*((VOID **)InterfaceIn + 3), 0x4D584650ui64);
}
return v4;
}