问题描述
我正在使用x64dbg检查.DLL的反汇编.
I'm using x64dbg to inspect the disassembly of a .DLL.
在程序集的几个点处,我连续看到几条Int3指令.
At several points in the assembly I see several Int3 instructions in a row.
00007FFA24BF1638 | CC | int3 |
00007FFA24BF1639 | CC | int3 |
00007FFA24BF163A | CC | int3 |
00007FFA24BF163B | CC | int3 |
00007FFA24BF163C | CC | int3 |
00007FFA24BF163D | CC | int3 |
00007FFA24BF163E | CC | int3 |
00007FFA24BF163F | CC | int3 |
该指令用于调试/断点吧?那么,为什么要连续这么多呢?考虑到此DLL是用VC ++发行版配置编译的,为什么还没有呢?
This instruction is used for debugging / break points right? So then why are there so many in a row, and why is there any at all considering this DLL was compiled with a release configuration VC++.
推荐答案
可能只是填充,它们将永远不会执行.我假设下一个函数从16字节对齐的 00007FFA24BF1640
开始,并且上一个函数大概在这些指令之前结束.
It's probably just padding, they won't ever be executed. I assume the next function begins at 00007FFA24BF1640
which is 16 byte aligned, and the preceding function presumably ends before these instructions.
这篇关于连续几个int3的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!