逆向工程,左移7位
|
我一直在尝试对游戏功能进行逆向工程,但是我有点困惑。我是逆向工程的新手(我正在使用ollydbg btw),所以我还真的不知道所有的技巧和细节。
无论如何,这是我的问题。当您拾取游戏中的任何物品时,将调用此函数。然后,它计算项目的价值,并将该价值添加到您的分数中。在调用该函数之前,会推送一个值,我非常确定该值是项的ID。
这是令我困惑的代码:
SHL ESI,7
MOV CX,WORD PTR DS:[EDX+ESI+42]
ESI =物料的ID
EDX =恒定值FE56A0
我猜想EDX(FE56A0)是项数组的开始,ESI是项的索引,而42则是项所持有的值的索引。不过这有点奇怪,因为您将ESI左移了7。随着ESI的增加,它的移位值不会线性增长。
因此,如果EDX表示数组的开头,而ESI将是索引,则数组中的项目大小将不相等。
这段代码的含义使我感到困惑。
任何人都知道此代码可以代表什么?
没有找到相关结果
已邀请:
2 个回复
扦帽次杏
等等 此代码段仅访问存储在数组中的结构的成员。
缝皋