-
您的位置:首页 → 精文荟萃 → 破解文章 → crackcode代码分享笔记(四)-依依惜别篇 (6千字)
crackcode代码分享笔记(四)-依依惜别篇 (6千字)
时间:2004/10/15 0:59:00来源:本站整理作者:蓝点我要评论(0)
-
Go on..... 各位看官: (上一讲中提到的问题,不知道谁知道?能否赐教!谢了!)
:00401295 833D4CA6400000 cmp dword ptr [0040A64C], 00000000 -》40A64C的值看上一讲
:0040129C 7513 jne 004012B1 --》比较是否设定需要读取的寄存器;
如果设定了值,转向4012B1.否则继续。
:0040129E 56 push esi
:0040129F C60560974000BE mov byte ptr [00409760], BE
:004012A6 E8E3050000 call 0040188E
:004012AB 59 pop ecx
:004012AC A34CA64000 mov dword ptr [0040A64C], eax
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040129C(C)
|
:004012B1 6824A54000 push 0040A524 --》指向被跟踪的程序名
:004012B6 E813000000 call 004012CE --》创建该程序进程
:004012BB 59 pop ecx
:004012BC 5F pop edi
:004012BD 5E pop esi
:004012BE 5D pop ebp
:004012BF 85C0 test eax, eax
:004012C1 5B pop ebx
:004012C2 7405 je 004012C9
:004012C4 E841000000 call 0040130A
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004012C2(C)
|
:004012C9 33C0 xor eax, eax
:004012CB C21000 ret 0010
下面看call 004012CE 子程序,前我们来研究一个API〔CreatProcess〕它的参数说明
可是一大摞。
BOOL CreateProcess(
LPCTSTR lpApplicationName,
// pointer to name of executable module
LPTSTR lpCommandLine, // pointer to command line string
LPSECURITY_ATTRIBUTES lpProcessAttributes, // process security attributes
LPSECURITY_ATTRIBUTES lpThreadAttributes, // thread security attributes
BOOL bInheritHandles, // handle inheritance flag
DWORD dwCreationFlags, // creation flags
LPVOID lpEnvironment, // pointer to new environment block
LPCTSTR lpCurrentDirectory, // pointer to current directory name
LPSTARTUPINFO lpStartupInfo, // pointer to STARTUPINFO
LPPROCESS_INFORMATION lpProcessInformation // pointer to PROCESS_INFORMATION
);
说明
创建一个新进程
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
参数表
参数 类型及说明
lpApplicationName String,要执行的应用程序的名字。可设为vbNullString;在这种情况下,应用程序的名字应在lpCommandLine参数的起始处出现
lpCommandLine String,要执行的命令行。可用GetCommandLine函数取得一个进程使用的命令行。windows会尽可能地根据下述搜索顺序来查找执行文件:
(1)包含了父进程执行文件的目录
(2)父进程当前的目录
(3)由GetSystemDirectory返回的系统目录
(4)仅适于windows NT:16位系统目录
(5)由GetSystemDirectory返回的windows目录
(6)由PATH环境变量指定的目录
lpProcessAttributes SECURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或传递零值表示采用不允许继承的默认描述符。该参数定义进程的安全特性
lpThreadAttributes SECURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或传递零值表示采用不允许继承的默认描述符。该参数定义进程之主进程的安全特性
bInheritHandles Long,TRUE表示允许当前进程中的所有句柄都由新建的子进程继承
dwCreationFlags Long,来自API32.TXT文件的一个或多个下述常数之一,它们都带有前缀CREATE_。下面这些用于VB程序员:
CREATE_SEPARATE_WOW_VDM(仅适用于NT):启动一个16位的windows应用程序时,强迫它在自己的内存空间运行
CREATE_SHARED_WOW_VDM(仅适用于NT):启动一个16位的windows应用程序时,强迫它在共享的16位虚拟机内运行
CREATE_SUSPENDED:立即挂起新进程。除非调用ResumeThread函数。
IDLE_PRIORITY_CLASS:新进程应该有非常低的优先级,只有在系统空闲的时候才能运行。基本值是4
HIGH_PRIORITY_CLASS:新进程应该有非常高的优先级,基本值是13
NORMAL_PRIORITY_CLASS:标准优先级。如进程位于前台,则基本值是9;如在后台。则优先值是7
lpEnvironment 任何类型,指向一个环境块的指针
lpCurrentDriectory String,新进程的当前目录路径
lpStartupInfo STARTUPINFO,指定一个STARTUPINFO结构,其中包含了创建进程时使用的附加信息
lpProcessInformation PROCESS_INFORMATION,该结构用于容纳新进程的进程和线程标识。大多数情况下,一旦这个函数返回,父应用程序都会关闭两个句柄。
可怕吗??我好害怕怕哦!!呵呵~~~ 其实你使用起来,是非常的简单的 :)
因为许多的参数都可以用0来表示。
比如:
CreateProcess(0, serail.exe,0,0,FALSE,
CREATE_SUSPENDED, 0,0,&startupInfo, &ProcessInformation);
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
这个例子是不是挺可爱的。40多行的说明,用起来不过两行而已。在这里强调一下
有一部分的crack工具都使用这个程序哦!!比如 内存补丁程序,还有现在这个crackcode
还有新版的DEDE也用到。你说是不是值得去学习它呢???
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
=======================call 004012CE 子程序========================
* Referenced by a CALL at Address:
|:004012B6
|
:004012CE 55 push ebp
:004012CF 8BEC mov ebp, esp
:004012D1 83EC44 sub esp, 00000044
:004012D4 56 push esi
:004012D5 33F6 xor esi, esi
:004012D7 6A44 push 00000044
:004012D9 8D45BC lea eax, dword ptr [ebp-44]
:004012DC 56 push esi
:004012DD 50 push eax
:004012DE E86D080000 call 00401B50
:004012E3 83C40C add esp, 0000000C
:004012E6 8D45BC lea eax, dword ptr [ebp-44]
:004012E9 C745BC44000000 mov [ebp-44], 00000044
:004012F0 6810A44000 push 0040A410
:004012F5 50 push eax
:004012F6 56 push esi
:004012F7 56 push esi
:004012F8 6A02 push 00000002
:004012FA 56 push esi
:004012FB 56 push esi
:004012FC 56 push esi
:004012FD FF7508 push [ebp+08]
:00401300 56 push esi
* Reference To: KERNEL32.CreateProcessA, Ord:0000h
|
:00401301 FF1508504000 Call dword ptr [00405008]
:00401307 5E pop esi
:00401308 C9 leave
:00401309 C3 ret
=======================call 004012CE 子程序========================
估计大伙可能看到这会不会一头雾水呢??为了更好理解它。
建议:下载R!SC's Process Patcher 原代码进行研究。
大伙是不是觉得这样写下去,挺没有劲的!对吗?这个CRACK论坛不是中国最火的吗?
为什么没有人愿意解答我的问题??只是希望得到结果(突破25位的限制)!:(
好失望!!原以为先有付出,才会有收获,唉!! 我去了! 这是最后的一篇文章。
byebye 曾经给过我一些希望的两位[FCG]朋友。
|
相关阅读
Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
-
热门文章
去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有0条评论>>