能力值:
( LV2,RANK:10 )
|
-
-
26 楼
多谢钱老师的负责。
|
能力值:
( LV2,RANK:10 )
|
-
-
27 楼
感谢钱老师。。
|
能力值:
( LV2,RANK:10 )
|
-
-
28 楼
当我翻看了第二章的前八页的时候,我觉得我所获得的知识早已超过了这本书的价格了,内容深入浅出,非常感谢作者。。。
|
能力值:
( LV3,RANK:20 )
|
-
-
29 楼
35页那貌似还有个错误,引用作为参数传递时貌似不会拷贝,调试了下,应该是直接修改同一块内存。当然我不肯定
|
能力值:
( LV3,RANK:30 )
|
-
-
30 楼
我买了这本书了 哈哈
|
能力值:
( LV2,RANK:10 )
|
-
-
31 楼
P125,第一行末尾和第二行,但有一个地址却不是case语句块的首地址,比较容易让人误解首地址是0x00401187,而我回头一看发现那却是结束地址,于是一头雾水,后来再看才明白。应该是这样:
但有一个地址:0x00401187,却不是case语句块的首地址。
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
P216,上面汇编代码中的lea eax, [ebp-8]改为lea eax, [ebp-4]更合理。
|
能力值:
( LV2,RANK:10 )
|
-
-
33 楼
p23页,代码清单2-2中,是否应该是 // fFloat 等于0 ?
|
能力值:
( LV2,RANK:10 )
|
-
-
34 楼
钱老师,p77页第一个公式可能弄错了。
http://pan.baidu.com/share/link?shareid=5674&uk=2670009238 // 图片地址。
|
能力值:
(RANK:50 )
|
-
-
35 楼
嗯,确实是寄存器弄错了,下次印刷的时候改正。
|
能力值:
( LV4,RANK:50 )
|
-
-
36 楼
入手的是3次印刷版,发现以下勘误(不知后面发行版本是否存在此问题,特贴出):
P92:
AND 运算上面源码应为:argc = argc & 0x0000FFFF 才能与C++源码对上号
P121
004011EF 应该为:cmp dword prt[ebp-4],64h
上面源码也要改: nIndex == 100
P188
g_nArry 应该为 g_nArray
另: int * pInt = &g_Arry 应为: int * pInt = &g_Array[0]; 少了[0]和分号
后面的还没看完~~~
|
能力值:
( LV2,RANK:10 )
|
-
-
37 楼
p315页,代码清单13-1中,压入异常编号上一行代码,lea eax, [ebp - 1Ch] 是否应该改成 lea eax, [ebp - 14h] . ???
|
能力值:
( LV2,RANK:10 )
|
-
-
38 楼
p329 页,代码清单13-9中的 类名 Excepction 应该是Exception ???
|
能力值:
( LV2,RANK:10 )
|
-
-
39 楼
钱老师,p349页,第一行,是否应该是“在地址0x00438C20下断点”呀,
|
能力值:
( LV2,RANK:10 )
|
-
-
40 楼
p352页,代码清单14-4中,lea ecx,dword ptr ss:[esp+20] 不是数组的首地址吧?
|
能力值:
( LV2,RANK:10 )
|
-
-
41 楼
idiv 可以是多个操作数吗?
我查了很多资料,都没提到idiv可带多个操作数.
反汇编与逆向分析技术揭秘
p63底部
idiv eax,dword ptr [ebp-8]
|
能力值:
( LV2,RANK:10 )
|
-
-
42 楼
p301 倒数第二行,它们的父亲为CSofaBed,应该是CFurniture吧
|
能力值:
( LV2,RANK:10 )
|
-
-
43 楼
记一下 ,
|
能力值:
( LV2,RANK:10 )
|
-
-
44 楼
《C++反汇编与逆向分析技术揭秘》好书,一起学习!
|
能力值:
( LV2,RANK:10 )
|
-
-
45 楼
第14页 代码清单1-3末尾
//对当前分析指令地址下表加 2 字节偏移量
++(*Index)
应该改为
//对当前分析指令地址下表加 1 字节偏移量
++(*Index)
吧(不知道是不是这样,说错了不怪我哈 ^_^)
|
能力值:
( LV2,RANK:10 )
|
-
-
46 楼
P317的EXCEPTION_RECORD结构,书中为:
EXCEPTION_RECORD struct
ExceptionCode dd ?
Exception***as dd ?
lpExceptionRecord dd ?
ExceptionAddress dd ?
NumberParameters dd ?
MagicNumber dd ?
MSDN为:
typedef struct _EXCEPTION_RECORD {
DWORD ExceptionCode;
DWORD ExceptionFlags;
struct _EXCEPTION_RECORD *ExceptionRecord;
PVOID ExceptionAddress;
DWORD NumberParameters;
ULONG_PTR ExceptionInformation[EXCEPTION_MAXIMUM_PARAMETERS];
} EXCEPTION_RECORD, *PEXCEPTION_RECORD;
最后一个成员写错了吧
|
能力值:
( LV4,RANK:50 )
|
-
-
47 楼
不知道我理解的对不对
p211
对齐的大小为2字节,
那么结构体
struct{
char cChar;
char cArray[4];
short sShort;
}
中
cChar 所在地址为0x0012ff00-0x0012ff01,占2个字节(多余的一个字节是填充的)
cArrary[4]所在的地址为0x0012ff02-0x0012ff05,占4个字节,无填充
sShot所在的地址为0x0012ff06-0x0012ff07,占2个自己,无填充
作者下面的描述是不是也错了啊,最后说无需填入就可满足,很显然是需要再cChar后面填充1个字节才能满足啊。
|
能力值:
( LV2,RANK:10 )
|
-
-
48 楼
呃 我看错了
|
能力值:
( LV2,RANK:10 )
|
-
-
49 楼
正在拜读!同时希望结交志同道合的朋友!
|
能力值:
( LV2,RANK:10 )
|
-
-
50 楼
我也在读,加个好友315-102821
|
|
|