Rev 4213 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4213 | Rev 4290 | ||
---|---|---|---|
Line 41... | Line 41... | ||
41 | ;----------------------------------------------------- |
41 | ;----------------------------------------------------- |
42 | ; lpStr - 㪠§ ⥫ì áâபã ASCIIZ |
42 | ; lpStr - 㪠§ ⥫ì áâபã ASCIIZ |
43 | ; ¢ë室¥: EAX - ¤«¨ áâப¨ ¡¥§ ãç¥â § ¢¥àè î饣® |
43 | ; ¢ë室¥: EAX - ¤«¨ áâப¨ ¡¥§ ãç¥â § ¢¥àè î饣® |
44 | ; ã«¥¢®£® ¡ ©â |
44 | ; ã«¥¢®£® ¡ ©â |
45 | ;----------------------------------------------------- |
45 | ;----------------------------------------------------- |
46 | proc _lstrlen lpStr:DWORD |
46 | ;proc _lstrlen lpStr:DWORD |
47 | push edi ecx |
47 | ; push edi ecx |
- | 48 | ; |
|
- | 49 | ; cld |
|
- | 50 | ; mov edi,[lpStr] |
|
- | 51 | ; xor ecx,ecx |
|
- | 52 | ; dec ecx |
|
- | 53 | ; xor eax,eax |
|
- | 54 | ; repne scasb |
|
- | 55 | ; not ecx |
|
- | 56 | ; dec ecx |
|
- | 57 | ; mov eax,ecx |
|
- | 58 | ; |
|
- | 59 | ; pop ecx edi |
|
- | 60 | ; ret |
|
- | 61 | ;endp |
|
Line -... | Line 62... | ||
- | 62 | ||
- | 63 | ;----------------------------------------------------- |
|
- | 64 | ; ãªæ¨ï ¯®«ãç¥¨ï ¤«¨ë áâப¨ |
|
48 | 65 | ;----------------------------------------------------- |
|
- | 66 | ; lpStr - 㪠§ ⥫ì áâபã ASCIIZ |
|
49 | cld |
67 | ; ¢ë室¥: EAX - ¤«¨ áâப¨ ¡¥§ ãç¥â § ¢¥àè î饣® |
- | 68 | ; ã«¥¢®£® ¡ ©â |
|
50 | mov edi,[lpStr] |
69 | ;----------------------------------------------------- |
- | 70 | proc _lstrlen lpStr:DWORD |
|
51 | xor ecx,ecx |
71 | push ebx |
52 | dec ecx |
72 | mov ebx,[lpStr] |
53 | xor eax,eax |
73 | xor eax,eax |
54 | repne scasb |
74 | @@: cmp byte[ebx+eax],0 |
55 | not ecx |
75 | je @f |
56 | dec ecx |
- | |
57 | mov eax,ecx |
76 | inc eax |
58 | 77 | jmp @b |
|
59 | pop ecx edi |
78 | @@: pop ebx |
60 | ret |
79 | ret |
Line 61... | Line 80... | ||
61 | endp |
80 | endp |
62 | 81 |