HalpAcpiPmRegisterWriteRegister

NTSTATUS __stdcall HalpAcpiPmRegisterWriteRegister(PVOID RegisterAddress, PVOID Input){
  _QWORD *v2; 
  int v3; 
  int v4; 
  int v5; 
  void *retaddr; 
  v3 = (_DWORD)Input - 1;
  if( v3 )
  {
    v4 = v3 - 1;
    if( v4 )
    {
      v5 = v4 - 2;
      if( v5 )
      {
        if( v5 != 4 )
          return -1073741823;
        *(_QWORD *)RegisterAddress = *v2;
      }
      else
      {
        *(_DWORD *)RegisterAddress = *(_DWORD *)v2;
      }
    }
    else
    {
      *(_WORD *)RegisterAddress = *(_WORD *)v2;
    }
  }
  else
  {
    *(_BYTE *)RegisterAddress = *(_BYTE *)v2;
  }
  _InterlockedOr((volatile signed __int32 *)&retaddr, 0);
  return 0;
}

Referenced by:

No references.