亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? http.asm

?? http.rar
?? ASM
?? 第 1 頁 / 共 5 頁
字號:
                                invoke EnableControls
                        .endif                                       
                        .break
                .else
                        mov cl,byte ptr [esi]
                        mov byte ptr [edi],cl
                        inc edi
                        inc esi
                        inc HeaderIndex
                        dec eax                                                        
                .endif                                        
        .endw
        ret
ParseAllHeaders ENDP
ManageInitialization PROC
        invoke SetTimer,hwnd,1,2000,NULL
        mov TimerID,eax
        push 0
        push 0
        push offset SpeedTemplate
        push offset CommandString
        call wsprintfA
        add esp,16
        invoke GetTickCount
        mov OriginalTickCount,eax
        invoke SendMessage,hwndStatus,SB_SETTEXT,1,addr CommandString
        ret
ManageInitialization ENDP
CreateNewFile PROC
        invoke CreateFile,addr FileName,GENERIC_WRITE,FILE_SHARE_READ,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_ARCHIVE,NULL
        .if eax!=INVALID_HANDLE_VALUE
                mov FileHandle,eax
                invoke ManageInitialization
                invoke WriteInitialData
        .else
                invoke MessageBox,hwnd,addr CreateError,addr AppName,MB_OK+MB_ICONERROR
                invoke CloseSock
                invoke EnableControls
        .endif
        ret
CreateNewFile ENDP
CreateOutputFile PROC
        .if Resuming==FALSE
                mov WaitingForName,1    ; We don't want to read data from the socket until the output file is created
                mov Redirection,0               ; If we are here, it means the status code is not "3" so if there were redirection before, we are now at the final location of the file
                invoke GetFileName,addr URLString       ; Get the file name from the url 
                invoke lstrlen,addr FileName
                .if eax==0      ; If there is no file name in the url, assume it is "index.html"
                        invoke lstrcpy,addr FileName,addr DefaultName
                .endif
                mov ofn.lStructSize,SIZEOF ofn
                push hwnd
                pop  ofn.hWndOwner
                push hInstance
                pop  ofn.hInstance
                mov  ofn.lpstrFilter, OFFSET FilterString
                mov  ofn.lpstrFile, OFFSET FileName
                mov  ofn.nMaxFile,sizeof FileName
                mov ofn.Flags,OFN_LONGNAMES or\
                        OFN_EXPLORER or OFN_HIDEREADONLY
                invoke GetSaveFileName, ADDR ofn
                .if eax==TRUE
                        mov CurrentDataSize,0   ; The number of bytes downloaded so far
                        invoke CreateFile,addr FileName,GENERIC_WRITE,FILE_SHARE_READ,NULL,CREATE_NEW,FILE_ATTRIBUTE_ARCHIVE,NULL
                        .if eax!=INVALID_HANDLE_VALUE
                                mov FileHandle,eax
                                invoke ManageInitialization
                                invoke WriteInitialData
                        .else
                                .if CanResume==TRUE
                                        push offset FileName
                                        push offset FilePrompt
                                        push offset CommandString
                                        call wsprintfA
                                        add esp,12
                                        invoke MessageBox,hwnd,addr CommandString,addr AppName,MB_YESNOCANCEL+MB_ICONINFORMATION
                                        .if eax==IDCANCEL       ; Cancel download
                                                invoke CloseSock
                                                invoke EnableControls
                                        .elseif eax==IDNO         ; Create new file
                                                invoke CreateNewFile
                                        .else
                                                invoke CreateFile,addr FileName,GENERIC_WRITE,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_ARCHIVE,NULL
                                                .if eax!=INVALID_HANDLE_VALUE
                                                        mov FileHandle,eax                                                        
                                                        invoke SetFilePointer,eax,0,0,FILE_END
                                                        mov CurrentDataSize,eax
                                                        mov WaitingForName,0
                                                        invoke ManageInitialization
                                                        invoke ShowProgress,hwnd
                                                        invoke CloseTheSock
                                                .else
                                                        invoke MessageBox,hwnd,addr OpenError,addr AppName,MB_OK
                                                        invoke CloseSock
                                                        invoke EnableControls
                                                .endif
                                        .endif
                                .else
                                        push offset FileName
                                        push offset OverwritePrompt
                                        push offset CommandString
                                        call wsprintfA
                                        add esp,12
                                        invoke MessageBox,hwnd,addr CommandString,addr AppName,MB_YESNO+MB_ICONINFORMATION
                                        .if eax==IDYES
                                                invoke CreateNewFile
                                        .else
                                                invoke CloseSock
                                                invoke EnableControls
                                        .endif
                                .endif
                        .endif
                .else
                        invoke CloseSock
                        invoke EnableControls
                .endif
                mov WaitingForName,0     ; The waiting is over. We created the output file
        .else
                invoke WriteInitialData
        .endif
        ret
