📄 intoice9.htm
字号:
<HTML>
<HEAD>
<TITLE>Crack教学</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=gb2312">
<STYLE TYPE>
td { font-family: "宋体", "serif"; font-size:9pt; font-weight: normal}
tr { font-family: "宋体", "serif"; font-size:9pt}
body { font-family: "宋体", "serif"; font-size:9pt}
</STYLE>
</HEAD>
<BODY BACKGROUND="missing.html" tppabs="http://toye.dihou.org/missing.html" TEXT="#000000" LINK="#0000FF" ALINK="#FF0000" VLINK="#405040">
<A NAME="anchortop">
</A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="0" WIDTH="640">
<TR>
<TD WIDTH="130" VALIGN="TOP" ALIGN="LEFT" NOWRAP>
<table width="113">
<tr>
<td><a href="intoice0.htm" tppabs="http://toye.dihou.org/intoice0.htm">写在前面</a></td>
</tr>
<tr>
<td><a href="intoice1.htm" tppabs="http://toye.dihou.org/intoice1.htm">第一部分</a>(.-A)</td>
</tr>
<tr>
<td><a href="intoice2.htm" tppabs="http://toye.dihou.org/intoice2.htm">第二部分</a>(B-B)</td>
</tr>
<tr>
<td><a href="intoice3.htm" tppabs="http://toye.dihou.org/intoice3.htm">第三部分</a>(B-B)</td>
</tr>
<tr>
<td><a href="intoice4.htm" tppabs="http://toye.dihou.org/intoice4.htm">第四部分</a>(C-D)</td>
</tr>
<tr>
<td><a href="intoice5.htm" tppabs="http://toye.dihou.org/intoice5.htm">第五部分</a>(D-F)</td>
</tr>
<tr>
<td><a href="intoice6.htm" tppabs="http://toye.dihou.org/intoice6.htm">第六部分</a>(F-G)</td>
</tr>
<tr>
<td height="19"><a href="intoice7.htm" tppabs="http://toye.dihou.org/intoice7.htm">第七部分</a>(H-I)</td>
</tr>
<tr>
<td><a href="intoice8.htm" tppabs="http://toye.dihou.org/intoice8.htm">第八部分</a>(I-L)</td>
</tr>
<tr>
<td>第九部分(M-P)<img src="tri2.gif" tppabs="http://toye.dihou.org/tri2.gif"></td>
</tr>
<tr>
<td><a href="intoicea.htm" tppabs="http://toye.dihou.org/intoicea.htm">第十部分</a>(P-P)</td>
</tr>
<tr>
<td><a href="intoiceb.htm" tppabs="http://toye.dihou.org/intoiceb.htm">第11部分</a>(P-S)</td>
</tr>
<tr>
<td><a href="intoicec.htm" tppabs="http://toye.dihou.org/intoicec.htm">第12部分</a>(S-T)</td>
</tr>
<tr>
<td><a href="intoiced.htm" tppabs="http://toye.dihou.org/intoiced.htm">第13部分</a>(T-V)</td>
</tr>
<tr>
<td><a href="intoicee.htm" tppabs="http://toye.dihou.org/intoicee.htm">第14部分</a>(V-W)</td>
</tr>
<tr>
<td><a href="intoicef.htm" tppabs="http://toye.dihou.org/intoicef.htm">第15部分</a>(W-Z)</td>
</tr>
<tr>
<td><a href="molu.htm" tppabs="http://toye.dihou.org/molu.htm">返回目录</a></td>
</tr>
</table>
</TD>
<TD WIDTH="510" VALIGN="TOP" NOWRAP>
<TABLE BORDER="0" CELLPADDING="1" CELLSPACING="1" WIDTH="500">
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF"> </TD>
<TD WIDTH="450" BGCOLOR="#CCCCFF">
<FONT SIZE="4" >
<B>SoftICE for WIN95中文命令解说</B>(九)
</FONT>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#339999"> </TD>
<TD WIDTH="450" BGCOLOR="#339999"> <b>Copyright (c) 1999 http://winice.yeah.net</b></TD>
</TR>
</TABLE>
<TABLE BORDER="0" CELLPADDING="1" CELLSPACING="1" WIDTH="500">
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>M</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">传送数据</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<B>M source-address l length dest-address</B>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
source-address: 源数据的起址;
length : 要传送的字节长度;
dest-address : 目的数据块的起址.
用 M 命令将数据块从源地址传送到目的地址.
如M ds:1000 l 2000 es:5000
将2000h个字节从DS:1000h传到ES:5000h处.</PRE>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">无</TD>
</TR>
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>MACRO</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
定义一个宏命令,使之执行一系列SoftICE指令.
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<B>MACRO [ macro-name] | [*] | [= "macro body"]</B>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
macro-name: 3-8个字符的宏名,(不区分大小写);
macro-body: 用分号隔开的一系列SoftICE指令, 首末
加冒号;
* : 删除一个或所有的已定义的宏命令;
= : 定义(或重定义)一个宏命令.
MACRO 命令用于定义SoftICE指令的超集.macro-body
可以包含SoftICE的指令,也可包含宏定义,甚至是当前
的宏定义本身.(这当然会产生递归调用,如果编得不好
的话会产生错误,也没有什么大意思).在这一系列命令
之间用分号(;)隔开,最后一个命令后不用加分号.
macro-body中还可以带入命令行参数,和DOS命令的%1,
%2...一样,合法值在1-8之间.注意一点,macro-body首
尾是用冒号的.所以在宏定义体中如果要用到 \, ", %
时要在前加一 \,这跟C语言的写法是一致的.
macro_name参数用来代表宏名,可以是字母或数字或下
划线组成.可以是现有的宏名, 那样的话就会重定义这
个宏.宏名不可以和现有的SoftICE内部指令相同.会发
生错误.MACRO * 表示删除当前定义的所有(有名字的)
宏.(因为断点的DO 子句实际上也是宏, 不过是无名字
的,它们不能就这样被删除了!)
MACRO mnames * 删除当前名为 mnames 的宏.
MACRO mnames 将编辑名为 mnames 的宏, 在编辑过程
中可以用ESC键取消改动.一个很有用的例子:
:MACRO 1shot = "bpx %1 do \"bc bpindex\""
用这个宏可以设一个一次性断点,非常方便!</PRE>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">宏病毒!</TD>
</TR>
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>MAP32</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
显示当前所有32位模块的内存映象(图).
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<B>MAP32 [module-name | module-handle |address]</B>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
module name : Windows模块名;
module handle: 模块的基址;
address : 落在可执行模块中的地址.
MAP32 不带参数将显示所有的32位模块的信息.加参数
将只显示指定模块的信息.
输出如下:
Owner : 模块名.
OBJ Name: 可执行文件的区段名.
Obj# : 可执行文件中的区段号.
Address : 选择符:偏移量 格式的区段地址.
Size : 区段的大小(字节)
Type : 区段类型:
--------------------
CODE 代码
IDATA 初始化的数据
UDATA 未初始化的数据
RO 只读
RW 读/写
SHARED 对象是共享的.
--------------------</PRE>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">无.</TD>
</TR>
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>MAPV86</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">显示当前虚拟机的DOS内存映象</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>MAPV86 [address]</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
address : 段:偏移量格式的地址
MAPV86 不带参数将显示当前整个虚拟机的内存映象.
加参数将显示指定包含所指定地址的内存区域的信息.
有时侯DOS VM的页没有切进来,所以会有 "PAGE NOT
PRESENT"的出错信息,所以可以再弹出一次.
MAPV86 在配合SYMLOC命令时很有用,因为在Windows
启动前装载的程序,Windows不会自动将它们的符号信
息映射到V86内存,用MAPV86命令就可以取得它们的代
码段,将符号表与之对齐,就可以跟踪调试了.
输出如下:
VM ID : 虚拟机的ID.
VM handle : 32位虚拟机的句柄.
CRS pointer: 虚拟机的32位客户登记表的指针.(?)
VM address : 32位线性地址.
另外,如果SoftICE弹出时CS:IP指向一个MAPV86的入口
,那一行的内容将高亮显示.</PRE>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">无.</TD>
</TR>
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>MOD</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">显示Windows模块列表.</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>MOD [partial-name]</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
partial-name: Windows模块名,(可以是开头的若干个
字母).
MOD 不带参数将显示所有的模块.若加 partial-name,
则符合要求的模块将被列出.输出如下:
module handle: 16位的句柄.
base : 线性基址.
pe-header : 选择符:偏移量格式的PE文件头.
module name : 模块名.(编程序时在.DEF中用NAME或
LIBRARY命名的.)
file name : 文件的路径(全名).</PRE>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">无.</TD>
</TR>
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>O</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">向I/O端口输出数据.</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>O[size] port value</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
size : B 字节(缺省值);W 字;D 双字
port : 端口地址.
value: 要输出字节,字,或双字.
O 命令将立即输出到硬件端口(当然那两个21h和A1h要
等退出SoftICE窗口时才执行)(?)
</pre></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
关于21h和A1端口,二者是关系到中断的, PDF文档在这
写得不是很详细.实际操作情况是多种多样的.</PRE>
</TD>
</TR>
<!--之一-->
<TR>
<TD><IMG SRC="tri1.gif" tppabs="http://toye.dihou.org/tri1.gif"></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">命令:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>P</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">作用:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">单步执行程序.</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">语法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1"><B>P [ret]</B></TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">用法:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
<PRE>
P 命令将单步执行程序.在汇编模式中,当遇到 CALL,
INT,LOOP,REP指令时,P将不跟踪进去,直到这些指令执
行完毕,控制才返回SoftICE,换句话说,P命令是"跨"过
这些指令的.P 后加RET 参数,SoftICE将一直单步执行
直到它找到一条返回语句(RET,RETF).在源程序模式中
,P 命令将执行一个源程序表达式. 但也不跟踪到子例
程中去.P 命令实际上是利用了单步标志, 大多数情况
下是如此.但碰到CALL,INT,LOOP,REP指令时,就用INT 3
(一次性) 在这些指令的后面设一下.
P 命令有快捷键 F10; P RET 命令有快捷键 F12.</PRE>
</TD>
</TR>
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF">点评:</TD>
<TD WIDTH="450" BGCOLOR="#E1F1F1">
F10可能是按得最多的键了,好好保护你的键盘吧!
</TD>
</TR>
</TABLE>
<TABLE BORDER="0" CELLPADDING="1" CELLSPACING="1" WIDTH="500">
<TR>
<TD WIDTH="50" BGCOLOR="#CCCCFF"> </TD>
<TD WIDTH="450" BGCOLOR="#CCCCFF" ALIGN=CENTER>
<A HREF="#anchortop">回到文章的开头
</A>
</TD>
</TR>
</TABLE>
</TABLE>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -