HalpWriteRtcStdPCAT

INT64 __fastcall HalpWriteRtcStdPCAT(INT64 a1, INT64 a2, INT64 a3){
  unsigned int v4; 
  unsigned int v5; 
  char v6; 
  unsigned __int8 v7; 
  unsigned __int8 v8; 
  __int64 i; 
  unsigned __int8 v10; 
  v4 = a1 + a3;
  v5 = a1;
  HalpAcquireCmosSpinLock(a1, a2, a3);
  do
  {
    __outbyte(0x70u, 0xAu);
    v6 = __inbyte(0x71u);
  }
  while( v6 < 0 );
  __outbyte(0x70u, 0xBu);
  v7 = __inbyte(0x71u);
  __outbyte(0x70u, 0xBu);
  v8 = v7 | 0x80;
  for( i = 0i64; ; i = (unsigned int)(i + 1) )
  {
    __outbyte(0x71u, v8);
    if( v5 >= v4 )
      break;
    __outbyte(0x70u, v5);
    v8 = *(_BYTE *)(i + a2);
    ++v5;
  }
  __outbyte(0x70u, 0xBu);
  v10 = __inbyte(0x71u);
  __outbyte(0x70u, 0xBu);
  __outbyte(0x71u, v10 & 0x7F);
  _InterlockedExchange(&HalpSystemHardwareLock, -1);
  if( (_BYTE)HalpSystemHardwareLockInterruptsEnabled )
    _enable();
  return(unsigned int)i;
}

Referenced by:

No references.