首页
社区
课程
招聘
[原创]源码 从纯真IP数据库中提取IP地址段
发表于: 2009-10-5 01:04 7702

[原创]源码 从纯真IP数据库中提取IP地址段

2009-10-5 01:04
7702

因为自己要用,所以就有了以下代码,没做优化大家就将就着看吧!


把纯真IP数据库中的IP地址复制到文件中(注意要点右键全选复制)



                .586


                .model flat, stdcall


                option casemap :none


;----------------------------------------------------------------               


include                windows.inc


include                user32.inc


includelib        user32.lib


include                kernel32.inc


includelib        kernel32.lib


include                comdlg32.inc


includelib        comdlg32.lib


include                wsock32.inc


includelib        wsock32.lib



ICO_MAIN        equ        1000


DLG_MAIN        equ        100


       


                .data


               


hInstance                dd                ?       


szSeaveFile                db                'Ipaddr.log',0


szFileName                db                MAX_PATH                dup (?)


@stOF                                        OPENFILENAME       


hFile                        dd                ?


@hFile                        dd                ?


@dwFileSize                dd                ?


@hMapFile                dd                ?


@lpFileMemory        dd                ?


@lpMemory                dd                ?


NumberIp2                dd                ?


lpSize                        dd                ?


Number2                        dd                ?


lpNumber                dd                ?                                        ;写文件时返回的实际写入值


szBuffer                db                51200        dup (?)         ;50KB


szIp2                        db                16                dup (?)


szIp3                        db                16                dup        (?)


szError01                db                "创建线程失败",0



                .code


_Thread                proc        uses        ebx esi edi lParam


               


                                        pushad


                                        invoke         RtlZeroMemory,addr @stOF,sizeof @stOF


                                        mov         @stOF.lStructSize,sizeof @stOF


                                        mov         @stOF.lpstrFile,offset szFileName


                                        mov         @stOF.nMaxFile,MAX_PATH


                                        mov         @stOF.Flags,OFN_EXPLORER+OFN_FILEMUSTEXIST+OFN_PATHMUSTEXIST


                                        invoke        GetOpenFileName,addr @stOF


;----------------------------------------------------------------------------------------------------------------------                               


                                        invoke        CreateFile,addr szFileName,GENERIC_READ,FILE_SHARE_READ or \


                                                        FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,\


                                                        NULL                                                ;打开文件


                                        mov                @hFile,eax


                                        invoke        GetFileSize,eax,NULL                ;获取文件大小


                                        mov                @dwFileSize,eax


                                        invoke        CreateFileMapping,@hFile,NULL,PAGE_READONLY,0,0,NULL


                                        mov                @hMapFile,eax


                                        invoke        MapViewOfFile,eax,FILE_MAP_READ,0,0,0


                                        mov                @lpFileMemory,eax                        ;内存文件视图


                                        mov                eax,@dwFileSize


                                        invoke        GlobalAlloc,GPTR,eax


                                        mov                @lpMemory,eax


;--------------------------------------------------------------------------------------------------------------------------------------


                                        ;处理数据


                                        mov                edi,eax


                                        mov                esi,@lpFileMemory


                                        @04:


                                        cmp                byte ptr [esi],0dh


                                        jz                _Quit


                                        mov                al,byte ptr [esi]


                                        cmp                al,20h


                                        jz                @01


                                        mov                byte ptr [edi],al


                                        inc                esi


                                        inc                edi


                                        jmp                @04


                                        @01:


                                        mov                byte ptr [edi],0


                                        inc                edi


                                        @03:


                                        inc                esi


                                        @05:


                                        cmp                byte ptr [esi],20h


                                        jz                @03


                                        mov                al,byte ptr [esi]


                                        mov                byte ptr [edi],al


                                        inc                esi


                                        inc                edi


                                        cmp                byte ptr [esi],20h


                                        jz                @06


                                        jmp                @05


                                        @06:


                                        mov                word ptr [edi],0


                                        add                edi,2


                                        @07:


                                        inc                esi


                                        cmp                byte ptr [esi],0ah


                                        jnz                @07


                                        inc                esi


                                        jmp                @04



[注意]看雪招聘,专注安全领域的专业人才平台!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (3)
雪    币: 225
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
原来见过c版的!!!!
2009-10-5 13:26
0
雪    币: 212
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
因为自己要用???LZ要写什么呢!~~~
2009-10-5 13:54
0
雪    币: 1233
活跃值: (907)
能力值: ( LV12,RANK:750 )
在线值:
发帖
回帖
粉丝
4
发过vb版本的
2009-10-6 23:01
0
游客
登录 | 注册 方可回帖
返回