dezuzi Expert Cheater
Reputation: 0
Joined: 09 Aug 2006 Posts: 146 Location: In your washing machine
|
Posted: Tue Aug 15, 2006 8:59 pm Post subject: a PROBLEM or just wrong way of doing it? [Code injection] |
|
|
hi for some reason this assembly code does compare all the values it has to, except the jumps dont seem to function properly, since it jumps to the next even if it DOES equal 85
[code]
alloc(newmem,2048) //2kb should be enough
label(returnhere)
label(originalcode)
label(ONE)
label(TWO)
label(THREE)
label(FOUR)
label(FIVE)
label(SIX)
0073B890:
jmp newmem
nop
nop
nop
nop
returnhere:
newmem:
cmp eax,85
jne ONE
mov eax,23
ONE:
cmp ebx,85
jne TWO
mov ebx,23
TWO:
cmp ecx,85
jne THREE
mov ecx,23
THREE:
cmp edx,85
jne FOUR
mov edx,23
FOUR:
cmp esi,85
jne FIVE
mov esi,23
FIVE:
cmp edi,85
jne SIX
mov edi,23
SIX:
push esi
mov esi,ecx
cmp esi,00000222
jmp returnhere
originalcode:
push esi
mov esi,ecx
cmp esi,00000222
[/code]
i hope i did something wrong here, and hope that someone can help me out here
|
|
dezuzi Expert Cheater
Reputation: 0
Joined: 09 Aug 2006 Posts: 146 Location: In your washing machine
|
Posted: Wed Aug 16, 2006 8:33 am Post subject: |
|
|
im most definitely sure its hex is 85 since ive set breakpoints to record the whole process.
it seems really weird it doesnt work,
it seems that if eax is 85 it does make it 23,
but if something else in the current process is 85 as well it just doesnt seem to compare it properly thus skipping the procedure it has to follow
|
|