-
-
[原创]签到题 解
-
发表于: 2021-11-15 14:37 2315
-
校验函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | int __cdecl sub_401340(HWND hDlg) { UINT v1; / / ebx int v2; / / ebx int v3; / / ecx int v4; / / eax int result; / / eax signed int v6; / / [esp + Ch] [ebp - 260h ] char v7[ 200 ]; / / [esp + 10h ] [ebp - 25Ch ] BYREF CHAR String[ 200 ]; / / [esp + D8h] [ebp - 194h ] BYREF CHAR Str [ 200 ]; / / [esp + 1A0h ] [ebp - CCh] BYREF memset(String, 0 , sizeof(String)); memset(v7, 0 , sizeof(v7)); memset( Str , 0 , sizeof( Str )); v1 = GetDlgItemTextA(hDlg, 1000 , String, 201 ); if ( v1 && (v6 = GetDlgItemTextA(hDlg, 1001 , Str , 201 ), v2 = sub_401260(String, v1), strspn( Str , "0123456789" ) = = strlen( Str )) && v6 < = 10 && (v4 = sub_40307F(v3, ( int ) Str )) ! = 0 && (unknown_libname_13(v2 ^ v4, v7, 16 ), sub_401260(v7, 8 ) = = 330861687 ) ) { SetDlgItemTextA(hDlg, 1001 , "Success!" ); result = 1 ; } else { SetDlgItemTextA(hDlg, 1001 , "Wrong Serial!" ); result = 0 ; } return result; } |
可知
sub_40307F(hex(sub_40307F(userName)^ key)) == 330861687
用户名为KCTF
用正确的一组序列号已经需要求解的用户名调用sub_40307F,可得到正确参数0x52a1ed5a
sub_40307F(userName) ^ key = 0x52a1ed5a
sub_40307F(KTF) = 0x5EE54F4C
key = 205824534
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
看原图
赞赏
雪币:
留言: