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

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

?? http.asm

?? http.rar
?? ASM
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
        mov ecx,eax
        push ecx
        invoke StrLen,StrSub
        pop ecx
        mov ebx,eax
        .if ecx<eax
                mov eax,FALSE
        .elseif ecx==eax
                mov esi,StrMain
                mov edi,StrSub
                repe cmpsb
                je Equal
                mov eax,FALSE
                jmp GetOut
Equal:
                xor eax,eax
GetOut:                
        .else
                sub ecx,eax
                inc ecx
                mov eax,ecx
                xor edx,edx
                push eax                
                .while eax!=0
                        mov edi,StrMain
                        add edi,edx
                        mov esi,StrSub
                        mov ecx,ebx
                        repe cmpsb
                        je Found
                        jmp DontFind
Found:
                        .break        
DontFind:
                        inc edx
                        dec eax
                .endw
                pop ecx
                .if eax!=0
                        sub ecx,eax
                        mov eax,ecx 
                .else
                        mov eax,-1
                .endif
        .endif
        ret
InString ENDP
;=====================================================================
;                               InStringi
;=====================================================================
; Search for a substring in one string. Case insensitive
; Return Value: -1 if substring not found, offset of the first byte
; of the substring if successful
;=========================================================================
InStringi PROC StrMain:DWORD,StrSub:DWORD
        LOCAL hMemory1:DWORD
        LOCAL pMemory1:DWORD
        LOCAL hMemory2:DWORD
        LOCAL pMemory2:DWORD
        invoke StrLen,StrMain
        inc eax
        invoke GlobalAlloc,GHND,eax
        .if eax==NULL
                mov eax,-1
        .else
                mov hMemory1,eax
                invoke GlobalLock,eax
                .if eax==NULL
                        invoke GlobalFree,hMemory1
                        mov eax,-1
                .else
                        mov pMemory1,eax
                        invoke StrLen,StrSub
                        inc eax
                        invoke GlobalAlloc,GHND,eax
                        .if eax==NULL
                                invoke GlobalUnlock,pMemory1
                                invoke GlobalFree,hMemory1
                                mov eax,-1
                        .else
                                mov hMemory2,eax
                                invoke GlobalLock,eax
                                .if eax==NULL
                                        invoke GlobalUnlock,pMemory1
                                        invoke GlobalFree,hMemory1
                                        invoke GlobalFree,hMemory2
                                        mov eax,-1
                                .else
                                        mov pMemory2,eax
                                        invoke StrCpy,pMemory1,StrMain
                                        invoke StrCpy,pMemory2,StrSub
                                        invoke CharLower,pMemory1
                                        invoke CharLower,pMemory2
                                        invoke InString,pMemory1,pMemory2
                                        push eax
                                        invoke GlobalUnlock,pMemory1
                                        invoke GlobalFree,hMemory1
                                        invoke GlobalUnlock,pMemory2
                                        invoke GlobalFree,hMemory2
                                        pop eax
                                .endif
                        .endif
                .endif
        .endif
        ret
InStringi ENDP 
ReadSocket PROC
        .if WaitingForName==0   ; if the SaveAs dialog box is diplayed, we don't want to read the data from the socket 
                                    ; yet because the file is not created yet. So we jump over the read until the file is created
                invoke ioctlsocket,sock,FIONREAD,addr sizetoread  ; Check the number of bytes available to read from the socket
                invoke GlobalAlloc,GHND,sizetoread      ; allocate memory enough for the data to read from the socket
                mov mHandle,eax
                invoke GlobalLock,eax
                mov buffer,eax
                invoke recv,sock,buffer,sizetoread,0    ; Read the data from the socket
                .if eax==SOCKET_ERROR
                        invoke ShowErrorMessage
                .else
                        mov sizetoread,eax              ; Save the actual number of bytes read from the socket
                                                        ; BEWARE! The value returned from ioctlsocket and the actual number of bytes
                                                        ; read in from the socket are not always equal.
                        .if HeaderParsed==FALSE         ; If the HTTP header is not received and parsed, store the data in HTTPHeader
                                invoke ParseAllHeaders
                        .else           ; when the http header is out of the way, what follows is the actual data
                                .if MultipartPresent==FALSE || (MultipartPresent==TRUE && MultipartHeaderParsed==TRUE)
                                        invoke WriteOutputFile,buffer,sizetoread
                                .else
                                        invoke FillMultipartHeader
                                .endif
                        .endif
                        invoke GlobalUnlock,buffer
                        invoke GlobalFree,mHandle
                .endif
        .endif
        ret
