日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

010 Editor v8.0.1_x32分析以及注册机制作

發布時間:2025/3/21 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 010 Editor v8.0.1_x32分析以及注册机制作 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

環境以及工具

Window7_x32

010 Editor v8.0.1_x32

OD

VS2017

第一步 找到判斷注冊結果的關鍵跳轉和關鍵函數

使用OD打開010editor,進入到注冊界面,先嘗試輸入隨意的ID和Key,獲取彈出的提示信息字符串

嘗試在OD中搜索如下字符 “Invalid name or password.”,搜索結果如下

發現存在大量提示信息,我們在其中找到注冊成功的提示信息,(上圖紅框:感謝購買010editor),雙擊查看反匯編窗口,見下圖。

往上查看判斷注冊成功的關鍵跳轉

我們發現地址為00DD5926處跳轉JNZ 010Edito.00DD5A58應該為關鍵跳轉,下方可以找到輸出字符串”Password accepted. This ….”, 而其跳轉地址處匯編代碼為輸出”Password accepted….”

(010editor使用QT界面庫編寫 ,我們可以猜測出push字符串隨后的函數應為輸出字符串)

回到關鍵跳轉00DD5926處,判斷密碼為正確的條件為EDI = 0xDB,而EDI的值是EAX給的,而EAX為函數010Edito.00409C9B的返回值,這個函數可能為驗證Key的關鍵函數,而我們動態調試發現有跳轉直接跳轉到cmp edi,0xdb。

同樣為函數010Edito.00409C9B,現在可以認為這是關鍵函數,此時EDI的值為0x177,為了驗證此跳轉為關鍵跳轉,我們把EDI的值修改為0xDB。

之后F9運行

驗證成功!接下來我們進入函數分析。

第二步 分析關鍵函數1(返回DB為注冊成功)

函數010Edito.00409C9B,參數情況為:

arg1 = 0x9 ;

arg2 = 0x4389;

從下往上看,找到需要的0xDB,而跳轉條件是eax = 0x2D, 為函數010Edito.0040A826的返回值。

第三步 分析關鍵函數2(返回2D為注冊成功)

進入函數,該函數作用為將key取出,放在在局部變量數組中,數組起始地址為ebx-24

key[0 ] = [ebx-24]=0x12 key[1 ] = [ebx-23]=0x34 key[2 ] = [ebx-22]=0x56 key[3 ] = [ebx-21]=0x78 key[4 ] = [ebx-20]=0x90 key[5 ] = [ebx-1F]=0x12 key[6 ] = [ebx-1E]=0x34 key[7 ] = [ebx-1D]=0x56 key[8 ] = [ebx-1C]=0x78 key[9 ] = [ebx-1B]=0x90

密鑰數組對應如上,該處匯編代碼如下,當KEY[3] == 0x9C時

