解读 DelayExecution
//----- (100E6897) --------------------------------------------------------
__int32 __stdcall Windows::Rtl::SystemImplementation::DelayExecution(Windows::Rtl::SystemImplementation *this, unsigned __int64 a2)
{
__int32 __stdcall Windows::Rtl::SystemImplementation::DelayExecution(Windows::Rtl::SystemImplementation *this, unsigned __int64 a2)
{
BUCL::CMultiplier<unsigned __int64,BUCL::Rtl::CCallDisposition>::Multiply(
&v9,
(int)&Interval,
(unsigned int)this,
a2,
0x2710u,
0);
v2 = v9;
if ( v9 < 0 )
return v2;
if ( Interval.QuadPart > 0x7FFFFFFFFFFFFFFFui64 )
{
v3 = 794;
v4 = "Ticks <= (0x7fffffffffffffff)";
v2 = -1073741675;
LABEL_6:
v9 = v2;
v7 = v3;
v8 = v4;
Interval.LowPart = (DWORD)"base\\w
&v9,
(int)&Interval,
(unsigned int)this,
a2,
0x2710u,
0);
v2 = v9;
if ( v9 < 0 )
return v2;
if ( Interval.QuadPart > 0x7FFFFFFFFFFFFFFFui64 )
{
v3 = 794;
v4 = "Ticks <= (0x7fffffffffffffff)";
v2 = -1073741675;
LABEL_6:
v9 = v2;
v7 = v3;
v8 = v4;
Interval.LowPart = (DWORD)"base\\w