• 喊话CALL


    MOV EDX,[924E0C]
    MOV EAX,[EDX+1C]
    MOV ECX,[EAX+20]
    MOV EDX,[ECX+0CB8]
    push 0
    push 1966347C
    CALL 004722A0
    //完美世界 经典版本
    bp send,输入一段话,按回车
    0012E2DC   005869B2  返回到 elementc.005869B2 来自 elementc.0058E8A0
    0012E2F0   00588C4F  返回到 elementc.00588C4F 来自 elementc.00586980
    0012E340   004B9025  返回到 elementc.004B9025 来自 elementc.00588B50
     
    这个喊话头顶上有文字
    别人看不见的
    频道:普通,组队,世界,密语
    //喊话CALL的下面有个人物名称 的偏移
     
     
     
    004D0A10    8B4C24 1C       MOV ECX,DWORD PTR SS:[ESP+1C] ; 堆栈 SS:[0012E758]=0012E900 普通ECX=0 组队ECX=1
    004D0A14    55              PUSH EBP                      ; EBP=0
    004D0A15    57              PUSH EDI                      ; EDI=2227FC8C, (UNICODE "oyear")
    004D0A16    51              PUSH ECX                      ; ECX=0012E900
    004D0A17    8BCB            MOV ECX,EBX                   ; ECX=0012E900 ,EBX=06217088= dd [[0A94464]+20]
    004D0A19    E8 E2681100     CALL elementc.005E7300
     
    PUSH EBP         ; EBP=0    
    PUSH EDI         ; EDI=2227FC8C, (UNICODE "oyear")  喊话内容  
    PUSH ECX         ; ECX=0012E900     喊话频道?
    MOV ECX,EBX      ;    堆栈 SS:[0012E758]=007CAA00 (elementc.007CAA00)
    CALL 005E7300
     
    普通
    堆栈 SS:[0012E758]=007CAA00 (elementc.007CAA00)
    ECX=00000000
     
    组队
    堆栈 SS:[0012E758]=007CAA02 (elementc.007CAA02)
    ECX=00000001
     
    世界
    堆栈 SS:[0012E758]=F0DEAD00
    ECX=00000000
     
     
    push 0
    push 2227FC8C
    push 0012E900
    mov eax,[0A94464]
    mov eax,[eax+20]
    mov ecx,eax
    CALL 005E7300
     
    普通=0
    世界=1
    组队=2
     
    //完美国际
    bp send 喊话 ctrl+F9返回4次 返汇编中跟随
     
     
     
    push 0ffffffff
    mov EAX,[0B3F6CC]
    mov EAX,[EAX+20]
    mov ecx,eax
    push 0ffffffff
    push 2CABACC4   //喊话内容
    push 2          //频道
    CALL 00685250
     
    普通=0
    世界=1
    组队=2
    //说明自己看不见 别人能看见
     
     
    procedure sendMsg(s:pchar;ID:Integer);
    var
      calltxt:PWideChar;
      speakCall:DWORD;
    begin
    callTxt:=allocmem(512); //把S字串的编码格式转成UNICODE存放在CallTxt里
    stringToWideChar(s,calltxt,256);//Ascii码编码转换成UNICODE编码
    speakCall:=$00685250;
      asm
        push $ffffffff
        mov EAX,[MainBase]
        mov EAX,[EAX+$20]
        mov ecx,eax   //这里不要动它
        push $ffffffff
        push callTxt {喊话内容地址}
        push ID      {普通频道=0,世界频道=1,组队频道=2}
        CALL speakCall
      end;
    end;





  • 相关阅读:
    Ant-编译构建(2)-第3方jar包引入、log4j2
    Ant-编译构建(1)-HelloWorld
    java List的初始化
    传入json字符串的post请求
    HttPclient 以post方式发送json
    cron表达式详解,cron表达式写法,cron表达式例子
    深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
    Java两种延时——thread和timer
    List<List<Object>> list = new ArrayList<List<Object>>(); 求回答补充问题 list.get(position).add(Object);为什么会报错啊我想在对应的list里面添加对象
    关于 charset 的几种编码方式
  • 原文地址:https://www.cnblogs.com/xe2011/p/2525920.html
Copyright © 2020-2023  润新知