什么是适用组件数组?

逆向工程 补丁反转 德尔福
2021-07-03 08:12:36

我一直在挖掘,发现一堆代码总是重复指令,我的朋友建议它是文本计算,他说delphi参数使用eax、edx和ecx。我想根据以下代码中的用途知道什么是适用组件数组?

有人可以告诉我这段代码发生了什么,它真的是文本计算吗?

为什么 005A6D9D push dword ptr [ebx+esi*4+0C] 将 00000018 放在堆栈上而不是 00000011?

这是代码的一部分

 005A6D66 mov ebx,dword ptr [ebx+esi*4+1DC] 
 005A6D6D push ebx 
 005A6D6E imul ebx,edx,2E2B 
 005A6D74 imul edi,eax,91B7C 
 005A6D7A lea edi,[edi*8+5FD208]; gvar_005FD208:array[101] of TApplicableComponents 
 005A6D81 push dword ptr [edi+ebx*4+4] 
 005A6D85 imul ebx,edx,2E2B 
 005A6D8B imul edi,eax,91B7C 
 005A6D91 lea edi,[edi*8+5FD208]; gvar_005FD208:array[101] of TApplicableComponents 
 005A6D98 lea ebx,[edi+ebx*4] 
 005A6D9B push ebx 
 005A6D9C pop ebx 
 005A6D9D push dword ptr [ebx+esi*4+0C] 
 005A6DA1 imul edx,edx,2E2B 
 005A6DA7 imul eax,eax,91B7C 
 005A6DAD lea eax,[eax*8+5FD208]; gvar_005FD208:array[101] of TApplicableComponents 
 005A6DB4 lea eax,[eax+edx*4] 
 005A6DB7 mov ecx,dword ptr [eax+esi*4+10] 
 005A6DBB pop edx 
 005A6DBC pop eax 
 005A6DBD call 005A3FA8 

提前致谢

0个回答
没有发现任何回复~