能力值:
( LV6,RANK:90 )
|
-
-
2 楼
|
能力值:
( LV8,RANK:130 )
|
-
-
3 楼
我拼啊拼 拼啊拼
|
能力值:
( LV11,RANK:188 )
|
-
-
4 楼
又来了 /:^|
等大S表演:
ida sub_757511F0(HWND hDlg)
user 12或更短 len Str
pass 16 len Str
u0代表user从0开始4个字符按内存中的顺序作为32bits的数字
u4代表index为4~7的4个字符。
(
(u0+ 0F8C9FCFCh)* 8741037Ch
- (u8+ 33FCD9Ah)* 18F0F839h
+ (u4+ 0F774DC0Ah)* 777F934Bh
)
* 2+ 1;
pass的:
pass里的16个字节,通过查表发转换ASCII成64bits大小的16进制数字NewNumFromPass
然后有,
NewNumFromPass mod 0xFF89CD97= edx; 而call过去的字节照着32bits、32bits的列出来依次为:
0xED418856+ edx
0x0209E92F
0xedx
压入的堆栈是
esp+ 00 指针指向NewNumFromPass
esp+ 04 指针指向user计算出来的
esp+ 08 指针指向API MessageBoxW
又饿又晕了不知道对不对,先回老家吃饭。再mark,晚上接着看...
|
能力值:
( LV6,RANK:90 )
|
-
-
5 楼
你这东西似乎有点难:
7575125D PUSH 20 ; /Count = 20 (32.)
7575125F LEA EAX,DWORD PTR SS:[EBP-4C] ; |
75751262 PUSH EAX ; |Buffer
75751263 PUSH 3E9 ; |ControlID = 3E9 (1001.)
75751268 PUSH EDI ; |hWnd
75751269 MOV ESI,DWORD PTR DS:[<&USER32.GetDlgItemText>; |USER32.GetDlgItemTextA
7575126F CALL NEAR ESI ; \读取注册名
75751271 PUSH 20 ; /Count = 20 (32.)
75751273 LEA ECX,DWORD PTR SS:[EBP-6C] ; |
75751276 PUSH ECX ; |Buffer
75751277 PUSH 3EA ; |ControlID = 3EA (1002.)
7575127C PUSH EDI ; |hWnd
7575127D CALL NEAR ESI ; \读取注册码
7575127F LEA EAX,DWORD PTR SS:[EBP-4C] ; 指向注册码名
75751282 LEA EDX,DWORD PTR DS:[EAX+1]
75751285 MOV CL,BYTE PTR DS:[EAX]
75751287 INC EAX
75751288 CMP CL,BL
7575128A JNZ SHORT CrackMe.75751285
7575128C SUB EAX,EDX ; 计算注册名长度
7575128E ADD EAX,-4 ; 长度-4
75751291 CMP EAX,8 ; 结果与8比较
75751294 JA CrackMe.75751341 ; 大于则跳--注册名不能长于12位
7575129A LEA EAX,DWORD PTR SS:[EBP-6C] ; 指向注册码
7575129D LEA EDX,DWORD PTR DS:[EAX+1]
757512A0 MOV CL,BYTE PTR DS:[EAX]
757512A2 INC EAX
757512A3 CMP CL,BL
757512A5 JNZ SHORT CrackMe.757512A0
757512A7 SUB EAX,EDX ; 计算长度
757512A9 CMP EAX,10 ; 长度与16比较
757512AC JNZ CrackMe.75751341 ; 不等则跳--注册码恰好要16位
757512B2 MOV EDX,DWORD PTR SS:[EBP-44] ; 读取注册名第三段
757512B5 ADD EDX,33FCD9A
757512BB IMUL EDX,EDX,18F0F839
757512C1 MOV EAX,DWORD PTR SS:[EBP-4C] ; 读取注册名第一段
757512C4 ADD EAX,F8C9FCFC
757512C9 IMUL EAX,EAX,8741037C
757512CF SUB EAX,EDX
757512D1 MOV ECX,DWORD PTR SS:[EBP-48] ; 读取注册名第二段
757512D4 ADD ECX,F774DC0A
757512DA IMUL ECX,ECX,777F934B
757512E0 ADD EAX,ECX
757512E2 MOV DWORD PTR SS:[EBP-4C],EAX ; 暂存结果
757512E5 LEA EDX,DWORD PTR DS:[EAX+EAX+1] ; 结果*2+1
757512E9 MOV DWORD PTR SS:[EBP-4C],EDX ; 保存结果FDE4CD37
757512EC LEA EAX,DWORD PTR SS:[EBP-6C] ; 注册码
757512EF LEA ECX,DWORD PTR SS:[EBP-2C] ; 准备保存的位置
757512F2 CALL CrackMe.75751100 ; 注册码转化为整数
757512F7 LEA ESI,DWORD PTR SS:[EBP-2C] ; 结果位置
757512FA MOV EAX,DWORD PTR DS:[ESI] ; 读取第一段
757512FC MOV EDX,DWORD PTR DS:[ESI+4] ; 读取第二段
757512FF MOV ECX,FF89CD97
75751304 DIV ECX ; 结果 mod FF89CD97=DE670F08
75751306 MOV DWORD PTR SS:[EBP-1C],EDX ; 保存余数
75751309 LEA EAX,DWORD PTR DS:[209E92F] ; 0209E92F
7575130F MOV DWORD PTR SS:[EBP-20],EAX ; 0209E92F
75751312 MOV EAX,DWORD PTR SS:[EBP-20] ; 0209E92F
75751315 MOV ECX,DWORD PTR SS:[EBP-1C] ; 保存的余数
75751318 LEA EDX,DWORD PTR DS:[EAX+ECX+EB379F27] ; 两数据相加
7575131F MOV DWORD PTR SS:[EBP-24],EDX ; 保存结果
75751322 PUSH DWORD PTR DS:[<&USER32.MessageBoxW>] ; USER32.MessageBoxW
75751328 LEA EAX,DWORD PTR SS:[EBP-2C] ; 注册码转化结果位置
7575132B PUSH EAX
7575132C LEA EAX,DWORD PTR SS:[EBP-4C] ; 注册名计算结果位置
7575132F PUSH EAX
75751330 CALL NEAR DWORD PTR SS:[EBP-24] ; 以和作为调用地址显示消息盒?
|
能力值:
( LV9,RANK:180 )
|
-
-
6 楼
没墨水没算学只能这样
Name = VXAXSSVWSP妹
SN = 350E66AC00005F3A
|
能力值:
( LV4,RANK:50 )
|
-
-
7 楼
拜模S神啊。
|
能力值:
( LV9,RANK:180 )
|
-
-
8 楼
外星人很久没来了
莫非....
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
错的.巧合,并非我意.还请继续努力
|
能力值:
( LV9,RANK:180 )
|
-
-
10 楼
我知道非你意, 硬上的.
你这应该也是要用SMC吧? stack里执行的那种.
|
能力值:
( LV9,RANK:180 )
|
-
-
11 楼
受一楼的文 想太多了
你是要到 7575AC57
我觉得我6楼那个比较有创意
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
smc太过强悍.这里没有用上
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
看来单纯加密—个函数地址没啥强度啊
|
能力值:
( LV9,RANK:180 )
|
-
-
14 楼
别管那个了.
你教我解3次方根好不好 ?
DWord (sn div FF89CD97)^3 = 4E3CCD95
谢谢
|
能力值:
( LV15,RANK:2473 )
|
-
-
15 楼
|
能力值:
( LV4,RANK:50 )
|
-
-
16 楼
膜拜啊。。速度很快
|
能力值:
( LV9,RANK:180 )
|
-
-
17 楼
ccc这个好用
你要不要去猜他的 CM2 的第2层 SMC ?
|
能力值:
( LV15,RANK:2473 )
|
-
-
18 楼
俺只会穷举,目前手里没量子计算机,还玩不起64位穷举
|
能力值:
( LV9,RANK:170 )
|
-
-
19 楼
能把ccfer神牛炸出来,真不容易啊
|
能力值:
( LV3,RANK:20 )
|
-
-
20 楼
膜拜众仙
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
尝试下,玩玩.
|
能力值:
( LV9,RANK:160 )
|
-
-
22 楼
膜拜,无论如何也想不出7575AC57是怎么得到的~~~
|