## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# 80×86 Architecture: QNX Executable

Assembler code

    cseg_01:0000A3A1                 mov     [ebp-8], edx
    cseg_01:0000A3A4                 mov     edx, 0Eh
    cseg_01:0000A3A9                 call    __setmagicvar_
    cseg_01:0000A3AE                 mov     eax, cs
    cseg_01:0000A3B0                 mov     edx, 0Dh
    cseg_01:0000A3B5                 mov     [ebp-8], ax
    cseg_01:0000A3B9                 lea     eax, [ebp-8]
    cseg_01:0000A3BC                 mov     ebx, 0A34Ah
    cseg_01:0000A3C1                 call    __setmagicvar_
    cseg_01:0000A3C6                 mov     eax, 1
    cseg_01:0000A3CB                 mov     off_C304, ebx
    cseg_01:0000A3D1                 call    __InitRtns
    cseg_01:0000A3D6                 mov     eax, dword_C314
    cseg_01:0000A3DB                 add     eax, 3
    cseg_01:0000A3DE                 and     al, 0FCh
    cseg_01:0000A3E0                 xor     edx, edx
    cseg_01:0000A3E2                 sub     esp, eax
    cseg_01:0000A3E4                 mov     ecx, esp
    cseg_01:0000A3E6                 mov     ebx, dword_C314
    cseg_01:0000A3EC                 mov     eax, ecx
    cseg_01:0000A3EE                 call    memset_
    cseg_01:0000A3F3                 mov     eax, ecx
    cseg_01:0000A3F5                 mov     edx, [ebp-4]
    cseg_01:0000A3F8                 call    __QNXInit_
    cseg_01:0000A3FD                 mov     ebx, esi
    cseg_01:0000A3FF                 mov     eax, 0FFh
    cseg_01:0000A404                 mov     ecx, 2000h
    cseg_01:0000A409                 call    __InitRtns
    cseg_01:0000A40E                 mov     dword_C318, ecx
    cseg_01:0000A414                 mov     eax, edi
    cseg_01:0000A416                 push    ds
    cseg_01:0000A417                 pop     es
    cseg_01:0000A418                 assume es:dseg_01
    cseg_01:0000A418                 call    sub_A010
    cseg_01:0000A41D                 call    exit_