美文网首页
11-27函数

11-27函数

作者: 五行猫 | 来源:发表于2017-11-28 12:10 被阅读0次

    函数

    函数的重点是识别调用约定、参数类型和返回值类型

    调用约定:

    • cdecl
      • 调用方平栈
    • stdcall
      • 被调用方平栈
    • fastcall
      • 被调用方平栈
      • edx, ecx 寄存器传第1、第2个参数
    • thiscall
      • 参数个数确定:
        • this指针通过ecx传递
        • 被调用方平栈
      • 参数个数不确定:
        • this指针最后一个入栈
        • 调用方平栈

    参数个数

    通过调用前的push来判断参数个数不一定正确,实际要看函数内部用了多少个参数,如果一个参数都没有用则当作无参函数还原

    stdcall也可通过观察ret指令后的平栈大小来判断参数个数

    fastcall外面给寄存器赋值、内部未经赋值直接使用

    参数类型

    根据使用方式来判断

    返回值类型

    • __int64
      • 返回值在edx.eax中
    • double, float返回值在st0

    相关文章

      网友评论

          本文标题:11-27函数

          本文链接:https://www.haomeiwen.com/subject/szvsbxtx.html