软件简介
———————————————————————————————
小红包花样短信以前叫做诺基亚闪烁短信息。她能使您发送自己定制的闪烁、图片短信到诺基亚和西门子
手机!·支持一些西门子手机的图片短信·增强的短信编辑器·新增我的收藏夹,内附幽默短语200条·新增
简易电话号码簿·可自定义短信签名!
授权方式: 共享
下载地址:http://jshttp.skycn.net/down/redbagsms40_cn.zip
———————————————————————————————
破解者:青锋剑客
破解目的:获得注册码,做出注册机。
破解工具:fi2.5 fs regmon softice4.5 ollydbg1.07 tc2.0
破解过程:
1。用FI2.5检查程序的壳,是upx0.89-6-1.21,用fs脱壳。
2.先熟悉一下程序,调出注册界面,用户名输入shifeng,注册号输入87654321,点注册,让重新启动程序,
可以看出要验证注册码。
3.调出regmon,再次启动小红包,查出小红包要调用
HKEY_CURRENT_USER\Software\iRedBag\RedBag SMS\4.0\RegCode
4.CTRL+D调出SI,下断点bpx regqueryvalueexa if *(esp->8)=='RegC' do "d (esp->14)"
启动小红包中断,按一次F12,按若干次F10,当内存数据区显示87654321时,中断于4678E0,继续按F10
会来到4B246D。向上看,会来到这里。
004B243E BA 34294B00 MOV EDX,REDBAGSM.004B2934 ; ASCII "RegName"
004B2443 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B2446 E8 F152FBFF CALL REDBAGSM.0046773C
004B244B B9 1C294B00 MOV ECX,REDBAGSM.004B291C ; ASCII "UNREGISTERED"
004B2450 BA 44294B00 MOV EDX,REDBAGSM.004B2944 ; ASCII "RegCode"
004B2455 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B2458 E8 DF52FBFF CALL REDBAGSM.0046773C
004B245D 8D4D E0 LEA ECX,DWORD PTR SS:[EBP-20]
004B2460 BA 44294B00 MOV EDX,REDBAGSM.004B2944 ; ASCII "RegCode"
004B2465 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B2468 E8 FB52FBFF CALL REDBAGSM.00467768 ;取注册号
004B246D 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
004B2470 50 PUSH EAX
004B2471 8D4D DC LEA ECX,DWORD PTR SS:[EBP-24]
004B2474 BA 34294B00 MOV EDX,REDBAGSM.004B2934 ; ASCII "RegName"
004B2479 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B247C E8 E752FBFF CALL REDBAGSM.00467768 ;取用户名
004B2481 8B45 DC MOV EAX,DWORD PTR SS:[EBP-24]
004B2484 5A POP EDX
004B2485 E8 1AF4FFFF CALL REDBAGSM.004B18A4 ; 关键调用,计算注册码并验证
004B248A 84C0 TEST AL,AL
004B248C 74 2C JE SHORT REDBAGSM.004B24BA ; 跳则死
004B248E 8D4D D8 LEA ECX,DWORD PTR SS:[EBP-28]
004B2491 BA BC284B00 MOV EDX,REDBAGSM.004B28BC ; ASCII "Signature"
004B2496 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B2499 E8 CA52FBFF CALL REDBAGSM.00467768
004B249E 8B55 D8 MOV EDX,DWORD PTR SS:[EBP-28]
004B24A1 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
5.为方便调试,启动ollydbg,CTRL+G输入4B246D,F2在此下断点。F8几次,进入关键调用:
004B18A4 55 PUSH EBP
004B18A5 8BEC MOV EBP,ESP
004B18A7 B9 0D000000 MOV ECX,0D
004B18AC 6A 00 PUSH 0
004B18AE 6A 00 PUSH 0
004B18B0 49 DEC ECX
004B18B1 ^75 F9 JNZ SHORT REDBAGSM.004B18AC
004B18B3 53 PUSH EBX
004B18B4 8955 F8 MOV DWORD PTR SS:[EBP-8],EDX
004B18B7 8945 FC MOV DWORD PTR SS:[EBP-4],EAX
004B18BA 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004B18BD E8 8631F5FF CALL REDBAGSM.00404A48
004B18C2 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B18C5 E8 7E31F5FF CALL REDBAGSM.00404A48
004B18CA 33C0 XOR EAX,EAX
004B18CC 55 PUSH EBP
004B18CD 68 E21B4B00 PUSH REDBAGSM.004B1BE2
004B18D2 64:FF30 PUSH DWORD PTR FS:[EAX]
004B18D5 64:8920 MOV DWORD PTR FS:[EAX],ESP
004B18D8 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ;用户名
004B18DB E8 802FF5FF CALL REDBAGSM.00404860 ;用户名长度
004B18E0 83F8 03 CMP EAX,3
004B18E3 7D 07 JGE SHORT REDBAGSM.004B18EC ;用户名长度要大于3位
004B18E5 33DB XOR EBX,EBX
004B18E7 E9 DB020000 JMP REDBAGSM.004B1BC7
004B18EC 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] ;注册码
004B18EF E8 6C2FF5FF CALL REDBAGSM.00404860 ;注册码长度
004B18F4 83F8 0F CMP EAX,0F
004B18F7 74 07 JE SHORT REDBAGSM.004B1900 ; 注册码长度为15,在此不跳则死
重新开始,注册码输入987654321012345
004B18F9 33DB XOR EBX,EBX
004B18FB E9 C7020000 JMP REDBAGSM.004B1BC7
004B1900 8D45 E4 LEA EAX,DWORD PTR SS:[EBP-1C]
004B1903 50 PUSH EAX
004B1904 B9 05000000 MOV ECX,5
004B1909 BA 01000000 MOV EDX,1
004B190E 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] ;注册码
004B1911 E8 A231F5FF CALL REDBAGSM.00404AB8 ;取前五位
004B1916 8B45 E4 MOV EAX,DWORD PTR SS:[EBP-1C]
004B1919 BA F81B4B00 MOV EDX,REDBAGSM.004B1BF8 ; ASCII "RBSMS"
004B191E E8 8130F5FF CALL REDBAGSM.004049A4 ;与RBSMS比较,不等不跳
004B1923 74 07 JE SHORT REDBAGSM.004B192C ; 在此不跳则死,点Z标志使之跳
004B1925 33DB XOR EBX,EBX
004B1927 E9 9B020000 JMP REDBAGSM.004B1BC7
004B192C 8D45 DC LEA EAX,DWORD PTR SS:[EBP-24]
004B192F 50 PUSH EAX
004B1930 B9 02000000 MOV ECX,2
004B1935 BA 0D000000 MOV EDX,0D
004B193A 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8] ;取注册码
004B193D E8 7631F5FF CALL REDBAGSM.00404AB8 ;取注册码13,14位
004B1942 8B4D DC MOV ECX,DWORD PTR SS:[EBP-24]
004B1945 8D45 E0 LEA EAX,DWORD PTR SS:[EBP-20]
004B1948 BA 081C4B00 MOV EDX,REDBAGSM.004B1C08
004B194D E8 5A2FF5FF CALL REDBAGSM.004048AC
004B1952 8B45 E0 MOV EAX,DWORD PTR SS:[EBP-20]
004B1955 E8 EE73F5FF CALL REDBAGSM.00408D48
004B195A 8BD8 MOV EBX,EAX
004B195C 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004B195F E8 FC2EF5FF CALL REDBAGSM.00404860 ;取用户名长度
004B1964 3BD8 CMP EBX,EAX ;注册码13,14位与长度的16进制要相等
004B1966 74 07 JE SHORT REDBAGSM.004B196F ;不跳则死,点Z标志使之跳
004B1968 33DB XOR EBX,EBX
004B196A E9 58020000 JMP REDBAGSM.004B1BC7
004B196F 68 081C4B00 PUSH REDBAGSM.004B1C08
004B1974 8D45 D4 LEA EAX,DWORD PTR SS:[EBP-2C]
004B1977 50 PUSH EAX
004B1978 B9 01000000 MOV ECX,1
004B197D BA 0A000000 MOV EDX,0A ;注意EDX的A
004B1982 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B1985 E8 2E31F5FF CALL REDBAGSM.00404AB8 ;取注册码第10位到内存
004B198A FF75 D4 PUSH DWORD PTR SS:[EBP-2C]
004B198D 8D45 D0 LEA EAX,DWORD PTR SS:[EBP-30]
004B1990 50 PUSH EAX
004B1991 B9 01000000 MOV ECX,1
004B1996 BA 0C000000 MOV EDX,0C ;注意EDX的C
004B199B 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B199E E8 1531F5FF CALL REDBAGSM.00404AB8 ;取注册码第12位到内存
004B19A3 FF75 D0 PUSH DWORD PTR SS:[EBP-30]
004B19A6 8D45 D8 LEA EAX,DWORD PTR SS:[EBP-28]
004B19A9 BA 03000000 MOV EDX,3
004B19AE E8 6D2FF5FF CALL REDBAGSM.00404920 ;把这两位拼合后送入SS:[EBP-28]
004B19B3 8B45 D8 MOV EAX,DWORD PTR SS:[EBP-28]
004B19B6 E8 8D73F5FF CALL REDBAGSM.00408D48
004B19BB 8BD0 MOV EDX,EAX
004B19BD 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
004B19C0 E8 C32DF5FF CALL REDBAGSM.00404788
004B19C5 8D45 CC LEA EAX,DWORD PTR SS:[EBP-34]
004B19C8 50 PUSH EAX
004B19C9 B9 01000000 MOV ECX,1
004B19CE BA 01000000 MOV EDX,1
004B19D3 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ;用户名
004B19D6 E8 DD30F5FF CALL REDBAGSM.00404AB8 ;用户名第一个字符送入内存
004B19DB 8B55 CC MOV EDX,DWORD PTR SS:[EBP-34]
004B19DE 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C]
004B19E1 E8 BE2FF5FF CALL REDBAGSM.004049A4 ; SN第10,12位组成的数与用户名第一个字符比较 ?
004B19E6 74 0F JE SHORT REDBAGSM.004B19F7 ; 不跳则死,点Z标志使之跳
004B19E8 33DB XOR EBX,EBX
004B19EA 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
004B19ED E8 B62BF5FF CALL REDBAGSM.004045A8
004B19F2 E9 D0010000 JMP REDBAGSM.004B1BC7
004B19F7 8D45 F4 LEA EAX,DWORD PTR SS:[EBP-C]
004B19FA E8 A92BF5FF CALL REDBAGSM.004045A8
004B19FF 68 081C4B00 PUSH REDBAGSM.004B1C08
004B1A04 8D45 C4 LEA EAX,DWORD PTR SS:[EBP-3C]
004B1A07 50 PUSH EAX
004B1A08 B9 01000000 MOV ECX,1
004B1A0D BA 08000000 MOV EDX,8
004B1A12 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B1A15 E8 9E30F5FF CALL REDBAGSM.00404AB8 ; 取SN第8位
004B1A1A FF75 C4 PUSH DWORD PTR SS:[EBP-3C]
004B1A1D 8D45 C0 LEA EAX,DWORD PTR SS:[EBP-40]
004B1A20 50 PUSH EAX
004B1A21 B9 01000000 MOV ECX,1
004B1A26 BA 0B000000 MOV EDX,0B
004B1A2B 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B1A2E E8 8530F5FF CALL REDBAGSM.00404AB8 ; 取SN第11位
004B1A33 FF75 C0 PUSH DWORD PTR SS:[EBP-40]
004B1A36 8D45 C8 LEA EAX,DWORD PTR SS:[EBP-38]
004B1A39 BA 03000000 MOV EDX,3
004B1A3E E8 DD2EF5FF CALL REDBAGSM.00404920
004B1A43 8B45 C8 MOV EAX,DWORD PTR SS:[EBP-38]
004B1A46 E8 FD72F5FF CALL REDBAGSM.00408D48
004B1A4B 8BD0 MOV EDX,EAX
004B1A4D 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004B1A50 E8 332DF5FF CALL REDBAGSM.00404788 ; 两位生成字符
004B1A55 8D45 B8 LEA EAX,DWORD PTR SS:[EBP-48]
004B1A58 50 PUSH EAX
004B1A59 B9 01000000 MOV ECX,1
004B1A5E BA 07000000 MOV EDX,7
004B1A63 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B1A66 E8 4D30F5FF CALL REDBAGSM.00404AB8 ; 取SN第7个字符
004B1A6B 8B45 B8 MOV EAX,DWORD PTR SS:[EBP-48]
004B1A6E 8D55 BC LEA EDX,DWORD PTR SS:[EBP-44]
004B1A71 E8 026EF5FF CALL REDBAGSM.00408878
004B1A76 8B45 BC MOV EAX,DWORD PTR SS:[EBP-44]
004B1A79 50 PUSH EAX
004B1A7A 8D55 B4 LEA EDX,DWORD PTR SS:[EBP-4C]
004B1A7D 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
004B1A80 E8 F36DF5FF CALL REDBAGSM.00408878
004B1A85 8B55 B4 MOV EDX,DWORD PTR SS:[EBP-4C]
004B1A88 58 POP EAX
004B1A89 E8 162FF5FF CALL REDBAGSM.004049A4 ; 上面两数比较,相等则跳。
004B1A8E 74 0F JE SHORT REDBAGSM.004B1A9F ; 不跳则死
004B1A90 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004B1A93 E8 102BF5FF CALL REDBAGSM.004045A8
004B1A98 33DB XOR EBX,EBX
004B1A9A E9 28010000 JMP REDBAGSM.004B1BC7
004B1A9F 8D45 B0 LEA EAX,DWORD PTR SS:[EBP-50]
004B1AA2 50 PUSH EAX
004B1AA3 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004B1AA6 E8 B52DF5FF CALL REDBAGSM.00404860
004B1AAB 8BD0 MOV EDX,EAX
004B1AAD 4A DEC EDX
004B1AAE B9 01000000 MOV ECX,1
004B1AB3 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004B1AB6 E8 FD2FF5FF CALL REDBAGSM.00404AB8 ; 读用户名倒数第二个字符并保存
004B1ABB 8B55 B0 MOV EDX,DWORD PTR SS:[EBP-50] ; EDX指向的是前面SN第8位、11位生成的字符
004B1ABE 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
004B1AC1 E8 DE2EF5FF CALL REDBAGSM.004049A4
004B1AC6 74 0F JE SHORT REDBAGSM.004B1AD7 ;相等跳,不跳死
004B1AC8 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004B1ACB E8 D82AF5FF CALL REDBAGSM.004045A8
004B1AD0 33DB XOR EBX,EBX
004B1AD2 E9 F0000000 JMP REDBAGSM.004B1BC7
004B1AD7 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
004B1ADA 8B55 F8 MOV EDX,DWORD PTR SS:[EBP-8]
004B1ADD 0FB652 0E MOVZX EDX,BYTE PTR DS:[EDX+E] ; 序列号最后一位
004B1AE1 4A DEC EDX ; 减一
004B1AE2 E8 A12CF5FF CALL REDBAGSM.00404788
004B1AE7 8D55 AC LEA EDX,DWORD PTR SS:[EBP-54]
004B1AEA 8B45 E8 MOV EAX,DWORD PTR SS:[EBP-18]
004B1AED E8 866DF5FF CALL REDBAGSM.00408878
004B1AF2 8B45 AC MOV EAX,DWORD PTR SS:[EBP-54]
004B1AF5 50 PUSH EAX
004B1AF6 8D55 A8 LEA EDX,DWORD PTR SS:[EBP-58]
004B1AF9 8B45 F0 MOV EAX,DWORD PTR SS:[EBP-10]
004B1AFC E8 776DF5FF CALL REDBAGSM.00408878
004B1B01 8B55 A8 MOV EDX,DWORD PTR SS:[EBP-58] ;EDX指向的是前面用户名倒数第2个字符
004B1B04 58 POP EAX
004B1B05 E8 9A2EF5FF CALL REDBAGSM.004049A4 ;两者比较,相等跳,不跳死
004B1B0A 74 17 JE SHORT REDBAGSM.004B1B23
004B1B0C 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004B1B0F E8 942AF5FF CALL REDBAGSM.004045A8
004B1B14 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
004B1B17 E8 8C2AF5FF CALL REDBAGSM.004045A8
004B1B1C 33DB XOR EBX,EBX
004B1B1E E9 A4000000 JMP REDBAGSM.004B1BC7
004B1B23 8D45 F0 LEA EAX,DWORD PTR SS:[EBP-10]
004B1B26 E8 7D2AF5FF CALL REDBAGSM.004045A8
004B1B2B 8D45 E8 LEA EAX,DWORD PTR SS:[EBP-18]
004B1B2E E8 752AF5FF CALL REDBAGSM.004045A8
004B1B33 68 081C4B00 PUSH REDBAGSM.004B1C08
004B1B38 8D45 A0 LEA EAX,DWORD PTR SS:[EBP-60]
004B1B3B 50 PUSH EAX
004B1B3C B9 01000000 MOV ECX,1
004B1B41 BA 06000000 MOV EDX,6
004B1B46 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B1B49 E8 6A2FF5FF CALL REDBAGSM.00404AB8 ;取SN第6位
004B1B4E FF75 A0 PUSH DWORD PTR SS:[EBP-60]
004B1B51 8D45 9C LEA EAX,DWORD PTR SS:[EBP-64]
004B1B54 50 PUSH EAX
004B1B55 B9 01000000 MOV ECX,1
004B1B5A BA 09000000 MOV EDX,9
004B1B5F 8B45 F8 MOV EAX,DWORD PTR SS:[EBP-8]
004B1B62 E8 512FF5FF CALL REDBAGSM.00404AB8 ; 取SN第9位
004B1B67 FF75 9C PUSH DWORD PTR SS:[EBP-64]
004B1B6A 8D45 A4 LEA EAX,DWORD PTR SS:[EBP-5C]
004B1B6D BA 03000000 MOV EDX,3
004B1B72 E8 A92DF5FF CALL REDBAGSM.00404920 ;两者合并成字符
004B1B77 8B45 A4 MOV EAX,DWORD PTR SS:[EBP-5C]
004B1B7A E8 C971F5FF CALL REDBAGSM.00408D48
004B1B7F 8BD0 MOV EDX,EAX
004B1B81 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004B1B84 E8 FF2BF5FF CALL REDBAGSM.00404788
004B1B89 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
004B1B8C 50 PUSH EAX
004B1B8D 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004B1B90 E8 CB2CF5FF CALL REDBAGSM.00404860
004B1B95 8BD0 MOV EDX,EAX
004B1B97 B9 01000000 MOV ECX,1
004B1B9C 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
004B1B9F E8 142FF5FF CALL REDBAGSM.00404AB8 ;取用户名最后一字符
004B1BA4 8B55 98 MOV EDX,DWORD PTR SS:[EBP-68]
004B1BA7 8B45 EC MOV EAX,DWORD PTR SS:[EBP-14]
004B1BAA E8 F52DF5FF CALL REDBAGSM.004049A4
004B1BAF 74 0C JE SHORT REDBAGSM.004B1BBD ;两比较,相等跳,不跳死
004B1BB1 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004B1BB4 E8 EF29F5FF CALL REDBAGSM.004045A8
004B1BB9 33DB XOR EBX,EBX
004B1BBB EB 0A JMP SHORT REDBAGSM.004B1BC7
004B1BBD 8D45 EC LEA EAX,DWORD PTR SS:[EBP-14]
004B1BC0 E8 E329F5FF CALL REDBAGSM.004045A8
004B1BC5 B3 01 MOV BL,1
004B1BC7 33C0 XOR EAX,EAX
004B1BC9 5A POP EDX
004B1BCA 59 POP ECX
004B1BCB 59 POP ECX
004B1BCC 64:8910 MOV DWORD PTR FS:[EAX],EDX
004B1BCF 68 E91B4B00 PUSH REDBAGSM.004B1BE9
004B1BD4 8D45 98 LEA EAX,DWORD PTR SS:[EBP-68]
004B1BD7 BA 1A000000 MOV EDX,1A
004B1BDC E8 EB29F5FF CALL REDBAGSM.004045CC
004B1BE1 C3 RETN
5.算法总结
(1)前五位是固定的,为RBSMS
(2)第6、第9位组合成用户名最后一个字符的ASCII码
(3)第7位是用户名倒数第2个字符
(4)第8位、11位是用户倒数第2个字符的ASCII码
(5)第10位、12位是用户名的第1个字符的ASCII码
(6)第13、14位是用户名长度(以十六进制表示的)
(7)最后一位是用户名倒数第2位字母加1
6.delphi注册机的主要部分:
var
username:string;
l:integer;
begin
username:=Edituser.text;
l:=length(username);
if l>2 then
begin
editsn.Text :='RBSMS';
editsn.Text := editsn.Text+inttohex(ord(username[l]) div 16,1);
editsn.Text := editsn.Text+username[l-1];
editsn.Text := editsn.Text+inttohex(ord(username[l-1]) div 16,1);
editsn.Text := editsn.Text+inttohex(ord(username[l]) mod 16,1);
editsn.Text := editsn.Text+inttohex(ord(username[1]) div 16,1);
editsn.Text := editsn.Text+inttohex(ord(username[l-1]) mod 16,1);
editsn.Text := editsn.Text+inttohex(ord(username[1]) mod 16,1);
editsn.Text := editsn.Text+inttohex(l,2);
editsn.Text := editsn.Text+upcase(chr(ord(username[l-1])+1));
end
else
Edituser.text:='用户名长度不得小于3个英文字符';
end;
7.相应TC注册机源码:
#include
void main(void)
{
char *str;
int len;
clrscr();
printf("\n\n\n**********************************************************\n");
printf(" 小红包花样短信 XP V4.0 注册机\n");
printf(" 作者: 青锋剑客 ( 2002/10/23 )\n");
printf(" 用户名长度不能小于3位且不能为汉字\n");
printf("**********************************************************\n\n");
printf("请输入你的姓名 : ");
gets(str);
len=strlen(str);
printf("\n你的序列号为:RBSMS");
printf("%X",str[len-1]/16);
printf("%c",str[len-2]);
printf("%X",str[len-2]/16);
printf("%X",str[len-1]%16);
printf("%X",str[0]/16);
printf("%X",str[len-2]%16);
printf("%X",str[0]%16);
if (len<16) printf("0");
printf("%X",len);
printf("%c\n",toupper(str[len-2]+1));
}
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有0条评论>>