![]() |
|
|
|
#1
|
|||
|
|||
|
Can anyone confirm my observation of the difference between the last exception routine code when there are stolen bytes and when there are none? I've only seen this one target without stolen bytes. Just to recap, those I've had time to play with or have read tuts about with stolen bytes seem to have the last part of the last exception routine in the form:
00D23D38 FF30 PUSH DWORD PTR DS:[EAX] 00D23D3A FF75 F0 PUSH DWORD PTR SS:[EBP-10] 00D23D3D FF75 EC PUSH DWORD PTR SS:[EBP-14] 00D23D40 C3 RETN 00D23D41 5F POP EDI 00D23D42 5E POP ESI 00D23D43 5B POP EBX 00D23D44 8BE5 MOV ESP,EBP 00D23D46 5D POP EBP 00D23D47 C3 RETN and this one without stolen bytes ends with: 00A10050 FF75 F0 PUSH DWORD PTR SS:[EBP-10] 00A10053 FF65 EC JMP DWORD PTR SS:[EBP-14] 00A10056 5F POP EDI 00A10057 5E POP ESI 00A10058 5B POP EBX 00A10059 8BE5 MOV ESP,EBP 00A1005B 5D POP EBP 00A1005C C3 RETN Regards,
__________________
JMI |
|
#2
|
|||
|
|||
|
Quote:
Target: VCD cutter. (Since it's "ASPR" too I'm posting it here. Sorry for going off topic.) I'm free now and I'll try this "recall pro" too. Interesting discussion with JMI involved ![]() Regards, ferrari
|
|
#3
|
|||
|
|||
|
ferrari:
Did you install VCD Cutter on XP? XP put up a warning that it was not approved for XP and cautioned against installing it. Regards,
__________________
JMI |
|
#4
|
|||
|
|||
|
VCD cutter v4.1.3
It's a single "Exe" with no setup required. I see no warning when I run it on XP. Even though My "Driver Signing option" in Mycomputer-->properties-->Hardware is enabled. One strange finding. When I unpacked it I get that "Warning" and the program will not run(possible wrong unpacking). Regards, |
|
#5
|
|||
|
|||
|
ferrari:
You are correct it is a single "exe" with no setup. Being in a hurry to check the last exception routine, I didn't pay any attention to what my eyes observed and simply clicked on it to "install" and got the warning. But, that temporary insanity aside, I did run the exe in OllyDbg and found it's last exception routine, which certainly appears to indicate my speculation of an easy difference between the last exception routines of those with and those without stolen bytes is not the case. VCD Cutter's last exception routine ends as do the other routines with stolen bytes: 00B32D08 FF75 F0 PUSH DWORD PTR SS:[EBP-10] 00B32D0B FF75 EC PUSH DWORD PTR SS:[EBP-14] 00B32D0E C3 RETN so there must be some other reason for RecAllPro's last exception ending with: 00A10050 FF75 F0 PUSH DWORD PTR SS:[EBP-10] 00A10053 FF65 EC JMP DWORD PTR SS:[EBP-14] 00A10056 5F POP EDI 00A10057 5E POP ESI 00A10058 5B POP EBX 00A10059 8BE5 MOV ESP,EBP 00A1005B 5D POP EBP 00A1005C C3 RETN Thanks for the quick reply with a target to check. Regards,
__________________
JMI Last edited by JMI; 05-01-2004 at 03:20. |
|
#6
|
|||
|
|||
|
vcd...
you will run into some anti-dump checks with that version after unpacking including a Getfilesize call but something more of a problem a bit later that causes it to crash, couldn't nail it with olly on win2000 and don't have softice option
plus it doesn't run on win98se so I got bored.Quote:
Last edited by Jay; 05-01-2004 at 03:27. |
|
#7
|
|||
|
|||
|
Hi Jay:
You simply misunderstood my comment. I was previously speculating on the "code" in the last exception routine. RecAllPro was the only target I had tried which had NO stolen bytes and the "code" in its last exception routine had a "00A10053 FF65 EC JMP DWORD PTR SS:[EBP-14]," whereas, all the last exception routines I had seen or read in tuts seemed to have: 00B32D0B FF75 EC PUSH DWORD PTR SS:[EBP-14] Clearly VCD Cutter has NO stolen bytes. That was a given, because it was the reason ferrari referred me to check it out. So the phrase you quoted simply means that the routine in VCD Cutter, which has NO stolen bytes, ends with the same code as does the last exception code of targets which DO have stolen bytes. The "stolen bytes" themselves, if they have been stolen, are not in this part of the ASPR code and are found in the section of the code which is later erased by: MOV EDI,Starting Address of Code to be erased MOV ECX,Number of Bytes to erase REP STOS BYTE PTR ES:[EDI] and would be found in the target's original "packed" code, such as this sample, from a different target: 00D3782F 55 PUSH EBP <---STOLEN BYTES 00D37830 8BEC MOV EBP,ESP <---STOLEN BYTES 00D37832 81EC 10000000 SUB ESP,10 <---STOLEN BYTES 00D37838 F2: PREFIX REPNE: 00D37839 EB 02 JMP SHORT 00D3783D 00D3783B CD 20 INT 20 00D3783D F2: PREFIX REPNE: 00D3783E EB 01 JMP SHORT 00D37841 00D37840 9A 83EC1C83 C418 CALL FAR 18C4:831CEC83 00D37841 83EC 1C SUB ESP,1C 00D37844 83C4 18 ADD ESP,18 00D37847 26:EB 02 JMP SHORT 00D3784C 00D3784A CD 20 INT 20 00D3784C 53 PUSH EBX <---STOLEN BYTES plus the usual final addition of a MOV EAX, OEP. Hope I made it more clear this time. Regards,
__________________
JMI Last edited by JMI; 05-01-2004 at 04:08. |
|
#8
|
|||
|
|||
|
Quote:
|
|
#9
|
|||
|
|||
|
Regards to all at exetools forum,
peid say asprotect 1.22-1.23 beta 21,load app in olly patch debuger check,go to last exception put breakpoint at ret,olly break,but when i run trace or put breakpoint at code section nothing is happen,olly start tracing and never end. anyone have this problem? |
|
#10
|
|||
|
|||
|
some asprotected targets have antitrace loop, once it does that , F12 and set bp after jnz, F9, then control+F11 to trace again.
Last edited by britedream; 05-01-2004 at 12:45. |
|
#11
|
|||
|
|||
|
thanks britedream for fast and useful answer,i follow your instruction and problem is solved
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Aspr anyone know this one? | hobferret | General Discussion | 16 | 05-13-2015 22:54 |
| ASPR, ARMA question | sgdt | General Discussion | 3 | 04-09-2006 03:38 |
| More Aspr 1.31 | SvensK | General Discussion | 0 | 06-09-2004 22:52 |
| Newbie question ASPR 1.23 RC4 (long!) | Wurstgote | General Discussion | 126 | 02-27-2004 11:41 |