krltest_f800.asm
来自「获取内核内存地址的汇编代码。」· 汇编 代码 · 共 34 行
ASM
34 行
.386
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
include \masm32\include\user32.inc
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib
.data
KernelAddress dd 0
fmt db "Kernel32 Address = %X",0
buf db 256 dup (0)
szCap db "KrlTest_f800",0
.code
start:
mov ecx,[esp]
GetKrnlBaseLoop:
xor edx,edx
dec ecx
mov dx,word ptr [ecx+3ch]
test dx,0f800h
jnz GetKrnlBaseLoop
cmp ecx,dword ptr [ecx+edx+34h]
jnz GetKrnlBaseLoop
mov KernelAddress,ecx
invoke wsprintf,offset buf,offset fmt,KernelAddress
invoke MessageBox,NULL,offset buf,offset szCap,MB_OK or MB_ICONINFORMATION
invoke ExitProcess,0
end start
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?