| 1 | .486
|
|---|
| 2 | .model flat, stdcall
|
|---|
| 3 | .data
|
|---|
| 4 | _imp__IsDebuggerPresent@0 dd IsDebuggerPresent_Helper@0
|
|---|
| 5 | PUBLIC _imp__IsDebuggerPresent@0
|
|---|
| 6 |
|
|---|
| 7 | _imp__EncodePointer@4 dd EncodePointer_Helper@4
|
|---|
| 8 | PUBLIC _imp__EncodePointer@4
|
|---|
| 9 |
|
|---|
| 10 | _imp__DecodePointer@4 dd DecodePointer_Helper@4
|
|---|
| 11 | PUBLIC _imp__DecodePointer@4
|
|---|
| 12 |
|
|---|
| 13 | _imp__IsProcessorFeaturePresent@4 dd IsProcessorFeaturePresent_Helper@4
|
|---|
| 14 | PUBLIC _imp__IsProcessorFeaturePresent@4
|
|---|
| 15 |
|
|---|
| 16 | _imp__HeapSetInformation@16 dd HeapSetInformation_Helper@16
|
|---|
| 17 | PUBLIC _imp__HeapSetInformation@16
|
|---|
| 18 |
|
|---|
| 19 | _imp__InitializeCriticalSectionAndSpinCount@8 dd InitializeCriticalSectionAndSpinCount_Helper@8
|
|---|
| 20 | PUBLIC _imp__InitializeCriticalSectionAndSpinCount@8
|
|---|
| 21 |
|
|---|
| 22 | _imp__InterlockedPushEntrySList@8 dd InterlockedPushEntrySList_Helper@8
|
|---|
| 23 | PUBLIC _imp__InterlockedPushEntrySList@8
|
|---|
| 24 |
|
|---|
| 25 | _imp__InterlockedPopEntrySList@4 dd InterlockedPopEntrySList_Helper@4
|
|---|
| 26 | PUBLIC _imp__InterlockedPopEntrySList@4
|
|---|
| 27 |
|
|---|
| 28 | _imp__InterlockedCompareExchange@12 dd InterlockedCompareExchange_Helper
|
|---|
| 29 | PUBLIC _imp__InterlockedCompareExchange@12
|
|---|
| 30 |
|
|---|
| 31 | EXTERN IsDebuggerPresent_Helper@0 : DWORD
|
|---|
| 32 | EXTERN EncodePointer_Helper@4 : DWORD
|
|---|
| 33 | EXTERN DecodePointer_Helper@4 : DWORD
|
|---|
| 34 | EXTERN IsProcessorFeaturePresent_Helper@4 : DWORD
|
|---|
| 35 | EXTERN HeapSetInformation_Helper@16 : DWORD
|
|---|
| 36 | EXTERN InitializeCriticalSectionAndSpinCount_Helper@8 : DWORD
|
|---|
| 37 | EXTERN InterlockedPushEntrySList_Helper@8 : DWORD
|
|---|
| 38 | EXTERN InterlockedPopEntrySList_Helper@4 : DWORD
|
|---|
| 39 |
|
|---|
| 40 | EXTERN _imp__InitializeCriticalSection@4 : DWORD
|
|---|
| 41 |
|
|---|
| 42 | .code
|
|---|
| 43 | InterlockedCompareExchange_Helper PROC PRIVATE
|
|---|
| 44 | mov ecx,[esp+4]
|
|---|
| 45 | mov edx,[esp+8]
|
|---|
| 46 | mov eax,[esp+12]
|
|---|
| 47 | lock cmpxchg [ecx],edx
|
|---|
| 48 | ret 12
|
|---|
| 49 | InterlockedCompareExchange_Helper ENDP
|
|---|
| 50 | end
|
|---|