mirror of
https://github.com/cheat-engine/cheat-engine
synced 2026-08-15 02:26:08 -04:00
161 lines
1.7 KiB
NASM
161 lines
1.7 KiB
NASM
;RCX: 1st integer argument
|
|
;RDX: 2nd integer argument
|
|
;R8: 3rd integer argument
|
|
;R9: 4th integer argument
|
|
|
|
;I should probably start converting to inrinsics
|
|
|
|
_TEXT SEGMENT 'CODE'
|
|
PUBLIC getCS
|
|
getCS:
|
|
mov ax,cs
|
|
ret
|
|
|
|
PUBLIC getSS
|
|
getSS:
|
|
mov ax,ss
|
|
ret
|
|
|
|
PUBLIC getDS
|
|
getDS:
|
|
mov ax,ds
|
|
ret
|
|
|
|
PUBLIC getES
|
|
getES:
|
|
mov ax,es
|
|
ret
|
|
|
|
PUBLIC getFS
|
|
getFS:
|
|
mov ax,fs
|
|
ret
|
|
|
|
PUBLIC getGS
|
|
getGS:
|
|
mov ax,gs
|
|
ret
|
|
|
|
PUBLIC GetTR
|
|
GetTR:
|
|
STR AX
|
|
ret
|
|
|
|
PUBLIC GetLDT
|
|
GetLDT:
|
|
SLDT ax
|
|
ret
|
|
|
|
PUBLIC GetGDT
|
|
GetGDT:
|
|
SGDT [rcx]
|
|
ret
|
|
|
|
PUBLIC _fxsave
|
|
_fxsave:
|
|
fxsave [rcx]
|
|
ret
|
|
|
|
PUBLIC getRSP
|
|
getRSP:
|
|
mov rax,rsp
|
|
add rax,8 ;undo the call push
|
|
ret
|
|
|
|
PUBLIC getRBP
|
|
getRBP:
|
|
push rbp
|
|
pop rax
|
|
ret
|
|
|
|
PUBLIC getRAX
|
|
getRAX:
|
|
ret
|
|
|
|
PUBLIC getRBX
|
|
getRBX:
|
|
mov rax,rbx
|
|
ret
|
|
|
|
PUBLIC getRCX
|
|
getRCX:
|
|
mov rax,rcx
|
|
ret
|
|
|
|
PUBLIC getRDX
|
|
getRDX:
|
|
mov rax,rdx
|
|
ret
|
|
|
|
PUBLIC getRSI
|
|
getRSI:
|
|
mov rax,rsi
|
|
ret
|
|
|
|
PUBLIC getRDI
|
|
getRDI:
|
|
mov rax,rdi
|
|
ret
|
|
|
|
PUBLIC getR8
|
|
getR8:
|
|
mov rax,r8
|
|
ret
|
|
|
|
PUBLIC getR9
|
|
getR9:
|
|
mov rax,r9
|
|
ret
|
|
|
|
PUBLIC getR10
|
|
getR10:
|
|
mov rax,r10
|
|
ret
|
|
|
|
PUBLIC getR11
|
|
getR11:
|
|
mov rax,r11
|
|
ret
|
|
|
|
PUBLIC getR12
|
|
getR12:
|
|
mov rax,r12
|
|
ret
|
|
|
|
PUBLIC getR13
|
|
getR13:
|
|
mov rax,r13
|
|
ret
|
|
|
|
PUBLIC getR14
|
|
getR14:
|
|
mov rax,r14
|
|
ret
|
|
|
|
PUBLIC getR15
|
|
getR15:
|
|
mov rax,r15
|
|
ret
|
|
|
|
PUBLIC getAccessRights
|
|
getAccessRights:
|
|
xor rax,rax
|
|
lar rax,rcx
|
|
jnz getAccessRights_invalid
|
|
shr rax,8
|
|
and rax,0f0ffh
|
|
ret
|
|
getAccessRights_invalid:
|
|
mov rax,010000h
|
|
ret
|
|
|
|
|
|
PUBLIC getSegmentLimit
|
|
getSegmentLimit:
|
|
xor rax,rax
|
|
lsl rax,rcx
|
|
ret
|
|
|
|
_TEXT ENDS
|
|
END
|
|
|