ReadSocket ENDP
FillMultipartHeader PROC uses edi
        mov edi,offset MultipartHeader
        add edi,MultipartIndex
        mov eax,FirstDataOffset
        sub eax,buffer
        mov ecx,sizetoread
        sub ecx,eax
        mov eax,FirstDataOffset
        .while ecx>0
                .if byte ptr [eax]==0Ah && byte ptr [eax+2]==0Ah
                        mov dl,byte ptr [eax]
                        mov byte ptr [edi],dl
                        add eax,3
                        mov FirstDataOffset,eax
                        .if Resuming==FALSE
                                invoke ParseHeader,addr MultipartHeader
                        .endif
                        mov MultipartHeaderParsed,TRUE
                        invoke CreateOutputFile
                        .break
                .else
                        mov dl,byte ptr [eax]
                        mov byte ptr [edi],dl
                        inc eax
                        inc edi
                        inc MultipartIndex
                        dec ecx
                .endif
        .endw
        ret
FillMultipartHeader ENDP
ParseAllHeaders PROC uses edi esi
        mov edi,offset HTTPHeader
        add edi,HeaderIndex      ; the address of the first empty space in HTTPHeader
        mov esi,buffer
        .while eax!=0
                .if (byte ptr [esi]==0Ah) && (byte ptr [esi-2]==0Ah)  ; if there are two 0Ah, that's the end of http header
                        mov cl,byte ptr [esi]
                        mov byte ptr [edi],cl
                        inc esi
                        inc edi
                        mov byte ptr [edi],0
                        mov HeaderParsed,TRUE   ; Set the flag to show that the http header is received. what follows will be actual data
                        mov FirstDataOffset,esi     ; Address of the first byte of the real data    
                        invoke ParseHeader,addr HTTPHeader
                        invoke String2Dword,addr StatusCode     ;Convert status code string to number
                        mov StatusValue,ax
                        .if byte ptr [StatusCode]=="3"          ; If the status code starts with "3", it means we have to go to the url specified by "location:" field.
                                mov Redirection,1      ; Set the flag that redirection is in progress
                                invoke lstrcpy,addr ErrorString,addr HTTPHeader       ; We will convert the HTTP header to lower case so we must copy it to another buffer  
                                invoke CharLower,addr ErrorString
                                invoke lstrlen,addr ErrorString
                                mov ecx,eax
                                mov  edi,offset ErrorString
Find_l_again:
                                mov  al,"l"             ; Search for "l" which is the first char of "location:"
                                repne scasb
                                push edi
                                push ecx
                                dec edi
                                mov  esi,offset Location  ; if "l" is found, check if it's the first char of "location:"
                                mov  ecx,9
                                repe cmpsb
                                mov esi,edi
                                pop  ecx
                                pop  edi
                                jne  Find_l_again
                                invoke RtlFillMemory,addr URLString,512,0
                                mov edi,esi
                                mov esi,offset URLString
                                .if byte ptr [edi]==20h ; skip spaces before url (if any)
                                        mov al,20h
                                        mov ecx,512
                                        repe scasb
                                        dec edi
                                .endif
                                .while (byte ptr [edi]!=0) && (byte ptr [edi]!=0dh) && (byte ptr [edi]!=0Ah)
                                        mov al,byte ptr [edi]
                                        mov byte ptr [esi],al
                                        inc edi
                                        inc esi
                                .endw
                                invoke CloseSock        ; Close the socket
                                invoke ClearMessages,hwnd,WM_SOCKET
                                mov FileHandle,0
                                invoke ConnectSocket    ; Connect again with the new url
                        .elseif StatusValue==503       ; Server is busy
                                invoke MessageBox,hwnd,addr ServerBusy,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif byte ptr [StatusCode]=="5"
                                invoke MessageBox,hwnd,addr ServerError,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==204
                                invoke MessageBox,hwnd,addr NoContent,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==400
                                invoke MessageBox,hwnd,addr BadRequest,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==401
                                invoke MessageBox,hwnd,addr Unauthorized,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==403
                                invoke MessageBox,hwnd,addr Forbidden,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==404
                                invoke MessageBox,hwnd,addr NotFound,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==406
                                invoke MessageBox,hwnd,addr NotAcceptable,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif StatusValue==410
                                invoke MessageBox,hwnd,addr Gone,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock
                                invoke EnableControls
                        .elseif byte ptr [StatusCode]=="2"
                                invoke InStringi,addr HTTPHeader,addr Multipart
                                .if eax!=-1
                                        mov CanResume,TRUE
                                        mov MultipartPresent,TRUE
                                        invoke FillMultipartHeader
                                .else
                                        invoke InStringi,addr HTTPHeader,addr AcceptRanges
                                        .if eax!=-1 || StatusValue==206
                                                mov CanResume,TRUE
                                        .else
                                                invoke InStringi,addr HTTPHeader,addr ContentRange
                                                .if eax!=-1
                                                        mov CanResume,TRUE
                                                .endif
                                        .endif
                                        invoke CreateOutputFile
