.386p
locals
public _xlt_callrmfar, _xlt_callrmiret
_TEXT segment byte public use32 'CODE'
assume cs:_TEXT
_xlt_callrmfar:
mov al,1
jmp short callrm
_xlt_callrmiret:
mov al,2
callrm:
push ebx edi
mov edi,[esp+4+8]
mov edx,esp
mov ecx,[esp+4+8+4]
jecxz short @@02
lea ebx,[esp+4+8+8]
@@00l:
push word ptr [ebx]
add ebx,4
dec ecx
jnz @@00l
mov ecx,[edx+4+8+4]
@@02:
xor bh,bh
mov ah,3
int 31h
mov esp,edx
jc short @@00
xor eax,eax
jmp short @@01
@@00:
movsx eax,ax
cmp ah,80h
je short @@01
mov eax,-32768
@@01:
pop edi ebx
ret
_TEXT ends
end