# as -o a.o 20100816-fizzbuzz.s && ld --oformat binary -o a.com a.o
	.code16
	.global	_start
_start:
	pop	%ax
	push	%ax
	push	%ax
	push	%ax
	pop	%si
	xor	$0x3020,%ax
	push	%ax
	pop	%bp
	push	%ax
	pop	%di
	sub	$0x3020-(ll6-_start+0x100-0x20),%ax
	push	%ax
	pop	%bx
	pop	%ax
	and	%si,(%di)
	inc	%si
	xor	%si,(%di)
	dec	%si
	xor	$0x6d,%al
	sub	%al,0x20(%bx)
	sub	%al,0x22(%bx)
	sub	%al,0x23(%bx)
	sub	%al,0x25(%bx)
	xor	$0x6d^3,%al
	push	%ax
	pop	%cx
	inc	%ax
	inc	%ax
	push	%ax
	pop	%dx
ll5:
	push	%si
	pop	%ax
	and	$0x4f4f,%ax
	inc	%ax
	aaa
	pop	%bx
	push	%ax
	push	%bx
	pop	%ax
	push	%ax
	dec	%cx
	jne	ll1
	and	%ax,0x40(%bp)
	xor	$'i'*256+'F',%ax
	xor	%ax,0x40(%bp)
	inc	%bp
	inc	%bp
	pop	%ax
	push	%ax
	and	%ax,0x40(%bp)
	xor	$'z'*256+'z',%ax
	xor	%ax,0x40(%bp)
	inc	%bp
	inc	%bp
	inc	%cx
	inc	%cx
	inc	%cx
	inc	%bx
	inc	%ax
	inc	%ax
	pop	%ax
	push	%ax
ll1:
	dec	%dx
	jne	ll2
	and	%ax,0x40(%bp)
	xor	$'u'*256+'B',%ax
	xor	%ax,0x40(%bp)
	inc	%bp
	inc	%bp
	pop	%ax
	push	%ax
	and	%ax,0x40(%bp)
	xor	$'z'*256+'z',%ax
	xor	%ax,0x40(%bp)
	inc	%bp
	inc	%bp
	inc	%dx
	inc	%dx
	inc	%dx
	inc	%dx
	inc	%dx
	inc	%bx
	pop	%ax
	push	%ax
ll2:
	and	%ax,0x40(%bp)
	dec	%bx
	pop	%bx
	jns	ll3
	pop	%ax
	xor	$0x3030,%ax
	cmp	$0x3a30,%ax
	ja	ll8
	push	%ax
	and	$0x4f40,%ax
	dec	%ax
	and	%ah,(%di)
	pop	%ax
	push	%ax
	xor	%ah,0x40(%bp)
	inc	%bp
	sub	(%di),%bp
	and	%bx,0x40(%bp)
	xor	%al,0x40(%bp)
	inc	%bp
	push	%bx
	pop	%ax
ll3:
	xor	$0x20,%al
	xor	%al,0x40(%bp)
	inc	%bp
	pop	%si
	push	%bx
	jne	ll7
ll8:
	push	%bx
	pop	%ax
	push	%ax
	and	%ax,0x40(%bp)
	and	%ax,0x42(%bp)
	xor	$0x3a3d,%ax
	xor	$0x3030,%ax
	xor	%ax,0x40(%bp)
	xor	$0x3a6d,%ax
	push	%ax
	pop	%dx
	xor	$0x3944,%ax
	xor	%al,0x42(%bp)
ll6:
	.byte	0xcd+0x6d,0x21,0xc3+0x6d
ll7:
	.byte	0xe9+0x6d
	.short	(ll5-3-ll7)+0x6d00
