- // bad sp value at call has been detected, the output may be wrong!
- // positive sp value has been detected, the output may be wrong!
- unsigned __int64 __fastcall sub_1421086C0(
- __int64 a1,
- __int64 a2,
- __int64 a3,
- __int64 a4,
- __int64 a5,
- __int64 a6,
- __int64 a7,
- __int64 a8,
- __int64 a9,
- __int64 a10,
- __int64 a11,
- __int64 a12,
- __int64 a13,
- __int64 a14,
- __int64 a15,
- __int64 a16,
- __int64 a17,
- __int64 a18,
- __int64 a19,
- __int64 a20,
- __int64 a21,
- __int64 a22,
- __int64 a23,
- __int64 a24,
- __int64 a25,
- __int64 a26,
- __int64 a27,
- __int64 a28,
- __int64 a29,
- __int64 a30,
- __int64 a31,
- __int64 a32,
- __int64 a33,
- __int64 a34,
- __int64 a35,
- __int64 a36,
- __int64 a37,
- __int64 a38,
- __int64 a39,
- __int64 a40,
- __int64 a41,
- __int64 a42,
- __int64 a43,
- __int64 a44,
- __int64 a45,
- __int64 a46,
- __int64 a47,
- __int64 a48,
- __int64 a49,
- __int64 a50,
- __int64 a51,
- __int64 a52,
- __int64 a53,
- __int64 a54,
- __int64 a55,
- __int64 a56,
- __int64 a57,
- __int64 a58,
- __int64 a59,
- __int64 a60,
- __int64 a61,
- __int64 a62,
- __int64 a63)
- {
- int v66; // esi
- unsigned int v67; // ebx
- __int64 v68; // rcx
- unsigned __int64 result; // rax
- int v70; // [rsp-88DCh] [rbp-8924h] BYREF
- __int16 v71; // [rsp-88C8h] [rbp-8910h]
- v67 = a1;
- if ( !(unsigned int)((__int64 (__fastcall *)(__int64, __int64, int *))sub_142116B90)(a1, 1i64, &v70) )
- JUMPOUT(0x142108721i64);
- v68 = 65531i64;
- v71 = v71 & 0xFFF9 | 2;
- if ( __SETP__(v71, 0) || !__SETP__(-1, 0) )
- JUMPOUT(0x142108C51i64);
- result = __rdtsc();
- result = (unsigned int)result;
- if ( v67 < 0x33B9CFF9 )
- {
- if ( __SETP__(v67, 867815417) )
- {
- LOBYTE(v68) = -89;
- *(_DWORD *)(v68 - 2078339328) += v66 + 207627133;
- JUMPOUT(0x142108C5Bi64);
- }
- JUMPOUT(0x1421230BDi64);
- }
- if ( v67 < 0x33B9CFF9 && v67 != 867815417 )
- JUMPOUT(0x142127D81i64);
- *(_BYTE *)((unsigned int)result + 3i64) -= 5;
- return result;
- }