{"name": "hpctimer_gettsc", "code": "unsigned __int64 hpctimer_gettsc ( ) { @@_RAX@@ = Number L ; __asm { cpuid } return __rdtsc ( ) ; }", "source": [{"n": "_RAX", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}
{"name": "hpctimer_timer_initialize", "code": "__int64 __fastcall hpctimer_timer_initialize ( __int64 @@a1@@ , int @@a2@@ , int @@a3@@ ) { * ( _DWORD * ) @@a1@@ = @@a2@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@a3@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; if ( ( * ( _DWORD * ) ( @@a1@@ + Number ) & Number ) != Number ) hpctimer_set_cpuaffinity ( @@a1@@ ) ; if ( * ( _DWORD * ) @@a1@@ != Number ) return Number L ; * ( _QWORD * ) ( @@a1@@ + Number ) = hpctimer_gettsc ; hpctimer_tsctimer_init ( @@a1@@ ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}]} {"name": "hpctimer_tsctimer_init", "code": "__int64 __fastcall hpctimer_tsctimer_init ( __int64 @@a1@@ ) { struct timeval @@v2@@ ; struct timeval @@tv@@ ; unsigned __int64 @@v4@@ ; int @@j@@ ; int @@i@@ ; unsigned __int64 @@v7@@ ; unsigned __int64 @@v8@@ ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; hpctimer_gettsc ( ) ; @@v8@@ = hpctimer_gettsc ( ) ; @@v7@@ = hpctimer_gettsc ( ) ; @@v4@@ = @@v7@@ - @@v8@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v7@@ - @@v8@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { @@v8@@ = hpctimer_gettsc ( ) ; gettimeofday ( & @@tv@@ , Number L ) ; for ( @@j@@ = Number ; @@j@@ <= Number ; ++ @@j@@ ) ; @@v7@@ = hpctimer_gettsc ( ) ; gettimeofday ( & @@v2@@ , Number L ) ; } * ( _QWORD * ) ( @@a1@@ + Number ) = ( @@v7@@ - @@v8@@ - * ( _QWORD * ) ( @@a1@@ + Number ) ) / ( Number * @@tv@@ . tv_sec + @@v2@@ . tv_usec + Number * @@v2@@ . tv_sec - @@tv@@ . tv_usec ) ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v7", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s16"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "j", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}, {"n": "v4", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s32"}, {"n": "tv", "t": {"T": 6, "n": "struct timeval", "l": [{"T": 4, "n": "tv_sec", "t": "__time_t", "s": 8}, {"T": 4, "n": "tv_usec", "t": "__suseconds_t", "s": 8}]}, "location": "s48"}, {"n": "v2", "t": {"T": 6, "n": "struct timeval", "l": [{"T": 4, "n": "tv_sec", "t": "__time_t", "s": 8}, {"T": 4, "n": "tv_usec", "t": "__suseconds_t", "s": 8}]}, "location": "s64"}, {"n": "v8", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}