tgl2023 发表于 2023-6-29 22:04:03

求大漠64位调用CALL的写法

sub rsp, 0x38 //抬栈空间 注意16字节对齐原则
mov rcx, 0000012EA0AF6D20      //参数一:jz偏移地址
mov rdx, 00310000                         //参数二:申请的目标坐标的内存地址
mov r8, 0x0                                  //参数三
mov rax, 0x7FF8B6908810               //入口传给寄存器
call rax
add rsp, 0x38
ret



//这样写会崩溃
Function 走路()
    dm.AsmClear
    dm.AsmAdd "sub rsp,38"
    dm.AsmAdd "mov rcx,0000026DE6F330F0"
    dm.AsmAdd "mov rdx,00AA0000"
    dm.AsmAdd "mov r8, 0"
    dm.AsmAdd "mov rax,7FFDF2B18810"
    dm.AsmAdd "call rax"
    dm.AsmAdd "add rsp,38"
    '//dm.AsmAdd "ret"
    dm.AsmCall Ghwnd, 3
End Function

qq72777 发表于 2023-7-6 13:10:57

不会u湘鄂西以爱
页: [1]
查看完整版本: 求大漠64位调用CALL的写法