{"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fhigepon.hatenablog.com%2Fentry%2F20061201%2F1164987305\" title=\" DLL\u30a8\u30f3\u30c8\u30ea\u30dd\u30a4\u30f3\u30c8 - \u5b9f\u9a132 - higepon blog\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","description":"\u5b9f\u9a13\u305d\u306e2\u3067\u3059\u3001\u4eca\u5ea6\u306f call \u90e8\u5206\u3092\u5916\u51fa\u3057\u306b\u3057\u307e\u3059\u3002 call.asm BITS 32 global call_func call_func: push ebp mov ebp, esp sub esp, 8 mov eax, dword [ebp + 8] call eax leave retnasm -felf call.asm -o call.o main.cpp extern \"C\" void call_func(unsigned int func); void hello() { printf(\"hello\\n\"); } int main(int argc, char *argv\u2026","version":"1.0","blog_url":"https://higepon.hatenablog.com/","author_url":"https://blog.hatena.ne.jp/higepon/","categories":["Mona"],"url":"https://higepon.hatenablog.com/entry/20061201/1164987305","title":" DLL\u30a8\u30f3\u30c8\u30ea\u30dd\u30a4\u30f3\u30c8 - \u5b9f\u9a132","author_name":"higepon","published":"2006-12-01 00:35:05","provider_url":"https://hatena.blog","image_url":null,"type":"rich","blog_title":"higepon blog","width":"100%","provider_name":"Hatena Blog","height":"190"}