文章导航PC6首页软件下载单机游戏安卓资源苹果资源

pc软件新闻网络操作系统办公工具编程服务器软件评测

安卓新闻资讯应用教程刷机教程安卓游戏攻略tv资讯深度阅读综合安卓评测

苹果ios资讯苹果手机越狱备份教程美化教程ios软件教程mac教程

单机游戏角色扮演即时战略动作射击棋牌游戏体育竞技模拟经营其它游戏游戏工具

网游cf活动dnf活动lol周免英雄lol礼包

手游最新动态手游评测手游活动新游预告手游问答

您的位置:首页精文荟萃破解文章 → 谈谈softice中d的用法

谈谈softice中d的用法

时间:2004/10/15 0:48:00来源:本站整理作者:蓝点我要评论(1)

 

谈谈softice中d的用法

所有的cracker都使用过softice中d的功能,比如d eax来看eax指向的内存中是什么。

不过,有些人可能不知道d的功能远不止此。

如果需要看看eax指向的内存中其地址指向的内存地址你会怎么做?比如eax=493576,你d 493576,发现那里的内存是1A22D23,于是你再d 1A22D23,发现里面放的是你的注册名,那么,如何一次性地指向1A22D23呢?

无论在softice或者trw2000中,都可以使用d *eax这个命令,注意前面的*,就是它,使得softice一下子就知道你需要指向eax内存处指向的地方。

此外,对于浮点运算很多cracker很头疼。下面我举个例子如何使用d来简化我们的工作。

让我们来看看Trojan Remover 4.2.9吧。在其注册中有这么一段:

016F:004B0531  LEA      EAX,[EBP-18]
016F:004B0534  MOV      EDI,EBX
016F:004B0536  MOV      EDX,[EBP-04]
016F:004B0539  MOV      DL,[EDX+EDI-01]      <------ 序列号的第一个字符
016F:004B053D  CALL    `VCL30!System.@LStrFromChar@001FB870`
016F:004B0542  MOV      EAX,[EBP-18]
016F:004B0545  CALL    `VCL30!SysUtils.StrToInt@0F6FDFF6`
016F:004B054A  CMP      EAX,BYTE +02         
016F:004B054D  JNL      004B0593              <------ >=2
016F:004B054F  LEA      EAX,[EBP-18]          <------ <2
016F:004B0552  MOV      EDX,[EBP-04]
016F:004B0555  MOV      DL,[EDX+EDI-01]
016F:004B0559  CALL    `VCL30!System.@LStrFromChar@001FB870`
016F:004B055E  MOV      EAX,[EBP-18]
016F:004B0561  CALL    `VCL30!SysUtils.StrToInt@0F6FDFF6`
016F:004B0566  ADD      EAX,BYTE +03
016F:004B0569  JNO      004B0570
016F:004B056B  CALL    `VCL30!System.@IntOver@51F89FF7`
016F:004B0570  IMUL    EAX,EAX,BYTE +51      <------ x51H 放到eax里
016F:004B0573  JNO      004B057A
016F:004B0575  CALL    `VCL30!System.@IntOver@51F89FF7`
016F:004B057A  MOV      EDI,EAX
016F:004B057C  LEA      EDX,[EBP-18]
016F:004B057F  MOV      EAX,EDI
016F:004B0581  CALL    `VCL30!SysUtils.IntToStr@0F6FDFF6`
016F:004B0586  MOV      EDX,[EBP-18]
016F:004B0589  LEA      EAX,[EBP-08]
016F:004B058C  CALL    `VCL30!System.@LStrCat@51F89FF7`
016F:004B0591  JMP      SHORT 004B05CB
016F:004B0593  LEA      EAX,[EBP-18]
016F:004B0596  MOV      EDX,[EBP-04]
016F:004B0599  MOV      DL,[EDX+EDI-01]
016F:004B059D  CALL    `VCL30!System.@LStrFromChar@001FB870`
016F:004B05A2  MOV      EAX,[EBP-18]
016F:004B05A5  CALL    `VCL30!SysUtils.StrToInt@0F6FDFF6`
016F:004B05AA  IMUL    EAX,EAX,BYTE +2F
016F:004B05AD  JNO      004B05B4
016F:004B05AF  CALL    `VCL30!System.@IntOver@51F89FF7`
016F:004B05B4  MOV      EDI,EAX
016F:004B05B6  LEA      EDX,[EBP-18]
016F:004B05B9  MOV      EAX,EDI
016F:004B05BB  CALL    `VCL30!SysUtils.IntToStr@0F6FDFF6`
016F:004B05C0  MOV      EDX,[EBP-18]
016F:004B05C3  LEA      EAX,[EBP-08]
016F:004B05C6  CALL    `VCL30!System.@LStrCat@51F89FF7`
016F:004B05CB  INC      EBX
016F:004B05CC  DEC      ESI
016F:004B05CD  JNZ      NEAR 004B0531
016F:004B05D3  MOV      EAX,[EBP-08]
016F:004B05D6  CALL    `VCL30!SysUtils.StrToFloat@044134E0`
016F:004B05DB  FSTP    TWORD [EBP-12]      <---------- 记着打开softice的浮点窗口
016F:004B05DE  WAIT   
016F:004B05DF  FLD      TWORD [EBP-12]
016F:004B05E2  FLD      TWORD [004B0674]
016F:004B05E8  FMULP    ST1
016F:004B05EA  FLD      TWORD [004B0680]
016F:004B05F0  FSUBP    ST1
016F:004B05F2  FSTP    TWORD [EBP-12]
016F:004B05F5  WAIT   
016F:004B05F6  JMP      SHORT 004B0612
016F:004B05F8  MOV      EAX,[EBP-04]
016F:004B05FB  CALL    `VCL30!SysUtils.StrToInt@0F6FDFF6`
016F:004B0600  MOV      [EBP-1C],EAX

我们在4B05DB处打开了浮点窗口(用wf命令),这条命令会将浮点栈ST0的数字保存到了EBP-12处,先记下浮点栈里显示的数字,然后F8单步到4B05DE,我们先用d ebp-12看看,看见一堆的byte,相信我们中很多人记不住浮点格式吧,就算记住了你会去计算它一下吗?显然不会!那怎么办?盲人摸象?不!我们来试试dt ebp-12。看到什么了?就是刚才从浮点栈里保存去的数字!

这是怎么一回事?看看这一段解释(摘自Softice4命令中文解说,太平洋软件资讯站):

命令: D
作用: 显示某内存区域的内容
语法: D[size] [address [l length]]
用法:         
size: B 字节; W 字; D 双字; S 短实型; L 长实型;
      T 10b长实型
D  命令在所指定的内存区域开始显示指定长度的内存
单元内容. 格式将根据size来变.对于双字类型, 将分
两种情况:

1.如果指定地址为32位的段, 格式为32bytes的16进制值(即8位16进制值)



2.如果指定地址为16位的段, 则格式为16:16指针的形式(即4:4位16进制值)




如果没有指定地址,D 命令将继上次命令后的地址开始显示.如果数据窗口可见,则结果在数据窗口中显示,否则显示在命令窗口中.但若用了参数L 和长度, 则结果不论数据窗口可见还是不可见,都显示在命令窗口中.

点评: 无

有些意思吧?


 


    
    
     
    
    
     

相关阅读 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破解如何给软件脱壳基础教程