;                                        invoke MessageBox,NULL,addr HTTPHeader,addr AppName,MB_OK
                                .endif
                        .else
                                invoke MessageBox,hwnd,addr Undefined,addr AppName,MB_OK+MB_ICONERROR
                                invoke CloseSock

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费日本视频一区| 亚洲女同女同女同女同女同69| 精品粉嫩超白一线天av| 日本aⅴ精品一区二区三区| 欧美一区二区三区白人| 99久久精品国产一区二区三区| 天堂影院一区二区| ...xxx性欧美| 久久夜色精品国产噜噜av| 欧美乱妇20p| 91免费国产在线观看| 国产精品一区二区你懂的| 天堂精品中文字幕在线| 亚洲人成网站影音先锋播放| 久久蜜臀中文字幕| 91精品国产一区二区三区| 色噜噜狠狠成人中文综合| 国产成人高清在线| 九色综合狠狠综合久久| 亚洲国产aⅴ成人精品无吗| 国产精品二区一区二区aⅴ污介绍| 精品毛片乱码1区2区3区| 欧美性色黄大片手机版| 91在线你懂得| 北条麻妃一区二区三区| 国产露脸91国语对白| 九九视频精品免费| 日韩va亚洲va欧美va久久| 亚洲国产精品久久久男人的天堂| 国产精品国产三级国产| 国产午夜精品久久久久久久| 久久精品综合网| 久久久久久久久伊人| 久久女同互慰一区二区三区| 日韩视频一区在线观看| 日韩一区二区三区三四区视频在线观看 | 成av人片一区二区| 国产高清无密码一区二区三区| 九九在线精品视频| 国产精品一级二级三级| 国产福利视频一区二区三区| 国产酒店精品激情| 国产精品99久久久久久宅男| 国产一区二区福利视频| 国产成人亚洲综合a∨猫咪| 国产精品99久久久久久似苏梦涵 | 97久久超碰国产精品| av亚洲产国偷v产偷v自拍| 国产成人综合视频| 成人毛片视频在线观看| 不卡的av在线| eeuss影院一区二区三区| 91在线国产观看| 欧美性一二三区| 日韩一级片网址| 精品国精品国产尤物美女| 久久一区二区视频| 欧美国产欧美综合| 亚洲欧美激情一区二区| 亚洲一区免费视频| 奇米777欧美一区二区| 国内一区二区视频| 成人激情免费视频| 欧美丝袜丝交足nylons| 日韩视频免费观看高清在线视频| 久久综合丝袜日本网| 国产精品三级av在线播放| 亚洲精品日韩专区silk| 日韩精品福利网| 国产福利一区二区三区视频| 色先锋久久av资源部| 91精品国产欧美一区二区| 久久女同精品一区二区| 一区二区三区不卡视频在线观看| 视频在线观看国产精品| 国产成人综合自拍| 欧美在线啊v一区| 日韩视频免费观看高清完整版 | 制服丝袜中文字幕亚洲| 2欧美一区二区三区在线观看视频| 中文字幕乱码亚洲精品一区| 亚洲一二三四区| 国产激情精品久久久第一区二区| 色婷婷精品大视频在线蜜桃视频| 欧美第一区第二区| 亚洲男同性恋视频| 麻豆高清免费国产一区| 99精品视频一区二区| 日韩午夜激情免费电影| 亚洲日韩欧美一区二区在线| 久久电影网站中文字幕| 97se亚洲国产综合在线| 久久先锋影音av鲁色资源| 一个色妞综合视频在线观看| 国产一区二区三区四| 欧美视频精品在线观看| 中文字幕二三区不卡| 免费人成在线不卡| 99久久777色| 久久影院视频免费| 午夜婷婷国产麻豆精品| 99国产精品久久久久久久久久久| 日韩免费视频一区| 一区二区不卡在线播放| 国产成人免费xxxxxxxx| 欧美一区二区在线不卡| 综合久久综合久久| 国产精品99久久久久久久vr| 日韩欧美国产一区二区三区| 亚洲综合免费观看高清完整版| 国产成人av一区二区三区在线观看| 欧美麻豆精品久久久久久| 综合久久久久久久| 国产91精品露脸国语对白| 日韩一区二区电影网| 偷偷要91色婷婷| 欧美亚洲国产一区二区三区va| 国产精品丝袜久久久久久app| 极品少妇xxxx精品少妇偷拍| 欧美精品视频www在线观看| 亚洲在线视频一区| 91麻豆精品在线观看| 国产精品久久三区| 成人一区二区三区中文字幕| 久久美女高清视频| 久久不见久久见中文字幕免费| 91麻豆精品久久久久蜜臀| 亚洲国产美女搞黄色| 色哟哟在线观看一区二区三区| 国产精品美女久久久久av爽李琼| 国产成人在线免费观看| 久久久91精品国产一区二区精品| 国产综合久久久久久久久久久久| 精品少妇一区二区三区视频免付费 | 国产精品网站在线观看| 国产大片一区二区| 中文av一区特黄| 盗摄精品av一区二区三区| 中文子幕无线码一区tr| 国产成人精品免费看| 中文字幕在线一区免费| 97久久人人超碰| 亚洲精品日韩一| 欧美浪妇xxxx高跟鞋交| 日韩不卡手机在线v区| 日韩午夜在线播放| 国产在线播放一区三区四| 久久一夜天堂av一区二区三区| 国产成人亚洲综合色影视| 国产精品久久久久婷婷| 一本大道久久a久久精品综合| 一区二区三区国产精华| 欧美日韩精品欧美日韩精品一综合| 日韩精品五月天| 欧美哺乳videos| 成人美女在线视频| 亚洲免费看黄网站| 欧美日韩国产123区| 美女一区二区视频| 国产无一区二区| 在线观看成人小视频| 日韩国产欧美三级| 国产欧美视频在线观看| 91丨国产丨九色丨pron| 午夜精品久久久久久久99樱桃| 91.com在线观看| 国产伦精品一区二区三区视频青涩 | 99久久综合99久久综合网站| 一区二区三区高清在线| 日韩视频在线你懂得| 国产99精品国产| 亚洲第一在线综合网站| 日韩精品一区二区三区在线播放 | 激情综合色综合久久综合| 欧美激情一区在线观看| 91国内精品野花午夜精品| 日韩成人av影视| 中文字幕在线不卡一区二区三区| 欧美色老头old∨ideo| 久久成人综合网| 亚洲免费观看高清完整版在线观看熊 | 精品国产乱码久久久久久影片| 成人午夜在线播放| 五月激情六月综合| 亚洲国产高清在线观看视频| 欧美日韩国产系列| 成人中文字幕电影| 日韩精品亚洲一区二区三区免费| 国产精品高清亚洲| 欧美成人女星排名| 欧洲国产伦久久久久久久| 国产一区二区在线观看视频| 亚洲一区二区视频在线| 久久综合中文字幕| 欧美四级电影网| 91小视频免费看| 国产另类ts人妖一区二区| 天堂va蜜桃一区二区三区| 国产精品国产自产拍在线| 日韩免费一区二区三区在线播放|