Name 1212
Company 1212
Code 9274-872EA9A7
http://www.driverdevelop.com/dlit.php?id=6
osrLicense.dll
100016F0 public ValidateSerialNum
100016F0 ValidateSerialNum proc near
100016F0
100016F0 var_10C = byte ptr -10Ch
100016F0 var_CC = byte ptr -0CCh
100016F0 var_8C = byte ptr -8Ch
100016F0 arg_0 = dword ptr 4
100016F0 arg_4 = dword ptr 8
100016F0 arg_8 = dword ptr 0Ch
100016F0
100016F0 sub
esp, 10Ch
100016F6 push
esi
100016F7 mov
esi, [esp+110h+arg_0]
100016FE push
edi
100016FF push
esi
10001700 call
GetOSRVersion
10001705 add
esp, 4
10001708 cmp
eax, 2
1000170B jz
short loc_10001746
1000170D mov
edi, esi
1000170F or
ecx, 0FFFFFFFFh
10001712 xor
eax, eax
10001714 repne scasb
10001716 not
ecx
10001718 dec
ecx
10001719 jnz
short loc_10001729
1000171B pop
edi
1000171C mov
eax, 0FFFFFFFEh
10001721 pop
esi
10001722 add
esp, 10Ch
10001728 retn
10001729
10001729 loc_10001729:
; CODE XREF: ValidateSerialNum+29
10001729 mov
edi, esi
1000172B or
ecx, 0FFFFFFFFh
1000172E xor
eax, eax
10001730 repne scasb
10001732 not
ecx
10001734 dec
ecx
10001735 cmp
ecx, 0Dh
10001738 jz
short loc_10001746
1000173A pop
edi
1000173B or
eax, 0FFFFFFFFh
1000173E pop
esi
1000173F add
esp, 10Ch
10001745 retn
10001746
10001746 loc_10001746:
; CODE XREF: ValidateSerialNum+1B
10001746
; ValidateSerialNum+48
10001746 push
esi
10001747 call
GetOSRProduct
1000174C add
esp, 4
1000174F test
eax, eax
10001751 jnz
short loc_10001761
10001753 pop
edi
10001754 mov
eax, 0FFFFFFFBh
10001759 pop
esi
1000175A add
esp, 10Ch
10001760 retn
10001761
10001761 loc_10001761:
; CODE XREF: ValidateSerialNum+61
10001761 push
esi
10001762 call
GetOSRVersion
10001767 add
esp, 4
1000176A test
eax, eax
1000176C jnz
short loc_1000177C
1000176E pop
edi
1000176F mov
eax, 0FFFFFFFCh
10001774 pop
esi
10001775 add
esp, 10Ch
1000177B retn
1000177C
1000177C loc_1000177C:
; CODE XREF: ValidateSerialNum+7C
1000177C push
esi
1000177D call
GetOSRRelease
10001782 add
esp, 4
10001785 cmp
eax, 64h
10001788 jge
short loc_10001798
1000178A pop
edi
1000178B mov
eax, 0FFFFFFFDh
10001790 pop
esi
10001791 add
esp, 10Ch
10001797 retn
10001798
10001798 loc_10001798:
; CODE XREF: ValidateSerialNum+98
10001798 mov
edi, esi
1000179A or
ecx, 0FFFFFFFFh
1000179D xor
eax, eax
1000179F repne scasb
100017A1 not
ecx
100017A3 dec
ecx
100017A4 test
ecx, ecx
100017A6 jle
short loc_100017BD
100017A8 mov
eax, ecx
100017AA add
esi, 5
100017AD lea
edi, [esp+114h+var_CC]
100017B1 shr
ecx, 2
100017B4 repe movsd
100017B6 mov
ecx, eax
100017B8 and
ecx, 3
100017BB repe movsb
100017BD
100017BD loc_100017BD:
; CODE XREF: ValidateSerialNum+B6
100017BD mov
edi, [esp+114h+arg_4]
100017C4 or
ecx, 0FFFFFFFFh
100017C7 xor
eax, eax
100017C9 lea
edx, [esp+114h+var_8C]
100017D0 repne scasb
100017D2 not
ecx
100017D4 sub
edi, ecx
100017D6 push
ebx
100017D7 mov
eax, ecx
100017D9 mov
esi, edi
100017DB mov
edi, edx
100017DD lea
edx, [esp+118h+var_8C]
100017E4 shr
ecx, 2
100017E7 repe movsd
100017E9 mov
ecx, eax
100017EB xor
eax, eax
100017ED and
ecx, 3
100017F0 push
6B64646Fh
100017F5 repe movsb
100017F7 mov
edi, [esp+11Ch+arg_8]
100017FE or
ecx, 0FFFFFFFFh
10001801 repne scasb
10001803 not
ecx
10001805 sub
edi, ecx
10001807 mov
esi, edi
10001809 mov
ebx, ecx
1000180B mov
edi, edx
1000180D or
ecx, 0FFFFFFFFh
10001810 repne scasb
10001812 mov
ecx, ebx
10001814 dec
edi
10001815 shr
ecx, 2
10001818 repe movsd
1000181A mov
ecx, ebx
1000181C and
ecx, 3
1000181F repe movsb
10001821 lea
edi, [esp+11Ch+var_8C]
10001828 or
ecx, 0FFFFFFFFh
1000182B repne scasb
1000182D not
ecx
1000182F dec
ecx
10001830 lea
eax, [esp+11Ch+var_8C]
10001837 push
ecx
10001838 push
eax
10001839 call
sub_10001340
1000183E push
eax
1000183F lea
ecx, [esp+128h+var_10C]
10001843 push
offset a08x ; "%08X"
10001848 push
ecx
10001849 call
ds:wsprintfA
1000184F add
esp, 18h
10001852 lea
esi, [esp+118h+var_CC]
10001856 lea
eax, [esp+118h+var_10C]
1000185A
1000185A loc_1000185A:
; CODE XREF: ValidateSerialNum+18C
1000185A mov
dl, [eax]
1000185C mov
bl, [esi]
1000185E mov
cl, dl
10001860 cmp
dl, bl
10001862 jnz
short loc_10001893
10001864 test
cl, cl
10001866 jz
short loc_1000187E
10001868 mov
dl, [eax+1]
1000186B mov
bl, [esi+1]
1000186E mov
cl, dl
10001870 cmp
dl, bl
10001872 jnz
short loc_10001893
10001874 add
eax, 2
10001877 add
esi, 2
1000187A test
cl, cl
1000187C jnz
short loc_1000185A
1000187E
1000187E loc_1000187E:
; CODE XREF: ValidateSerialNum+176
1000187E xor
eax, eax
10001880 xor
ecx, ecx
10001882 test
eax, eax
10001884 setz
cl
10001887 pop
ebx
10001888 pop
edi
10001889 mov
eax, ecx
1000188B pop
esi
1000188C add
esp, 10Ch
10001892 retn
10001893
10001893 loc_10001893:
; CODE XREF: ValidateSerialNum+172
10001893
; ValidateSerialNum+182
10001893 sbb
eax, eax
10001895 pop
ebx
10001896 sbb
eax, 0FFFFFFFFh
10001899 xor
ecx, ecx
1000189B test
eax, eax
1000189D setz
cl
100018A0 pop
edi
100018A1 mov
eax, ecx
100018A3 pop
esi
100018A4 add
esp, 10Ch
100018AA retn
100018AA ValidateSerialNum endp
- 标 题:OSR DDK (8千字)
- 作 者:-=1212=-
- 时 间:2001-8-17 17:08:54
- 链 接:http://bbs.pediy.com