I'm fine thanks
Why the asm put this : dword ptr when x64 reg is in use
QQ-Can you tell me what this means:
fild [eax+10]
fstp st(0)
fstp [eax+10]
I mean come on.
Peace
First off your comparing a memory address with an immediate, you don't declare a source or destination registry. So there is not a 64 bit registry in use.
Code: Select all
DF /0 FILD m16int Valid Valid Push m16int onto the FPU register stack.
DB /0 FILD m32int Valid Valid Push m32int onto the FPU register stack.
DF /5 FILD m64int Valid Valid Push m64int onto the FPU register stack.
D9 /2 FST m32fp Valid Valid Copy ST(0) to m32fp.
DD /2 FST m64fp Valid Valid Copy ST(0) to m64fp.
DD D0+i FST ST(i) Valid Valid Copy ST(0) to ST(i).
D9 /3 FSTP m32fp Valid Valid Copy ST(0) to m32fp and pop register stack.
DD /3 FSTP m64fp Valid Valid Copy ST(0) to m64fp and pop register stack.
DB /7 FSTP m80fp Valid Valid Copy ST(0) to m80fp and pop register stack.
DD D8+i FSTP ST(i) Valid Valid Copy ST(0) to ST(i) and pop register stack.
[Link]CMP r/m32,imm32
CMP r/m64,imm32
Code: Select all
mov qword ptr [rax],0
mov dword ptr [rax],0
mov word ptr [rax],0
mov byte ptr [rax],0
Code: Select all
memTest - 48 C7 00 00000000 - mov [rax],00000000 { 0 }
030E0047- C7 00 00000000 - mov [rax],00000000 { 0 }
030E004D- 66 C7 00 0000 - mov word ptr [rax],0000 { 0 }
030E0052- C6 00 00 - mov byte ptr [rax],00 { 0 }
030E0055- C3 - ret
Code: Select all
48 c7 00 00 00 00 00 mov QWORD PTR [rax],0x0
Better to Remain Silent and Be Thought a Fool than to Speak and Remove All Doubt
- Abraham Lincoln
Code: Select all
fild [eax+10]
fstp st(0)
fstp [eax+10]
Code: Select all
fild [eax+10]
fstp st(0)
ShyTwig16 wrote: ↑Fri Jan 19, 2018 7:26 amThis:Is not the same as this:Code: Select all
fild [eax+10] fstp st(0) fstp [eax+10]
Code: Select all
fild [eax+10] fstp st(0)
It's actually all valid, and out of context not much of any thing. Looks nonsensical but still valid. ASM makes on distinction from nonsense opcode and working opcode, I just does what ever you tell it to do.
Code: Select all
memTest - DB 40 10 - fild dword ptr [eax+10]
003E0043- DDD8 - fstp st(0)
003E0045- D9 58 10 - fstp dword ptr [eax+10]
003E0048- C3 - ret
I'm apologizeSTN wrote: ↑Fri Jan 19, 2018 8:12 amShh...we have a discord (you guys can communicate real time there i mean)
viewtopic.php?f=8&t=640
Code: Select all
ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here
originalcode:
//movzx eax,byte ptr [esi+000001BB]
mov [esi+000001BB],0
exit:
jmp returnhere
"Asphalt8.exe"+2D5E64:
jmp newmem
nop
nop
returnhere:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"Asphalt8.exe"+2D5E64:
movzx eax,byte ptr [esi+000001BB]
//Alt: db 0F B6 86 BB 01 00 00
In memory view: movzx eax,byte ptr [esi+000001BB]
Code: Select all
[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem:
originalcode:
mov eax,1
exit:
jmp returnhere
"Asphalt8.exe"+2D5E64:
jmp newmem
nop
nop
returnhere:
[DISABLE]
dealloc(newmem)
"Asphalt8.exe"+2D5E64:
movzx eax,byte ptr [esi+000001BB]
//Alt: db 0F B6 86 BB 01 00 00
Users browsing this forum: No registered users