xseg	segment	public	'code'
	assume	cs:xseg, ds:xseg, ss:xseg
	org	100h

main	proc	near
	call	near ptr __main_1
	mov	ax, 4c00h
	int	21h
main	endp


@1:
_prime_10	proc	near
	push	bp
	mov	bp, sp
	sub	sp, 9

@2:
	mov	ax, word ptr [bp+8]
	mov	dx, 0
	cmp	ax, dx
	jl	@4

@3:
	jmp	@15

@4:
	mov	ax, word ptr [bp+8]
	neg	ax
	mov	word ptr [bp+8], ax

@5:
	mov	ax, word ptr [bp+8]
	push	ax

@6:
	lea	si, byte ptr [bp-3]
	push	si

@7:
	push	word ptr [bp+4]
	call	near ptr _prime_10
	add	sp, 6

@8:
	mov	al, byte ptr [bp-3]
	or	al, al
	jnz	@10

@9:
	jmp	@12

@10:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 1

@11:
	jmp	@prime_10

@12:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 0

@13:
	jmp	@prime_10

@14:
	jmp	@54

@15:
	mov	ax, word ptr [bp+8]
	mov	dx, 2
	cmp	ax, dx
	jl	@17

@16:
	jmp	@23

@17:
	jmp	@20

@18:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 1

@19:
	jmp	@prime_10

@20:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 0

@21:
	jmp	@prime_10

@22:
	jmp	@54

@23:
	mov	ax, word ptr [bp+8]
	mov	dx, 2
	cmp	ax, dx
	je	@25

@24:
	jmp	@31

@25:
	jmp	@26

@26:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 1

@27:
	jmp	@prime_10

@28:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 0

@29:
	jmp	@prime_10

@30:
	jmp	@54

@31:
	jmp	@32

@32:
	mov	ax, 3
	mov	word ptr [bp-2], ax

@33:
	mov	ax, word ptr [bp+8]
	xor	dx, dx
	mov	cx, 2
	idiv	cx
	mov	word ptr [bp-5], ax

@34:
	mov	ax, word ptr [bp-2]
	mov	dx, word ptr [bp-5]
	cmp	ax, dx
	jle	@36

@35:
	jmp	@48

@36:

@37:
	mov	ax, word ptr [bp-7]
	mov	dx, 0
	cmp	ax, dx
	je	@39

@38:
	jmp	@45

@39:
	jmp	@42

@40:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 1

@41:
	jmp	@prime_10

@42:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 0

@43:
	jmp	@prime_10

@44:
	jmp	@45

@45:
	mov	ax, word ptr [bp-2]
	mov	dx, 2
	add	ax, dx
	mov	word ptr [bp-9], ax

@46:
	mov	ax, word ptr [bp-9]
	mov	word ptr [bp-2], ax

@47:
	jmp	@33

@48:
	jmp	@49

@49:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 1

@50:
	jmp	@prime_10

@51:
	mov	si, word ptr [bp+6]
	mov	byte ptr [si], 0

@52:
	jmp	@prime_10

@53:
	jmp	@54

@54:
@prime_10:
	mov	sp, bp
	pop	bp
	ret
_prime_10	endp

@55:
__main_1	proc	near
	push	bp
	mov	bp, sp
	sub	sp, 28

@56:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0020h
	push	ax
	mov	ax, 3A74h
	push	ax
	mov	ax, 696Dh
	push	ax
	mov	ax, 694Ch
	push	ax

@57:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@58:
	lea	si, word ptr [bp-8]
	push	si

@59:
	push	bp
	call	near ptr _readi
	add	sp, 4

@60:
	mov	ax, word ptr [bp-8]
	mov	word ptr [bp-6], ax

@61:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0A3Ah
	push	ax
	mov	ax, 7365h
	push	ax
	mov	ax, 6D69h
	push	ax
	mov	ax, 7250h
	push	ax

@62:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@63:
	mov	ax, 0
	mov	word ptr [bp-2], ax

@64:
	mov	ax, word ptr [bp-6]
	mov	dx, 2
	cmp	ax, dx
	jge	@66

@65:
	jmp	@73

@66:
	mov	ax, word ptr [bp-2]
	mov	dx, 1
	add	ax, dx
	mov	word ptr [bp-10], ax

@67:
	mov	ax, word ptr [bp-10]
	mov	word ptr [bp-2], ax

@68:
	mov	ax, 2
	push	ax

@69:
	sub	sp, 2
	push	bp
	call	near ptr _printi
	add	sp, 6

