LaBBa
March 22nd, 2003, 20:28
hi all ...
i know that this was talked before but i didn't found anything to help me...
i have tried to unpack a prog called :
System Cleaner v4.88 build 106
i found the Stolen bytes and replace them and restor the IAT
but the prog still crash...
so i traced it and found this
copy from OllyDbg)
00404AF4 PUSH EBP
00404AF5 PUSH _SYSTEMC.00404B22
00404AFA PUSH DWORD PTR FS:[EDX]
00404AFD MOV DWORD PTR FS:[EDX],ESP
00404B00 CMP ESI,EBX
00404B02 JLE SHORT _SYSTEMC.00404B18
00404B04 MOV EAX,DWORD PTR DS:[EDI+EBX*8]
00404B07 INC EBX
00404B08 MOV DWORD PTR DS:[587640],EBX
00404B0E TEST EAX,EAX
00404B10 JE SHORT _SYSTEMC.00404B14
00404B12 CALL EAX
00404B14 CMP ESI,EBX
00404B16 JG SHORT _SYSTEMC.00404B04
i have found out the in the Packed file the registers Values are
deffrent from the unpacked file so at the 8 time the loop is made it jumps to a invalid place...
i have upacked it using PE-Editor and i cant find why the values are deffrent...
well its seems like all the values are biger the the packed values in the register by 1000h ....
weird...
btw.. ASPR stripper XP can unpack it well ... i just wonder why
the manual unpacking didn't worked as well ???
i used win98 to unpack... and OllyDbg 1.09b as a debugger...
i know that this was talked before but i didn't found anything to help me...
i have tried to unpack a prog called :
System Cleaner v4.88 build 106
i found the Stolen bytes and replace them and restor the IAT
but the prog still crash...
so i traced it and found this

00404AF4 PUSH EBP
00404AF5 PUSH _SYSTEMC.00404B22
00404AFA PUSH DWORD PTR FS:[EDX]
00404AFD MOV DWORD PTR FS:[EDX],ESP
00404B00 CMP ESI,EBX
00404B02 JLE SHORT _SYSTEMC.00404B18
00404B04 MOV EAX,DWORD PTR DS:[EDI+EBX*8]
00404B07 INC EBX
00404B08 MOV DWORD PTR DS:[587640],EBX
00404B0E TEST EAX,EAX
00404B10 JE SHORT _SYSTEMC.00404B14
00404B12 CALL EAX
00404B14 CMP ESI,EBX
00404B16 JG SHORT _SYSTEMC.00404B04
i have found out the in the Packed file the registers Values are
deffrent from the unpacked file so at the 8 time the loop is made it jumps to a invalid place...
i have upacked it using PE-Editor and i cant find why the values are deffrent...
well its seems like all the values are biger the the packed values in the register by 1000h ....
weird...
btw.. ASPR stripper XP can unpack it well ... i just wonder why
the manual unpacking didn't worked as well ???
i used win98 to unpack... and OllyDbg 1.09b as a debugger...