CreateOutputFile ENDP
CloseTheSock PROC
        .if ContentLength!=0
                mov eax,CurrentDataSize
                .if ((eax!=ContentLength) && CanResume==TRUE) && WaitingForName==0
                        .if sock!=0
                                invoke closesocket,sock
                                mov sock,0
                        .endif                
                        mov Resuming,TRUE
                        mov eax,CurrentDataSize
                        mov StartingOffset,eax
                        invoke ClearMessages,hwnd,WM_SOCKET
                        invoke ConnectSocket
                .else
                        invoke ActualClose
                .endif
        .else
                invoke ActualClose
        .endif
        ret
CloseTheSock ENDP
ActualClose PROC
        .if WaitingForName==1   ; If we're waiting for the output filename, don't close the socket from our side yet.
                mov CloseConnection,1     ; just set a flag to indicate that the opposite end had disconnected.
        .else
                invoke CloseSock
                invoke EnableControls
                .if Redirection==0       ; If redirection is in progress, close the socket but don't display the message
                        invoke MessageBox,NULL, addr CloseString,addr AppName,MB_OK
                .endif                                        
        .endif
        ret
ActualClose ENDP
ClearMessages PROC hWnd:DWORD,Message:DWORD
        LOCAL MyMSG:MSG
        mov eax,TRUE
        .while eax==TRUE        ; Since there may be WM_SOCKET messages left in the message queues,
                                ; we must get rid of them before we create new socket.
                invoke PeekMessage,addr MyMSG,hWnd,Message,Message,PM_REMOVE
        .endw
       ret
ClearMessages ENDP
WriteInitialData PROC
        mov eax,FirstDataOffset       ;Find the size of the actual data remaining in the buffer
        sub eax,buffer
        mov ecx,sizetoread
        sub ecx,eax
        invoke WriteOutputFile,FirstDataOffset,ecx ; Write the data to output file                          
        .if eax==TRUE
                push eax
                invoke ioctlsocket,sock,FIONREAD,addr sizetoread        ; Check the socket if some data remains
                pop eax
                .if sizetoread!=0          ; If data remains to be read, read it
                        invoke GlobalReAlloc,mHandle,sizetoread,GHND
                        mov mHandle,eax
                        invoke GlobalLock,eax
                        mov buffer,eax
                        invoke recv,sock,buffer,sizetoread,0
                        .if eax==SOCKET_ERROR
                                invoke ShowErrorMessage
                                mov eax,FALSE
                        .else
                                mov sizetoread,eax
                                invoke WriteOutputFile,buffer,eax                                                                                                
                        .endif                                                                                                        
                .endif
                .if eax==TRUE
                        .if CloseConnection==1
                                invoke CloseSock
                                invoke EnableControls
                                invoke MessageBox,NULL, addr CloseString,addr AppName,MB_OK
                        .endif
                .endif
        .endif     
        ret
WriteInitialData ENDP
SendRequest PROC
        push StartingOffset
        push offset HostName
        push offset RelativeURL
        push offset GetTemplate
        push offset CommandString
        call wsprintfA        ; Create the GET or HEAD request
        add esp,20
        invoke lstrlen,addr CommandString
        invoke send,sock,addr CommandString,eax,0       ; Send GET command to the web server
        .if eax==SOCKET_ERROR
                invoke ShowErrorMessage
        .else                 ; if the send is successful, display a message saying so            
                push offset HostName
                push offset WaitingForReply
                push offset CommandString
                call wsprintfA
                add esp,12
                invoke SetStatusText,addr CommandString,NULL
                mov HeaderIndex,0     ; We will use this variable as index into the httpheader buffer
                mov HeaderParsed,FALSE  ; A flag to indicate if the HTTP header is received and parsed
                mov WaitingForName,0    ; A flag to indicate if the SaveAs common dialog box is active
                mov CloseConnection,0   ; A flag to indicate if the connection was closed
                mov Redirection,0       ; A flag to indicate if indirection of url is in progress
                mov StatusValue,0       ; No status code read in yet
                invoke RtlFillMemory,addr MultipartHeader,512,0
                mov MultipartIndex,0
                mov MultipartHeaderParsed,FALSE
                mov CanResume,FALSE
                mov MultipartPresent,FALSE
                mov ActualDataRead,0
        .endif
        ret
