AutoIt汇编代码用于打印消息

时间:2017-04-15 16:25:35

标签: assembly autoit

我正在制作一个使用AutoIt显示hello world的程序。汇编代码用于其他语言的示例,但不用于AutoIt。代码是:

char code[] =
"\xb8\x04\x00\x00\x00"
"\xbb\x01\x00\x00\x00"
"\xb9\x00\x00\x00\x00"
"\xba\x0f\x00\x00\x00"
"\xcd\x80\xb8\x01\x00"
"\x00\x00\xbb\x00\x00"
"\x00\x00\xcd\x80";

我会尝试使用AutoIt:

$pt = DLLStructCreate("byte[" & BinaryLen($YourShellcode) & "]")

DllStructSetData($pt, 1, $YourShellcode)

$y=DllStructGetPtr($pt)

_WinAPI_CallWindowProc($y, 0, 0, 0, 0)

但我不知道如何包含此汇编代码来打印hello world。怎么做?只有hello world使用asm和AutoIt的小例子。

1 个答案:

答案 0 :(得分:1)

你试过这个吗?

#include <WinAPI.au3>
Global $YourShellcode = "0xb804000000bb01000000b900000000ba0f000000cd80b801000000bb00000000cd80"

$pt = DLLStructCreate("byte[" & BinaryLen($YourShellcode) & "]")

DllStructSetData($pt, 1, $YourShellcode)

$y=DllStructGetPtr($pt)

_WinAPI_CallWindowProc($y, 0, 0, 0, 0)