RtlSIZETMult - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
#ifndef _NTINTSAFE_H_INCLUDED_
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)
//
// SIZE_T multiplication
//
#ifdef _WIN64

#define RtlSIZETMult       RtlULongLongMult

#endif
#endif
#endif

View code on GitHub
#ifndef _NTINTSAFE_H_INCLUDED_
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM | WINAPI_PARTITION_GAMES)
//
// SIZE_T multiplication
//
#ifdef _WIN64
// ...
#else

_Must_inspect_result_
__inline
NTSTATUS
RtlSIZETMult(
    _In_ SIZE_T Multiplicand,
    _In_ SIZE_T Multiplier,
    _Out_ _Deref_out_range_(==, Multiplicand * Multiplier) SIZE_T* pResult)
{
    ULONGLONG ull64Result = UInt32x32To64(Multiplicand, Multiplier);
    
    return RtlULongLongToSIZET(ull64Result, pResult);
}

#endif
#endif
#endif

View code on GitHub

No description available.