SendRequest ENDP
ShowDownloadSpeed PROC        
        .if HeaderParsed==TRUE
                invoke GetTickCount
                mov ecx,OriginalTickCount
                sub eax,ecx
                xor edx,edx
                mov ecx,1000
                div ecx
                push eax
                mov eax,ActualDataRead
                xor edx,edx
                mov ecx,1024
                div ecx
                xor edx,edx
                pop ecx
                div ecx
                push eax
                mov eax,edx
                xor edx,edx
                mov ecx,100
                mul ecx
                mov ecx,1024
                div ecx
                mov edx,eax
                pop eax                
                push edx
                push eax
                push offset SpeedTemplate
                push offset CommandString
                call wsprintfA
                add esp,16
                invoke SendMessage,hwndStatus,SB_SETTEXT,1,addr CommandString
        .endif
        ret
ShowDownloadSpeed ENDP
ReconnectIfPossible PROC
        .if eax==WSAECONNREFUSED || eax==WSAENETUNREACH || eax==WSAETIMEDOUT
                invoke ConnectSocket
        .else
                invoke ShowSocketError
        .endif
        ret
ReconnectIfPossible ENDP
end start

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品日韩在线一区| 日韩激情一二三区| 亚洲国产精品精华液网站| 视频一区视频二区中文| 欧美一级黄色大片| 亚洲日本乱码在线观看| 豆国产96在线|亚洲| 亚洲女人小视频在线观看| 秋霞电影一区二区| 国产欧美精品一区二区色综合朱莉 | 欧美日韩一区高清| 日韩精品中午字幕| 99久久er热在这里只有精品66| 国产精品国产馆在线真实露脸| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 丁香婷婷深情五月亚洲| 亚洲综合一区二区| 久久影院午夜片一区| 亚洲午夜久久久久久久久电影网 | 香蕉成人啪国产精品视频综合网| 欧美xxxxxxxxx| 色婷婷av一区| 国产乱子轮精品视频| 成人av手机在线观看| 制服视频三区第一页精品| 成人av资源在线| 午夜亚洲国产au精品一区二区| 在线一区二区视频| 国模一区二区三区白浆| 五月天一区二区三区| 国产精品国产自产拍高清av| 欧美色综合网站| 黑人巨大精品欧美一区| 亚洲免费观看在线观看| 久久久久久久综合日本| 欧美精品1区2区3区| 亚洲午夜av在线| 中文字幕在线一区| 久久综合色播五月| 91精品久久久久久久91蜜桃| 在线观看亚洲精品视频| 成人av在线影院| 国产麻豆精品久久一二三| 男女激情视频一区| 首页亚洲欧美制服丝腿| 亚洲精品成人精品456| 国产欧美一区二区精品仙草咪 | 在线精品视频小说1| 国产真实乱偷精品视频免| 丝袜亚洲另类欧美| 亚洲成人激情综合网| 亚洲欧美区自拍先锋| 精品国产一区二区三区久久久蜜月 | 欧美精品一区二区高清在线观看| 欧美日本一区二区在线观看| 日本高清成人免费播放| 97se亚洲国产综合自在线观| av一本久道久久综合久久鬼色| 国产一区二区三区精品欧美日韩一区二区三区 | 一区二区三区欧美亚洲| 亚洲桃色在线一区| 亚洲日本va午夜在线电影| 欧美高清在线一区| 欧美激情中文字幕| 日韩欧美电影一区| 日韩精品自拍偷拍| 欧美一级黄色片| 精品成人在线观看| 欧美精品一区二区三区蜜桃| 久久久久成人黄色影片| 国产三级一区二区三区| 日韩精品一区二区三区中文精品| 欧美一区二区三区系列电影| 欧美一区二区黄色| 日韩免费成人网| 国产亚洲欧美色| 国产精品萝li| 亚洲男人天堂av网| 亚洲综合男人的天堂| 亚洲成av人片| 免费国产亚洲视频| 国产乱码一区二区三区| 成人少妇影院yyyy| 一本色道亚洲精品aⅴ| 欧美日本在线看| 久久欧美中文字幕| 国产精品久久午夜夜伦鲁鲁| 亚洲免费av高清| 天天操天天色综合| 国产在线精品一区二区夜色| 成人性生交大片免费| 91蜜桃在线观看| 欧美视频一二三区| 欧美成人vps| 国产精品美女久久久久av爽李琼| 亚洲欧美视频在线观看| 亚洲电影欧美电影有声小说| 老鸭窝一区二区久久精品| 国产69精品久久久久777| 色综合久久久久综合体| 制服丝袜亚洲精品中文字幕| 久久精品人人爽人人爽| 亚洲日本在线a| 美女尤物国产一区| 成人av电影免费在线播放| 欧美日韩一二三区| 精品处破学生在线二十三| 亚洲乱码国产乱码精品精98午夜 | 一区二区三区在线观看视频| 蜜臀99久久精品久久久久久软件| 丁香五精品蜜臀久久久久99网站 | 久久99精品久久只有精品| 不卡区在线中文字幕| 在线成人免费观看| 国产精品嫩草影院av蜜臀| 日韩国产欧美在线视频| 99这里都是精品| 91.com视频| 久久久精品国产免大香伊| 亚洲欧美另类在线| 美腿丝袜亚洲色图| 色8久久精品久久久久久蜜| 久久久久久麻豆| 免费在线观看日韩欧美| 一本色道综合亚洲| 久久久国产午夜精品| 婷婷丁香久久五月婷婷| voyeur盗摄精品| 精品99一区二区三区| 亚洲第一电影网| 99在线视频精品| 国产亚洲精品7777| 强制捆绑调教一区二区| 日本韩国一区二区三区视频| 中文字幕久久午夜不卡| 久久国产人妖系列| 欧美调教femdomvk| 亚洲精品日韩专区silk| 国产欧美一区二区精品仙草咪| 奇米影视一区二区三区| 91精品午夜视频| 亚洲精品国产高清久久伦理二区| 欧美国产一区视频在线观看| 蓝色福利精品导航| 中文字幕一区二区视频| 亚洲欧美在线视频观看| 国产最新精品免费| 日韩欧美国产一区二区在线播放 | 一区二区激情视频| 波多野结衣在线一区| 国产欧美一区二区在线| 国产伦精品一区二区三区免费| 精品美女被调教视频大全网站| 日韩和欧美一区二区| 欧美高清你懂得| 日韩精品欧美精品| 欧美精品粉嫩高潮一区二区| 五月天亚洲精品| 在线不卡的av| 国产精品麻豆久久久| 不卡免费追剧大全电视剧网站| 中文字幕欧美三区| 不卡的av在线| 中文字幕在线观看一区二区| 99精品国产热久久91蜜凸| 国产精品传媒在线| 99久久99久久精品免费看蜜桃| 亚洲视频网在线直播| 91福利视频网站| 亚洲尤物在线视频观看| 欧美三级乱人伦电影| 亚洲超碰精品一区二区| 欧美一级在线视频| 精品一区二区三区视频在线观看| 2024国产精品| www.日韩大片| 国产精品久久久一区麻豆最新章节| 成人美女视频在线观看18| 亚洲欧美另类在线| 欧美日本在线观看| 国产一区二区在线影院| 国产精品丝袜黑色高跟| 色综合久久六月婷婷中文字幕| 亚洲国产精品久久艾草纯爱 | 国产亚洲欧美在线| 91麻豆自制传媒国产之光| 亚洲成人中文在线| 欧美日韩情趣电影| 久久精品99国产国产精| 精品欧美一区二区在线观看| 国产99久久久国产精品潘金网站| 久久久精品人体av艺术| 97精品久久久久中文字幕| 偷拍一区二区三区四区| 欧美日韩成人一区二区| 久久国产日韩欧美精品| 亚洲欧美激情小说另类| 91精品在线观看入口| 懂色av中文字幕一区二区三区| 亚洲黄色尤物视频|