Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Dark Byte, can lend your help :)

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Tutorials -> Auto Assembler tutorials
View previous topic :: View next topic  
Author Message
momocha
Master Cheater
Reputation: 0

Joined: 23 Jul 2006
Posts: 258

PostPosted: Tue Oct 24, 2006 4:02 pm    Post subject: Dark Byte, can lend your help :) Reply with quote

Code:
[enable]
registersymbol(DX)
registersymbol(DXListOffset)
registersymbol(DXType)
registersymbol(EDIValue)

alloc(DX, 1024)
alloc(DXListOffset, 4)
alloc(DXType,4)
alloc(DXFindChar, 1024)
alloc(ESIList, 1024)
alloc(EDIValue, 4)
alloc(DXMap,4)
alloc(Check, 4)

label(CompareOffset)
label(StoreESI)
label(DoNormal)
label(LeaveMe)
label(DXMonster)
label(NoDupe)
label(DoVac)
label(Adding)
label(Minus)

DXListOffset:
add [eax],al
add [eax],al

DXType:
add [eax],al
add [eax],al

Check:
mov eax, [734750]
cmp [eax+DC8], 10
je Adding

cmp [eax+DC8], 20
je Minus

DX:
push eax
push ebx
push ecx
push edx
mov ebx,[DXType]
cmp ebx, 00 // 0 = Do Nothing
je NoDupe

cmp ebx, 01 // 1 = Populate ListOffset
je DXFindChar

cmp ebx, 02 // 2 = Monsters follow you (normal)
je DoVac

cmp ebx, 03 // 3 = Monsters Stay (DupeXMonster)
je DoVac

Adding:
add [EDIValue], 10
jmp DoVac

Minus:
sub [EDIValue], 10
mov eax, 734750
jmp 734750
mov [eax+dc8], 0
jmp DoVac
 
jmp DoNormal

DXFindChar:
mov [esi+114],edi
mov eax,0
mov ebx,DXListOffset
mov ecx,ESIList
mov edx,EDIValue

CompareOffset:
cmp eax,[ebx]
je StoreESI
cmp esi,[ecx+eax*4]
je LeaveMe
inc eax
jmp CompareOffset

StoreESI:
mov [ecx+eax*4],esi
inc eax
mov [ebx],eax
mov [edx],edi

DoVac:
mov ebx,[DXListOffset]
dec ebx
mov ecx,ESIList
mov eax,[ecx+ebx*4]
cmp esi,eax
je DoNormal

mov ebx,[DXType]
cmp ebx, 02 // 2 = Monsters follow you (normal DupeX)
jne DXMonster
mov edi,[eax+114] //Code for DupeX
jmp DoNormal

DXMonster:
cmp ebx, 03 // 3 = DupeXMonster (Monsters stay)
jne NoDupe



mov edi,[EDIValue]  //DupeXMonster Code
jmp DoNormal

NoDupe:
mov ebx, 0
mov [DXListOffset],ebx


DoNormal:
mov [esi+114],edi

LeaveMe:
pop edx
pop ecx
pop ebx
pop eax
jmp 644168  //Only jump that needs to be changed...

[disable]
dealloc(DXFindChar)
dealloc(DXListOffset)
dealloc(ESIList)
dealloc(DX)
dealloc(EDIValue)
unregistersymbol(DX)
unregistersymbol(DXListOffset)
unregistersymbol(DXType)


For this part here:
Code:
Adding:
add [EDIValue], 10
jmp DoVac


Am I doing it right? Does it really add 10 to it because when i do a simple script like:

Code:
[enable]
registersymbol(test)
alloc(Codecave, 11)
alloc(test, 4)

test:
add [eax],al
add [eax],al

Codecave:
mov eax, 10
mov [test], eax

[disable]
registersymbol(test)
alloc(Codecave)
alloc(test)


I assign it to ct and add the test as address but the value show 0, if I was to comment away the 'add [eax], ah' part, the value will be 5000xxxx.

Another question would be this:
How can I change the value for pointer? Suppose my pointer is 734750+DC8, can I do it like this?
Code:
Minus:
sub [EDIValue], 10
mov eax, 734750
jmp 734750
mov [eax+dc8], 0
jmp DoVac


I really need some help, thanks in advance.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25287
Location: The netherlands

PostPosted: Wed Oct 25, 2006 1:07 am    Post subject: Reply with quote

add [edivalue],10 adds 16 to it (10 hex is 16 dec)
you can also do as script:
Code:

[enable]
registersymbol(test)
alloc(Codecave, 11)
alloc(test, 4)

test:
dd 0

Codecave:
mov eax, 10
mov [test], eax

[disable]
unregistersymbol(test)
alloc(Codecave)
alloc(test)


and don't forget to place a jump to your codecave or change eip to go to the codecave (and in your codecave it's recommended to jump back to the original code)

also to access a pointer like 734750 offset dc8 , do it like this:
Code:

push eax //save eax
mov eax,[734750]
mov [eax+dc8],12345 //to make it 12345
pop eax //restore eax

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
supea
Master Cheater
Reputation: 0

Joined: 29 Aug 2006
Posts: 323
Location: Finland

PostPosted: Fri Oct 27, 2006 7:16 am    Post subject: Reply with quote

so if i wanna make 1 pointer chanse 1 pointer should i do it like this?
Code:
mov eax,[123456]
mov [eax+123],eax
mov eax,[32165]
mov [eax+321],eax
or somthing like that?
Back to top
View user's profile Send private message
momocha
Master Cheater
Reputation: 0

Joined: 23 Jul 2006
Posts: 258

PostPosted: Sat Oct 28, 2006 9:24 am    Post subject: Reply with quote

supea wrote:
so if i wanna make 1 pointer chanse 1 pointer should i do it like this?
Code:
mov eax,[123456]
mov [eax+123],eax
mov eax,[32165]
mov [eax+321],eax
or somthing like that?



Maybe something like that:
Code:
push eax
push ebx
push ecx
mov eax,[123456]
mov ebx,[eax+123]
mov ecx,[32165]
mov [ecx+321], ebx
pop eax
pop ebx
pop ecx


DarkByte, the value in the pointer still doesn't change when i use the dupex script, is it there is error with my script?
mov eax,[734750]
mov [eax+dc8],12345

How does AA script work? Does it loop continuously for the dupex script above or when I change dxtype to 3 it will only do the part that it jump to?
Back to top
View user's profile Send private message
Flameboy1136
How do I cheat?
Reputation: 0

Joined: 24 Sep 2007
Posts: 9
Location: In front of my computer as allways

PostPosted: Mon Sep 24, 2007 7:35 pm    Post subject: Reply with quote

i don't understand any of this. Can someone give me a link to the faq for it?
_________________
Don't be giving me the evils!
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine Tutorials -> Auto Assembler tutorials All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites