iczelion tut35[6]

[入库:2005年8月19日] [更新:2007年3月24日]

本文简介:选择自 jimgreen 的 blog

pop [esi].nextlink mov dword ptr [eax],esi .endif pop esi .endif ret parsebuffer endp fillhiliteinfo proc uses edi local buffer[1024]:byte local ptemp:dword local blocksize:dword invoke rtlzeromemory,addr asmsyntaxarray,sizeof asmsyntaxarray invoke getmodulefilename,hinstance,addr buffer,sizeof buffer invoke lstrlen,addr buffer mov ecx,eax dec ecx lea edi,buffer add edi,ecx std mov al,"\" repne scasb cld inc edi mov byte ptr [edi],0 invoke lstrcat,addr buffer,addr wordfilename invoke getfileattributes,addr buffer .if eax!=-1 mov blocksize,1024*10 invoke heapalloc,hmainheap,0,blocksize mov ptemp,eax @@: invoke getprivateprofilestring,addr asmsection,addr c1key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c2key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,4 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c3key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,8 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c4key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,12 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c5key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,16 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c6key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,20 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c7key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,24 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c8key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,28 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c9key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,32 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif @@: invoke getprivateprofilestring,addr asmsection,addr c10key,addr zerostring,ptemp,blocksize,addr buffer .if eax!=0 inc eax .if eax==blocksize ; the buffer is too small add blocksize,1024*10 invoke heaprealloc,hmainheap,0,ptemp,blocksize mov ptemp,eax jmp @b .endif mov edx,offset asmcolorarray add edx,36 invoke parsebuffer,hmainheap,ptemp,eax,edx,addr asmsyntaxarray .endif invoke hea

本文关键:iczelion asm
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top