CPU Disasm
Address Hex dump Command Comments
004101A6 |. 8B0D 84004200 |MOV ECX,DWORD PTR DS:[420084]
004101AC |. E3 20 |JECXZ SHORT 004101CE
004101AE |. 83F9 0A |CMP ECX,0A
004101B1 |. 76 0F |JBE SHORT 004101C2
004101B3 |. C705 38004200 03000000 |MOV DWORD PTR DS:[Linkarea],3
004101BD |. E9 97010000 |JMP 00410359 退出程序
004101C2 |> B8 88004200 |MOV EAX,OFFSET 00420088
004101C7 |> FF30 |/PUSH DWORD PTR DS:[EAX]
004101C9 |. 83C0 04 ||ADD EAX,4
004101CC |.^ E2 F9 |\LOOP SHORT 004101C7
004101CE |> 8925 64014200 |MOV DWORD PTR DS:[420164],ESP
004101D4 |. 68 68014200 |PUSH OFFSET 00420168
004101D9 |. E8 A7030000 |CALL <JMP.&KERNEL32.QueryPerformanceCounter> ; Jump to kernel32.QueryPerformanceCounter
004101DE |. A1 6C004200 |MOV EAX,DWORD PTR DS:[42006C]
004101E3 |. 8B0D 70004200 |MOV ECX,DWORD PTR DS:[420070]
004101E9 |. 8B15 74004200 |MOV EDX,DWORD PTR DS:[420074]
004101EF |. 8B1D 78004200 |MOV EBX,DWORD PTR DS:[420078]
004101F5 |. 8B35 7C004200 |MOV ESI,DWORD PTR DS:[42007C]
004101FB |. 8B3D 80004200 |MOV EDI,DWORD PTR DS:[420080]
00410201 |. 90 |NOP
00410202 |. 90 |NOP
00410203 |. 90 |NOP
00410204 |. 90 |NOP
00410205 |. 90 |NOP
00410206 |. 90 |NOP
00410207 |. 90 |NOP
00410208 |. 90 |NOP
00410209 |. 90 |NOP
0041020A |. 90 |NOP
0041020B |. FF15 68004200 |CALL DWORD PTR DS:[420068]
00410211 |. 90 |NOP
00410212 |. 90 |NOP
00410213 |. 90 |NOP
00410214 |. 90 |NOP
00410215 |. 90 |NOP
00410216 |. 90 |NOP
00410217 |. 90 |NOP
00410218 |. 90 |NOP
00410219 |. 90 |NOP
0041021A |. 90 |NOP
0041021B |. A3 6C004200 |MOV DWORD PTR DS:[42006C],EAX
00410220 |. 890D 70004200 |MOV DWORD PTR DS:[420070],ECX
00410226 |. 8915 74004200 |MOV DWORD PTR DS:[420074],EDX
0041022C |. 891D 78004200 |MOV DWORD PTR DS:[420078],EBX
00410232 |. 8935 7C004200 |MOV DWORD PTR DS:[42007C],ESI
00410238 |. 893D 80004200 |MOV DWORD PTR DS:[420080],EDI
0041023E |. 68 70014200 |PUSH OFFSET 00420170
00410243 |. E8 3D030000 |CALL <JMP.&KERNEL32.QueryPerformanceCounter> ; Jump to kernel32.QueryPerformanceCounter
00410248 |. A1 6C004200 |MOV EAX,DWORD PTR DS:[42006C]
0041024D |. 8B0D 70004200 |MOV ECX,DWORD PTR DS:[420070]
00410253 |. 8B15 74004200 |MOV EDX,DWORD PTR DS:[420074]
00410259 |. 8B1D 78004200 |MOV EBX,DWORD PTR DS:[420078]
0041025F |. 8B35 7C004200 |MOV ESI,DWORD PTR DS:[42007C]
00410265 |. 8B3D 80004200 |MOV EDI,DWORD PTR DS:[420080]
0041026B |. 90 |NOP
0041026C |. 90 |NOP
0041026D |. 90 |NOP
0041026E |. 90 |NOP
0041026F |. 90 |NOP
00410270 |. 90 |NOP
00410271 |. 90 |NOP
00410272 |. 90 |NOP
00410273 |. 90 |NOP
00410274 |. 90 |NOP
00410275 |. 90 |NOP
00410276 |. 90 |NOP
00410277 |. 90 |NOP
00410278 |. 90 |NOP
00410279 |. 90 |NOP
0041027A |. 90 |NOP
0041027B |. 90 |NOP
0041027C |. 90 |NOP
0041027D |. 90 |NOP
0041027E |. 90 |NOP
0041027F |. A3 6C004200 |MOV DWORD PTR DS:[42006C],EAX
00410284 |. 890D 70004200 |MOV DWORD PTR DS:[420070],ECX
0041028A |. 8915 74004200 |MOV DWORD PTR DS:[420074],EDX
00410290 |. 891D 78004200 |MOV DWORD PTR DS:[420078],EBX
00410296 |. 8935 7C004200 |MOV DWORD PTR DS:[42007C],ESI
0041029C |. 893D 80004200 |MOV DWORD PTR DS:[420080],EDI
004102A2 |. 68 78014200 |PUSH OFFSET 00420178
004102A7 |. E8 D9020000 |CALL <JMP.&KERNEL32.QueryPerformanceCounter> ; Jump to kernel32.QueryPerformanceCounter
004102AC |. A1 70014200 |MOV EAX,DWORD PTR DS:[420170]
004102B1 |. 8B0D 74014200 |MOV ECX,DWORD PTR DS:[420174]
004102B7 |. 03C0 |ADD EAX,EAX
004102B9 |. 13C9 |ADC ECX,ECX
004102BB |. 2B05 68014200 |SUB EAX,DWORD PTR DS:[420168]
004102C1 |. 1B0D 6C014200 |SBB ECX,DWORD PTR DS:[42016C]
004102C7 |. 2B05 78014200 |SUB EAX,DWORD PTR DS:[420178]
004102CD |. 1B0D 7C014200 |SBB ECX,DWORD PTR DS:[42017C]
004102D3 |. A3 B4004200 |MOV DWORD PTR DS:[4200B4],EAX
004102D8 |. 890D B8004200 |MOV DWORD PTR DS:[4200B8],ECX
004102DE |. 8BC4 |MOV EAX,ESP
004102E0 |. 2B05 64014200 |SUB EAX,DWORD PTR DS:[420164]
004102E6 |. A3 B0004200 |MOV DWORD PTR DS:[4200B0],EAX
004102EB |. E8 83020000 |CALL <JMP.&KERNEL32.GetLastError> ; [KERNEL32.GetLastError
004102F0 |. A3 60004200 |MOV DWORD PTR DS:[420060],EAX
004102F5 |. 8B2D 60014200 |MOV EBP,DWORD PTR DS:[420160]
004102FB |. 8B25 5C014200 |MOV ESP,DWORD PTR DS:[42015C]
00410301 |. C705 68004200 00000000 |MOV DWORD PTR DS:[420068],0
0041030B |. 90 |NOP
0041030C |. CC |INT3
0041030D |. 90 |NOP
------解决思路----------------------
QueryPerformanceCounter
The QueryPerformanceCounter function retrieves the current value of the high-resolution performance counter, if one exists.
BOOL QueryPerformanceCounter(
LARGE_INTEGER *lpPerformanceCount // pointer to counter value
);
Parameters
lpPerformanceCount
Pointer to a variable that the function sets, in counts, to the current performance-counter value. If the installed hardware does not support a high-resolution performance counter, this parameter can be to zero.
Return Values
If the installed hardware supports a high-resolution performance counter, the return value is nonzero.
If the installed hardware does not support a high-resolution performance counter, the return value is zero.
QuickInfo
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in winbase.h.
Import Library: Use kernel32.lib.
See Also
Timers Overview, Timer Functions, QueryPerformanceFrequency