![]() |
|
|
|
#1
|
|||
|
|||
|
Hi,
I tried that way. I can't seem to be able to reverse the algo. I get wierd chars in the code and that also doesn't work in the actual program. The function they use on the name is mov esi,OFFSET NameBuffer cdq @@: mov eax,dword ptr [esi] inc esi add edx,eax shr eax,18h test eax,eax jnz @B Then they do this with the code: mov esi,OFFSET CodeBuffer xor edx,edx xor ecx,ecx @@: inc ecx movzx eax,byte ptr [esi+ecx] not al add dh,al rol edx,5 not al mov dl,al cmp ecx,16 jne @B It compares edx with the previous cksum. I tried reversing the second algo like this: mov ecx,10h xor eax,eax mov edi,OFFSET CodeBuffer @@: mov al,dl not al ror edx,5 sub dh,al not al stosb dec ecx jne @B Its not working. Please help!! Thomas Antony |
|
#2
|
|||
|
|||
|
Different starting points ?
Look at the code block 2, it reads from CodeBuffer[ 1 .. 16 ] to give the EDX; but in your so-called "reversed" code block, it writes to CodeBuffer[ 0 .. 15 ] or CodeBuffer[ -15 .. 0 ] depending upon the direction flag ...
They are NOT reversed to each other at all ((I am afraid you should revise the "reversed" code block to write to CodeBuffer[ 16 .. 1 ] instead, not only the ROR/SUB etc .... |
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Checksum of WinLicnese 2.1.0.10 | ZeNiX | General Discussion | 1 | 01-11-2010 22:32 |
| HEX and checksum | email2 | General Discussion | 3 | 01-05-2004 18:47 |
| CRC CheckSum Problem ( maybe ) | How2Crack | General Discussion | 6 | 06-30-2002 23:42 |