fighter_81
February 21st, 2005, 05:13
Ok i've done some work but the problem is still the same. i just can't unpack the son of a bitch.
This is what i've done. I used 2 different debugger:
Olly and SICE.
With SICE i am be able to find the OEP by setting a breakpoint on SETPROCESSWORKINGSETSIZE.
The program tries to detect it via INT 1. After bypass this trick i found the original entry point of the program. Now the problem is that i just can't rebuild the IAT. In fact the prg steals it by call a memory space out of the code.
So i think:
If i can redirect this space into the code space i can then use the goog IMPREC 1.6 (thanks to MACKT icon_twisted.gif ) to rebuiild the whole IAT.
So i redirect it to an unused space of the code but the problem is that this son of a bitch clears my BPMD on the redirected IAT address.
So i take olly to put ahardware breakpoint on it but the problem is that with olly i just can't reach the OEP so i cannot put a hardware breakpoint on write a dword like all armadillo tutorial on the iat redirected space memory. Another thing is that if i put a breakpoint on WriteProcessMemory to change th bytes and make an infinite loop of the father and after that a breakpoint at WaitForDebugEvent and then PUSH PID of son, and call the DebugActiveProcessStop to attach
the son, when i open the second instance of fighter.exe (Ollyrenamed), i attach to the correct PID that i pushed before, it calls the exitthread and it exits without attach. Any suggestion is pleased and if someone could help me i'll be glad to him/her.
Regards
FIGHTER_81
This is what i've done. I used 2 different debugger:
Olly and SICE.
With SICE i am be able to find the OEP by setting a breakpoint on SETPROCESSWORKINGSETSIZE.
The program tries to detect it via INT 1. After bypass this trick i found the original entry point of the program. Now the problem is that i just can't rebuild the IAT. In fact the prg steals it by call a memory space out of the code.
So i think:
If i can redirect this space into the code space i can then use the goog IMPREC 1.6 (thanks to MACKT icon_twisted.gif ) to rebuiild the whole IAT.
So i redirect it to an unused space of the code but the problem is that this son of a bitch clears my BPMD on the redirected IAT address.
So i take olly to put ahardware breakpoint on it but the problem is that with olly i just can't reach the OEP so i cannot put a hardware breakpoint on write a dword like all armadillo tutorial on the iat redirected space memory. Another thing is that if i put a breakpoint on WriteProcessMemory to change th bytes and make an infinite loop of the father and after that a breakpoint at WaitForDebugEvent and then PUSH PID of son, and call the DebugActiveProcessStop to attach
the son, when i open the second instance of fighter.exe (Ollyrenamed), i attach to the correct PID that i pushed before, it calls the exitthread and it exits without attach. Any suggestion is pleased and if someone could help me i'll be glad to him/her.
Regards
FIGHTER_81