RotBarUpdate

VOID __stdcall RotBarUpdate(
        UINT32 BugCheckCode,
        PVOID BugCheckParameter1,
        PVOID BugCheckParameter2,
        PVOID BugCheckParameter3,
        PVOID BugCheckParameter4){
  int v5; 
  int v6; 
  __int64 v7; 
  __int64 v8; 
  __int64 v9; 
  int v10; 
  if( PltRotBarStatus )
  {
    if( PltRotBarStatus == 1 )
    {
      v10 = *(_DWORD *)PaletteNum;
      FadePalette(*(UINT8 *)PaletteNum);
      *(_DWORD *)PaletteNum = ++v10;
      HIDWORD((*PalettePtr)[0]) = 0;
      if( v10 >= 20 )
      {
        PltRotBarStatus = 2;
        *(_DWORD *)PaletteNum = 1;
      }
      goto LABEL_25;
    }
    if( PltRotBarStatus != 2 )
    {
      if( PltRotBarStatus == 3 )
        return;
      goto LABEL_25;
    }
    if( !AnimBarPos )
    {
      v8 = 371i64;
      v7 = 376i64;
      goto LABEL_20;
    }
    if( AnimBarPos == 1 )
    {
      v9 = 259i64;
    }
    else
    {
      if( AnimBarPos != 2 )
      {
        if( AnimBarPos == 16 )
        {
          VidBufferToScreenBlt(Square1, 363i64, 354i64, 6i64, 9, 4);
          VidBufferToScreenBlt(Square2, (unsigned int)(8 * AnimBarPos + 243), 354i64, 6i64, 9, 4);
        }
        else
        {
          if( AnimBarPos != 17 )
          {
            VidBufferToScreenBlt(Square1, (unsigned int)(8 * AnimBarPos + 235), 354i64, 6i64, 9, 4);
            VidBufferToScreenBlt(Square2, (unsigned int)(8 * AnimBarPos + 243), 354i64, 6i64, 9, 4);
            VidBufferToScreenBlt(Square3, (unsigned int)(8 * AnimBarPos + 251), 354i64, 6i64, 9, 4);
            v5 = AnimBarPos;
            if( AnimBarPos <= 3 )
              goto LABEL_21;
            goto LABEL_12;
          }
          VidBufferToScreenBlt(Square1, 371i64, 354i64, 6i64, 9, 4);
        }
        v5 = AnimBarPos;
LABEL_12:
        v6 = (v5 + 16) % 18;
        v7 = (unsigned int)(8 * v6 + 248);
        v8 = (unsigned int)(8 * v6 + 243);
LABEL_20:
        VidSolidColorFill(v8, 354i64, v7, 362i64, 0);
LABEL_21:
        if( ++AnimBarPos > 17 )
          AnimBarPos = 0;
LABEL_25:
        if( !(unsigned int)InbvGetDisplayState() )
          VidBitBlt(PaletteBmp, 0i64, 480i64);
        return;
      }
      VidBufferToScreenBlt(Square2, 259i64, 354i64, 6i64, 9, 4);
      v9 = (unsigned int)(8 * AnimBarPos + 251);
    }
    VidBufferToScreenBlt(Square3, v9, 354i64, 6i64, 9, 4);
    goto LABEL_21;
  }
}

Referenced by:

InbvRotateGuiBootDisplay