All pastes #231202 Raw Edit

Someone

public text v1 · immutable
#231202 ·published 2006-10-31 17:57 UTC
rendered paste body
__text:001A3FD7 _tsc_init       proc near               ; CODE XREF: __text:00197F18p
__text:001A3FD7
__text:001A3FD7 var_98          = dword ptr -98h
__text:001A3FD7 var_94          = dword ptr -94h
__text:001A3FD7 var_90          = dword ptr -90h
__text:001A3FD7 var_8C          = dword ptr -8Ch
__text:001A3FD7 var_88          = dword ptr -88h
__text:001A3FD7 var_84          = dword ptr -84h
__text:001A3FD7 var_80          = dword ptr -80h
__text:001A3FD7 var_7C          = dword ptr -7Ch
__text:001A3FD7 var_78          = dword ptr -78h
__text:001A3FD7 var_60          = dword ptr -60h
__text:001A3FD7 var_5C          = dword ptr -5Ch
__text:001A3FD7 var_50          = dword ptr -50h
__text:001A3FD7 var_4C          = dword ptr -4Ch
__text:001A3FD7 var_48          = dword ptr -48h
__text:001A3FD7 var_44          = dword ptr -44h
__text:001A3FD7 var_40          = dword ptr -40h
__text:001A3FD7 var_3C          = dword ptr -3Ch
__text:001A3FD7 var_2C          = dword ptr -2Ch
__text:001A3FD7 var_28          = dword ptr -28h
__text:001A3FD7 var_24          = dword ptr -24h
__text:001A3FD7 var_20          = dword ptr -20h
__text:001A3FD7 var_1C          = dword ptr -1Ch
__text:001A3FD7
__text:001A3FD7                 push    ebp
__text:001A3FD8                 mov     ebp, esp
__text:001A3FDA                 push    edi
__text:001A3FDB                 push    esi
__text:001A3FDC                 push    ebx
__text:001A3FDD                 sub     esp, 8Ch
__text:001A3FE3                 lea     ebx, [ebp+var_1C]
__text:001A3FE6                 mov     [esp+98h+var_94], ebx
__text:001A3FEA                 mov     [esp+98h+var_98], offset aG ; "-g"
__text:001A3FF1                 call    _PE_parse_boot_arg
__text:001A3FF6                 test    eax, eax
__text:001A3FF8                 jz      short loc_1A4014
__text:001A3FFA                 xor     eax, eax
__text:001A3FFC                 mov     edx, 0Ah
__text:001A4001                 mov     ebx, 0F31DC461h
__text:001A4006                 mov     esi, 2Ah
__text:001A400B                 mov     [ebp+var_40], 64h
__text:001A4012                 jmp     short loc_1A408E
__text:001A4014 ; ---------------------------------------------------------------------------
__text:001A4014
__text:001A4014 loc_1A4014:                             ; CODE XREF: _tsc_init+21j
__text:001A4014                 mov     [esp+98h+var_94], ebx
__text:001A4018                 mov     [esp+98h+var_98], offset aY ; "-y"
__text:001A401F                 call    _PE_parse_boot_arg
__text:001A4024                 test    eax, eax
__text:001A4026                 jz      short loc_1A4045
__text:001A4028                 mov     eax, 84CFE133h
__text:001A402D                 mov     edx, 7
__text:001A4032                 mov     ebx, 4B013556h
__text:001A4037                 mov     esi, 20h
__text:001A403C                 mov     [ebp+var_40], 85h
__text:001A4043                 jmp     short loc_1A408E
__text:001A4045 ; ---------------------------------------------------------------------------
__text:001A4045
__text:001A4045 loc_1A4045:                             ; CODE XREF: _tsc_init+4Fj
__text:001A4045                 mov     [esp+98h+var_94], ebx
__text:001A4049                 mov     [esp+98h+var_98], offset aZ ; "-z"
__text:001A4050                 call    _PE_parse_boot_arg
__text:001A4055                 test    eax, eax
__text:001A4057                 jz      short loc_1A4076
__text:001A4059                 mov     eax, 62B2E43h
__text:001A405E                 mov     edx, 6
__text:001A4063                 mov     ebx, 0DF9063CBh
__text:001A4068                 mov     esi, 19h
__text:001A406D                 mov     [ebp+var_40], 0A6h
__text:001A4074                 jmp     short loc_1A408E
__text:001A4076 ; ---------------------------------------------------------------------------
__text:001A4076
__text:001A4076 loc_1A4076:                             ; CODE XREF: _tsc_init+80j
__text:001A4076                 xor     eax, eax
__text:001A4078                 mov     edx, 5
__text:001A407D                 mov     ebx, 798EE230h
__text:001A4082                 mov     esi, 15h
__text:001A4087                 mov     [ebp+var_40], 0C8h
__text:001A408E
__text:001A408E loc_1A408E:                             ; CODE XREF: _tsc_init+3Bj
__text:001A408E                                         ; _tsc_init+6Cj ...
__text:001A408E                 mov     [ebp+var_3C], 0
__text:001A4095                 mov     ds:_busFCvtt2n, eax
__text:001A409A                 mov     ds:dword_43936C, edx
__text:001A40A0                 mov     [esp+98h+var_90], eax
__text:001A40A4                 mov     [esp+98h+var_8C], edx
__text:001A40A8                 mov     [esp+98h+var_98], 0FFFFFFFFh
__text:001A40AF                 mov     [esp+98h+var_94], 0FFFFFFFFh
__text:001A40B7                 call    sub_3C72CD
__text:001A40BC                 mov     ds:_busFCvtn2t, eax
__text:001A40C1                 mov     ds:dword_439364, edx
__text:001A40C7                 mov     [esp+98h+var_90], ebx
__text:001A40CB                 mov     [esp+98h+var_8C], esi
__text:001A40CF                 mov     [esp+98h+var_98], 0A4C68000h
__text:001A40D6                 mov     [esp+98h+var_94], 38D7Eh
__text:001A40DE                 call    _tmrCvt
__text:001A40E3                 mov     ecx, ds:_busFCvtn2t
__text:001A40E9                 mov     ebx, ds:dword_439364
__text:001A40EF                 mov     esi, ds:_busFCvtt2n
__text:001A40F5                 mov     edi, ds:dword_43936C
__text:001A40FB                 mov     [esp+98h+var_78], eax
__text:001A40FF                 mov     eax, edx
__text:001A4101                 xor     edx, edx
__text:001A4103                 mov     [esp+98h+var_7C], eax
__text:001A4107                 mov     [esp+98h+var_80], ecx
__text:001A410B                 mov     ecx, ebx
__text:001A410D                 mov     [esp+98h+var_84], ecx
__text:001A4111                 mov     [esp+98h+var_88], esi
__text:001A4115                 mov     esi, edi
__text:001A4117                 mov     [esp+98h+var_8C], esi
__text:001A411B                 mov     [esp+98h+var_90], 0
__text:001A4123                 mov     eax, [ebp+var_40]
__text:001A4126                 mov     [esp+98h+var_94], eax
__text:001A412A                 mov     [esp+98h+var_98], offset aBusFrequency6d ; " BUS: Frequency = %6d.%04dMHz, cvtt2n ="...
__text:001A4131                 call    _kprintf
__text:001A4136                 mov     eax, 1
__text:001A413B                 cpuid
__text:001A413D                 mov     [ebp+var_2C], eax
__text:001A4140                 mov     [ebp+var_28], ebx
__text:001A4143                 mov     [ebp+var_24], ecx
__text:001A4146                 mov     [ebp+var_20], edx
__text:001A4149                 mov     ecx, 198h
__text:001A414E                 rdmsr
__text:001A4150                 mov     eax, edx
__text:001A4152                 shr     eax, 8
__text:001A4155                 and     eax, 1Fh
__text:001A4158                 mov     [ebp+var_48], eax
__text:001A415B                 mov     [ebp+var_44], 0
__text:001A4162                 mov     eax, [ebp+var_48]
__text:001A4165                 mov     edx, [ebp+var_44]
__text:001A4168                 mov     ds:_tscGranularity, eax
__text:001A416D                 mov     ds:dword_439344, edx
__text:001A4173                 mov     [esp+98h+var_90], eax
__text:001A4177                 mov     [esp+98h+var_8C], edx
__text:001A417B                 mov     eax, ds:_busFCvtt2n
__text:001A4180                 mov     edx, ds:dword_43936C
__text:001A4186                 mov     [esp+98h+var_98], eax
__text:001A4189                 mov     [esp+98h+var_94], edx
__text:001A418D                 call    sub_3C72CD
__text:001A4192                 mov     ebx, eax
__text:001A4194                 mov     esi, edx
__text:001A4196                 mov     ds:_tscFCvtt2n, eax
__text:001A419B                 mov     ds:dword_439354, edx
__text:001A41A1                 mov     [esp+98h+var_90], eax
__text:001A41A5                 mov     [esp+98h+var_8C], edx
__text:001A41A9                 mov     [esp+98h+var_98], 0
__text:001A41B0                 mov     [esp+98h+var_94], 3B9ACA00h
__text:001A41B8                 call    sub_3C72CD
__text:001A41BD                 mov     [ebp+var_50], eax
__text:001A41C0                 mov     [ebp+var_4C], edx
__text:001A41C3                 mov     ds:_tscFreq, eax
__text:001A41C8                 mov     ds:dword_43935C, edx
__text:001A41CE                 mov     [esp+98h+var_90], ebx
__text:001A41D2                 mov     [esp+98h+var_8C], esi
__text:001A41D6                 mov     [esp+98h+var_98], 0FFFFFFFFh
__text:001A41DD                 mov     [esp+98h+var_94], 0FFFFFFFFh
__text:001A41E5                 call    sub_3C72CD
__text:001A41EA                 mov     [ebp+var_60], eax
__text:001A41ED                 mov     [ebp+var_5C], edx
__text:001A41F0                 mov     ds:_tscFCvtn2t, eax
__text:001A41F5                 mov     ds:dword_43934C, edx
__text:001A41FB                 mov     eax, [ebp+var_48]
__text:001A41FE                 mov     edx, [ebp+var_44]
__text:001A4201                 mov     [esp+98h+var_7C], eax
__text:001A4205                 mov     [esp+98h+var_78], edx
__text:001A4209                 mov     edx, [ebp+var_60]
__text:001A420C                 mov     [esp+98h+var_80], edx
__text:001A4210                 mov     edx, [ebp+var_5C]
__text:001A4213                 mov     eax, edx
__text:001A4215                 mov     [esp+98h+var_84], eax
__text:001A4219                 mov     [esp+98h+var_88], ebx
__text:001A421D                 mov     ebx, esi
__text:001A421F                 mov     [esp+98h+var_8C], ebx
__text:001A4223                 mov     esi, [esp+98h+var_8C]
__text:001A4227                 mov     [esp+98h+var_90], 0F4240h
__text:001A422F                 mov     [esp+98h+var_8C], 0
__text:001A4237                 mov     eax, [ebp+var_50]
__text:001A423A                 mov     edx, [ebp+var_4C]
__text:001A423D                 mov     [esp+98h+var_98], eax
__text:001A4240                 mov     [esp+98h+var_94], edx
__text:001A4244                 call    sub_3C742E
__text:001A4249                 mov     [esp+98h+var_8C], esi
__text:001A424D                 mov     [esp+98h+var_90], eax
__text:001A4251                 mov     ebx, [esp+98h+var_90]
__text:001A4255                 mov     esi, [esp+98h+var_8C]
__text:001A4259                 mov     [esp+98h+var_90], 0F4240h
__text:001A4261                 mov     [esp+98h+var_8C], 0
__text:001A4269                 mov     eax, [ebp+var_50]
__text:001A426C                 mov     edx, [ebp+var_4C]
__text:001A426F                 mov     [esp+98h+var_98], eax
__text:001A4272                 mov     [esp+98h+var_94], edx
__text:001A4276                 call    sub_3C72CD
__text:001A427B                 mov     [esp+98h+var_90], ebx
__text:001A427F                 mov     [esp+98h+var_8C], esi
__text:001A4283                 mov     [esp+98h+var_94], eax
__text:001A4287                 mov     [esp+98h+var_98], offset aTscFrequency6d ; " TSC: Frequency = %6d.%04dMHz, cvtt2n ="...
__text:001A428E                 call    _kprintf
__text:001A4293                 mov     eax, ds:_tscFCvtn2t
__text:001A4298                 mov     edx, ds:dword_43934C
__text:001A429E                 mov     [esp+98h+var_90], eax
__text:001A42A2                 mov     [esp+98h+var_8C], edx
__text:001A42A6                 mov     eax, ds:_busFCvtt2n
__text:001A42AB                 mov     edx, ds:dword_43936C
__text:001A42B1                 mov     [esp+98h+var_98], eax
__text:001A42B4                 mov     [esp+98h+var_94], edx
__text:001A42B8                 call    _tmrCvt
__text:001A42BD                 mov     ds:_bus2tsc, eax
__text:001A42C2                 mov     ds:dword_43933C, edx
__text:001A42C8                 add     esp, 8Ch
__text:001A42CE                 pop     ebx
__text:001A42CF                 pop     esi
__text:001A42D0                 pop     edi
__text:001A42D1                 pop     ebp
__text:001A42D2                 retn
__text:001A42D2 _tsc_init       endp