【破文作者】 hbqjxhw[pyg]
【文章题目】 [破]fonge's crackme 10.1
【下载地址】 http://bbs.pediy.com/showthread.php?s=&threadid=39590&perpage=10&highlight=&pagenumber=1
----------------------------------------------------------------------------------------------
【破解工具】 OD、DEDE
【破解平台】 WinXP SP2
----------------------------------------------------------------------------------------------
【破解过程】
用DEDE很快就可以找到004548A0(具体步骤就略了,主要是看算法)
004548A0 . 55 PUSH EBP
004548A1 . 8BEC MOV EBP,ESP
004548A3 . B9 13000000 MOV ECX,13
004548A8 /6A 00 PUSH 0
004548AA |6A 00 PUSH 0
004548AC |49 DEC ECX
004548AD ^\75 F9 JNZ SHORT fonge's_.004548A8
004548AF 53 PUSH EBX
004548B0 56 PUSH ESI
004548B1 57 PUSH EDI
004548B2 8BD8 MOV EBX,EAX
004548B4 33C0 XOR EAX,EAX
004548B6 55 PUSH EBP
004548B7 68 B8514500 PUSH fonge's_.004551B8
004548BC 64:FF30 PUSH DWORD PTR FS:[EAX]
004548BF 64:8920 MOV DWORD PTR FS:[EAX],ESP
004548C2 8D55 E0 LEA EDX,DWORD PTR SS:[EBP-20]
004548C5 8B83 04030000 MOV EAX,DWORD PTR DS:[EBX+304]
004548CB E8 ACF0FDFF CALL fonge's_.0043397C
004548D0 8D55 BC LEA EDX,DWORD PTR SS:[EBP-44]
004548D3 8B83 08030000 MOV EAX,DWORD PTR DS:[EBX+308]
004548D9 E8 9EF0FDFF CALL fonge's_.0043397C
004548DE 8D45 D4 LEA EAX,DWORD PTR SS:[EBP-2C]
004548E1 BA D0514500 MOV EDX,fonge's_.004551D0 ; ASCII "abcdefghijklmnopqrstuvwxyz "
004548E6 E8 35F6FAFF CALL fonge's_.00403F20
004548EB C645 AF 01 MOV BYTE PTR SS:[EBP-51],1
004548EF 33C0 XOR EAX,EAX
004548F1 8945 F8 MOV DWORD PTR SS:[EBP-8],EAX
004548F4 33C0 XOR EAX,EAX
004548F6 8945 F4 MOV DWORD PTR SS:[EBP-C],EAX
004548F9 33C0 XOR EAX,EAX
004548FB 8945 F0 MOV DWORD PTR SS:[EBP-10],EAX
004548FE 8B45 BC MOV EAX,DWORD PTR SS:[EBP-44]
00454901 E8 42F8FAFF CALL fonge's_.00404148 ; 计算SN位数
00454906 83F8 05 CMP EAX,5 ; 比较SN位数是否大于等于5
00454909 0F8C 76080000 JL fonge's_.00455185
0045490F 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
00454912 E8 31F8FAFF CALL fonge's_.00404148 ; 计算Name位数
00454917 83F8 06 CMP EAX,6 ; 比较Name位数是否大于等于6
0045491A 0F8C 21030000 JL fonge's_.00454C41
00454920 FF45 F4 INC DWORD PTR SS:[EBP-C]
00454923 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
00454926 E8 1DF8FAFF CALL fonge's_.00404148 ; 计算Name位数
0045492B 83F8 0A CMP EAX,0A ; 比较Name位数是否小于等于0xA
0045492E 0F8F 0D030000 JG fonge's_.00454C41
00454934 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
00454937 0FB678 03 MOVZX EDI,BYTE PTR DS:[EAX+3] ; 取Name的第4位的HEX值给EDI
0045493B 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
0045493E E8 05F8FAFF CALL fonge's_.00404148 ; 计算Name位数
00454943 85C0 TEST EAX,EAX ; 再次判断Name是否为空
00454945 7E 64 JLE SHORT fonge's_.004549AB
00454947 8945 A8 MOV DWORD PTR SS:[EBP-58],EAX
0045494A C745 FC 0100000>MOV DWORD PTR SS:[EBP-4],1 ; 把循环值1给SS:[EBP-4]for(i=0;i<strlen(name);i++)
00454951 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
00454954 E8 EFF7FAFF CALL fonge's_.00404148
00454959 8BD8 MOV EBX,EAX
0045495B 85DB TEST EBX,EBX
0045495D 7E 2B JLE SHORT fonge's_.0045498A
0045495F BE 01000000 MOV ESI,1 ; 循环值1给ESI for (m=0;m<strlen(name);m++)
00454964 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
00454967 E8 DCF7FAFF CALL fonge's_.00404148
0045496C 2B45 FC SUB EAX,DWORD PTR SS:[EBP-4] ; Name位数减去循环值SS:[EBP-4]
0045496F 8B55 E0 MOV EDX,DWORD PTR SS:[EBP-20]
00454972 0FB64402 FF MOVZX EAX,BYTE PTR DS:[EDX+EAX-1] ; 取Name的(strlen(name)-i-2)位的HEX值给EAX
00454977 8B55 E0 MOV EDX,DWORD PTR SS:[EBP-20]
0045497A 0FB65432 FF MOVZX EDX,BYTE PTR DS:[EDX+ESI-1] ; 取Name的m位的HEX值给EDX
0045497F F7EA IMUL EDX ; 两个HEX值相乘
00454981 C1E8 06 SHR EAX,6 ; 右移6
00454984 03F8 ADD EDI,EAX ; 相加
00454986 46 INC ESI ; 循环值ESI加1
00454987 4B DEC EBX ; 循环值EBX减1
00454988 ^ 75 DA JNZ SHORT fonge's_.00454964
0045498A 017D F8 ADD DWORD PTR SS:[EBP-8],EDI ;累加
0045498D 8D55 A4 LEA EDX,DWORD PTR SS:[EBP-5C]
00454990 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
00454993 E8 8C33FBFF CALL fonge's_.00407D24 ; 十六进制转换为十进制
00454998 8B55 A4 MOV EDX,DWORD PTR SS:[EBP-5C]
0045499B 8D45 DC LEA EAX,DWORD PTR SS:[EBP-24]
0045499E E8 ADF7FAFF CALL fonge's_.00404150
004549A3 FF45 FC INC DWORD PTR SS:[EBP-4] ; 循环值SS:[EBP-4]加1
004549A6 FF4D A8 DEC DWORD PTR SS:[EBP-58] ; 循环值SS:[EBP-58]减1
004549A9 ^ 75 A6 JNZ SHORT fonge's_.00454951
004549AB 33C0 XOR EAX,EAX
004549AD 8945 E4 MOV DWORD PTR SS:[EBP-1C],EAX
004549B0 33C0 XOR EAX,EAX
004549B2 8945 E8 MOV DWORD PTR SS:[EBP-18],EAX
004549B5 C745 EC 0100000>MOV DWORD PTR SS:[EBP-14],1
004549BC 837D EC 02 CMP DWORD PTR SS:[EBP-14],2
004549C0 7D 23 JGE SHORT fonge's_.004549E5
004549C2 B8 01000000 MOV EAX,1
004549C7 8B55 DC MOV EDX,DWORD PTR SS:[EBP-24]
004549CA 0FB65402 FF MOVZX EDX,BYTE PTR DS:[EDX+EAX-1]
004549CF 0155 E8 ADD DWORD PTR SS:[EBP-18],EDX
004549D2 8B55 BC MOV EDX,DWORD PTR SS:[EBP-44]
004549D5 0FB65402 FF MOVZX EDX,BYTE PTR DS:[EDX+EAX-1]
004549DA 0155 E4 ADD DWORD PTR SS:[EBP-1C],EDX
004549DD 40 INC EAX
004549DE 83F8 06 CMP EAX,6
004549E1 ^ 75 E4 JNZ SHORT fonge's_.004549C7
004549E3 EB 63 JMP SHORT fonge's_.00454A48
004549E5 837D EC 02 CMP DWORD PTR SS:[EBP-14],2
004549E9 75 2B JNZ SHORT fonge's_.00454A16
004549EB B8 06000000 MOV EAX,6
004549F0 8B55 DC MOV EDX,DWORD PTR SS:[EBP-24]
004549F3 0FB65402 FF MOVZX EDX,BYTE PTR DS:[EDX+EAX-1]
004549F8 0355 E8 ADD EDX,DWORD PTR SS:[EBP-18]
004549FB 42 INC EDX
004549FC 8955 E8 MOV DWORD PTR SS:[EBP-18],EDX
004549FF 8B55 BC MOV EDX,DWORD PTR SS:[EBP-44]
00454A02 0FB65402 FF MOVZX EDX,BYTE PTR DS:[EDX+EAX-1]
00454A07 0155 E4 ADD DWORD PTR SS:[EBP-1C],EDX
00454A0A 40 INC EAX
00454A0B 83F8 0D CMP EAX,0D
00454A0E ^ 75 E0 JNZ SHORT fonge's_.004549F0
00454A10 8345 E4 07 ADD DWORD PTR SS:[EBP-1C],7
00454A14 EB 32 JMP SHORT fonge's_.00454A48
00454A16 8B45 DC MOV EAX,DWORD PTR SS:[EBP-24]
00454A19 E8 2AF7FAFF CALL fonge's_.00404148
00454A1E 83E8 10 SUB EAX,10
00454A21 7C 25 JL SHORT fonge's_.00454A48
00454A23 40 INC EAX
00454A24 8945 A8 MOV DWORD PTR SS:[EBP-58],EAX
00454A27 B8 10000000 MOV EAX,10
00454A2C 8B55 DC MOV EDX,DWORD PTR SS:[EBP-24]
00454A2F 0FB65402 FF MOVZX EDX,BYTE PTR DS:[EDX+EAX-1]
00454A34 0155 E8 ADD DWORD PTR SS:[EBP-18],EDX
00454A37 8B55 BC MOV EDX,DWORD PTR SS:[EBP-44]
00454A3A 0FB65402 FF MOVZX EDX,BYTE PTR DS:[EDX+EAX-1]
00454A3F 0155 E4 ADD DWORD PTR SS:[EBP-1C],EDX
00454A42 40 INC EAX
00454A43 FF4D A8 DEC DWORD PTR SS:[EBP-58]
00454A46 ^ 75 E4 JNZ SHORT fonge's_.00454A2C
00454A48 33C0 XOR EAX,EAX
00454A4A 55 PUSH EBP
00454A4B 68 764A4500 PUSH fonge's_.00454A76
00454A50 64:FF30 PUSH DWORD PTR FS:[EAX]
00454A53 64:8920 MOV DWORD PTR FS:[EAX],ESP
00454A56 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18]
00454A59 3345 E4 XOR EAX,DWORD PTR SS:[EBP-1C]
00454A5C 50 PUSH EAX
00454A5D 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
00454A60 5A POP EDX
00454A61 8BCA MOV ECX,EDX
00454A63 99 CDQ
00454A64 F7F9 IDIV ECX
00454A66 8945 F0 MOV DWORD PTR SS:[EBP-10],EAX
00454A69 FF45 F0 INC DWORD PTR SS:[EBP-10]
00454A6C 33C0 XOR EAX,EAX
00454A6E 5A POP EDX
00454A6F 59 POP ECX
00454A70 59 POP ECX
00454A71 64:8910 MOV DWORD PTR FS:[EAX],EDX
00454A74 EB 19 JMP SHORT fonge's_.00454A8F
00454A76 ^ E9 89ECFAFF JMP fonge's_.00403704
00454A7B 0100 ADD DWORD PTR DS:[EAX],EAX
00454A7D 0000 ADD BYTE PTR DS:[EAX],AL
00454A7F FC CLD
00454A80 6F OUTS DX,DWORD PTR ES:[EDI] ; I/O 命令
00454A81 40 INC EAX
00454A82 0087 4A4500FF ADD BYTE PTR DS:[EDI+FF00454A],AL
00454A88 45 INC EBP
00454A89 F4 HLT ; 特权命令
00454A8A E8 B1EEFAFF CALL fonge's_.00403940
00454A8F FF45 EC INC DWORD PTR SS:[EBP-14] ; SS:[EBP-C]内的数下面将要用到
00454A92 837D EC 04 CMP DWORD PTR SS:[EBP-14],4
00454A96 ^ 0F85 20FFFFFF JNZ fonge's_.004549BC
00454A9C EB 03 JMP SHORT fonge's_.00454AA1
----------------------------------------------------------------------------------------------
ASCII "abcdefghijklmnopqrstuvwxyz "这一段字符串下面将用到,主要是生成注册的信息。
00454AA1 8B45 BC MOV EAX,DWORD PTR SS:[EBP-44]
00454AA4 33DB XOR EBX,EBX
00454AA6 8A58 0C MOV BL,BYTE PTR DS:[EAX+C] ; 取Name的13位给BL
00454AA9 83EB 1F SUB EBX,1F ; 减去0x1F(EBX的值一定为0X12,后面将要用到)
00454AAC 8B45 BC MOV EAX,DWORD PTR SS:[EBP-44]
00454AAF 0FB670 0E MOVZX ESI,BYTE PTR DS:[EAX+E] ; 取Name的15位给ESI
00454AB3 83EE 24 SUB ESI,24 ; 减去0x24(ESI的值一定为0X14,后面将要用到)
00454AB6 8B45 BC MOV EAX,DWORD PTR SS:[EBP-44]
00454AB9 0FB678 0D MOVZX EDI,BYTE PTR DS:[EAX+D] ; 取Name的14位给EDI
00454ABD 83EF 31 SUB EDI,31 ; 减去0x31(EDI的值一定为0X5,后面将要用到)
00454AC0 8D45 A0 LEA EAX,DWORD PTR SS:[EBP-60]
00454AC3 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454AC6 8A541A FF MOV DL,BYTE PTR DS:[EDX+EBX-1] ; 这里将用到EBX
00454ACA 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454ACD C600 01 MOV BYTE PTR DS:[EAX],1
00454AD0 8D55 A0 LEA EDX,DWORD PTR SS:[EBP-60]
00454AD3 8D45 9C LEA EAX,DWORD PTR SS:[EBP-64]
00454AD6 E8 5DDFFAFF CALL fonge's_.00402A38
00454ADB 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454ADE 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454AE1 8A52 04 MOV DL,BYTE PTR DS:[EDX+4]
00454AE4 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454AE7 C600 01 MOV BYTE PTR DS:[EAX],1
00454AEA 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454AED 8D45 9C LEA EAX,DWORD PTR SS:[EBP-64]
00454AF0 B1 02 MOV CL,2
00454AF2 E8 11DFFAFF CALL fonge's_.00402A08
00454AF7 8D55 9C LEA EDX,DWORD PTR SS:[EBP-64]
00454AFA 8D45 94 LEA EAX,DWORD PTR SS:[EBP-6C]
00454AFD E8 36DFFAFF CALL fonge's_.00402A38
00454B02 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454B05 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454B08 8A52 06 MOV DL,BYTE PTR DS:[EDX+6]
00454B0B 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454B0E C600 01 MOV BYTE PTR DS:[EAX],1
00454B11 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454B14 8D45 94 LEA EAX,DWORD PTR SS:[EBP-6C]
00454B17 B1 03 MOV CL,3
00454B19 E8 EADEFAFF CALL fonge's_.00402A08
00454B1E 8D55 94 LEA EDX,DWORD PTR SS:[EBP-6C]
00454B21 8D45 8C LEA EAX,DWORD PTR SS:[EBP-74]
00454B24 E8 0FDFFAFF CALL fonge's_.00402A38
00454B29 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454B2C 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454B2F 8A52 08 MOV DL,BYTE PTR DS:[EDX+8]
00454B32 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454B35 C600 01 MOV BYTE PTR DS:[EAX],1
00454B38 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454B3B 8D45 8C LEA EAX,DWORD PTR SS:[EBP-74]
00454B3E B1 04 MOV CL,4
00454B40 E8 C3DEFAFF CALL fonge's_.00402A08
00454B45 8D55 8C LEA EDX,DWORD PTR SS:[EBP-74]
00454B48 8D45 84 LEA EAX,DWORD PTR SS:[EBP-7C]
00454B4B E8 E8DEFAFF CALL fonge's_.00402A38
00454B50 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454B53 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454B56 8A52 12 MOV DL,BYTE PTR DS:[EDX+12]
00454B59 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454B5C C600 01 MOV BYTE PTR DS:[EAX],1
00454B5F 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454B62 8D45 84 LEA EAX,DWORD PTR SS:[EBP-7C]
00454B65 B1 05 MOV CL,5
00454B67 E8 9CDEFAFF CALL fonge's_.00402A08
00454B6C 8D55 84 LEA EDX,DWORD PTR SS:[EBP-7C]
00454B6F 8D85 7CFFFFFF LEA EAX,DWORD PTR SS:[EBP-84]
00454B75 E8 BEDEFAFF CALL fonge's_.00402A38
00454B7A 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454B7D 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454B80 8A5432 FF MOV DL,BYTE PTR DS:[EDX+ESI-1] ; 这里将用到ESI
00454B84 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454B87 C600 01 MOV BYTE PTR DS:[EAX],1
00454B8A 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454B8D 8D85 7CFFFFFF LEA EAX,DWORD PTR SS:[EBP-84]
00454B93 B1 06 MOV CL,6
00454B95 E8 6EDEFAFF CALL fonge's_.00402A08
00454B9A 8D95 7CFFFFFF LEA EDX,DWORD PTR SS:[EBP-84]
00454BA0 8D45 B4 LEA EAX,DWORD PTR SS:[EBP-4C]
00454BA3 E8 44F5FAFF CALL fonge's_.004040EC
00454BA8 8D45 A0 LEA EAX,DWORD PTR SS:[EBP-60]
00454BAB 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454BAE 8A543A FF MOV DL,BYTE PTR DS:[EDX+EDI-1] ; 这里将用到EDI
00454BB2 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454BB5 C600 01 MOV BYTE PTR DS:[EAX],1
00454BB8 8D55 A0 LEA EDX,DWORD PTR SS:[EBP-60]
00454BBB 8D45 9C LEA EAX,DWORD PTR SS:[EBP-64]
00454BBE E8 75DEFAFF CALL fonge's_.00402A38
00454BC3 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454BC6 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454BC9 8A541A FF MOV DL,BYTE PTR DS:[EDX+EBX-1] ; 这里将用到EBX
00454BCD 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454BD0 C600 01 MOV BYTE PTR DS:[EAX],1
00454BD3 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454BD6 8D45 9C LEA EAX,DWORD PTR SS:[EBP-64]
00454BD9 B1 02 MOV CL,2
00454BDB E8 28DEFAFF CALL fonge's_.00402A08
00454BE0 8D55 9C LEA EDX,DWORD PTR SS:[EBP-64]
00454BE3 8D45 94 LEA EAX,DWORD PTR SS:[EBP-6C]
00454BE6 E8 4DDEFAFF CALL fonge's_.00402A38
00454BEB 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454BEE 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454BF1 8A52 04 MOV DL,BYTE PTR DS:[EDX+4]
00454BF4 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454BF7 C600 01 MOV BYTE PTR DS:[EAX],1
00454BFA 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454BFD 8D45 94 LEA EAX,DWORD PTR SS:[EBP-6C]
00454C00 B1 03 MOV CL,3
00454C02 E8 01DEFAFF CALL fonge's_.00402A08
00454C07 8D55 94 LEA EDX,DWORD PTR SS:[EBP-6C]
00454C0A 8D45 8C LEA EAX,DWORD PTR SS:[EBP-74]
00454C0D E8 26DEFAFF CALL fonge's_.00402A38
00454C12 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
00454C15 8B55 D4 MOV EDX,DWORD PTR SS:[EBP-2C]
00454C18 8B4D F4 MOV ECX,DWORD PTR SS:[EBP-C]
00454C1B 8A540A FF MOV DL,BYTE PTR DS:[EDX+ECX-1] ; 这里将用到ECX (SS:[EBP-C])
00454C1F 8850 01 MOV BYTE PTR DS:[EAX+1],DL
00454C22 C600 01 MOV BYTE PTR DS:[EAX],1
00454C25 8D55 98 LEA EDX,DWORD PTR SS:[EBP-68]
00454C28 8D45 8C LEA EAX,DWORD PTR SS:[EBP-74]
00454C2B B1 04 MOV CL,4
00454C2D E8 D6DDFAFF CALL fonge's_.00402A08
00454C32 8D55 8C LEA EDX,DWORD PTR SS:[EBP-74]
00454C35 8D45 B0 LEA EAX,DWORD PTR SS:[EBP-50]
00454C38 E8 AFF4FAFF CALL fonge's_.004040EC
----------------------------------------------------------------------------------------------
【破解总结】
注册码部分源码:
#include <stdio.h>
#include <string.h>
main()
{
long int sum,i,temp=0,m;
char name[11];
printf("请输入Name:");
gets(name);
int len=strlen(name);
sum=name[3];
printf("Serial:");
for(i=0;i<len;i++)
{
for(m=0;m<len;m++)
sum+=(name[len-i-2]*name[m])>>0x6;
printf("%d",sum+temp);
temp+=sum;
}
printf("\n");
}
把上面生成的注册码的第13、14、15改为"一路发"即168就OK了。
例如:
Name:PEDIY.COM
Serial:8682411441571681095015269202832610431925
详细的讨论在http://bbs.pediy.com/showthread.php?s=&threadid=39590&perpage=10&highlight=&pagenumber=1
----------------------------------------------------------------------------------------------
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
----------------------------------------------------------------------------------------------
文章写于2007-2-16 2:58:27
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!