需要帮助解密我的汇编程序吗 我在C++中有这个加密程序,ASM有加密程序,但我需要知道 它的解密例程应该是什么样子。 代码如下: //-ENCRYPTION ROUTINES void encrypt_chars (int length, char EKey) { char temp_char; for (int i = 0; i < length; i++) { temp_char = OChars [i]; __asm { push eax push ecx movzx ecx,temp_char lea eax,EKey call encrypt mov temp_char,al pop ecx pop eax } EChars [i] = temp_char; } return; // --- Start of Assembly code __asm { encrypt5: push eax mov al,byte ptr [eax] push ecx and eax,0x7C ror eax,1 ror eax,1 inc eax mov edx,eax pop ecx pop eax mov byte ptr [eax],dl xor edx,ecx mov eax,edx rol al,1 ret encrypt: mov eax,ecx inc eax ret } //--- End of Assembly code } /-加密例程 void encrypt_字符(int-length,char-EKey) {char temp_char; for(int i=0;i

需要帮助解密我的汇编程序吗 我在C++中有这个加密程序,ASM有加密程序,但我需要知道 它的解密例程应该是什么样子。 代码如下: //-ENCRYPTION ROUTINES void encrypt_chars (int length, char EKey) { char temp_char; for (int i = 0; i < length; i++) { temp_char = OChars [i]; __asm { push eax push ecx movzx ecx,temp_char lea eax,EKey call encrypt mov temp_char,al pop ecx pop eax } EChars [i] = temp_char; } return; // --- Start of Assembly code __asm { encrypt5: push eax mov al,byte ptr [eax] push ecx and eax,0x7C ror eax,1 ror eax,1 inc eax mov edx,eax pop ecx pop eax mov byte ptr [eax],dl xor edx,ecx mov eax,edx rol al,1 ret encrypt: mov eax,ecx inc eax ret } //--- End of Assembly code } /-加密例程 void encrypt_字符(int-length,char-EKey) {char temp_char; for(int i=0;i,c++,assembly,C++,Assembly,解密的最佳线索(与问题一样一般): 撤销一切 我猜代码中的每一条指令都有一个保守的反面(除非它在数据中被破坏,但是嘿) 因此,如果代码以以下内容结尾: inc eax ret 你从 [load the return in eax] dec eax 诸如此类。到目前为止,你得到了什么?这是一个简单的字节字符=(字符+1)%256。现在你可以反转它…这基本上是我所有的代码,所以我只需要基本上知道如何反转代码中“/--Start of assembly code”下面所示的汇编代码。还有谁能告诉我

解密的最佳线索(与问题一样一般):

撤销一切

我猜代码中的每一条指令都有一个保守的反面(除非它在数据中被破坏,但是嘿)

因此,如果代码以以下内容结尾:

inc eax
ret
你从

[load the return in eax]
dec eax

诸如此类。

到目前为止,你得到了什么?这是一个简单的字节字符=(字符+1)%256。现在你可以反转它…这基本上是我所有的代码,所以我只需要基本上知道如何反转代码中“/--Start of assembly code”下面所示的汇编代码。还有谁能告诉我一些代码的注释,因为有些代码我不喜欢ror eax,1以及mov字节ptr[eax],dlHmm。。。这么说你对组装没什么兴趣?这将是一条比预期更长的路(但不是一直都是吗?)。我并不是说你不礼貌,但也许你应该在进一步研究之前多研究一下。这是一个很好的参考(hhmmm…难道你不能在代码中抛出所有可能的字符并保存输出吗?)(然后使用该表进行解密?)