0042642C|.E>call<System::AnsiString::c_str(void)>
00426431|.0>movsxedx,byteptr[eax+2B]
00426435|.8>cmpedx,33
00426438|.7>jeshort<loc_42645D>
4.另外两处的字符明码比较:
第二位判断:
00426472|.0FBE>movsxecx,byteptr[ebp-63]
00426476|.83F9>cmpecx,32;第二位为32=2
00426479|.0F85>jnz004265BB
第十一位的判断:
004265AE|>\0FBE>movsxedx,byteptr[ebp-5A]
004265B2|.83FA>cmpedx,59
004265B5740>jeshort004265BB
5.,推断第1、3-10为任意,可自己指定。
循环块(一)根据注册码3-10位和“1z1h+2a0n-0g8y*9a1n|”的
3-10位计算出12-19位:
00426377|.B>movesi,005237CA;ASCII"1z1h+2a0n-0g8y*9a1n|"
0042637C|.8>leaedi,dwordptr[ebp-7C]
0042637F|.B>movecx,5
00426384|.F>repmovsdwordptres:[edi],dwordptr[esi]
00426386|.A>movsbyteptres:[edi],byteptr[esi]
00426387|.6>movwordptr[ebp-18],8
0042638D|.8>leaeax,dwordptr[ebp+8]
00426390|.E>call<System::AnsiString::c_str(void)>
00426395|.0>movsxedx,byteptr[eax+28]
00426399|.8>cmpedx,50
0042639C|.7>jeshort<loc_4263C1>
0042639E|.3>xoreax,eax
004263A0|.5>pusheax
004263A1|.F>decdwordptr[ebp-C]
004263A4|.8>leaeax,dwordptr[ebp+8]
004263A7|.B>movedx,2
004263AC|.E>call<sub_509664>
004263B1|.5>popeax
004263B2|.8>movedx,dwordptr[ebp-28]
004263B5|.6>movdwordptrfs:[0],edx
004263BC|.E>jmp<loc_4265DA>
004263C1>|>8>leaeax,dwordptr[ebp+8]
004263|.E>call<System::AnsiString::c_str(void)>
004263C9|.0>movsxedx,byteptr[eax+29]
004263CD|.8>cmpedx,32
004263D0|.7>jeshort<loc_4263F5>
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-32335-27.html
没遇到黑天鹅时
军演准备