-
-
[旧帖] [求助]为什么对Getversion返回值进行处理? 0.00雪花
-
发表于: 2009-8-26 14:48 2365
-
小弟不才,最近在尝试学习逆向,具备了相应的基础,但是始终不得要领,因此从最简单的逆向分析开始,遇到了一个问题就是00401241 之后对getversion函数的返回值进行了处理,不知道为什么函数进行这样的处理?还有请各路大虾解决啊;>
00401210 >/$ 55 push ebp
00401211 |. 8BEC mov ebp, esp
00401213 |. 6A FF push -1
00401215 |. 68 68614200 push 00426168
0040121A |. 68 F04A4000 push 00404AF0 ; SE 处理程序安装
0040121F |. 64:A1 0000000>mov eax, dword ptr fs:[0] ; 结构化处理异常的尾部
00401225 |. 50 push eax ; 保存结构化异常处理连的尾部的位置信息
00401226 |. 64:8925 00000>mov dword ptr fs:[0], esp
0040122D |. 83C4 F0 add esp, -10
00401230 |. 53 push ebx
00401231 |. 56 push esi
00401232 |. 57 push edi
00401233 |. 8965 E8 mov dword ptr [ebp-18], esp
00401236 |. FF15 4CE14200 call dword ptr [<&KERNEL32.GetVersio>; kernel32.GetVersion
0040123C |. A3 30C04200 mov dword ptr [42C030], eax ; eax中存储的是当前的windows环境
00401241 |. A1 30C04200 mov eax, dword ptr [42C030] ; 为什么对getversion进行处理?
00401246 |. C1E8 08 shr eax, 8
00401249 |. 25 FF000000 and eax, 0FF
0040124E |. A3 3CC04200 mov dword ptr [42C03C], eax
00401253 |. 8B0D 30C04200 mov ecx, dword ptr [42C030]
00401259 |. 81E1 FF000000 and ecx, 0FF
0040125F |. 890D 38C04200 mov dword ptr [42C038], ecx
00401265 |. 8B15 38C04200 mov edx, dword ptr [42C038]
0040126B |. C1E2 08 shl edx, 8
0040126E |. 0315 3CC04200 add edx, dword ptr [42C03C]
00401274 |. 8915 34C04200 mov dword ptr [42C034], edx
0040127A |. A1 30C04200 mov eax, dword ptr [42C030]
0040127F |. C1E8 10 shr eax, 10
00401282 |. 25 FFFF0000 and eax, 0FFFF
00401287 |. A3 30C04200 mov dword ptr [42C030], eax
0040128C |. 6A 00 push 0
00401210 >/$ 55 push ebp
00401211 |. 8BEC mov ebp, esp
00401213 |. 6A FF push -1
00401215 |. 68 68614200 push 00426168
0040121A |. 68 F04A4000 push 00404AF0 ; SE 处理程序安装
0040121F |. 64:A1 0000000>mov eax, dword ptr fs:[0] ; 结构化处理异常的尾部
00401225 |. 50 push eax ; 保存结构化异常处理连的尾部的位置信息
00401226 |. 64:8925 00000>mov dword ptr fs:[0], esp
0040122D |. 83C4 F0 add esp, -10
00401230 |. 53 push ebx
00401231 |. 56 push esi
00401232 |. 57 push edi
00401233 |. 8965 E8 mov dword ptr [ebp-18], esp
00401236 |. FF15 4CE14200 call dword ptr [<&KERNEL32.GetVersio>; kernel32.GetVersion
0040123C |. A3 30C04200 mov dword ptr [42C030], eax ; eax中存储的是当前的windows环境
00401241 |. A1 30C04200 mov eax, dword ptr [42C030] ; 为什么对getversion进行处理?
00401246 |. C1E8 08 shr eax, 8
00401249 |. 25 FF000000 and eax, 0FF
0040124E |. A3 3CC04200 mov dword ptr [42C03C], eax
00401253 |. 8B0D 30C04200 mov ecx, dword ptr [42C030]
00401259 |. 81E1 FF000000 and ecx, 0FF
0040125F |. 890D 38C04200 mov dword ptr [42C038], ecx
00401265 |. 8B15 38C04200 mov edx, dword ptr [42C038]
0040126B |. C1E2 08 shl edx, 8
0040126E |. 0315 3CC04200 add edx, dword ptr [42C03C]
00401274 |. 8915 34C04200 mov dword ptr [42C034], edx
0040127A |. A1 30C04200 mov eax, dword ptr [42C030]
0040127F |. C1E8 10 shr eax, 10
00401282 |. 25 FFFF0000 and eax, 0FFFF
00401287 |. A3 30C04200 mov dword ptr [42C030], eax
0040128C |. 6A 00 push 0
[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法
赞赏
他的文章
- [求助]怎么样才能够提高自己? 3909
- [求助]为什么对Getversion返回值进行处理? 2366
- [原创]对PE文件的探索 13044
看原图
赞赏
雪币:
留言: