|
[求助]我想学C/C++,谁给我推荐几本书?谢谢!
谭浩强编写的c语言教程 和 C++语言教程 看过后可以看 C++入门经典 作者是 Ivor Horton 这本书我认为看 2/3 就行了 不懂的时候再查 语法不是重要的 重要的是设计 下面再看 VC++培训教程 我认为看到能拿到一个小项目 查书能做出来就行了 下面再看 windows 程序设计 王艳平 编著的 人民邮电出版社 我认为也是 看到能拿到一个小项目 查书能做出来就行了 汇编的话看 Windows 环境下32汇编程序设计 我认为也是 看到能拿到一个小项目 查书能做出来就行了 我的意思是理解他 不是记住他们 数据结构的话印象中好像没有什么书特别的好 我编程都是自学的 就是按这个顺序学的 还有一种学习方法 我觉的也很好 就是动手编程就是了 不懂的再看书 仁者见仁 智者见智 这只是我的想法 其实我认为最重要的是对编程有没有兴趣 没有兴趣的话我认为是不可能学好的 不管有什么好书 |
|
|
|
[求助]一个C++指针处理的问题
BYTE* pp; pp = static_cast<BYTE*>(pMemory) + 0x3c; pMemory = (LPVOID)pp; 这样写的话编译通过 (通过一个中间变量) 哪位知道更好的方法 或者 知道上楼为什么错 请赐教 谢谢 |
|
[求助]一个C++指针处理的问题
static_cast<BYTE*>(pMemory2) = static_cast<BYTE*>(pMemory2) + 0x3c; //这样也会出错 error C2106: '=' : left operand must be l-value |
|
|
|
[原创]ASPack 2.12 外壳流程分析
顶 十分感谢楼主的劳动 我也是刚学脱壳的 这篇从整体上分析壳的文章的确很难得 看了有很多收获 比我先前只学人家操作盲目去脱壳好多了 希望这样得好文越来越多 |
|
[原创]菜鸟啄硬壳―我的脱壳手记
顶 深入浅出 |
|
[求助]第一次脱壳 请教一下跟踪到的是不是OEP
研究了一下 OEP寻找过程应该如下 启动OD 忽略一切异常 加载test.dll F9让程序运行起来 关掉DLL Loader 再次中断在入口 10012001 > 60 pushad 10012002 E8 03000000 call PGXEK6NG.10012000 进入 来到 1001200A 5D pop ebp ; PGXEK6NG.10012007 1001200B 45 inc ebp 1001200C 55 push ebp 1001200D C3 ret 继续跟踪 来到 1001200E E8 01000000 call PGXEK6NG.10012014 进入 来到 1001200E E8 01000000 call PGXEK6NG.10012014 10012013 EB 5D jmp short PGXEK6NG.10012072 10012015 BB EDFFFFFF mov ebx,-13 1001201A 03DD add ebx,ebp 1001201C 81EB 00200100 sub ebx,12000 10012022 807D 4D 01 cmp byte ptr ss:[ebp+4D],1 10012026 75 0C jnz short PGXEK6NG.10012034 10012028 8B7424 28 mov esi,dword ptr ss:[esp+28] 1001202C 83FE 01 cmp esi,1 1001202F 895D 4E mov dword ptr ss:[ebp+4E],ebx 10012032 75 31 jnz short PGXEK6NG.10012065 这句在装载DLL时跳转不成立 卸载DLL时跳转成立 所以应该是通向OEP的 继续跟踪 来到 10012081 56 push esi 10012082 6A 00 push 0 10012084 56 push esi 10012085 FF75 4E push dword ptr ss:[ebp+4E] 10012088 FFD0 call eax 进入 来到 我原以为这里是OEP的呢 不知道怎样判断这里不是OEP呢 高手说说撒 0098CC40 55 push ebp 0098CC41 8BEC mov ebp,esp 0098CC43 51 push ecx 0098CC44 53 push ebx 0098CC45 56 push esi 0098CC46 57 push edi 0098CC47 8B5D 0C mov ebx,dword ptr ss:[ebp+C] 0098CC4A 33C0 xor eax,eax 0098CC4C 8945 FC mov dword ptr ss:[ebp-4],eax 0098CC4F 33C0 xor eax,eax 0098CC51 55 push ebp 0098CC52 68 EACD9800 push 98CDEA 0098CC57 64:FF30 push dword ptr fs:[eax] 0098CC5A 64:8920 mov dword ptr fs:[eax],esp 0098CC5D 8B45 10 mov eax,dword ptr ss:[ebp+10] 0098CC60 50 push eax 0098CC61 53 push ebx 0098CC62 8B45 08 mov eax,dword ptr ss:[ebp+8] 0098CC65 50 push eax 0098CC66 A1 50099900 mov eax,dword ptr ds:[990950] 0098CC6B 8B40 34 mov eax,dword ptr ds:[eax+34] 0098CC6E 0305 E0959900 add eax,dword ptr ds:[9995E0] 0098CC74 8B15 CC0A9900 mov edx,dword ptr ds:[990ACC] 0098CC7A 8B12 mov edx,dword ptr ds:[edx] 0098CC7C 0302 add eax,dword ptr ds:[edx] 0098CC7E FFD0 call eax ; PGXEK6NG.10007119 进入 这里应该就是OEP了 10007119 /. 55 push ebp 1000711A |. 8BEC mov ebp,esp 1000711C |. 53 push ebx 1000711D |. 8B5D 08 mov ebx,dword ptr ss:[ebp+8] 10007120 |. 56 push esi 10007121 |. 8B75 0C mov esi,dword ptr ss:[ebp+C] 10007124 |. 57 push edi 10007125 |. 8B7D 10 mov edi,dword ptr ss:[ebp+10] 10007128 |. 85F6 test esi,esi 1000712A |. 75 09 jnz short PGXEK6NG.10007135 1000712C |. 833D C4BF0010>cmp dword ptr ds:[1000BFC4],0 10007133 |. EB 26 jmp short PGXEK6NG.1000715B 10007135 |> 83FE 01 cmp esi,1 10007138 |. 74 05 je short PGXEK6NG.1000713F 1000713A |. 83FE 02 cmp esi,2 1000713D |. 75 22 jnz short PGXEK6NG.10007161 1000713F |> A1 54A30010 mov eax,dword ptr ds:[1000A354] 10007144 |. 85C0 test eax,eax 下面的修复还是不会 高手再提醒一下 这个外挂没有市场价值 只是想研究外挂怎样写的 也算是一种兴趣吧 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值