013BDC5D . 8A5D DF MOV BL,BYTE PTR SS:[EBP-0x21] ; key[3] 013BDC60 . 8A7D E1 MOV BH,BYTE PTR SS:[EBP-0x1F] ; key[5] 013BDC63 . 80FB 9C CMP BL,0x9C ; 是否等于0x9c 013BDC66 . 75 70 JNZ SHORT 010Edito.013BDCD8 ; 跳轉到是否等于FC 013BDC68 . 8A45 DC MOV AL,BYTE PTR SS:[EBP-0x24] ; key[0] 013BDC6B . 3245 E2 XOR AL,BYTE PTR SS:[EBP-0x1E] ; key[0]^key[6] 013BDC6E . 8845 E8 MOV BYTE PTR SS:[EBP-0x18],AL ; 013BDC71 . 8A45 DD MOV AL,BYTE PTR SS:[EBP-0x23] ; key[1] 013BDC74 . 3245 E3 XOR AL,BYTE PTR SS:[EBP-0x1D] ; key[1]^key[7] 013BDC77 . FF75 E8 PUSH DWORD PTR SS:[EBP-0x18] 013BDC7A . 0FB6C8 MOVZX ECX,AL 013BDC7D . B8 00010000 MOV EAX,0x100 013BDC82 . 66:0FAFC8 IMUL CX,AX ; (key[1]^key[7])*0x100 013BDC86 . 8A45 DE MOV AL,BYTE PTR SS:[EBP-0x22] ; key[2] 013BDC89 . 32C7 XOR AL,BH ; key[2]^key[5] 013BDC8B . 0FB6C0 MOVZX EAX,AL 013BDC8E . 66:03C8 ADD CX,AX ;cx = (key[1]^key[7])*0x100 + key[2]^key[5] 013BDC91 . 0FB7F1 MOVZX ESI,CX 013BDC94 . E8 AB9904FF CALL 010Edito.00407644 013BD0B0 /> \55 PUSH EBP013BD0B1 |. 8BEC MOV EBP,ESP013BD0B3 |. 8B45 08 MOV EAX,[ARG.1] ; eax = key[0]^key[6] 013BD0B6 |. 34 18 XOR AL,0x18 ; al = key[0]^key[6]^0x18 013BD0B8 |. 04 3D ADD AL,0x3D ; al = key[0]^key[6]^0x18 + 0x3D013BD0BA |. 34 A7 XOR AL,0xA7 ; al =(key[0]^key[6]^0x18+0x3D)^0xA7013BD0BC |. 5D POP EBP 013BD0BD \. C3 RETN013BDC99 . 0FB6C0 MOVZX EAX,AL 013BDC9C . 56 PUSH ESI ; esi = (key[1]^key[7])*0x100 + key[2]^key[5] 013BDC9D . 8947 1C MOV DWORD PTR DS:[EDI+0x1C],EAX 013BDCA0 . E8 23A704FF CALL 010Edito.004083C8013BD020 /> \55 PUSH EBP013BD021 |. 8BEC MOV EBP,ESP013BD023 |. 8B45 08 MOV EAX,[ARG.1] ;eax=(key[1]^key[7])*100+key[2]^key[5]013BD026 |. B9 0B000000 MOV ECX,0xB ; ecx = 0xB013BD02B |. 35 92780000 XOR EAX,0x7892 ;eax=((key[1]^key[7])*0x100+key[2]^key[5])^0x7892013BD030 |. 05 304D0000 ADD EAX,0x4D30;eax=((key[1]^key[7])*0x100+key[2]^key[5])^0x7892 + 0x4D30013BD035 |. 35 21340000 XOR EAX,0x3421;eax=(((key[1]^key[7])*0x100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421013BD03A |. 0FB7C0 MOVZX EAX,AX013BD03D |. 99 CDQ013BD03E |. F7F9 IDIV ECX ;eax=(((key[1]^key[7])*0x100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421/0xB013BD040 |. 85D2 TEST EDX,EDX ;eax/ecx的余數是否為0013BD042 |. 74 02 JE SHORT 010Edito.013BD046 ;如果余數不為0,清零eax013BD044 |. 33C0 XOR EAX,EAX013BD046 |> 5D POP EBP 013BD047 \. C3 RETN013BDCA5 . 8B4F 1C MOV ECX,DWORD PTR DS:[EDI+0x1C] ; ecx = (key[0]^key[6]^0x18+0x3D)^0xA7 013BDCA8 . 83C4 08 ADD ESP,0x8 013BDCAB . 0FB7C0 MOVZX EAX,AX ;eax=(((key[1]^key[7])*100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421 013BDCAE . 8947 20 MOV DWORD PTR DS:[EDI+0x20],EAX ;[EDI+0x20] =(((key[1]^key[7])*100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421/0xB 013BDCB1 . 85C9 TEST ECX,ECX 013BDCB3 . 0F84 BC010000 JE 010Edito.013BDE75 ;ecx = 0 則eax=E7返回,驗證失敗 013BDCB9 . 85C0 TEST EAX,EAX 013BDCBB . 0F84 B4010000 JE 010Edito.013BDE75 ;eax = 0 則eax=E7返回,驗證失敗 013BDCC1 . 3D E8030000 CMP EAX,0x3E8 013BDCC6 . 0F87 A9010000 JA 010Edito.013BDE75 ;eax > 0x3E8 則eax=E7返回,驗證失敗 013BDCCC . 83F9 02 CMP ECX,0x2 ;ecx小于等于1時,借位cf=1,否則cf=0 013BDCCF . 1BF6 SBB ESI,ESI ; esi=esi-esi-CF=-cf 013BDCD1 . 23F1 AND ESI,ECX ;esi = esi & ecx 013BDCD3 . E9 B3000000 JMP 010Edito.013BDD8B ;0xAC分支也跳轉到這里013BDD8B

當KEY[3] == 0x9C時,等換成C為

case 0x9C: {[EDI+0x1C] = (key[0]^key[6]^0x18+0x3D)^0xA7; //最后一步驗證用到[EDI+0x20] =(((key[1]^key[7])*0x100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421;eax=(((key[1]^key[7])*0x100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421;ecx = (key[0]^key[6]^0x18+0x3D)^0xA7;cf = 0;if(eax % 0xB != 0){eax = 0;} if(ecx == 0 || eax == 0 || eax > 0x3E8){//驗證失敗return;}else {eax=(((key[1]^key[7])*0x100+key[2]^key[5])^0x7892 + 0x4D30)^0x3421/0xB;[EDI+0x20] = eax;if(ecx <= 1){cf = 1;}esi = (0 - cf) & ecx; //cf=0 則 esi=0;}break; }

當KEY[3] == 0xFC時,所有跳轉最終都不返回我們需要的0x2D ,跳過。

當KEY[3] == 0xAC時

013BDCFC > \80FB AC CMP BL,0xAC 013BDCFF . 0F85 70010000 JNZ 010Edito.013BDE75 013BDD05 . 8A45 DD MOV AL,BYTE PTR SS:[EBP-0x23] ; al = key[1] 013BDD08 . 3245 E3 XOR AL,BYTE PTR SS:[EBP-0x1D] ; al = key[1]^key[7] 013BDD0B . 0FB6C8 MOVZX ECX,AL ; ecx = key[1]^key[7] 013BDD0E . B8 00010000 MOV EAX,0x100 013BDD13 . 66:0FAFC8 IMUL CX,AX ; cx = (key[1]^key[7]) * 0x100 013BDD17 . 8A45 DE MOV AL,BYTE PTR SS:[EBP-0x22] ; al = key[2] 013BDD1A . 32C7 XOR AL,BH ; al = key[2]^key[5] 013BDD1C . C747 1C 02000>MOV DWORD PTR DS:[EDI+0x1C],0x2 ;[edi+0x1C] = 0x2 013BDD23 . 0FB6C0 MOVZX EAX,AL ; eax = key[2]^key[5] 013BDD26 . 66:03C8 ADD CX,AX ; cx = (key[1]^key[7]) * 0x100 + key[2]^key[5] 013BDD29 . 0FB7C1 MOVZX EAX,CX ; eax = (key[1]^key[7]) * 0x100 + key[2]^key[5] 013BDD2C . 50 PUSH EAX 013BDD2D . E8 96A604FF CALL 010Edito.004083C8013BD020 /> \55 PUSH EBP013BD021 |. 8BEC MOV EBP,ESP013BD023 |. 8B45 08 MOV EAX,[ARG.1] 013BD026 |. B9 0B000000 MOV ECX,0xB013BD02B |. 35 92780000 XOR EAX,0x7892 ; eax = ((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892013BD030 |. 05 304D0000 ADD EAX,0x4D30 ; eax = ((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892 + 0x4D30013BD035 |. 35 21340000 XOR EAX,0x3421 ; eax = (((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892 + 0x4D30)^0x3421013BD03A |. 0FB7C0 MOVZX EAX,AX013BD03D |. 99 CDQ013BD03E |. F7F9 IDIV ECX ; eax = ((((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892 + 0x4D30)^0x3421)/0xB013BD040 |. 85D2 TEST EDX,EDX ; 余數edx != 0 則,eax=0013BD042 |. 74 02 JE SHORT 010Edito.013BD046013BD044 |. 33C0 XOR EAX,EAX013BD046 |> 5D POP EBP 013BD047 \. C3 RETN013BDD32 . 0FB7C0 MOVZX EAX,AX 013BDD35 . 83C4 04 ADD ESP,0x4 013BDD38 . 8947 20 MOV DWORD PTR DS:[EDI+0x20],EAX 013BDD3B . 85C0 TEST EAX,EAX ; 檢測上面的函數返回結果eax是否為0 013BDD3D . 0F84 32010000 JE 010Edito.013BDE75;eax=0跳轉到返回0xE7,驗證失敗 013BDD43 . 3D E8030000 CMP EAX,0x3E8 013BDD48 . 0F87 27010000 JA 010Edito.013BDE75;eax大于0x3E8跳轉到返回0xE7,驗證失敗 013BDD4E . 0FB655 E5 MOVZX EDX,BYTE PTR SS:[EBP-0x1B] ; edx = key[9] 013BDD52 . 0FB64D E0 MOVZX ECX,BYTE PTR SS:[EBP-0x20] ; ecx = key[4] 013BDD56 . 0FB6C7 MOVZX EAX,BH ; eax = key[5] 013BDD59 . 33D0 XOR EDX,EAX ; edx = key[9]^key[5] 013BDD5B . 0FB645 E4 MOVZX EAX,BYTE PTR SS:[EBP-0x1C] ; eax = key[8] 013BDD5F . 33C8 XOR ECX,EAX ; ecx = key[4]^key[8] 013BDD61 . C1E2 08 SHL EDX,0x8 013BDD64 . 0FB645 E2 MOVZX EAX,BYTE PTR SS:[EBP-0x1E] ; eax = key[6] 013BDD68 . 03D1 ADD EDX,ECX ; edx = ((key[9]^key[5])<<8) + key[4]^key[8] 013BDD6A . 0FB64D DC MOVZX ECX,BYTE PTR SS:[EBP-0x24] ; ecx = key[0] 013BDD6E . C1E2 08 SHL EDX,0x8 ; edx = (((key[9]^key[5]) << 8) + key[4]^key[8]) << 8 013BDD71 . 33C8 XOR ECX,EAX ; ecx = key[0]^key[6] 013BDD73 . 03D1 ADD EDX,ECX ; edx = ((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6] 013BDD75 . 68 278C5B00 PUSH 010Edito.005B8C27 ; CCCCCCCC 013BDD7A . 52 PUSH EDX 013BDD7B . E8 0BCA04FF CALL 010Edito.0040A78B013BCF90 /> \55 PUSH EBP013BCF91 |. 8BEC MOV EBP,ESP013BCF93 |. 8B4D 08 MOV ECX,[ARG.1] ; ecx = ((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]013BCF96 |. B8 F1F0F0F0 MOV EAX,0xF0F0F0F1013BCF9B |. 334D 0C XOR ECX,[ARG.2] ; ecx = (((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]) ^ 0x005B8C27 013BCF9E |. 81F1 78C02200 XOR ECX,0x22C078 ; ecx = ((((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]) ^ 0x005B8C27) ^ 0x22C078013BCFA4 |. 81E9 75C10200 SUB ECX,0x2C175 ; ecx = ((((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]) ^ 0x005B8C27) ^ 0x22C078 - 0x2C175013BCFAA |. 81F1 6731E5FF XOR ECX,0xFFE53167 ; ecx = (((((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]) ^ 0x005B8C27) ^ 0x22C078 - 0x2C175) ^ 0xFFE53167013BCFB0 |. 81E1 FFFFFF00 AND ECX,0xFFFFFF ; ecx = ((((((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]) ^ 0x005B8C27) ^ 0x22C078 - 0x2C175) ^ 0xFFE53167) & 0xFFFFFF013BCFB6 |. F7E1 MUL ECX ; eax = 0xF0F0F0F1 * ecx 結果高32位放在edx。 低32位放在eax013BCFB8 |. C1EA 04 SHR EDX,0x4013BCFBB |. 8BC2 MOV EAX,EDX013BCFBD |. C1E0 04 SHL EAX,0x4013BCFC0 |. 03C2 ADD EAX,EDX013BCFC2 |. 2BC8 SUB ECX,EAX ;結果為0 則 zf=1013BCFC4 |. B8 00000000 MOV EAX,0x0013BCFC9 |. 0F44C2 CMOVE EAX,EDX ;當zf = 1時移動 013BCFCC |. 5D POP EBP 013BCFCD \. C3 RETN013BDD80 . 83C4 08 ADD ESP,0x8 013BDD83 . 8945 F0 MOV DWORD PTR SS:[EBP-0x10],EAX 013BDD86 . 8947 34 MOV DWORD PTR DS:[EDI+0x34],EAX 013BDD89 . 8BF0 MOV ESI,EAX 013BDD8B > \8D45 EC LEA EAX,DWORD PTR SS:[EBP-0x14];0x9C分支也跳轉到這里

轉換成C代碼

case 0xAC: {eax = ((((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892 + 0x4D30)^0x3421);ecx = ((((((((key[9]^key[5]) << 8) + key[4]^key[8]) << 8) + key[0]^key[6]) ^ 0x005B8C27) ^ 0x22C078 - 0x2C175) ^ 0xFFE53167) & 0xFFFFFF;if(eax % 0xB != 0){eax = 0;return ; //跳轉返回0x7E分支,驗證失敗}eax = ((((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892 + 0x4D30)^0x3421)/0xB;eax = 0xF0F0F0F1 * ecx; // 結果高32位放在edx。 低32位放在eaxedx = edx >> 4;eax = edx;eax = eax << 4;eax = eax + edx;ecx = ecx - eax;eax = 0;if(ecx==0){eax = edx; } [ebp-0x10] = eax; //最后一步驗證用到[edi+0x34] = eax;esi = eax;break; }

分支0x9C、0xAC都將運行到此處

013BDD8B > \8D45 EC LEA EAX,DWORD PTR SS:[EBP-0x14] 013BDD8E . 50 PUSH EAX 013BDD8F . 8D4F 04 LEA ECX,DWORD PTR DS:[EDI+0x4] 013BDD92 . FF15 782BE702 CALL DWORD PTR DS:[<&Qt5Core.?toUtf8@QString@@QBE?AVQByteArr>; Qt5Core.?toUtf8@QString@@QBE?AVQByteArray@@XZ

不知道這段是干嘛,我們繼續單步,到如上圖所示,函數[<&Qt5Core.?data@QByteArray@@QAE>] 返回了用戶名字符串,然后傳入函數010Edito.00402E50,其再返回 一串類似哈希值的值,那么這個函數的作用應該為處理函數名稱,進入分析。

第四步 分析用戶名處理函數

根據mov esp, 0x10可知,用戶名處理函數共有四個參數

參數1:用戶名

參數2:當BL=0XFC時為1,否則為0,根據前面的分析可知,BL為Key[3]

參數3:esi,經上一個函數處理得到

參數4:[edi+0x20],經上一個函數處理得到

013BD120 /> \55 PUSH EBP 013BD121 |. 8BEC MOV EBP,ESP 013BD123 |. 83EC 10 SUB ESP,0x10 013BD126 |. 8B55 08 MOV EDX,[ARG.1] ;edx = 用戶名pName 013BD129 |. 33C9 XOR ECX,ECX ;ecx = 0 013BD12B |. 56 PUSH ESI ;備份esi 013BD12C |. 8BF2 MOV ESI,EDX ;esi = 用戶名pName 013BD12E |. 894D FC MOV [LOCAL.1],ECX ;[LOCAL.1] = 0 013BD131 |. 57 PUSH EDI ;備份EDI 013BD132 |. 8D7E 01 LEA EDI,DWORD PTR DS:[ESI+0x1] ;edi = 用戶名地址 + 1,后面被esi減去求得長度 013BD135 |> 8A06 /MOV AL,BYTE PTR DS:[ESI] ;al = pName[0] 013BD137 |. 46 |INC ESI ;pName++ 013BD138 |. 84C0 |TEST AL,AL 013BD13A |.^ 75 F9 \JNZ SHORT 010Edito.013BD135 ;判斷是否到達字符串結尾 013BD13C |. 2BF7 SUB ESI,EDI ;求得長度,ESI指向為用戶名字符串結尾的'\0' 013BD13E |. 33FF XOR EDI,EDI 013BD140 |. 85F6 TEST ESI,ESI 013BD142 |. 0F8E F0000000 JLE 010Edito.013BD238 ;檢查長度是否不為0 013BD148 |. 53 PUSH EBX 013BD149 |. 8B5D 14 MOV EBX,[ARG.4] ;ebx = [ARG.4] = 傳入的[edi+0x20] 013BD14C |. 894D F0 MOV [LOCAL.4],ECX ;置零 013BD14F |. 894D F4 MOV [LOCAL.3],ECX ;置零 013BD152 |. 8B4D 10 MOV ECX,[ARG.3] ;ecx = [ARG.3] = 傳入的esi 013BD155 |. C1E3 04 SHL EBX,0x4 013BD158 |. 2B5D 14 SUB EBX,[ARG.4] ;ebx = ([ARG.4] *16) - [ARG.4] 013BD15B |. C1E1 04 SHL ECX,0x4 013BD15E |. 034D 10 ADD ECX,[ARG.3] ;ecx = ([ARG.3] *16) + [ARG.3] 013BD161 |. 894D F8 MOV [LOCAL.2],ECX ;[LOCAL.2] = ([ARG.3] << 4) + [ARG.3] 013BD164 |> 0FB60417 /MOVZX EAX,BYTE PTR DS:[EDI+EDX] 013BD168 |. 50 |PUSH EAX ; /c = B6 013BD169 |. FF15 9422E702 |CALL DWORD PTR DS:[<&MSVCR120.toupper>] ; \toupper 小寫字母轉換為大寫字母 013BD16F |. 8BD0 |MOV EDX,EAX ;返回值復制給edx,大寫字符 013BD171 |. 83C4 04 |ADD ESP,0x4 013BD174 |. 8B0C95 4841E6>|MOV ECX,DWORD PTR DS:[EDX*4+0x2E64148] ;將大寫字母作為索引從數組0x2E64148中取內容 ;為了方便,把數組0x2E64148稱為nArray,故這里ecx = nArray[edx] 013BD17B |. 034D FC |ADD ECX,[LOCAL.1] ;ecx =nArray[大寫字符] + [LOCAL.1] ,[LOCAL.1]最初為0 013BD17E |. 837D 0C 00 |CMP [ARG.2],0x0 ;判斷是哪種類型的注冊 013BD182 |. 74 4A |JE SHORT 010Edito.013BD1CE;注冊類型1--------------------------------------------------------- 013BD184 |. 8D42 0D |LEA EAX,DWORD PTR DS:[EDX+0xD] 013BD187 |. 25 FF000000 |AND EAX,0xFF ;eax = [大寫字符+0xD] & 0xFF,這個值為數組下標,與0xFF可能說明數組最大個數為0xFF,即256013BD18C |. 330C85 4841E6>|XOR ECX,DWORD PTR DS:[EAX*4+0x2E64148] ;ecx = (nArray[大寫字符] + [LOCAL.1]) ^ nArray[eax] 013BD193 |. 8D42 2F |LEA EAX,DWORD PTR DS:[EDX+0x2F] ;eax = [大寫字符+0x2F] 013BD196 |. 25 FF000000 |AND EAX,0xFF ;eax = eax & 0xFF 013BD19B |. 0FAF0C85 4841>|IMUL ECX,DWORD PTR DS:[EAX*4+0x2E64148] ;ecx = ecx*nArray[eax] 013BD1A3 |. 8B45 F8 |MOV EAX,[LOCAL.2] ; 010Edito.01885E59 ;eax = [LOCAL.2] = ([ARG.3] << 4) + [ARG.3] 013BD1A6 |. 0FB6C0 |MOVZX EAX,AL ;eax &= 0xFF 013BD1A9 |. 030C85 4841E6>|ADD ECX,DWORD PTR DS:[EAX*4+0x2E64148] ;ecx = ecx + nArray[eax] 013BD1B0 |. 0FB6C3 |MOVZX EAX,BL ;eax = ebx = ([ARG.4] << 4) - [ARG.4] 013BD1B3 |. 030C85 4841E6>|ADD ECX,DWORD PTR DS:[EAX*4+0x2E64148] ;ecx = ecx + nArray[eax] 013BD1BA |. 8B45 F4 |MOV EAX,[LOCAL.3] ;eax = [LOCAL.3] 013BD1BD |. 0FB6C0 |MOVZX EAX,AL 013BD1C0 |. 030C85 4841E6>|ADD ECX,DWORD PTR DS:[EAX*4+0x2E64148] ;ecx = ecx + nArray[eax] 013BD1C7 |. 8BC1 |MOV EAX,ECX ;eax = ecx 013BD1C9 |. 8945 FC |MOV [LOCAL.1],EAX ;[LOCAL.1] = eax 013BD1CC |. EB 48 |JMP SHORT 010Edito.013BD216;注冊類型0---------------------------------------------------------- 013BD1CE |> 8D42 3F |LEA EAX,DWORD PTR DS:[EDX+0x3F];這里不同 013BD1D1 |. 25 FF000000 |AND EAX,0xFF 013BD1D6 |. 330C85 4841E6>|XOR ECX,DWORD PTR DS:[EAX*4+0x2E64148] 013BD1DD |. 8D42 17 |LEA EAX,DWORD PTR DS:[EDX+0x17];這里不同 013BD1E0 |. 25 FF000000 |AND EAX,0xFF 013BD1E5 |. 0FAF0C85 4841>|IMUL ECX,DWORD PTR DS:[EAX*4+0x2E64148] 013BD1ED |. 8B45 F8 |MOV EAX,[LOCAL.2] ; 010Edito.01885E59 013BD1F0 |. 0FB6C0 |MOVZX EAX,AL 013BD1F3 |. 030C85 4841E6>|ADD ECX,DWORD PTR DS:[EAX*4+0x2E64148] 013BD1FA |. 0FB6C3 |MOVZX EAX,BL 013BD1FD |. 030C85 4841E6>|ADD ECX,DWORD PTR DS:[EAX*4+0x2E64148] 013BD204 |. 8B45 F0 |MOV EAX,[LOCAL.4] ;eax = [LOCAL.4], 另一種注冊類型這里為 [LOCAL.3] 013BD207 |. 0FB6C0 |MOVZX EAX,AL 013BD20A |. 030C85 4841E6>|ADD ECX,DWORD PTR DS:[EAX*4+0x2E64148] 013BD211 |. 8BC1 |MOV EAX,ECX 013BD213 |. 894D FC |MOV [LOCAL.1],ECX;共通線---------------------------------------------------------------- 013BD216 |> 8345 F4 13 |ADD [LOCAL.3],0x13 ;[LOCAL.3] += 0x13 013BD21A |. 47 |INC EDI 013BD21B |. 8345 F8 09 |ADD [LOCAL.2],0x9 ;[LOCAL.2] += 0x9 013BD21F |. 83C3 0D |ADD EBX,0xD ;EBX += 0xD 013BD222 |. 8345 F0 07 |ADD [LOCAL.4],0x7 ;[LOCAL.4] += 0x7 013BD226 |. 8B55 08 |MOV EDX,[ARG.1] ; EDX = [ARG.1] = 用戶名 013BD229 |. 3BFE |CMP EDI,ESI ;ESI指向為用戶名字符串結尾的0, 判斷EDI是否也到結尾,沒有則繼續循環計算 013BD22B |.^ 0F8C 33FFFFFF \JL 010Edito.013BD164 013BD231 |. 5B POP EBX ; 05661E08 013BD232 |. 5F POP EDI ; 05661E08 013BD233 |. 5E POP ESI ; 05661E08 013BD234 |. 8BE5 MOV ESP,EBP 013BD236 |. 5D POP EBP ; 05661E08 013BD237 |. C3 RETN;用戶名長度為0------------------------------------------------------ 013BD238 |> 5F POP EDI ; 05661E08 013BD239 |. 8BC1 MOV EAX,ECX 013BD23B |. 5E POP ESI ; 05661E08 013BD23C |. 8BE5 MOV ESP,EBP 013BD23E |. 5D POP EBP ; 05661E08 013BD23F \. C3 RETN

轉換成C語言

arg_1 = pName; arg_2; arg_3 = ESI; arg_4 = [edi+0x20];DWORD LOCAL_1 = 0; DWORD LOCAL_2 = (arg_3 * 16) + arg_3 DWORD LOCAL_3 = 0; DWORD LOCAL_4 = 0;ebx =(arg_4 * 16) - arg_4; char nArray[256]= { 39CB44B8, 23754F67, 5F017211, 3EBB24DA, 351707C6, 63F9774B, 17827288, 0FE74821, 5B5F670F, 48315AE8, 785B7769, 2B7A1547, 38D11292, 42A11B32, 35332244, 77437B60, 1EAB3B10, 53810000, 1D0212AE, 6F0377A8, 43C03092, 2D3C0A8E, 62950CBF, 30F06FFA, 34F710E0, 28F417FB, 350D2F95, 5A361D5A, 15CC060B, 0AFD13CC, 28603BCF, 3371066B, 30CD14E4, 175D3A67, 6DD66A13, 2D3409F9, 581E7B82, 76526B99, 5C8D5188, 2C857971, 15F51FC0, 68CC0D11, 49F55E5C, 275E4364, 2D1E0DBC, 4CEE7CE3, 32555840, 112E2E08, 6978065A, 72921406, 314578E7, 175621B7, 40771DBF, 3FC238D6, 4A31128A, 2DAD036E, 41A069D6, 25400192, 00DD4667, 6AFC1F4F, 571040CE, 62FE66DF, 41DB4B3E, 3582231F, 55F6079A, 1CA70644, 1B1643D2, 3F7228C9, 5F141070, 3E1474AB, 444B256E, 537050D9, 0F42094B, 2FD820E6, 778B2E5E, 71176D02, 7FEA7A69, 5BB54628, 19BA6C71, 39763A99, 178D54CD, 01246E88, 3313537E, 2B8E2D17, 2A3D10BE, 59D10582, 37A163DB, 30D6489A, 6A215C46, 0E1C7A76, 1FC760E7, 79B80C65, 27F459B4, 799A7326, 50BA1782, 2A116D5C, 63866E1B, 3F920E3C, 55023490, 55B56089, 2C391FD1, 2F8035C2, 64FD2B7A, 4CE8759A, 518504F0, 799501A8, 3F5B2CAD, 38E60160, 637641D8, 33352A42, 51A22C19, 085C5851, 032917AB, 2B770AC7, 30AC77B3, 2BEC1907, 035202D0, 0FA933D3, 61255DF3, 22AD06BF, 58B86971, 5FCA0DE5, 700D6456, 56A973DB, 5AB759FD, 330E0BE2, 5B3C0DDD, 495D3C60, 53BD59A6, 4C5E6D91, 49D9318D, 103D5079, 61CE42E3, 7ED5121D, 14E160ED, 212D4EF2, 270133F0, 62435A96, 1FA75E8B, 6F092FBE, 4A000D49, 57AE1C70, 004E2477, 561E7E72, 468C0033, 5DCC2402, 78507AC6, 58AF24C7, 0DF62D34, 358A4708, 3CFB1E11, 2B71451C, 77A75295, 56890721, 0FEF75F3, 120F24F1, 01990AE7, 339C4452, 27A15B8E, 0BA7276D, 60DC1B7B, 4F4B7F82, 67DB7007, 4F4A57D9, 621252E8, 20532CFC, 6A390306, 18800423, 19F3778A, 462316F0, 56AE0937, 43C2675C, 65CA45FD, 0D604FF2, 0BFD22CB, 3AFE643B, 3BF67FA6, 44623579, 184031F8, 32174F97, 4C6A092A, 5FB50261, 01650174, 33634AF1, 712D18F4, 6E997169, 5DAB7AFE, 7C2B2EE8, 6EDB75B4, 5F836FB6, 3C2A6DD6, 292D05C2, 052244DB, 149A5F4F, 5D486540, 331D15EA, 4F456920, 483A699F, 3B450F05, 3B207C6C, 749D70FE, 417461F6, 62B031F1, 2750577B, 29131533, 588C3808, 1AEF3456, 0F3C00EC, 7DA74742, 4B797A6C, 5EBB3287, 786558B8, 00ED4FF2, 6269691E, 24A2255F, 62C11F7E, 2F8A7DCD, 643B17FE, 778318B8, 253B60FE, 34BB63A3, 5B03214F, 5F1571F4, 1A316E9F, 7ACF2704, 28896838, 18614677, 1BF569EB, 0BA85EC9, 6ACA6B46, 1E43422A, 514D5F0E, 413E018C, 307626E9, 01ED1DFA, 49F46F5A, 461B642B, 7D7007F2, 13652657, 6B160BC5, 65E04849, 1F526E1C, 5A0251B6, 2BD73F69, 2DBF7ACD, 51E63E80, 5CF2670F, 21CD0A03, 5CFF0261, 33AE061E, 3BB6345F, 5D814A75, 257B5DF4, 0A5C2C5B, 16A45527, 16F23945 };while(nNameLen) {pName[i]char cName = toupper(pName); //小寫轉大寫//注冊類型1if(key[3] != 0xFC){LOCAL_1 = (nArray[cName]+LOCAL_1);LOCAL_1 ^= nArray[(cName+0xD)];LOCAL_1 *= nArray[(cName+0x2F)];LOCAL_1 += nArray[LOCAL_2];LOCAL_1 += nArray[ebx];LOCAL_1 += nArray[LOCAL_3];}//注冊類型0,沒有用到else if(key[3] == 0xFC){LOCAL_1 = (nArray[cName]+LOCAL_1);LOCAL_1 ^= nArray[(cName+0x3F)];LOCAL_1 *= nArray[(cName+0x17)];LOCAL_1 += nArray[LOCAL_2];LOCAL_1 += nArray[ebx];LOCAL_1 += nArray[LOCAL_4];}LOCAL_3 += 0x13;nNameLen--;LOCAL_2 += 0x9;ebx += 0xD LOCAL_4 += 0x7;i++; } return LOCAL_1;

函數返回結果如上圖。

第五步 處理計算結果

由上圖分析可知,接下來將處理用戶名函數的返回值多次右移比較,根據結果分發返回值,最終跳轉到我們需要的返回值0x2D。代碼如下

013BDDB6 . E8 955004FF CALL 010Edito.00402E50 ; 處理用戶名的函數 013BDDBB . 8BD0 MOV EDX,EAX 013BDDBD . 83C4 10 ADD ESP,0x10 ; 意味著上面函數有四個參數 013BDDC0 . 3855 E0 CMP BYTE PTR SS:[EBP-0x20],DL ; 比較key[4],返回值低8013BDDC3 . 0F85 81000000 JNZ 010Edito.013BDE4A ; 跳轉到返回0xE7,失敗 013BDDC9 . 8BCA MOV ECX,EDX 013BDDCB . C1E9 08 SHR ECX,0x8 ; 右移0x8 013BDDCE . 3AF9 CMP BH,CL ; key[5],cl 013BDDD0 . 75 78 JNZ SHORT 010Edito.013BDE4A ; 跳轉到返回0xE7,失敗 013BDDD2 . 8BCA MOV ECX,EDX 013BDDD4 . C1E9 10 SHR ECX,0x10 ; 右移10013BDDD7 . 384D E2 CMP BYTE PTR SS:[EBP-0x1E],CL ; key[6] 013BDDDA . 75 6E JNZ SHORT 010Edito.013BDE4A ; 跳轉到返回0xE7,失敗 013BDDDC . C1E8 18 SHR EAX,0x18 ; 右移0x18 013BDDDF . 3845 E3 CMP BYTE PTR SS:[EBP-0x1D],AL ; key[7] 013BDDE2 . 75 66 JNZ SHORT 010Edito.013BDE4A ; 跳轉到返回0xE7,失敗 013BDDE4 . 80FB 9C CMP BL,0x9C ; Switch (cases 9C..FC) 013BDDE7 . 75 0F JNZ SHORT 010Edito.013BDDF8 013BDDE9 . 8B45 08 MOV EAX,DWORD PTR SS:[EBP+0x8] ; Case 9C of switch 013BDDE4 013BDDEC . 3B47 1C CMP EAX,DWORD PTR DS:[EDI+0x1C] ; 小于等于 013BDDEF . 76 52 JBE SHORT 010Edito.013BDE43 ; 跳轉到返回0x2D,驗證正確 013BDDF1 . BE 4E000000 MOV ESI,0x4E 013BDDF6 . EB 57 JMP SHORT 010Edito.013BDE4F ; 返回返回4E,驗證失敗 013BDDF8 > 80FB FC CMP BL,0xFC 013BDDFB . 75 2E JNZ SHORT 010Edito.013BDE2B ; FC分支得不到正確結果,跳過 013BDE2B > 80FB AC CMP BL,0xAC 013BDE2E . 75 1A JNZ SHORT 010Edito.013BDE4A 013BDE30 . 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-0x10] ; Case AC of switch 013BDDE4 013BDE33 . 85C0 TEST EAX,EAX 013BDE35 . 74 13 JE SHORT 010Edito.013BDE4A ; 跳轉到驗證錯誤 013BDE37 . 3945 0C CMP DWORD PTR SS:[EBP+0xC],EAX 013BDE3A . 76 07 JBE SHORT 010Edito.013BDE43 ; 跳轉到返回0x2D,驗證正確 013BDE3C . BE 4E000000 MOV ESI,0x4E 013BDE41 . EB 0C JMP SHORT 010Edito.013BDE4F 013BDE43 > BE 2D000000 MOV ESI,0x2D ; 驗證正確,返回0x2D!!!! 013BDE48 . EB 05 JMP SHORT 010Edito.013BDE4F 013BDE4A > BE E7000000 MOV ESI,0xE7 ; Default case of switch 013BDDE4 013BDE4F > 8D4D EC LEA ECX,DWORD PTR SS:[EBP-0x14] 013BDE52 . C745 FC FFFFF>MOV DWORD PTR SS:[EBP-0x4],-0x1 013BDE59 . FF15 7C24E702 CALL DWORD PTR DS:[<&Qt5Core.??1Q>; Qt5Core.??1QByteArray@@QAE@XZ 013BDE5F . 8BC6 MOV EAX,ESI 013BDE61 . 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-0xC] 013BDE64 . 64:890D 00000>MOV DWORD PTR FS:[0],ECX 013BDE6B . 59 POP ECX ; 0584FD48 013BDE6C . 5F POP EDI ; 0584FD48 013BDE6D . 5E POP ESI ; 0584FD48 013BDE6E . 5B POP EBX ; 0584FD48 013BDE6F . 8BE5 MOV ESP,EBP 013BDE71 . 5D POP EBP ; 0584FD48 013BDE72 . C2 0800 RETN 0x8

上述代碼中,將返回值低八位和key[ n ]進行比較,每次比較完后右移八位,再次比較新數值的低八位。總共比較4次,正好將32位返回值全部比對完。

在第三步分析0x9C分支中已經得到 [EDI+0x1C] = ecx = (key[0]^key[6]^0x18+0x3D)^0xA7,

局部變量 [ EBP+0x8 ] = 9。

局部變量[ EBP - 0x10] 為第三步中分析AC分支返回eax得到,

eax = ((((key[1]^key[7]) * 0x100 + key[2]^key[5])^0x7892 + 0x4D30)^0x3421)/0xB;

局部變量 [ EBP+0xC ] = 4389。

轉換為C代碼為

//將返回值看成為一個數組,nArray[4] if((nArray[0]==key[4]) &&(nArray[1]==key[5]) &&(nArray[2]==key[6]) &&(nArray[3]==key[7])){if(key[3]==0x9C){//[EDI+0x1C] = (key[0]^key[6]^0x18+0x3D)^0xA7;if(9 <= (key[0]^key[6]^0x18+0x3D)^0xA7)){return 0x2D; //驗證成功}return 0x4E; //驗證失敗}else if(key[3]==0xFC){return 0xE7; //驗證失敗}else if(key[3]=0xAC){if([ebp - 10] >= 4389) {return 0x2D; //驗證成功}return 0x4E; //驗證失敗}}

第六步 編寫注冊機

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的010 Editor v8.0.1_x32分析以及注册机制作的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产一线在线 | 一区二区观看 | 欧美aaa一级 | 欧美极度另类性三渗透 | www天天干| 亚洲aⅴ乱码精品成人区 | 免费视频久久久久久久 | 中文在线免费观看 | 久久亚洲综合国产精品99麻豆的功能介绍 | 欧美一区二区精品在线 | 欧美性生活久久 | 91精品麻豆 | 97视频在线观看成人 | 久久久国产影视 | 91亚洲国产成人 | 人人精品久久 | 99热这里有精品 | 99久久9 | 日韩一区二区三区在线观看 | 日批视频国产 | 狠狠88综合久久久久综合网 | 亚洲精品国产精品乱码在线观看 | 日日精品 | 欧美日韩国产高清视频 | 国产又粗又猛又黄又爽 | 色网站在线观看 | 91成人欧美 | 97在线成人 | 爱情影院aqdy鲁丝片二区 | 综合色综合色 | 国产精久久久久久妇女av | 亚洲欧美日韩中文在线 | 黄色片视频在线观看 | 国内精品中文字幕 | 在线观看中文字幕第一页 | 天天操比 | 亚洲免费精品视频 | 激情欧美国产 | 欧美日bb | 国产精品一区二区麻豆 | 18国产精品福利片久久婷 | 国产成人精品一二三区 | 欧美福利精品 | 日韩肉感妇bbwbbwbbw | 91c网站色版视频 | 欧美激情亚洲综合 | 国产精品美 | 黄色www在线观看 | 久久久久北条麻妃免费看 | 午夜91视频 | 一区二区三区在线视频111 | 日韩影视大全 | 亚洲欧美日韩一区二区三区在线观看 | 黄色亚洲片| 狠狠狠干| 亚洲九九九在线观看 | 91热视频 | 亚洲精品小区久久久久久 | 成人av中文字幕 | 日韩欧美精品一区二区三区经典 | 久草在线综合网 | 国产精品美女 | 国产成人精品久久二区二区 | 国产一区精品在线观看 | 国产精品美女视频网站 | 国产精品久久久久久999 | 夜夜爽天天爽 | 97超碰在线久草超碰在线观看 | 国内成人av | 视频福利在线观看 | 亚洲成人黄色在线 | 国产精品福利在线观看 | 中文字幕国产一区 | 欧美日韩精品在线一区二区 | 免费看一级特黄a大片 | 欧美日韩中文字幕综合视频 | 国产日产av | 精品久久视频 | 狠狠狠狠狠狠狠干 | 欧美成人免费在线 | 国产流白浆高潮在线观看 | 在线天堂视频 | 国产主播大尺度精品福利免费 | 日韩视频在线播放 | 国产精品2020 | 日韩欧美一区二区三区在线 | 亚洲一级黄色大片 | 午夜久久福利视频 | 国产麻豆视频网站 | 欧美精品久久久久久久久久丰满 | 91成人免费观看视频 | 伊人天堂av| 在线免费黄色av | 五月天最新网址 | 成人亚洲欧美 | 久久久久久草 | 日韩免费中文字幕 | 国产婷婷| 国产日韩欧美在线影视 | 久久a国产| 黄色com| 亚洲精选99 | 亚洲精品国产片 | 91久久奴性调教 | 亚洲免费小视频 | 久久久久久久99精品免费观看 | 国产成人精品一区二 | 99久高清在线观看视频99精品热在线观看视频 | 天天想夜夜操 | 国产精品成人国产乱一区 | 青青啪 | 黄色av一级 | 国产小视频你懂的 | 2019中文在线观看 | 国产精品久久中文字幕 | 亚洲一区二区三区四区在线视频 | 久久综合福利 | 综合激情久久 | 香蕉视频国产在线 | 久久精品一区二区三区中文字幕 | 欧美激情va永久在线播放 | 黄污视频网站大全 | 国产亚洲一区二区在线观看 | 国产精品黄色影片导航在线观看 | 中文字幕九九 | 就要干b| 国产在线黄色 | 国产精品久久久久一区二区三区 | 亚洲乱亚洲乱亚洲 | 国产一区二区免费在线观看 | 中文字幕乱在线伦视频中文字幕乱码在线 | 久久久首页 | 亚洲一区二区三区四区在线视频 | 蜜桃久久久 | 国产美女免费看 | 91成熟丰满女人少妇 | 国产在线色站 | 91精品视频在线看 | 国产破处在线播放 | 97福利 | 国产精品欧美久久久久天天影视 | 久久免费视频精品 | 国产精成人品免费观看 | 日韩精品在线观看av | 中文字幕永久在线 | 亚洲综合精品在线 | 99在线免费视频观看 | 国产天天爽 | 久久这里 | 亚洲精品女 | 亚洲视频www | 日韩欧美精品在线 | 欧美精品在线视频 | 久久天天操 | 在线视频1卡二卡三卡 | 欧洲精品码一区二区三区免费看 | 亚洲专区欧美 | 激情丁香婷婷 | 欧美-第1页-屁屁影院 | 亚洲人毛片 | 国产大陆亚洲精品国产 | 久久久国产日韩 | 国偷自产视频一区二区久 | 久久精品—区二区三区 | 日韩中文在线视频 | 亚洲成人黄色在线观看 | 亚洲国产av精品毛片鲁大师 | 欧美怡红院视频 | 在线精品亚洲一区二区 | 在线亚洲人成电影网站色www | 午夜黄色一级片 | 久久这里只有精品首页 | 久久五月情影视 | 久久影院精品 | 91精品小视频 | 国产成人精品999 | 在线v片免费观看视频 | 欧美日韩国产在线一区 | 欧美性大胆 | 亚洲国内精品 | 99riav1国产精品视频 | 国产不卡精品 | 午夜av免费观看 | 999久久久| 国产网站色| 中文字幕在线看 | 国产精品免费久久久久影院仙踪林 | 伊人婷婷 | www.狠狠插.com | 综合网天天 | 国产成人久久av | 免费在线中文字幕 | 精品在线视频一区二区三区 | www.五月天| 国产亚洲久一区二区 | 欧美福利视频一区 | 天天色视频| 国产亚洲人 | 手机在线看永久av片免费 | 黄av资源 | 免费日韩一区二区 | 免费看片成年人 | 在线看片中文字幕 | 国产九色91 | 五月婷婷导航 | 中文字幕影视 | 国内精品久久久久久久久久久 | 亚洲精品乱码久久久久久久久久 | 国产精品99在线播放 | 午夜视频免费播放 | 亚洲狠狠婷婷综合久久久 | 91精品国产一区二区三区 | 国产欧美综合在线观看 | 欧美一区二视频在线免费观看 | 国产久草在线观看 | 日韩精品视频在线观看网址 | 成人黄视频 | 激情五月在线观看 | 在线观看岛国av | 香蕉久久久久久av成人 | 中文字幕一区二区在线观看 | 成人黄色资源 | 园产精品久久久久久久7电影 | 天天看天天干天天操 | 欧美一级免费 | 欧美最新大片在线看 | 成人av视屏 | 亚洲国产精品成人女人久久 | 色天天综合久久久久综合片 | 亚洲一区二区三区91 | av噜噜噜在线播放 | 超碰97人人在线 | 精品久久国产一区 | 久久视频精品在线观看 | 亚洲区另类春色综合小说校园片 | 日韩国产精品一区 | 色狠狠久久av五月综合 | 黄色免费视频在线观看 | 精品久久久久久久久亚洲 | 69xx视频 | 一级电影免费在线观看 | 亚洲成av人片一区二区梦乃 | 免费视频91蜜桃 | 成人禁用看黄a在线 | 伊人色综合久久天天网 | 成年人免费看av | 精品视频区 | 91日韩在线专区 | 国产九九九九九 | 91亚洲永久精品 | 91理论电影 | 永久免费精品视频 | 国产亚洲精品久久久久久 | 久草在线免费看视频 | 免费久久网| 欧美激情精品久久久久久免费印度 | 欧美精品久久久久久久久久白贞 | 精品视频在线看 | 久草久草久草久草 | 国产亚洲精品久久久网站好莱 | 日本精品久久久一区二区三区 | 精品久久久久久久久久久久久久久久 | 日韩剧情 | 精品国产一区二 | 欧美激情第八页 | 91精品国自产在线 | 久久免费视频网站 | 亚洲女人av | 91成人精品在线 | 亚洲欧美视频在线观看 | 2021久久| 午夜三级在线 | 午夜美女视频 | 国产中文字幕在线播放 | 国产黑丝袜在线 | 一本一本久久a久久精品综合小说 | 国产黄色大片免费看 | 亚洲日本va中文字幕 | 久久看片 | 99精品视频在线观看免费 | 久久国产精品一二三区 | 精品96久久久久久中文字幕无 | 午夜精品一区二区三区在线 | 欧美精品乱码久久久久 | 黄色电影在线免费观看 | 国产无区一区二区三麻豆 | 国产精品 视频 | 国产又黄又爽无遮挡 | 国产一级电影免费观看 | 色综合激情久久 | 亚洲日本韩国一区二区 | 99精品在线观看视频 | 这里只有精彩视频 | 97成人资源| 黄色网址在线播放 | av电影免费看 | 中文字幕欧美三区 | 欧美精品九九 | 视频一区二区三区视频 | 亚洲美女视频在线观看 | 精品福利在线 | 国产福利不卡视频 | 91精品国产99久久久久久红楼 | 久久国产91 | 日韩精品免费在线播放 | 中文字幕av免费在线观看 | 91麻豆精品国产午夜天堂 | 亚洲毛片在线观看. | 国产一区不卡在线 | 亚洲国产精彩中文乱码av | 亚洲九九九在线观看 | 欧美不卡视频在线 | 日日干干夜夜 | 一区二区精品在线 | av免费在线观看网站 | 91视频91自拍| 天海翼一区二区三区免费 | 干天天| 在线播放国产一区二区三区 | 色婷婷综合视频在线观看 | 国产精品99蜜臀久久不卡二区 | 亚洲日韩欧美一区二区在线 | 国产一级做a爱片久久毛片a | 1024在线看片| 在线观看中文字幕网站 | 在线观看中文字幕第一页 | 久久蜜臀一区二区三区av | 天天艹日日干 | 国产我不卡 | 国偷自产中文字幕亚洲手机在线 | 亚洲国产影院av久久久久 | 天天干天天摸天天操 | 亚洲视频精品在线 | av日韩精品 | 一区二区伦理电影 | 人人搞人人干 | 五月婷婷一级片 | 91精品在线免费观看视频 | 怡红院久久 | 久久99视频免费 | 六月丁香六月婷婷 | 精品久操| 97色在线观看 | 久久久免费精品国产一区二区 | 国产精品 视频 | 日韩欧美视频免费在线观看 | 人人干狠狠操 | 国产永久免费 | 天天干天天想 | 天堂网一区二区 | 香蕉网址 | 国产a级精品 | www.午夜色.com | 中文字幕av影院 | 97视频免费观看 | 久久香蕉国产 | 国产精品美女久久久 | 久久久久久久久久毛片 | 亚洲天堂va | 黄色av网站在线观看免费 | 精品久久久久久久久久国产 | 2020天天干天天操 | 国产中文字幕91 | 国产精品一区二区久久精品 | 久久久久麻豆v国产 | 黄色一二级片 | www.com黄 | 久久激情综合网 | 成人免费观看视频网站 | 韩国一区二区三区在线观看 | 免费av在线网站 | 久国产在线播放 | 天天夜夜操| 中文字幕在线看 | 日韩视频在线观看免费 | 一级淫片在线观看 | 日韩欧美中文 | 亚洲91视频| 99视频免费看 | 男女激情免费网站 | 午夜婷婷在线播放 | 色婷婷狠狠操 | 亚洲国产中文在线 | 中文字幕刺激在线 | 久久久精品电影 | 久久久久 免费视频 | 激情综合网在线观看 | 精品一区在线看 | 在线观看你懂的网址 | 不卡av免费在线观看 | 欧美精品天堂 | 国产精品自产拍在线观看中文 | 在线91视频 | 成人小视频免费在线观看 | 色综合天天爱 | 丁香六月婷婷开心 | 久久久国产影视 | 国产亚洲一区 | 国产精品久久久久影院日本 | 狠狠狠色丁香综合久久天下网 | 国产69精品久久久久久 | 国产精品一区电影 | 久草在线播放视频 | 美女视频黄免费的 | 在线亚洲日本 | 日韩精品免费专区 | 精品女同一区二区三区在线观看 | 国产一区二区电影在线观看 | 欧美一进一出抽搐大尺度视频 | 国产精品18久久久久久久 | 韩日精品在线观看 | 99人成在线观看视频 | 超碰在线9| 免费观看丰满少妇做爰 | 欧美成人精品欧美一级乱 | 精品网站999www | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 国产精品中文久久久久久久 | 国产在线不卡精品 | 韩国在线视频一区 | 六月丁香久久 | 免费日韩 精品中文字幕视频在线 | 国产伦精品一区二区三区四区视频 | 中文字幕中文字幕在线中文字幕三区 | 黄色资源在线 | 日韩欧美视频免费观看 | 91香蕉久久| 精品久久91 | 免费a v在线 | 99re国产 | 亚洲三级视频 | 五月开心网 | 精品在线小视频 | 97精品视频在线 | 91久久爱热色涩涩 | 综合色中色 | 天天操天天干天天爽 | 高潮久久久久久久久 | 麻豆传媒在线视频 | 在线免费av网 | 五月天色丁香 | 中文字幕高清免费日韩视频在线 | 久久久久精| 久久亚洲私人国产精品va | 中文字幕在线日 | 免费在线日韩 | 国产精品男女 | 97在线免费 | 日韩欧美一区二区三区在线观看 | 日韩 在线| 91xav| 国产精品18久久久久久久久久久久 | 国产精品24小时在线观看 | 97超碰人人看 | 国产最新视频在线 | 一区二区三区在线免费播放 | 91免费日韩| 国产精品久久久久久久久久了 | 国产免费一区二区三区最新6 | 国产糖心vlog在线观看 | 中文字幕日韩一区二区三区不卡 | 久久久在线视频 | 国产精品一区二区视频 | 麻豆久久久久久久 | 久久久久免费精品 | 国产精品永久久久久久久久久 | 欧美aa级 | 在线观看网站你懂的 | 最新日韩精品 | 99精品国产兔费观看久久99 | 四虎欧美 | 日本中文乱码卡一卡二新区 | 99精品国产高清在线观看 | 中文字幕一二 | 在线免费观看麻豆视频 | 精品国产1区二区 | 日韩高清dvd | 国产小视频免费在线网址 | 国产精品一区二区三区电影 | 看国产黄色大片 | 免费日韩精品 | 国产精品扒开做爽爽的视频 | www黄色av| 久久精品久久99精品久久 | 国产精品日韩欧美 | 91在线视频播放 | 日韩网站在线看片你懂的 | 色a资源在线| 91日韩精品| 久久天天躁夜夜躁狠狠躁2022 | 亚洲国产成人精品在线 | 啪嗒啪嗒免费观看完整版 | 亚洲五月激情 | 亚洲爱爱视频 | 久亚洲| 99视频在线看 | 欧美一级特黄高清视频 | 亚洲欧洲av | 免费福利在线视频 | 国产国产人免费人成免费视频 | 在线免费高清一区二区三区 | 国产999在线观看 | 欧美 日韩 国产 成人 在线 | 午夜精品视频一区二区三区在线看 | 日日天天| 黄色免费观看视频 | www中文在线 | 日韩av在线网站 | 国产精品麻豆99久久久久久 | 久久一久久 | 国产精品日韩欧美一区二区 | 久久久久久久久黄色 | 九九免费观看全部免费视频 | 伊人久久婷婷 | 九九一级片| 久久综合狠狠综合 | 亚洲国产精品小视频 | 国产精品一区二区无线 | 97国产精品亚洲精品 | 日韩免费在线看 | 免费日韩视| 开心激情久久 | 国产高清黄色 | 狠狠婷婷 | 中文字幕一区在线 | 日韩三级av | 激情丁香综合五月 | 日本最新一区二区三区 | 国产在线观看你懂得 | 天天天天射| 一区二区三区免费在线观看视频 | 99在线免费观看 | 午夜精品一区二区三区可下载 | 日韩天堂在线观看 | 午夜精品一二三区 | 99在线观看视频网站 | 天天射天天色天天干 | 在线播放国产一区二区三区 | 国产九九在线 | 国产精品精 | 久久婷婷一区 | 黄色三级在线观看 | 国产精品www| 日韩在线色 | 亚洲成人黄色在线观看 | 成人黄色电影免费观看 | 久久国产精品免费看 | 91在线免费视频观看 | 91在线视频一区 | 精品国产_亚洲人成在线 | 亚洲午夜精品久久久久久久久 | 人人爽人人爽人人片av | 天天躁日日躁狠狠躁av麻豆 | 午夜视频在线瓜伦 | 欧美整片sss| 日韩国产精品久久久久久亚洲 | 亚洲成人动漫在线观看 | 少妇bbb好爽 | 天天狠狠 | 国产护士hd高朝护士1 | 日本激情动作片免费看 | 97在线影视 | 亚洲人成综合 | 福利一区二区 | 欧美日韩在线观看视频 | 国产大片免费久久 | 免费亚洲片 | 国产免费一区二区三区最新6 | 一级做a爱片性色毛片www | 亚洲激情在线观看 | 国产精品女同一区二区三区久久夜 | 国产韩国日本高清视频 | 日躁夜躁狠狠躁2001 | 一区二区在线影院 | 国产视频日韩视频欧美视频 | 国产xvideos免费视频播放 | 久99视频| 久草在线| 亚洲精品影视在线观看 | 一区二区成人国产精品 | 中文字幕 成人 | 久草精品网 | 午夜视频在线观看一区二区三区 | 久久精品网| 日韩欧美在线一区二区 | 片网址 | 在线免费观看黄色 | 一区二区三区四区精品视频 | 欧美少妇xxxxxx | 日本一区二区三区视频在线播放 | 91精品久久久久久久久 | 99免费国产 | 中文字幕av有码 | 香蕉久草| 成人影片在线播放 | 欧美日韩中文国产 | 丁香在线| 亚洲电影av在线 | 中文字幕av免费观看 | 国产一区二区三区网站 | 中文字幕精品一区二区三区电影 | 狠狠色婷婷丁香六月 | 999日韩 | 色综合久久88色综合天天免费 | 九九九九九九精品 | 香蕉视频在线免费看 | 国产午夜三级一二三区 | 国产视频久| 日本激情动作片免费看 | 激情欧美在线观看 | 午夜婷婷在线播放 | 国产精品一区二区免费视频 | 国产精品久久伊人 | 午夜a区 | 亚洲黄色在线观看 | bbbbb女女女女女bbbbb国产 | 国产成人精品免费在线观看 | 狠狠操狠狠干天天操 | 51久久成人国产精品麻豆 | 看黄色91 | 一区 在线 影院 | 99久久精品免费视频 | 欧美日韩精品电影 | 99久久精品免费看国产麻豆 | 国产精品18毛片一区二区 | 亚洲午夜小视频 | 国产在线一区二区 | 天天插天天爱 | 国产精品久久99综合免费观看尤物 | 九色视频网址 | av一区在线播放 | 久久伊99综合婷婷久久伊 | 久久久久久国产精品亚洲78 | 在线а√天堂中文官网 | 欧美伦理一区二区三区 | 日韩av中文在线 | 91精品啪在线观看国产线免费 | 丁香花在线观看免费完整版视频 | 丁香婷婷深情五月亚洲 | 激情五月婷婷综合 | 亚洲另类交 | 国产精品美女久久久久久久 | 美女黄久久 | 日韩av免费一区二区 | zzijzzij日本成熟少妇 | 开心色激情网 | 成人资源在线 | 狠狠躁日日躁夜夜躁av | 欧美另类tv | 91精品视频播放 | 国产成人精品久久久久蜜臀 | av在线短片 | 亚洲国产日韩在线 | 国产蜜臀av | 欧美一区二区在线看 | 日韩中文在线观看 | 中文字幕在线视频一区二区三区 | 国产视频2021| 在线成人免费电影 | 四虎影视精品 | 五月天久久久久 | 日本最新中文字幕 | 久久特级毛片 | 久久字幕精品一区 | 中文字幕在线免费 | 97在线公开视频 | 久久精品一区二 | 婷婷色在线播放 | 91人人澡人人爽 | 色婷婷综合久久久久 | 国产精品夜夜夜一区二区三区尤 | 91桃色国产在线播放 | 日本精品中文字幕在线观看 | 日韩欧美视频免费在线观看 | av成年人电影 | 亚洲欧美国产日韩在线观看 | 久久99久国产精品黄毛片入口 | 国产午夜精品一区二区三区欧美 | 99久久精品免费 | 亚洲在线视频网站 | 欧美日韩中文字幕在线视频 | 日本中文字幕在线观看 | 国产在线精品区 | 天堂网在线视频 | 国产日产精品久久久久快鸭 | 国产高清在线看 | 又黄又爽的免费高潮视频 | 国产99久久久国产精品免费二区 | 91中文字幕一区 | 中文字幕国产 | 亚洲日本在线一区 | 91亚洲精品久久久蜜桃网站 | 日韩欧美综合精品 | 色狠狠一区二区 | 国产精品久久久久9999 | 日韩电影一区二区在线 | 成人黄色av免费在线观看 | 国产a级片免费观看 | 99精品视频在线观看视频 | 欧美视频在线二区 | 五月婷婷视频 | 日韩av黄| 免费在线观看成年人视频 | 黄色一级片视频 | 国产精品久久久一区二区三区网站 | 日韩精品视频免费专区在线播放 | 狠狠狠色丁香婷婷综合久久五月 | 亚洲精品久久久久999中文字幕 | 欧美日韩精品在线一区二区 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 久久香蕉国产精品麻豆粉嫩av | 97夜夜澡人人爽人人免费 | 少妇高潮流白浆在线观看 | 亚洲第一av在线播放 | 久久第四色 | 精品欧美一区二区在线观看 | 天天操狠狠操 | 99国产一区二区三精品乱码 | 日韩在线视频网站 | 探花视频免费在线观看 | 在线观看视频国产一区 | 久久免费视频2 | 欧美性受极品xxxx喷水 | 少妇av片 | 久久久综合 | 国产精品9999久久久久仙踪林 | 国产精品久久久久永久免费 | 国产亚洲成av人片在线观看桃 | 色婷婷综合久久久久中文字幕1 | 免费麻豆视频 | 日日干,天天干 | 久久久久女人精品毛片 | 一区二区精品在线 | 干亚洲少妇 | 日三级在线 | 欧美日韩国产一二 | 日韩在线观看中文字幕 | 成片人卡1卡2卡3手机免费看 | 免费久久精品视频 | 午夜久久久久 | 国产精品日韩在线观看 | wwxxxx日本| 99中文在线 | 日韩专区在线观看 | 热久久精品在线 | 日韩亚洲在线视频 | 一级黄色大片在线观看 | 国产免码va在线观看免费 | 天天操天天色天天射 | 国产精品日韩在线 | 国产日韩欧美在线一区 | 国产成人三级在线 | 69夜色精品国产69乱 | 在线视频日韩精品 | 日韩一级电影在线 | 中文字幕在线免费97 | 亚洲精品国精品久久99热 | 天天躁天天狠天天透 | 精品在线观看一区二区三区 | 99久久99热这里只有精品 | 一区二区激情视频 | 婷婷激情av | 久久久久久99精品 | 久久久久国产精品厨房 | 色多多视频在线观看 | 国产91精品久久久久久 | 综合五月婷婷 | 日韩国产精品毛片 | 国产情侣一区 | www.久久com | 久草免费资源 | 超碰在线97观看 | 久久国产精品99精国产 | 国外成人在线视频网站 | 99中文视频在线 | 97精品一区二区三区 | 色视频网站在线观看一=区 a视频免费在线观看 | 色婷久久 | 欧美日韩不卡一区 | 91日韩在线 | 久久字幕网 | 成年免费在线视频 | 国产视频亚洲精品 | 久久久久久综合 | 国产精品久久久久永久免费观看 | 奇米网8888| 天天草天天草 | 99r在线视频 | 丁香在线| www.777奇米 | 欧美亚洲免费在线一区 | 中文字幕中文字幕在线中文字幕三区 | 免费视频 你懂的 | 国产精品女教师 | 国产精品久久久久久一二三四五 | 99久久精品免费看国产免费软件 | 婷婷新五月 | 欧美va电影| 亚洲国产99 | 黄色com | 日本aaa在线观看 | 亚洲精品免费在线视频 | 精品亚洲在线 | 77国产精品 | 日日成人网 | 亚洲五月婷婷 | 激情五月婷婷综合 | 久久久久久久久久影视 | 中文字幕色网站 | 精品国产片 | 午夜精品区 | 美女网站视频免费都是黄 | 日韩精品中文字幕有码 | jizzjizzjizz亚洲 | av不卡中文字幕 | 日韩免费大片 | 亚洲精品久久久蜜臀下载官网 | 在线观看成人网 | 国产一级做a爱片久久毛片a | av三级av | 香蕉视频最新网址 | 久久久久久福利 | 亚洲国产中文字幕 | 日韩羞羞 | 久久国产精品久久国产精品 | 亚洲精品在线观看视频 | 最近更新中文字幕 | 国产精品福利在线观看 | 男女啪啪视屏 | 久久久久www | 日韩精品2区 | 亚洲人成影院在线 | 国产在线看一区 | 国产高清免费在线观看 | 黄网站a | 天天操夜夜操夜夜操 | 五月天天色 | 日日干夜夜骑 | 91丨porny丨九色 | 免费观看的黄色片 | 国产另类av| 国产老太婆免费交性大片 | 久久精品视频免费观看 | 久久影院精品 | 国产男女无遮挡猛进猛出在线观看 | 国产福利av | 日韩在线观看不卡 | 天天操偷偷干 | 日韩视频图片 | 久久在线 | 奇米影视四色8888 | 色视频网页 | 国产成人99久久亚洲综合精品 | 久久久久国产成人精品亚洲午夜 | 久久这里只有精品视频首页 | 懂色av懂色av粉嫩av分享吧 | 激情网五月| 日韩在线在线 | 久久精品精品电影网 | 开心激情综合网 | 日韩久久久久久久久久久久 | 国产最新在线 | 狠狠干婷婷 | 国产一区二区视频在线播放 | 国产精品久久久久久久久久免费 | 亚洲一区二区三区毛片 | 在线视频观看你懂的 | 久久久久久久免费看 | 91香蕉视频好色先生 | 99久热在线精品视频观看 | 日韩精品久久久免费观看夜色 | 婷婷丁香av| 热久在线 | 人人爽人人爽人人片av免 | av一级片网站 | 9999毛片| 丁香视频全集免费观看 | 久久99久久久久 | 中文字幕超清在线免费 | 91精品成人 | 日韩av一区二区三区四区 | 香蕉视频国产在线观看 | 久久精品一二三 | 九九精品在线观看 | 麻豆一精品传二传媒短视频 | 亚洲精品成人av在线 | 国产视频高清 | 欧美另类一二三四区 | 黄av免费在线观看 | 99视频在线精品免费观看2 | 国产一区二区三区 在线 | 欧美久久久久久久久 | 九九九热精品免费视频观看 | 日本在线视频网址 | 成人h视频在线 | 胖bbbb搡bbbb擦bbbb| 999久久久免费精品国产 | 九九九热精品免费视频观看网站 | 国产精品久久久久久久久婷婷 | 成人黄色资源 | 精品自拍av | 美女视频黄频大全免费 | 久久久久久毛片 | 久久免费国产精品1 | av中文在线 | 岛国av在线免费 | 一区二区三区污 | 又粗又长又大又爽又黄少妇毛片 | 在线观看成人一级片 | 伊人影院av | 欧美 激情 国产 91 在线 | 国产91粉嫩白浆在线观看 | 欧美日韩另类视频 | 成人在线播放视频 | 精品久久久久久国产91 | 日本mv大片欧洲mv大片 | 亚洲成人精品在线 | 国产亚洲精品久久久久动 | 亚洲在线国产 | 亚州精品国产 | 狠狠躁夜夜a产精品视频 | 久久国产精品99精国产 | 中文字幕.av.在线 | 国产美女精彩久久 | 中文字幕在线一区二区三区 | 欧美日韩国产成人 | 超碰在线99 | 色综合久久久 | 国产精品久久久电影 | 天天天天干 | 国内精品视频一区二区三区八戒 | 免费色视频在线 | 精品福利在线视频 | 婷婷av综合 | 国产精品久一 | 在线а√天堂中文官网 | 麻豆91在线观看 | 999亚洲国产996395 | 欧美精品免费在线 | 黄色大片av| 91探花视频 | 国产精品99久久久久久久久 | 色操插 | 欧美日韩不卡在线观看 | 国产精品视频999 | 嫩小bbbb摸bbb摸bbb | 免费高清无人区完整版 | 久久这里只有精品首页 | 午夜美女福利 | 欧美日韩不卡在线视频 | 精品一区二区影视 | 日韩一区在线播放 | 欧美最爽乱淫视频播放 | 久久伦理网| 亚洲综合涩 | 亚洲第一色 | 国产一区成人在线 | 黄色免费网战 | 色播五月激情综合网 | 久久免费一 | 午夜天使 | 狠狠操欧美 | 日韩欧美在线一区二区 | 中文字幕影视 | 久久久久久高潮国产精品视 | 国产精品1区2区3区在线观看 | 亚洲精品久久久久中文字幕二区 | 亚洲欧洲中文日韩久久av乱码 | 亚洲春色奇米影视 | 99久久精品无码一区二区毛片 | 久久精品成人 | 成人免费在线观看av | 婷婷丁香导航 | 国产在线观看你懂的 | 久久精品免视看 | 欧美日韩在线看 | 夜色成人网| 精品国产免费人成在线观看 | 日本成址在线观看 | 国产亚洲高清视频 | 狠狠操夜夜操 | 伊人春色电影网 | 欧美成人基地 | 久久99电影 | 欧美aaa一级| 色99色| 在线播放日韩av | 欧美一区在线看 | 久久夜夜夜 | 黄p在线播放 | 91丨九色丨国产女 | 国产精品第二页 | 99精品视频免费观看 | www.日韩免费 | 天天射天天干天天爽 | 久久er99热精品一区二区三区 | 在线观看国产一区二区 | 日本性动态图 |