@70:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 000Ah
	push	ax

@71:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@72:
	jmp	@73

@73:
	mov	ax, word ptr [bp-6]
	mov	dx, 3
	cmp	ax, dx
	jge	@75

@74:
	jmp	@82

@75:
	mov	ax, word ptr [bp-2]
	mov	dx, 1
	add	ax, dx
	mov	word ptr [bp-12], ax

@76:
	mov	ax, word ptr [bp-12]
	mov	word ptr [bp-2], ax

@77:
	mov	ax, 3
	push	ax

@78:
	sub	sp, 2
	push	bp
	call	near ptr _printi
	add	sp, 6

@79:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 000Ah
	push	ax

@80:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@81:
	jmp	@82

@82:
	mov	ax, 6
	mov	word ptr [bp-4], ax

@83:
	mov	ax, word ptr [bp-4]
	mov	dx, word ptr [bp-6]
	cmp	ax, dx
	jle	@85

@84:
	jmp	@118

@85:
	mov	ax, word ptr [bp-4]
	mov	dx, 1
	sub	ax, dx
	mov	word ptr [bp-14], ax

@86:
	mov	ax, word ptr [bp-14]
	push	ax

@87:
	lea	si, byte ptr [bp-15]
	push	si

@88:
	push	bp
	call	near ptr _prime_10
	add	sp, 6

@89:
	mov	al, byte ptr [bp-15]
	or	al, al
	jnz	@91

@90:
	jmp	@99

@91:
	mov	ax, word ptr [bp-2]
	mov	dx, 1
	add	ax, dx
	mov	word ptr [bp-17], ax

@92:
	mov	ax, word ptr [bp-17]
	mov	word ptr [bp-2], ax

@93:
	mov	ax, word ptr [bp-4]
	mov	dx, 1
	sub	ax, dx
	mov	word ptr [bp-19], ax

@94:
	mov	ax, word ptr [bp-19]
	push	ax

@95:
	sub	sp, 2
	push	bp
	call	near ptr _printi
	add	sp, 6

@96:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 000Ah
	push	ax

@97:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@98:
	jmp	@99

@99:
	mov	ax, word ptr [bp-4]
	mov	dx, word ptr [bp-6]
	cmp	ax, dx
	jne	@101

@100:
	jmp	@115

@101:
	mov	ax, word ptr [bp-4]
	mov	dx, 1
	add	ax, dx
	mov	word ptr [bp-21], ax

@102:
	mov	ax, word ptr [bp-21]
	push	ax

@103:
	lea	si, byte ptr [bp-22]
	push	si

@104:
	push	bp
	call	near ptr _prime_10
	add	sp, 6

@105:
	mov	al, byte ptr [bp-22]
	or	al, al
	jnz	@107

@106:
	jmp	@115

@107:
	mov	ax, word ptr [bp-2]
	mov	dx, 1
	add	ax, dx
	mov	word ptr [bp-24], ax

@108:
	mov	ax, word ptr [bp-24]
	mov	word ptr [bp-2], ax

@109:
	mov	ax, word ptr [bp-4]
	mov	dx, 1
	add	ax, dx
	mov	word ptr [bp-26], ax

@110:
	mov	ax, word ptr [bp-26]
	push	ax

@111:
	sub	sp, 2
	push	bp
	call	near ptr _printi
	add	sp, 6

@112:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 000Ah
	push	ax

@113:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@114:
	jmp	@115

@115:
	mov	ax, word ptr [bp-4]
	mov	dx, 6
	add	ax, dx
	mov	word ptr [bp-28], ax

@116:
	mov	ax, word ptr [bp-28]
	mov	word ptr [bp-4], ax

@117:
	jmp	@83

@118:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 203Ah
	push	ax
	mov	ax, 6C61h
	push	ax
	mov	ax, 746Fh
	push	ax
	mov	ax, 540Ah
	push	ax

@119:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@120:
	mov	ax, word ptr [bp-2]
	push	ax

@121:
	sub	sp, 2
	push	bp
	call	near ptr _printi
	add	sp, 6

@122:
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 0000h
	push	ax
	mov	ax, 000Ah
	push	ax

@123:
	sub	sp, 2
	push	bp
	call	near ptr _prints
	add	sp, 20

@124:
@_main_1:
	mov	sp, bp
	pop	bp
	ret
__main_1	endp

	extrn	_printi : proc
	extrn	_prints : proc
	extrn	_readi : proc

xseg	ends
	end	main

