下载附件,简单看一下信息
无壳,64位
运行起来看看
要我们输入邮箱地址和地址注册。
扔进IDA看看,看到WinMain
F5看伪代码
int __stdcall WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
return DialogBoxParamW(hInstance, (LPCWSTR)0x65, 0, DialogFunc, 0);
}
进DialogFunc看看处理函数
GetDlgItemTextA是输入框获取的输入
String应该就是那个邮箱地址
v11则是第二个Number
而flag看样子就是 v11
而v11每一位都if判断了要等于什么
提取出来
#include<stdio.h>
int main()
{
char v11[16];
v11[0] = 67;
v11[15] = 88;
v11[1] = 90;
v11[14] = 65;
v11[2] = 57;
v11[13] = 98;
v11[3] = 100;
v11[12] = 55;
v11[4] = 109;
v11[11] = 71;
v11[5] = 113;
v11[10] = 57;
v11[6] = 52;
v11[9] = 103;
v11[7] = 99;
v11[8] = 56;
printf("%s", v11);
}
再运行试试,成功!
flag:CZ9dmq4c8g9G7bAX