| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Program Files (x86)/Windows Kits/10/Source/10.0.19041.0/ucrt/stdlib/ |
Upload File : |
//
// rotr.cpp
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// Defines _lrotl(), _rotl(), and _rotl64(), which perform a rotate-right on an
// integer.
//
#include <stdlib.h>
#include <limits.h>
#pragma function(_lrotr, _rotr, _rotr64)
#if UINT_MAX != 0xffffffff
#error This source file assumes 32-bit integers
#endif
#if UINT_MAX != ULONG_MAX
#error This source file assumes sizeof(int) == sizeof(long)
#endif
extern "C" unsigned long __cdecl _lrotr(unsigned long value, int shift)
{
shift &= 0x1f;
value = (value << (0x20 - shift)) | (value >> shift);
return value;
}
extern "C" unsigned __cdecl _rotr(unsigned value, int shift)
{
shift &= 0x1f;
value = (value << (0x20 - shift)) | (value >> shift);
return value;
}
extern "C" unsigned __int64 __cdecl _rotr64(unsigned __int64 value, int shift)
{
shift &= 0x3f;
value = (value << (0x40 - shift)) | (value >> shift);
return value;
}