📄 stub.s
字号:
#include "uml-config.h" .globl syscall_stub.section .__syscall_stub, "x" .globl batch_syscall_stubbatch_syscall_stub: /* load pointer to first operation */ mov $(UML_CONFIG_STUB_DATA+8), %espagain: /* load length of additional data */ mov 0x0(%esp), %eax /* if(length == 0) : end of list */ /* write possible 0 to header */ mov %eax, UML_CONFIG_STUB_DATA+4 cmpl $0, %eax jz done /* save current pointer */ mov %esp, UML_CONFIG_STUB_DATA+4 /* skip additional data */ add %eax, %esp /* load syscall-# */ pop %eax /* load syscall params */ pop %ebx pop %ecx pop %edx pop %esi pop %edi pop %ebp /* execute syscall */ int $0x80 /* check return value */ pop %ebx cmp %ebx, %eax je againdone: /* save return value */ mov %eax, UML_CONFIG_STUB_DATA /* stop */ int3
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -