Files
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

12346 lines
906 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

INITDIR.LST Sourcer v7.00
PAGE 59,132
;==========================================================================
;== ==
;== INITDIR ==
;== ==
;== Created: ==
;== Code type: special ==
;== Passes: 9 Analysis Options on: QRSUX ==
;== ==
;==========================================================================
target EQU 'T3' ; Target assembler: TASM-3.0
; The following equates show data references outside the range of the program.
= FFEB data_453e equ 0FFEBh ;*(4044:FFEB=0)
= FFEC data_454e equ 0FFECh ;*(4044:FFEC=0)
= FFF7 data_455e equ 0FFF7h ;*(4044:FFF7=0)
= FFF8 data_456e equ 0FFF8h ;*(4044:FFF8=0)
= FFFF data_457e equ 0FFFFh ;*(4044:FFFF=0)
= 004E data_458e equ 4Eh ; (B0FF:004E=0)
= 0028 data_459e equ 28h ; (FFB4:0028=0FFh)
= 03B4 data_460e equ 3B4h ; (FFB4:03B4=87FEh)
= 03B6 data_461e equ 3B6h ; (FFB4:03B6=6FE9h)
;------------------------------------------------------------ seg_a ----
seg_a segment byte public
assume cs:seg_a , ds:seg_a
4044:0000 01 data_1 db 1 ; xref 4044:2789, 2CF1, 2DDC, 33AD
; 3696, 4404, 46B4
4044:0001 04B1 data_2 dw 4B1h ; Data table (indexed access)
; xref 4044:0868, 0A08, 0D7B, 3D0A
4044:0003 00 db 0
4044:0004 B100 0004 data_4 dw 0B100h, 4 ; Data table (indexed access)
; xref 4044:0DC1, 21A3, 228F, 47C7
; 4841, 484C, 8A25, 8A32
4044:0008 0200 data_8 dw 200h ; Data table (indexed access)
; xref 4044:161F, 1EE4, 1F0C, 1F1C
; 1F2B, 1F3D, 40D3, 47B3
4044:000A D8 data_9 db 0D8h ; Data table (indexed access)
; xref 4044:1B44, 3E91, 4711
4044:000B 03 data_10 db 3 ; xref 4044:21E3
4044:000C 00 data_11 db 0 ; Data table (indexed access)
; xref 4044:067F, 0896, 0DC5, 47D1
; 49B9, 49CE
4044:000D D800 data_12 dw 0D800h ; Data table (indexed access)
; xref 4044:1017, 1691, 225D
4044:000F 03 db 3
4044:0010 00 data_13 db 0 ; Data table (indexed access)
; xref 4044:030C, 2132
4044:0011 10 00 db 10h, 00h
4044:0013 00 00 db 0, 0
4044:0015 0000 data_15 dw 0 ; Data table (indexed access)
; xref 4044:4701, 474D, 4771
4044:0017 0000 data_16 dw 0 ; Data table (indexed access)
; xref 4044:477B, 479D, 47A9
4044:0019 00 00 00 00 db 0, 0, 0, 0
4044:001D 0000 data_18 dw 0 ; Data table (indexed access)
; xref 4044:475A, 4788, 47DC, 47F2
; 480E, 482A
4044:001F 00 data_19 db 0 ; xref 4044:473A
4044:0020 00 data_20 db 0 ; xref 4044:49B2
4044:0021 00 data_21 db 0 ; xref 4044:497A, 4A1F
4044:0022 00 00 db 0, 0
4044:0024 00 data_22 db 0 ; xref 4044:4A9B
4044:0025 00 00 00 00 00 db 0, 0, 0, 0, 0
4044:002A 00 data_23 db 0 ; xref 4044:4505
4044:002B 00 data_24 db 0 ; xref 4044:1DD1
4044:002C 00 00 00 db 0, 0, 0
4044:002F 00 data_25 db 0 ; xref 4044:450E
4044:0030 0030[00] db 48 dup (0)
4044:0060 00 data_26 db 0 ; Data table (indexed access)
; xref 4044:033A, 06E9
4044:0061 001A[00] db 26 dup (0)
4044:007B 17 01 00 00 00 db 17h, 01h, 00h, 00h, 00h
4044:0080 E9 data_27 db 0E9h ; xref 4044:4A60
4044:0081 02 00 90 90 BB 00 db 02h, 00h, 90h, 90h,0BBh, 00h
4044:0087 02 E8 55 1C C6 06 db 02h,0E8h, 55h, 1Ch,0C6h, 06h
4044:008D 24 02 01 db 24h, 02h, 01h
4044:0090 loc_1: ; xref 4044:00A6
4044:0090 ,82 3E 0224 1F ;* cmp byte ptr ds:[224h],1Fh ; (4044:0224=0B7h)
4044:0090 db 82h, 3Eh, 24h, 02h, 1Fh ; Fixup - byte match
4044:0095 7F 11 jg loc_2 ; Jump if >
4044:0097 A0 0224 mov al,byte ptr ds:[224h] ; (4044:0224=0B7h)
4044:009A 98 cbw ; Convrt byte to word
4044:009B 8B F0 mov si,ax
4044:009D C6 84 018E 00 mov byte ptr ds:[18Eh][si],0 ; (4044:018E=0E8h)
4044:00A2 FE 06 0224 inc byte ptr ds:[224h] ; (4044:0224=0B7h)
4044:00A6 EB E8 jmp short loc_1 ; (0090)
4044:00A8 loc_2: ; xref 4044:0095
4044:00A8 C6 06 3C8E 21 mov byte ptr ds:[3C8Eh],21h ; (4044:3C8E=0BFh) '!'
4044:00AD C6 06 3C90 20 mov byte ptr ds:[3C90h],20h ; (4044:3C90=0F6h) ' '
4044:00B2 C6 06 01EA 00 mov byte ptr ds:[1EAh],0 ; (4044:01EA=2)
4044:00B7 C6 06 01E5 00 mov byte ptr ds:[1E5h],0 ; (4044:01E5=2)
4044:00BC C6 06 01F1 00 mov byte ptr ds:[1F1h],0 ; (4044:01F1=0B0h)
4044:00C1 B1 10 mov cl,10h
4044:00C3 ,BE 0105 mov si,105h ; (4044:0105=5)
4044:00C6 B0 10 mov al,10h
4044:00C8 ,BF 0212 mov di,212h ; (4044:0212=0B0h)
4044:00CB E8 200F call sub_79 ; (20DD)
4044:00CE B1 1A mov cl,1Ah
4044:00D0 ,BE 0115 mov si,115h ; (4044:0115=0C6h)
4044:00D3 B0 1A mov al,1Ah
4044:00D5 ,BF 01B1 mov di,1B1h ; (4044:01B1=3Ch)
4044:00D8 E8 2002 call sub_79 ; (20DD)
4044:00DB B1 1A mov cl,1Ah
4044:00DD ,BE 012F mov si,12Fh ; (4044:012F=6)
4044:00E0 B0 1A mov al,1Ah
4044:00E2 ,BF 01CB mov di,1CBh ; (4044:01CB=2)
4044:00E5 E8 1FF5 call sub_79 ; (20DD)
4044:00E8 C6 06 3C2E 00 mov byte ptr ds:[3C2Eh],0 ; (4044:3C2E=0Ch)
4044:00ED C6 06 3C30 01 mov byte ptr ds:[3C30h],1 ; (4044:3C30=3Ch)
4044:00F2 C6 06 3C32 02 mov byte ptr ds:[3C32h],2 ; (4044:3C32=0B0h)
4044:00F7 C6 06 3C34 03 mov byte ptr ds:[3C34h],3 ; (4044:3C34=74h)
4044:00FC C6 06 3C36 04 mov byte ptr ds:[3C36h],4 ; (4044:3C36=0D0h)
4044:0101 C6 06 3C3A 05 mov byte ptr ds:[3C3Ah],5 ; (4044:3C3A=74h)
4044:0106 C6 06 3C38 06 mov byte ptr ds:[3C38h],6 ; (4044:3C38=3Ch)
4044:010B C6 06 3C3C 07 mov byte ptr ds:[3C3Ch],7 ; (4044:3C3C=0E8h)
4044:0110 C6 06 3C3E 08 mov byte ptr ds:[3C3Eh],8 ; (4044:3C3E=0)
4044:0115 C6 06 3C40 09 mov byte ptr ds:[3C40h],9 ; (4044:3C40=3)
4044:011A C6 06 3C42 0A mov byte ptr ds:[3C42h],0Ah ; (4044:3C42=2Ah)
4044:011F C6 06 3C44 0B mov byte ptr ds:[3C44h],0Bh ; (4044:3C44=0E8h)
4044:0124 C6 06 3C46 0C mov byte ptr ds:[3C46h],0Ch ; (4044:3C46=0)
4044:0129 C6 06 3C48 0D mov byte ptr ds:[3C48h],0Dh ; (4044:3C48=80h)
4044:012E C6 06 3C4A 0E mov byte ptr data_342,0Eh ; (4044:3C4A=0EBh)
4044:0133 C6 06 3C4C 0F mov byte ptr ds:[3C4Ch],0Fh ; (4044:3C4C=0E8h)
4044:0138 C6 06 3C4E 10 mov byte ptr ds:[3C4Eh],10h ; (4044:3C4E=0)
4044:013D C6 06 3C50 10 mov byte ptr ds:[3C50h],10h ; (4044:3C50=0C5h)
4044:0142 C6 06 3C52 0F mov byte ptr ds:[3C52h],0Fh ; (4044:3C52=3Ch)
4044:0147 C6 06 3C54 11 mov byte ptr ds:[3C54h],11h ; (4044:3C54=74h)
4044:014C C6 06 3C56 12 mov byte ptr ds:[3C56h],12h ; (4044:3C56=0C3h)
4044:0151 ,BB 0225 mov bx,225h ; (4044:0225=1Eh)
4044:0154 E8 1999 call sub_56 ; (1AF0)
4044:0157 B1 01 mov cl,1
4044:0159 ,BF 3C28 mov di,3C28h ; (4044:3C28=0E8h)
4044:015C E8 1F69 call sub_77 ; (20C8)
4044:015F ,BB 0227 mov bx,227h ; (4044:0227=0BCh)
4044:0162 E8 198B call sub_56 ; (1AF0)
4044:0165 B1 01 mov cl,1
4044:0167 ,BF 3C2A mov di,3C2Ah ; (4044:3C2A=0)
4044:016A E8 1F5B call sub_77 ; (20C8)
4044:016D E8 1819 call sub_49 ; (1989)
4044:0170 89 1E 01EB mov word ptr ds:[1EBh],bx ; (4044:01EB=2E8h)
4044:0174 B1 08 mov cl,8
4044:0176 D3 E3 shl bx,cl ; Shift w/zeros fill
4044:0178 81 E3 FF00 and bx,0FF00h
4044:017C 8B C3 mov ax,bx
4044:017E 82 FC 31 ;* cmp ah,31h ; '1'
4044:017E db 82h,0FCh, 31h ; Fixup - byte match
4044:0181 B0 80 mov al,80h
4044:0183 72 02 jc loc_3 ; Jump if carry Set
4044:0185 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0187 loc_3: ; xref 4044:0183
4044:0187 3C 00 cmp al,0
4044:0189 74 06 je loc_4 ; Jump if equal
4044:018B ,BB 0229 mov bx,229h ; (4044:0229=0A2h)
4044:018E E8 0CE7 call sub_14 ; (0E78)
4044:0191 loc_4: ; xref 4044:0189
4044:0191 E8 1252 call sub_23 ; (13E6)
4044:0194 3C 00 cmp al,0
4044:0196 74 06 je loc_5 ; Jump if equal
4044:0198 ,BB 022B mov bx,22Bh ; (4044:022B=3Ch)
4044:019B E8 0CDA call sub_14 ; (0E78)
4044:019E loc_5: ; xref 4044:0196
4044:019E E8 126C call sub_24 ; (140D)
4044:01A1 3C 01 cmp al,1
4044:01A3 7E 06 jle loc_6 ; Jump if < or =
4044:01A5 ,BB 022D mov bx,22Dh ; (4044:022D=3Bh)
4044:01A8 E8 0CCD call sub_14 ; (0E78)
4044:01AB loc_6: ; xref 4044:01A3
4044:01AB E8 1765 call sub_46 ; (1913)
4044:01AE 89 1E 3C60 mov word ptr ds:[3C60h],bx ; (4044:3C60=0F600h)
4044:01B2 8B 36 3C60 mov si,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:01B6 8A 04 mov al,[si]
4044:01B8 A2 0222 mov byte ptr ds:[222h],al ; (4044:0222=2)
4044:01BB 8B 36 3C60 mov si,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:01BF 82 3C 10 ;* cmp byte ptr [si],10h
4044:01BF db 82h, 3Ch, 10h ; Fixup - byte match
4044:01C2 B0 80 mov al,80h
4044:01C4 7F 02 jg loc_7 ; Jump if >
4044:01C6 D0 E0 shl al,1 ; Shift w/zeros fill
4044:01C8 loc_7: ; xref 4044:01C4
4044:01C8 82 3E 0222 00 ;* cmp byte ptr ds:[222h],0 ; (4044:0222=2)
4044:01C8 db 82h, 3Eh, 22h, 02h, 00h ; Fixup - byte match
4044:01CD B4 80 mov ah,80h
4044:01CF 74 02 jz loc_8 ; Jump if zero
4044:01D1 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:01D3 loc_8: ; xref 4044:01CF
4044:01D3 0A C4 or al,ah
4044:01D5 3C 00 cmp al,0
4044:01D7 74 06 je loc_9 ; Jump if equal
4044:01D9 BB 022F mov bx,22Fh
4044:01DC E8 0170 call sub_2 ; (034F)
4044:01DF loc_9: ; xref 4044:01D7, 020A
4044:01DF ,82 3E 0222 00 ;* cmp byte ptr ds:[222h],0 ; (4044:0222=2)
4044:01DF db 82h, 3Eh, 22h, 02h, 00h ; Fixup - byte match
4044:01E4 74 02 jz loc_10 ; Jump if zero
4044:01E6 EB 24 jmp short loc_11 ; (020C)
4044:01E8 loc_10: ; xref 4044:01E4
4044:01E8 ,BB 0233 mov bx,233h ; (4044:0233=1)
4044:01EB E8 1902 call sub_56 ; (1AF0)
4044:01EE B1 01 mov cl,1
4044:01F0 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:01F3 E8 1ED2 call sub_77 ; (20C8)
4044:01F6 ,BB 0235 mov bx,235h ; (4044:0235=0B0h)
4044:01F9 E8 18F4 call sub_56 ; (1AF0)
4044:01FC B1 01 mov cl,1
4044:01FE ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0201 E8 1EC4 call sub_77 ; (20C8)
4044:0204 BB 0237 mov bx,237h
4044:0207 E8 0145 call sub_2 ; (034F)
4044:020A EB D3 jmp short loc_9 ; (01DF)
4044:020C loc_11: ; xref 4044:01E6
4044:020C A0 0222 mov al,byte ptr ds:[222h] ; (4044:0222=2)
4044:020F 98 cbw ; Convrt byte to word
4044:0210 8B D0 mov dx,ax
4044:0212 B0 10 mov al,10h
4044:0214 BE 0212 mov si,212h
4044:0217 B1 01 mov cl,1
4044:0219 E8 1DE4 call sub_74 ; (2000)
4044:021C 8A C8 mov cl,al
4044:021E B0 01 mov al,1
4044:0220 ,BF 0223 mov di,223h ; (4044:0223=0E8h)
4044:0223 E8 1EB7 call sub_79 ; (20DD)
4044:0226 E8 17BC call sub_52 ; (19E5)
4044:0229 A2 3C84 mov byte ptr ds:[3C84h],al ; (4044:3C84=0C9h)
4044:022C ,BB 023B mov bx,23Bh ; (4044:023B=52h)
4044:022F E8 18BE call sub_56 ; (1AF0)
4044:0232 B1 01 mov cl,1
4044:0234 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0237 E8 1E8E call sub_77 ; (20C8)
4044:023A BA 0252 mov dx,252h
4044:023D B9 01CB mov cx,1CBh
4044:0240 E8 2C05 call sub_119 ; (2E48)
4044:0243 B0 01 mov al,1
4044:0245 E8 2C30 call sub_120 ; (2E78)
4044:0248 E8 19F7 call sub_57 ; (1C42)
4044:024B ,BB 023D mov bx,23Dh ; (4044:023D=0B9h)
4044:024E E8 189F call sub_56 ; (1AF0)
4044:0251 B1 01 mov cl,1
4044:0253 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0256 E8 1E6F call sub_77 ; (20C8)
4044:0259 BA 0252 mov dx,252h
4044:025C B9 01F6 mov cx,1F6h
4044:025F E8 2BE6 call sub_119 ; (2E48)
4044:0262 BB 0100 mov bx,100h
4044:0265 E8 22D0 call sub_93 ; (2538)
4044:0268 BE 0223 mov si,223h
4044:026B B0 01 mov al,1
4044:026D E8 1E46 call sub_76 ; (20B6)
4044:0270 E8 23C2 call sub_98 ; (2635)
4044:0273 E8 19CC call sub_57 ; (1C42)
4044:0276 ,BB 023F mov bx,23Fh ; (4044:023F=1)
4044:0279 E8 1874 call sub_56 ; (1AF0)
4044:027C B1 01 mov cl,1
4044:027E ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0281 E8 1E44 call sub_77 ; (20C8)
4044:0284 BA 0290 mov dx,290h
4044:0287 B9 021D mov cx,21Dh
4044:028A E8 2BB7 call sub_118 ; (2E44)
4044:028D E8 2A47 call sub_113 ; (2CD7)
4044:0290 79 08 jns loc_12 ; Jump if not sign
4044:0292 B1 01 mov cl,1
4044:0294 ,BF 3C2C mov di,3C2Ch ; (4044:3C2C=91h)
4044:0297 E8 1E2E call sub_77 ; (20C8)
4044:029A loc_12: ; xref 4044:0290
4044:029A E8 19A5 call sub_57 ; (1C42)
4044:029D ,BF 3C28 mov di,3C28h ; (4044:3C28=0E8h)
4044:02A0 B0 01 mov al,1
4044:02A2 ,BE 3C2C mov si,3C2Ch ; (4044:3C2C=91h)
4044:02A5 B1 01 mov cl,1
4044:02A7 E8 1DDB call sub_75 ; (2085)
4044:02AA 75 02 jnz loc_13 ; Jump if not zero
4044:02AC D0 E0 shl al,1 ; Shift w/zeros fill
4044:02AE loc_13: ; xref 4044:02AA
4044:02AE A2 03A2 mov byte ptr ds:[3A2h],al ; (4044:03A2=0E8h)
4044:02B1 ,BF 3C2A mov di,3C2Ah ; (4044:3C2A=0)
4044:02B4 B0 01 mov al,1
4044:02B6 ,BE 3C2C mov si,3C2Ch ; (4044:3C2C=91h)
4044:02B9 B1 01 mov cl,1
4044:02BB E8 1DC7 call sub_75 ; (2085)
4044:02BE 75 02 jnz loc_14 ; Jump if not zero
4044:02C0 D0 E0 shl al,1 ; Shift w/zeros fill
4044:02C2 loc_14: ; xref 4044:02BE
4044:02C2 8A 26 03A2 mov ah,byte ptr ds:[3A2h] ; (4044:03A2=0E8h)
4044:02C6 22 E0 and ah,al
4044:02C8 82 FC 00 ;* cmp ah,0
4044:02C8 db 82h,0FCh, 00h ; Fixup - byte match
4044:02CB 74 03 jz loc_15 ; Jump if zero
4044:02CD E8 164F call sub_47 ; (191F)
4044:02D0 loc_15: ; xref 4044:02CB
4044:02D0 E8 1736 call sub_53 ; (1A09)
4044:02D3 89 1E 01ED mov word ptr ds:[1EDh],bx ; (4044:01ED=0B119h)
4044:02D7 A0 0222 mov al,byte ptr ds:[222h] ; (4044:0222=2)
4044:02DA 98 cbw ; Convrt byte to word
4044:02DB 2D 0011 sub ax,11h
4044:02DE F7 D8 neg ax
4044:02E0 8A C8 mov cl,al
4044:02E2 FE C9 dec cl
4044:02E4 D3 E3 shl bx,cl ; Shift w/zeros fill
4044:02E6 81 E3 8000 and bx,8000h
4044:02EA 8B C3 mov ax,bx
4044:02EC 80 E4 80 and ah,80h
4044:02EF 80 FC 80 cmp ah,80h
4044:02F2 B0 80 mov al,80h
4044:02F4 74 02 jz loc_16 ; Jump if zero
4044:02F6 D0 E0 shl al,1 ; Shift w/zeros fill
4044:02F8 loc_16: ; xref 4044:02F4
4044:02F8 3C 00 cmp al,0
4044:02FA 74 06 je loc_17 ; Jump if equal
4044:02FC ,BB 0241 mov bx,241h ; (4044:0241=5)
4044:02FF E8 0B76 call sub_14 ; (0E78)
4044:0302 loc_17: ; xref 4044:02FA
4044:0302 ,BB 0243 mov bx,243h ; (4044:0243=0B0h)
4044:0305 E8 12BA call sub_27 ; (15C2)
4044:0308 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:030C 8A 84 0010 mov al,data_13[si] ; (4044:0010=0)
4044:0310 98 cbw ; Convrt byte to word
4044:0311 40 inc ax
4044:0312 B1 02 mov cl,2
4044:0314 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0316 48 dec ax
4044:0317 A3 3C66 mov word ptr ds:[3C66h],ax ; (4044:3C66=7400h)
4044:031A 40 inc ax
4044:031B A3 3C68 mov word ptr ds:[3C68h],ax ; (4044:3C68=0C301h)
4044:031E C7 06 3C5E 0BF0 mov word ptr ds:[3C5Eh],0BF0h ; (4044:3C5E=0C4E8h)
4044:0324 C7 06 3C7A 0000 mov word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:032A BB 0245 mov bx,245h
4044:032D E8 10FD call sub_25 ; (142D)
4044:0330 E8 05A6 call sub_7 ; (08D9)
4044:0333 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0337 A0 3C8E mov al,byte ptr ds:[3C8Eh] ; (4044:3C8E=0BFh)
4044:033A 38 84 0060 cmp data_26[si],al ; (4044:0060=0)
4044:033E 75 03 jne loc_18 ; Jump if not equal
4044:0340 E8 05C5 call sub_8 ; (0908)
4044:0343 loc_18: ; xref 4044:033E
4044:0343 E8 037F call sub_5 ; (06C5)
4044:0346 E8 0101 call sub_3 ; (044A)
4044:0349 E8 107D call sub_22 ; (13C9)
4044:034C E9 00F8 jmp loc_20 ; (0447)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:01DC, 0207
;==========================================================================
4044:034F sub_2 proc near
4044:034F 8B F3 mov si,bx
4044:0351 ,BF 0249 mov di,249h ; (4044:0249=0F7h)
4044:0354 B9 0004 mov cx,4
4044:0357 FC cld ; Clear direction
4044:0358 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:035A BA 0252 mov dx,252h
4044:035D B9 02EB mov cx,2EBh
4044:0360 E8 2AE5 call sub_119 ; (2E48)
4044:0363 B0 01 mov al,1
4044:0365 E8 2B10 call sub_120 ; (2E78)
4044:0368 E8 18D7 call sub_57 ; (1C42)
4044:036B ,BB 024D mov bx,24Dh ; (4044:024D=2)
4044:036E E8 177F call sub_56 ; (1AF0)
4044:0371 B1 01 mov cl,1
4044:0373 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0376 E8 1D4F call sub_77 ; (20C8)
4044:0379 BA 0290 mov dx,290h
4044:037C B9 0325 mov cx,325h
4044:037F E8 2AC2 call sub_118 ; (2E44)
4044:0382 E8 2952 call sub_113 ; (2CD7)
4044:0385 79 1B jns loc_19 ; Jump if not sign
4044:0387 8A D8 mov bl,al
4044:0389 8B 36 3C60 mov si,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:038D 8B 2E 0249 mov bp,word ptr ds:[249h] ; (4044:0249=19F7h)
4044:0391 8A 46 00 mov al,[bp]
4044:0394 98 cbw ; Convrt byte to word
4044:0395 03 F0 add si,ax
4044:0397 B1 01 mov cl,1
4044:0399 8D BC FFFF ;* lea di,cs:[0FFFFh][si] ; Load effective addr
4044:0399 db 8Dh,0BCh,0FFh,0FFh ; Fixup - byte match
4044:039D 8A C3 mov al,bl
4044:039F E8 1D26 call sub_77 ; (20C8)
4044:03A2 loc_19: ; xref 4044:0385
4044:03A2 E8 189D call sub_57 ; (1C42)
4044:03A5 8B 36 3C60 mov si,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:03A9 8B 2E 0249 mov bp,word ptr ds:[249h] ; (4044:0249=19F7h)
4044:03AD 8A 46 00 mov al,[bp]
4044:03B0 98 cbw ; Convrt byte to word
4044:03B1 03 F0 add si,ax
4044:03B3 8D B4 FFFF ;* lea si,cs:[0FFFFh][si] ; Load effective addr
4044:03B3 db 8Dh,0B4h,0FFh,0FFh ; Fixup - byte match
4044:03B7 B0 01 mov al,1
4044:03B9 E8 1CFA call sub_76 ; (20B6)
4044:03BC 8A E0 mov ah,al
4044:03BE 50 push ax
4044:03BF BE 01B1 mov si,1B1h
4044:03C2 B0 1A mov al,1Ah
4044:03C4 E8 1CEF call sub_76 ; (20B6)
4044:03C7 8A E0 mov ah,al
4044:03C9 50 push ax
4044:03CA BE 01CB mov si,1CBh
4044:03CD B0 1A mov al,1Ah
4044:03CF E8 1CE4 call sub_76 ; (20B6)
4044:03D2 E8 20E3 call sub_92 ; (24B8)
4044:03D5 8A D8 mov bl,al
4044:03D7 8B 2E 3C60 mov bp,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:03DB 8B F5 mov si,bp
4044:03DD 8B 2E 0249 mov bp,word ptr ds:[249h] ; (4044:0249=19F7h)
4044:03E1 8A 46 00 mov al,[bp]
4044:03E4 98 cbw ; Convrt byte to word
4044:03E5 8B EE mov bp,si
4044:03E7 03 E8 add bp,ax
4044:03E9 B1 01 mov cl,1
4044:03EB 8D BE FFFF ;* lea di,cs:[0FFFFh][bp] ; Load effective addr
4044:03EB db 8Dh,0BEh,0FFh,0FFh ; Fixup - byte match
4044:03EF 8A C3 mov al,bl
4044:03F1 E8 1CD4 call sub_77 ; (20C8)
4044:03F4 8B 2E 3C60 mov bp,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:03F8 8B F5 mov si,bp
4044:03FA 8B 2E 0249 mov bp,word ptr ds:[249h] ; (4044:0249=19F7h)
4044:03FE 8A 46 00 mov al,[bp]
4044:0401 98 cbw ; Convrt byte to word
4044:0402 40 inc ax
4044:0403 8B EE mov bp,si
4044:0405 03 E8 add bp,ax
4044:0407 B1 01 mov cl,1
4044:0409 ,BE 0149 mov si,149h ; (4044:0149=54h)
4044:040C B0 01 mov al,1
4044:040E 8D BE FFFF ;* lea di,cs:[0FFFFh][bp] ; Load effective addr
4044:040E db 8Dh,0BEh,0FFh,0FFh ; Fixup - byte match
4044:0412 E8 1CC8 call sub_79 ; (20DD)
4044:0415 8B 2E 024B mov bp,word ptr ds:[24Bh] ; (4044:024B=3DBBh)
4044:0419 89 2E 03A4 mov word ptr ds:[3A4h],bp ; (4044:03A4=8B18h)
4044:041D 8B 2E 3C60 mov bp,word ptr ds:[3C60h] ; (4044:3C60=0F600h)
4044:0421 8B F5 mov si,bp
4044:0423 8B 2E 0249 mov bp,word ptr ds:[249h] ; (4044:0249=19F7h)
4044:0427 8A 46 00 mov al,[bp]
4044:042A 98 cbw ; Convrt byte to word
4044:042B 8B EE mov bp,si
4044:042D 03 E8 add bp,ax
4044:042F 8D BE FFFF ;* lea di,cs:[0FFFFh][bp] ; Load effective addr
4044:042F db 8Dh,0BEh,0FFh,0FFh ; Fixup - byte match
4044:0433 B0 01 mov al,1
4044:0435 ,BE 0212 mov si,212h ; (4044:0212=0B0h)
4044:0438 B1 10 mov cl,10h
4044:043A 91 xchg cx,ax
4044:043B E8 2053 call sub_91 ; (2491)
4044:043E 8B C3 mov ax,bx
4044:0440 8B 1E 03A4 mov bx,word ptr ds:[3A4h] ; (4044:03A4=8B18h)
4044:0444 88 07 mov [bx],al
4044:0446 C3 retn
sub_2 endp
4044:0447 loc_20: ; xref 4044:034C
4044:0447 E9 01A8 jmp loc_34 ; (05F2)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0346
;==========================================================================
4044:044A sub_3 proc near
4044:044A A1 3C22 mov ax,word ptr ds:[3C22h] ; (4044:3C22=7400h)
4044:044D A3 3C70 mov word ptr ds:[3C70h],ax ; (4044:3C70=0F600h)
4044:0450 FF 0E 3C7C dec word ptr ds:[3C7Ch] ; (4044:3C7C=240Ah)
4044:0454 FF 0E 3C7A dec word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0458 A0 01E5 mov al,byte ptr ds:[1E5h] ; (4044:01E5=2)
4044:045B 24 80 and al,80h
4044:045D 3C 00 cmp al,0
4044:045F 74 0F je loc_21 ; Jump if equal
4044:0461 A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:0464 A3 3C80 mov word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:0467 A0 3C6E mov al,byte ptr ds:[3C6Eh] ; (4044:3C6E=0E8h)
4044:046A A2 3C86 mov byte ptr ds:[3C86h],al ; (4044:3C86=3Ch)
4044:046D E9 00F6 jmp loc_25 ; (0566)
4044:0470 loc_21: ; xref 4044:045F
4044:0470 B9 0003 mov cx,3
4044:0473 A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:0476 99 cwd ; Word to double word
4044:0477 F7 F9 idiv cx ; ax,dx rem=dx:ax/reg
4044:0479 40 inc ax
4044:047A A3 3C6A mov word ptr ds:[3C6Ah],ax ; (4044:3C6A=0E0EBh)
4044:047D A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:0480 03 06 3C6A add ax,word ptr ds:[3C6Ah] ; (4044:3C6A=0E0EBh)
4044:0484 A3 03A6 mov word ptr ds:[3A6h],ax ; (4044:03A6=6036h)
4044:0487 BB 0003 mov bx,3
4044:048A 8B 16 3C6C mov dx,data_359 ; (4044:3C6C=45EBh)
4044:048E E8 1F61 call sub_90 ; (23F2)
4044:0491 83 EB 02 sub bx,2
4044:0494 F7 DB neg bx
4044:0496 A1 03A6 mov ax,word ptr ds:[3A6h] ; (4044:03A6=6036h)
4044:0499 03 C3 add ax,bx
4044:049B A3 3C80 mov word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:049E 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:04A2 8B 84 0007 mov ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:04A6 39 06 3C80 cmp word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:04AA 7F 03 jg loc_22 ; Jump if >
4044:04AC E9 0093 jmp loc_24 ; (0542)
4044:04AF loc_22: ; xref 4044:04AA
4044:04AF 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:04B3 8B 84 0007 mov ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:04B7 2B 06 3C64 sub ax,word ptr ds:[3C64h] ; (4044:3C64=3C80h)
4044:04BB A3 3C6C mov data_359,ax ; (4044:3C6C=45EBh)
4044:04BE B9 0003 mov cx,3
4044:04C1 99 cwd ; Word to double word
4044:04C2 F7 F9 idiv cx ; ax,dx rem=dx:ax/reg
4044:04C4 40 inc ax
4044:04C5 A3 3C6A mov word ptr ds:[3C6Ah],ax ; (4044:3C6A=0E0EBh)
4044:04C8 A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:04CB 03 06 3C6A add ax,word ptr ds:[3C6Ah] ; (4044:3C6A=0E0EBh)
4044:04CF A3 03A8 mov word ptr ds:[3A8h],ax ; (4044:03A8=8B3Ch)
4044:04D2 BB 0003 mov bx,3
4044:04D5 8B 16 3C6C mov dx,data_359 ; (4044:3C6C=45EBh)
4044:04D9 E8 1F16 call sub_90 ; (23F2)
4044:04DC 83 EB 02 sub bx,2
4044:04DF F7 DB neg bx
4044:04E1 A1 03A8 mov ax,word ptr ds:[3A8h] ; (4044:03A8=8B3Ch)
4044:04E4 03 C3 add ax,bx
4044:04E6 A3 3C80 mov word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:04E9 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:04ED 8B 84 0007 mov ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:04F1 39 06 3C80 cmp word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:04F5 7E 06 jle loc_23 ; Jump if < or =
4044:04F7 ,BB 0257 mov bx,257h ; (4044:0257=6Fh)
4044:04FA E8 097B call sub_14 ; (0E78)
4044:04FD loc_23: ; xref 4044:04F5
4044:04FD E8 0C05 call sub_18 ; (1105)
4044:0500 B9 0003 mov cx,3
4044:0503 A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:0506 99 cwd ; Word to double word
4044:0507 F7 F9 idiv cx ; ax,dx rem=dx:ax/reg
4044:0509 40 inc ax
4044:050A A3 3C6A mov word ptr ds:[3C6Ah],ax ; (4044:3C6A=0E0EBh)
4044:050D A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:0510 03 06 3C6A add ax,word ptr ds:[3C6Ah] ; (4044:3C6A=0E0EBh)
4044:0514 A3 03AA mov word ptr ds:[3AAh],ax ; (4044:03AA=492Eh)
4044:0517 BB 0003 mov bx,3
4044:051A 8B 16 3C6C mov dx,data_359 ; (4044:3C6C=45EBh)
4044:051E E8 1ED1 call sub_90 ; (23F2)
4044:0521 83 EB 02 sub bx,2
4044:0524 F7 DB neg bx
4044:0526 A1 03AA mov ax,word ptr ds:[3AAh] ; (4044:03AA=492Eh)
4044:0529 03 C3 add ax,bx
4044:052B A3 3C80 mov word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:052E 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:0532 8B 84 0007 mov ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:0536 39 06 3C80 cmp word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:053A 7E 06 jle loc_24 ; Jump if < or =
4044:053C ,BB 0259 mov bx,259h ; (4044:0259=0BAh)
4044:053F E8 0936 call sub_14 ; (0E78)
4044:0542 loc_24: ; xref 4044:04AC, 053A
4044:0542 8B 1E 3C68 mov bx,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:0546 8B 16 3C80 mov dx,word ptr ds:[3C80h] ; (4044:3C80=7400h)
4044:054A E8 1EA5 call sub_90 ; (23F2)
4044:054D 83 EB 03 sub bx,3
4044:0550 89 1E 03AC mov word ptr ds:[3ACh],bx ; (4044:03AC=8A02h)
4044:0554 BB 0003 mov bx,3
4044:0557 8B 16 3C6C mov dx,data_359 ; (4044:3C6C=45EBh)
4044:055B E8 1E94 call sub_90 ; (23F2)
4044:055E A1 03AC mov ax,word ptr ds:[3ACh] ; (4044:03AC=8A02h)
4044:0561 03 C3 add ax,bx
4044:0563 A2 3C86 mov byte ptr ds:[3C86h],al ; (4044:3C86=3Ch)
4044:0566 loc_25: ; xref 4044:046D
4044:0566 C7 06 3C58 2BF0 mov word ptr ds:[3C58h],2BF0h ; (4044:3C58=0E7h)
4044:056C E8 09D2 call sub_16 ; (0F41)
4044:056F A1 3C58 mov ax,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:0572 A3 3C62 mov word ptr ds:[3C62h],ax ; (4044:3C62=24D0h)
4044:0575 C7 06 3C58 1BF0 mov word ptr ds:[3C58h],1BF0h ; (4044:3C58=0E7h)
4044:057B E8 09C3 call sub_16 ; (0F41)
4044:057E loc_26: ; xref 4044:0598
4044:057E ,A1 3C7C mov ax,word ptr ds:[3C7Ch] ; (4044:3C7C=240Ah)
4044:0581 39 06 3C72 cmp word ptr ds:[3C72h],ax ; (4044:3C72=24D0h)
4044:0585 7D 13 jge loc_27 ; Jump if > or =
4044:0587 BB 025B mov bx,25Bh
4044:058A E8 0F6A call sub_26 ; (14F7)
4044:058D A1 3C68 mov ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:0590 29 06 3C7A sub word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:0594 FF 0E 3C7C dec word ptr ds:[3C7Ch] ; (4044:3C7C=240Ah)
4044:0598 EB E4 jmp short loc_26 ; (057E)
4044:059A loc_27: ; xref 4044:0585
4044:059A 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:059E A1 3C64 mov ax,word ptr ds:[3C64h] ; (4044:3C64=3C80h)
4044:05A1 48 dec ax
4044:05A2 3B 84 0007 cmp ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:05A6 75 02 jne loc_28 ; Jump if not equal
4044:05A8 EB 35 jmp short loc_31 ; (05DF)
4044:05AA loc_28: ; xref 4044:05A6
4044:05AA A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:05AD A3 3C7A mov word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:05B0 A1 3C80 mov ax,word ptr ds:[3C80h] ; (4044:3C80=7400h)
4044:05B3 A3 3C20 mov word ptr ds:[3C20h],ax ; (4044:3C20=3C80h)
4044:05B6 BB 025F mov bx,25Fh
4044:05B9 E8 0E71 call sub_25 ; (142D)
4044:05BC A0 3C86 mov al,byte ptr ds:[3C86h] ; (4044:3C86=3Ch)
4044:05BF A2 3C82 mov byte ptr ds:[3C82h],al ; (4044:3C82=18h)
4044:05C2 ,BB 0263 mov bx,263h ; (4044:0263=0)
4044:05C5 E8 03AB call sub_9 ; (0973)
4044:05C8 loc_29: ; xref 4044:05DB
4044:05C8 ,83 3E 3C7A 00 cmp word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:05CD 7C 0E jl loc_30 ; Jump if <
4044:05CF BB 0265 mov bx,265h
4044:05D2 E8 0E58 call sub_25 ; (142D)
4044:05D5 ,BB 0269 mov bx,269h ; (4044:0269=23h)
4044:05D8 E8 0398 call sub_9 ; (0973)
4044:05DB EB EB jmp short loc_29 ; (05C8)
4044:05DD loc_30: ; xref 4044:05CD
4044:05DD EB 06 jmp short loc_32 ; (05E5)
4044:05DF loc_31: ; xref 4044:05A8
4044:05DF BB 026B mov bx,26Bh
4044:05E2 E8 0F12 call sub_26 ; (14F7)
4044:05E5 loc_32: ; xref 4044:05DD, 05EF
4044:05E5 ,83 3E 3C24 00 cmp word ptr ds:[3C24h],0 ; (4044:3C24=0E81Ch)
4044:05EA 7E 05 jle loc_ret_33 ; Jump if < or =
4044:05EC E8 05B7 call sub_11 ; (0BA6)
4044:05EF EB F4 jmp short loc_32 ; (05E5)
4044:05F1 loc_ret_33: ; xref 4044:05EA
4044:05F1 C3 retn
sub_3 endp
4044:05F2 loc_34: ; xref 4044:0447
4044:05F2 E9 00CD jmp loc_45 ; (06C2)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0969
;==========================================================================
4044:05F5 sub_4 proc near
4044:05F5 C7 06 3C7A 0000 mov word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:05FB loc_35: ; xref 4044:06BE
4044:05FB ,8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:05FF 8B 84 0007 mov ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:0603 39 06 3C7A cmp word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:0607 7E 03 jle loc_36 ; Jump if < or =
4044:0609 E9 00B5 jmp loc_ret_44 ; (06C1)
4044:060C loc_36: ; xref 4044:0607
4044:060C BB 0273 mov bx,273h
4044:060F E8 0E1B call sub_25 ; (142D)
4044:0612 A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0615 A3 0271 mov word ptr ds:[271h],ax ; (4044:0271=23C2h)
4044:0618 C6 06 026F 00 mov byte ptr ds:[26Fh],0 ; (4044:026F=1Eh)
4044:061D A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:0620 A2 0277 mov byte ptr ds:[277h],al ; (4044:0277=3Fh)
4044:0623 loc_37: ; xref 4044:06B5
4044:0623 ,A0 0277 mov al,byte ptr ds:[277h] ; (4044:0277=3Fh)
4044:0626 38 06 026F cmp byte ptr ds:[26Fh],al ; (4044:026F=1Eh)
4044:062A B0 80 mov al,80h
4044:062C 7E 02 jle loc_38 ; Jump if < or =
4044:062E D0 E0 shl al,1 ; Shift w/zeros fill
4044:0630 loc_38: ; xref 4044:062C
4044:0630 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:0634 8B 9C 0007 mov bx,word ptr data_6+1[si] ; (4044:0007=0)
4044:0638 39 1E 3C7A cmp word ptr ds:[3C7Ah],bx ; (4044:3C7A=92A0h)
4044:063C B4 80 mov ah,80h
4044:063E 7E 02 jle loc_39 ; Jump if < or =
4044:0640 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:0642 loc_39: ; xref 4044:063E
4044:0642 22 C4 and al,ah
4044:0644 3C 00 cmp al,0
4044:0646 75 03 jne loc_40 ; Jump if not equal
4044:0648 E9 006D jmpn loc_43 ; (06B8)
4044:064B loc_40: ; xref 4044:0646
4044:064B A0 01EA mov al,byte ptr ds:[1EAh] ; (4044:01EA=2)
4044:064E F6 D0 not al
4044:0650 24 80 and al,80h
4044:0652 3C 00 cmp al,0
4044:0654 74 33 je loc_41 ; Jump if equal
4044:0656 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:065A A0 026F mov al,byte ptr ds:[26Fh] ; (4044:026F=1Eh)
4044:065D 98 cbw ; Convrt byte to word
4044:065E B1 05 mov cl,5
4044:0660 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0662 03 F0 add si,ax
4044:0664 A0 3C90 mov al,byte ptr ds:[3C90h] ; (4044:3C90=0F6h)
4044:0667 38 04 cmp [si],al
4044:0669 75 1E jne loc_41 ; Jump if not equal
4044:066B ,BB 0278 mov bx,278h ; (4044:0278=2)
4044:066E E8 094F call sub_17 ; (0FC0)
4044:0671 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0675 A0 026F mov al,byte ptr ds:[26Fh] ; (4044:026F=1Eh)
4044:0678 98 cbw ; Convrt byte to word
4044:0679 B1 05 mov cl,5
4044:067B D3 E0 shl ax,cl ; Shift w/zeros fill
4044:067D 03 F0 add si,ax
4044:067F 80 A4 000C 81 and data_11[si],81h ; (4044:000C=0)
4044:0684 C6 06 01EA 80 mov byte ptr ds:[1EAh],80h ; (4044:01EA=2)
4044:0689 loc_41: ; xref 4044:0654, 0669
4044:0689 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:068D A0 026F mov al,byte ptr ds:[26Fh] ; (4044:026F=1Eh)
4044:0690 98 cbw ; Convrt byte to word
4044:0691 B1 05 mov cl,5
4044:0693 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0695 03 F0 add si,ax
4044:0697 A0 3C8E mov al,byte ptr ds:[3C8Eh] ; (4044:3C8E=0BFh)
4044:069A 38 04 cmp [si],al
4044:069C 75 0F jne loc_42 ; Jump if not equal
4044:069E A0 026F mov al,byte ptr ds:[26Fh] ; (4044:026F=1Eh)
4044:06A1 98 cbw ; Convrt byte to word
4044:06A2 B1 05 mov cl,5
4044:06A4 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:06A6 8B F0 mov si,ax
4044:06A8 C6 84 0BF0 E5 mov byte ptr ds:[0BF0h][si],0E5h ; (4044:0BF0=2)
4044:06AD loc_42: ; xref 4044:069C
4044:06AD FF 06 3C7A inc word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:06B1 FE 06 026F inc byte ptr ds:[26Fh] ; (4044:026F=1Eh)
4044:06B5 E9 FF6B jmp loc_37 ; (0623)
4044:06B8 loc_43: ; xref 4044:0648
4044:06B8 BB 027A mov bx,27Ah
4044:06BB E8 0E39 call sub_26 ; (14F7)
4044:06BE E9 FF3A jmp loc_35 ; (05FB)
4044:06C1 loc_ret_44: ; xref 4044:0609
4044:06C1 C3 retn
sub_4 endp
4044:06C2 loc_45: ; xref 4044:05F2
4044:06C2 E9 0151 jmp loc_67 ; (0816)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0343
;==========================================================================
4044:06C5 sub_5 proc near
4044:06C5 C7 06 3C64 0000 mov word ptr ds:[3C64h],0 ; (4044:3C64=3C80h)
4044:06CB C7 06 3C7C 0000 mov word ptr ds:[3C7Ch],0 ; (4044:3C7C=240Ah)
4044:06D1 C7 06 3C22 0000 mov word ptr ds:[3C22h],0 ; (4044:3C22=7400h)
4044:06D7 C7 06 3C24 0000 mov word ptr ds:[3C24h],0 ; (4044:3C24=0E81Ch)
4044:06DD C6 06 01E6 80 mov byte ptr ds:[1E6h],80h ; (4044:01E6=0EBh)
4044:06E2 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:06E6 A0 3C8E mov al,byte ptr ds:[3C8Eh] ; (4044:3C8E=0BFh)
4044:06E9 38 84 0060 cmp data_26[si],al ; (4044:0060=0)
4044:06ED 75 05 jne loc_46 ; Jump if not equal
4044:06EF C6 06 01E6 00 mov byte ptr ds:[1E6h],0 ; (4044:01E6=0EBh)
4044:06F4 loc_46: ; xref 4044:06ED, 07FA
4044:06F4 ,8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:06F8 8B 84 0007 mov ax,word ptr data_6+1[si] ; (4044:0007=0)
4044:06FC 39 06 3C7A cmp word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:0700 7E 03 jle loc_47 ; Jump if < or =
4044:0702 E9 00F8 jmp loc_65 ; (07FD)
4044:0705 loc_47: ; xref 4044:0700
4044:0705 C6 06 027E 00 mov byte ptr ds:[27Eh],0 ; (4044:027E=0BFh)
4044:070A A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:070D A2 027F mov byte ptr ds:[27Fh],al ; (4044:027F=0B0h)
4044:0710 loc_48: ; xref 4044:07ED
4044:0710 ,A0 027F mov al,byte ptr ds:[27Fh] ; (4044:027F=0B0h)
4044:0713 38 06 027E cmp byte ptr ds:[27Eh],al ; (4044:027E=0BFh)
4044:0717 B0 80 mov al,80h
4044:0719 7E 02 jle loc_49 ; Jump if < or =
4044:071B D0 E0 shl al,1 ; Shift w/zeros fill
4044:071D loc_49: ; xref 4044:0719
4044:071D 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:0721 8B 9C 0007 mov bx,word ptr data_6+1[si] ; (4044:0007=0)
4044:0725 39 1E 3C7A cmp word ptr ds:[3C7Ah],bx ; (4044:3C7A=92A0h)
4044:0729 B4 80 mov ah,80h
4044:072B 7E 02 jle loc_50 ; Jump if < or =
4044:072D D0 E4 shl ah,1 ; Shift w/zeros fill
4044:072F loc_50: ; xref 4044:072B
4044:072F 22 C4 and al,ah
4044:0731 3C 00 cmp al,0
4044:0733 75 03 jne loc_51 ; Jump if not equal
4044:0735 E9 00B8 jmp loc_64 ; (07F0)
4044:0738 loc_51: ; xref 4044:0733
4044:0738 A0 027E mov al,byte ptr ds:[27Eh] ; (4044:027E=0BFh)
4044:073B 98 cbw ; Convrt byte to word
4044:073C B1 05 mov cl,5
4044:073E D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0740 8B F0 mov si,ax
4044:0742 80 BC 0BF0 E5 cmp byte ptr ds:[0BF0h][si],0E5h ; (4044:0BF0=2)
4044:0747 B0 80 mov al,80h
4044:0749 75 02 jnz loc_52 ; Jump if not zero
4044:074B D0 E0 shl al,1 ; Shift w/zeros fill
4044:074D loc_52: ; xref 4044:0749
4044:074D 3C 00 cmp al,0
4044:074F 75 03 jne loc_53 ; Jump if not equal
4044:0751 E9 008D jmp loc_62 ; (07E1)
4044:0754 loc_53: ; xref 4044:074F
4044:0754 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0758 A0 027E mov al,byte ptr ds:[27Eh] ; (4044:027E=0BFh)
4044:075B 98 cbw ; Convrt byte to word
4044:075C B1 05 mov cl,5
4044:075E D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0760 03 F0 add si,ax
4044:0762 8A 04 mov al,[si]
4044:0764 A2 3C8C mov byte ptr ds:[3C8Ch],al ; (4044:3C8C=0)
4044:0767 82 3E 3C8C 0F ;* cmp byte ptr ds:[3C8Ch],0Fh ; (4044:3C8C=0)
4044:0767 db 82h, 3Eh, 8Ch, 3Ch, 0Fh ; Fixup - byte match
4044:076C B0 80 mov al,80h
4044:076E 7F 02 jg loc_54 ; Jump if >
4044:0770 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0772 loc_54: ; xref 4044:076E
4044:0772 82 3E 3C8C 20 ;* cmp byte ptr ds:[3C8Ch],20h ; (4044:3C8C=0) ' '
4044:0772 db 82h, 3Eh, 8Ch, 3Ch, 20h ; Fixup - byte match
4044:0777 B4 80 mov ah,80h
4044:0779 7C 02 jl loc_55 ; Jump if <
4044:077B D0 E4 shl ah,1 ; Shift w/zeros fill
4044:077D loc_55: ; xref 4044:0779
4044:077D 22 C4 and al,ah
4044:077F 3C 00 cmp al,0
4044:0781 74 08 je loc_56 ; Jump if equal
4044:0783 ,BB 0280 mov bx,280h ; (4044:0280=1)
4044:0786 E8 0090 call sub_6 ; (0819)
4044:0789 EB 0F jmp short loc_57 ; (079A)
4044:078B loc_56: ; xref 4044:0781
4044:078B A0 3C90 mov al,byte ptr ds:[3C90h] ; (4044:3C90=0F6h)
4044:078E 38 06 3C8C cmp byte ptr ds:[3C8Ch],al ; (4044:3C8C=0)
4044:0792 75 06 jne loc_57 ; Jump if not equal
4044:0794 ,BB 0282 mov bx,282h ; (4044:0282=44h)
4044:0797 E8 0826 call sub_17 ; (0FC0)
4044:079A loc_57: ; xref 4044:0789, 0792
4044:079A A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=0EBh)
4044:079D F6 D0 not al
4044:079F 24 80 and al,80h
4044:07A1 82 3E 3C8C 21 ;* cmp byte ptr ds:[3C8Ch],21h ; (4044:3C8C=0) '!'
4044:07A1 db 82h, 3Eh, 8Ch, 3Ch, 21h ; Fixup - byte match
4044:07A6 B4 80 mov ah,80h
4044:07A8 74 02 jz loc_58 ; Jump if zero
4044:07AA D0 E4 shl ah,1 ; Shift w/zeros fill
4044:07AC loc_58: ; xref 4044:07A8
4044:07AC 22 C4 and al,ah
4044:07AE 82 3E 3C8C 21 ;* cmp byte ptr ds:[3C8Ch],21h ; (4044:3C8C=0) '!'
4044:07AE db 82h, 3Eh, 8Ch, 3Ch, 21h ; Fixup - byte match
4044:07B3 B4 80 mov ah,80h
4044:07B5 7C 02 jl loc_59 ; Jump if <
4044:07B7 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:07B9 loc_59: ; xref 4044:07B5
4044:07B9 0A C4 or al,ah
4044:07BB 3C 00 cmp al,0
4044:07BD 74 15 je loc_60 ; Jump if equal
4044:07BF A0 027E mov al,byte ptr ds:[27Eh] ; (4044:027E=0BFh)
4044:07C2 98 cbw ; Convrt byte to word
4044:07C3 A3 3C6E mov word ptr ds:[3C6Eh],ax ; (4044:3C6E=0D0E8h)
4044:07C6 A1 3C7C mov ax,word ptr ds:[3C7Ch] ; (4044:3C7C=240Ah)
4044:07C9 A3 3C72 mov word ptr ds:[3C72h],ax ; (4044:3C72=24D0h)
4044:07CC A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:07CF A3 3C6C mov data_359,ax ; (4044:3C6C=45EBh)
4044:07D2 EB 0B jmp short loc_61 ; (07DF)
4044:07D4 loc_60: ; xref 4044:07BD
4044:07D4 82 3E 3C8C 21 ;* cmp byte ptr ds:[3C8Ch],21h ; (4044:3C8C=0) '!'
4044:07D4 db 82h, 3Eh, 8Ch, 3Ch, 21h ; Fixup - byte match
4044:07D9 75 04 jnz loc_61 ; Jump if not zero
4044:07DB FF 06 3C64 inc word ptr ds:[3C64h] ; (4044:3C64=3C80h)
4044:07DF loc_61: ; xref 4044:07D2, 07D9
4044:07DF EB 04 jmp short loc_63 ; (07E5)
4044:07E1 loc_62: ; xref 4044:0751
4044:07E1 FF 06 3C64 inc word ptr ds:[3C64h] ; (4044:3C64=3C80h)
4044:07E5 loc_63: ; xref 4044:07DF
4044:07E5 FF 06 3C7A inc word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:07E9 FE 06 027E inc byte ptr ds:[27Eh] ; (4044:027E=0BFh)
4044:07ED E9 FF20 jmp loc_48 ; (0710)
4044:07F0 loc_64: ; xref 4044:0735
4044:07F0 FF 06 3C7C inc word ptr ds:[3C7Ch] ; (4044:3C7C=240Ah)
4044:07F4 BB 0284 mov bx,284h
4044:07F7 E8 0C33 call sub_25 ; (142D)
4044:07FA E9 FEF7 jmp loc_46 ; (06F4)
4044:07FD loc_65: ; xref 4044:0702
4044:07FD A0 01E5 mov al,byte ptr ds:[1E5h] ; (4044:01E5=2)
4044:0800 F6 D0 not al
4044:0802 24 80 and al,80h
4044:0804 3C 00 cmp al,0
4044:0806 74 0D je loc_ret_66 ; Jump if equal
4044:0808 B9 0003 mov cx,3
4044:080B A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:080E 99 cwd ; Word to double word
4044:080F F7 F9 idiv cx ; ax,dx rem=dx:ax/reg
4044:0811 40 inc ax
4044:0812 A3 3C6A mov word ptr ds:[3C6Ah],ax ; (4044:3C6A=0E0EBh)
4044:0815 loc_ret_66: ; xref 4044:0806
4044:0815 C3 retn
sub_5 endp
4044:0816 loc_67: ; xref 4044:06C2
4044:0816 E9 00BE jmp loc_71 ; (08D7)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0786, 0C3D
;==========================================================================
4044:0819 sub_6 proc near
4044:0819 8B 07 mov ax,[bx]
4044:081B A3 0288 mov word ptr ds:[288h],ax ; (4044:0288=21Dh)
4044:081E A1 3C1E mov ax,word ptr ds:[3C1Eh] ; (4044:3C1E=240Ah)
4044:0821 39 06 3C22 cmp word ptr ds:[3C22h],ax ; (4044:3C22=7400h)
4044:0825 7E 03 jle loc_68 ; Jump if < or =
4044:0827 E9 00A8 jmp loc_69 ; (08D2)
4044:082A loc_68: ; xref 4044:0825
4044:082A FF 06 3C22 inc word ptr ds:[3C22h] ; (4044:3C22=7400h)
4044:082E A0 3C8C mov al,byte ptr ds:[3C8Ch] ; (4044:3C8C=0)
4044:0831 2C 10 sub al,10h
4044:0833 8A D8 mov bl,al
4044:0835 8B 36 3C26 mov si,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0839 B8 0015 mov ax,15h
4044:083C F7 2E 3C22 imul word ptr ds:[3C22h] ; (4044:3C22=7400h) dx:ax = data * ax
4044:0840 03 F0 add si,ax
4044:0842 88 9C FFEB mov ds:data_453e[si],bl ; (4044:FFEB=0)
4044:0846 8B 36 3C26 mov si,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:084A B8 0015 mov ax,15h
4044:084D F7 2E 3C22 imul word ptr ds:[3C22h] ; (4044:3C22=7400h) dx:ax = data * ax
4044:0851 03 F0 add si,ax
4044:0853 8B EE mov bp,si
4044:0855 8B 3E 3C5E mov di,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0859 8B 1E 0288 mov bx,word ptr ds:[288h] ; (4044:0288=21Dh)
4044:085D 8A 07 mov al,[bx]
4044:085F 98 cbw ; Convrt byte to word
4044:0860 B1 05 mov cl,5
4044:0862 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0864 03 F8 add di,ax
4044:0866 B1 0B mov cl,0Bh
4044:0868 ,8D B5 0001 lea si,data_2[di] ; (4044:0001=0B1h) Load effective addr
4044:086C B0 0B mov al,0Bh
4044:086E 8B FD mov di,bp
4044:0870 ,8D BD FFEC lea di,ds:data_454e[di] ; (4044:FFEC=0) Load effective addr
4044:0874 E8 1866 call sub_79 ; (20DD)
4044:0877 8B 1E 3C5E mov bx,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:087B 8B 2E 0288 mov bp,word ptr ds:[288h] ; (4044:0288=21Dh)
4044:087F 8A 46 00 mov al,[bp]
4044:0882 98 cbw ; Convrt byte to word
4044:0883 B1 05 mov cl,5
4044:0885 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0887 03 D8 add bx,ax
4044:0889 8B 2E 3C26 mov bp,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:088D B8 0015 mov ax,15h
4044:0890 F7 2E 3C22 imul word ptr ds:[3C22h] ; (4044:3C22=7400h) dx:ax = data * ax
4044:0894 03 E8 add bp,ax
4044:0896 8A 87 000C mov al,data_11[bx] ; (4044:000C=0)
4044:089A 88 86 FFF7 mov ss:data_455e[bp],al ; (4044:FFF7=0)
4044:089E 8B 1E 3C26 mov bx,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:08A2 B8 0015 mov ax,15h
4044:08A5 F7 2E 3C22 imul word ptr ds:[3C22h] ; (4044:3C22=7400h) dx:ax = data * ax
4044:08A9 03 D8 add bx,ax
4044:08AB 8B 2E 3C5E mov bp,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:08AF 8B F5 mov si,bp
4044:08B1 8B 2E 0288 mov bp,word ptr ds:[288h] ; (4044:0288=21Dh)
4044:08B5 8A 46 00 mov al,[bp]
4044:08B8 98 cbw ; Convrt byte to word
4044:08B9 B1 05 mov cl,5
4044:08BB D3 E0 shl ax,cl ; Shift w/zeros fill
4044:08BD 8B EE mov bp,si
4044:08BF 03 E8 add bp,ax
4044:08C1 B1 08 mov cl,8
4044:08C3 ,8D B6 0018 lea si,ss:data_16+1[bp] ; (4044:0018=0) Load effective addr
4044:08C7 B0 08 mov al,8
4044:08C9 ,8D BF FFF8 lea di,ds:data_456e[bx] ; (4044:FFF8=0) Load effective addr
4044:08CD E8 180D call sub_79 ; (20DD)
4044:08D0 EB 04 jmp short loc_ret_70 ; (08D6)
4044:08D2 loc_69: ; xref 4044:0827
4044:08D2 FF 06 3C24 inc word ptr ds:[3C24h] ; (4044:3C24=0E81Ch)
4044:08D6 loc_ret_70: ; xref 4044:08D0
4044:08D6 C3 retn
sub_6 endp
4044:08D7 loc_71: ; xref 4044:0816
4044:08D7 EB 2D jmp short loc_73 ; (0906)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0330
;==========================================================================
4044:08D9 sub_7 proc near
4044:08D9 E8 1A81 call sub_87 ; (235D)
4044:08DC 89 1E 028A mov word ptr ds:[28Ah],bx ; (4044:028A=0B7E8h)
4044:08E0 ,BB 028C mov bx,28Ch ; (4044:028C=2Bh)
4044:08E3 E8 1ADD call sub_89 ; (23C3)
4044:08E6 89 1E 3C26 mov word ptr ds:[3C26h],bx ; (4044:3C26=0BFh)
4044:08EA B9 0015 mov cx,15h
4044:08ED A1 028A mov ax,word ptr ds:[28Ah] ; (4044:028A=0B7E8h)
4044:08F0 99 cwd ; Word to double word
4044:08F1 F7 F9 idiv cx ; ax,dx rem=dx:ax/reg
4044:08F3 D1 E0 shl ax,1 ; Shift w/zeros fill
4044:08F5 A3 3C1E mov word ptr ds:[3C1Eh],ax ; (4044:3C1E=240Ah)
4044:08F8 83 3E 3C1E 0A cmp word ptr ds:[3C1Eh],0Ah ; (4044:3C1E=240Ah)
4044:08FD 7F 06 jg loc_ret_72 ; Jump if >
4044:08FF ,BB 028E mov bx,28Eh ; (4044:028E=47h)
4044:0902 E8 0573 call sub_14 ; (0E78)
4044:0905 loc_ret_72: ; xref 4044:08FD
4044:0905 C3 retn
sub_7 endp
4044:0906 loc_73: ; xref 4044:08D7
4044:0906 EB 68 jmp short loc_78 ; (0970)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0340
;==========================================================================
4044:0908 sub_8 proc near
4044:0908 A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=0EBh)
4044:090B 24 80 and al,80h
4044:090D 3C 00 cmp al,0
4044:090F 74 01 je loc_74 ; Jump if equal
4044:0911 C3 retn
4044:0912 loc_74: ; xref 4044:090F
4044:0912 BA 0252 mov dx,252h
4044:0915 B9 08A3 mov cx,8A3h
4044:0918 E8 252D call sub_119 ; (2E48)
4044:091B B0 02 mov al,2
4044:091D E8 2558 call sub_120 ; (2E78)
4044:0920 E8 131F call sub_57 ; (1C42)
4044:0923 ,BB 0290 mov bx,290h ; (4044:0290=79h)
4044:0926 E8 11C7 call sub_56 ; (1AF0)
4044:0929 B1 01 mov cl,1
4044:092B ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:092E E8 1797 call sub_77 ; (20C8)
4044:0931 ,BB 0292 mov bx,292h ; (4044:0292=0B1h)
4044:0934 E8 11B9 call sub_56 ; (1AF0)
4044:0937 B1 01 mov cl,1
4044:0939 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:093C E8 1789 call sub_77 ; (20C8)
4044:093F ,BB 0294 mov bx,294h ; (4044:0294=0BFh)
4044:0942 E8 0572 call sub_15 ; (0EB7)
4044:0945 F6 D0 not al
4044:0947 24 80 and al,80h
4044:0949 3C 00 cmp al,0
4044:094B 74 1C je loc_76 ; Jump if equal
4044:094D C6 06 01E5 80 mov byte ptr ds:[1E5h],80h ; (4044:01E5=2)
4044:0952 C6 06 01E9 00 mov byte ptr ds:[1E9h],0 ; (4044:01E9=33h)
4044:0957 ,BB 0296 mov bx,296h ; (4044:0296=3Ch)
4044:095A E8 055A call sub_15 ; (0EB7)
4044:095D 3C 00 cmp al,0
4044:095F 74 06 je loc_75 ; Jump if equal
4044:0961 C6 06 01E9 80 mov byte ptr ds:[1E9h],80h ; (4044:01E9=33h)
4044:0966 C3 retn
4044:0967 loc_75: ; xref 4044:095F
4044:0967 EB 03 jmp short loc_77 ; (096C)
4044:0969 loc_76: ; xref 4044:094B
4044:0969 E8 FC89 call sub_4 ; (05F5)
4044:096C loc_77: ; xref 4044:0967
4044:096C E8 0A5A call sub_22 ; (13C9)
4044:096F C3 retn
sub_8 endp
4044:0970 loc_78: ; xref 4044:0906
4044:0970 E9 014A jmp loc_90 ; (0ABD)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:05C5, 05D8
;==========================================================================
4044:0973 sub_9 proc near
4044:0973 8B 07 mov ax,[bx]
4044:0975 A3 0298 mov word ptr ds:[298h],ax ; (4044:0298=1E2Eh)
4044:0978 8B 36 0298 mov si,word ptr ds:[298h] ; (4044:0298=1E2Eh)
4044:097C 8B 04 mov ax,[si]
4044:097E A3 029E mov word ptr ds:[29Eh],ax ; (4044:029E=3C28h)
4044:0981 loc_79: ; xref 4044:0AB9
4044:0981 ,83 3E 029E 00 cmp word ptr ds:[29Eh],0 ; (4044:029E=3C28h)
4044:0986 7D 03 jge loc_80 ; Jump if > or =
4044:0988 E9 0131 jmp loc_ret_89 ; (0ABC)
4044:098B loc_80: ; xref 4044:0986
4044:098B 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:098F B1 05 mov cl,5
4044:0991 A1 029E mov ax,word ptr ds:[29Eh] ; (4044:029E=3C28h)
4044:0994 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0996 03 F0 add si,ax
4044:0998 8A 04 mov al,[si]
4044:099A A2 3C8C mov byte ptr ds:[3C8Ch],al ; (4044:3C8C=0)
4044:099D 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:09A1 A0 3C82 mov al,byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:09A4 98 cbw ; Convrt byte to word
4044:09A5 B1 05 mov cl,5
4044:09A7 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:09A9 03 F0 add si,ax
4044:09AB 8B EE mov bp,si
4044:09AD 8B 3E 3C5E mov di,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:09B1 B1 05 mov cl,5
4044:09B3 A1 029E mov ax,word ptr ds:[29Eh] ; (4044:029E=3C28h)
4044:09B6 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:09B8 03 F8 add di,ax
4044:09BA B1 20 mov cl,20h ; ' '
4044:09BC 8D 35 lea si,[di] ; Load effective addr
4044:09BE B0 20 mov al,20h ; ' '
4044:09C0 8B FD mov di,bp
4044:09C2 8D 3D lea di,[di] ; Load effective addr
4044:09C4 E8 1716 call sub_79 ; (20DD)
4044:09C7 A0 3C8E mov al,byte ptr ds:[3C8Eh] ; (4044:3C8E=0BFh)
4044:09CA 38 06 3C8C cmp byte ptr ds:[3C8Ch],al ; (4044:3C8C=0)
4044:09CE 75 44 jne loc_82 ; Jump if not equal
4044:09D0 A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=0EBh)
4044:09D3 24 80 and al,80h
4044:09D5 3C 00 cmp al,0
4044:09D7 74 13 je loc_81 ; Jump if equal
4044:09D9 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:09DD A0 3C82 mov al,byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:09E0 98 cbw ; Convrt byte to word
4044:09E1 B1 05 mov cl,5
4044:09E3 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:09E5 03 F0 add si,ax
4044:09E7 C6 04 E5 mov byte ptr [si],0E5h
4044:09EA EB 28 jmp short loc_82 ; (0A14)
4044:09EC loc_81: ; xref 4044:09D7
4044:09EC A0 01E9 mov al,byte ptr ds:[1E9h] ; (4044:01E9=33h)
4044:09EF 24 80 and al,80h
4044:09F1 3C 00 cmp al,0
4044:09F3 74 1F je loc_82 ; Jump if equal
4044:09F5 B8 018F mov ax,18Fh
4044:09F8 8B D8 mov bx,ax
4044:09FA 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:09FE A0 3C82 mov al,byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:0A01 98 cbw ; Convrt byte to word
4044:0A02 B1 05 mov cl,5
4044:0A04 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0A06 03 F0 add si,ax
4044:0A08 ,8D BC 0001 lea di,data_2[si] ; (4044:0001=0B1h) Load effective addr
4044:0A0C B9 001F mov cx,1Fh
4044:0A0F 8B F3 mov si,bx
4044:0A11 FC cld ; Clear direction
4044:0A12 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:0A14 loc_82: ; xref 4044:09CE, 09EA, 09F3
4044:0A14 82 3E 3C8C 10 ;* cmp byte ptr ds:[3C8Ch],10h ; (4044:3C8C=0)
4044:0A14 db 82h, 3Eh, 8Ch, 3Ch, 10h ; Fixup - byte match
4044:0A19 7D 13 jge loc_83 ; Jump if > or =
4044:0A1B 83 3E 3C22 00 cmp word ptr ds:[3C22h],0 ; (4044:3C22=7400h)
4044:0A20 7E 0C jle loc_83 ; Jump if < or =
4044:0A22 A0 029E mov al,byte ptr ds:[29Eh] ; (4044:029E=28h)
4044:0A25 A2 02A2 mov byte ptr ds:[2A2h],al ; (4044:02A2=0BEh)
4044:0A28 ,BB 02A0 mov bx,2A0h ; (4044:02A0=0B0h)
4044:0A2B E8 0379 call sub_13 ; (0DA7)
4044:0A2E loc_83: ; xref 4044:0A19, 0A20
4044:0A2E A0 01E5 mov al,byte ptr ds:[1E5h] ; (4044:01E5=2)
4044:0A31 F6 D0 not al
4044:0A33 24 80 and al,80h
4044:0A35 A2 03AE mov byte ptr ds:[3AEh],al ; (4044:03AE=46h)
4044:0A38 BB 0004 mov bx,4
4044:0A3B A0 3C82 mov al,byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:0A3E 98 cbw ; Convrt byte to word
4044:0A3F 8B D0 mov dx,ax
4044:0A41 E8 19AE call sub_90 ; (23F2)
4044:0A44 83 FB 00 cmp bx,0
4044:0A47 B0 80 mov al,80h
4044:0A49 74 02 jz loc_84 ; Jump if zero
4044:0A4B D0 E0 shl al,1 ; Shift w/zeros fill
4044:0A4D loc_84: ; xref 4044:0A49
4044:0A4D 8A 26 03AE mov ah,byte ptr ds:[3AEh] ; (4044:03AE=46h)
4044:0A51 22 E0 and ah,al
4044:0A53 82 FC 00 ;* cmp ah,0
4044:0A53 db 82h,0FCh, 00h ; Fixup - byte match
4044:0A56 74 07 jz loc_85 ; Jump if zero
4044:0A58 82 2E 3C82 02 ;* sub byte ptr ds:[3C82h],2 ; (4044:3C82=18h)
4044:0A58 db 82h, 2Eh, 82h, 3Ch, 02h ; Fixup - byte match
4044:0A5D EB 04 jmp short loc_86 ; (0A63)
4044:0A5F loc_85: ; xref 4044:0A56
4044:0A5F FE 0E 3C82 dec byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:0A63 loc_86: ; xref 4044:0A5D
4044:0A63 FF 0E 029E dec word ptr ds:[29Eh] ; (4044:029E=3C28h)
4044:0A67 FF 0E 3C7A dec word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0A6B 82 3E 3C82 00 ;* cmp byte ptr ds:[3C82h],0 ; (4044:3C82=18h)
4044:0A6B db 82h, 3Eh, 82h, 3Ch, 00h ; Fixup - byte match
4044:0A70 7D 47 jge loc_88 ; Jump if > or =
4044:0A72 83 3E 3C7A 0E cmp word ptr ds:[3C7Ah],0Eh ; (4044:3C7A=92A0h)
4044:0A77 7E 1F jle loc_87 ; Jump if < or =
4044:0A79 8B 1E 3C68 mov bx,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:0A7D A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0A80 40 inc ax
4044:0A81 8B D0 mov dx,ax
4044:0A83 E8 196C call sub_90 ; (23F2)
4044:0A86 83 FB 00 cmp bx,0
4044:0A89 75 0D jne loc_87 ; Jump if not equal
4044:0A8B A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0A8E 40 inc ax
4044:0A8F A3 02A7 mov word ptr ds:[2A7h],ax ; (4044:02A7=0DBE8h)
4044:0A92 BB 02A3 mov bx,2A3h
4044:0A95 E8 0A5F call sub_26 ; (14F7)
4044:0A98 loc_87: ; xref 4044:0A77, 0A89
4044:0A98 BB 02A9 mov bx,2A9h
4044:0A9B E8 0A59 call sub_26 ; (14F7)
4044:0A9E A1 3C68 mov ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:0AA1 29 06 3C80 sub word ptr ds:[3C80h],ax ; (4044:3C80=7400h)
4044:0AA5 A1 3C66 mov ax,word ptr ds:[3C66h] ; (4044:3C66=7400h)
4044:0AA8 48 dec ax
4044:0AA9 A2 3C82 mov byte ptr ds:[3C82h],al ; (4044:3C82=18h)
4044:0AAC A0 01E5 mov al,byte ptr ds:[1E5h] ; (4044:01E5=2)
4044:0AAF 24 80 and al,80h
4044:0AB1 3C 00 cmp al,0
4044:0AB3 74 04 je loc_88 ; Jump if equal
4044:0AB5 FE 06 3C82 inc byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:0AB9 loc_88: ; xref 4044:0A70, 0AB3
4044:0AB9 E9 FEC5 jmp loc_79 ; (0981)
4044:0ABC loc_ret_89: ; xref 4044:0988
4044:0ABC C3 retn
sub_9 endp
4044:0ABD loc_90: ; xref 4044:0970
4044:0ABD E9 00E3 jmp loc_101 ; (0BA3)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0DD7
;==========================================================================
4044:0AC0 sub_10 proc near
4044:0AC0 8B 07 mov ax,[bx]
4044:0AC2 A3 02AD mov word ptr ds:[2ADh],ax ; (4044:02AD=0A2E0h)
4044:0AC5 C6 06 02AF 01 mov byte ptr ds:[2AFh],1 ; (4044:02AF=0A2h)
4044:0ACA A0 3C22 mov al,byte ptr ds:[3C22h] ; (4044:3C22=0)
4044:0ACD A2 02B1 mov byte ptr ds:[2B1h],al ; (4044:02B1=0BFh)
4044:0AD0 loc_91: ; xref 4044:0B9D
4044:0AD0 ,A0 02B1 mov al,byte ptr ds:[2B1h] ; (4044:02B1=0BFh)
4044:0AD3 38 06 02AF cmp byte ptr ds:[2AFh],al ; (4044:02AF=0A2h)
4044:0AD7 7E 03 jle loc_92 ; Jump if < or =
4044:0AD9 E9 00C4 jmp loc_100 ; (0BA0)
4044:0ADC loc_92: ; xref 4044:0AD7
4044:0ADC 8B 36 3C26 mov si,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0AE0 A0 02AF mov al,byte ptr ds:[2AFh] ; (4044:02AF=0A2h)
4044:0AE3 98 cbw ; Convrt byte to word
4044:0AE4 8B D8 mov bx,ax
4044:0AE6 B8 0015 mov ax,15h
4044:0AE9 F7 EB imul bx ; dx:ax = reg * ax
4044:0AEB 03 F0 add si,ax
4044:0AED 82 BC FFEB 63 ;* cmp byte ptr ds:data_453e[si],63h ; (4044:FFEB=0) 'c'
4044:0AED db 82h,0BCh,0EBh,0FFh, 63h ; Fixup - byte match
4044:0AF2 75 03 jnz loc_93 ; Jump if not zero
4044:0AF4 E9 00A2 jmp loc_99 ; (0B99)
4044:0AF7 loc_93: ; xref 4044:0AF2
4044:0AF7 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0AFB 8B 3E 02AD mov di,word ptr ds:[2ADh] ; (4044:02AD=0A2E0h)
4044:0AFF 8A 05 mov al,[di]
4044:0B01 98 cbw ; Convrt byte to word
4044:0B02 B1 05 mov cl,5
4044:0B04 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0B06 03 F0 add si,ax
4044:0B08 8B 3E 3C26 mov di,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0B0C A0 02AF mov al,byte ptr ds:[2AFh] ; (4044:02AF=0A2h)
4044:0B0F 98 cbw ; Convrt byte to word
4044:0B10 8B D8 mov bx,ax
4044:0B12 B8 0015 mov ax,15h
4044:0B15 F7 EB imul bx ; dx:ax = reg * ax
4044:0B17 03 F8 add di,ax
4044:0B19 8A 04 mov al,[si]
4044:0B1B 38 85 FFEB cmp ds:data_453e[di],al ; (4044:FFEB=0)
4044:0B1F 74 03 je loc_94 ; Jump if equal
4044:0B21 E9 0075 jmpn loc_99 ; (0B99)
4044:0B24 loc_94: ; xref 4044:0B1F
4044:0B24 C6 06 02B0 01 mov byte ptr ds:[2B0h],1 ; (4044:02B0=3)
4044:0B29 loc_95: ; xref 4044:0B79
4044:0B29 ,82 3E 02B0 0B ;* cmp byte ptr ds:[2B0h],0Bh ; (4044:02B0=3)
4044:0B29 db 82h, 3Eh,0B0h, 02h, 0Bh ; Fixup - byte match
4044:0B2E 7F 4B jg loc_98 ; Jump if >
4044:0B30 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0B34 8B 3E 02AD mov di,word ptr ds:[2ADh] ; (4044:02AD=0A2E0h)
4044:0B38 8A 05 mov al,[di]
4044:0B3A 98 cbw ; Convrt byte to word
4044:0B3B B1 05 mov cl,5
4044:0B3D D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0B3F 03 F0 add si,ax
4044:0B41 A0 02B0 mov al,byte ptr ds:[2B0h] ; (4044:02B0=3)
4044:0B44 98 cbw ; Convrt byte to word
4044:0B45 03 F0 add si,ax
4044:0B47 8B 3E 3C26 mov di,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0B4B A0 02AF mov al,byte ptr ds:[2AFh] ; (4044:02AF=0A2h)
4044:0B4E 98 cbw ; Convrt byte to word
4044:0B4F 8B D8 mov bx,ax
4044:0B51 B8 0015 mov ax,15h
4044:0B54 F7 EB imul bx ; dx:ax = reg * ax
4044:0B56 03 F8 add di,ax
4044:0B58 A0 02B0 mov al,byte ptr ds:[2B0h] ; (4044:02B0=3)
4044:0B5B 98 cbw ; Convrt byte to word
4044:0B5C 03 F8 add di,ax
4044:0B5E ,8D BD FFEB lea di,ds:data_453e[di] ; (4044:FFEB=0) Load effective addr
4044:0B62 B0 01 mov al,1
4044:0B64 8D 34 lea si,[si] ; Load effective addr
4044:0B66 B1 01 mov cl,1
4044:0B68 E8 151A call sub_75 ; (2085)
4044:0B6B 75 02 jnz loc_96 ; Jump if not zero
4044:0B6D D0 E0 shl al,1 ; Shift w/zeros fill
4044:0B6F loc_96: ; xref 4044:0B6B
4044:0B6F 3C 00 cmp al,0
4044:0B71 74 02 je loc_97 ; Jump if equal
4044:0B73 EB 24 jmp short loc_99 ; (0B99)
4044:0B75 loc_97: ; xref 4044:0B71
4044:0B75 FE 06 02B0 inc byte ptr ds:[2B0h] ; (4044:02B0=3)
4044:0B79 EB AE jmp short loc_95 ; (0B29)
4044:0B7B loc_98: ; xref 4044:0B2E
4044:0B7B 8B 36 3C26 mov si,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0B7F A0 02AF mov al,byte ptr ds:[2AFh] ; (4044:02AF=0A2h)
4044:0B82 98 cbw ; Convrt byte to word
4044:0B83 8B D8 mov bx,ax
4044:0B85 B8 0015 mov ax,15h
4044:0B88 F7 EB imul bx ; dx:ax = reg * ax
4044:0B8A 03 F0 add si,ax
4044:0B8C C6 84 FFEB 63 mov byte ptr ds:data_453e[si],63h ; (4044:FFEB=0) 'c'
4044:0B91 FF 0E 3C22 dec word ptr ds:[3C22h] ; (4044:3C22=7400h)
4044:0B95 A0 02AF mov al,byte ptr ds:[2AFh] ; (4044:02AF=0A2h)
4044:0B98 C3 retn
4044:0B99 loc_99: ; xref 4044:0AF4, 0B21, 0B73
4044:0B99 FE 06 02AF inc byte ptr ds:[2AFh] ; (4044:02AF=0A2h)
4044:0B9D E9 FF30 jmp loc_91 ; (0AD0)
4044:0BA0 loc_100: ; xref 4044:0AD9
4044:0BA0 B0 00 mov al,0
4044:0BA2 C3 retn
sub_10 endp
4044:0BA3 loc_101: ; xref 4044:0ABD
4044:0BA3 E9 013D jmp loc_121 ; (0CE3)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:05EC
;==========================================================================
4044:0BA6 sub_11 proc near
4044:0BA6 A1 3C20 mov ax,word ptr ds:[3C20h] ; (4044:3C20=3C80h)
4044:0BA9 A3 3C7A mov word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:0BAC ,BB 02B4 mov bx,2B4h ; (4044:02B4=0B0h)
4044:0BAF E8 0134 call sub_12 ; (0CE6)
4044:0BB2 C7 06 3C24 0000 mov word ptr ds:[3C24h],0 ; (4044:3C24=0E81Ch)
4044:0BB8 C7 06 3C22 0000 mov word ptr ds:[3C22h],0 ; (4044:3C22=7400h)
4044:0BBE FF 06 3C7A inc word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0BC2 A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0BC5 A3 3C6C mov data_359,ax ; (4044:3C6C=45EBh)
4044:0BC8 A0 02B3 mov al,byte ptr ds:[2B3h] ; (4044:02B3=3Ch)
4044:0BCB 98 cbw ; Convrt byte to word
4044:0BCC 40 inc ax
4044:0BCD A3 3C6E mov word ptr ds:[3C6Eh],ax ; (4044:3C6E=0D0E8h)
4044:0BD0 loc_102: ; xref 4044:0C55
4044:0BD0 ,A1 3C20 mov ax,word ptr ds:[3C20h] ; (4044:3C20=3C80h)
4044:0BD3 39 06 3C7A cmp word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:0BD7 7E 03 jle loc_103 ; Jump if < or =
4044:0BD9 E9 007C jmpn loc_111 ; (0C58)
4044:0BDC loc_103: ; xref 4044:0BD7
4044:0BDC A0 02B3 mov al,byte ptr ds:[2B3h] ; (4044:02B3=3Ch)
4044:0BDF FE C0 inc al
4044:0BE1 A2 02B2 mov byte ptr ds:[2B2h],al ; (4044:02B2=2Ah)
4044:0BE4 A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:0BE7 A2 02B6 mov byte ptr ds:[2B6h],al ; (4044:02B6=0BEh)
4044:0BEA loc_104: ; xref 4044:0C48
4044:0BEA ,A0 02B6 mov al,byte ptr ds:[2B6h] ; (4044:02B6=0BEh)
4044:0BED 38 06 02B2 cmp byte ptr ds:[2B2h],al ; (4044:02B2=2Ah)
4044:0BF1 B0 80 mov al,80h
4044:0BF3 7E 02 jle loc_105 ; Jump if < or =
4044:0BF5 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0BF7 loc_105: ; xref 4044:0BF3
4044:0BF7 8B 1E 3C20 mov bx,word ptr ds:[3C20h] ; (4044:3C20=3C80h)
4044:0BFB 39 1E 3C7A cmp word ptr ds:[3C7Ah],bx ; (4044:3C7A=92A0h)
4044:0BFF B4 80 mov ah,80h
4044:0C01 7E 02 jle loc_106 ; Jump if < or =
4044:0C03 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:0C05 loc_106: ; xref 4044:0C01
4044:0C05 22 C4 and al,ah
4044:0C07 3C 00 cmp al,0
4044:0C09 74 3F je loc_110 ; Jump if equal
4044:0C0B 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0C0F A0 02B2 mov al,byte ptr ds:[2B2h] ; (4044:02B2=2Ah)
4044:0C12 98 cbw ; Convrt byte to word
4044:0C13 B1 05 mov cl,5
4044:0C15 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0C17 03 F0 add si,ax
4044:0C19 8A 04 mov al,[si]
4044:0C1B A2 3C8C mov byte ptr ds:[3C8Ch],al ; (4044:3C8C=0)
4044:0C1E 82 3E 3C8C 0F ;* cmp byte ptr ds:[3C8Ch],0Fh ; (4044:3C8C=0)
4044:0C1E db 82h, 3Eh, 8Ch, 3Ch, 0Fh ; Fixup - byte match
4044:0C23 B0 80 mov al,80h
4044:0C25 7F 02 jg loc_107 ; Jump if >
4044:0C27 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0C29 loc_107: ; xref 4044:0C25
4044:0C29 82 3E 3C8C 20 ;* cmp byte ptr ds:[3C8Ch],20h ; (4044:3C8C=0) ' '
4044:0C29 db 82h, 3Eh, 8Ch, 3Ch, 20h ; Fixup - byte match
4044:0C2E B4 80 mov ah,80h
4044:0C30 7C 02 jl loc_108 ; Jump if <
4044:0C32 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:0C34 loc_108: ; xref 4044:0C30
4044:0C34 22 C4 and al,ah
4044:0C36 3C 00 cmp al,0
4044:0C38 74 06 je loc_109 ; Jump if equal
4044:0C3A ,BB 02B7 mov bx,2B7h ; (4044:02B7=2Ch)
4044:0C3D E8 FBD9 call sub_6 ; (0819)
4044:0C40 loc_109: ; xref 4044:0C38
4044:0C40 FF 06 3C7A inc word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0C44 FE 06 02B2 inc byte ptr ds:[2B2h] ; (4044:02B2=2Ah)
4044:0C48 EB A0 jmp short loc_104 ; (0BEA)
4044:0C4A loc_110: ; xref 4044:0C09
4044:0C4A C6 06 02B3 00 mov byte ptr ds:[2B3h],0 ; (4044:02B3=3Ch)
4044:0C4F BB 02B9 mov bx,2B9h
4044:0C52 E8 07D8 call sub_25 ; (142D)
4044:0C55 E9 FF78 jmp loc_102 ; (0BD0)
4044:0C58 loc_111: ; xref 4044:0BD9
4044:0C58 C7 06 3C7A 0000 mov word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:0C5E loc_112: ; xref 4044:0CDF
4044:0C5E ,A1 3C20 mov ax,word ptr ds:[3C20h] ; (4044:3C20=3C80h)
4044:0C61 39 06 3C7A cmp word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:0C65 7E 03 jle loc_113 ; Jump if < or =
4044:0C67 E9 0078 jmpn loc_ret_120 ; (0CE2)
4044:0C6A loc_113: ; xref 4044:0C65
4044:0C6A BB 02BD mov bx,2BDh
4044:0C6D E8 07BD call sub_25 ; (142D)
4044:0C70 A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0C73 A3 3C7E mov word ptr ds:[3C7Eh],ax ; (4044:3C7E=3C80h)
4044:0C76 C6 06 01E7 00 mov byte ptr ds:[1E7h],0 ; (4044:01E7=24h)
4044:0C7B C6 06 02B3 00 mov byte ptr ds:[2B3h],0 ; (4044:02B3=3Ch)
4044:0C80 A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:0C83 A2 02C1 mov byte ptr ds:[2C1h],al ; (4044:02C1=0E0h)
4044:0C86 loc_114: ; xref 4044:0CCE
4044:0C86 ,A0 02C1 mov al,byte ptr ds:[2C1h] ; (4044:02C1=0E0h)
4044:0C89 38 06 02B3 cmp byte ptr ds:[2B3h],al ; (4044:02B3=3Ch)
4044:0C8D B0 80 mov al,80h
4044:0C8F 7E 02 jle loc_115 ; Jump if < or =
4044:0C91 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0C93 loc_115: ; xref 4044:0C8F
4044:0C93 8B 1E 3C20 mov bx,word ptr ds:[3C20h] ; (4044:3C20=3C80h)
4044:0C97 39 1E 3C7A cmp word ptr ds:[3C7Ah],bx ; (4044:3C7A=92A0h)
4044:0C9B B4 80 mov ah,80h
4044:0C9D 7E 02 jle loc_116 ; Jump if < or =
4044:0C9F D0 E4 shl ah,1 ; Shift w/zeros fill
4044:0CA1 loc_116: ; xref 4044:0C9D
4044:0CA1 22 C4 and al,ah
4044:0CA3 3C 00 cmp al,0
4044:0CA5 74 29 je loc_118 ; Jump if equal
4044:0CA7 A0 02B3 mov al,byte ptr ds:[2B3h] ; (4044:02B3=3Ch)
4044:0CAA A2 3C82 mov byte ptr ds:[3C82h],al ; (4044:3C82=18h)
4044:0CAD 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0CB1 A0 02B3 mov al,byte ptr ds:[2B3h] ; (4044:02B3=3Ch)
4044:0CB4 98 cbw ; Convrt byte to word
4044:0CB5 B1 05 mov cl,5
4044:0CB7 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0CB9 03 F0 add si,ax
4044:0CBB 82 3C 10 ;* cmp byte ptr [si],10h
4044:0CBB db 82h, 3Ch, 10h ; Fixup - byte match
4044:0CBE 7D 06 jge loc_117 ; Jump if > or =
4044:0CC0 ,BB 02C2 mov bx,2C2h ; (4044:02C2=8Ah)
4044:0CC3 E8 00E1 call sub_13 ; (0DA7)
4044:0CC6 loc_117: ; xref 4044:0CBE
4044:0CC6 FF 06 3C7A inc word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0CCA FE 06 02B3 inc byte ptr ds:[2B3h] ; (4044:02B3=3Ch)
4044:0CCE EB B6 jmp short loc_114 ; (0C86)
4044:0CD0 loc_118: ; xref 4044:0CA5
4044:0CD0 A0 01E7 mov al,byte ptr ds:[1E7h] ; (4044:01E7=24h)
4044:0CD3 24 80 and al,80h
4044:0CD5 3C 00 cmp al,0
4044:0CD7 74 06 je loc_119 ; Jump if equal
4044:0CD9 BB 02C4 mov bx,2C4h
4044:0CDC E8 0818 call sub_26 ; (14F7)
4044:0CDF loc_119: ; xref 4044:0CD7
4044:0CDF E9 FF7C jmp loc_112 ; (0C5E)
4044:0CE2 loc_ret_120: ; xref 4044:0C67
4044:0CE2 C3 retn
sub_11 endp
4044:0CE3 loc_121: ; xref 4044:0BA3
4044:0CE3 E9 00BE jmp loc_134 ; (0DA4)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0BAF
;==========================================================================
4044:0CE6 sub_12 proc near
4044:0CE6 8B 07 mov ax,[bx]
4044:0CE8 A3 02C8 mov word ptr ds:[2C8h],ax ; (4044:02C8=0FC82h)
4044:0CEB loc_122: ; xref 4044:0DA0
4044:0CEB ,83 3E 3C7A 00 cmp word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:0CF0 7F 03 jg loc_123 ; Jump if >
4044:0CF2 E9 00AE jmp loc_ret_133 ; (0DA3)
4044:0CF5 loc_123: ; xref 4044:0CF0
4044:0CF5 BB 02CA mov bx,2CAh
4044:0CF8 E8 0732 call sub_25 ; (142D)
4044:0CFB 8B 36 02C8 mov si,word ptr ds:[2C8h] ; (4044:02C8=0FC82h)
4044:0CFF C6 04 00 mov byte ptr [si],0
4044:0D02 A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:0D05 A2 02CE mov byte ptr ds:[2CEh],al ; (4044:02CE=4Fh)
4044:0D08 loc_124: ; xref 4044:0D9D
4044:0D08 ,8B 36 02C8 mov si,word ptr ds:[2C8h] ; (4044:02C8=0FC82h)
4044:0D0C A0 02CE mov al,byte ptr ds:[2CEh] ; (4044:02CE=4Fh)
4044:0D0F 38 04 cmp [si],al
4044:0D11 B0 80 mov al,80h
4044:0D13 7E 02 jle loc_125 ; Jump if < or =
4044:0D15 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0D17 loc_125: ; xref 4044:0D13
4044:0D17 83 3E 3C7A 00 cmp word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:0D1C B4 80 mov ah,80h
4044:0D1E 7F 02 jg loc_126 ; Jump if >
4044:0D20 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:0D22 loc_126: ; xref 4044:0D1E
4044:0D22 22 C4 and al,ah
4044:0D24 3C 00 cmp al,0
4044:0D26 75 03 jne loc_127 ; Jump if not equal
4044:0D28 E9 0075 jmpn loc_132 ; (0DA0)
4044:0D2B loc_127: ; xref 4044:0D26
4044:0D2B 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0D2F 8B 3E 02C8 mov di,word ptr ds:[2C8h] ; (4044:02C8=0FC82h)
4044:0D33 8A 05 mov al,[di]
4044:0D35 98 cbw ; Convrt byte to word
4044:0D36 B1 05 mov cl,5
4044:0D38 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0D3A 03 F0 add si,ax
4044:0D3C 8A 04 mov al,[si]
4044:0D3E A2 3C8C mov byte ptr ds:[3C8Ch],al ; (4044:3C8C=0)
4044:0D41 82 3E 3C8C 0F ;* cmp byte ptr ds:[3C8Ch],0Fh ; (4044:3C8C=0)
4044:0D41 db 82h, 3Eh, 8Ch, 3Ch, 0Fh ; Fixup - byte match
4044:0D46 B0 80 mov al,80h
4044:0D48 7F 02 jg loc_128 ; Jump if >
4044:0D4A D0 E0 shl al,1 ; Shift w/zeros fill
4044:0D4C loc_128: ; xref 4044:0D48
4044:0D4C 82 3E 3C8C 20 ;* cmp byte ptr ds:[3C8Ch],20h ; (4044:3C8C=0) ' '
4044:0D4C db 82h, 3Eh, 8Ch, 3Ch, 20h ; Fixup - byte match
4044:0D51 B4 80 mov ah,80h
4044:0D53 7C 02 jl loc_129 ; Jump if <
4044:0D55 D0 E4 shl ah,1 ; Shift w/zeros fill
4044:0D57 loc_129: ; xref 4044:0D53
4044:0D57 22 C4 and al,ah
4044:0D59 3C 00 cmp al,0
4044:0D5B 74 36 je loc_131 ; Jump if equal
4044:0D5D 8B 36 3C26 mov si,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0D61 B8 0015 mov ax,15h
4044:0D64 F7 2E 3C70 imul word ptr ds:[3C70h] ; (4044:3C70=0F600h) dx:ax = data * ax
4044:0D68 03 F0 add si,ax
4044:0D6A 8B 3E 3C5E mov di,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0D6E 8B 1E 02C8 mov bx,word ptr ds:[2C8h] ; (4044:02C8=0FC82h)
4044:0D72 8A 07 mov al,[bx]
4044:0D74 98 cbw ; Convrt byte to word
4044:0D75 B1 05 mov cl,5
4044:0D77 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0D79 03 F8 add di,ax
4044:0D7B ,8D BD 0001 lea di,data_2[di] ; (4044:0001=0B1h) Load effective addr
4044:0D7F B0 0B mov al,0Bh
4044:0D81 ,8D B4 FFEC lea si,ds:data_454e[si] ; (4044:FFEC=0) Load effective addr
4044:0D85 B1 0B mov cl,0Bh
4044:0D87 E8 12FB call sub_75 ; (2085)
4044:0D8A 74 02 jz loc_130 ; Jump if zero
4044:0D8C D0 E0 shl al,1 ; Shift w/zeros fill
4044:0D8E loc_130: ; xref 4044:0D8A
4044:0D8E 3C 00 cmp al,0
4044:0D90 74 01 je loc_131 ; Jump if equal
4044:0D92 C3 retn
4044:0D93 loc_131: ; xref 4044:0D5B, 0D90
4044:0D93 FF 0E 3C7A dec word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:0D97 8B 36 02C8 mov si,word ptr ds:[2C8h] ; (4044:02C8=0FC82h)
4044:0D9B FE 04 inc byte ptr [si]
4044:0D9D E9 FF68 jmp loc_124 ; (0D08)
4044:0DA0 loc_132: ; xref 4044:0D28
4044:0DA0 E9 FF48 jmp loc_122 ; (0CEB)
4044:0DA3 loc_ret_133: ; xref 4044:0CF2
4044:0DA3 C3 retn
sub_12 endp
4044:0DA4 loc_134: ; xref 4044:0CE3
4044:0DA4 E9 00CF jmp loc_138 ; (0E76)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0A2B, 0CC3
;==========================================================================
4044:0DA7 sub_13 proc near
4044:0DA7 8B 07 mov ax,[bx]
4044:0DA9 A3 02CF mov word ptr ds:[2CFh],ax ; (4044:02CF=0E816h)
4044:0DAC 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:0DB0 8B 3E 3C5E mov di,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0DB4 8B 1E 02CF mov bx,word ptr ds:[2CFh] ; (4044:02CF=0E816h)
4044:0DB8 8A 07 mov al,[bx]
4044:0DBA 98 cbw ; Convrt byte to word
4044:0DBB B1 05 mov cl,5
4044:0DBD D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0DBF 03 F8 add di,ax
4044:0DC1 8A 84 0004 mov al,byte ptr data_4[si] ; (4044:0004=0)
4044:0DC5 38 85 000C cmp data_11[di],al ; (4044:000C=0)
4044:0DC9 7E 03 jle loc_135 ; Jump if < or =
4044:0DCB E9 00A7 jmp loc_ret_137 ; (0E75)
4044:0DCE loc_135: ; xref 4044:0DC9
4044:0DCE A1 02CF mov ax,word ptr ds:[2CFh] ; (4044:02CF=0E816h)
4044:0DD1 A3 02D2 mov word ptr ds:[2D2h],ax ; (4044:02D2=8917h)
4044:0DD4 ,BB 02D2 mov bx,2D2h ; (4044:02D2=17h)
4044:0DD7 E8 FCE6 call sub_10 ; (0AC0)
4044:0DDA A2 02D1 mov byte ptr ds:[2D1h],al ; (4044:02D1=36h)
4044:0DDD 82 3E 02D1 00 ;* cmp byte ptr ds:[2D1h],0 ; (4044:02D1=36h)
4044:0DDD db 82h, 3Eh,0D1h, 02h, 00h ; Fixup - byte match
4044:0DE2 75 03 jnz loc_136 ; Jump if not zero
4044:0DE4 E9 008E jmp loc_ret_137 ; (0E75)
4044:0DE7 loc_136: ; xref 4044:0DE2
4044:0DE7 BB 0004 mov bx,4
4044:0DEA A0 3C82 mov al,byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:0DED 98 cbw ; Convrt byte to word
4044:0DEE 40 inc ax
4044:0DEF 8B D0 mov dx,ax
4044:0DF1 E8 15FE call sub_90 ; (23F2)
4044:0DF4 89 1E 3C8A mov word ptr ds:[3C8Ah],bx ; (4044:3C8A=5AE8h)
4044:0DF8 83 EB 04 sub bx,4
4044:0DFB F7 DB neg bx
4044:0DFD A0 3C82 mov al,byte ptr ds:[3C82h] ; (4044:3C82=18h)
4044:0E00 98 cbw ; Convrt byte to word
4044:0E01 03 D8 add bx,ax
4044:0E03 89 1E 3C88 mov word ptr ds:[3C88h],bx ; (4044:3C88=0F74h)
4044:0E07 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:0E0B B1 05 mov cl,5
4044:0E0D A1 3C88 mov ax,word ptr ds:[3C88h] ; (4044:3C88=0F74h)
4044:0E10 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0E12 03 F0 add si,ax
4044:0E14 B8 000A mov ax,0Ah
4044:0E17 F7 2E 3C8A imul word ptr ds:[3C8Ah] ; (4044:3C8A=5AE8h) dx:ax = data * ax
4044:0E1B 03 F0 add si,ax
4044:0E1D 8B EE mov bp,si
4044:0E1F 8B 3E 3C26 mov di,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0E23 A0 02D1 mov al,byte ptr ds:[2D1h] ; (4044:02D1=36h)
4044:0E26 98 cbw ; Convrt byte to word
4044:0E27 8B D8 mov bx,ax
4044:0E29 B8 0015 mov ax,15h
4044:0E2C F7 EB imul bx ; dx:ax = reg * ax
4044:0E2E 03 F8 add di,ax
4044:0E30 B1 08 mov cl,8
4044:0E32 ,8D B5 FFF8 lea si,ds:data_456e[di] ; (4044:FFF8=0) Load effective addr
4044:0E36 B0 08 mov al,8
4044:0E38 8B FD mov di,bp
4044:0E3A ,8D BD FFF7 lea di,ds:data_455e[di] ; (4044:FFF7=0) Load effective addr
4044:0E3E E8 129C call sub_79 ; (20DD)
4044:0E41 8B 1E 3C26 mov bx,word ptr ds:[3C26h] ; (4044:3C26=0BFh)
4044:0E45 A0 02D1 mov al,byte ptr ds:[2D1h] ; (4044:02D1=36h)
4044:0E48 98 cbw ; Convrt byte to word
4044:0E49 8B C8 mov cx,ax
4044:0E4B B8 0015 mov ax,15h
4044:0E4E F7 E9 imul cx ; dx:ax = reg * ax
4044:0E50 03 D8 add bx,ax
4044:0E52 8B 2E 3C58 mov bp,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:0E56 B1 05 mov cl,5
4044:0E58 A1 3C88 mov ax,word ptr ds:[3C88h] ; (4044:3C88=0F74h)
4044:0E5B D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0E5D 03 E8 add bp,ax
4044:0E5F B8 000A mov ax,0Ah
4044:0E62 F7 2E 3C8A imul word ptr ds:[3C8Ah] ; (4044:3C8A=5AE8h) dx:ax = data * ax
4044:0E66 03 E8 add bp,ax
4044:0E68 8A 87 FFF7 mov al,ds:data_455e[bx] ; (4044:FFF7=0)
4044:0E6C 88 86 FFFF mov ss:data_457e[bp],al ; (4044:FFFF=0)
4044:0E70 C6 06 01E7 80 mov byte ptr ds:[1E7h],80h ; (4044:01E7=24h)
4044:0E75 loc_ret_137: ; xref 4044:0DCB, 0DE4
4044:0E75 C3 retn
sub_13 endp
4044:0E76 loc_138: ; xref 4044:0DA4
4044:0E76 EB 3C jmp short loc_139 ; (0EB4)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:018E, 019B, 01A8, 02FF, 04FA, 053F, 0902
; 10F4, 14F0, 15BB, 160F
;==========================================================================
4044:0E78 sub_14 proc near
4044:0E78 8B 07 mov ax,[bx]
4044:0E7A A3 02D4 mov word ptr ds:[2D4h],ax ; (4044:02D4=0ED1Eh)
4044:0E7D BA 0252 mov dx,252h
4044:0E80 B9 0E0E mov cx,0E0Eh
4044:0E83 E8 1FC2 call sub_119 ; (2E48)
4044:0E86 B0 01 mov al,1
4044:0E88 E8 1FED call sub_120 ; (2E78)
4044:0E8B E8 0DB4 call sub_57 ; (1C42)
4044:0E8E ,BB 02D6 mov bx,2D6h ; (4044:02D6=1)
4044:0E91 E8 0C5C call sub_56 ; (1AF0)
4044:0E94 B1 01 mov cl,1
4044:0E96 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0E99 E8 122C call sub_77 ; (20C8)
4044:0E9C A1 02D4 mov ax,word ptr ds:[2D4h] ; (4044:02D4=0ED1Eh)
4044:0E9F A3 02D8 mov word ptr ds:[2D8h],ax ; (4044:02D8=222h)
4044:0EA2 ,BB 02D8 mov bx,2D8h ; (4044:02D8=22h)
4044:0EA5 E8 0C48 call sub_56 ; (1AF0)
4044:0EA8 B1 01 mov cl,1
4044:0EAA ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0EAD E8 1218 call sub_77 ; (20C8)
4044:0EB0 E8 0516 call sub_22 ; (13C9)
4044:0EB3 C3 retn
sub_14 endp
4044:0EB4 loc_139: ; xref 4044:0E76
4044:0EB4 E9 0087 jmp loc_144 ; (0F3E)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0942, 095A
;==========================================================================
4044:0EB7 sub_15 proc near
4044:0EB7 8B 07 mov ax,[bx]
4044:0EB9 A3 02DA mov word ptr ds:[2DAh],ax ; (4044:02DA=2D98h)
4044:0EBC BA 0252 mov dx,252h
4044:0EBF B9 0E4D mov cx,0E4Dh
4044:0EC2 E8 1F83 call sub_119 ; (2E48)
4044:0EC5 B0 01 mov al,1
4044:0EC7 E8 1FAE call sub_120 ; (2E78)
4044:0ECA E8 0D75 call sub_57 ; (1C42)
4044:0ECD A1 02DA mov ax,word ptr ds:[2DAh] ; (4044:02DA=2D98h)
4044:0ED0 A3 02DC mov word ptr ds:[2DCh],ax ; (4044:02DC=11h)
4044:0ED3 ,BB 02DC mov bx,2DCh ; (4044:02DC=11h)
4044:0ED6 E8 0C17 call sub_56 ; (1AF0)
4044:0ED9 B1 01 mov cl,1
4044:0EDB ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0EDE E8 11E7 call sub_77 ; (20C8)
4044:0EE1 ,BB 02DE mov bx,2DEh ; (4044:02DE=0F7h)
4044:0EE4 E8 0C09 call sub_56 ; (1AF0)
4044:0EE7 B1 01 mov cl,1
4044:0EE9 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:0EEC E8 11D9 call sub_77 ; (20C8)
4044:0EEF BA 0290 mov dx,290h
4044:0EF2 B9 0E88 mov cx,0E88h
4044:0EF5 E8 1F4C call sub_118 ; (2E44)
4044:0EF8 E8 1DDC call sub_113 ; (2CD7)
4044:0EFB 79 08 jns loc_140 ; Jump if not sign
4044:0EFD B1 01 mov cl,1
4044:0EFF ,BF 3C2C mov di,3C2Ch ; (4044:3C2C=91h)
4044:0F02 E8 11C3 call sub_77 ; (20C8)
4044:0F05 loc_140: ; xref 4044:0EFB
4044:0F05 E8 0D3A call sub_57 ; (1C42)
4044:0F08 ,BF 3C28 mov di,3C28h ; (4044:3C28=0E8h)
4044:0F0B B0 01 mov al,1
4044:0F0D ,BE 3C2C mov si,3C2Ch ; (4044:3C2C=91h)
4044:0F10 B1 01 mov cl,1
4044:0F12 E8 1170 call sub_75 ; (2085)
4044:0F15 75 02 jnz loc_141 ; Jump if not zero
4044:0F17 D0 E0 shl al,1 ; Shift w/zeros fill
4044:0F19 loc_141: ; xref 4044:0F15
4044:0F19 A2 03B0 mov byte ptr ds:[3B0h],al ; (4044:03B0=98h)
4044:0F1C ,BF 3C2A mov di,3C2Ah ; (4044:3C2A=0)
4044:0F1F B0 01 mov al,1
4044:0F21 ,BE 3C2C mov si,3C2Ch ; (4044:3C2C=91h)
4044:0F24 B1 01 mov cl,1
4044:0F26 E8 115C call sub_75 ; (2085)
4044:0F29 75 02 jnz loc_142 ; Jump if not zero
4044:0F2B D0 E0 shl al,1 ; Shift w/zeros fill
4044:0F2D loc_142: ; xref 4044:0F29
4044:0F2D 8A 26 03B0 mov ah,byte ptr ds:[3B0h] ; (4044:03B0=98h)
4044:0F31 22 E0 and ah,al
4044:0F33 82 FC 00 ;* cmp ah,0
4044:0F33 db 82h,0FCh, 00h ; Fixup - byte match
4044:0F36 74 03 jz loc_143 ; Jump if zero
4044:0F38 B0 00 mov al,0
4044:0F3A C3 retn
4044:0F3B loc_143: ; xref 4044:0F36
4044:0F3B B0 80 mov al,80h
4044:0F3D C3 retn
sub_15 endp
4044:0F3E loc_144: ; xref 4044:0EB4
4044:0F3E E9 007C jmpn loc_151 ; (0FBD)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:056C, 057B
;==========================================================================
4044:0F41 sub_16 proc near
4044:0F41 C6 06 02E0 00 mov byte ptr ds:[2E0h],0 ; (4044:02E0=8Ah)
4044:0F46 A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:0F49 A2 02E2 mov byte ptr ds:[2E2h],al ; (4044:02E2=0FEh)
4044:0F4C loc_145: ; xref 4044:0FBA
4044:0F4C ,A0 02E2 mov al,byte ptr ds:[2E2h] ; (4044:02E2=0FEh)
4044:0F4F 38 06 02E0 cmp byte ptr ds:[2E0h],al ; (4044:02E0=8Ah)
4044:0F53 7F 67 jg loc_ret_150 ; Jump if >
4044:0F55 BB 0004 mov bx,4
4044:0F58 A0 02E0 mov al,byte ptr ds:[2E0h] ; (4044:02E0=8Ah)
4044:0F5B 98 cbw ; Convrt byte to word
4044:0F5C 40 inc ax
4044:0F5D 8B D0 mov dx,ax
4044:0F5F E8 1490 call sub_90 ; (23F2)
4044:0F62 83 FB 00 cmp bx,0
4044:0F65 74 13 je loc_146 ; Jump if equal
4044:0F67 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:0F6B A0 02E0 mov al,byte ptr ds:[2E0h] ; (4044:02E0=8Ah)
4044:0F6E 98 cbw ; Convrt byte to word
4044:0F6F B1 05 mov cl,5
4044:0F71 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0F73 03 F0 add si,ax
4044:0F75 C6 04 E5 mov byte ptr [si],0E5h
4044:0F78 EB 13 jmp short loc_147 ; (0F8D)
4044:0F7A loc_146: ; xref 4044:0F65
4044:0F7A 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:0F7E A0 02E0 mov al,byte ptr ds:[2E0h] ; (4044:02E0=8Ah)
4044:0F81 98 cbw ; Convrt byte to word
4044:0F82 B1 05 mov cl,5
4044:0F84 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0F86 03 F0 add si,ax
4044:0F88 A0 3C8E mov al,byte ptr ds:[3C8Eh] ; (4044:3C8E=0BFh)
4044:0F8B 88 04 mov [si],al
4044:0F8D loc_147: ; xref 4044:0F78
4044:0F8D C6 06 02E1 01 mov byte ptr ds:[2E1h],1 ; (4044:02E1=0C8h)
4044:0F92 loc_148: ; xref 4044:0FB4
4044:0F92 ,82 3E 02E1 1F ;* cmp byte ptr ds:[2E1h],1Fh ; (4044:02E1=0C8h)
4044:0F92 db 82h, 3Eh,0E1h, 02h, 1Fh ; Fixup - byte match
4044:0F97 7F 1D jg loc_149 ; Jump if >
4044:0F99 8B 36 3C58 mov si,word ptr ds:[3C58h] ; (4044:3C58=0E7h)
4044:0F9D A0 02E0 mov al,byte ptr ds:[2E0h] ; (4044:02E0=8Ah)
4044:0FA0 98 cbw ; Convrt byte to word
4044:0FA1 B1 05 mov cl,5
4044:0FA3 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0FA5 03 F0 add si,ax
4044:0FA7 A0 02E1 mov al,byte ptr ds:[2E1h] ; (4044:02E1=0C8h)
4044:0FAA 98 cbw ; Convrt byte to word
4044:0FAB 03 F0 add si,ax
4044:0FAD C6 04 00 mov byte ptr [si],0
4044:0FB0 FE 06 02E1 inc byte ptr ds:[2E1h] ; (4044:02E1=0C8h)
4044:0FB4 EB DC jmp short loc_148 ; (0F92)
4044:0FB6 loc_149: ; xref 4044:0F97
4044:0FB6 FE 06 02E0 inc byte ptr ds:[2E0h] ; (4044:02E0=8Ah)
4044:0FBA EB 90 jmp short loc_145 ; (0F4C)
4044:0FBC loc_ret_150: ; xref 4044:0F53
4044:0FBC C3 retn
sub_16 endp
4044:0FBD loc_151: ; xref 4044:0F3E
4044:0FBD E9 0142 jmp loc_161 ; (1102)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:066E, 0797
;==========================================================================
4044:0FC0 sub_17 proc near
4044:0FC0 8B 07 mov ax,[bx]
4044:0FC2 A3 02E3 mov word ptr ds:[2E3h],ax ; (4044:02E3=0D3C9h)
4044:0FC5 C6 06 01EA 80 mov byte ptr ds:[1EAh],80h ; (4044:01EA=2)
4044:0FCA 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:0FCE 8B 3E 02E3 mov di,word ptr ds:[2E3h] ; (4044:02E3=0D3C9h)
4044:0FD2 8A 05 mov al,[di]
4044:0FD4 98 cbw ; Convrt byte to word
4044:0FD5 B1 05 mov cl,5
4044:0FD7 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:0FD9 03 F0 add si,ax
4044:0FDB 8D 84 0010 ;* lea ax,cs:[10h][si] ; Load effective addr
4044:0FDB db 8Dh, 84h, 10h, 00h ; Fixup - byte match
4044:0FDF A3 02E5 mov word ptr ds:[2E5h],ax ; (4044:02E5=81E3h)
4044:0FE2 C7 06 02E7 02E9 mov word ptr ds:[2E7h],2E9h ; (4044:02E7=0E3h)
4044:0FE8 C6 06 02F9 01 mov byte ptr ds:[2F9h],1 ; (4044:02F9=0)
4044:0FED loc_152: ; xref 4044:1031
4044:0FED ,82 3E 02F9 08 ;* cmp byte ptr ds:[2F9h],8 ; (4044:02F9=0)
4044:0FED db 82h, 3Eh,0F9h, 02h, 08h ; Fixup - byte match
4044:0FF2 7F 3F jg loc_153 ; Jump if >
4044:0FF4 8B 36 02E5 mov si,word ptr ds:[2E5h] ; (4044:02E5=81E3h)
4044:0FF8 A0 02F9 mov al,byte ptr ds:[2F9h] ; (4044:02F9=0)
4044:0FFB 98 cbw ; Convrt byte to word
4044:0FFC 03 F0 add si,ax
4044:0FFE 8A A4 FFFF mov ah,ds:data_457e[si] ; (4044:FFFF=0)
4044:1002 32 C0 xor al,al ; Zero register
4044:1004 8B D8 mov bx,ax
4044:1006 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:100A 8B 3E 02E3 mov di,word ptr ds:[2E3h] ; (4044:02E3=0D3C9h)
4044:100E 8A 05 mov al,[di]
4044:1010 98 cbw ; Convrt byte to word
4044:1011 B1 05 mov cl,5
4044:1013 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:1015 03 F0 add si,ax
4044:1017 8A A4 000D mov ah,byte ptr data_12[si] ; (4044:000D=0)
4044:101B 32 C0 xor al,al ; Zero register
4044:101D 33 D8 xor bx,ax
4044:101F 8B C3 mov ax,bx
4044:1021 8A DC mov bl,ah
4044:1023 A0 02F9 mov al,byte ptr ds:[2F9h] ; (4044:02F9=0)
4044:1026 98 cbw ; Convrt byte to word
4044:1027 8B F0 mov si,ax
4044:1029 88 9C 02E8 mov byte ptr ds:[2E8h][si],bl ; (4044:02E8=0)
4044:102D FE 06 02F9 inc byte ptr ds:[2F9h] ; (4044:02F9=0)
4044:1031 EB BA jmp short loc_152 ; (0FED)
4044:1033 loc_153: ; xref 4044:0FF2
4044:1033 8B 36 02E7 mov si,word ptr ds:[2E7h] ; (4044:02E7=0E3h)
4044:1037 ,BF 0150 mov di,150h ; (4044:0150=12h)
4044:103A B0 01 mov al,1
4044:103C ,8D B4 0007 lea si,data_6+1[si] ; (4044:0007=0) Load effective addr
4044:1040 B1 01 mov cl,1
4044:1042 E8 1040 call sub_75 ; (2085)
4044:1045 76 02 jbe loc_154 ; Jump if below or =
4044:1047 D0 E0 shl al,1 ; Shift w/zeros fill
4044:1049 loc_154: ; xref 4044:1045
4044:1049 3C 00 cmp al,0
4044:104B 74 01 je loc_155 ; Jump if equal
4044:104D C3 retn
4044:104E loc_155: ; xref 4044:104B
4044:104E BA 0252 mov dx,252h
4044:1051 B9 0FDF mov cx,0FDFh
4044:1054 E8 1DF1 call sub_119 ; (2E48)
4044:1057 B0 01 mov al,1
4044:1059 E8 1E1C call sub_120 ; (2E78)
4044:105C E8 0BE3 call sub_57 ; (1C42)
4044:105F ,BB 02FB mov bx,2FBh ; (4044:02FB=6)
4044:1062 E8 0A8B call sub_56 ; (1AF0)
4044:1065 B1 01 mov cl,1
4044:1067 ,BF 01B0 mov di,1B0h ; (4044:01B0=60h)
4044:106A E8 105B call sub_77 ; (20C8)
4044:106D BA 0290 mov dx,290h
4044:1070 B9 1006 mov cx,1006h
4044:1073 E8 1DCE call sub_118 ; (2E44)
4044:1076 E8 1C5E call sub_113 ; (2CD7)
4044:1079 79 08 jns loc_156 ; Jump if not sign
4044:107B B1 08 mov cl,8
4044:107D ,BF 02F1 mov di,2F1h ; (4044:02F1=80h)
4044:1080 E8 1045 call sub_77 ; (20C8)
4044:1083 loc_156: ; xref 4044:1079
4044:1083 E8 0BBC call sub_57 ; (1C42)
4044:1086 BE 02F1 mov si,2F1h
4044:1089 B0 08 mov al,8
4044:108B E8 1028 call sub_76 ; (20B6)
4044:108E 8A E0 mov ah,al
4044:1090 50 push ax
4044:1091 BE 01B1 mov si,1B1h
4044:1094 B0 1A mov al,1Ah
4044:1096 E8 101D call sub_76 ; (20B6)
4044:1099 8A E0 mov ah,al
4044:109B 50 push ax
4044:109C BE 01CB mov si,1CBh
4044:109F B0 1A mov al,1Ah
4044:10A1 E8 1012 call sub_76 ; (20B6)
4044:10A4 E8 1411 call sub_92 ; (24B8)
4044:10A7 B1 08 mov cl,8
4044:10A9 ,BF 02F1 mov di,2F1h ; (4044:02F1=80h)
4044:10AC E8 1019 call sub_77 ; (20C8)
4044:10AF C6 06 02FA 08 mov byte ptr ds:[2FAh],8 ; (4044:02FA=74h)
4044:10B4 C6 06 02F9 01 mov byte ptr ds:[2F9h],1 ; (4044:02F9=0)
4044:10B9 loc_157: ; xref 4044:10FF
4044:10B9 ,82 3E 02F9 08 ;* cmp byte ptr ds:[2F9h],8 ; (4044:02F9=0)
4044:10B9 db 82h, 3Eh,0F9h, 02h, 08h ; Fixup - byte match
4044:10BE 7F 41 jg loc_ret_160 ; Jump if >
4044:10C0 A0 02F9 mov al,byte ptr ds:[2F9h] ; (4044:02F9=0)
4044:10C3 98 cbw ; Convrt byte to word
4044:10C4 8B D0 mov dx,ax
4044:10C6 B0 08 mov al,8
4044:10C8 BE 02F1 mov si,2F1h
4044:10CB B1 01 mov cl,1
4044:10CD E8 0F30 call sub_74 ; (2000)
4044:10D0 8A C8 mov cl,al
4044:10D2 8B DE mov bx,si
4044:10D4 8B 36 02E7 mov si,word ptr ds:[2E7h] ; (4044:02E7=0E3h)
4044:10D8 A0 02FA mov al,byte ptr ds:[2FAh] ; (4044:02FA=74h)
4044:10DB 98 cbw ; Convrt byte to word
4044:10DC 03 F0 add si,ax
4044:10DE 8D BC FFFF ;* lea di,cs:[0FFFFh][si] ; Load effective addr
4044:10DE db 8Dh,0BCh,0FFh,0FFh ; Fixup - byte match
4044:10E2 B0 01 mov al,1
4044:10E4 8B F3 mov si,bx
4044:10E6 E8 0F9C call sub_75 ; (2085)
4044:10E9 75 02 jnz loc_158 ; Jump if not zero
4044:10EB D0 E0 shl al,1 ; Shift w/zeros fill
4044:10ED loc_158: ; xref 4044:10E9
4044:10ED 3C 00 cmp al,0
4044:10EF 74 06 je loc_159 ; Jump if equal
4044:10F1 ,BB 02FD mov bx,2FDh ; (4044:02FD=41h)
4044:10F4 E8 FD81 call sub_14 ; (0E78)
4044:10F7 loc_159: ; xref 4044:10EF
4044:10F7 FE 0E 02FA dec byte ptr ds:[2FAh] ; (4044:02FA=74h)
4044:10FB FE 06 02F9 inc byte ptr ds:[2F9h] ; (4044:02F9=0)
4044:10FF EB B8 jmp short loc_157 ; (10B9)
4044:1101 loc_ret_160: ; xref 4044:10BE
4044:1101 C3 retn
sub_17 endp
4044:1102 loc_161: ; xref 4044:0FBD
4044:1102 E9 011A jmp loc_177 ; (121F)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:04FD
;==========================================================================
4044:1105 sub_18 proc near
4044:1105 C7 06 3C7A 0000 mov word ptr ds:[3C7Ah],0 ; (4044:3C7A=92A0h)
4044:110B C7 06 3C7C 0000 mov word ptr ds:[3C7Ch],0 ; (4044:3C7C=240Ah)
4044:1111 C7 06 3C7E 0000 mov word ptr ds:[3C7Eh],0 ; (4044:3C7E=3C80h)
4044:1117 C6 06 02FF 00 mov byte ptr ds:[2FFh],0 ; (4044:02FF=0E8h)
4044:111C C6 06 0303 00 mov byte ptr ds:[303h],0 ; (4044:0303=43h)
4044:1121 C6 06 0304 00 mov byte ptr ds:[304h],0 ; (4044:0304=2)
4044:1126 C7 06 3C72 0000 mov word ptr ds:[3C72h],0 ; (4044:3C72=24D0h)
4044:112C A1 3C6C mov ax,data_359 ; (4044:3C6C=45EBh)
4044:112F 03 06 3C64 add ax,word ptr ds:[3C64h] ; (4044:3C64=3C80h)
4044:1133 A3 0300 mov word ptr ds:[300h],ax ; (4044:0300=0B76h)
4044:1136 C7 06 3C6C 0000 mov data_359,0 ; (4044:3C6C=45EBh)
4044:113C C7 06 3C5A 1BF0 mov word ptr ds:[3C5Ah],1BF0h ; (4044:3C5A=3Ch)
4044:1142 C7 06 3C5C 2BF0 mov word ptr ds:[3C5Ch],2BF0h ; (4044:3C5C=0C74h)
4044:1148 loc_162: ; xref 4044:1202
4044:1148 ,A1 0300 mov ax,word ptr ds:[300h] ; (4044:0300=0B76h)
4044:114B 39 06 3C7A cmp word ptr ds:[3C7Ah],ax ; (4044:3C7A=92A0h)
4044:114F 7E 03 jle loc_163 ; Jump if < or =
4044:1151 E9 00B1 jmp loc_174 ; (1205)
4044:1154 loc_163: ; xref 4044:114F
4044:1154 BB 0305 mov bx,305h
4044:1157 E8 02D3 call sub_25 ; (142D)
4044:115A C6 06 0302 00 mov byte ptr ds:[302h],0 ; (4044:0302=0BBh)
4044:115F A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:1162 A2 0309 mov byte ptr ds:[309h],al ; (4044:0309=36h)
4044:1165 loc_164: ; xref 4044:11DA
4044:1165 ,A0 0309 mov al,byte ptr ds:[309h] ; (4044:0309=36h)
4044:1168 38 06 0302 cmp byte ptr ds:[302h],al ; (4044:0302=0BBh)
4044:116C B0 80 mov al,80h
4044:116E 7E 02 jle loc_165 ; Jump if < or =
4044:1170 D0 E0 shl al,1 ; Shift w/zeros fill
4044:1172 loc_165: ; xref 4044:116E
4044:1172 8B 1E 0300 mov bx,word ptr ds:[300h] ; (4044:0300=0B76h)
4044:1176 39 1E 3C7A cmp word ptr ds:[3C7Ah],bx ; (4044:3C7A=92A0h)
4044:117A B4 80 mov ah,80h
4044:117C 7E 02 jle loc_166 ; Jump if < or =
4044:117E D0 E4 shl ah,1 ; Shift w/zeros fill
4044:1180 loc_166: ; xref 4044:117C
4044:1180 22 C4 and al,ah
4044:1182 3C 00 cmp al,0
4044:1184 74 56 je loc_171 ; Jump if equal
4044:1186 A0 0302 mov al,byte ptr ds:[302h] ; (4044:0302=0BBh)
4044:1189 98 cbw ; Convrt byte to word
4044:118A B1 05 mov cl,5
4044:118C D3 E0 shl ax,cl ; Shift w/zeros fill
4044:118E 8B F0 mov si,ax
4044:1190 80 BC 0BF0 E5 cmp byte ptr ds:[0BF0h][si],0E5h ; (4044:0BF0=2)
4044:1195 B0 80 mov al,80h
4044:1197 75 02 jnz loc_167 ; Jump if not zero
4044:1199 D0 E0 shl al,1 ; Shift w/zeros fill
4044:119B loc_167: ; xref 4044:1197
4044:119B 8A D8 mov bl,al
4044:119D 8B 36 3C5E mov si,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:11A1 A0 0302 mov al,byte ptr ds:[302h] ; (4044:0302=0BBh)
4044:11A4 98 cbw ; Convrt byte to word
4044:11A5 B1 05 mov cl,5
4044:11A7 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:11A9 03 F0 add si,ax
4044:11AB A0 3C8E mov al,byte ptr ds:[3C8Eh] ; (4044:3C8E=0BFh)
4044:11AE 38 04 cmp [si],al
4044:11B0 B0 80 mov al,80h
4044:11B2 75 02 jnz loc_168 ; Jump if not zero
4044:11B4 D0 E0 shl al,1 ; Shift w/zeros fill
4044:11B6 loc_168: ; xref 4044:11B2
4044:11B6 22 D8 and bl,al
4044:11B8 82 FB 00 ;* cmp bl,0
4044:11B8 db 82h,0FBh, 00h ; Fixup - byte match
4044:11BB 74 15 jz loc_170 ; Jump if zero
4044:11BD 82 3E 02FF 00 ;* cmp byte ptr ds:[2FFh],0 ; (4044:02FF=0E8h)
4044:11BD db 82h, 3Eh,0FFh, 02h, 00h ; Fixup - byte match
4044:11C2 75 08 jnz loc_169 ; Jump if not zero
4044:11C4 ,BB 030A mov bx,30Ah ; (4044:030A=0F2h)
4044:11C7 E8 0057 call sub_19 ; (1221)
4044:11CA EB 06 jmp short loc_170 ; (11D2)
4044:11CC loc_169: ; xref 4044:11C2
4044:11CC ,BB 0312 mov bx,312h ; (4044:0312=0B1h)
4044:11CF E8 004F call sub_19 ; (1221)
4044:11D2 loc_170: ; xref 4044:11BB, 11CA
4044:11D2 FF 06 3C7A inc word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:11D6 FE 06 0302 inc byte ptr ds:[302h] ; (4044:0302=0BBh)
4044:11DA EB 89 jmp short loc_164 ; (1165)
4044:11DC loc_171: ; xref 4044:1184
4044:11DC FF 06 3C7C inc word ptr ds:[3C7Ch] ; (4044:3C7C=240Ah)
4044:11E0 A0 0303 mov al,byte ptr ds:[303h] ; (4044:0303=43h)
4044:11E3 98 cbw ; Convrt byte to word
4044:11E4 3B 06 3C68 cmp ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:11E8 75 08 jne loc_172 ; Jump if not equal
4044:11EA BB 031A mov bx,31Ah
4044:11ED E8 00A9 call sub_20 ; (1299)
4044:11F0 EB 10 jmp short loc_173 ; (1202)
4044:11F2 loc_172: ; xref 4044:11E8
4044:11F2 A0 0304 mov al,byte ptr ds:[304h] ; (4044:0304=2)
4044:11F5 98 cbw ; Convrt byte to word
4044:11F6 3B 06 3C68 cmp ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:11FA 75 06 jne loc_173 ; Jump if not equal
4044:11FC BB 031E mov bx,31Eh
4044:11FF E8 0097 call sub_20 ; (1299)
4044:1202 loc_173: ; xref 4044:11F0, 11FA
4044:1202 E9 FF43 jmp loc_162 ; (1148)
4044:1205 loc_174: ; xref 4044:1151
4044:1205 FF 0E 3C7A dec word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:1209 82 3E 02FF 00 ;* cmp byte ptr ds:[2FFh],0 ; (4044:02FF=0E8h)
4044:1209 db 82h, 3Eh,0FFh, 02h, 00h ; Fixup - byte match
4044:120E 75 08 jnz loc_175 ; Jump if not zero
4044:1210 BB 0322 mov bx,322h
4044:1213 E8 00B0 call sub_21 ; (12C6)
4044:1216 EB 06 jmp short loc_ret_176 ; (121E)
4044:1218 loc_175: ; xref 4044:120E
4044:1218 BB 0326 mov bx,326h
4044:121B E8 00A8 call sub_21 ; (12C6)
4044:121E loc_ret_176: ; xref 4044:1216
4044:121E C3 retn
sub_18 endp
4044:121F loc_177: ; xref 4044:1102
4044:121F EB 76 jmp short loc_179 ; (1297)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:11C7, 11CF
;==========================================================================
4044:1221 sub_19 proc near
4044:1221 8B F3 mov si,bx
4044:1223 ,BF 032A mov di,32Ah ; (4044:032A=0BBh)
4044:1226 B9 0008 mov cx,8
4044:1229 FC cld ; Clear direction
4044:122A F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:122C 8B 36 032A mov si,word ptr ds:[32Ah] ; (4044:032A=45BBh)
4044:1230 8B 34 mov si,[si]
4044:1232 8B 3E 032E mov di,word ptr ds:[32Eh] ; (4044:032E=10FDh)
4044:1236 8A 05 mov al,[di]
4044:1238 98 cbw ; Convrt byte to word
4044:1239 B1 05 mov cl,5
4044:123B D3 E0 shl ax,cl ; Shift w/zeros fill
4044:123D 03 F0 add si,ax
4044:123F 8B EE mov bp,si
4044:1241 8B 3E 3C5E mov di,word ptr ds:[3C5Eh] ; (4044:3C5E=0C4E8h)
4044:1245 8B 1E 032C mov bx,word ptr ds:[32Ch] ; (4044:032C=0E802h)
4044:1249 8A 07 mov al,[bx]
4044:124B 98 cbw ; Convrt byte to word
4044:124C B1 05 mov cl,5
4044:124E D3 E0 shl ax,cl ; Shift w/zeros fill
4044:1250 03 F8 add di,ax
4044:1252 B1 20 mov cl,20h ; ' '
4044:1254 8D 35 lea si,[di] ; Load effective addr
4044:1256 B0 20 mov al,20h ; ' '
4044:1258 8B FD mov di,bp
4044:125A 8D 3D lea di,[di] ; Load effective addr
4044:125C E8 0E7E call sub_79 ; (20DD)
4044:125F FF 06 3C6C inc data_359 ; (4044:3C6C=45EBh)
4044:1263 8B 1E 032E mov bx,word ptr ds:[32Eh] ; (4044:032E=10FDh)
4044:1267 FE 07 inc byte ptr [bx]
4044:1269 8B 1E 032E mov bx,word ptr ds:[32Eh] ; (4044:032E=10FDh)
4044:126D 8A 07 mov al,[bx]
4044:126F 98 cbw ; Convrt byte to word
4044:1270 3B 06 3C68 cmp ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:1274 75 20 jne loc_ret_178 ; Jump if not equal
4044:1276 8B 36 0330 mov si,word ptr ds:[330h] ; (4044:0330=0A6E8h)
4044:127A 89 36 03B2 mov word ptr ds:[3B2h],si ; (4044:03B2=8DF0h)
4044:127E BB 0002 mov bx,2
4044:1281 8B 3E 0330 mov di,word ptr ds:[330h] ; (4044:0330=0A6E8h)
4044:1285 8A 05 mov al,[di]
4044:1287 98 cbw ; Convrt byte to word
4044:1288 40 inc ax
4044:1289 8B D0 mov dx,ax
4044:128B E8 1164 call sub_90 ; (23F2)
4044:128E 8B C3 mov ax,bx
4044:1290 8B 36 03B2 mov si,word ptr ds:[3B2h] ; (4044:03B2=8DF0h)
4044:1294 88 04 mov [si],al
4044:1296 loc_ret_178: ; xref 4044:1274
4044:1296 C3 retn
sub_19 endp
4044:1297 loc_179: ; xref 4044:121F
4044:1297 EB 2A jmp short loc_180 ; (12C3)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:11ED, 11FF, 134B
;==========================================================================
4044:1299 sub_20 proc near
4044:1299 8B F3 mov si,bx
4044:129B ,BF 0333 mov di,333h ; (4044:0333=8Bh)
4044:129E B9 0004 mov cx,4
4044:12A1 FC cld ; Clear direction
4044:12A2 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:12A4 A1 0335 mov ax,word ptr ds:[335h] ; (4044:0335=3C5Eh)
4044:12A7 A3 0339 mov word ptr ds:[339h],ax ; (4044:0339=383Ch)
4044:12AA BB 0337 mov bx,337h
4044:12AD E8 0247 call sub_26 ; (14F7)
4044:12B0 A1 3C68 mov ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:12B3 01 06 3C7E add word ptr ds:[3C7Eh],ax ; (4044:3C7E=3C80h)
4044:12B7 8B 36 0333 mov si,word ptr ds:[333h] ; (4044:0333=368Bh)
4044:12BB C6 04 00 mov byte ptr [si],0
4044:12BE FF 06 3C72 inc word ptr ds:[3C72h] ; (4044:3C72=24D0h)
4044:12C2 C3 retn
sub_20 endp
4044:12C3 loc_180: ; xref 4044:1297
4044:12C3 E9 0101 jmp loc_191 ; (13C7)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1213, 121B
;==========================================================================
4044:12C6 sub_21 proc near
4044:12C6 8B F3 mov si,bx
4044:12C8 ,BF 033B mov di,33Bh ; (4044:033B=84h)
4044:12CB B9 0004 mov cx,4
4044:12CE FC cld ; Clear direction
4044:12CF F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:12D1 8B 36 033D mov si,word ptr ds:[33Dh] ; (4044:033D=7500h)
4044:12D5 8A 04 mov al,[si]
4044:12D7 A2 033F mov byte ptr ds:[33Fh],al ; (4044:033F=3)
4044:12DA A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:12DD A2 0341 mov byte ptr ds:[341h],al ; (4044:0341=0C5h)
4044:12E0 loc_181: ; xref 4044:132B
4044:12E0 ,A0 0341 mov al,byte ptr ds:[341h] ; (4044:0341=0C5h)
4044:12E3 38 06 033F cmp byte ptr ds:[33Fh],al ; (4044:033F=3)
4044:12E7 7F 44 jg loc_184 ; Jump if >
4044:12E9 8B 36 033B mov si,word ptr ds:[33Bh] ; (4044:033B=6084h)
4044:12ED 8B 34 mov si,[si]
4044:12EF A0 033F mov al,byte ptr ds:[33Fh] ; (4044:033F=3)
4044:12F2 98 cbw ; Convrt byte to word
4044:12F3 B1 05 mov cl,5
4044:12F5 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:12F7 03 F0 add si,ax
4044:12F9 C6 04 E5 mov byte ptr [si],0E5h
4044:12FC C6 06 0340 01 mov byte ptr ds:[340h],1 ; (4044:0340=0E8h)
4044:1301 loc_182: ; xref 4044:1325
4044:1301 ,82 3E 0340 1F ;* cmp byte ptr ds:[340h],1Fh ; (4044:0340=0E8h)
4044:1301 db 82h, 3Eh, 40h, 03h, 1Fh ; Fixup - byte match
4044:1306 7F 1F jg loc_183 ; Jump if >
4044:1308 8B 36 033B mov si,word ptr ds:[33Bh] ; (4044:033B=6084h)
4044:130C 8B 34 mov si,[si]
4044:130E A0 033F mov al,byte ptr ds:[33Fh] ; (4044:033F=3)
4044:1311 98 cbw ; Convrt byte to word
4044:1312 B1 05 mov cl,5
4044:1314 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:1316 03 F0 add si,ax
4044:1318 A0 0340 mov al,byte ptr ds:[340h] ; (4044:0340=0E8h)
4044:131B 98 cbw ; Convrt byte to word
4044:131C 03 F0 add si,ax
4044:131E C6 04 00 mov byte ptr [si],0
4044:1321 FE 06 0340 inc byte ptr ds:[340h] ; (4044:0340=0E8h)
4044:1325 EB DA jmp short loc_182 ; (1301)
4044:1327 loc_183: ; xref 4044:1306
4044:1327 FE 06 033F inc byte ptr ds:[33Fh] ; (4044:033F=3)
4044:132B EB B3 jmp short loc_181 ; (12E0)
4044:132D loc_184: ; xref 4044:12E7
4044:132D FF 0E 3C6C dec data_359 ; (4044:3C6C=45EBh)
4044:1331 8B 36 033D mov si,word ptr ds:[33Dh] ; (4044:033D=7500h)
4044:1335 8A 04 mov al,[si]
4044:1337 98 cbw ; Convrt byte to word
4044:1338 48 dec ax
4044:1339 A3 3C6E mov word ptr ds:[3C6Eh],ax ; (4044:3C6E=0D0E8h)
4044:133C A1 033D mov ax,word ptr ds:[33Dh] ; (4044:033D=7500h)
4044:133F A3 0342 mov word ptr ds:[342h],ax ; (4044:0342=0E805h)
4044:1342 A1 033B mov ax,word ptr ds:[33Bh] ; (4044:033B=6084h)
4044:1345 A3 0344 mov word ptr ds:[344h],ax ; (4044:0344=37Fh)
4044:1348 BB 0342 mov bx,342h
4044:134B E8 FF4B call sub_20 ; (1299)
4044:134E C6 06 033F 00 mov byte ptr ds:[33Fh],0 ; (4044:033F=3)
4044:1353 A0 3C66 mov al,byte ptr ds:[3C66h] ; (4044:3C66=0)
4044:1356 A2 0346 mov byte ptr ds:[346h],al ; (4044:0346=0E8h)
4044:1359 loc_185: ; xref 4044:13A6
4044:1359 ,A0 0346 mov al,byte ptr ds:[346h] ; (4044:0346=0E8h)
4044:135C 38 06 033F cmp byte ptr ds:[33Fh],al ; (4044:033F=3)
4044:1360 7E 02 jle loc_186 ; Jump if < or =
4044:1362 EB 44 jmp short loc_189 ; (13A8)
4044:1364 loc_186: ; xref 4044:1360
4044:1364 8B 36 033B mov si,word ptr ds:[33Bh] ; (4044:033B=6084h)
4044:1368 8B 34 mov si,[si]
4044:136A A0 033F mov al,byte ptr ds:[33Fh] ; (4044:033F=3)
4044:136D 98 cbw ; Convrt byte to word
4044:136E B1 05 mov cl,5
4044:1370 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:1372 03 F0 add si,ax
4044:1374 C6 04 E5 mov byte ptr [si],0E5h
4044:1377 C6 06 0340 01 mov byte ptr ds:[340h],1 ; (4044:0340=0E8h)
4044:137C loc_187: ; xref 4044:13A0
4044:137C ,82 3E 0340 1F ;* cmp byte ptr ds:[340h],1Fh ; (4044:0340=0E8h)
4044:137C db 82h, 3Eh, 40h, 03h, 1Fh ; Fixup - byte match
4044:1381 7F 1F jg loc_188 ; Jump if >
4044:1383 8B 36 033B mov si,word ptr ds:[33Bh] ; (4044:033B=6084h)
4044:1387 8B 34 mov si,[si]
4044:1389 A0 033F mov al,byte ptr ds:[33Fh] ; (4044:033F=3)
4044:138C 98 cbw ; Convrt byte to word
4044:138D B1 05 mov cl,5
4044:138F D3 E0 shl ax,cl ; Shift w/zeros fill
4044:1391 03 F0 add si,ax
4044:1393 A0 0340 mov al,byte ptr ds:[340h] ; (4044:0340=0E8h)
4044:1396 98 cbw ; Convrt byte to word
4044:1397 03 F0 add si,ax
4044:1399 C6 04 00 mov byte ptr [si],0
4044:139C FE 06 0340 inc byte ptr ds:[340h] ; (4044:0340=0E8h)
4044:13A0 EB DA jmp short loc_187 ; (137C)
4044:13A2 loc_188: ; xref 4044:1381
4044:13A2 FE 06 033F inc byte ptr ds:[33Fh] ; (4044:033F=3)
4044:13A6 EB B1 jmp short loc_185 ; (1359)
4044:13A8 loc_189: ; xref 4044:1362, 13C4
4044:13A8 ,A1 3C7A mov ax,word ptr ds:[3C7Ah] ; (4044:3C7A=92A0h)
4044:13AB 39 06 3C7E cmp word ptr ds:[3C7Eh],ax ; (4044:3C7E=3C80h)
4044:13AF 7D 15 jge loc_ret_190 ; Jump if > or =
4044:13B1 A1 033B mov ax,word ptr ds:[33Bh] ; (4044:033B=6084h)
4044:13B4 A3 0349 mov word ptr ds:[349h],ax ; (4044:0349=7DE8h)
4044:13B7 BB 0347 mov bx,347h
4044:13BA E8 013A call sub_26 ; (14F7)
4044:13BD A1 3C68 mov ax,word ptr ds:[3C68h] ; (4044:3C68=0C301h)
4044:13C0 01 06 3C7E add word ptr ds:[3C7Eh],ax ; (4044:3C7E=3C80h)
4044:13C4 EB E2 jmp short loc_189 ; (13A8)
4044:13C6 loc_ret_190: ; xref 4044:13AF
4044:13C6 C3 retn
sub_21 endp
4044:13C7 loc_191: ; xref 4044:12C3
4044:13C7 EB 1B jmp short loc_192 ; (13E4)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0349, 096C, 0EB0
;==========================================================================
4044:13C9 sub_22 proc near
4044:13C9 ,BB 034B mov bx,34Bh ; (4044:034B=10h)
4044:13CC E8 04C0 call sub_39 ; (188F)
4044:13CF 89 1E 3BF0 mov word ptr ds:[3BF0h],bx ; (4044:3BF0=0E800h)
4044:13D3 E8 05B8 call sub_50 ; (198E)
4044:13D6 ,BB 034D mov bx,34Dh ; (4044:034D=0F8h)
4044:13D9 E8 05B7 call sub_51 ; (1993)
4044:13DC 89 1E 3C1C mov word ptr ds:[3C1Ch],bx ; (4044:3C1C=92A2h)
4044:13E0 E8 053C call sub_47 ; (191F)
4044:13E3 C3 retn
sub_22 endp
4044:13E4 loc_192: ; xref 4044:13C7
4044:13E4 EB 25 jmp short loc_193 ; (140B)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0191
;==========================================================================
4044:13E6 sub_23 proc near
4044:13E6 BB 0151 mov bx,151h
4044:13E9 B0 03 mov al,3
4044:13EB E8 0BA7 call sub_72 ; (1F95)
4044:13EE E8 0ECB call sub_84 ; (22BC)
4044:13F1 8B C3 mov ax,bx
4044:13F3 A2 3C92 mov byte ptr ds:[3C92h],al ; (4044:3C92=24h)
4044:13F6 C6 06 3C93 00 mov byte ptr ds:[3C93h],0 ; (4044:3C93=80h)
4044:13FB C7 06 0351 3C92 mov word ptr ds:[351h],3C92h ; (4044:0351=49BFh)
4044:1401 ,BB 034F mov bx,34Fh ; (4044:034F=8Bh)
4044:1404 E8 067B call sub_55 ; (1A82)
4044:1407 A0 3C94 mov al,byte ptr ds:[3C94h] ; (4044:3C94=3Ch)
4044:140A C3 retn
sub_23 endp
4044:140B loc_193: ; xref 4044:13E4
4044:140B EB 1D jmp short loc_194 ; (142A)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:019E
;==========================================================================
4044:140D sub_24 proc near
4044:140D C7 06 0353 3C92 mov word ptr ds:[353h],3C92h ; (4044:0353=0B902h)
4044:1413 8B 36 0353 mov si,word ptr ds:[353h] ; (4044:0353=0B902h)
4044:1417 C6 04 89 mov byte ptr [si],89h
4044:141A C7 06 0357 3C92 mov word ptr ds:[357h],3C92h ; (4044:0357=0F2FCh)
4044:1420 ,BB 0355 mov bx,355h ; (4044:0355=4)
4044:1423 E8 0654 call sub_54 ; (1A7A)
4044:1426 A0 3C94 mov al,byte ptr ds:[3C94h] ; (4044:3C94=3Ch)
4044:1429 C3 retn
sub_24 endp
4044:142A loc_194: ; xref 4044:140B
4044:142A E9 00C7 jmp loc_197 ; (14F4)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:032D, 05B9, 05D2, 060F, 07F7, 0C52, 0C6D
; 0CF8, 1157
;==========================================================================
4044:142D sub_25 proc near
4044:142D 8B F3 mov si,bx
4044:142F ,BF 0359 mov di,359h ; (4044:0359=0A4h)
4044:1432 B9 0004 mov cx,4
4044:1435 FC cld ; Clear direction
4044:1436 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:1438 8B 36 0359 mov si,word ptr ds:[359h] ; (4044:0359=0BAA4h)
4044:143C 8B 04 mov ax,[si]
4044:143E 99 cwd ; Word to double word
4044:143F F7 3E 3C68 idiv word ptr ds:[3C68h] ; (4044:3C68=0C301h) ax,dxrem=dx:ax/da
4044:1443 8B D8 mov bx,ax
4044:1445 E8 0ECE call sub_86 ; (2316)
4044:1448 BB 035D mov bx,35Dh
4044:144B B0 07 mov al,7
4044:144D E8 0B6C call sub_73 ; (1FBC)
4044:1450 ,BB 0361 mov bx,361h ; (4044:0361=0E5h)
4044:1453 E8 020F call sub_29 ; (1665)
4044:1456 89 1E 3C78 mov word ptr ds:[3C78h],bx ; (4044:3C78=0C301h)
4044:145A ,BB 0363 mov bx,363h ; (4044:0363=0B0h)
4044:145D E8 03EE call sub_36 ; (184E)
4044:1460 ,BB 0365 mov bx,365h ; (4044:0365=0E8h)
4044:1463 E8 01D4 call sub_28 ; (163A)
4044:1466 89 1E 3C76 mov word ptr ds:[3C76h],bx ; (4044:3C76=7400h)
4044:146A ,BB 0367 mov bx,367h ; (4044:0367=2Bh)
4044:146D E8 03D6 call sub_35 ; (1846)
4044:1470 A1 035B mov ax,word ptr ds:[35Bh] ; (4044:035B=252h)
4044:1473 A3 0369 mov word ptr ds:[369h],ax ; (4044:0369=18D7h)
4044:1476 ,BB 0369 mov bx,369h ; (4044:0369=0D7h)
4044:1479 E8 03B8 call sub_33 ; (1834)
4044:147C E8 03D7 call sub_37 ; (1856)
4044:147F 3C 00 cmp al,0
4044:1481 75 02 jne loc_195 ; Jump if not equal
4044:1483 EB 6E jmp short loc_ret_196 ; (14F3)
4044:1485 loc_195: ; xref 4044:1481
4044:1485 BA 0252 mov dx,252h
4044:1488 B9 1433 mov cx,1433h
4044:148B E8 19BA call sub_119 ; (2E48)
4044:148E B0 01 mov al,1
4044:1490 E8 19E5 call sub_120 ; (2E78)
4044:1493 BE 0153 mov si,153h
4044:1496 B0 15 mov al,15h
4044:1498 E8 0C1B call sub_76 ; (20B6)
4044:149B E8 189B call sub_114 ; (2D39)
4044:149E BB 035D mov bx,35Dh
4044:14A1 B0 07 mov al,7
4044:14A3 E8 0AEF call sub_72 ; (1F95)
4044:14A6 B0 0A mov al,0Ah
4044:14A8 B5 00 mov ch,0
4044:14AA E8 0C56 call sub_80 ; (2103)
4044:14AD E8 18B8 call sub_115 ; (2D68)
4044:14B0 E8 078F call sub_57 ; (1C42)
4044:14B3 BA 0252 mov dx,252h
4044:14B6 B9 146D mov cx,146Dh
4044:14B9 E8 198C call sub_119 ; (2E48)
4044:14BC BE 0168 mov si,168h
4044:14BF B0 08 mov al,8
4044:14C1 E8 0BF2 call sub_76 ; (20B6)
4044:14C4 E8 1872 call sub_114 ; (2D39)
4044:14C7 8B 1E 3C78 mov bx,word ptr ds:[3C78h] ; (4044:3C78=0C301h)
4044:14CB B0 09 mov al,9
4044:14CD E8 0DFF call sub_85 ; (22CF)
4044:14D0 E8 1895 call sub_115 ; (2D68)
4044:14D3 BE 0170 mov si,170h
4044:14D6 B0 08 mov al,8
4044:14D8 E8 0BDB call sub_76 ; (20B6)
4044:14DB E8 185B call sub_114 ; (2D39)
4044:14DE 8B 1E 3C76 mov bx,word ptr ds:[3C76h] ; (4044:3C76=7400h)
4044:14E2 B0 09 mov al,9
4044:14E4 E8 0DE8 call sub_85 ; (22CF)
4044:14E7 E8 187E call sub_115 ; (2D68)
4044:14EA E8 0755 call sub_57 ; (1C42)
4044:14ED ,BB 036B mov bx,36Bh ; (4044:036B=0BBh)
4044:14F0 E8 F985 call sub_14 ; (0E78)
4044:14F3 loc_ret_196: ; xref 4044:1483
4044:14F3 C3 retn
sub_25 endp
4044:14F4 loc_197: ; xref 4044:142A
4044:14F4 E9 00C8 jmp loc_199 ; (15BF)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:058A, 05E2, 06BB, 0A95, 0A9B, 0CDC, 12AD
; 13BA
;==========================================================================
4044:14F7 sub_26 proc near
4044:14F7 8B F3 mov si,bx
4044:14F9 ,BF 036D mov di,36Dh ; (4044:036D=2)
4044:14FC B9 0004 mov cx,4
4044:14FF FC cld ; Clear direction
4044:1500 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:1502 8B 36 036D mov si,word ptr ds:[36Dh] ; (4044:036D=0E802h)
4044:1506 8B 04 mov ax,[si]
4044:1508 99 cwd ; Word to double word
4044:1509 F7 3E 3C68 idiv word ptr ds:[3C68h] ; (4044:3C68=0C301h) ax,dxrem=dx:ax/da
4044:150D 8B D8 mov bx,ax
4044:150F E8 0E04 call sub_86 ; (2316)
4044:1512 BB 0371 mov bx,371h
4044:1515 B0 07 mov al,7
4044:1517 E8 0AA2 call sub_73 ; (1FBC)
4044:151A ,BB 0375 mov bx,375h ; (4044:0375=1)
4044:151D E8 0145 call sub_29 ; (1665)
4044:1520 89 1E 3C78 mov word ptr ds:[3C78h],bx ; (4044:3C78=0C301h)
4044:1524 ,BB 0377 mov bx,377h ; (4044:0377=4Fh)
4044:1527 E8 0324 call sub_36 ; (184E)
4044:152A ,BB 0379 mov bx,379h ; (4044:0379=0BAh)
4044:152D E8 010A call sub_28 ; (163A)
4044:1530 89 1E 3C76 mov word ptr ds:[3C76h],bx ; (4044:3C76=7400h)
4044:1534 ,BB 037B mov bx,37Bh ; (4044:037B=2)
4044:1537 E8 030C call sub_35 ; (1846)
4044:153A A1 036F mov ax,word ptr ds:[36Fh] ; (4044:036F=177Fh)
4044:153D A3 037D mov word ptr ds:[37Dh],ax ; (4044:037D=325h)
4044:1540 ,BB 037D mov bx,37Dh ; (4044:037D=25h)
4044:1543 E8 02EE call sub_33 ; (1834)
4044:1546 BB 037F mov bx,37Fh
4044:1549 E8 0310 call sub_38 ; (185C)
4044:154C 3C 00 cmp al,0
4044:154E 74 6E je loc_ret_198 ; Jump if equal
4044:1550 BA 0252 mov dx,252h
4044:1553 B9 14FE mov cx,14FEh
4044:1556 E8 18EF call sub_119 ; (2E48)
4044:1559 B0 01 mov al,1
4044:155B E8 191A call sub_120 ; (2E78)
4044:155E BE 017A mov si,17Ah
4044:1561 B0 15 mov al,15h
4044:1563 E8 0B50 call sub_76 ; (20B6)
4044:1566 E8 17D0 call sub_114 ; (2D39)
4044:1569 BB 0371 mov bx,371h
4044:156C B0 07 mov al,7
4044:156E E8 0A24 call sub_72 ; (1F95)
4044:1571 B0 0A mov al,0Ah
4044:1573 B5 00 mov ch,0
4044:1575 E8 0B8B call sub_80 ; (2103)
4044:1578 E8 17ED call sub_115 ; (2D68)
4044:157B E8 06C4 call sub_57 ; (1C42)
4044:157E BA 0252 mov dx,252h
4044:1581 B9 1538 mov cx,1538h
4044:1584 E8 18C1 call sub_119 ; (2E48)
4044:1587 BE 0168 mov si,168h
4044:158A B0 08 mov al,8
4044:158C E8 0B27 call sub_76 ; (20B6)
4044:158F E8 17A7 call sub_114 ; (2D39)
4044:1592 8B 1E 3C78 mov bx,word ptr ds:[3C78h] ; (4044:3C78=0C301h)
4044:1596 B0 09 mov al,9
4044:1598 E8 0D34 call sub_85 ; (22CF)
4044:159B E8 17CA call sub_115 ; (2D68)
4044:159E BE 0170 mov si,170h
4044:15A1 B0 08 mov al,8
4044:15A3 E8 0B10 call sub_76 ; (20B6)
4044:15A6 E8 1790 call sub_114 ; (2D39)
4044:15A9 8B 1E 3C76 mov bx,word ptr ds:[3C76h] ; (4044:3C76=7400h)
4044:15AD B0 09 mov al,9
4044:15AF E8 0D1D call sub_85 ; (22CF)
4044:15B2 E8 17B3 call sub_115 ; (2D68)
4044:15B5 E8 068A call sub_57 ; (1C42)
4044:15B8 ,BB 0381 mov bx,381h ; (4044:0381=2Ah)
4044:15BB E8 F8BA call sub_14 ; (0E78)
4044:15BE loc_ret_198: ; xref 4044:154E
4044:15BE C3 retn
sub_26 endp
4044:15BF loc_199: ; xref 4044:14F4
4044:15BF E9 0076 jmpn loc_204 ; (1638)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0305
;==========================================================================
4044:15C2 sub_27 proc near
4044:15C2 8B 07 mov ax,[bx]
4044:15C4 A3 0383 mov word ptr ds:[383h],ax ; (4044:0383=2952h)
4044:15C7 8B 36 0383 mov si,word ptr ds:[383h] ; (4044:0383=2952h)
4044:15CB 8D 34 lea si,[si] ; Load effective addr
4044:15CD ,BF 0389 mov di,389h ; (4044:0389=8Bh)
4044:15D0 B9 0001 mov cx,1
4044:15D3 FC cld ; Clear direction
4044:15D4 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:15D6 82 3E 0389 00 ;* cmp byte ptr ds:[389h],0 ; (4044:0389=8Bh)
4044:15D6 db 82h, 3Eh, 89h, 03h, 00h ; Fixup - byte match
4044:15DB 75 08 jnz loc_200 ; Jump if not zero
4044:15DD E8 0405 call sub_52 ; (19E5)
4044:15E0 A2 0389 mov byte ptr ds:[389h],al ; (4044:0389=8Bh)
4044:15E3 EB 04 jmp short loc_201 ; (15E9)
4044:15E5 loc_200: ; xref 4044:15DB
4044:15E5 FE 0E 0389 dec byte ptr ds:[389h] ; (4044:0389=8Bh)
4044:15E9 loc_201: ; xref 4044:15E3
4044:15E9 ,BB 038A mov bx,38Ah ; (4044:038A=36h)
4044:15EC E8 03A4 call sub_51 ; (1993)
4044:15EF 89 1E 3C1C mov word ptr ds:[3C1Ch],bx ; (4044:3C1C=92A2h)
4044:15F3 ,BB 038C mov bx,38Ch ; (4044:038C=3Ch)
4044:15F6 E8 0296 call sub_39 ; (188F)
4044:15F9 89 1E 3BF0 mov word ptr ds:[3BF0h],bx ; (4044:3BF0=0E800h)
4044:15FD 83 3E 3BF0 00 cmp word ptr ds:[3BF0h],0 ; (4044:3BF0=0E800h)
4044:1602 B0 80 mov al,80h
4044:1604 74 02 jz loc_202 ; Jump if zero
4044:1606 D0 E0 shl al,1 ; Shift w/zeros fill
4044:1608 loc_202: ; xref 4044:1604
4044:1608 3C 00 cmp al,0
4044:160A 74 06 je loc_203 ; Jump if equal
4044:160C ,BB 038E mov bx,38Eh ; (4044:038E=2Eh)
4044:160F E8 F866 call sub_14 ; (0E78)
4044:1612 loc_203: ; xref 4044:160A
4044:1612 8B 36 3BF0 mov si,word ptr ds:[3BF0h] ; (4044:3BF0=0E800h)
4044:1616 8B 04 mov ax,[si]
4044:1618 A3 01AE mov word ptr ds:[1AEh],ax ; (4044:01AE=1E89h)
4044:161B 8B 36 3BF0 mov si,word ptr ds:[3BF0h] ; (4044:3BF0=0E800h)
4044:161F 8B 84 0008 mov ax,data_8[si] ; (4044:0008=200h)
4044:1623 A3 3BF2 mov word ptr ds:[3BF2h],ax ; (4044:3BF2=123h)
4044:1626 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:162A 8B 1C mov bx,[si]
4044:162C E8 0CE7 call sub_86 ; (2316)
4044:162F BB 3BF4 mov bx,3BF4h
4044:1632 B0 07 mov al,7
4044:1634 E8 0985 call sub_73 ; (1FBC)
4044:1637 C3 retn
sub_27 endp
4044:1638 loc_204: ; xref 4044:15BF
4044:1638 EB 29 jmp short loc_205 ; (1663)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1463, 152D
;==========================================================================
4044:163A sub_28 proc near
4044:163A 8B 07 mov ax,[bx]
4044:163C A3 0390 mov word ptr ds:[390h],ax ; (4044:0390=8A02h)
4044:163F 8B 36 0390 mov si,word ptr ds:[390h] ; (4044:0390=8A02h)
4044:1643 8D 1C lea bx,[si] ; Load effective addr
4044:1645 B0 07 mov al,7
4044:1647 E8 094B call sub_72 ; (1F95)
4044:164A BB 3BF4 mov bx,3BF4h
4044:164D B0 07 mov al,7
4044:164F E8 0943 call sub_72 ; (1F95)
4044:1652 E8 0825 call sub_65 ; (1E7A)
4044:1655 E8 0C64 call sub_84 ; (22BC)
4044:1658 89 1E 0396 mov word ptr ds:[396h],bx ; (4044:0396=0B1F0h)
4044:165C ,BB 0392 mov bx,392h ; (4044:0392=46h)
4044:165F E8 01DE call sub_34 ; (1840)
4044:1662 C3 retn
sub_28 endp
4044:1663 loc_205: ; xref 4044:1638
4044:1663 EB 31 jmp short loc_206 ; (1696)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1453, 151D
;==========================================================================
4044:1665 sub_29 proc near
4044:1665 8B 07 mov ax,[bx]
4044:1667 A3 0398 mov word ptr ds:[398h],ax ; (4044:0398=8D01h)
4044:166A 8B 36 0398 mov si,word ptr ds:[398h] ; (4044:0398=8D01h)
4044:166E 8D 1C lea bx,[si] ; Load effective addr
4044:1670 B0 07 mov al,7
4044:1672 E8 0920 call sub_72 ; (1F95)
4044:1675 B0 08 mov al,8
4044:1677 E8 0B22 call sub_82 ; (219C)
4044:167A BB 3BF4 mov bx,3BF4h
4044:167D B0 07 mov al,7
4044:167F E8 0913 call sub_72 ; (1F95)
4044:1682 E8 07F9 call sub_66 ; (1E7E)
4044:1685 B0 08 mov al,8
4044:1687 E8 0BB5 call sub_83 ; (223F)
4044:168A E8 0C2F call sub_84 ; (22BC)
4044:168D 8B 36 3BF2 mov si,word ptr ds:[3BF2h] ; (4044:3BF2=123h)
4044:1691 03 9C 000D add bx,data_12[si] ; (4044:000D=0D800h)
4044:1695 C3 retn
sub_29 endp
4044:1696 loc_206: ; xref 4044:1663
4044:1696 EB 22 jmp short loc_207 ; (16BA)
;* No entry point to code
4044:1698 8B 07 mov ax,[bx]
4044:169A A3 039A mov word ptr ds:[39Ah],ax ; (4044:039A=0FFBCh)
4044:169D C7 06 039E 039C mov word ptr ds:[39Eh],39Ch ; (4044:039E=0E8C3h)
4044:16A3 C7 06 039C 0000 mov word ptr ds:[39Ch],0 ; (4044:039C=8AFFh)
4044:16A9 8B 36 039E mov si,word ptr ds:[39Eh] ; (4044:039E=0E8C3h)
4044:16AD 8B 3E 039A mov di,word ptr ds:[39Ah] ; (4044:039A=0FFBCh)
4044:16B1 8A 05 mov al,[di]
4044:16B3 88 04 mov [si],al
4044:16B5 8B 1E 039C mov bx,word ptr ds:[39Ch] ; (4044:039C=8AFFh)
4044:16B9 C3 retn
4044:16BA loc_207: ; xref 4044:1696
4044:16BA E9 0141 jmp loc_208 ; (17FE)
;* No entry point to code
4044:16BD 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16C2 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16C7 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16CC 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16D1 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16D6 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16DB 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16E0 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16E5 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16EA 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16EF 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16F4 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16F9 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:16FE 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1703 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1708 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:170D 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1712 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1717 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:171C 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1721 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1726 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:172B 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1730 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1735 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:173A 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:173F 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1744 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1749 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:174E 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1753 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1758 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:175D 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1762 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1767 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:176C 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1771 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1776 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:177B 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1780 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1785 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:178A 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:178F 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1794 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:1799 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:179E 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17A3 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17A8 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17AD 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17B2 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17B7 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17BC 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17C1 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17C6 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17CB 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17D0 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17D5 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17DA 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17DF 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17E4 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17E9 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17EE 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17F3 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17F8 83 06 03A0 05 add word ptr ds:[3A0h],5 ; (4044:03A0=1D26h)
4044:17FD C3 retn
4044:17FE loc_208: ; xref 4044:16BA
4044:17FE E8 064D call sub_63 ; (1E4E)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:188F
;==========================================================================
4044:1801 sub_30 proc near
4044:1801 8B 1F mov bx,[bx]
4044:1803 8A 17 mov dl,[bx]
4044:1805 C3 retn
sub_30 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1834, 1840, 1846, 184E
;==========================================================================
4044:1806 sub_31 proc near
4044:1806 8B 1F mov bx,[bx]
4044:1808 8B 17 mov dx,[bx]
4044:180A C3 retn
sub_31 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:187F, 1899
;==========================================================================
4044:180B sub_32 proc near
4044:180B 8B 0E 03B6 mov cx,word ptr ds:[3B6h] ; (4044:03B6=0B0FFh)
4044:180F 0B C9 or cx,cx ; Zero ?
4044:1811 74 09 jz loc_209 ; Jump if zero
4044:1813 8E C1 mov es,cx
4044:1815 8B 0E 03B4 mov cx,word ptr ds:[3B4h] ; (4044:03B4=0FFB4h)
4044:1819 8E D9 mov ds,cx
4044:181B C3 retn
4044:181C loc_209: ; xref 4044:1811
4044:181C B1 1F mov cl,1Fh
4044:181E CD E0 int 0E0h ; ??INT Non-standard interrupt
4044:1820 26: 8B 0E 004E mov cx,es:data_458e ; (B0FF:004E=0)
4044:1825 89 0E 03B6 mov ds:data_461e,cx ; (FFB4:03B6=6FE9h)
4044:1829 51 push cx
4044:182A 8C C1 mov cx,es
4044:182C 89 0E 03B4 mov ds:data_460e,cx ; (FFB4:03B4=87FEh)
4044:1830 8E D9 mov ds,cx
4044:1832 07 pop es
4044:1833 C3 retn
sub_32 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1479, 1543
;==========================================================================
4044:1834 sub_33 proc near
4044:1834 E8 FFCF call sub_31 ; (1806)
4044:1837 89 16 03E5 mov word ptr ds:[3E5h],dx ; (4044:03E5=0EE8Bh)
4044:183B 8C 1E 03E3 mov word ptr ds:[3E3h],ds ; (4044:03E3=9800h)
4044:183F C3 retn
sub_33 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:165F
;==========================================================================
4044:1840 sub_34 proc near
4044:1840 E8 FFC3 call sub_31 ; (1806)
4044:1843 8B DA mov bx,dx
4044:1845 C3 retn
sub_34 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:146D, 1537
;==========================================================================
4044:1846 sub_35 proc near
4044:1846 E8 FFBD call sub_31 ; (1806)
4044:1849 89 16 03E1 mov word ptr ds:[3E1h],dx ; (4044:03E1=468Ah)
4044:184D C3 retn
sub_35 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:145D, 1527
;==========================================================================
4044:184E sub_36 proc near
4044:184E E8 FFB5 call sub_31 ; (1806)
4044:1851 89 16 03DF mov word ptr ds:[3DFh],dx ; (4044:03DF=249h)
4044:1855 C3 retn
sub_36 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:147C
;==========================================================================
4044:1856 sub_37 proc near
4044:1856 B8 000A mov ax,0Ah
4044:1859 E9 0003 jmpn loc_210 ; (185F)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1549
4044:185C sub_38:
4044:185C B8 000B mov ax,0Bh
4044:185F loc_210: ; xref 4044:1859
4044:185F 1E push ds
4044:1860 06 push es
4044:1861 8A 2E 03DD mov ch,byte ptr ds:[3DDh] ; (4044:03DD=8Bh)
4044:1865 8A 0E 03DE mov cl,byte ptr ds:[3DEh] ; (4044:03DE=2Eh)
4044:1869 51 push cx
4044:186A 8B 0E 03DF mov cx,word ptr ds:[3DFh] ; (4044:03DF=249h)
4044:186E 51 push cx
4044:186F 8B 0E 03E1 mov cx,word ptr ds:[3E1h] ; (4044:03E1=468Ah)
4044:1873 51 push cx
4044:1874 8B 0E 03E3 mov cx,word ptr ds:[3E3h] ; (4044:03E3=9800h)
4044:1878 51 push cx
4044:1879 8B 0E 03E5 mov cx,word ptr ds:[3E5h] ; (4044:03E5=0EE8Bh)
4044:187D 51 push cx
4044:187E 50 push ax
4044:187F E8 FF89 call sub_32 ; (180B)
4044:1882 58 pop ax
4044:1883 FF 1E 0028 call dword ptr ds:data_459e ; (FFB4:0028=7EFFh)
4044:1887 59 pop cx
4044:1888 59 pop cx
4044:1889 59 pop cx
4044:188A 59 pop cx
4044:188B 59 pop cx
4044:188C 07 pop es
4044:188D 1F pop ds
4044:188E C3 retn
sub_37 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:13CC, 15F6
;==========================================================================
4044:188F sub_39 proc near
4044:188F E8 FF6F call sub_30 ; (1801)
4044:1892 88 16 03DE mov byte ptr ds:[3DEh],dl ; (4044:03DE=2Eh)
4044:1896 06 push es
4044:1897 1E push ds
4044:1898 52 push dx
4044:1899 E8 FF6F call sub_32 ; (180B)
4044:189C 59 pop cx
4044:189D B8 0009 mov ax,9
4044:18A0 BA 0000 mov dx,0
4044:18A3 FF 1E 0028 call dword ptr ds:data_459e ; (FFB4:0028=7EFFh)
4044:18A7 07 pop es
4044:18A8 06 push es
4044:18A9 ,BF 03B8 mov di,3B8h ; (4044:03B8=1)
4044:18AC 8B F3 mov si,bx
4044:18AE C6 44 06 00 mov byte ptr [si+6],0
4044:18B2 B9 0014 mov cx,14h
4044:18B5 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
4044:18B7 ,BF 03CC mov di,3CCh ; (4044:03CC=1)
4044:18BA 26: 8B 36 03C0 mov si,word ptr es:[3C0h] ; (4044:03C0=1B1h)
4044:18BF B9 0011 mov cx,11h
4044:18C2 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
4044:18C4 1F pop ds
4044:18C5 07 pop es
4044:18C6 C7 06 03C0 03CC mov word ptr ds:[3C0h],3CCh ; (4044:03C0=1B1h)
4044:18CC BB 03B8 mov bx,3B8h
4044:18CF C3 retn
sub_39 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1940, 1953, 1967, 1993, 1A30
;==========================================================================
4044:18D0 sub_40 proc near
4044:18D0 8B 1F mov bx,[bx]
4044:18D2 8A 17 mov dl,[bx]
4044:18D4 C3 retn
sub_40 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:196F, 1977, 199B, 19A3, 19AB, 19B8, 19C0
; 19C8, 19D0, 19D8, 19EA, 1A14, 1A3B, 1A46
; 1A51, 1A5C, 1A67, 1A72, 1A7A, 1A82
;==========================================================================
4044:18D5 sub_41 proc near
4044:18D5 8B 1F mov bx,[bx]
4044:18D7 8B 17 mov dx,[bx]
4044:18D9 C3 retn
sub_41 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:18E2, 18EA
;==========================================================================
4044:18DA sub_42 proc near
4044:18DA 53 push bx
4044:18DB B1 0C mov cl,0Ch
4044:18DD E8 0590 call sub_64 ; (1E70)
4044:18E0 5B pop bx
4044:18E1 C3 retn
sub_42 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1A01, 1A09, 1A11, 1A1C, 1A23, 1A2D, 1A38
; 1A43, 1A4E, 1A59
;==========================================================================
4044:18E2 sub_43 proc near
4044:18E2 E8 FFF5 call sub_42 ; (18DA)
4044:18E5 3C 20 cmp al,20h ; ' '
4044:18E7 72 09 jb loc_211 ; Jump if below
4044:18E9 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1A64, 1A6F
4044:18EA sub_44:
4044:18EA E8 FFED call sub_42 ; (18DA)
4044:18ED 3C 22 cmp al,22h ; '"'
4044:18EF 72 01 jb loc_211 ; Jump if below
4044:18F1 C3 retn
4044:18F2 loc_211: ; xref 4044:18E7, 18EF
4044:18F2 BA 03E8 mov dx,3E8h
4044:18F5 B1 09 mov cl,9
4044:18F7 E8 0576 call sub_64 ; (1E70)
4044:18FA E9 0022 jmpn loc_212 ; (191F)
;* No entry point to code
4044:18FD 2E: 8B 1E 077B mov bx,word ptr cs:[77Bh] ; (4044:077B=0E4D0h)
4044:1902 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:190D
4044:1903 sub_45:
4044:1903 8B 1E 0006 mov bx,word ptr ds:[6] ; (4044:0006=4)
4044:1907 2E: 2B 1E 077B sub bx,word ptr cs:[77Bh] ; (4044:077B=0E4D0h)
4044:190C C3 retn
;* No entry point to code
4044:190D E8 FFF3 call sub_45 ; (1903)
4044:1910 D1 EB shr bx,1 ; Shift w/zeros fill
4044:1912 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:01AB
4044:1913 sub_46:
4044:1913 BB 005C mov bx,5Ch
4044:1916 C3 retn
;* No entry point to code
4044:1917 BB 006C mov bx,6Ch
4044:191A C3 retn
4044:191B BB 80 00 C3 db 0BBh, 80h, 00h,0C3h
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:02CD, 13E0
4044:191F sub_47:
4044:191F loc_212: ; xref 4044:18FA
4044:191F 32 C9 xor cl,cl ; Zero register
4044:1921 E9 054C jmp loc_264 ; (1E70)
sub_43 endp
;* No entry point to code
4044:1924 B1 01 mov cl,1
4044:1926 EB 06 jmp short loc_213 ; (192E)
;* No entry point to code
4044:1928 B1 02 mov cl,2
4044:192A EB 14 jmp short loc_214 ; (1940)
4044:192C B1 03 db 0B1h, 03h
4044:192E loc_213: ; xref 4044:1926, 1951
4044:192E ,E8 053F call sub_64 ; (1E70)
4044:1931 5B pop bx
4044:1932 8A E0 mov ah,al
4044:1934 50 push ax
4044:1935 44 inc sp
4044:1936 B0 01 mov al,1
4044:1938 FF E3 jmp bx ;*
;* No entry point to code
4044:193A B1 04 mov cl,4
4044:193C EB 02 jmp short loc_214 ; (1940)
4044:193E B1 05 db 0B1h, 05h
4044:1940 loc_214: ; xref 4044:192A, 193C
4044:1940 E8 FF8D call sub_40 ; (18D0)
4044:1943 E9 052A jmp loc_264 ; (1E70)
4044:1946 loc_215: ; xref 4044:194B
4044:1946 E8 0012 call sub_48 ; (195B)
4044:1949 84 C0 test al,al
4044:194B 74 F9 jz loc_215 ; Jump if zero
4044:194D B1 06 mov cl,6
4044:194F B2 FF mov dl,0FFh
4044:1951 EB DB jmp short loc_213 ; (192E)
;* No entry point to code
4044:1953 E8 FF7A call sub_40 ; (18D0)
4044:1956 B1 06 mov cl,6
4044:1958 E9 0515 jmp loc_264 ; (1E70)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1946
;==========================================================================
4044:195B sub_48 proc near
4044:195B B2 FE mov dl,0FEh
4044:195D B1 06 mov cl,6
4044:195F E9 050E jmp loc_264 ; (1E70)
sub_48 endp
;* No entry point to code
4044:1962 B1 07 mov cl,7
4044:1964 E9 0509 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1967 E8 FF66 call sub_40 ; (18D0)
4044:196A B1 08 mov cl,8
4044:196C E9 0501 jmp loc_264 ; (1E70)
;* No entry point to code
4044:196F E8 FF63 call sub_41 ; (18D5)
4044:1972 B1 09 mov cl,9
4044:1974 E9 04F9 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1977 E8 FF5B call sub_41 ; (18D5)
4044:197A B1 0A mov cl,0Ah
4044:197C E9 04F1 jmp loc_264 ; (1E70)
;* No entry point to code
4044:197F B1 0B mov cl,0Bh
4044:1981 E8 04EC call sub_64 ; (1E70)
4044:1984 04 FF add al,0FFh
4044:1986 1A C0 sbb al,al
4044:1988 C3 retn
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:016D
;==========================================================================
4044:1989 sub_49 proc near
4044:1989 B1 0C mov cl,0Ch
4044:198B E9 04E2 jmp loc_264 ; (1E70)
sub_49 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:13D3
;==========================================================================
4044:198E sub_50 proc near
4044:198E B1 0D mov cl,0Dh
4044:1990 E9 04DD jmp loc_264 ; (1E70)
sub_50 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:13D9, 15EC
;==========================================================================
4044:1993 sub_51 proc near
4044:1993 E8 FF3A call sub_40 ; (18D0)
4044:1996 B1 0E mov cl,0Eh
4044:1998 E9 04D5 jmp loc_264 ; (1E70)
sub_51 endp
;* No entry point to code
4044:199B E8 FF37 call sub_41 ; (18D5)
4044:199E B1 0F mov cl,0Fh
4044:19A0 E9 04CD jmp loc_264 ; (1E70)
;* No entry point to code
4044:19A3 E8 FF2F call sub_41 ; (18D5)
4044:19A6 B1 10 mov cl,10h
4044:19A8 E9 04C5 jmp loc_264 ; (1E70)
;* No entry point to code
4044:19AB E8 FF27 call sub_41 ; (18D5)
4044:19AE B1 11 mov cl,11h
4044:19B0 E9 04BD jmp loc_264 ; (1E70)
;* No entry point to code
4044:19B3 B1 12 mov cl,12h
4044:19B5 E9 04B8 jmp loc_264 ; (1E70)
;* No entry point to code
4044:19B8 E8 FF1A call sub_41 ; (18D5)
4044:19BB B1 13 mov cl,13h
4044:19BD E9 04B0 jmp loc_264 ; (1E70)
;* No entry point to code
4044:19C0 E8 FF12 call sub_41 ; (18D5)
4044:19C3 B1 14 mov cl,14h
4044:19C5 E9 04A8 jmp loc_264 ; (1E70)
;* No entry point to code
4044:19C8 E8 FF0A call sub_41 ; (18D5)
4044:19CB B1 15 mov cl,15h
4044:19CD E9 04A0 jmp loc_264 ; (1E70)
;* No entry point to code
4044:19D0 E8 FF02 call sub_41 ; (18D5)
4044:19D3 B1 16 mov cl,16h
4044:19D5 E9 0498 jmp loc_264 ; (1E70)
;* No entry point to code
4044:19D8 E8 FEFA call sub_41 ; (18D5)
4044:19DB B1 17 mov cl,17h
4044:19DD E9 0490 jmp loc_264 ; (1E70)
4044:19E0 B1 18 E9 8B 04 db 0B1h, 18h,0E9h, 8Bh, 04h
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0226, 15DD
;==========================================================================
4044:19E5 sub_52 proc near
4044:19E5 B1 19 mov cl,19h
4044:19E7 E9 0486 jmp loc_264 ; (1E70)
sub_52 endp
;* No entry point to code
4044:19EA E8 FEE8 call sub_41 ; (18D5)
4044:19ED B1 1A mov cl,1Ah
4044:19EF E9 047E jmp loc_264 ; (1E70)
4044:19F2 B1 1B db 0B1h, 1Bh
4044:19F4 loc_216: ; xref 4044:1A21
4044:19F4 ,06 push es
4044:19F5 FF 37 push word ptr [bx]
4044:19F7 CD E0 int 0E0h ; ??INT Non-standard interrupt
4044:19F9 5E pop si
4044:19FA 89 1C mov [si],bx
4044:19FC 8C 44 02 mov [si+2],es
4044:19FF 07 pop es
4044:1A00 C3 retn
;* No entry point to code
4044:1A01 E8 FEDE call sub_43 ; (18E2)
4044:1A04 B1 1C mov cl,1Ch
4044:1A06 E9 0467 jmp loc_264 ; (1E70)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:02D0
;==========================================================================
4044:1A09 sub_53 proc near
4044:1A09 E8 FED6 call sub_43 ; (18E2)
4044:1A0C B1 1D mov cl,1Dh
4044:1A0E E9 045F jmp loc_264 ; (1E70)
sub_53 endp
;* No entry point to code
4044:1A11 E8 FECE call sub_43 ; (18E2)
4044:1A14 E8 FEBE call sub_41 ; (18D5)
4044:1A17 B1 1E mov cl,1Eh
4044:1A19 E9 0454 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A1C E8 FEC3 call sub_43 ; (18E2)
4044:1A1F B1 1F mov cl,1Fh
4044:1A21 EB D1 jmp short loc_216 ; (19F4)
;* No entry point to code
4044:1A23 E8 FEBC call sub_43 ; (18E2)
4044:1A26 B2 FF mov dl,0FFh
4044:1A28 B1 20 mov cl,20h ; ' '
4044:1A2A E9 0443 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A2D E8 FEB2 call sub_43 ; (18E2)
4044:1A30 E8 FE9D call sub_40 ; (18D0)
4044:1A33 B1 20 mov cl,20h ; ' '
4044:1A35 E9 0438 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A38 E8 FEA7 call sub_43 ; (18E2)
4044:1A3B E8 FE97 call sub_41 ; (18D5)
4044:1A3E B1 21 mov cl,21h ; '!'
4044:1A40 E9 042D jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A43 E8 FE9C call sub_43 ; (18E2)
4044:1A46 E8 FE8C call sub_41 ; (18D5)
4044:1A49 B1 22 mov cl,22h ; '"'
4044:1A4B E9 0422 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A4E E8 FE91 call sub_43 ; (18E2)
4044:1A51 E8 FE81 call sub_41 ; (18D5)
4044:1A54 B1 23 mov cl,23h ; '#'
4044:1A56 E9 0417 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A59 E8 FE86 call sub_43 ; (18E2)
4044:1A5C E8 FE76 call sub_41 ; (18D5)
4044:1A5F B1 24 mov cl,24h ; '$'
4044:1A61 E9 040C jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A64 E8 FE83 call sub_44 ; (18EA)
4044:1A67 E8 FE6B call sub_41 ; (18D5)
4044:1A6A B1 25 mov cl,25h ; '%'
4044:1A6C E9 0401 jmp loc_264 ; (1E70)
;* No entry point to code
4044:1A6F E8 FE78 call sub_44 ; (18EA)
4044:1A72 E8 FE60 call sub_41 ; (18D5)
4044:1A75 B1 28 mov cl,28h ; '('
4044:1A77 E9 03F6 jmp loc_264 ; (1E70)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1423
;==========================================================================
4044:1A7A sub_54 proc near
4044:1A7A E8 FE58 call sub_41 ; (18D5)
4044:1A7D B1 31 mov cl,31h ; '1'
4044:1A7F E9 03EE jmp loc_264 ; (1E70)
sub_54 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1404
;==========================================================================
4044:1A82 sub_55 proc near
4044:1A82 E8 FE50 call sub_41 ; (18D5)
4044:1A85 B1 3C mov cl,3Ch ; '<'
4044:1A87 E9 03E6 jmp loc_264 ; (1E70)
sub_55 endp
;* No entry point to code
4044:1A8A 8B 77 02 mov si,[bx+2]
4044:1A8D FF 74 02 push word ptr [si+2]
4044:1A90 FF 34 push word ptr [si]
4044:1A92 8B 7F 04 mov di,[bx+4]
4044:1A95 1E push ds
4044:1A96 EB 14 jmp short loc_218 ; (1AAC)
;* No entry point to code
4044:1A98 8B 77 02 mov si,[bx+2]
4044:1A9B 1E push ds
4044:1A9C EB 06 jmp short loc_217 ; (1AA4)
;* No entry point to code
4044:1A9E 8B 77 02 mov si,[bx+2]
4044:1AA1 FF 74 02 push word ptr [si+2]
4044:1AA4 loc_217: ; xref 4044:1A9C
4044:1AA4 FF 34 push word ptr [si]
4044:1AA6 8B 7F 04 mov di,[bx+4]
4044:1AA9 FF 75 02 push word ptr [di+2]
4044:1AAC loc_218: ; xref 4044:1A96
4044:1AAC 8B 05 mov ax,[di]
4044:1AAE B9 0010 mov cx,10h
4044:1AB1 33 D2 xor dx,dx ; Zero register
4044:1AB3 F7 F1 div cx ; ax,dx rem=dx:ax/reg
4044:1AB5 8B FA mov di,dx
4044:1AB7 5D pop bp
4044:1AB8 03 E8 add bp,ax
4044:1ABA 58 pop ax
4044:1ABB 33 D2 xor dx,dx ; Zero register
4044:1ABD F7 F1 div cx ; ax,dx rem=dx:ax/reg
4044:1ABF 8B F2 mov si,dx
4044:1AC1 5A pop dx
4044:1AC2 06 push es
4044:1AC3 95 xchg bp,ax
4044:1AC4 8E C0 mov es,ax
4044:1AC6 8B 1F mov bx,[bx]
4044:1AC8 8B 0F mov cx,[bx]
4044:1ACA 1E push ds
4044:1ACB 33 DB xor bx,bx ; Zero register
4044:1ACD 03 D5 add dx,bp
4044:1ACF 8E DA mov ds,dx
4044:1AD1 3B D0 cmp dx,ax
4044:1AD3 75 02 jne loc_219 ; Jump if not equal
4044:1AD5 3B F7 cmp si,di
4044:1AD7 loc_219: ; xref 4044:1AD3
4044:1AD7 73 08 jae loc_220 ; Jump if above or =
4044:1AD9 FD std ; Set direction flag
4044:1ADA 03 F1 add si,cx
4044:1ADC 4E dec si
4044:1ADD 03 F9 add di,cx
4044:1ADF 4F dec di
4044:1AE0 43 inc bx
4044:1AE1 loc_220: ; xref 4044:1AD7
4044:1AE1 D1 E9 shr cx,1 ; Shift w/zeros fill
4044:1AE3 73 01 jnc loc_221 ; Jump if carry=0
4044:1AE5 A4 movsb ; Mov [si] to es:[di]
4044:1AE6 loc_221: ; xref 4044:1AE3
4044:1AE6 2B F3 sub si,bx
4044:1AE8 2B FB sub di,bx
4044:1AEA F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
4044:1AEC FC cld ; Clear direction
4044:1AED 1F pop ds
4044:1AEE 07 pop es
4044:1AEF C3 retn
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0154, 0162, 01EB, 01F9, 022F, 024E, 0279
; 036E, 0926, 0934, 0E91, 0EA5, 0ED6, 0EE4
; 1062
;==========================================================================
4044:1AF0 sub_56 proc near
4044:1AF0 33 C0 xor ax,ax ; Zero register
4044:1AF2 8B 1F mov bx,[bx]
4044:1AF4 8A 07 mov al,[bx]
4044:1AF6 D0 E0 shl al,1 ; Shift w/zeros fill
4044:1AF8 ,BB 040E mov bx,40Eh ; (4044:040E=8Dh)
4044:1AFB 03 D8 add bx,ax
4044:1AFD 8B 17 mov dx,[bx]
4044:1AFF 3C 0A cmp al,0Ah
4044:1B01 74 09 je loc_222 ; Jump if equal
4044:1B03 3C 0C cmp al,0Ch
4044:1B05 74 05 je loc_222 ; Jump if equal
4044:1B07 B9 0009 mov cx,9
4044:1B0A CD E0 int 0E0h ; ??INT Non-standard interrupt
4044:1B0C loc_222: ; xref 4044:1B01, 1B05
4044:1B0C 5B pop bx
4044:1B0D 8B F2 mov si,dx
4044:1B0F 8A 24 mov ah,[si]
4044:1B11 8A C4 mov al,ah
4044:1B13 50 push ax
4044:1B14 44 inc sp
4044:1B15 B0 01 mov al,1
4044:1B17 FF E3 jmp bx ;*
;* No entry point to code
4044:1B19 9F lahf ; Load ah from flags
4044:1B1A 86 C4 xchg al,ah
4044:1B1C 50 push ax
4044:1B1D 86 C4 xchg al,ah
4044:1B1F 53 push bx
4044:1B20 BB 0008 mov bx,8
4044:1B23 9F lahf ; Load ah from flags
4044:1B24 03 D9 add bx,cx
4044:1B26 D1 DE rcr si,1 ; Rotate thru carry
4044:1B28 9E sahf ; Store ah into flags
4044:1B29 D1 D6 rcl si,1 ; Rotate thru carry
4044:1B2B 52 push dx
4044:1B2C 51 push cx
4044:1B2D E8 1360 call sub_122 ; (2E90)
4044:1B30 87 DA xchg bx,dx
4044:1B32 8B 1E 077D mov bx,word ptr ds:[77Dh] ; (4044:077D=0C422h)
4044:1B36 87 DA xchg bx,dx
4044:1B38 89 1E 077D mov word ptr ds:[77Dh],bx ; (4044:077D=0C422h)
4044:1B3C 88 17 mov [bx],dl
4044:1B3E 43 inc bx
4044:1B3F 88 37 mov [bx],dh
4044:1B41 43 inc bx
4044:1B42 87 DA xchg bx,dx
4044:1B44 ,BB 000A mov bx,offset data_9 ; (4044:000A=0D8h)
4044:1B47 03 DC add bx,sp
4044:1B49 87 DA xchg bx,dx
4044:1B4B 88 17 mov [bx],dl
4044:1B4D 43 inc bx
4044:1B4E 88 37 mov [bx],dh
4044:1B50 43 inc bx
4044:1B51 59 pop cx
4044:1B52 5A pop dx
4044:1B53 88 17 mov [bx],dl
4044:1B55 43 inc bx
4044:1B56 88 37 mov [bx],dh
4044:1B58 43 inc bx
4044:1B59 88 0F mov [bx],cl
4044:1B5B 43 inc bx
4044:1B5C 88 2F mov [bx],ch
4044:1B5E loc_223: ; xref 4044:1B6D
4044:1B5E ,8A C5 mov al,ch
4044:1B60 0A C1 or al,cl
4044:1B62 74 0B jz loc_224 ; Jump if zero
4044:1B64 49 dec cx
4044:1B65 8B F2 mov si,dx
4044:1B67 8A 04 mov al,[si]
4044:1B69 42 inc dx
4044:1B6A 43 inc bx
4044:1B6B 88 07 mov [bx],al
4044:1B6D EB EF jmp short loc_223 ; (1B5E)
4044:1B6F loc_224: ; xref 4044:1B62
4044:1B6F 5B pop bx
4044:1B70 58 pop ax
4044:1B71 86 C4 xchg al,ah
4044:1B73 9E sahf ; Store ah into flags
4044:1B74 C3 retn
sub_56 endp
;* No entry point to code
4044:1B75 53 push bx
4044:1B76 9F lahf ; Load ah from flags
4044:1B77 86 C4 xchg al,ah
4044:1B79 50 push ax
4044:1B7A 8B 1E 077D mov bx,word ptr ds:[77Dh] ; (4044:077D=0C422h)
4044:1B7E 8A C7 mov al,bh
4044:1B80 0A C3 or al,bl
4044:1B82 74 31 jz loc_227 ; Jump if zero
4044:1B84 53 push bx
4044:1B85 8A 17 mov dl,[bx]
4044:1B87 43 inc bx
4044:1B88 8A 37 mov dh,[bx]
4044:1B8A 87 DA xchg bx,dx
4044:1B8C 89 1E 077D mov word ptr ds:[77Dh],bx ; (4044:077D=0C422h)
4044:1B90 87 DA xchg bx,dx
4044:1B92 43 inc bx
4044:1B93 43 inc bx
4044:1B94 43 inc bx
4044:1B95 8A 17 mov dl,[bx]
4044:1B97 43 inc bx
4044:1B98 8A 37 mov dh,[bx]
4044:1B9A 43 inc bx
4044:1B9B 8A 0F mov cl,[bx]
4044:1B9D 43 inc bx
4044:1B9E 8A 2F mov ch,[bx]
4044:1BA0 loc_225: ; xref 4044:1BAF
4044:1BA0 ,8A C5 mov al,ch
4044:1BA2 0A C1 or al,cl
4044:1BA4 74 0B jz loc_226 ; Jump if zero
4044:1BA6 49 dec cx
4044:1BA7 43 inc bx
4044:1BA8 8A 07 mov al,[bx]
4044:1BAA 8B F2 mov si,dx
4044:1BAC 88 04 mov [si],al
4044:1BAE 42 inc dx
4044:1BAF EB EF jmp short loc_225 ; (1BA0)
4044:1BB1 loc_226: ; xref 4044:1BA4
4044:1BB1 5B pop bx
4044:1BB2 E8 138B call sub_123 ; (2F40)
4044:1BB5 loc_227: ; xref 4044:1B82
4044:1BB5 58 pop ax
4044:1BB6 86 C4 xchg al,ah
4044:1BB8 9E sahf ; Store ah into flags
4044:1BB9 5B pop bx
4044:1BBA C3 retn
4044:1BBB loc_228: ; xref 4044:1BEC
4044:1BBB ,8B 1E 077D mov bx,word ptr ds:[77Dh] ; (4044:077D=0C422h)
4044:1BBF 8A C7 mov al,bh
4044:1BC1 0A C3 or al,bl
4044:1BC3 74 29 jz loc_229 ; Jump if zero
4044:1BC5 53 push bx
4044:1BC6 8A 17 mov dl,[bx]
4044:1BC8 43 inc bx
4044:1BC9 8A 37 mov dh,[bx]
4044:1BCB 43 inc bx
4044:1BCC 8A 0F mov cl,[bx]
4044:1BCE 43 inc bx
4044:1BCF 8A 2F mov ch,[bx]
4044:1BD1 BB 0004 mov bx,4
4044:1BD4 03 DC add bx,sp
4044:1BD6 8A C1 mov al,cl
4044:1BD8 2A C3 sub al,bl
4044:1BDA 8A C5 mov al,ch
4044:1BDC 1A C7 sbb al,bh
4044:1BDE 5B pop bx
4044:1BDF 73 0D jnc loc_229 ; Jump if carry=0
4044:1BE1 87 DA xchg bx,dx
4044:1BE3 89 1E 077D mov word ptr ds:[77Dh],bx ; (4044:077D=0C422h)
4044:1BE7 87 DA xchg bx,dx
4044:1BE9 E8 1354 call sub_123 ; (2F40)
4044:1BEC EB CD jmp short loc_228 ; (1BBB)
4044:1BEE loc_229: ; xref 4044:1BC3, 1BDF, 1C0D
4044:1BEE ,A0 3CBA mov al,byte ptr ds:[3CBAh] ; (4044:3CBA=0E8h)
4044:1BF1 0A C0 or al,al ; Zero ?
4044:1BF3 74 1A jz loc_230 ; Jump if zero
4044:1BF5 BB 0002 mov bx,2
4044:1BF8 03 DC add bx,sp
4044:1BFA 87 DA xchg bx,dx
4044:1BFC ,BB 3CDB mov bx,3CDBh ; (4044:3CDB=0Ah)
4044:1BFF 8A C2 mov al,dl
4044:1C01 2A 07 sub al,[bx]
4044:1C03 8A C6 mov al,dh
4044:1C05 43 inc bx
4044:1C06 1A 07 sbb al,[bx]
4044:1C08 72 05 jc loc_230 ; Jump if carry Set
4044:1C0A E8 0035 call sub_57 ; (1C42)
4044:1C0D EB DF jmp short loc_229 ; (1BEE)
4044:1C0F loc_230: ; xref 4044:1BF3, 1C08
4044:1C0F BB 0001 mov bx,1
4044:1C12 EB 03 jmp short loc_231 ; (1C17)
4044:1C14 BB 02 00 db 0BBh, 02h, 00h
4044:1C17 loc_231: ; xref 4044:1C12
4044:1C17 03 DC add bx,sp
4044:1C19 87 DA xchg bx,dx
4044:1C1B loc_232: ; xref 4044:1C40
4044:1C1B ,A0 3C96 mov al,byte ptr ds:[3C96h] ; (4044:3C96=74h)
4044:1C1E 0A C0 or al,al ; Zero ?
4044:1C20 75 01 jnz loc_233 ; Jump if not zero
4044:1C22 C3 retn
4044:1C23 loc_233: ; xref 4044:1C20
4044:1C23 8A C8 mov cl,al
4044:1C25 B5 00 mov ch,0
4044:1C27 ,BB 3C97 mov bx,3C97h ; (4044:3C97=1)
4044:1C2A 49 dec cx
4044:1C2B 03 D9 add bx,cx
4044:1C2D 03 D9 add bx,cx
4044:1C2F 8A C2 mov al,dl
4044:1C31 2A 07 sub al,[bx]
4044:1C33 43 inc bx
4044:1C34 8A C6 mov al,dh
4044:1C36 1A 07 sbb al,[bx]
4044:1C38 73 01 jnc loc_234 ; Jump if carry=0
4044:1C3A C3 retn
4044:1C3B loc_234: ; xref 4044:1C38
4044:1C3B ,BB 3C96 mov bx,3C96h ; (4044:3C96=74h)
4044:1C3E FE 0F dec byte ptr [bx]
4044:1C40 EB D9 jmp short loc_232 ; (1C1B)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0248, 0273, 029A, 0368, 03A2, 0920, 0E8B
; 0ECA, 0F05, 105C, 1083, 14B0, 14EA, 157B
; 15B5, 1C0A, 30AA
;==========================================================================
4044:1C42 sub_57 proc near
4044:1C42 ,BB 3CBA mov bx,3CBAh ; (4044:3CBA=0E8h)
4044:1C45 8A 07 mov al,[bx]
4044:1C47 0A C0 or al,al ; Zero ?
4044:1C49 75 01 jnz loc_235 ; Jump if not zero
4044:1C4B C3 retn
4044:1C4C loc_235: ; xref 4044:1C49
4044:1C4C 53 push bx
4044:1C4D E8 006E call sub_59 ; (1CBE)
4044:1C50 5B pop bx
4044:1C51 FE 0F dec byte ptr [bx]
sub_57 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3E71
;==========================================================================
4044:1C53 sub_58 proc near
4044:1C53 A0 3CBA mov al,byte ptr ds:[3CBAh] ; (4044:3CBA=0E8h)
4044:1C56 0A C0 or al,al ; Zero ?
4044:1C58 75 01 jnz loc_236 ; Jump if not zero
4044:1C5A C3 retn
4044:1C5B loc_236: ; xref 4044:1C58
4044:1C5B 8A D0 mov dl,al
4044:1C5D B6 00 mov dh,0
4044:1C5F 4A dec dx
4044:1C60 ,BB 3CBB mov bx,3CBBh ; (4044:3CBB=76h)
4044:1C63 03 DA add bx,dx
4044:1C65 03 DA add bx,dx
4044:1C67 8A 17 mov dl,[bx]
4044:1C69 43 inc bx
4044:1C6A 8A 37 mov dh,[bx]
4044:1C6C 87 DA xchg bx,dx
4044:1C6E 89 1E 3CB8 mov word ptr ds:[3CB8h],bx ; (4044:3CB8=3Ch)
4044:1C72 BA 3CCC mov dx,3CCCh
4044:1C75 B1 2E mov cl,2Eh ; '.'
4044:1C77 loc_237: ; xref 4044:1C81
4044:1C77 8A 07 mov al,[bx]
4044:1C79 8B F2 mov si,dx
4044:1C7B 88 04 mov [si],al
4044:1C7D 43 inc bx
4044:1C7E 42 inc dx
4044:1C7F FE C9 dec cl
4044:1C81 75 F4 jnz loc_237 ; Jump if not zero
4044:1C83 8B 1E 3CE9 mov bx,word ptr ds:[3CE9h] ; (4044:3CE9=0A2FCh)
4044:1C87 D1 E3 shl bx,1 ; Shift w/zeros fill
4044:1C89 D1 E3 shl bx,1 ; Shift w/zeros fill
4044:1C8B D1 E3 shl bx,1 ; Shift w/zeros fill
4044:1C8D D1 E3 shl bx,1 ; Shift w/zeros fill
4044:1C8F D1 E3 shl bx,1 ; Shift w/zeros fill
4044:1C91 BA 3CFC mov dx,3CFCh
4044:1C94 B1 09 mov cl,9
4044:1C96 loc_238: ; xref 4044:1CA1
4044:1C96 D1 E3 shl bx,1 ; Shift w/zeros fill
4044:1C98 8A C7 mov al,bh
4044:1C9A 8B F2 mov si,dx
4044:1C9C 88 04 mov [si],al
4044:1C9E 42 inc dx
4044:1C9F FE C9 dec cl
4044:1CA1 75 F3 jnz loc_238 ; Jump if not zero
4044:1CA3 8B 1E 3CCC mov bx,word ptr ds:[3CCCh] ; (4044:3CCC=0C301h)
4044:1CA7 8A C7 mov al,bh
4044:1CA9 0A C0 or al,al ; Zero ?
4044:1CAB 74 01 jz loc_239 ; Jump if zero
4044:1CAD C3 retn
4044:1CAE loc_239: ; xref 4044:1CAB
4044:1CAE 8A C3 mov al,bl
4044:1CB0 3C 03 cmp al,3
4044:1CB2 72 01 jb loc_240 ; Jump if below
4044:1CB4 C3 retn
4044:1CB5 loc_240: ; xref 4044:1CB2
4044:1CB5 8B 1E 3CFA mov bx,word ptr ds:[3CFAh] ; (4044:3CFA=368Bh)
4044:1CB9 89 1E 3CD0 mov word ptr ds:[3CD0h],bx ; (4044:3CD0=0F600h)
4044:1CBD C3 retn
sub_58 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1C4D, 3E22
;==========================================================================
4044:1CBE sub_59 proc near
4044:1CBE A0 3CBA mov al,byte ptr ds:[3CBAh] ; (4044:3CBA=0E8h)
4044:1CC1 0A C0 or al,al ; Zero ?
4044:1CC3 75 01 jnz loc_241 ; Jump if not zero
4044:1CC5 C3 retn
4044:1CC6 loc_241: ; xref 4044:1CC3
4044:1CC6 8B 1E 3CB8 mov bx,word ptr ds:[3CB8h] ; (4044:3CB8=3Ch)
4044:1CCA BA 3CCC mov dx,3CCCh
4044:1CCD B1 1F mov cl,1Fh
4044:1CCF loc_242: ; xref 4044:1CDD
4044:1CCF 8B F2 mov si,dx
4044:1CD1 8A 04 mov al,[si]
4044:1CD3 88 07 mov [bx],al
4044:1CD5 9F lahf ; Load ah from flags
4044:1CD6 42 inc dx
4044:1CD7 9E sahf ; Store ah into flags
4044:1CD8 9F lahf ; Load ah from flags
4044:1CD9 43 inc bx
4044:1CDA 9E sahf ; Store ah into flags
4044:1CDB FE C9 dec cl
4044:1CDD 75 F0 jnz loc_242 ; Jump if not zero
4044:1CDF C3 retn
sub_59 endp
;==========================================================================
; SUBROUTINE
;==========================================================================
4044:1CE0 sub_60 proc near
4044:1CE0 B0 01 mov al,1
4044:1CE2 2E: 86 06 1CDF xchg byte ptr cs:[1CDFh],al ; (4044:1CDF=0C3h)
4044:1CE7 0A C0 or al,al ; Zero ?
4044:1CE9 75 73 jnz loc_ret_245 ; Jump if not zero
4044:1CEB FC cld ; Clear direction
4044:1CEC 2B C0 sub ax,ax
4044:1CEE A3 0779 mov word ptr ds:[779h],ax ; (4044:0779=27Ch)
4044:1CF1 A3 0777 mov word ptr ds:[777h],ax ; (4044:0777=80B4h)
4044:1CF4 A3 077D mov word ptr ds:[77Dh],ax ; (4044:077D=0C422h)
4044:1CF7 A2 3C96 mov byte ptr ds:[3C96h],al ; (4044:3C96=74h)
4044:1CFA A2 3CBA mov byte ptr ds:[3CBAh],al ; (4044:3CBA=0E8h)
4044:1CFD 1E push ds
4044:1CFE 2B DB sub bx,bx
4044:1D00 8E DB mov ds,bx
4044:1D02 C7 07 1DF5 mov word ptr [bx],1DF5h
4044:1D06 8C 4F 02 mov [bx+2],cs
4044:1D09 1F pop ds
4044:1D0A 59 pop cx
4044:1D0B A1 0782 mov ax,word ptr ds:[782h] ; (4044:0782=0BB08h)
4044:1D0E 05 0400 add ax,400h
4044:1D11 72 23 jc loc_243 ; Jump if carry Set
4044:1D13 A3 0775 mov word ptr ds:[775h],ax ; (4044:0775=203Ch)
4044:1D16 8C DB mov bx,ds
4044:1D18 8E D3 mov ss,bx
4044:1D1A 8B E0 mov sp,ax
4044:1D1C 8E C3 mov es,bx
4044:1D1E BA 1DCE mov dx,1DCEh
4044:1D21 52 push dx
4044:1D22 51 push cx
4044:1D23 40 inc ax
4044:1D24 24 FE and al,0FEh
4044:1D26 A3 077B mov word ptr ds:[77Bh],ax ; (4044:077B=0E4D0h)
4044:1D29 8B 1E 0006 mov bx,word ptr ds:[6] ; (4044:0006=4)
4044:1D2D 2B D8 sub bx,ax
4044:1D2F 76 05 jbe loc_243 ; Jump if below or =
4044:1D31 83 FB 08 cmp bx,8
4044:1D34 73 06 jae loc_244 ; Jump if above or =
4044:1D36 loc_243: ; xref 4044:1D11, 1D2F
4044:1D36 BA 073A mov dx,73Ah
4044:1D39 E9 012A jmp loc_263 ; (1E66)
4044:1D3C loc_244: ; xref 4044:1D34
4044:1D3C 8B 1E 0006 mov bx,word ptr ds:[6] ; (4044:0006=4)
4044:1D40 83 EB 04 sub bx,4
4044:1D43 89 07 mov [bx],ax
4044:1D45 FE 07 inc byte ptr [bx]
4044:1D47 C7 47 02 0000 mov word ptr [bx+2],0
4044:1D4C 93 xchg bx,ax
4044:1D4D C7 07 0000 mov word ptr [bx],0
4044:1D51 89 47 02 mov [bx+2],ax
4044:1D54 B1 19 mov cl,19h
4044:1D56 E8 0117 call sub_64 ; (1E70)
4044:1D59 FE C0 inc al
4044:1D5B A2 077F mov byte ptr ds:[77Fh],al ; (4044:077F=3Ch)
4044:1D5E loc_ret_245: ; xref 4044:1CE9
4044:1D5E C3 retn
4044:1D5F 00 db 0
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:4437
4044:1D60 sub_61:
4044:1D60 53 push bx
4044:1D61 4B dec bx
4044:1D62 4B dec bx
4044:1D63 8B 16 0779 mov dx,word ptr ds:[779h] ; (4044:0779=27Ch)
4044:1D67 89 17 mov [bx],dx
4044:1D69 5B pop bx
4044:1D6A 89 1E 0779 mov word ptr ds:[779h],bx ; (4044:0779=27Ch)
4044:1D6E 8B 1E 0777 mov bx,word ptr ds:[777h] ; (4044:0777=80B4h)
4044:1D72 43 inc bx
4044:1D73 89 1E 0777 mov word ptr ds:[777h],bx ; (4044:0777=80B4h)
4044:1D77 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1E59, 4626
4044:1D78 sub_62:
4044:1D78 87 DA xchg bx,dx
4044:1D7A 8B 1E 0777 mov bx,word ptr ds:[777h] ; (4044:0777=80B4h)
4044:1D7E 8A EF mov ch,bh
4044:1D80 8A CB mov cl,bl
4044:1D82 ,BB 0779 mov bx,779h ; (4044:0779=7Ch)
4044:1D85 loc_246: ; xref 4044:1E4B
4044:1D85 ,85 C9 test cx,cx
4044:1D87 75 01 jnz loc_247 ; Jump if not zero
4044:1D89 C3 retn
4044:1D8A loc_247: ; xref 4044:1D87
4044:1D8A 8A 07 mov al,[bx]
4044:1D8C 3A C2 cmp al,dl
4044:1D8E 74 03 je loc_248 ; Jump if equal
4044:1D90 E9 00AE jmp loc_260 ; (1E41)
4044:1D93 loc_248: ; xref 4044:1D8E
4044:1D93 43 inc bx
4044:1D94 0A 07 or al,[bx]
4044:1D96 75 01 jnz loc_249 ; Jump if not zero
4044:1D98 C3 retn
4044:1D99 loc_249: ; xref 4044:1D96
4044:1D99 8A 07 mov al,[bx]
4044:1D9B 4B dec bx
4044:1D9C 3A C6 cmp al,dh
4044:1D9E 74 03 je loc_250 ; Jump if equal
4044:1DA0 E9 009E jmp loc_260 ; (1E41)
4044:1DA3 loc_250: ; xref 4044:1D9E
4044:1DA3 87 DA xchg bx,dx
4044:1DA5 53 push bx
4044:1DA6 4B dec bx
4044:1DA7 4B dec bx
4044:1DA8 8B 0F mov cx,[bx]
4044:1DAA 5B pop bx
4044:1DAB 87 DA xchg bx,dx
4044:1DAD 89 0F mov [bx],cx
4044:1DAF 8B 1E 0777 mov bx,word ptr ds:[777h] ; (4044:0777=80B4h)
4044:1DB3 4B dec bx
4044:1DB4 89 1E 0777 mov word ptr ds:[777h],bx ; (4044:0777=80B4h)
4044:1DB8 8B F2 mov si,dx
4044:1DBA 8A 04 mov al,[si]
4044:1DBC 0A C0 or al,al ; Zero ?
4044:1DBE 75 03 jnz loc_251 ; Jump if not zero
4044:1DC0 E9 0076 jmpn loc_258 ; (1E39)
4044:1DC3 loc_251: ; xref 4044:1DBE
4044:1DC3 3C 03 cmp al,3
4044:1DC5 72 03 jb loc_252 ; Jump if below
4044:1DC7 E9 0074 jmpn loc_259 ; (1E3E)
4044:1DCA loc_252: ; xref 4044:1DC5
4044:1DCA B9 0000 mov cx,0
4044:1DCD FE C8 dec al
4044:1DCF 75 16 jnz loc_253 ; Jump if not zero
4044:1DD1 ,BB 002B mov bx,offset data_24 ; (4044:002B=0)
4044:1DD4 03 DA add bx,dx
4044:1DD6 8A 07 mov al,[bx]
4044:1DD8 24 7F and al,7Fh
4044:1DDA 8A C8 mov cl,al
4044:1DDC 8A 07 mov al,[bx]
4044:1DDE D0 D0 rcl al,1 ; Rotate thru carry
4044:1DE0 43 inc bx
4044:1DE1 8A 07 mov al,[bx]
4044:1DE3 D0 D0 rcl al,1 ; Rotate thru carry
4044:1DE5 8A E8 mov ch,al
4044:1DE7 loc_253: ; xref 4044:1DCF
4044:1DE7 BB 002F mov bx,2Fh
4044:1DEA 03 DA add bx,dx
4044:1DEC 42 inc dx
4044:1DED loc_254: ; xref 4044:1E31
4044:1DED ,8A C5 mov al,ch
4044:1DEF 0A C0 or al,al ; Zero ?
4044:1DF1 75 1A jnz loc_256 ; Jump if not zero
4044:1DF3 8A C1 mov al,cl
4044:1DF5 0A C0 or al,al ; Zero ?
4044:1DF7 74 3B jz loc_257 ; Jump if zero
4044:1DF9 53 push bx
4044:1DFA 03 D9 add bx,cx
4044:1DFC B0 80 mov al,80h
4044:1DFE 2A C1 sub al,cl
4044:1E00 8A C8 mov cl,al
4044:1E02 loc_255: ; xref 4044:1E08
4044:1E02 C6 07 1A mov byte ptr [bx],1Ah
4044:1E05 43 inc bx
4044:1E06 FE C9 dec cl
4044:1E08 75 F8 jnz loc_255 ; Jump if not zero
4044:1E0A 5B pop bx
4044:1E0B FE C5 inc ch
4044:1E0D loc_256: ; xref 4044:1DF1
4044:1E0D FE CD dec ch
4044:1E0F 51 push cx
4044:1E10 53 push bx
4044:1E11 B9 0080 mov cx,80h
4044:1E14 03 D9 add bx,cx
4044:1E16 8B EC mov bp,sp
4044:1E18 87 5E 00 xchg [bp],bx
4044:1E1B 52 push dx
4044:1E1C 87 DA xchg bx,dx
4044:1E1E B1 1A mov cl,1Ah
4044:1E20 E8 004D call sub_64 ; (1E70)
4044:1E23 5A pop dx
4044:1E24 52 push dx
4044:1E25 B1 15 mov cl,15h
4044:1E27 E8 0046 call sub_64 ; (1E70)
4044:1E2A 5A pop dx
4044:1E2B 5B pop bx
4044:1E2C 59 pop cx
4044:1E2D 0A C0 or al,al ; Zero ?
4044:1E2F 75 03 jnz loc_257 ; Jump if not zero
4044:1E31 E9 FFB9 ;* jmp loc_254 ; (1DED)
4044:1E31 db 0E9h,0B9h,0FFh ; Fixup - byte match
4044:1E34 loc_257: ; xref 4044:1DF7, 1E2F
4044:1E34 B1 10 mov cl,10h
4044:1E36 E8 0037 call sub_64 ; (1E70)
4044:1E39 loc_258: ; xref 4044:1DC0
4044:1E39 32 C0 xor al,al ; Zero register
4044:1E3B FE C8 dec al
4044:1E3D C3 retn
4044:1E3E loc_259: ; xref 4044:1DC7
4044:1E3E 32 C0 xor al,al ; Zero register
4044:1E40 C3 retn
4044:1E41 loc_260: ; xref 4044:1D90, 1DA0
4044:1E41 49 dec cx
4044:1E42 8A 07 mov al,[bx]
4044:1E44 43 inc bx
4044:1E45 8A 3F mov bh,[bx]
4044:1E47 8A D8 mov bl,al
4044:1E49 4B dec bx
4044:1E4A 4B dec bx
4044:1E4B E9 FF37 jmp loc_246 ; (1D85)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:17FE
4044:1E4E sub_63:
4044:1E4E loc_261: ; xref 4044:1E5C, 312B
4044:1E4E ,A1 0777 mov ax,word ptr ds:[777h] ; (4044:0777=80B4h)
4044:1E51 0B C0 or ax,ax ; Zero ?
4044:1E53 74 0E jz loc_262 ; Jump if zero
4044:1E55 8B 1E 0779 mov bx,word ptr ds:[779h] ; (4044:0779=27Ch)
4044:1E59 E8 FF1C call sub_62 ; (1D78)
4044:1E5C 75 F0 jnz loc_261 ; Jump if not zero
4044:1E5E BA 0750 mov dx,750h
4044:1E61 EB 03 jmp short loc_263 ; (1E66)
4044:1E63 loc_262: ; xref 4044:1E53
4044:1E63 BA 0762 mov dx,762h
4044:1E66 loc_263: ; xref 4044:1D39, 1E61, 301F, 3025
; 3D69
4044:1E66 ,B1 09 mov cl,9
4044:1E68 E8 0005 call sub_64 ; (1E70)
4044:1E6B 2B C9 sub cx,cx
4044:1E6D E8 0000 call sub_64 ; (1E70)
sub_60 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:18DD, 18F7, 192E, 1981, 1D56, 1E20, 1E27
; 1E36, 1E68, 1E6D, 4189, 41EC, 422C, 4286
; 4297, 42BD, 43DD, 43F4, 43FA, 490E, 4926
; 49C9, 49DD, 4A1B, 4A44, 4AFD, 4B11, 4B2C
;==========================================================================
4044:1E70 sub_64 proc near
4044:1E70 loc_264: ; xref 4044:1921, 1943, 1958, 195F
; 1964, 196C, 1974, 197C
; 198B, 1990, 1998, 19A0
; 19A8, 19B0, 19B5, 19BD
; 19C5, 19CD, 19D5, 19DD
; 19E7, 19EF, 1A06, 1A0E
; 1A19, 1A2A, 1A35, 1A40
; 1A4B, 1A56, 1A61, 1A6C
; 1A77, 1A7F, 1A87, 3E0E
4044:1E70 ,06 push es
4044:1E71 CD E0 int 0E0h ; ??INT Non-standard interrupt
4044:1E73 07 pop es
4044:1E74 C3 retn
sub_64 endp
4044:1E75 B0 03 E9 0D 10 db 0B0h, 03h,0E9h, 0Dh, 10h
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1652
;==========================================================================
4044:1E7A sub_65 proc near
4044:1E7A B3 01 mov bl,1
4044:1E7C EB 02 jmp short loc_265 ; (1E80)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1682
4044:1E7E sub_66:
4044:1E7E 32 DB xor bl,bl ; Zero register
4044:1E80 loc_265: ; xref 4044:1E7C
4044:1E80 8B FC mov di,sp
4044:1E82 47 inc di
4044:1E83 47 inc di
4044:1E84 E8 00C0 call sub_67 ; (1F47)
4044:1E87 75 0C jnz loc_267 ; Jump if not zero
4044:1E89 0A DB or bl,bl ; Zero ?
4044:1E8B 74 03 jz loc_266 ; Jump if zero
4044:1E8D C2 0008 retn 8
4044:1E90 loc_266: ; xref 4044:1E8B
4044:1E90 FE C0 inc al
4044:1E92 E9 0FF2 jmp loc_492 ; (2E87)
4044:1E95 loc_267: ; xref 4044:1E87
4044:1E95 5A pop dx
4044:1E96 8B F4 mov si,sp
4044:1E98 ,BF FFF8 mov di,data_456e ; (4044:FFF8=0)
4044:1E9B 03 FC add di,sp
4044:1E9D 8B E7 mov sp,di
4044:1E9F 52 push dx
4044:1EA0 53 push bx
4044:1EA1 8B DF mov bx,di
4044:1EA3 8B EE mov bp,si
4044:1EA5 B9 0008 mov cx,8
4044:1EA8 F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
4044:1EAA B9 0004 mov cx,4
4044:1EAD 33 C0 xor ax,ax ; Zero register
4044:1EAF F3/ AB rep stosw ; Rep when cx >0 Store ax to es:[di]
4044:1EB1 E8 009B call sub_68 ; (1F4F)
4044:1EB4 52 push dx
4044:1EB5 8B DD mov bx,bp
4044:1EB7 E8 0095 call sub_68 ; (1F4F)
4044:1EBA 52 push dx
4044:1EBB B9 0010 mov cx,10h
4044:1EBE BF FFF8 mov di,0FFF8h
4044:1EC1 03 FD add di,bp
4044:1EC3 locloop_268: ; xref 4044:1EF9
4044:1EC3 51 push cx
4044:1EC4 8B DD mov bx,bp
4044:1EC6 E8 00B1 call sub_71 ; (1F7A)
4044:1EC9 loc_269: ; xref 4044:1EDD
4044:1EC9 8B DF mov bx,di
4044:1ECB BA 0008 mov dx,8
4044:1ECE 03 D5 add dx,bp
4044:1ED0 E8 0093 call sub_70 ; (1F66)
4044:1ED3 8B DA mov bx,dx
4044:1ED5 4B dec bx
4044:1ED6 FE 46 00 inc byte ptr [bp]
4044:1ED9 8A 07 mov al,[bx]
4044:1EDB 84 C0 test al,al
4044:1EDD 79 EA jns loc_269 ; Jump if not sign
4044:1EDF FE 4E 00 dec byte ptr [bp]
4044:1EE2 8B DF mov bx,di
4044:1EE4 ,BE 0008 mov si,offset data_8 ; (4044:0008=0)
4044:1EE7 03 F5 add si,bp
4044:1EE9 B9 0008 mov cx,8
4044:1EEC F8 clc ; Clear carry flag
4044:1EED locloop_270: ; xref 4044:1EF6
4044:1EED 8A 04 mov al,[si]
4044:1EEF 12 07 adc al,[bx]
4044:1EF1 27 daa ; Decimal adjust
4044:1EF2 88 04 mov [si],al
4044:1EF4 46 inc si
4044:1EF5 43 inc bx
4044:1EF6 E2 F5 loop locloop_270 ; Loop if cx > 0
4044:1EF8 59 pop cx
4044:1EF9 E2 C8 loop locloop_268 ; Loop if cx > 0
4044:1EFB 5A pop dx
4044:1EFC 58 pop ax
4044:1EFD 50 push ax
4044:1EFE 32 E6 xor ah,dh
4044:1F00 74 24 jz loc_271 ; Jump if zero
4044:1F02 E8 0052 call sub_69 ; (1F57)
4044:1F05 8B FB mov di,bx
4044:1F07 E8 003D call sub_67 ; (1F47)
4044:1F0A 74 1A jz loc_271 ; Jump if zero
4044:1F0C ,BB 0008 mov bx,offset data_8 ; (4044:0008=0)
4044:1F0F 8B D5 mov dx,bp
4044:1F11 2B D3 sub dx,bx
4044:1F13 03 DD add bx,bp
4044:1F15 8B FA mov di,dx
4044:1F17 E8 004C call sub_70 ; (1F66)
4044:1F1A 8B F7 mov si,di
4044:1F1C ,BF 0008 mov di,offset data_8 ; (4044:0008=0)
4044:1F1F 03 FD add di,bp
4044:1F21 B9 0004 mov cx,4
4044:1F24 F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
4044:1F26 loc_271: ; xref 4044:1F00, 1F0A
4044:1F26 58 pop ax
4044:1F27 84 E4 test ah,ah
4044:1F29 79 08 jns loc_272 ; Jump if not sign
4044:1F2B ,BB 0008 mov bx,offset data_8 ; (4044:0008=0)
4044:1F2E 03 DD add bx,bp
4044:1F30 E8 0024 call sub_69 ; (1F57)
4044:1F33 loc_272: ; xref 4044:1F29
4044:1F33 58 pop ax
4044:1F34 84 C0 test al,al
4044:1F36 75 0C jnz loc_ret_273 ; Jump if not zero
4044:1F38 B9 0004 mov cx,4
4044:1F3B 8B F5 mov si,bp
4044:1F3D ,BF 0008 mov di,offset data_8 ; (4044:0008=0)
4044:1F40 03 FD add di,bp
4044:1F42 F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
4044:1F44 loc_ret_273: ; xref 4044:1F36
4044:1F44 C2 0010 retn 10h
sub_65 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1E84, 1F07
;==========================================================================
4044:1F47 sub_67 proc near
4044:1F47 B9 0004 mov cx,4
4044:1F4A 33 C0 xor ax,ax ; Zero register
4044:1F4C F3/ AF repe scasw ; Rep zf=1+cx >0 Scan es:[di] for ax
4044:1F4E C3 retn
sub_67 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1EB1, 1EB7
;==========================================================================
4044:1F4F sub_68 proc near
4044:1F4F 8A 77 07 mov dh,[bx+7]
4044:1F52 80 E6 F0 and dh,0F0h
4044:1F55 79 0E jns loc_ret_275 ; Jump if not sign
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1F02, 1F30
4044:1F57 sub_69:
4044:1F57 B9 0008 mov cx,8
4044:1F5A F8 clc ; Clear carry flag
4044:1F5B locloop_274: ; xref 4044:1F63
4044:1F5B 8A C5 mov al,ch
4044:1F5D 1A 07 sbb al,[bx]
4044:1F5F 2F das ; Decimal adjust
4044:1F60 88 07 mov [bx],al
4044:1F62 43 inc bx
4044:1F63 E2 F6 loop locloop_274 ; Loop if cx > 0
4044:1F65 loc_ret_275: ; xref 4044:1F55
4044:1F65 C3 retn
sub_68 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1ED0, 1F17
;==========================================================================
4044:1F66 sub_70 proc near
4044:1F66 B9 0008 mov cx,8
4044:1F69 F8 clc ; Clear carry flag
4044:1F6A 87 FA xchg di,dx
4044:1F6C locloop_276: ; xref 4044:1F75
4044:1F6C 8A 05 mov al,[di]
4044:1F6E 1A 07 sbb al,[bx]
4044:1F70 2F das ; Decimal adjust
4044:1F71 88 05 mov [di],al
4044:1F73 47 inc di
4044:1F74 43 inc bx
4044:1F75 E2 F5 loop locloop_276 ; Loop if cx > 0
4044:1F77 87 FA xchg di,dx
4044:1F79 C3 retn
sub_70 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1EC6
;==========================================================================
4044:1F7A sub_71 proc near
4044:1F7A B9 0010 mov cx,10h
4044:1F7D 32 C0 xor al,al ; Zero register
4044:1F7F B6 04 mov dh,4
4044:1F81 locloop_277: ; xref 4044:1F92
4044:1F81 8A 17 mov dl,[bx]
4044:1F83 8A E2 mov ah,dl
4044:1F85 8B F1 mov si,cx
4044:1F87 8A CE mov cl,dh
4044:1F89 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:1F8B 8B CE mov cx,si
4044:1F8D 8A C2 mov al,dl
4044:1F8F 88 27 mov [bx],ah
4044:1F91 43 inc bx
4044:1F92 E2 ED loop locloop_277 ; Loop if cx > 0
4044:1F94 C3 retn
sub_71 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:13EB, 14A3, 156E, 1647, 164F, 1672, 167F
;==========================================================================
4044:1F95 sub_72 proc near
4044:1F95 98 cbw ; Convrt byte to word
4044:1F96 40 inc ax
4044:1F97 40 inc ax
4044:1F98 D1 E8 shr ax,1 ; Shift w/zeros fill
4044:1F9A 8B C8 mov cx,ax
4044:1F9C 8B F3 mov si,bx
4044:1F9E 5B pop bx
4044:1F9F BA 0008 mov dx,8
4044:1FA2 2B E2 sub sp,dx
4044:1FA4 8B FC mov di,sp
4044:1FA6 2B D1 sub dx,cx
4044:1FA8 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
4044:1FAA 4E dec si
4044:1FAB AC lodsb ; String [si] to al
4044:1FAC 8B CA mov cx,dx
4044:1FAE E3 0A jcxz loc_279 ; Jump if cx=0
4044:1FB0 0A C0 or al,al ; Zero ?
4044:1FB2 B0 99 mov al,99h
4044:1FB4 78 02 js loc_278 ; Jump if sign=1
4044:1FB6 2A C0 sub al,al
4044:1FB8 loc_278: ; xref 4044:1FB4
4044:1FB8 F3/ AA rep stosb ; Rep when cx >0 Store al to es:[di]
4044:1FBA loc_279: ; xref 4044:1FAE
4044:1FBA FF E3 jmp bx ;*Register jump
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:144D, 1517, 1634
4044:1FBC sub_73:
4044:1FBC 8B FB mov di,bx
4044:1FBE 8B F4 mov si,sp
4044:1FC0 46 inc si
4044:1FC1 46 inc si
4044:1FC2 98 cbw ; Convrt byte to word
4044:1FC3 40 inc ax
4044:1FC4 8B C8 mov cx,ax
4044:1FC6 41 inc cx
4044:1FC7 D1 E9 shr cx,1 ; Shift w/zeros fill
4044:1FC9 D1 C8 ror ax,1 ; Rotate
4044:1FCB BA 0009 mov dx,9
4044:1FCE 2B D1 sub dx,cx
4044:1FD0 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
4044:1FD2 4E dec si
4044:1FD3 AC lodsb ; String [si] to al
4044:1FD4 0A E4 or ah,ah ; Zero ?
4044:1FD6 78 04 js loc_280 ; Jump if sign=1
4044:1FD8 B1 04 mov cl,4
4044:1FDA D2 E8 shr al,cl ; Shift w/zeros fill
4044:1FDC loc_280: ; xref 4044:1FD6
4044:1FDC 24 0F and al,0Fh
4044:1FDE 74 09 jz loc_283 ; Jump if zero
4044:1FE0 3C 09 cmp al,9
4044:1FE2 74 03 je loc_282 ; Jump if equal
4044:1FE4 loc_281: ; xref 4044:1FEE
4044:1FE4 E9 12F3 jmp loc_546 ; (32DA)
4044:1FE7 loc_282: ; xref 4044:1FE2
4044:1FE7 B0 99 mov al,99h
4044:1FE9 loc_283: ; xref 4044:1FDE, 1FF1
4044:1FE9 ,4A dec dx
4044:1FEA 74 07 jz loc_ret_284 ; Jump if zero
4044:1FEC 3A 04 cmp al,[si]
4044:1FEE 75 F4 jne loc_281 ; Jump if not equal
4044:1FF0 46 inc si
4044:1FF1 EB F6 jmp short loc_283 ; (1FE9)
4044:1FF3 loc_ret_284: ; xref 4044:1FEA
4044:1FF3 C2 0008 retn 8
sub_72 endp
;* No entry point to code
4044:1FF6 AC lodsb ; String [si] to al
4044:1FF7 EB 07 jmp short loc_285 ; (2000)
;* No entry point to code
4044:1FF9 AC lodsb ; String [si] to al
4044:1FFA 8A C8 mov cl,al
4044:1FFC 2A CA sub cl,dl
4044:1FFE FE C1 inc cl
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0219, 10CD
;==========================================================================
4044:2000 sub_74 proc near
4044:2000 loc_285: ; xref 4044:1FF7
4044:2000 3A C2 cmp al,dl
4044:2002 73 02 jae loc_286 ; Jump if above or =
4044:2004 8A D0 mov dl,al
4044:2006 loc_286: ; xref 4044:2002
4044:2006 2A F6 sub dh,dh
4044:2008 03 F2 add si,dx
4044:200A 4E dec si
4044:200B 2A C2 sub al,dl
4044:200D FE C0 inc al
4044:200F 3A C1 cmp al,cl
4044:2011 72 02 jb loc_ret_287 ; Jump if below
4044:2013 8A C1 mov al,cl
4044:2015 loc_ret_287: ; xref 4044:2011
4044:2015 C3 retn
sub_74 endp
;* No entry point to code
4044:2016 2A E4 sub ah,ah
4044:2018 8B FC mov di,sp
4044:201A 47 inc di
4044:201B 47 inc di
4044:201C 8B DF mov bx,di
4044:201E 03 D8 add bx,ax
4044:2020 8A 0C mov cl,[si]
4044:2022 46 inc si
4044:2023 E8 005F call sub_75 ; (2085)
4044:2026 5A pop dx
4044:2027 8B E3 mov sp,bx
4044:2029 FF E2 jmp dx ;*
;* No entry point to code
4044:202B 8A 0C mov cl,[si]
4044:202D 46 inc si
4044:202E 8A 05 mov al,[di]
4044:2030 47 inc di
4044:2031 E9 0051 jmpn loc_288 ; (2085)
;* No entry point to code
4044:2034 2A E4 sub ah,ah
4044:2036 8B FC mov di,sp
4044:2038 47 inc di
4044:2039 47 inc di
4044:203A 8B F7 mov si,di
4044:203C 03 F0 add si,ax
4044:203E 8A 0C mov cl,[si]
4044:2040 46 inc si
4044:2041 46 inc si
4044:2042 2A ED sub ch,ch
4044:2044 8B DE mov bx,si
4044:2046 03 D9 add bx,cx
4044:2048 E8 003A call sub_75 ; (2085)
4044:204B 5A pop dx
4044:204C 8B E3 mov sp,bx
4044:204E FF E2 jmp dx ;*
;* No entry point to code
4044:2050 8A 05 mov al,[di]
4044:2052 47 inc di
4044:2053 E9 002F jmpn loc_288 ; (2085)
;* No entry point to code
4044:2056 8A 0C mov cl,[si]
4044:2058 46 inc si
4044:2059 E9 0029 jmpn loc_288 ; (2085)
;* No entry point to code
4044:205C 8A 0D mov cl,[di]
4044:205E 47 inc di
4044:205F 8B F4 mov si,sp
4044:2061 46 inc si
4044:2062 46 inc si
4044:2063 8B DE mov bx,si
4044:2065 2A E4 sub ah,ah
4044:2067 03 D8 add bx,ax
4044:2069 86 C1 xchg al,cl
4044:206B E8 0017 call sub_75 ; (2085)
4044:206E 5A pop dx
4044:206F 8B E3 mov sp,bx
4044:2071 FF E2 jmp dx ;*
;* No entry point to code
4044:2073 8B FC mov di,sp
4044:2075 47 inc di
4044:2076 47 inc di
4044:2077 8B DF mov bx,di
4044:2079 2A E4 sub ah,ah
4044:207B 03 D8 add bx,ax
4044:207D E8 0005 call sub_75 ; (2085)
4044:2080 59 pop cx
4044:2081 8B E3 mov sp,bx
4044:2083 FF E1 jmp cx ;*Register jump
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:02A7, 02BB, 0B68, 0D87, 0F12, 0F26, 1042
; 10E6, 2023, 2048, 206B, 207D
;==========================================================================
4044:2085 sub_75 proc near
4044:2085 loc_288: ; xref 4044:2031, 2053, 2059
4044:2085 8A D0 mov dl,al
4044:2087 2A F6 sub dh,dh
4044:2089 2A ED sub ch,ch
4044:208B 0A C1 or al,cl
4044:208D 74 23 jz loc_293 ; Jump if zero
4044:208F 0A D2 or dl,dl ; Zero ?
4044:2091 74 18 jz locloop_291 ; Jump if zero
4044:2093 0A C9 or cl,cl ; Zero ?
4044:2095 74 08 jz loc_290 ; Jump if zero
4044:2097 locloop_289: ; xref 4044:209D
4044:2097 A6 cmpsb ; Cmp [si] to es:[di]
4044:2098 75 18 jnz loc_293 ; Jump if not zero
4044:209A 4A dec dx
4044:209B 74 13 jz loc_292 ; Jump if zero
4044:209D E2 F8 loop locloop_289 ; Loop if cx > 0
4044:209F loc_290: ; xref 4044:2095, 20A7
4044:209F B0 20 mov al,20h ; ' '
4044:20A1 3A 05 cmp al,[di]
4044:20A3 75 0D jne loc_293 ; Jump if not equal
4044:20A5 47 inc di
4044:20A6 4A dec dx
4044:20A7 75 F6 jnz loc_290 ; Jump if not zero
4044:20A9 EB 07 jmp short loc_293 ; (20B2)
4044:20AB locloop_291: ; xref 4044:2091, 20B0
4044:20AB AC lodsb ; String [si] to al
4044:20AC 3C 20 cmp al,20h ; ' '
4044:20AE 75 02 jne loc_293 ; Jump if not equal
4044:20B0 loc_292: ; xref 4044:209B
4044:20B0 E2 F9 loop locloop_291 ; Loop if cx > 0
4044:20B2 loc_293: ; xref 4044:208D, 2098, 20A3, 20A9
; 20AE
4044:20B2 B0 80 mov al,80h
4044:20B4 C3 retn
sub_75 endp
4044:20B5 AC db 0ACh
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:026D, 03B9, 03C4, 03CF, 108B, 1096, 10A1
; 1498, 14C1, 14D8, 1563, 158C, 15A3, 3871
; 38A5, 4733
;==========================================================================
4044:20B6 sub_76 proc near
4044:20B6 0A C0 or al,al ; Zero ?
4044:20B8 75 01 jnz loc_294 ; Jump if not zero
4044:20BA C3 retn
4044:20BB loc_294: ; xref 4044:20B8
4044:20BB 59 pop cx
4044:20BC 2A E4 sub ah,ah
4044:20BE 2B E0 sub sp,ax
4044:20C0 8B FC mov di,sp
4044:20C2 51 push cx
4044:20C3 8A C8 mov cl,al
4044:20C5 E9 0015 jmpn loc_295 ; (20DD)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:015C, 016A, 01F3, 0201, 0237, 0256, 0281
; 0297, 0376, 039F, 03F1, 092E, 093C, 0E99
; 0EAD, 0EDE, 0EEC, 0F02, 106A, 1080, 10AC
; 4746
4044:20C8 sub_77:
4044:20C8 86 C1 xchg al,cl
4044:20CA 8B F4 mov si,sp
4044:20CC 46 inc si
4044:20CD 46 inc si
4044:20CE 51 push cx
4044:20CF E8 000B call sub_79 ; (20DD)
4044:20D2 59 pop cx
4044:20D3 2A ED sub ch,ch
4044:20D5 5B pop bx
4044:20D6 03 E1 add sp,cx
4044:20D8 FF E3 jmp bx ;*Register jump
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:4729
4044:20DA sub_78:
4044:20DA 8A 0C mov cl,[si]
4044:20DC 46 inc si
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:00CB, 00D8, 00E5, 0223, 0412, 0874, 08CD
; 09C4, 0E3E, 125C, 20CF, 48CD, 48E4
4044:20DD sub_79:
4044:20DD loc_295: ; xref 4044:20C5
4044:20DD 3A C1 cmp al,cl
4044:20DF 73 02 jae loc_296 ; Jump if above or =
4044:20E1 8A C8 mov cl,al
4044:20E3 loc_296: ; xref 4044:20DF
4044:20E3 50 push ax
4044:20E4 8A D0 mov dl,al
4044:20E6 2A D1 sub dl,cl
4044:20E8 2A ED sub ch,ch
4044:20EA D1 E9 shr cx,1 ; Shift w/zeros fill
4044:20EC 73 01 jnc loc_297 ; Jump if carry=0
4044:20EE A4 movsb ; Mov [si] to es:[di]
4044:20EF loc_297: ; xref 4044:20EC
4044:20EF E3 02 jcxz loc_298 ; Jump if cx=0
4044:20F1 F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
4044:20F3 loc_298: ; xref 4044:20EF
4044:20F3 8A CA mov cl,dl
4044:20F5 D1 E9 shr cx,1 ; Shift w/zeros fill
4044:20F7 B8 2020 mov ax,2020h
4044:20FA 73 01 jnc loc_299 ; Jump if carry=0
4044:20FC AA stosb ; Store al to es:[di]
4044:20FD loc_299: ; xref 4044:20FA
4044:20FD E3 02 jcxz loc_300 ; Jump if cx=0
4044:20FF F3/ AB rep stosw ; Rep when cx >0 Store ax to es:[di]
4044:2101 loc_300: ; xref 4044:20FD
4044:2101 58 pop ax
4044:2102 C3 retn
sub_76 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:14AA, 1575, 22C5
;==========================================================================
4044:2103 sub_80 proc near
4044:2103 8A D0 mov dl,al
4044:2105 8A F5 mov dh,ch
4044:2107 B9 0005 mov cx,5
4044:210A 8B F4 mov si,sp
4044:210C 83 EC 12 sub sp,12h
4044:210F 8B FC mov di,sp
4044:2111 F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
4044:2113 C7 05 3030 mov word ptr [di],3030h
4044:2117 83 EE 1A sub si,1Ah
4044:211A B7 20 mov bh,20h ; ' '
4044:211C F6 44 07 80 test byte ptr [si+7],80h
4044:2120 74 10 jz loc_302 ; Jump if zero
4044:2122 33 DB xor bx,bx ; Zero register
4044:2124 B1 08 mov cl,8
4044:2126 locloop_301: ; xref 4044:212E
4044:2126 8A C7 mov al,bh
4044:2128 1A 00 sbb al,[bx+si]
4044:212A 2F das ; Decimal adjust
4044:212B 88 00 mov [bx+si],al
4044:212D 43 inc bx
4044:212E E2 F6 loop locloop_301 ; Loop if cx > 0
4044:2130 B7 2D mov bh,2Dh ; '-'
4044:2132 loc_302: ; xref 4044:2120
4044:2132 ,BD 0010 mov bp,offset data_13 ; (4044:0010=0)
4044:2135 47 inc di
4044:2136 B4 30 mov ah,30h ; '0'
4044:2138 B9 0F04 mov cx,0F04h
4044:213B loc_303: ; xref 4044:2148
4044:213B 8A 1C mov bl,[si]
4044:213D E8 0033 call sub_81 ; (2173)
4044:2140 74 08 jz loc_304 ; Jump if zero
4044:2142 D2 EB shr bl,cl ; Shift w/zeros fill
4044:2144 46 inc si
4044:2145 E8 002B call sub_81 ; (2173)
4044:2148 75 F1 jnz loc_303 ; Jump if not zero
4044:214A loc_304: ; xref 4044:2140
4044:214A 4F dec di
4044:214B B9 0011 mov cx,11h
4044:214E locloop_305: ; xref 4044:2162
4044:214E 80 3D 2E cmp byte ptr [di],2Eh ; '.'
4044:2151 75 06 jne loc_306 ; Jump if not equal
4044:2153 4F dec di
4044:2154 C6 05 30 mov byte ptr [di],30h ; '0'
4044:2157 EB 0B jmp short loc_307 ; (2164)
4044:2159 loc_306: ; xref 4044:2151
4044:2159 80 3D 30 cmp byte ptr [di],30h ; '0'
4044:215C 75 06 jne loc_307 ; Jump if not equal
4044:215E C6 05 20 mov byte ptr [di],20h ; ' '
4044:2161 47 inc di
4044:2162 E2 EA loop locloop_305 ; Loop if cx > 0
4044:2164 loc_307: ; xref 4044:2157, 215C
4044:2164 4F dec di
4044:2165 88 3D mov [di],bh
4044:2167 8A C2 mov al,dl
4044:2169 B9 001A mov cx,1Ah
4044:216C 2A C8 sub cl,al
4044:216E 5B pop bx
4044:216F 03 E1 add sp,cx
4044:2171 FF E3 jmp bx ;*Register jump
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:213D, 2145
4044:2173 sub_81:
4044:2173 8A C5 mov al,ch
4044:2175 22 C3 and al,bl
4044:2177 0A C4 or al,ah
4044:2179 88 03 mov [bp+di],al
4044:217B FE CE dec dh
4044:217D 75 04 jnz loc_308 ; Jump if not zero
4044:217F 4D dec bp
4044:2180 C6 03 2E mov byte ptr [bp+di],2Eh ; '.'
4044:2183 loc_308: ; xref 4044:217D
4044:2183 4D dec bp
4044:2184 C3 retn
sub_80 endp
4044:2185 0A C0 75 01 C3 db 0Ah,0C0h, 75h, 01h,0C3h
4044:218A loc_309:
4044:218A BB 211C mov bx,211Ch
4044:218D 79 05 jns loc_310 ; Jump if not sign
4044:218F F6 D8 neg al
4044:2191 ,BB 21BF mov bx,offset loc_313
4044:2194 loc_310: ; xref 4044:218D
4044:2194 3C 0F cmp al,0Fh
4044:2196 76 02 jbe loc_311 ; Jump if below or =
4044:2198 B0 0F mov al,0Fh
4044:219A loc_311: ; xref 4044:2196
4044:219A FF E3 jmp bx ;*Register jump
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1677
;==========================================================================
4044:219C sub_82 proc near
4044:219C 0A C0 or al,al ; Zero ?
4044:219E D0 D8 rcr al,1 ; Rotate thru carry
4044:21A0 50 push ax
4044:21A1 73 39 jnc loc_315 ; Jump if carry=0
4044:21A3 ,BB 0004 mov bx,offset data_4 ; (4044:0004=0)
4044:21A6 03 DC add bx,sp
4044:21A8 B9 0800 mov cx,800h
4044:21AB loc_312: ; xref 4044:21C8
4044:21AB 8A 37 mov dh,[bx]
4044:21AD 8A C6 mov al,dh
4044:21AF 24 0F and al,0Fh
4044:21B1 0A C1 or al,cl
4044:21B3 D0 C8 ror al,1 ; Rotate
4044:21B5 D0 C8 ror al,1 ; Rotate
4044:21B7 D0 C8 ror al,1 ; Rotate
4044:21B9 D0 C8 ror al,1 ; Rotate
4044:21BB 88 07 mov [bx],al
4044:21BD 50 push ax
4044:21BE 8A C6 mov al,dh
4044:21C0 24 F0 and al,0F0h
4044:21C2 8A C8 mov cl,al
4044:21C4 58 pop ax
4044:21C5 43 inc bx
4044:21C6 FE CD dec ch
4044:21C8 75 E1 jnz loc_312 ; Jump if not zero
4044:21CA 24 F0 and al,0F0h
4044:21CC 74 07 jz loc_314 ; Jump if zero
4044:21CE 3C 90 cmp al,90h
4044:21D0 74 03 je loc_314 ; Jump if equal
4044:21D2 E9 1105 jmp loc_546 ; (32DA)
4044:21D5 loc_314: ; xref 4044:21CC, 21D0
4044:21D5 3A C1 cmp al,cl
4044:21D7 74 03 je loc_315 ; Jump if equal
4044:21D9 E9 10FE jmp loc_546 ; (32DA)
4044:21DC loc_315: ; xref 4044:21A1, 21D7
4044:21DC 58 pop ax
4044:21DD 0A C0 or al,al ; Zero ?
4044:21DF 75 01 jnz loc_316 ; Jump if not zero
4044:21E1 C3 retn
4044:21E2 loc_316: ; xref 4044:21DF
4044:21E2 50 push ax
4044:21E3 ,BB 000B mov bx,offset data_10 ; (4044:000B=3)
4044:21E6 03 DC add bx,sp
4044:21E8 87 DA xchg bx,dx
4044:21EA F6 D8 neg al
4044:21EC 8A D8 mov bl,al
4044:21EE B7 FF mov bh,0FFh
4044:21F0 B0 08 mov al,8
4044:21F2 02 C3 add al,bl
4044:21F4 8A E8 mov ch,al
4044:21F6 03 DA add bx,dx
4044:21F8 8B F2 mov si,dx
4044:21FA 8A 04 mov al,[si]
4044:21FC 24 F0 and al,0F0h
4044:21FE 8A C8 mov cl,al
4044:2200 8A 07 mov al,[bx]
4044:2202 24 F0 and al,0F0h
4044:2204 3A C1 cmp al,cl
4044:2206 74 03 je loc_317 ; Jump if equal
4044:2208 E9 10CF jmp loc_546 ; (32DA)
4044:220B loc_317: ; xref 4044:2206
4044:220B D0 C0 rol al,1 ; Rotate
4044:220D D0 C0 rol al,1 ; Rotate
4044:220F D0 C0 rol al,1 ; Rotate
4044:2211 D0 C0 rol al,1 ; Rotate
4044:2213 0A C1 or al,cl
4044:2215 8A C8 mov cl,al
4044:2217 loc_318: ; xref 4044:222E
4044:2217 8B F2 mov si,dx
4044:2219 8A 04 mov al,[si]
4044:221B 3A C1 cmp al,cl
4044:221D 74 03 je loc_319 ; Jump if equal
4044:221F E9 10B8 jmp loc_546 ; (32DA)
4044:2222 loc_319: ; xref 4044:221D
4044:2222 8A 07 mov al,[bx]
4044:2224 88 0F mov [bx],cl
4044:2226 8B F2 mov si,dx
4044:2228 88 04 mov [si],al
4044:222A 4A dec dx
4044:222B 4B dec bx
4044:222C FE CD dec ch
4044:222E 75 E7 jnz loc_318 ; Jump if not zero
4044:2230 58 pop ax
4044:2231 BB 0002 mov bx,2
4044:2234 03 DC add bx,sp
4044:2236 loc_320: ; xref 4044:223C
4044:2236 C6 07 00 mov byte ptr [bx],0
4044:2239 43 inc bx
4044:223A FE C8 dec al
4044:223C 75 F8 jnz loc_320 ; Jump if not zero
4044:223E C3 retn
sub_82 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:1687
;==========================================================================
4044:223F sub_83 proc near
4044:223F 8A C8 mov cl,al
4044:2241 5A pop dx
4044:2242 ,BB 0007 mov bx,offset data_6+1 ; (4044:0007=0)
4044:2245 03 DC add bx,sp
4044:2247 8A 2F mov ch,[bx]
4044:2249 8A C5 mov al,ch
4044:224B 0A C0 or al,al ; Zero ?
4044:224D 79 03 jns loc_321 ; Jump if not sign
4044:224F E8 1076 call sub_142 ; (32C8)
4044:2252 loc_321: ; xref 4044:224D
4044:2252 52 push dx
4044:2253 51 push cx
4044:2254 8A C1 mov al,cl
4044:2256 0A C0 or al,al ; Zero ?
4044:2258 D0 D8 rcr al,1 ; Rotate thru carry
4044:225A 50 push ax
4044:225B 73 25 jnc loc_323 ; Jump if carry=0
4044:225D ,BB 000D mov bx,offset data_12 ; (4044:000D=0)
4044:2260 03 DC add bx,sp
4044:2262 B9 0800 mov cx,800h
4044:2265 loc_322: ; xref 4044:2280
4044:2265 8A 07 mov al,[bx]
4044:2267 D0 C0 rol al,1 ; Rotate
4044:2269 D0 C0 rol al,1 ; Rotate
4044:226B D0 C0 rol al,1 ; Rotate
4044:226D D0 C0 rol al,1 ; Rotate
4044:226F 8A F0 mov dh,al
4044:2271 24 0F and al,0Fh
4044:2273 0A C1 or al,cl
4044:2275 88 07 mov [bx],al
4044:2277 8A C6 mov al,dh
4044:2279 24 F0 and al,0F0h
4044:227B 8A C8 mov cl,al
4044:227D 4B dec bx
4044:227E FE CD dec ch
4044:2280 75 E3 jnz loc_322 ; Jump if not zero
4044:2282 loc_323: ; xref 4044:225B
4044:2282 58 pop ax
4044:2283 0A C0 or al,al ; Zero ?
4044:2285 74 2C jz loc_326 ; Jump if zero
4044:2287 8A D0 mov dl,al
4044:2289 B6 00 mov dh,0
4044:228B 2C 09 sub al,9
4044:228D F6 D0 not al
4044:228F ,BB 0004 mov bx,offset data_4 ; (4044:0004=0)
4044:2292 03 DC add bx,sp
4044:2294 53 push bx
4044:2295 03 DA add bx,dx
4044:2297 5A pop dx
4044:2298 B5 08 mov ch,8
4044:229A loc_324: ; xref 4044:22A8
4044:229A 50 push ax
4044:229B 8A 07 mov al,[bx]
4044:229D 8B F2 mov si,dx
4044:229F 88 04 mov [si],al
4044:22A1 43 inc bx
4044:22A2 42 inc dx
4044:22A3 FE CD dec ch
4044:22A5 58 pop ax
4044:22A6 FE C8 dec al
4044:22A8 75 F0 jnz loc_324 ; Jump if not zero
4044:22AA loc_325: ; xref 4044:22B1
4044:22AA 8B F2 mov si,dx
4044:22AC 88 04 mov [si],al
4044:22AE 42 inc dx
4044:22AF FE CD dec ch
4044:22B1 75 F7 jnz loc_325 ; Jump if not zero
4044:22B3 loc_326: ; xref 4044:2285
4044:22B3 58 pop ax
4044:22B4 0A E4 or ah,ah ; Zero ?
4044:22B6 79 03 jns loc_ret_327 ; Jump if not sign
4044:22B8 E9 100D jmp loc_544 ; (32C8)
4044:22BB loc_ret_327: ; xref 4044:22B6
4044:22BB C3 retn
sub_83 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:13EE, 1655, 168A
;==========================================================================
4044:22BC sub_84 proc near
4044:22BC 8F 06 0784 pop word ptr ds:[784h] ; (4044:0784=280h)
4044:22C0 B8 0006 mov ax,6
4044:22C3 8A EC mov ch,ah
4044:22C5 E8 FE3B call sub_80 ; (2103)
4044:22C8 E8 1015 call sub_143 ; (32E0)
4044:22CB FF 26 0784 jmp word ptr ds:[784h] ; (4044:0784=280h)
sub_84 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:14CD, 14E4, 1598, 15AF
;==========================================================================
4044:22CF sub_85 proc near
4044:22CF 5D pop bp
4044:22D0 B9 0006 mov cx,6
4044:22D3 3A C1 cmp al,cl
4044:22D5 76 02 jbe loc_328 ; Jump if below or =
4044:22D7 8A C8 mov cl,al
4044:22D9 loc_328: ; xref 4044:22D5
4044:22D9 2B E1 sub sp,cx
4044:22DB 8B FC mov di,sp
4044:22DD 50 push ax
4044:22DE 51 push cx
4044:22DF B0 20 mov al,20h ; ' '
4044:22E1 49 dec cx
4044:22E2 F3/ AA rep stosb ; Rep when cx >0 Store al to es:[di]
4044:22E4 B1 04 mov cl,4
4044:22E6 93 xchg bx,ax
4044:22E7 99 cwd ; Word to double word
4044:22E8 85 C0 test ax,ax
4044:22EA 79 05 jns loc_329 ; Jump if not sign
4044:22EC B3 2D mov bl,2Dh ; '-'
4044:22EE F7 D8 neg ax
4044:22F0 42 inc dx
4044:22F1 loc_329: ; xref 4044:22EA
4044:22F1 BE 000A mov si,0Ah
4044:22F4 B7 30 mov bh,30h ; '0'
4044:22F6 locloop_330: ; xref 4044:2300
4044:22F6 F7 F6 div si ; ax,dx rem=dx:ax/reg
4044:22F8 0A D7 or dl,bh
4044:22FA 88 15 mov [di],dl
4044:22FC 4F dec di
4044:22FD 85 C0 test ax,ax
4044:22FF 99 cwd ; Word to double word
4044:2300 E0 F4 loopnz locloop_330 ; Loop if zf=0, cx>0
4044:2302 74 05 jz loc_331 ; Jump if zero
4044:2304 0A C7 or al,bh
4044:2306 88 05 mov [di],al
4044:2308 4F dec di
4044:2309 loc_331: ; xref 4044:2302
4044:2309 88 1D mov [di],bl
4044:230B 59 pop cx
4044:230C 58 pop ax
4044:230D 2A C8 sub cl,al
4044:230F 03 E1 add sp,cx
4044:2311 FF E5 jmp bp ;*Register jump
4044:2313 98 8B D8 db 98h, 8Bh,0D8h
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1445, 150F, 162C
4044:2316 sub_86:
4044:2316 5D pop bp
4044:2317 8B C3 mov ax,bx
4044:2319 99 cwd ; Word to double word
4044:231A 8B DA mov bx,dx
4044:231C 85 D2 test dx,dx
4044:231E 74 03 jz loc_332 ; Jump if zero
4044:2320 F7 D8 neg ax
4044:2322 42 inc dx
4044:2323 loc_332: ; xref 4044:231E
4044:2323 52 push dx
4044:2324 52 push dx
4044:2325 52 push dx
4044:2326 52 push dx
4044:2327 8B FC mov di,sp
4044:2329 55 push bp
4044:232A 53 push bx
4044:232B BE 000A mov si,0Ah
4044:232E B9 0004 mov cx,4
4044:2331 locloop_333: ; xref 4044:234B
4044:2331 F7 F6 div si ; ax,dx rem=dx:ax/reg
4044:2333 F6 C1 01 test cl,1
4044:2336 74 10 ;* jz loc_334 ;*Jump if zero
4044:2336 db 74h, 10h ; Fixup - byte match
4044:2338 8A FA mov bh,dl
4044:233A D0 E7 shl bh,1 ; Shift w/zeros fill
4044:233C D0 E7 shl bh,1 ; Shift w/zeros fill
4044:233E D0 E7 shl bh,1 ; Shift w/zeros fill
4044:2340 D0 E7 shl bh,1 ; Shift w/zeros fill
4044:2342 0A DF or bl,bh
4044:2344 88 1D mov [di],bl
4044:2346 47 inc di
4044:2347 3D DA8A cmp ax,0DA8Ah
4044:234A 99 cwd ; Word to double word
4044:234B E2 E4 loop locloop_333 ; Loop if cx > 0
4044:234D 88 05 mov [di],al
4044:234F 59 pop cx
4044:2350 41 inc cx
4044:2351 75 03 jnz loc_ret_335 ; Jump if not zero
4044:2353 E9 0F72 jmp loc_544 ; (32C8)
4044:2356 loc_ret_335: ; xref 4044:2351
4044:2356 C3 retn
sub_85 endp
;* No entry point to code
4044:2357 E8 000B call sub_88 ; (2365)
4044:235A 87 DA xchg bx,dx
4044:235C C3 retn
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:08D9
;==========================================================================
4044:235D sub_87 proc near
4044:235D E8 0005 call sub_88 ; (2365)
4044:2360 8A FD mov bh,ch
4044:2362 8A D9 mov bl,cl
4044:2364 C3 retn
sub_87 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:2357, 235D
;==========================================================================
4044:2365 sub_88 proc near
4044:2365 B9 0000 mov cx,0
4044:2368 8A F5 mov dh,ch
4044:236A 8A D1 mov dl,cl
4044:236C 8B 1E 077B mov bx,word ptr ds:[77Bh] ; (4044:077B=0E4D0h)
4044:2370 loc_336: ; xref 4044:2381
4044:2370 8A 07 mov al,[bx]
4044:2372 D0 D8 rcr al,1 ; Rotate thru carry
4044:2374 73 0E jnc loc_338 ; Jump if carry=0
4044:2376 loc_337: ; xref 4044:23C0
4044:2376 ,43 inc bx
4044:2377 43 inc bx
4044:2378 8A 07 mov al,[bx]
4044:237A 43 inc bx
4044:237B 8A 3F mov bh,[bx]
4044:237D 8A D8 mov bl,al
4044:237F 0A C7 or al,bh
4044:2381 75 ED jnz loc_336 ; Jump if not zero
4044:2383 C3 retn
4044:2384 loc_338: ; xref 4044:2374
4044:2384 53 push bx
4044:2385 52 push dx
4044:2386 43 inc bx
4044:2387 43 inc bx
4044:2388 8A 17 mov dl,[bx]
4044:238A 43 inc bx
4044:238B 8A 37 mov dh,[bx]
4044:238D 43 inc bx
4044:238E 8A C2 mov al,dl
4044:2390 2A C3 sub al,bl
4044:2392 8A D0 mov dl,al
4044:2394 8A C6 mov al,dh
4044:2396 1A C7 sbb al,bh
4044:2398 73 0A jnc loc_339 ; Jump if carry=0
4044:239A 5A pop dx
4044:239B 5B pop bx
4044:239C BB FFFF mov bx,0FFFFh
4044:239F 8A F7 mov dh,bh
4044:23A1 8A D3 mov dl,bl
4044:23A3 C3 retn
4044:23A4 loc_339: ; xref 4044:2398
4044:23A4 D0 D8 rcr al,1 ; Rotate thru carry
4044:23A6 8A F0 mov dh,al
4044:23A8 8A C2 mov al,dl
4044:23AA D0 D8 rcr al,1 ; Rotate thru carry
4044:23AC 8A D0 mov dl,al
4044:23AE 2A C1 sub al,cl
4044:23B0 8A C6 mov al,dh
4044:23B2 1A C5 sbb al,ch
4044:23B4 72 04 jc loc_340 ; Jump if carry Set
4044:23B6 8A CA mov cl,dl
4044:23B8 8A EE mov ch,dh
4044:23BA loc_340: ; xref 4044:23B4
4044:23BA 5B pop bx
4044:23BB 03 DA add bx,dx
4044:23BD 87 DA xchg bx,dx
4044:23BF 5B pop bx
4044:23C0 E9 FFB3 ;* jmp loc_337 ; (2376)
sub_88 endp
4044:23C0 db 0E9h,0B3h,0FFh ; Fixup - byte match
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:08E3
;==========================================================================
4044:23C3 sub_89 proc near
4044:23C3 8A 17 mov dl,[bx]
4044:23C5 9F lahf ; Load ah from flags
4044:23C6 43 inc bx
4044:23C7 9E sahf ; Store ah into flags
4044:23C8 8A 37 mov dh,[bx]
4044:23CA 87 DA xchg bx,dx
4044:23CC 8A 17 mov dl,[bx]
4044:23CE 9F lahf ; Load ah from flags
4044:23CF 43 inc bx
4044:23D0 9E sahf ; Store ah into flags
4044:23D1 8A 37 mov dh,[bx]
4044:23D3 87 DA xchg bx,dx
4044:23D5 D1 E3 shl bx,1 ; Shift w/zeros fill
4044:23D7 E9 0AB6 jmp loc_493 ; (2E90)
sub_89 endp
;* No entry point to code
4044:23DA 8B 1E 0775 mov bx,word ptr ds:[775h] ; (4044:0775=203Ch)
4044:23DE 87 DA xchg bx,dx
4044:23E0 BB 0000 mov bx,0
4044:23E3 03 DC add bx,sp
4044:23E5 8A C2 mov al,dl
4044:23E7 2A C3 sub al,bl
4044:23E9 8A D8 mov bl,al
4044:23EB 8A C6 mov al,dh
4044:23ED 1A C7 sbb al,bh
4044:23EF 8A F8 mov bh,al
4044:23F1 C3 retn
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:048E, 04D9, 051E, 054A, 055B, 0A41, 0A83
; 0DF1, 0F5F, 128B
;==========================================================================
4044:23F2 sub_90 proc near
4044:23F2 0B DB or bx,bx ; Zero ?
4044:23F4 75 03 jnz loc_341 ; Jump if not zero
4044:23F6 87 DA xchg bx,dx
4044:23F8 C3 retn
4044:23F9 loc_341: ; xref 4044:23F4
4044:23F9 52 push dx
4044:23FA 8A C7 mov al,bh
4044:23FC 32 C6 xor al,dh
4044:23FE 9C pushf ; Push flags
4044:23FF 8B C2 mov ax,dx
4044:2401 99 cwd ; Word to double word
4044:2402 F7 FB idiv bx ; ax,dx rem=dx:ax/reg
4044:2404 0B D2 or dx,dx ; Zero ?
4044:2406 74 0A jz loc_343 ; Jump if zero
4044:2408 9D popf ; Pop flags
4044:2409 79 01 jns loc_342 ; Jump if not sign
4044:240B 48 dec ax
4044:240C loc_342: ; xref 4044:2409
4044:240C F7 EB imul bx ; dx:ax = reg * ax
4044:240E 5B pop bx
4044:240F 2B D8 sub bx,ax
4044:2411 C3 retn
4044:2412 loc_343: ; xref 4044:2406
4044:2412 83 C4 04 add sp,4
4044:2415 33 DB xor bx,bx ; Zero register
4044:2417 C3 retn
sub_90 endp
;* No entry point to code
4044:2418 8B FC mov di,sp
4044:241A 47 inc di
4044:241B 47 inc di
4044:241C 2A E4 sub ah,ah
4044:241E 8B DF mov bx,di
4044:2420 03 D8 add bx,ax
4044:2422 53 push bx
4044:2423 8A C8 mov cl,al
4044:2425 AC lodsb ; String [si] to al
4044:2426 E8 0068 call sub_91 ; (2491)
4044:2429 58 pop ax
4044:242A 59 pop cx
4044:242B 8B E0 mov sp,ax
4044:242D FF E1 jmp cx ;*
;* No entry point to code
4044:242F 8A 0D mov cl,[di]
4044:2431 47 inc di
4044:2432 8B F4 mov si,sp
4044:2434 46 inc si
4044:2435 46 inc si
4044:2436 2A E4 sub ah,ah
4044:2438 8B DE mov bx,si
4044:243A 03 D8 add bx,ax
4044:243C 53 push bx
4044:243D E8 0051 call sub_91 ; (2491)
4044:2440 58 pop ax
4044:2441 59 pop cx
4044:2442 8B E0 mov sp,ax
4044:2444 FF E1 jmp cx ;*
;* No entry point to code
4044:2446 8A 05 mov al,[di]
4044:2448 47 inc di
4044:2449 86 C1 xchg al,cl
4044:244B E9 0043 jmpn loc_344 ; (2491)
;* No entry point to code
4044:244E 8B FC mov di,sp
4044:2450 47 inc di
4044:2451 47 inc di
4044:2452 2A E4 sub ah,ah
4044:2454 8B DF mov bx,di
4044:2456 03 D8 add bx,ax
4044:2458 53 push bx
4044:2459 86 C1 xchg al,cl
4044:245B E8 0033 call sub_91 ; (2491)
4044:245E 58 pop ax
4044:245F 59 pop cx
4044:2460 8B E0 mov sp,ax
4044:2462 FF E1 jmp cx ;*
;* No entry point to code
4044:2464 8B FC mov di,sp
4044:2466 47 inc di
4044:2467 47 inc di
4044:2468 8B F7 mov si,di
4044:246A 2A E4 sub ah,ah
4044:246C 03 F0 add si,ax
4044:246E 8A 0C mov cl,[si]
4044:2470 46 inc si
4044:2471 46 inc si
4044:2472 8B DE mov bx,si
4044:2474 2A ED sub ch,ch
4044:2476 03 D9 add bx,cx
4044:2478 53 push bx
4044:2479 86 C1 xchg al,cl
4044:247B E8 0013 call sub_91 ; (2491)
4044:247E 58 pop ax
4044:247F 59 pop cx
4044:2480 8B E0 mov sp,ax
4044:2482 FF E1 jmp cx ;*
;* No entry point to code
4044:2484 8A C8 mov cl,al
4044:2486 AC lodsb ; String [si] to al
4044:2487 E9 0007 jmpn loc_344 ; (2491)
;* No entry point to code
4044:248A AC lodsb ; String [si] to al
4044:248B 8A 0D mov cl,[di]
4044:248D 47 inc di
4044:248E E9 0000 jmpn loc_344 ; (2491)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:043B, 2426, 243D, 245B, 247B
;==========================================================================
4044:2491 sub_91 proc near
4044:2491 loc_344: ; xref 4044:244B, 2487, 248E
4044:2491 0A C0 or al,al ; Zero ?
4044:2493 74 1C jz loc_346 ; Jump if zero
4044:2495 2A ED sub ch,ch
4044:2497 E3 18 jcxz loc_346 ; Jump if cx=0
4044:2499 8A D0 mov dl,al
4044:249B 2A F6 sub dh,dh
4044:249D 8B DA mov bx,dx
4044:249F loc_345: ; xref 4044:24AF
4044:249F 3B D1 cmp dx,cx
4044:24A1 72 0E jb loc_346 ; Jump if below
4044:24A3 51 push cx
4044:24A4 57 push di
4044:24A5 56 push si
4044:24A6 F3/ A6 repe cmpsb ; Rep zf=1+cx >0 Cmp [si] to es:[di]
4044:24A8 5E pop si
4044:24A9 5F pop di
4044:24AA 59 pop cx
4044:24AB 74 07 jz loc_347 ; Jump if zero
4044:24AD 46 inc si
4044:24AE 4A dec dx
4044:24AF 75 EE jnz loc_345 ; Jump if not zero
4044:24B1 loc_346: ; xref 4044:2493, 2497, 24A1
4044:24B1 2B DB sub bx,bx
4044:24B3 C3 retn
4044:24B4 loc_347: ; xref 4044:24AB
4044:24B4 2B DA sub bx,dx
4044:24B6 43 inc bx
4044:24B7 C3 retn
sub_91 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:03D2, 10A4
;==========================================================================
4044:24B8 sub_92 proc near
4044:24B8 5B pop bx
4044:24B9 9F lahf ; Load ah from flags
4044:24BA 86 C4 xchg al,ah
4044:24BC 50 push ax
4044:24BD 86 C4 xchg al,ah
4044:24BF 53 push bx
4044:24C0 ,BB 0002 mov bx,offset data_2+1 ; (4044:0002=4)
4044:24C3 03 DC add bx,sp
4044:24C5 8A EF mov ch,bh
4044:24C7 8A CB mov cl,bl
4044:24C9 8A D0 mov dl,al
4044:24CB B6 00 mov dh,0
4044:24CD 03 DA add bx,dx
4044:24CF 43 inc bx
4044:24D0 43 inc bx
4044:24D1 53 push bx
4044:24D2 43 inc bx
4044:24D3 8A 17 mov dl,[bx]
4044:24D5 B6 00 mov dh,0
4044:24D7 43 inc bx
4044:24D8 03 DA add bx,dx
4044:24DA 5A pop dx
4044:24DB C6 07 00 mov byte ptr [bx],0
4044:24DE loc_348: ; xref 4044:252A
4044:24DE ,8A 07 mov al,[bx]
4044:24E0 FE 07 inc byte ptr [bx]
4044:24E2 43 inc bx
4044:24E3 3A 07 cmp al,[bx]
4044:24E5 4B dec bx
4044:24E6 72 03 jc loc_349 ; Jump if carry Set
4044:24E8 E9 0042 jmpn loc_354 ; (252D)
4044:24EB loc_349: ; xref 4044:24E6
4044:24EB 51 push cx
4044:24EC 53 push bx
4044:24ED 43 inc bx
4044:24EE 43 inc bx
4044:24EF 02 C3 add al,bl
4044:24F1 8A D8 mov bl,al
4044:24F3 73 02 jnc loc_350 ; Jump if carry=0
4044:24F5 FE C7 inc bh
4044:24F7 loc_350: ; xref 4044:24F3
4044:24F7 8A 07 mov al,[bx]
4044:24F9 53 push bx
4044:24FA 52 push dx
4044:24FB 8A FD mov bh,ch
4044:24FD 8A D9 mov bl,cl
4044:24FF 43 inc bx
4044:2500 8A 0F mov cl,[bx]
4044:2502 FE C1 inc cl
4044:2504 43 inc bx
4044:2505 BA 0000 mov dx,0
4044:2508 loc_351: ; xref 4044:2512
4044:2508 ,FE C9 dec cl
4044:250A 74 18 jz loc_353 ; Jump if zero
4044:250C 3A 07 cmp al,[bx]
4044:250E 74 04 je loc_352 ; Jump if equal
4044:2510 42 inc dx
4044:2511 43 inc bx
4044:2512 EB F4 jmp short loc_351 ; (2508)
4044:2514 loc_352: ; xref 4044:250E
4044:2514 5B pop bx
4044:2515 53 push bx
4044:2516 43 inc bx
4044:2517 8A C2 mov al,dl
4044:2519 3A 07 cmp al,[bx]
4044:251B B0 20 mov al,20h ; ' '
4044:251D 73 05 jnc loc_353 ; Jump if carry=0
4044:251F 43 inc bx
4044:2520 03 DA add bx,dx
4044:2522 8A 07 mov al,[bx]
4044:2524 loc_353: ; xref 4044:250A, 251D
4044:2524 5A pop dx
4044:2525 5B pop bx
4044:2526 88 07 mov [bx],al
4044:2528 5B pop bx
4044:2529 59 pop cx
4044:252A E9 FFB1 ;* jmp loc_348 ; (24DE)
4044:252A db 0E9h,0B1h,0FFh ; Fixup - byte match
4044:252D loc_354: ; xref 4044:24E8
4044:252D 5A pop dx
4044:252E 8B E3 mov sp,bx
4044:2530 58 pop ax
4044:2531 86 C4 xchg al,ah
4044:2533 9E sahf ; Store ah into flags
4044:2534 87 DA xchg bx,dx
4044:2536 FF E3 jmp bx ;*Register jump
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:0265
4044:2538 sub_93:
4044:2538 87 DA xchg bx,dx
4044:253A E9 008B jmp loc_361 ; (25C8)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:36DE, 37DF
4044:253D sub_94:
4044:253D loc_355: ; xref 4044:2559, 25AA, 25B1, 25C5
4044:253D ,E8 00C3 call sub_96 ; (2603)
4044:2540 8A 17 mov dl,[bx]
4044:2542 E8 00D2 call sub_97 ; (2617)
4044:2545 8A 17 mov dl,[bx]
4044:2547 43 inc bx
4044:2548 8A 37 mov dh,[bx]
4044:254A 8B F2 mov si,dx
4044:254C 8A 04 mov al,[si]
4044:254E 3C 81 cmp al,81h
4044:2550 74 3D je loc_358 ; Jump if equal
4044:2552 3C 80 cmp al,80h
4044:2554 75 05 jne loc_356 ; Jump if not equal
4044:2556 E8 006F call sub_95 ; (25C8)
4044:2559 EB E2 jmp short loc_355 ; (253D)
4044:255B loc_356: ; xref 4044:2554
4044:255B 87 DA xchg bx,dx
4044:255D 43 inc bx
4044:255E 8A 2F mov ch,[bx]
4044:2560 53 push bx
4044:2561 3C 03 cmp al,3
4044:2563 73 1C jae loc_357 ; Jump if above or =
4044:2565 5B pop bx
4044:2566 43 inc bx
4044:2567 8A 0F mov cl,[bx]
4044:2569 53 push bx
4044:256A 3C 02 cmp al,2
4044:256C 75 13 jne loc_357 ; Jump if not equal
4044:256E 5B pop bx
4044:256F 9F lahf ; Load ah from flags
4044:2570 43 inc bx
4044:2571 9E sahf ; Store ah into flags
4044:2572 53 push bx
4044:2573 52 push dx
4044:2574 8A 17 mov dl,[bx]
4044:2576 B6 00 mov dh,0
4044:2578 9F lahf ; Load ah from flags
4044:2579 03 DA add bx,dx
4044:257B D1 DE rcr si,1 ; Rotate thru carry
4044:257D 9E sahf ; Store ah into flags
4044:257E D1 D6 rcl si,1 ; Rotate thru carry
4044:2580 5A pop dx
4044:2581 loc_357: ; xref 4044:2563, 256C
4044:2581 9F lahf ; Load ah from flags
4044:2582 43 inc bx
4044:2583 9E sahf ; Store ah into flags
4044:2584 87 DA xchg bx,dx
4044:2586 88 37 mov [bx],dh
4044:2588 9F lahf ; Load ah from flags
4044:2589 4B dec bx
4044:258A 9E sahf ; Store ah into flags
4044:258B 88 17 mov [bx],dl
4044:258D 5B pop bx
4044:258E C3 retn
4044:258F loc_358: ; xref 4044:2550
4044:258F 42 inc dx
4044:2590 52 push dx
4044:2591 43 inc bx
4044:2592 8A 17 mov dl,[bx]
4044:2594 43 inc bx
4044:2595 8A 37 mov dh,[bx]
4044:2597 4B dec bx
4044:2598 4B dec bx
4044:2599 88 37 mov [bx],dh
4044:259B 4B dec bx
4044:259C 88 17 mov [bx],dl
4044:259E BA 0004 mov dx,4
4044:25A1 03 DA add bx,dx
4044:25A3 8A 07 mov al,[bx]
4044:25A5 0A C0 or al,al ; Zero ?
4044:25A7 59 pop cx
4044:25A8 75 03 jnz loc_359 ; Jump if not zero
4044:25AA E9 FF90 ;* jmp loc_355 ; (253D)
4044:25AA db 0E9h, 90h,0FFh ; Fixup - byte match
4044:25AD loc_359: ; xref 4044:25A8
4044:25AD FE 0F dec byte ptr [bx]
4044:25AF 74 03 jz loc_360 ; Jump if zero
4044:25B1 E9 FF89 ;* jmp loc_355 ; (253D)
4044:25B1 db 0E9h, 89h,0FFh ; Fixup - byte match
4044:25B4 loc_360: ; xref 4044:25AF
4044:25B4 E8 004C call sub_96 ; (2603)
4044:25B7 FE 0F dec byte ptr [bx]
4044:25B9 8A 17 mov dl,[bx]
4044:25BB E8 0059 call sub_97 ; (2617)
4044:25BE 88 0F mov [bx],cl
4044:25C0 9F lahf ; Load ah from flags
4044:25C1 43 inc bx
4044:25C2 9E sahf ; Store ah into flags
4044:25C3 88 2F mov [bx],ch
4044:25C5 E9 FF75 jmp loc_355 ; (253D)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2556
4044:25C8 sub_95:
4044:25C8 loc_361: ; xref 4044:253A
4044:25C8 9F lahf ; Load ah from flags
4044:25C9 42 inc dx
4044:25CA 9E sahf ; Store ah into flags
4044:25CB 8B F2 mov si,dx
4044:25CD 8A 04 mov al,[si]
4044:25CF 9F lahf ; Load ah from flags
4044:25D0 42 inc dx
4044:25D1 9E sahf ; Store ah into flags
4044:25D2 8A C8 mov cl,al
4044:25D4 52 push dx
4044:25D5 E8 002B call sub_96 ; (2603)
4044:25D8 FE 07 inc byte ptr [bx]
4044:25DA 8A 07 mov al,[bx]
4044:25DC 3C 20 cmp al,20h ; ' '
4044:25DE 73 1D jae loc_362 ; Jump if above or =
4044:25E0 8A D0 mov dl,al
4044:25E2 E8 0032 call sub_97 ; (2617)
4044:25E5 5A pop dx
4044:25E6 88 17 mov [bx],dl
4044:25E8 9F lahf ; Load ah from flags
4044:25E9 43 inc bx
4044:25EA 9E sahf ; Store ah into flags
4044:25EB 88 37 mov [bx],dh
4044:25ED 9F lahf ; Load ah from flags
4044:25EE 43 inc bx
4044:25EF 9E sahf ; Store ah into flags
4044:25F0 88 17 mov [bx],dl
4044:25F2 9F lahf ; Load ah from flags
4044:25F3 43 inc bx
4044:25F4 9E sahf ; Store ah into flags
4044:25F5 88 37 mov [bx],dh
4044:25F7 9F lahf ; Load ah from flags
4044:25F8 43 inc bx
4044:25F9 9E sahf ; Store ah into flags
4044:25FA 88 0F mov [bx],cl
4044:25FC C3 retn
4044:25FD loc_362: ; xref 4044:25DE
4044:25FD BB 0786 mov bx,786h
4044:2600 E9 0A38 jmp loc_510 ; (303B)
sub_92 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:253D, 25B4, 25D5
;==========================================================================
4044:2603 sub_96 proc near
4044:2603 8B 1E 3CBA mov bx,word ptr ds:[3CBAh] ; (4044:3CBA=76E8h)
4044:2607 FE CB dec bl
4044:2609 B7 00 mov bh,0
4044:260B BA 3D06 mov dx,3D06h
4044:260E 9F lahf ; Load ah from flags
4044:260F 03 DA add bx,dx
4044:2611 D1 DE rcr si,1 ; Rotate thru carry
4044:2613 9E sahf ; Store ah into flags
4044:2614 D1 D6 rcl si,1 ; Rotate thru carry
4044:2616 C3 retn
sub_96 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:2542, 25BB, 25E2
;==========================================================================
4044:2617 sub_97 proc near
4044:2617 B6 00 mov dh,0
4044:2619 BB 07A3 mov bx,7A3h
4044:261C 9F lahf ; Load ah from flags
4044:261D 03 DA add bx,dx
4044:261F 9E sahf ; Store ah into flags
4044:2620 9F lahf ; Load ah from flags
4044:2621 03 DA add bx,dx
4044:2623 9E sahf ; Store ah into flags
4044:2624 9F lahf ; Load ah from flags
4044:2625 03 DA add bx,dx
4044:2627 9E sahf ; Store ah into flags
4044:2628 9F lahf ; Load ah from flags
4044:2629 03 DA add bx,dx
4044:262B 9E sahf ; Store ah into flags
4044:262C 9F lahf ; Load ah from flags
4044:262D 03 DA add bx,dx
4044:262F D1 DE rcr si,1 ; Rotate thru carry
4044:2631 9E sahf ; Store ah into flags
4044:2632 D1 D6 rcl si,1 ; Rotate thru carry
4044:2634 C3 retn
sub_97 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:0270
;==========================================================================
4044:2635 sub_98 proc near
4044:2635 9F lahf ; Load ah from flags
4044:2636 86 C4 xchg al,ah
4044:2638 50 push ax
4044:2639 86 C4 xchg al,ah
4044:263B E8 10A0 call sub_155 ; (36DE)
4044:263E 89 1E 3D0E mov word ptr ds:[3D0Eh],bx ; (4044:3D0E=368Bh)
4044:2642 5A pop dx
4044:2643 3C 03 cmp al,3
4044:2645 75 45 jne loc_367 ; Jump if not equal
4044:2647 FE C5 inc ch
4044:2649 75 04 jnz loc_363 ; Jump if not zero
4044:264B 8A EE mov ch,dh
4044:264D FE C5 inc ch
4044:264F loc_363: ; xref 4044:2649
4044:264F 8A D6 mov dl,dh
4044:2651 FE C6 inc dh
4044:2653 ,BB 0002 mov bx,offset data_2+1 ; (4044:0002=4)
4044:2656 9F lahf ; Load ah from flags
4044:2657 03 DC add bx,sp
4044:2659 D1 DE rcr si,1 ; Rotate thru carry
4044:265B 9E sahf ; Store ah into flags
4044:265C D1 D6 rcl si,1 ; Rotate thru carry
4044:265E loc_364: ; xref 4044:266E
4044:265E ,FE CD dec ch
4044:2660 74 17 jz loc_366 ; Jump if zero
4044:2662 FE CE dec dh
4044:2664 74 0A jz loc_365 ; Jump if zero
4044:2666 8A 07 mov al,[bx]
4044:2668 9F lahf ; Load ah from flags
4044:2669 43 inc bx
4044:266A 9E sahf ; Store ah into flags
4044:266B E8 113E call sub_159 ; (37AC)
4044:266E EB EE jmp short loc_364 ; (265E)
4044:2670 loc_365: ; xref 4044:2664, 2677
4044:2670 B0 20 mov al,20h ; ' '
4044:2672 E8 1137 call sub_159 ; (37AC)
4044:2675 FE CD dec ch
4044:2677 75 F7 jnz loc_365 ; Jump if not zero
4044:2679 loc_366: ; xref 4044:2660
4044:2679 87 DA xchg bx,dx
4044:267B 5A pop dx
4044:267C B7 00 mov bh,0
4044:267E 9F lahf ; Load ah from flags
4044:267F 03 DC add bx,sp
4044:2681 D1 DE rcr si,1 ; Rotate thru carry
4044:2683 9E sahf ; Store ah into flags
4044:2684 D1 D6 rcl si,1 ; Rotate thru carry
4044:2686 8B E3 mov sp,bx
4044:2688 87 DA xchg bx,dx
4044:268A FF E3 jmp bx ;*Register jump
4044:268C loc_367: ; xref 4044:2645
4044:268C 3C 00 cmp al,0
4044:268E 75 25 jne loc_369 ; Jump if not equal
4044:2690 8A C5 mov al,ch
4044:2692 A2 3D21 mov byte ptr ds:[3D21h],al ; (4044:3D21=0E0h)
4044:2695 8A C1 mov al,cl
4044:2697 FE C1 inc cl
4044:2699 75 02 jnz loc_368 ; Jump if not zero
4044:269B 32 C0 xor al,al ; Zero register
4044:269D loc_368: ; xref 4044:2699
4044:269D A2 3D22 mov byte ptr ds:[3D22h],al ; (4044:3D22=0C3h)
4044:26A0 5B pop bx
4044:26A1 89 1E 0844 mov word ptr ds:[844h],bx ; (4044:0844=0FFEBh)
4044:26A5 E8 0103 call sub_99 ; (27AB)
4044:26A8 32 C0 xor al,al ; Zero register
4044:26AA FE C0 inc al
4044:26AC E8 026D call sub_104 ; (291C)
4044:26AF 8B 1E 0844 mov bx,word ptr ds:[844h] ; (4044:0844=0FFEBh)
4044:26B3 FF E3 jmp bx ;*Register jump
4044:26B5 loc_369: ; xref 4044:268E
4044:26B5 3C 01 cmp al,1
4044:26B7 74 03 je loc_370 ; Jump if equal
4044:26B9 E9 009E jmp loc_378 ; (275A)
4044:26BC loc_370: ; xref 4044:26B7
4044:26BC 8A C5 mov al,ch
4044:26BE 2C 04 sub al,4
4044:26C0 A2 3D21 mov byte ptr ds:[3D21h],al ; (4044:3D21=0E0h)
4044:26C3 FE C8 dec al
4044:26C5 79 03 jns loc_371 ; Jump if not sign
4044:26C7 E9 07B7 jmp loc_491 ; (2E81)
4044:26CA loc_371: ; xref 4044:26C5
4044:26CA 8A E9 mov ch,cl
4044:26CC FE C1 inc cl
4044:26CE 75 0E jnz loc_372 ; Jump if not zero
4044:26D0 8A E9 mov ch,cl
4044:26D2 2C 03 sub al,3
4044:26D4 78 08 js loc_372 ; Jump if sign=1
4044:26D6 B5 06 mov ch,6
4044:26D8 3C 06 cmp al,6
4044:26DA 73 02 jae loc_372 ; Jump if above or =
4044:26DC 8A E8 mov ch,al
4044:26DE loc_372: ; xref 4044:26CE, 26D4, 26DA
4044:26DE A0 3D21 mov al,byte ptr ds:[3D21h] ; (4044:3D21=0E0h)
4044:26E1 FE C8 dec al
4044:26E3 3A C5 cmp al,ch
4044:26E5 73 03 jae loc_373 ; Jump if above or =
4044:26E7 E9 0797 jmp loc_491 ; (2E81)
4044:26EA loc_373: ; xref 4044:26E5
4044:26EA 8A C5 mov al,ch
4044:26EC A2 3D22 mov byte ptr ds:[3D22h],al ; (4044:3D22=0C3h)
4044:26EF 5B pop bx
4044:26F0 89 1E 0844 mov word ptr ds:[844h],bx ; (4044:0844=0FFEBh)
4044:26F4 E8 00B4 call sub_99 ; (27AB)
4044:26F7 ,BB 3D24 mov bx,3D24h ; (4044:3D24=0Ch)
4044:26FA 8A 2F mov ch,[bx]
4044:26FC C6 07 01 mov byte ptr [bx],1
4044:26FF ,BB 3D10 mov bx,3D10h ; (4044:3D10=8Fh)
4044:2702 8A 07 mov al,[bx]
4044:2704 43 inc bx
4044:2705 0A 07 or al,[bx]
4044:2707 74 04 jz loc_374 ; Jump if zero
4044:2709 8A C5 mov al,ch
4044:270B FE C8 dec al
4044:270D loc_374: ; xref 4044:2707
4044:270D A2 3D27 mov byte ptr ds:[3D27h],al ; (4044:3D27=91h)
4044:2710 32 C0 xor al,al ; Zero register
4044:2712 E8 0207 call sub_104 ; (291C)
4044:2715 B0 45 mov al,45h ; 'E'
4044:2717 E8 1092 call sub_159 ; (37AC)
4044:271A A0 3D27 mov al,byte ptr ds:[3D27h] ; (4044:3D27=91h)
4044:271D 0A C0 or al,al ; Zero ?
4044:271F B5 2B mov ch,2Bh ; '+'
4044:2721 79 06 jns loc_375 ; Jump if not sign
4044:2723 B5 2D mov ch,2Dh ; '-'
4044:2725 F6 D0 not al
4044:2727 FE C0 inc al
4044:2729 loc_375: ; xref 4044:2721
4044:2729 9F lahf ; Load ah from flags
4044:272A 86 C4 xchg al,ah
4044:272C 50 push ax
4044:272D 8A C5 mov al,ch
4044:272F E8 107A call sub_159 ; (37AC)
4044:2732 58 pop ax
4044:2733 86 C4 xchg al,ah
4044:2735 B5 00 mov ch,0
4044:2737 loc_376: ; xref 4044:273D
4044:2737 ,2C 0A sub al,0Ah
4044:2739 72 04 jc loc_377 ; Jump if carry Set
4044:273B FE C5 inc ch
4044:273D EB F8 jmp short loc_376 ; (2737)
4044:273F loc_377: ; xref 4044:2739
4044:273F 04 0A add al,0Ah
4044:2741 9F lahf ; Load ah from flags
4044:2742 86 C4 xchg al,ah
4044:2744 50 push ax
4044:2745 8A C5 mov al,ch
4044:2747 04 30 add al,30h ; '0'
4044:2749 E8 1060 call sub_159 ; (37AC)
4044:274C 58 pop ax
4044:274D 86 C4 xchg al,ah
4044:274F 04 30 add al,30h ; '0'
4044:2751 E8 1058 call sub_159 ; (37AC)
4044:2754 8B 1E 0844 mov bx,word ptr ds:[844h] ; (4044:0844=0FFEBh)
4044:2758 FF E3 jmp bx ;*Register jump
4044:275A loc_378: ; xref 4044:26B9
4044:275A 3C 02 cmp al,2
4044:275C 75 4A jne loc_381 ; Jump if not equal
4044:275E 8A C5 mov al,ch
4044:2760 A2 3D21 mov byte ptr ds:[3D21h],al ; (4044:3D21=0E0h)
4044:2763 8A C1 mov al,cl
4044:2765 A2 3D22 mov byte ptr ds:[3D22h],al ; (4044:3D22=0C3h)
4044:2768 5B pop bx
4044:2769 89 1E 0844 mov word ptr ds:[844h],bx ; (4044:0844=0FFEBh)
4044:276D E8 003B call sub_99 ; (27AB)
4044:2770 E8 01F9 call sub_105 ; (296C)
4044:2773 A0 3D21 mov al,byte ptr ds:[3D21h] ; (4044:3D21=0E0h)
4044:2776 ,BB 3D22 mov bx,3D22h ; (4044:3D22=0C3h)
4044:2779 2A 07 sub al,[bx]
4044:277B E8 0173 call sub_103 ; (28F1)
4044:277E E8 0BD2 call sub_144 ; (3353)
4044:2781 8A E8 mov ch,al
4044:2783 FE C5 inc ch
4044:2785 loc_379: ; xref 4044:279E
4044:2785 ,FE CD dec ch
4044:2787 74 17 jz loc_380 ; Jump if zero
4044:2789 ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:278C 9F lahf ; Load ah from flags
4044:278D 03 DC add bx,sp
4044:278F D1 DE rcr si,1 ; Rotate thru carry
4044:2791 9E sahf ; Store ah into flags
4044:2792 D1 D6 rcl si,1 ; Rotate thru carry
4044:2794 8A 07 mov al,[bx]
4044:2796 9F lahf ; Load ah from flags
4044:2797 43 inc bx
4044:2798 9E sahf ; Store ah into flags
4044:2799 8B E3 mov sp,bx
4044:279B E8 100E call sub_159 ; (37AC)
4044:279E EB E5 jmp short loc_379 ; (2785)
4044:27A0 loc_380: ; xref 4044:2787
4044:27A0 8B 1E 0844 mov bx,word ptr ds:[844h] ; (4044:0844=0FFEBh)
4044:27A4 FF E3 jmp bx ;*Register jump
4044:27A6 74 F8 db 74h,0F8h
4044:27A8 loc_381: ; xref 4044:275C
4044:27A8 E9 109E jmp loc_649 ; (3849)
sub_98 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:26A5, 26F4, 276D
;==========================================================================
4044:27AB sub_99 proc near
4044:27AB 32 C0 xor al,al ; Zero register
4044:27AD A2 3D10 mov byte ptr ds:[3D10h],al ; (4044:3D10=8Fh)
4044:27B0 A2 3D25 mov byte ptr ds:[3D25h],al ; (4044:3D25=82h)
4044:27B3 A2 3D28 mov byte ptr ds:[3D28h],al ; (4044:3D28=0Ah)
4044:27B6 FE C0 inc al
4044:27B8 A2 3D20 mov byte ptr ds:[3D20h],al ; (4044:3D20=0D0h)
4044:27BB B1 00 mov cl,0
4044:27BD FE C6 inc dh
4044:27BF ,BB 0002 mov bx,offset data_2+1 ; (4044:0002=4)
4044:27C2 9F lahf ; Load ah from flags
4044:27C3 03 DC add bx,sp
4044:27C5 D1 DE rcr si,1 ; Rotate thru carry
4044:27C7 9E sahf ; Store ah into flags
4044:27C8 D1 D6 rcl si,1 ; Rotate thru carry
4044:27CA loc_382: ; xref 4044:27CF
4044:27CA E8 00D4 call sub_100 ; (28A1)
4044:27CD 3C 20 cmp al,20h ; ' '
4044:27CF 74 F9 je loc_382 ; Jump if equal
4044:27D1 3C 2B cmp al,2Bh ; '+'
4044:27D3 75 05 jne loc_383 ; Jump if not equal
4044:27D5 E8 00C9 call sub_100 ; (28A1)
4044:27D8 EB 0C jmp short loc_384 ; (27E6)
4044:27DA loc_383: ; xref 4044:27D3
4044:27DA 3C 2D cmp al,2Dh ; '-'
4044:27DC 75 08 jne loc_384 ; Jump if not equal
4044:27DE B0 01 mov al,1
4044:27E0 A2 3D25 mov byte ptr ds:[3D25h],al ; (4044:3D25=82h)
4044:27E3 E8 00BB call sub_100 ; (28A1)
4044:27E6 loc_384: ; xref 4044:27D8, 27DC, 27FD
4044:27E6 ,E8 00C7 call sub_101 ; (28B0)
4044:27E9 73 14 jnc loc_387 ; Jump if carry=0
4044:27EB 0A C0 or al,al ; Zero ?
4044:27ED 75 06 jnz loc_385 ; Jump if not zero
4044:27EF FE C1 inc cl
4044:27F1 FE C9 dec cl
4044:27F3 74 05 jz loc_386 ; Jump if zero
4044:27F5 loc_385: ; xref 4044:27ED
4044:27F5 FE C1 inc cl
4044:27F7 E8 00C2 call sub_102 ; (28BC)
4044:27FA loc_386: ; xref 4044:27F3
4044:27FA E8 00A4 call sub_100 ; (28A1)
4044:27FD EB E7 jmp short loc_384 ; (27E6)
4044:27FF loc_387: ; xref 4044:27E9
4044:27FF 3C 2E cmp al,2Eh ; '.'
4044:2801 75 10 jne loc_389 ; Jump if not equal
4044:2803 E8 009B call sub_100 ; (28A1)
4044:2806 loc_388: ; xref 4044:2811
4044:2806 ,E8 00A7 call sub_101 ; (28B0)
4044:2809 73 08 jnc loc_389 ; Jump if carry=0
4044:280B E8 00AE call sub_102 ; (28BC)
4044:280E E8 0090 call sub_100 ; (28A1)
4044:2811 EB F3 jmp short loc_388 ; (2806)
4044:2813 loc_389: ; xref 4044:2801, 2809
4044:2813 3C 65 cmp al,65h ; 'e'
4044:2815 74 04 je loc_390 ; Jump if equal
4044:2817 3C 45 cmp al,45h ; 'E'
4044:2819 75 5E jne loc_396 ; Jump if not equal
4044:281B loc_390: ; xref 4044:2815
4044:281B E8 0083 call sub_100 ; (28A1)
4044:281E B2 00 mov dl,0
4044:2820 3C 2B cmp al,2Bh ; '+'
4044:2822 75 05 jne loc_391 ; Jump if not equal
4044:2824 E8 007A call sub_100 ; (28A1)
4044:2827 EB 09 jmp short loc_392 ; (2832)
4044:2829 loc_391: ; xref 4044:2822
4044:2829 3C 2D cmp al,2Dh ; '-'
4044:282B 75 05 jne loc_392 ; Jump if not equal
4044:282D E8 0071 call sub_100 ; (28A1)
4044:2830 FE C2 inc dl
4044:2832 loc_392: ; xref 4044:2827, 282B
4044:2832 E8 007B call sub_101 ; (28B0)
4044:2835 72 03 jc loc_393 ; Jump if carry Set
4044:2837 E9 0647 jmp loc_491 ; (2E81)
4044:283A loc_393: ; xref 4044:2835
4044:283A 8A E8 mov ch,al
4044:283C E8 0062 call sub_100 ; (28A1)
4044:283F E8 006E call sub_101 ; (28B0)
4044:2842 73 1C jnc loc_394 ; Jump if carry=0
4044:2844 9F lahf ; Load ah from flags
4044:2845 86 C4 xchg al,ah
4044:2847 50 push ax
4044:2848 8A C5 mov al,ch
4044:284A 02 C0 add al,al
4044:284C 8A E8 mov ch,al
4044:284E 02 C0 add al,al
4044:2850 02 C0 add al,al
4044:2852 02 C5 add al,ch
4044:2854 8A E8 mov ch,al
4044:2856 58 pop ax
4044:2857 86 C4 xchg al,ah
4044:2859 02 C5 add al,ch
4044:285B 8A E8 mov ch,al
4044:285D E8 0041 call sub_100 ; (28A1)
4044:2860 loc_394: ; xref 4044:2842
4044:2860 9F lahf ; Load ah from flags
4044:2861 86 C4 xchg al,ah
4044:2863 50 push ax
4044:2864 86 C4 xchg al,ah
4044:2866 FE CA dec dl
4044:2868 75 06 jnz loc_395 ; Jump if not zero
4044:286A 32 C0 xor al,al ; Zero register
4044:286C 2A C5 sub al,ch
4044:286E 8A E8 mov ch,al
4044:2870 loc_395: ; xref 4044:2868
4044:2870 8A C1 mov al,cl
4044:2872 02 C5 add al,ch
4044:2874 8A C8 mov cl,al
4044:2876 58 pop ax
4044:2877 86 C4 xchg al,ah
4044:2879 loc_396: ; xref 4044:2819, 2887
4044:2879 ,0A C0 or al,al ; Zero ?
4044:287B 74 0C jz loc_398 ; Jump if zero
4044:287D 3C 20 cmp al,20h ; ' '
4044:287F 74 03 je loc_397 ; Jump if equal
4044:2881 E9 05FD jmp loc_491 ; (2E81)
4044:2884 loc_397: ; xref 4044:287F
4044:2884 E8 001A call sub_100 ; (28A1)
4044:2887 EB F0 jmp short loc_396 ; (2879)
4044:2889 loc_398: ; xref 4044:287B
4044:2889 5A pop dx
4044:288A 8B E3 mov sp,bx
4044:288C 52 push dx
4044:288D loc_399: ; xref 4044:2899
4044:288D ,A0 3D20 mov al,byte ptr ds:[3D20h] ; (4044:3D20=0D0h)
4044:2890 3C 10 cmp al,10h
4044:2892 73 07 jae loc_400 ; Jump if above or =
4044:2894 32 C0 xor al,al ; Zero register
4044:2896 E8 0023 call sub_102 ; (28BC)
4044:2899 EB F2 jmp short loc_399 ; (288D)
4044:289B loc_400: ; xref 4044:2892
4044:289B 8A C1 mov al,cl
4044:289D A2 3D24 mov byte ptr ds:[3D24h],al ; (4044:3D24=0Ch)
4044:28A0 C3 retn
sub_99 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:27CA, 27D5, 27E3, 27FA, 2803, 280E, 281B
; 2824, 282D, 283C, 285D, 2884
;==========================================================================
4044:28A1 sub_100 proc near
4044:28A1 FE CE dec dh
4044:28A3 74 06 jz loc_401 ; Jump if zero
4044:28A5 8A 07 mov al,[bx]
4044:28A7 9F lahf ; Load ah from flags
4044:28A8 43 inc bx
4044:28A9 9E sahf ; Store ah into flags
4044:28AA C3 retn
4044:28AB loc_401: ; xref 4044:28A3
4044:28AB 8A C6 mov al,dh
4044:28AD FE C6 inc dh
4044:28AF C3 retn
sub_100 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:27E6, 2806, 2832, 283F
;==========================================================================
4044:28B0 sub_101 proc near
4044:28B0 2C 30 sub al,30h ; '0'
4044:28B2 3C 0A cmp al,0Ah
4044:28B4 73 01 jae loc_402 ; Jump if above or =
4044:28B6 C3 retn
4044:28B7 loc_402: ; xref 4044:28B4
4044:28B7 04 30 add al,30h ; '0'
4044:28B9 0A C0 or al,al ; Zero ?
4044:28BB C3 retn
sub_101 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:27F7, 280B, 2896
;==========================================================================
4044:28BC sub_102 proc near
4044:28BC 53 push bx
4044:28BD ,BB 3D28 mov bx,3D28h ; (4044:3D28=0Ah)
4044:28C0 8A D0 mov dl,al
4044:28C2 0A 07 or al,[bx]
4044:28C4 88 07 mov [bx],al
4044:28C6 ,BB 3D20 mov bx,3D20h ; (4044:3D20=0D0h)
4044:28C9 8A 07 mov al,[bx]
4044:28CB 3C 10 cmp al,10h
4044:28CD 73 17 jae loc_403 ; Jump if above or =
4044:28CF FE 07 inc byte ptr [bx]
4044:28D1 52 push dx
4044:28D2 8A D0 mov dl,al
4044:28D4 B6 00 mov dh,0
4044:28D6 ,BB 3D10 mov bx,3D10h ; (4044:3D10=8Fh)
4044:28D9 9F lahf ; Load ah from flags
4044:28DA 03 DA add bx,dx
4044:28DC D1 DE rcr si,1 ; Rotate thru carry
4044:28DE 9E sahf ; Store ah into flags
4044:28DF D1 D6 rcl si,1 ; Rotate thru carry
4044:28E1 5A pop dx
4044:28E2 88 17 mov [bx],dl
4044:28E4 5B pop bx
4044:28E5 C3 retn
4044:28E6 loc_403: ; xref 4044:28CD
4044:28E6 5B pop bx
4044:28E7 FE C2 inc dl
4044:28E9 FE CA dec dl
4044:28EB 75 01 jnz loc_404 ; Jump if not zero
4044:28ED C3 retn
4044:28EE loc_404: ; xref 4044:28EB
4044:28EE E9 0590 jmp loc_491 ; (2E81)
sub_102 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:277B, 2956
;==========================================================================
4044:28F1 sub_103 proc near
4044:28F1 0A C0 or al,al ; Zero ?
4044:28F3 79 03 jns loc_405 ; Jump if not sign
4044:28F5 E9 0589 jmp loc_491 ; (2E81)
4044:28F8 loc_405: ; xref 4044:28F3
4044:28F8 A2 3D23 mov byte ptr ds:[3D23h],al ; (4044:3D23=0EBh)
4044:28FB 8A E8 mov ch,al
4044:28FD A0 3D24 mov al,byte ptr ds:[3D24h] ; (4044:3D24=0Ch)
4044:2900 2A C5 sub al,ch
4044:2902 FE C0 inc al
4044:2904 A2 3D20 mov byte ptr ds:[3D20h],al ; (4044:3D20=0D0h)
4044:2907 FE C8 dec al
4044:2909 79 01 jns loc_406 ; Jump if not sign
4044:290B C3 retn
4044:290C loc_406: ; xref 4044:2909
4044:290C 74 03 jz loc_407 ; Jump if zero
4044:290E E9 0570 jmp loc_491 ; (2E81)
4044:2911 loc_407: ; xref 4044:290C
4044:2911 A0 3D10 mov al,byte ptr ds:[3D10h] ; (4044:3D10=8Fh)
4044:2914 0A C0 or al,al ; Zero ?
4044:2916 74 03 jz loc_ret_408 ; Jump if zero
4044:2918 E9 0566 jmp loc_491 ; (2E81)
4044:291B loc_ret_408: ; xref 4044:2916
4044:291B C3 retn
sub_103 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:26AC, 2712
;==========================================================================
4044:291C sub_104 proc near
4044:291C 9F lahf ; Load ah from flags
4044:291D 86 C4 xchg al,ah
4044:291F 50 push ax
4044:2920 E8 0049 call sub_105 ; (296C)
4044:2923 58 pop ax
4044:2924 86 C4 xchg al,ah
4044:2926 9E sahf ; Store ah into flags
4044:2927 75 16 jnz loc_409 ; Jump if not zero
4044:2929 A0 3D10 mov al,byte ptr ds:[3D10h] ; (4044:3D10=8Fh)
4044:292C 0A C0 or al,al ; Zero ?
4044:292E 74 0F jz loc_409 ; Jump if zero
4044:2930 ,BB 3D24 mov bx,3D24h ; (4044:3D24=0Ch)
4044:2933 FE 0F dec byte ptr [bx]
4044:2935 ,BB 3D27 mov bx,3D27h ; (4044:3D27=91h)
4044:2938 FE 07 inc byte ptr [bx]
4044:293A 75 03 jnz loc_409 ; Jump if not zero
4044:293C E9 0542 jmp loc_491 ; (2E81)
4044:293F loc_409: ; xref 4044:2927, 292E, 293A
4044:293F A0 3D22 mov al,byte ptr ds:[3D22h] ; (4044:3D22=0C3h)
4044:2942 8A E8 mov ch,al
4044:2944 A0 3D21 mov al,byte ptr ds:[3D21h] ; (4044:3D21=0E0h)
4044:2947 FE C5 inc ch
4044:2949 FE CD dec ch
4044:294B 74 04 jz loc_410 ; Jump if zero
4044:294D FE C5 inc ch
4044:294F 2A C5 sub al,ch
4044:2951 loc_410: ; xref 4044:294B
4044:2951 ,BB 3D25 mov bx,3D25h ; (4044:3D25=82h)
4044:2954 2A 07 sub al,[bx]
4044:2956 E8 FF98 call sub_103 ; (28F1)
4044:2959 B0 01 mov al,1
4044:295B A2 3D26 mov byte ptr ds:[3D26h],al ; (4044:3D26=3Eh)
4044:295E loc_411: ; xref 4044:2969
4044:295E E8 003A call sub_106 ; (299B)
4044:2961 E8 0E48 call sub_159 ; (37AC)
4044:2964 ,BB 3D21 mov bx,3D21h ; (4044:3D21=0E0h)
4044:2967 FE 0F dec byte ptr [bx]
4044:2969 75 F3 jnz loc_411 ; Jump if not zero
4044:296B C3 retn
sub_104 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:2770, 2920
;==========================================================================
4044:296C sub_105 proc near
4044:296C A0 3D22 mov al,byte ptr ds:[3D22h] ; (4044:3D22=0C3h)
4044:296F ,BB 3D24 mov bx,3D24h ; (4044:3D24=0Ch)
4044:2972 02 07 add al,[bx]
4044:2974 FE C0 inc al
4044:2976 79 01 jns loc_412 ; Jump if not sign
4044:2978 C3 retn
4044:2979 loc_412: ; xref 4044:2976
4044:2979 3C 10 cmp al,10h
4044:297B 72 01 jb loc_413 ; Jump if below
4044:297D C3 retn
4044:297E loc_413: ; xref 4044:297B
4044:297E 8A D0 mov dl,al
4044:2980 B6 00 mov dh,0
4044:2982 ,BB 3D10 mov bx,3D10h ; (4044:3D10=8Fh)
4044:2985 03 DA add bx,dx
4044:2987 B0 05 mov al,5
4044:2989 loc_414: ; xref 4044:2999
4044:2989 ,02 07 add al,[bx]
4044:298B 88 07 mov [bx],al
4044:298D 3C 0A cmp al,0Ah
4044:298F 73 01 jae loc_415 ; Jump if above or =
4044:2991 C3 retn
4044:2992 loc_415: ; xref 4044:298F
4044:2992 2C 0A sub al,0Ah
4044:2994 88 07 mov [bx],al
4044:2996 B0 01 mov al,1
4044:2998 4B dec bx
4044:2999 EB EE jmp short loc_414 ; (2989)
sub_105 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:295E
;==========================================================================
4044:299B sub_106 proc near
4044:299B ,BB 3D23 mov bx,3D23h ; (4044:3D23=0EBh)
4044:299E 8A 07 mov al,[bx]
4044:29A0 FE 0F dec byte ptr [bx]
4044:29A2 0A C0 or al,al ; Zero ?
4044:29A4 B0 2E mov al,2Eh ; '.'
4044:29A6 75 01 jnz loc_416 ; Jump if not zero
4044:29A8 C3 retn
4044:29A9 loc_416: ; xref 4044:29A6
4044:29A9 E8 0039 call sub_107 ; (29E5)
4044:29AC 8A E8 mov ch,al
4044:29AE A0 3D26 mov al,byte ptr ds:[3D26h] ; (4044:3D26=3Eh)
4044:29B1 0A C0 or al,al ; Zero ?
4044:29B3 8A C5 mov al,ch
4044:29B5 75 01 jnz loc_417 ; Jump if not zero
4044:29B7 C3 retn
4044:29B8 loc_417: ; xref 4044:29B5
4044:29B8 3C 30 cmp al,30h ; '0'
4044:29BA 75 0A jne loc_418 ; Jump if not equal
4044:29BC A0 3D23 mov al,byte ptr ds:[3D23h] ; (4044:3D23=0EBh)
4044:29BF 0A C0 or al,al ; Zero ?
4044:29C1 B0 20 mov al,20h ; ' '
4044:29C3 74 01 jz loc_418 ; Jump if zero
4044:29C5 C3 retn
4044:29C6 loc_418: ; xref 4044:29BA, 29C3
4044:29C6 ,BB 3D25 mov bx,3D25h ; (4044:3D25=82h)
4044:29C9 8A 07 mov al,[bx]
4044:29CB 0A C0 or al,al ; Zero ?
4044:29CD 74 0E jz loc_419 ; Jump if zero
4044:29CF FE 0F dec byte ptr [bx]
4044:29D1 ,BB 3D23 mov bx,3D23h ; (4044:3D23=0EBh)
4044:29D4 FE 07 inc byte ptr [bx]
4044:29D6 ,BB 3D20 mov bx,3D20h ; (4044:3D20=0D0h)
4044:29D9 FE 0F dec byte ptr [bx]
4044:29DB B5 2D mov ch,2Dh ; '-'
4044:29DD loc_419: ; xref 4044:29CD
4044:29DD 32 C0 xor al,al ; Zero register
4044:29DF A2 3D26 mov byte ptr ds:[3D26h],al ; (4044:3D26=3Eh)
4044:29E2 8A C5 mov al,ch
4044:29E4 C3 retn
sub_106 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:29A9, 33D1
;==========================================================================
4044:29E5 sub_107 proc near
4044:29E5 ,BB 3D20 mov bx,3D20h ; (4044:3D20=0D0h)
4044:29E8 8A 17 mov dl,[bx]
4044:29EA B6 00 mov dh,0
4044:29EC FE 07 inc byte ptr [bx]
4044:29EE 8A C2 mov al,dl
4044:29F0 0A C0 or al,al ; Zero ?
4044:29F2 78 0E js loc_420 ; Jump if sign=1
4044:29F4 3C 10 cmp al,10h
4044:29F6 73 0A jae loc_420 ; Jump if above or =
4044:29F8 ,BB 3D10 mov bx,3D10h ; (4044:3D10=8Fh)
4044:29FB 03 DA add bx,dx
4044:29FD 8A 07 mov al,[bx]
4044:29FF 04 30 add al,30h ; '0'
4044:2A01 C3 retn
4044:2A02 loc_420: ; xref 4044:29F2, 29F6
4044:2A02 B0 30 mov al,30h ; '0'
4044:2A04 C3 retn
sub_107 endp
;* No entry point to code
4044:2A05 E8 0DD7 call sub_161 ; (37DF)
4044:2A08 3C 00 cmp al,0
4044:2A0A 75 0E jne loc_421 ; Jump if not equal
4044:2A0C 8A C1 mov al,cl
4044:2A0E FE C0 inc al
4044:2A10 B0 01 mov al,1
4044:2A12 75 11 jnz loc_423 ; Jump if not zero
4044:2A14 FE C8 dec al
4044:2A16 FE C1 inc cl
4044:2A18 EB 0B jmp short loc_423 ; (2A25)
4044:2A1A loc_421: ; xref 4044:2A0A
4044:2A1A 3C 01 cmp al,1
4044:2A1C 74 03 je loc_422 ; Jump if equal
4044:2A1E E9 00DB jmp loc_435 ; (2AFC)
4044:2A21 loc_422: ; xref 4044:2A1C
4044:2A21 32 C0 xor al,al ; Zero register
4044:2A23 8A C8 mov cl,al
4044:2A25 loc_423: ; xref 4044:2A12, 2A18
4044:2A25 02 C5 add al,ch
4044:2A27 02 C1 add al,cl
4044:2A29 73 03 jnc loc_424 ; Jump if carry=0
4044:2A2B E9 0E1B jmp loc_649 ; (3849)
4044:2A2E loc_424: ; xref 4044:2A29
4044:2A2E 8A D8 mov bl,al
4044:2A30 9F lahf ; Load ah from flags
4044:2A31 86 C4 xchg al,ah
4044:2A33 50 push ax
4044:2A34 86 C4 xchg al,ah
4044:2A36 E8 0253 call sub_110 ; (2C8C)
4044:2A39 43 inc bx
4044:2A3A 43 inc bx
4044:2A3B 43 inc bx
4044:2A3C 43 inc bx
4044:2A3D 58 pop ax
4044:2A3E 86 C4 xchg al,ah
4044:2A40 9E sahf ; Store ah into flags
4044:2A41 5A pop dx
4044:2A42 8B E3 mov sp,bx
4044:2A44 52 push dx
4044:2A45 9F lahf ; Load ah from flags
4044:2A46 86 C4 xchg al,ah
4044:2A48 50 push ax
4044:2A49 86 C4 xchg al,ah
4044:2A4B 8A F0 mov dh,al
4044:2A4D E8 021A call sub_108 ; (2C6A)
4044:2A50 75 08 jnz loc_425 ; Jump if not zero
4044:2A52 C6 07 30 mov byte ptr [bx],30h ; '0'
4044:2A55 43 inc bx
4044:2A56 FE CE dec dh
4044:2A58 EB 26 jmp short loc_429 ; (2A80)
4044:2A5A loc_425: ; xref 4044:2A50, 2A7E
4044:2A5A 3C 45 cmp al,45h ; 'E'
4044:2A5C 75 02 jne loc_426 ; Jump if not equal
4044:2A5E B0 65 mov al,65h ; 'e'
4044:2A60 loc_426: ; xref 4044:2A5C
4044:2A60 88 07 mov [bx],al
4044:2A62 43 inc bx
4044:2A63 FE CE dec dh
4044:2A65 3C 2E cmp al,2Eh ; '.'
4044:2A67 75 02 jne loc_427 ; Jump if not equal
4044:2A69 B1 00 mov cl,0
4044:2A6B loc_427: ; xref 4044:2A67
4044:2A6B 3C 65 cmp al,65h ; 'e'
4044:2A6D 75 02 jne loc_428 ; Jump if not equal
4044:2A6F B1 00 mov cl,0
4044:2A71 loc_428: ; xref 4044:2A6D
4044:2A71 8A C5 mov al,ch
4044:2A73 0A C0 or al,al ; Zero ?
4044:2A75 74 09 jz loc_429 ; Jump if zero
4044:2A77 FE CD dec ch
4044:2A79 E8 022B call sub_111 ; (2CA7)
4044:2A7C 3C 20 cmp al,20h ; ' '
4044:2A7E 75 DA jne loc_425 ; Jump if not equal
4044:2A80 loc_429: ; xref 4044:2A58, 2A75
4044:2A80 E8 01F6 call sub_109 ; (2C79)
4044:2A83 58 pop ax
4044:2A84 86 C4 xchg al,ah
4044:2A86 2A C6 sub al,dh
4044:2A88 8A E8 mov ch,al
4044:2A8A 53 push bx
4044:2A8B 8A D6 mov dl,dh
4044:2A8D B6 00 mov dh,0
4044:2A8F 9F lahf ; Load ah from flags
4044:2A90 03 DA add bx,dx
4044:2A92 9E sahf ; Store ah into flags
4044:2A93 5A pop dx
4044:2A94 51 push cx
4044:2A95 loc_430: ; xref 4044:2AE9, 2AEF
4044:2A95 9F lahf ; Load ah from flags
4044:2A96 4A dec dx
4044:2A97 9E sahf ; Store ah into flags
4044:2A98 9F lahf ; Load ah from flags
4044:2A99 4B dec bx
4044:2A9A 9E sahf ; Store ah into flags
4044:2A9B 8A C1 mov al,cl
4044:2A9D FE C8 dec al
4044:2A9F 78 26 js loc_432 ; Jump if sign=1
4044:2AA1 8A C5 mov al,ch
4044:2AA3 FE C8 dec al
4044:2AA5 78 0F js loc_431 ; Jump if sign=1
4044:2AA7 8B F2 mov si,dx
4044:2AA9 8A 04 mov al,[si]
4044:2AAB 2C 30 sub al,30h ; '0'
4044:2AAD 3C 0A cmp al,0Ah
4044:2AAF 72 16 jb loc_432 ; Jump if below
4044:2AB1 FE C5 inc ch
4044:2AB3 9F lahf ; Load ah from flags
4044:2AB4 42 inc dx
4044:2AB5 9E sahf ; Store ah into flags
4044:2AB6 loc_431: ; xref 4044:2AA5
4044:2AB6 C6 07 30 mov byte ptr [bx],30h ; '0'
4044:2AB9 8B EC mov bp,sp
4044:2ABB 87 5E 00 xchg [bp],bx
4044:2ABE FE C7 inc bh
4044:2AC0 8B EC mov bp,sp
4044:2AC2 87 5E 00 xchg [bp],bx
4044:2AC5 EB 06 jmp short loc_433 ; (2ACD)
4044:2AC7 loc_432: ; xref 4044:2A9F, 2AAF
4044:2AC7 8B F2 mov si,dx
4044:2AC9 8A 04 mov al,[si]
4044:2ACB 88 07 mov [bx],al
4044:2ACD loc_433: ; xref 4044:2AC5
4044:2ACD FE C9 dec cl
4044:2ACF 75 12 jnz loc_434 ; Jump if not zero
4044:2AD1 9F lahf ; Load ah from flags
4044:2AD2 4B dec bx
4044:2AD3 9E sahf ; Store ah into flags
4044:2AD4 C6 07 2E mov byte ptr [bx],2Eh ; '.'
4044:2AD7 8B EC mov bp,sp
4044:2AD9 87 5E 00 xchg [bp],bx
4044:2ADC FE C7 inc bh
4044:2ADE 8B EC mov bp,sp
4044:2AE0 87 5E 00 xchg [bp],bx
4044:2AE3 loc_434: ; xref 4044:2ACF
4044:2AE3 FE CD dec ch
4044:2AE5 8A C1 mov al,cl
4044:2AE7 FE C8 dec al
4044:2AE9 79 AA jns loc_430 ; Jump if not sign
4044:2AEB 8A C5 mov al,ch
4044:2AED FE C8 dec al
4044:2AEF 79 A4 jns loc_430 ; Jump if not sign
4044:2AF1 58 pop ax
4044:2AF2 86 C4 xchg al,ah
4044:2AF4 9E sahf ; Store ah into flags
4044:2AF5 5A pop dx
4044:2AF6 8B E3 mov sp,bx
4044:2AF8 87 DA xchg bx,dx
4044:2AFA FF E3 jmp bx ;*Register jump
4044:2AFC loc_435: ; xref 4044:2A1E
4044:2AFC 3C 03 cmp al,3
4044:2AFE 74 03 je loc_436 ; Jump if equal
4044:2B00 E9 009F jmp loc_447 ; (2BA2)
4044:2B03 loc_436: ; xref 4044:2AFE
4044:2B03 5A pop dx
4044:2B04 8A C5 mov al,ch
4044:2B06 FE C0 inc al
4044:2B08 75 61 jnz loc_443 ; Jump if not zero
4044:2B0A BB FF00 mov bx,0FF00h
4044:2B0D 9F lahf ; Load ah from flags
4044:2B0E 03 DC add bx,sp
4044:2B10 D1 DE rcr si,1 ; Rotate thru carry
4044:2B12 9E sahf ; Store ah into flags
4044:2B13 D1 D6 rcl si,1 ; Rotate thru carry
4044:2B15 8B E3 mov sp,bx
4044:2B17 B9 00FF mov cx,0FFh
4044:2B1A E8 01A2 call sub_112 ; (2CBF)
4044:2B1D 3C 0A cmp al,0Ah
4044:2B1F loc_437: ; xref 4044:2B3C
4044:2B1F ,75 03 jne loc_438 ; Jump if not equal
4044:2B21 E8 019B call sub_112 ; (2CBF)
4044:2B24 loc_438: ; xref 4044:2B1F
4044:2B24 3C 0D cmp al,0Dh
4044:2B26 74 16 je loc_440 ; Jump if equal
4044:2B28 3C 0A cmp al,0Ah
4044:2B2A 74 12 je loc_440 ; Jump if equal
4044:2B2C 88 07 mov [bx],al
4044:2B2E 9F lahf ; Load ah from flags
4044:2B2F 43 inc bx
4044:2B30 9E sahf ; Store ah into flags
4044:2B31 FE C5 inc ch
4044:2B33 FE C9 dec cl
4044:2B35 75 03 jnz loc_439 ; Jump if not zero
4044:2B37 E9 0347 jmp loc_491 ; (2E81)
4044:2B3A loc_439: ; xref 4044:2B35
4044:2B3A 32 C0 xor al,al ; Zero register
4044:2B3C EB E1 jmp short loc_437 ; (2B1F)
4044:2B3E loc_440: ; xref 4044:2B26, 2B2A
4044:2B3E 8A CD mov cl,ch
4044:2B40 FE C1 inc cl
4044:2B42 87 DA xchg bx,dx
4044:2B44 53 push bx
4044:2B45 ,BB 0102 mov bx,102h ; (4044:0102=6)
4044:2B48 9F lahf ; Load ah from flags
4044:2B49 03 DC add bx,sp
4044:2B4B D1 DE rcr si,1 ; Rotate thru carry
4044:2B4D 9E sahf ; Store ah into flags
4044:2B4E D1 D6 rcl si,1 ; Rotate thru carry
4044:2B50 loc_441: ; xref 4044:2B60
4044:2B50 ,FE C9 dec cl
4044:2B52 74 0E jz loc_442 ; Jump if zero
4044:2B54 9F lahf ; Load ah from flags
4044:2B55 4B dec bx
4044:2B56 9E sahf ; Store ah into flags
4044:2B57 9F lahf ; Load ah from flags
4044:2B58 4A dec dx
4044:2B59 9E sahf ; Store ah into flags
4044:2B5A 8B F2 mov si,dx
4044:2B5C 8A 04 mov al,[si]
4044:2B5E 88 07 mov [bx],al
4044:2B60 EB EE jmp short loc_441 ; (2B50)
4044:2B62 loc_442: ; xref 4044:2B52
4044:2B62 5A pop dx
4044:2B63 8B E3 mov sp,bx
4044:2B65 87 DA xchg bx,dx
4044:2B67 8A C5 mov al,ch
4044:2B69 FF E3 jmp bx ;*Register jump
4044:2B6B loc_443: ; xref 4044:2B08
4044:2B6B 8A C8 mov cl,al
4044:2B6D 32 C0 xor al,al ; Zero register
4044:2B6F 2A C5 sub al,ch
4044:2B71 8A D8 mov bl,al
4044:2B73 B0 00 mov al,0
4044:2B75 1A C0 sbb al,al
4044:2B77 8A F8 mov bh,al
4044:2B79 9F lahf ; Load ah from flags
4044:2B7A 03 DC add bx,sp
4044:2B7C D1 DE rcr si,1 ; Rotate thru carry
4044:2B7E 9E sahf ; Store ah into flags
4044:2B7F D1 D6 rcl si,1 ; Rotate thru carry
4044:2B81 8B E3 mov sp,bx
4044:2B83 52 push dx
4044:2B84 loc_444: ; xref 4044:2BA0
4044:2B84 ,8A C5 mov al,ch
4044:2B86 FE C9 dec cl
4044:2B88 75 01 jnz loc_445 ; Jump if not zero
4044:2B8A C3 retn
4044:2B8B loc_445: ; xref 4044:2B88, 2B95, 2B99
4044:2B8B E8 0131 call sub_112 ; (2CBF)
4044:2B8E 75 03 jnz loc_446 ; Jump if not zero
4044:2B90 E9 02EE jmp loc_491 ; (2E81)
4044:2B93 loc_446: ; xref 4044:2B8E
4044:2B93 3C 0D cmp al,0Dh
4044:2B95 74 F4 je loc_445 ; Jump if equal
4044:2B97 3C 0A cmp al,0Ah
4044:2B99 74 F0 je loc_445 ; Jump if equal
4044:2B9B 88 07 mov [bx],al
4044:2B9D 9F lahf ; Load ah from flags
4044:2B9E 43 inc bx
4044:2B9F 9E sahf ; Store ah into flags
4044:2BA0 EB E2 jmp short loc_444 ; (2B84)
4044:2BA2 loc_447: ; xref 4044:2B00
4044:2BA2 2C 04 sub al,4
4044:2BA4 73 03 jnc loc_448 ; Jump if carry=0
4044:2BA6 E9 0CA0 jmp loc_649 ; (3849)
4044:2BA9 loc_448: ; xref 4044:2BA4
4044:2BA9 FE C8 dec al
4044:2BAB 79 02 jns loc_449 ; Jump if not sign
4044:2BAD FE C0 inc al
4044:2BAF loc_449: ; xref 4044:2BAB
4044:2BAF 3C 04 cmp al,4
4044:2BB1 72 03 jb loc_450 ; Jump if below
4044:2BB3 E9 0C93 jmp loc_649 ; (3849)
4044:2BB6 loc_450: ; xref 4044:2BB1
4044:2BB6 FE C0 inc al
4044:2BB8 8A D0 mov dl,al
4044:2BBA FE C5 inc ch
4044:2BBC 75 03 jnz loc_451 ; Jump if not zero
4044:2BBE E9 0C88 jmp loc_649 ; (3849)
4044:2BC1 loc_451: ; xref 4044:2BBC
4044:2BC1 FE CD dec ch
4044:2BC3 8A CA mov cl,dl
4044:2BC5 32 C0 xor al,al ; Zero register
4044:2BC7 loc_452: ; xref 4044:2BD0
4044:2BC7 02 C5 add al,ch
4044:2BC9 73 03 jnc loc_453 ; Jump if carry=0
4044:2BCB E9 0C7B jmp loc_649 ; (3849)
4044:2BCE loc_453: ; xref 4044:2BC9
4044:2BCE FE C9 dec cl
4044:2BD0 75 F5 jnz loc_452 ; Jump if not zero
4044:2BD2 8A D8 mov bl,al
4044:2BD4 8A F0 mov dh,al
4044:2BD6 E8 00B3 call sub_110 ; (2C8C)
4044:2BD9 43 inc bx
4044:2BDA 43 inc bx
4044:2BDB 5D pop bp
4044:2BDC 8B E3 mov sp,bx
4044:2BDE 55 push bp
4044:2BDF 52 push dx
4044:2BE0 E8 0087 call sub_108 ; (2C6A)
4044:2BE3 74 55 jz loc_459 ; Jump if zero
4044:2BE5 loc_454: ; xref 4044:2C35
4044:2BE5 8A CA mov cl,dl
4044:2BE7 2C 30 sub al,30h ; '0'
4044:2BE9 73 03 jnc loc_455 ; Jump if carry=0
4044:2BEB E9 0293 jmp loc_491 ; (2E81)
4044:2BEE loc_455: ; xref 4044:2BE9
4044:2BEE 3C 0A cmp al,0Ah
4044:2BF0 72 0D jb loc_456 ; Jump if below
4044:2BF2 04 30 add al,30h ; '0'
4044:2BF4 24 5F and al,5Fh ; '_'
4044:2BF6 04 C9 add al,0C9h
4044:2BF8 3C 10 cmp al,10h
4044:2BFA 72 03 jb loc_456 ; Jump if below
4044:2BFC E9 0282 jmp loc_491 ; (2E81)
4044:2BFF loc_456: ; xref 4044:2BF0, 2BFA, 2C0B
4044:2BFF D0 C8 ror al,1 ; Rotate
4044:2C01 9F lahf ; Load ah from flags
4044:2C02 86 C4 xchg al,ah
4044:2C04 50 push ax
4044:2C05 86 C4 xchg al,ah
4044:2C07 24 7F and al,7Fh
4044:2C09 FE C9 dec cl
4044:2C0B 75 F2 jnz loc_456 ; Jump if not zero
4044:2C0D 0A C0 or al,al ; Zero ?
4044:2C0F 74 03 jz loc_457 ; Jump if zero
4044:2C11 E9 026D jmp loc_491 ; (2E81)
4044:2C14 loc_457: ; xref 4044:2C0F
4044:2C14 8A CA mov cl,dl
4044:2C16 loc_458: ; xref 4044:2C26
4044:2C16 58 pop ax
4044:2C17 86 C4 xchg al,ah
4044:2C19 D0 C0 rol al,1 ; Rotate
4044:2C1B 24 01 and al,1
4044:2C1D 04 30 add al,30h ; '0'
4044:2C1F 88 07 mov [bx],al
4044:2C21 43 inc bx
4044:2C22 FE CE dec dh
4044:2C24 FE C9 dec cl
4044:2C26 75 EE jnz loc_458 ; Jump if not zero
4044:2C28 8A C5 mov al,ch
4044:2C2A 0A C0 or al,al ; Zero ?
4044:2C2C 74 0C jz loc_459 ; Jump if zero
4044:2C2E FE CD dec ch
4044:2C30 E8 0074 call sub_111 ; (2CA7)
4044:2C33 3C 20 cmp al,20h ; ' '
4044:2C35 75 AE jne loc_454 ; Jump if not equal
4044:2C37 E8 003F call sub_109 ; (2C79)
4044:2C3A loc_459: ; xref 4044:2BE3, 2C2C
4044:2C3A 58 pop ax
4044:2C3B 86 C4 xchg al,ah
4044:2C3D 2A C6 sub al,dh
4044:2C3F 9F lahf ; Load ah from flags
4044:2C40 86 C4 xchg al,ah
4044:2C42 50 push ax
4044:2C43 86 C4 xchg al,ah
4044:2C45 8A E8 mov ch,al
4044:2C47 53 push bx
4044:2C48 8A D6 mov dl,dh
4044:2C4A B6 00 mov dh,0
4044:2C4C 03 DA add bx,dx
4044:2C4E 5A pop dx
4044:2C4F FE C5 inc ch
4044:2C51 loc_460: ; xref 4044:2C5D
4044:2C51 ,FE CD dec ch
4044:2C53 74 0A jz loc_461 ; Jump if zero
4044:2C55 4A dec dx
4044:2C56 4B dec bx
4044:2C57 8B F2 mov si,dx
4044:2C59 8A 04 mov al,[si]
4044:2C5B 88 07 mov [bx],al
4044:2C5D EB F2 jmp short loc_460 ; (2C51)
4044:2C5F loc_461: ; xref 4044:2C53
4044:2C5F 58 pop ax
4044:2C60 86 C4 xchg al,ah
4044:2C62 9E sahf ; Store ah into flags
4044:2C63 5A pop dx
4044:2C64 8B E3 mov sp,bx
4044:2C66 87 DA xchg bx,dx
4044:2C68 FF E3 jmp bx ;*Register jump
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:2A4D, 2BE0
;==========================================================================
4044:2C6A sub_108 proc near
4044:2C6A loc_462: ; xref 4044:2C76
4044:2C6A 8A C5 mov al,ch
4044:2C6C 0A C0 or al,al ; Zero ?
4044:2C6E 75 01 jnz loc_463 ; Jump if not zero
4044:2C70 C3 retn
4044:2C71 loc_463: ; xref 4044:2C6E
4044:2C71 FE CD dec ch
4044:2C73 E8 0031 call sub_111 ; (2CA7)
4044:2C76 74 F2 jz loc_462 ; Jump if zero
4044:2C78 C3 retn
sub_108 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:2A80, 2C37
;==========================================================================
4044:2C79 sub_109 proc near
4044:2C79 loc_464: ; xref 4044:2C8A
4044:2C79 ,8A C5 mov al,ch
4044:2C7B 0A C0 or al,al ; Zero ?
4044:2C7D 75 01 jnz loc_465 ; Jump if not zero
4044:2C7F C3 retn
4044:2C80 loc_465: ; xref 4044:2C7D
4044:2C80 FE CD dec ch
4044:2C82 E8 0022 call sub_111 ; (2CA7)
4044:2C85 74 03 jz loc_466 ; Jump if zero
4044:2C87 E9 01F7 jmp loc_491 ; (2E81)
4044:2C8A loc_466: ; xref 4044:2C85
4044:2C8A EB ED jmp short loc_464 ; (2C79)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2A36, 2BD6
4044:2C8C sub_110:
4044:2C8C 32 C0 xor al,al ; Zero register
4044:2C8E 2A C3 sub al,bl
4044:2C90 8A D8 mov bl,al
4044:2C92 B0 00 mov al,0
4044:2C94 1A C0 sbb al,al
4044:2C96 8A F8 mov bh,al
4044:2C98 9F lahf ; Load ah from flags
4044:2C99 03 DC add bx,sp
4044:2C9B D1 DE rcr si,1 ; Rotate thru carry
4044:2C9D 9E sahf ; Store ah into flags
4044:2C9E D1 D6 rcl si,1 ; Rotate thru carry
4044:2CA0 9F lahf ; Load ah from flags
4044:2CA1 43 inc bx
4044:2CA2 9E sahf ; Store ah into flags
4044:2CA3 9F lahf ; Load ah from flags
4044:2CA4 43 inc bx
4044:2CA5 9E sahf ; Store ah into flags
4044:2CA6 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2A79, 2C30, 2C73, 2C82
4044:2CA7 sub_111:
4044:2CA7 loc_467: ; xref 4044:2CB1, 2CB5
4044:2CA7 E8 0015 call sub_112 ; (2CBF)
4044:2CAA 75 03 jnz loc_468 ; Jump if not zero
4044:2CAC E9 01D2 jmp loc_491 ; (2E81)
4044:2CAF loc_468: ; xref 4044:2CAA
4044:2CAF 3C 0D cmp al,0Dh
4044:2CB1 74 F4 je loc_467 ; Jump if equal
4044:2CB3 3C 0A cmp al,0Ah
4044:2CB5 74 F0 je loc_467 ; Jump if equal
4044:2CB7 3C 20 cmp al,20h ; ' '
4044:2CB9 73 03 jae loc_ret_469 ; Jump if above or =
4044:2CBB E9 01C3 jmp loc_491 ; (2E81)
4044:2CBE loc_ret_469: ; xref 4044:2CB9
4044:2CBE C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2B1A, 2B21, 2B8B, 2CA7
4044:2CBF sub_112:
4044:2CBF 51 push cx
4044:2CC0 52 push dx
4044:2CC1 53 push bx
4044:2CC2 E8 0D21 call sub_166 ; (39E6)
4044:2CC5 3C 1A cmp al,1Ah
4044:2CC7 75 0A jne loc_470 ; Jump if not equal
4044:2CC9 BB 0846 mov bx,846h
4044:2CCC E8 036C call sub_124 ; (303B)
4044:2CCF B0 0D mov al,0Dh
4044:2CD1 0A C0 or al,al ; Zero ?
4044:2CD3 loc_470: ; xref 4044:2CC7
4044:2CD3 5B pop bx
4044:2CD4 5A pop dx
4044:2CD5 59 pop cx
4044:2CD6 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:028D, 0382, 0EF8, 1076
4044:2CD7 sub_113:
4044:2CD7 5A pop dx
4044:2CD8 BB FF00 mov bx,0FF00h
4044:2CDB 9F lahf ; Load ah from flags
4044:2CDC 03 DC add bx,sp
4044:2CDE D1 DE rcr si,1 ; Rotate thru carry
4044:2CE0 9E sahf ; Store ah into flags
4044:2CE1 D1 D6 rcl si,1 ; Rotate thru carry
4044:2CE3 89 1E 0852 mov word ptr ds:[852h],bx ; (4044:0852=8BF0h)
4044:2CE7 8B E3 mov sp,bx
4044:2CE9 52 push dx
4044:2CEA ,BB 0852 mov bx,852h ; (4044:0852=0F0h)
4044:2CED E8 0EF2 call sub_169 ; (3BE2)
4044:2CF0 5A pop dx
4044:2CF1 ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:2CF4 03 DC add bx,sp
4044:2CF6 FE C7 inc bh
4044:2CF8 0A C0 or al,al ; Zero ?
4044:2CFA B0 00 mov al,0
4044:2CFC 79 30 jns loc_473 ; Jump if not sign
4044:2CFE FE CF dec bh
4044:2D00 8A 07 mov al,[bx]
4044:2D02 9F lahf ; Load ah from flags
4044:2D03 86 C4 xchg al,ah
4044:2D05 50 push ax
4044:2D06 86 C4 xchg al,ah
4044:2D08 52 push dx
4044:2D09 8A F7 mov dh,bh
4044:2D0B 8A D3 mov dl,bl
4044:2D0D FE C6 inc dh
4044:2D0F 8A C8 mov cl,al
4044:2D11 B5 00 mov ch,0
4044:2D13 41 inc cx
4044:2D14 03 D9 add bx,cx
4044:2D16 loc_471: ; xref 4044:2D22
4044:2D16 ,FE C9 dec cl
4044:2D18 74 0A jz loc_472 ; Jump if zero
4044:2D1A 4B dec bx
4044:2D1B 4A dec dx
4044:2D1C 8A 07 mov al,[bx]
4044:2D1E 8B F2 mov si,dx
4044:2D20 88 04 mov [si],al
4044:2D22 EB F2 jmp short loc_471 ; (2D16)
4044:2D24 loc_472: ; xref 4044:2D18
4044:2D24 87 DA xchg bx,dx
4044:2D26 5A pop dx
4044:2D27 59 pop cx
4044:2D28 B0 80 mov al,80h
4044:2D2A 0A C0 or al,al ; Zero ?
4044:2D2C 8A C5 mov al,ch
4044:2D2E loc_473: ; xref 4044:2CFC
4044:2D2E 8B E3 mov sp,bx
4044:2D30 87 DA xchg bx,dx
4044:2D32 FF E3 jmp bx ;*Register jump
4044:2D34 BA 00 03 EB 32 db 0BAh, 00h, 03h,0EBh, 32h
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:149B, 14C4, 14DB, 1566, 158F, 15A6
4044:2D39 sub_114:
4044:2D39 8A C8 mov cl,al
4044:2D3B A0 3D04 mov al,byte ptr ds:[3D04h] ; (4044:3D04=98h)
4044:2D3E 0A C0 or al,al ; Zero ?
4044:2D40 8A C1 mov al,cl
4044:2D42 78 24 js loc_476 ; Jump if sign=1
4044:2D44 ,BB 0002 mov bx,offset data_2+1 ; (4044:0002=4)
4044:2D47 53 push bx
4044:2D48 5A pop dx
4044:2D49 9F lahf ; Load ah from flags
4044:2D4A 03 DC add bx,sp
4044:2D4C D1 DE rcr si,1 ; Rotate thru carry
4044:2D4E 9E sahf ; Store ah into flags
4044:2D4F D1 D6 rcl si,1 ; Rotate thru carry
4044:2D51 8A E8 mov ch,al
4044:2D53 FE C5 inc ch
4044:2D55 loc_474: ; xref 4044:2D5E, 2D62
4044:2D55 ,FE CD dec ch
4044:2D57 74 0B jz loc_475 ; Jump if zero
4044:2D59 8A 07 mov al,[bx]
4044:2D5B 43 inc bx
4044:2D5C 3C 27 cmp al,27h ; '''
4044:2D5E 75 F5 jne loc_474 ; Jump if not equal
4044:2D60 FE C6 inc dh
4044:2D62 EB F1 jmp short loc_474 ; (2D55)
4044:2D64 loc_475: ; xref 4044:2D57
4044:2D64 8A C1 mov al,cl
4044:2D66 EB 03 jmp short loc_477 ; (2D6B)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:14AD, 14D0, 14E7, 1578, 159B, 15B2
4044:2D68 sub_115:
4044:2D68 loc_476: ; xref 4044:2D42
4044:2D68 BA 0001 mov dx,1
4044:2D6B loc_477: ; xref 4044:2D66
4044:2D6B 9F lahf ; Load ah from flags
4044:2D6C 86 C4 xchg al,ah
4044:2D6E 50 push ax
4044:2D6F 86 C4 xchg al,ah
4044:2D71 8A C8 mov cl,al
4044:2D73 A0 3CFC mov al,byte ptr ds:[3CFCh] ; (4044:3CFC=8Fh)
4044:2D76 0A C0 or al,al ; Zero ?
4044:2D78 78 06 js loc_478 ; Jump if sign=1
4044:2D7A BA 0001 mov dx,1
4044:2D7D E9 0058 jmpn loc_484 ; (2DD8)
4044:2D80 loc_478: ; xref 4044:2D78
4044:2D80 B5 00 mov ch,0
4044:2D82 E8 009A call sub_116 ; (2E1F)
4044:2D85 78 01 js loc_479 ; Jump if sign=1
4044:2D87 41 inc cx
4044:2D88 loc_479: ; xref 4044:2D85
4044:2D88 8A C2 mov al,dl
4044:2D8A 3C 02 cmp al,2
4044:2D8C 75 02 jne loc_480 ; Jump if not equal
4044:2D8E 41 inc cx
4044:2D8F 41 inc cx
4044:2D90 loc_480: ; xref 4044:2D8C
4044:2D90 8B 1E 3CE1 mov bx,word ptr ds:[3CE1h] ; (4044:3CE1=4)
4044:2D94 8A C7 mov al,bh
4044:2D96 0A C3 or al,bl
4044:2D98 74 29 jz loc_482 ; Jump if zero
4044:2D9A 8A DE mov bl,dh
4044:2D9C B7 00 mov bh,0
4044:2D9E 9F lahf ; Load ah from flags
4044:2D9F 03 D9 add bx,cx
4044:2DA1 D1 DE rcr si,1 ; Rotate thru carry
4044:2DA3 9E sahf ; Store ah into flags
4044:2DA4 D1 D6 rcl si,1 ; Rotate thru carry
4044:2DA6 52 push dx
4044:2DA7 53 push bx
4044:2DA8 8B 1E 3CE1 mov bx,word ptr ds:[3CE1h] ; (4044:3CE1=4)
4044:2DAC 2B 1E 3CD0 sub bx,word ptr ds:[3CD0h] ; (4044:3CD0=0F600h)
4044:2DB0 43 inc bx
4044:2DB1 5A pop dx
4044:2DB2 2B DA sub bx,dx
4044:2DB4 5A pop dx
4044:2DB5 B0 0D mov al,0Dh
4044:2DB7 73 03 jnc loc_481 ; Jump if carry=0
4044:2DB9 E8 006E call sub_117 ; (2E2A)
4044:2DBC loc_481: ; xref 4044:2DB7
4044:2DBC B0 0A mov al,0Ah
4044:2DBE 73 03 jnc loc_482 ; Jump if carry=0
4044:2DC0 E8 0067 call sub_117 ; (2E2A)
4044:2DC3 loc_482: ; xref 4044:2D98, 2DBE
4044:2DC3 E8 0059 call sub_116 ; (2E1F)
4044:2DC6 B0 20 mov al,20h ; ' '
4044:2DC8 78 03 js loc_483 ; Jump if sign=1
4044:2DCA E8 005D call sub_117 ; (2E2A)
4044:2DCD loc_483: ; xref 4044:2DC8
4044:2DCD 8A C2 mov al,dl
4044:2DCF FE C8 dec al
4044:2DD1 B0 27 mov al,27h ; '''
4044:2DD3 74 03 jz loc_484 ; Jump if zero
4044:2DD5 E8 0052 call sub_117 ; (2E2A)
4044:2DD8 loc_484: ; xref 4044:2D7D, 2DD3
4044:2DD8 58 pop ax
4044:2DD9 86 C4 xchg al,ah
4044:2DDB 59 pop cx
4044:2DDC ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:2DDF 03 DC add bx,sp
4044:2DE1 loc_485: ; xref 4044:2E03
4044:2DE1 ,0A C0 or al,al ; Zero ?
4044:2DE3 74 20 jz loc_487 ; Jump if zero
4044:2DE5 FE C8 dec al
4044:2DE7 9F lahf ; Load ah from flags
4044:2DE8 86 C4 xchg al,ah
4044:2DEA 50 push ax
4044:2DEB 8A 07 mov al,[bx]
4044:2DED 43 inc bx
4044:2DEE 3C 27 cmp al,27h ; '''
4044:2DF0 75 0B jne loc_486 ; Jump if not equal
4044:2DF2 8A C2 mov al,dl
4044:2DF4 3C 02 cmp al,2
4044:2DF6 B0 27 mov al,27h ; '''
4044:2DF8 75 03 jnz loc_486 ; Jump if not zero
4044:2DFA E8 002D call sub_117 ; (2E2A)
4044:2DFD loc_486: ; xref 4044:2DF0, 2DF8
4044:2DFD E8 002A call sub_117 ; (2E2A)
4044:2E00 58 pop ax
4044:2E01 86 C4 xchg al,ah
4044:2E03 EB DC jmp short loc_485 ; (2DE1)
4044:2E05 loc_487: ; xref 4044:2DE3
4044:2E05 8B E3 mov sp,bx
4044:2E07 51 push cx
4044:2E08 8A C2 mov al,dl
4044:2E0A FE C8 dec al
4044:2E0C B0 27 mov al,27h ; '''
4044:2E0E 74 03 jz loc_488 ; Jump if zero
4044:2E10 E8 0017 call sub_117 ; (2E2A)
4044:2E13 loc_488: ; xref 4044:2E0E
4044:2E13 8A C2 mov al,dl
4044:2E15 0A C0 or al,al ; Zero ?
4044:2E17 B0 62 mov al,62h ; 'b'
4044:2E19 75 03 jnz loc_ret_489 ; Jump if not zero
4044:2E1B E8 000C call sub_117 ; (2E2A)
4044:2E1E loc_ret_489: ; xref 4044:2E19
4044:2E1E C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2D82, 2DC3
4044:2E1F sub_116:
4044:2E1F 8B 1E 3CD0 mov bx,word ptr ds:[3CD0h] ; (4044:3CD0=0F600h)
4044:2E23 4B dec bx
4044:2E24 4B dec bx
4044:2E25 8A C7 mov al,bh
4044:2E27 0A C0 or al,al ; Zero ?
4044:2E29 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2DB9, 2DC0, 2DCA, 2DD5, 2DFA, 2DFD, 2E10
; 2E1B
4044:2E2A sub_117:
4044:2E2A 9F lahf ; Load ah from flags
4044:2E2B 86 C4 xchg al,ah
4044:2E2D 50 push ax
4044:2E2E 86 C4 xchg al,ah
4044:2E30 51 push cx
4044:2E31 52 push dx
4044:2E32 53 push bx
4044:2E33 A2 0856 mov byte ptr ds:[856h],al ; (4044:0856=3Eh)
4044:2E36 ,BB 0854 mov bx,854h ; (4044:0854=0EEh)
4044:2E39 E8 0C0B call sub_167 ; (3A47)
4044:2E3C 5B pop bx
4044:2E3D 5A pop dx
4044:2E3E 59 pop cx
4044:2E3F 58 pop ax
4044:2E40 86 C4 xchg al,ah
4044:2E42 9E sahf ; Store ah into flags
4044:2E43 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:028A, 037F, 0EF5, 1073
4044:2E44 sub_118:
4044:2E44 32 C0 xor al,al ; Zero register
4044:2E46 EB 06 jmp short loc_490 ; (2E4E)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:0240, 025F, 0360, 0918, 0E83, 0EC2, 1054
; 148B, 14B9, 1556, 1584
4044:2E48 sub_119:
4044:2E48 B0 01 mov al,1
4044:2E4A EB 02 jmp short loc_490 ; (2E4E)
4044:2E4C B0 02 db 0B0h, 02h
4044:2E4E loc_490: ; xref 4044:2E46, 2E4A
4044:2E4E A2 0862 mov byte ptr ds:[862h],al ; (4044:0862=0D3h)
4044:2E51 89 1E 0863 mov word ptr ds:[863h],bx ; (4044:0863=3E0h)
4044:2E55 87 DA xchg bx,dx
4044:2E57 89 1E 0865 mov word ptr ds:[865h],bx ; (4044:0865=0B1F8h)
4044:2E5B 8A FD mov bh,ch
4044:2E5D 8A D9 mov bl,cl
4044:2E5F 89 1E 0867 mov word ptr ds:[867h],bx ; (4044:0867=8D0Bh)
4044:2E63 BB 0002 mov bx,2
4044:2E66 9F lahf ; Load ah from flags
4044:2E67 03 DC add bx,sp
4044:2E69 D1 DE rcr si,1 ; Rotate thru carry
4044:2E6B 9E sahf ; Store ah into flags
4044:2E6C D1 D6 rcl si,1 ; Rotate thru carry
4044:2E6E 89 1E 0869 mov word ptr ds:[869h],bx ; (4044:0869=1B5h)
4044:2E72 BB 0858 mov bx,858h
4044:2E75 E9 09D7 jmp loc_650 ; (384F)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:0245, 0365, 091D, 0E88, 0EC7, 1059, 1490
; 155B
4044:2E78 sub_120:
4044:2E78 A2 086E mov byte ptr ds:[86Eh],al ; (4044:086E=8Bh)
4044:2E7B BB 086C mov bx,86Ch
4044:2E7E E9 0CB4 jmp loc_685 ; (3B35)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:336D
4044:2E81 sub_121:
4044:2E81 loc_491: ; xref 4044:26C7, 26E7, 2837, 2881
; 28EE, 28F5, 290E, 2918
; 293C, 2B37, 2B90, 2BEB
; 2BFC, 2C11, 2C87, 2CAC
; 2CBB, 3350
4044:2E81 ,BB 0870 mov bx,870h
4044:2E84 E9 01B4 jmp loc_510 ; (303B)
4044:2E87 loc_492: ; xref 4044:1E92
4044:2E87 A2 0893 mov byte ptr ds:[893h],al ; (4044:0893=3Ch)
4044:2E8A ,BB 088A mov bx,88Ah ; (4044:088A=2Eh)
4044:2E8D E9 01AB jmp loc_510 ; (303B)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1B2D, 4384
4044:2E90 sub_122:
4044:2E90 loc_493: ; xref 4044:23D7
4044:2E90 43 inc bx
4044:2E91 8A C3 mov al,bl
4044:2E93 24 FE and al,0FEh
4044:2E95 8A C8 mov cl,al
4044:2E97 8A EF mov ch,bh
4044:2E99 8B 1E 077B mov bx,word ptr ds:[77Bh] ; (4044:077B=0E4D0h)
4044:2E9D loc_494: ; xref 4044:2EAE
4044:2E9D 8A 07 mov al,[bx]
4044:2E9F D0 D8 rcr al,1 ; Rotate thru carry
4044:2EA1 73 13 jnc loc_496 ; Jump if carry=0
4044:2EA3 loc_495: ; xref 4044:2EDD
4044:2EA3 43 inc bx
4044:2EA4 43 inc bx
4044:2EA5 8A 07 mov al,[bx]
4044:2EA7 43 inc bx
4044:2EA8 8A 3F mov bh,[bx]
4044:2EAA 8A D8 mov bl,al
4044:2EAC 0A C7 or al,bh
4044:2EAE 75 ED jnz loc_494 ; Jump if not zero
4044:2EB0 ,BB 0898 mov bx,898h ; (4044:0898=0Ch)
4044:2EB3 E9 0185 jmp loc_510 ; (303B)
4044:2EB6 loc_496: ; xref 4044:2EA1
4044:2EB6 53 push bx
4044:2EB7 43 inc bx
4044:2EB8 43 inc bx
4044:2EB9 8A 17 mov dl,[bx]
4044:2EBB 43 inc bx
4044:2EBC 8A 37 mov dh,[bx]
4044:2EBE 43 inc bx
4044:2EBF 8A C2 mov al,dl
4044:2EC1 2A C3 sub al,bl
4044:2EC3 8A D0 mov dl,al
4044:2EC5 8A C6 mov al,dh
4044:2EC7 1A C7 sbb al,bh
4044:2EC9 8A F0 mov dh,al
4044:2ECB 73 03 jnc loc_497 ; Jump if carry=0
4044:2ECD E9 0152 jmp loc_509 ; (3022)
4044:2ED0 loc_497: ; xref 4044:2ECB
4044:2ED0 8A C2 mov al,dl
4044:2ED2 2A C1 sub al,cl
4044:2ED4 8A D0 mov dl,al
4044:2ED6 8A C6 mov al,dh
4044:2ED8 1A C5 sbb al,ch
4044:2EDA 8A F0 mov dh,al
4044:2EDC 5B pop bx
4044:2EDD 72 C4 jc loc_495 ; Jump if carry Set
4044:2EDF FE 07 inc byte ptr [bx]
4044:2EE1 8A C6 mov al,dh
4044:2EE3 0A C0 or al,al ; Zero ?
4044:2EE5 75 06 jnz loc_498 ; Jump if not zero
4044:2EE7 8A C2 mov al,dl
4044:2EE9 3C 06 cmp al,6
4044:2EEB 72 46 jb loc_499 ; Jump if below
4044:2EED loc_498: ; xref 4044:2EE5
4044:2EED 53 push bx
4044:2EEE 43 inc bx
4044:2EEF 43 inc bx
4044:2EF0 8A 17 mov dl,[bx]
4044:2EF2 43 inc bx
4044:2EF3 8A 37 mov dh,[bx]
4044:2EF5 43 inc bx
4044:2EF6 03 D9 add bx,cx
4044:2EF8 87 DA xchg bx,dx
4044:2EFA 8B EC mov bp,sp
4044:2EFC 87 5E 00 xchg [bp],bx
4044:2EFF 53 push bx
4044:2F00 43 inc bx
4044:2F01 43 inc bx
4044:2F02 88 17 mov [bx],dl
4044:2F04 43 inc bx
4044:2F05 88 37 mov [bx],dh
4044:2F07 87 DA xchg bx,dx
4044:2F09 5A pop dx
4044:2F0A 88 17 mov [bx],dl
4044:2F0C 43 inc bx
4044:2F0D 88 37 mov [bx],dh
4044:2F0F 43 inc bx
4044:2F10 87 DA xchg bx,dx
4044:2F12 8B EC mov bp,sp
4044:2F14 87 5E 00 xchg [bp],bx
4044:2F17 87 DA xchg bx,dx
4044:2F19 88 17 mov [bx],dl
4044:2F1B 43 inc bx
4044:2F1C 88 37 mov [bx],dh
4044:2F1E 4B dec bx
4044:2F1F 4B dec bx
4044:2F20 4B dec bx
4044:2F21 87 DA xchg bx,dx
4044:2F23 8A 07 mov al,[bx]
4044:2F25 24 01 and al,1
4044:2F27 88 17 mov [bx],dl
4044:2F29 0A 07 or al,[bx]
4044:2F2B 88 07 mov [bx],al
4044:2F2D 9F lahf ; Load ah from flags
4044:2F2E 43 inc bx
4044:2F2F 9E sahf ; Store ah into flags
4044:2F30 88 37 mov [bx],dh
4044:2F32 5B pop bx
4044:2F33 loc_499: ; xref 4044:2EEB
4044:2F33 9F lahf ; Load ah from flags
4044:2F34 43 inc bx
4044:2F35 9E sahf ; Store ah into flags
4044:2F36 9F lahf ; Load ah from flags
4044:2F37 43 inc bx
4044:2F38 9E sahf ; Store ah into flags
4044:2F39 9F lahf ; Load ah from flags
4044:2F3A 43 inc bx
4044:2F3B 9E sahf ; Store ah into flags
4044:2F3C 9F lahf ; Load ah from flags
4044:2F3D 43 inc bx
4044:2F3E 9E sahf ; Store ah into flags
4044:2F3F C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:1BB2, 1BE9, 4645
4044:2F40 sub_123:
4044:2F40 8A C3 mov al,bl
4044:2F42 0A C7 or al,bh
4044:2F44 75 01 jnz loc_500 ; Jump if not zero
4044:2F46 C3 retn
4044:2F47 loc_500: ; xref 4044:2F44
4044:2F47 87 DA xchg bx,dx
4044:2F49 8B 1E 077B mov bx,word ptr ds:[77Bh] ; (4044:077B=0E4D0h)
4044:2F4D 8A C3 mov al,bl
4044:2F4F 2A C2 sub al,dl
4044:2F51 8A C7 mov al,bh
4044:2F53 1A C6 sbb al,dh
4044:2F55 72 03 jc loc_501 ; Jump if carry Set
4044:2F57 E9 00C2 jmp loc_508 ; (301C)
4044:2F5A loc_501: ; xref 4044:2F55
4044:2F5A 8B 1E 0006 mov bx,word ptr ds:[6] ; (4044:0006=4)
4044:2F5E 8A C2 mov al,dl
4044:2F60 2A C3 sub al,bl
4044:2F62 8A C6 mov al,dh
4044:2F64 1A C7 sbb al,bh
4044:2F66 72 03 jc loc_502 ; Jump if carry Set
4044:2F68 E9 00B1 jmp loc_508 ; (301C)
4044:2F6B loc_502: ; xref 4044:2F66
4044:2F6B 87 DA xchg bx,dx
4044:2F6D 9F lahf ; Load ah from flags
4044:2F6E 4B dec bx
4044:2F6F 9E sahf ; Store ah into flags
4044:2F70 8A 2F mov ch,[bx]
4044:2F72 9F lahf ; Load ah from flags
4044:2F73 4B dec bx
4044:2F74 9E sahf ; Store ah into flags
4044:2F75 8A 0F mov cl,[bx]
4044:2F77 9F lahf ; Load ah from flags
4044:2F78 4B dec bx
4044:2F79 9E sahf ; Store ah into flags
4044:2F7A 8A 37 mov dh,[bx]
4044:2F7C 9F lahf ; Load ah from flags
4044:2F7D 4B dec bx
4044:2F7E 9E sahf ; Store ah into flags
4044:2F7F FE 0F dec byte ptr [bx]
4044:2F81 8A 17 mov dl,[bx]
4044:2F83 8A C2 mov al,dl
4044:2F85 D0 D8 rcr al,1 ; Rotate thru carry
4044:2F87 73 03 jnc loc_503 ; Jump if carry=0
4044:2F89 E9 0096 jmp loc_509 ; (3022)
4044:2F8C loc_503: ; xref 4044:2F87
4044:2F8C 8A C2 mov al,dl
4044:2F8E 2A C3 sub al,bl
4044:2F90 8A C6 mov al,dh
4044:2F92 1A C7 sbb al,bh
4044:2F94 72 03 jc loc_504 ; Jump if carry Set
4044:2F96 E9 0089 jmp loc_509 ; (3022)
4044:2F99 loc_504: ; xref 4044:2F94
4044:2F99 8A C3 mov al,bl
4044:2F9B 2A C1 sub al,cl
4044:2F9D 8A C7 mov al,bh
4044:2F9F 1A C5 sbb al,ch
4044:2FA1 72 03 jc loc_505 ; Jump if carry Set
4044:2FA3 E9 007C jmpn loc_509 ; (3022)
4044:2FA6 loc_505: ; xref 4044:2FA1
4044:2FA6 8A C2 mov al,dl
4044:2FA8 0A C6 or al,dh
4044:2FAA 74 2A jz loc_506 ; Jump if zero
4044:2FAC 8B F2 mov si,dx
4044:2FAE 8A 04 mov al,[si]
4044:2FB0 D0 D8 rcr al,1 ; Rotate thru carry
4044:2FB2 72 22 jc loc_506 ; Jump if carry Set
4044:2FB4 8A D9 mov bl,cl
4044:2FB6 8A FD mov bh,ch
4044:2FB8 8A 07 mov al,[bx]
4044:2FBA 24 01 and al,1
4044:2FBC 88 17 mov [bx],dl
4044:2FBE 0A 07 or al,[bx]
4044:2FC0 88 07 mov [bx],al
4044:2FC2 9F lahf ; Load ah from flags
4044:2FC3 43 inc bx
4044:2FC4 9E sahf ; Store ah into flags
4044:2FC5 88 37 mov [bx],dh
4044:2FC7 87 DA xchg bx,dx
4044:2FC9 9F lahf ; Load ah from flags
4044:2FCA 43 inc bx
4044:2FCB 9E sahf ; Store ah into flags
4044:2FCC 9F lahf ; Load ah from flags
4044:2FCD 43 inc bx
4044:2FCE 9E sahf ; Store ah into flags
4044:2FCF 88 0F mov [bx],cl
4044:2FD1 9F lahf ; Load ah from flags
4044:2FD2 43 inc bx
4044:2FD3 9E sahf ; Store ah into flags
4044:2FD4 88 2F mov [bx],ch
4044:2FD6 loc_506: ; xref 4044:2FAA, 2FB2
4044:2FD6 8B F1 mov si,cx
4044:2FD8 8A 04 mov al,[si]
4044:2FDA D0 D8 rcr al,1 ; Rotate thru carry
4044:2FDC 73 01 jnc loc_507 ; Jump if carry=0
4044:2FDE C3 retn
4044:2FDF loc_507: ; xref 4044:2FDC
4044:2FDF 8A D9 mov bl,cl
4044:2FE1 8A FD mov bh,ch
4044:2FE3 8A 0F mov cl,[bx]
4044:2FE5 9F lahf ; Load ah from flags
4044:2FE6 43 inc bx
4044:2FE7 9E sahf ; Store ah into flags
4044:2FE8 8A 2F mov ch,[bx]
4044:2FEA 9F lahf ; Load ah from flags
4044:2FEB 43 inc bx
4044:2FEC 9E sahf ; Store ah into flags
4044:2FED 8A 17 mov dl,[bx]
4044:2FEF 9F lahf ; Load ah from flags
4044:2FF0 43 inc bx
4044:2FF1 9E sahf ; Store ah into flags
4044:2FF2 8A 37 mov dh,[bx]
4044:2FF4 87 DA xchg bx,dx
4044:2FF6 8A 07 mov al,[bx]
4044:2FF8 D0 D8 rcr al,1 ; Rotate thru carry
4044:2FFA 73 26 jnc loc_509 ; Jump if carry=0
4044:2FFC 88 0F mov [bx],cl
4044:2FFE FE 07 inc byte ptr [bx]
4044:3000 9F lahf ; Load ah from flags
4044:3001 43 inc bx
4044:3002 9E sahf ; Store ah into flags
4044:3003 88 2F mov [bx],ch
4044:3005 9F lahf ; Load ah from flags
4044:3006 4B dec bx
4044:3007 9E sahf ; Store ah into flags
4044:3008 87 DA xchg bx,dx
4044:300A 8A D9 mov bl,cl
4044:300C 8A FD mov bh,ch
4044:300E 9F lahf ; Load ah from flags
4044:300F 43 inc bx
4044:3010 9E sahf ; Store ah into flags
4044:3011 9F lahf ; Load ah from flags
4044:3012 43 inc bx
4044:3013 9E sahf ; Store ah into flags
4044:3014 88 17 mov [bx],dl
4044:3016 9F lahf ; Load ah from flags
4044:3017 43 inc bx
4044:3018 9E sahf ; Store ah into flags
4044:3019 88 37 mov [bx],dh
4044:301B C3 retn
4044:301C loc_508: ; xref 4044:2F57, 2F68
4044:301C BA 08BC mov dx,8BCh
4044:301F E9 EE44 jmp loc_263 ; (1E66)
4044:3022 loc_509: ; xref 4044:2ECD, 2F89, 2F96, 2FA3
; 2FFA
4044:3022 BA 08D8 mov dx,8D8h
4044:3025 E9 EE3E jmp loc_263 ; (1E66)
;* No entry point to code
4044:3028 8A E8 mov ch,al
4044:302A BA 0000 mov dx,0
4044:302D 8A CA mov cl,dl
4044:302F 3C 05 cmp al,5
4044:3031 73 28 jae loc_511 ; Jump if above or =
4044:3033 8A CB mov cl,bl
4044:3035 8A FE mov bh,dh
4044:3037 8A DA mov bl,dl
4044:3039 EB 20 jmp short loc_511 ; (305B)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2CCC, 39E1, 3A75, 3B21, 3BD2, 3C07, 3E2F
; 4894
4044:303B sub_124:
4044:303B loc_510: ; xref 4044:2600, 2E84, 2E8D, 2EB3
; 32DD, 384C
4044:303B ,E8 027D call sub_141 ; (32BB)
4044:303E 8A 2F mov ch,[bx]
4044:3040 E8 0276 call sub_140 ; (32B9)
4044:3043 8A 0F mov cl,[bx]
4044:3045 51 push cx
4044:3046 E8 0270 call sub_140 ; (32B9)
4044:3049 8A 0F mov cl,[bx]
4044:304B 9F lahf ; Load ah from flags
4044:304C 43 inc bx
4044:304D 9E sahf ; Store ah into flags
4044:304E 8A 2F mov ch,[bx]
4044:3050 51 push cx
4044:3051 E8 0265 call sub_140 ; (32B9)
4044:3054 8A 17 mov dl,[bx]
4044:3056 43 inc bx
4044:3057 8A 37 mov dh,[bx]
4044:3059 5B pop bx
4044:305A 59 pop cx
4044:305B loc_511: ; xref 4044:3031, 3039
4044:305B 89 1E 3D2B mov word ptr ds:[3D2Bh],bx ; (4044:3D2B=7480h)
4044:305F 8A C1 mov al,cl
4044:3061 A2 3D2A mov byte ptr ds:[3D2Ah],al ; (4044:3D2A=0B0h)
4044:3064 51 push cx
4044:3065 52 push dx
4044:3066 53 push bx
4044:3067 8A C5 mov al,ch
4044:3069 3C 05 cmp al,5
4044:306B 73 04 jae loc_512 ; Jump if above or =
4044:306D 8A D9 mov bl,cl
4044:306F B7 00 mov bh,0
4044:3071 loc_512: ; xref 4044:306B
4044:3071 E8 0D4C call sub_180 ; (3DC0)
4044:3074 74 3F jz loc_516 ; Jump if zero
4044:3076 BA 2FFC mov dx,2FFCh
4044:3079 52 push dx
4044:307A FF E3 jmp bx ;*
;* No entry point to code
4044:307C 5B pop bx
4044:307D 5A pop dx
4044:307E 59 pop cx
4044:307F 8A C5 mov al,ch
4044:3081 3C 08 cmp al,8
4044:3083 75 03 jne loc_513 ; Jump if not equal
4044:3085 B0 FF mov al,0FFh
4044:3087 C3 retn
4044:3088 loc_513: ; xref 4044:3083
4044:3088 3C 05 cmp al,5
4044:308A 72 2C jb loc_517 ; Jump if below
4044:308C 87 DA xchg bx,dx
4044:308E ,BB 3CB8 mov bx,3CB8h ; (4044:3CB8=3Ch)
4044:3091 8A C2 mov al,dl
4044:3093 2A 07 sub al,[bx]
4044:3095 74 01 jz loc_514 ; Jump if zero
4044:3097 C3 retn
4044:3098 loc_514: ; xref 4044:3095
4044:3098 43 inc bx
4044:3099 8A C6 mov al,dh
4044:309B 2A 07 sub al,[bx]
4044:309D 74 01 jz loc_515 ; Jump if zero
4044:309F C3 retn
4044:30A0 loc_515: ; xref 4044:309D
4044:30A0 8B 1E 3CD9 mov bx,word ptr ds:[3CD9h] ; (4044:3CD9=91A0h)
4044:30A4 53 push bx
4044:30A5 8B 1E 3CDB mov bx,word ptr ds:[3CDBh] ; (4044:3CDB=0A20Ah)
4044:30A9 53 push bx
4044:30AA E8 EB95 call sub_57 ; (1C42)
4044:30AD 5B pop bx
4044:30AE 5A pop dx
4044:30AF 8B E3 mov sp,bx
4044:30B1 87 DA xchg bx,dx
4044:30B3 FF E3 jmp bx ;*Register jump
4044:30B5 loc_516: ; xref 4044:3074
4044:30B5 5B pop bx
4044:30B6 5A pop dx
4044:30B7 59 pop cx
4044:30B8 loc_517: ; xref 4044:308A
4044:30B8 8A C5 mov al,ch
4044:30BA 2C 08 sub al,8
4044:30BC 75 01 jnz loc_518 ; Jump if not zero
4044:30BE C3 retn
4044:30BF loc_518: ; xref 4044:30BC
4044:30BF 8A C1 mov al,cl
4044:30C1 0A C0 or al,al ; Zero ?
4044:30C3 8A C5 mov al,ch
4044:30C5 79 05 jns loc_519 ; Jump if not sign
4044:30C7 0A C0 or al,al ; Zero ?
4044:30C9 75 01 jnz loc_519 ; Jump if not zero
4044:30CB C3 retn
4044:30CC loc_519: ; xref 4044:30C5, 30C9
4044:30CC 52 push dx
4044:30CD 53 push bx
4044:30CE 51 push cx
4044:30CF 9F lahf ; Load ah from flags
4044:30D0 86 C4 xchg al,ah
4044:30D2 50 push ax
4044:30D3 86 C4 xchg al,ah
4044:30D5 E8 0068 call sub_128 ; (3140)
4044:30D8 58 pop ax
4044:30D9 86 C4 xchg al,ah
4044:30DB 9E sahf ; Store ah into flags
4044:30DC 8A D0 mov dl,al
4044:30DE B6 00 mov dh,0
4044:30E0 ,BB 0906 mov bx,906h ; (4044:0906=0EBh)
4044:30E3 9F lahf ; Load ah from flags
4044:30E4 03 DA add bx,dx
4044:30E6 9E sahf ; Store ah into flags
4044:30E7 9F lahf ; Load ah from flags
4044:30E8 03 DA add bx,dx
4044:30EA D1 DE rcr si,1 ; Rotate thru carry
4044:30EC 9E sahf ; Store ah into flags
4044:30ED D1 D6 rcl si,1 ; Rotate thru carry
4044:30EF 8A 17 mov dl,[bx]
4044:30F1 9F lahf ; Load ah from flags
4044:30F2 43 inc bx
4044:30F3 9E sahf ; Store ah into flags
4044:30F4 8A 37 mov dh,[bx]
4044:30F6 87 DA xchg bx,dx
4044:30F8 E8 00AF call sub_134 ; (31AA)
4044:30FB E8 003B call sub_126 ; (3139)
4044:30FE B0 28 mov al,28h ; '('
4044:3100 E8 0038 call sub_127 ; (313B)
4044:3103 59 pop cx
4044:3104 8A C1 mov al,cl
4044:3106 E8 0073 call sub_132 ; (317C)
4044:3109 B0 29 mov al,29h ; ')'
4044:310B E8 002D call sub_127 ; (313B)
4044:310E 5B pop bx
4044:310F 8A C7 mov al,bh
4044:3111 0A C3 or al,bl
4044:3113 74 06 jz loc_520 ; Jump if zero
4044:3115 E8 0016 call sub_125 ; (312E)
4044:3118 E8 011C call sub_139 ; (3237)
4044:311B loc_520: ; xref 4044:3113
4044:311B 5B pop bx
4044:311C 8A C7 mov al,bh
4044:311E 0A C3 or al,bl
4044:3120 74 06 jz loc_521 ; Jump if zero
4044:3122 E8 0009 call sub_125 ; (312E)
4044:3125 E8 0082 call sub_134 ; (31AA)
4044:3128 loc_521: ; xref 4044:3120
4044:3128 E8 0099 call sub_135 ; (31C4)
4044:312B E9 ED20 jmp loc_261 ; (1E4E)
sub_109 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3115, 3122
;==========================================================================
4044:312E sub_125 proc near
4044:312E 53 push bx
4044:312F B0 2C mov al,2Ch ; ','
4044:3131 E8 0007 call sub_127 ; (313B)
4044:3134 E8 0002 call sub_126 ; (3139)
4044:3137 5B pop bx
4044:3138 C3 retn
sub_125 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:30FB, 3134, 316D, 31F0
;==========================================================================
4044:3139 sub_126 proc near
4044:3139 B0 20 mov al,20h ; ' '
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3100, 310B, 3131, 31BD, 31F5, 3232, 3250
4044:313B sub_127:
4044:313B loc_522: ; xref 4044:3150, 3154
4044:313B ,8A D0 mov dl,al
4044:313D E9 0CB4 jmp loc_740 ; (3DF4)
sub_126 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:30D5
;==========================================================================
4044:3140 sub_128 proc near
4044:3140 B2 0D mov dl,0Dh
4044:3142 E8 0CAF call sub_182 ; (3DF4)
4044:3145 B2 0A mov dl,0Ah
4044:3147 E9 0CAA jmp loc_740 ; (3DF4)
sub_128 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3164, 31A2
;==========================================================================
4044:314A sub_129 proc near
4044:314A loc_523: ; xref 4044:316A
4044:314A ,24 0F and al,0Fh
4044:314C 04 30 add al,30h ; '0'
4044:314E 3C 3A cmp al,3Ah ; ':'
4044:3150 72 E9 jb loc_522 ; Jump if below
4044:3152 04 07 add al,7
4044:3154 EB E5 jmp short loc_522 ; (313B)
sub_129 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3174
;==========================================================================
4044:3156 sub_130 proc near
4044:3156 loc_524: ; xref 4044:317A
4044:3156 ,9F lahf ; Load ah from flags
4044:3157 86 C4 xchg al,ah
4044:3159 50 push ax
4044:315A 86 C4 xchg al,ah
4044:315C D0 C8 ror al,1 ; Rotate
4044:315E D0 C8 ror al,1 ; Rotate
4044:3160 D0 C8 ror al,1 ; Rotate
4044:3162 D0 C8 ror al,1 ; Rotate
4044:3164 E8 FFE3 call sub_129 ; (314A)
4044:3167 58 pop ax
4044:3168 86 C4 xchg al,ah
4044:316A EB DE jmp short loc_523 ; (314A)
sub_130 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:321B
;==========================================================================
4044:316C sub_131 proc near
4044:316C 53 push bx
4044:316D E8 FFC9 call sub_126 ; (3139)
4044:3170 5B pop bx
4044:3171 53 push bx
4044:3172 8A C7 mov al,bh
4044:3174 E8 FFDF call sub_130 ; (3156)
4044:3177 5B pop bx
4044:3178 8A C3 mov al,bl
4044:317A EB DA jmp short loc_524 ; (3156)
sub_131 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3106
;==========================================================================
4044:317C sub_132 proc near
4044:317C 3C 0A cmp al,0Ah
4044:317E 72 0E jb loc_526 ; Jump if below
4044:3180 B1 64 mov cl,64h ; 'd'
4044:3182 3A C1 cmp al,cl
4044:3184 72 03 jb loc_525 ; Jump if below
4044:3186 E8 0007 call sub_133 ; (3190)
4044:3189 loc_525: ; xref 4044:3184
4044:3189 B1 0A mov cl,0Ah
4044:318B E8 0002 call sub_133 ; (3190)
4044:318E loc_526: ; xref 4044:317E
4044:318E B1 01 mov cl,1
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3186, 318B
4044:3190 sub_133:
4044:3190 B5 00 mov ch,0
4044:3192 loc_527: ; xref 4044:319A
4044:3192 ,3A C1 cmp al,cl
4044:3194 72 06 jb loc_528 ; Jump if below
4044:3196 2A C1 sub al,cl
4044:3198 FE C5 inc ch
4044:319A EB F6 jmp short loc_527 ; (3192)
4044:319C loc_528: ; xref 4044:3194
4044:319C 9F lahf ; Load ah from flags
4044:319D 86 C4 xchg al,ah
4044:319F 50 push ax
4044:31A0 8A C5 mov al,ch
4044:31A2 E8 FFA5 call sub_129 ; (314A)
4044:31A5 58 pop ax
4044:31A6 86 C4 xchg al,ah
4044:31A8 9E sahf ; Store ah into flags
4044:31A9 C3 retn
sub_132 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:30F8, 3125, 31C7, 323B, 324B
;==========================================================================
4044:31AA sub_134 proc near
4044:31AA loc_529: ; xref 4044:3278
4044:31AA ,8A 0F mov cl,[bx]
4044:31AC FE C1 inc cl
4044:31AE loc_530: ; xref 4044:31C2
4044:31AE ,FE C9 dec cl
4044:31B0 75 01 jnz loc_531 ; Jump if not zero
4044:31B2 C3 retn
4044:31B3 loc_531: ; xref 4044:31B0
4044:31B3 43 inc bx
4044:31B4 8A 07 mov al,[bx]
4044:31B6 0A C0 or al,al ; Zero ?
4044:31B8 75 01 jnz loc_532 ; Jump if not zero
4044:31BA C3 retn
4044:31BB loc_532: ; xref 4044:31B8
4044:31BB 51 push cx
4044:31BC 53 push bx
4044:31BD E8 FF7B call sub_127 ; (313B)
4044:31C0 5B pop bx
4044:31C1 59 pop cx
4044:31C2 EB EA jmp short loc_530 ; (31AE)
sub_134 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3128
;==========================================================================
4044:31C4 sub_135 proc near
4044:31C4 ,BB 08F8 mov bx,8F8h ; (4044:08F8=83h)
4044:31C7 E8 FFE0 call sub_134 ; (31AA)
4044:31CA 8B 1E 0775 mov bx,word ptr ds:[775h] ; (4044:0775=203Ch)
4044:31CE 87 DA xchg bx,dx
4044:31D0 ,BB 0002 mov bx,offset data_2+1 ; (4044:0002=4)
4044:31D3 03 DC add bx,sp
4044:31D5 8A C2 mov al,dl
4044:31D7 2A C3 sub al,bl
4044:31D9 8A D0 mov dl,al
4044:31DB 8A C6 mov al,dh
4044:31DD 1A C7 sbb al,bh
4044:31DF 75 0C jnz loc_533 ; Jump if not zero
4044:31E1 8A C2 mov al,dl
4044:31E3 0A C0 or al,al ; Zero ?
4044:31E5 D0 D8 rcr al,1 ; Rotate thru carry
4044:31E7 72 04 jc loc_533 ; Jump if carry Set
4044:31E9 3C 09 cmp al,9
4044:31EB 72 16 jb loc_534 ; Jump if below
4044:31ED loc_533: ; xref 4044:31DF, 31E7
4044:31ED E8 0011 call sub_136 ; (3201)
4044:31F0 E8 FF46 call sub_126 ; (3139)
4044:31F3 B0 23 mov al,23h ; '#'
4044:31F5 E8 FF43 call sub_127 ; (313B)
4044:31F8 8B 1E 0775 mov bx,word ptr ds:[775h] ; (4044:0775=203Ch)
4044:31FC BA FFF8 mov dx,0FFF8h
4044:31FF 03 DA add bx,dx
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:31ED
4044:3201 sub_136:
4044:3201 B0 04 mov al,4
4044:3203 loc_534: ; xref 4044:31EB, 3222
4044:3203 ,0A C0 or al,al ; Zero ?
4044:3205 75 01 jnz loc_535 ; Jump if not zero
4044:3207 C3 retn
4044:3208 loc_535: ; xref 4044:3205
4044:3208 FE C8 dec al
4044:320A 8A 17 mov dl,[bx]
4044:320C 9F lahf ; Load ah from flags
4044:320D 43 inc bx
4044:320E 9E sahf ; Store ah into flags
4044:320F 8A 37 mov dh,[bx]
4044:3211 9F lahf ; Load ah from flags
4044:3212 43 inc bx
4044:3213 9E sahf ; Store ah into flags
4044:3214 53 push bx
4044:3215 9F lahf ; Load ah from flags
4044:3216 86 C4 xchg al,ah
4044:3218 50 push ax
4044:3219 87 DA xchg bx,dx
4044:321B E8 FF4E call sub_131 ; (316C)
4044:321E 58 pop ax
4044:321F 86 C4 xchg al,ah
4044:3221 5B pop bx
4044:3222 EB DF jmp short loc_534 ; (3203)
sub_135 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3288
;==========================================================================
4044:3224 sub_137 proc near
4044:3224 E8 0002 call sub_138 ; (3229)
4044:3227 B0 3A mov al,3Ah ; ':'
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3224, 32A2, 32AB
4044:3229 sub_138:
4044:3229 53 push bx
4044:322A 24 7F and al,7Fh
4044:322C 3C 20 cmp al,20h ; ' '
4044:322E 73 02 jae loc_536 ; Jump if above or =
4044:3230 B0 3F mov al,3Fh ; '?'
4044:3232 loc_536: ; xref 4044:322E
4044:3232 E8 FF06 call sub_127 ; (313B)
4044:3235 5B pop bx
4044:3236 C3 retn
sub_137 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3118
;==========================================================================
4044:3237 sub_139 proc near
4044:3237 53 push bx
4044:3238 ,BB 08F0 mov bx,8F0h ; (4044:08F0=99h)
4044:323B E8 FF6C call sub_134 ; (31AA)
4044:323E 5B pop bx
4044:323F 53 push bx
4044:3240 BA 001F mov dx,1Fh
4044:3243 9F lahf ; Load ah from flags
4044:3244 03 DA add bx,dx
4044:3246 D1 DE rcr si,1 ; Rotate thru carry
4044:3248 9E sahf ; Store ah into flags
4044:3249 D1 D6 rcl si,1 ; Rotate thru carry
4044:324B E8 FF5C call sub_134 ; (31AA)
4044:324E B0 3D mov al,3Dh ; '='
4044:3250 E8 FEE8 call sub_127 ; (313B)
4044:3253 5B pop bx
4044:3254 8A 17 mov dl,[bx]
4044:3256 43 inc bx
4044:3257 8A 37 mov dh,[bx]
4044:3259 87 DA xchg bx,dx
4044:325B 8A C7 mov al,bh
4044:325D 0A C0 or al,al ; Zero ?
4044:325F 75 1A jnz loc_538 ; Jump if not zero
4044:3261 8A C3 mov al,bl
4044:3263 3C 06 cmp al,6
4044:3265 72 02 jb loc_537 ; Jump if below
4044:3267 B3 06 mov bl,6
4044:3269 loc_537: ; xref 4044:3265
4044:3269 D1 E3 shl bx,1 ; Shift w/zeros fill
4044:326B D1 E3 shl bx,1 ; Shift w/zeros fill
4044:326D BA 0971 mov dx,971h
4044:3270 9F lahf ; Load ah from flags
4044:3271 03 DA add bx,dx
4044:3273 D1 DE rcr si,1 ; Rotate thru carry
4044:3275 9E sahf ; Store ah into flags
4044:3276 D1 D6 rcl si,1 ; Rotate thru carry
4044:3278 E9 FF2F jmp loc_529 ; (31AA)
4044:327B loc_538: ; xref 4044:325F
4044:327B 43 inc bx
4044:327C 8A 2F mov ch,[bx]
4044:327E FE CD dec ch
4044:3280 B0 41 mov al,41h ; 'A'
4044:3282 02 C5 add al,ch
4044:3284 FE C5 inc ch
4044:3286 74 03 jz loc_539 ; Jump if zero
4044:3288 E8 FF99 call sub_137 ; (3224)
4044:328B loc_539: ; xref 4044:3286
4044:328B B0 0B mov al,0Bh
4044:328D loc_540: ; xref 4044:32B7
4044:328D ,9F lahf ; Load ah from flags
4044:328E 43 inc bx
4044:328F 9E sahf ; Store ah into flags
4044:3290 9F lahf ; Load ah from flags
4044:3291 86 C4 xchg al,ah
4044:3293 50 push ax
4044:3294 86 C4 xchg al,ah
4044:3296 3C 03 cmp al,3
4044:3298 75 0B jne loc_541 ; Jump if not equal
4044:329A 8A 07 mov al,[bx]
4044:329C 3C 20 cmp al,20h ; ' '
4044:329E B0 2E mov al,2Eh ; '.'
4044:32A0 74 03 jz loc_541 ; Jump if zero
4044:32A2 E8 FF84 call sub_138 ; (3229)
4044:32A5 loc_541: ; xref 4044:3298, 32A0
4044:32A5 8A 07 mov al,[bx]
4044:32A7 3C 20 cmp al,20h ; ' '
4044:32A9 74 03 je loc_542 ; Jump if equal
4044:32AB E8 FF7B call sub_138 ; (3229)
4044:32AE loc_542: ; xref 4044:32A9
4044:32AE 58 pop ax
4044:32AF 86 C4 xchg al,ah
4044:32B1 9E sahf ; Store ah into flags
4044:32B2 FE C8 dec al
4044:32B4 75 01 jnz loc_543 ; Jump if not zero
4044:32B6 C3 retn
4044:32B7 loc_543: ; xref 4044:32B4
4044:32B7 EB D4 jmp short loc_540 ; (328D)
sub_139 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3040, 3046, 3051
;==========================================================================
4044:32B9 sub_140 proc near
4044:32B9 87 DA xchg bx,dx
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:303B
4044:32BB sub_141:
4044:32BB 8A 17 mov dl,[bx]
4044:32BD 9F lahf ; Load ah from flags
4044:32BE 43 inc bx
4044:32BF 9E sahf ; Store ah into flags
4044:32C0 8A 37 mov dh,[bx]
4044:32C2 9F lahf ; Load ah from flags
4044:32C3 43 inc bx
4044:32C4 9E sahf ; Store ah into flags
4044:32C5 87 DA xchg bx,dx
4044:32C7 C3 retn
sub_140 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:224F
;==========================================================================
4044:32C8 sub_142 proc near
4044:32C8 loc_544: ; xref 4044:22B8, 2353
4044:32C8 8B FC mov di,sp
4044:32CA 47 inc di
4044:32CB 47 inc di
4044:32CC BB 0008 mov bx,8
4044:32CF F8 clc ; Clear carry flag
4044:32D0 loc_545: ; xref 4044:32D7
4044:32D0 B0 00 mov al,0
4044:32D2 1A 05 sbb al,[di]
4044:32D4 2F das ; Decimal adjust
4044:32D5 AA stosb ; Store al to es:[di]
4044:32D6 4B dec bx
4044:32D7 75 F7 jnz loc_545 ; Jump if not zero
4044:32D9 C3 retn
sub_142 endp
4044:32DA loc_546: ; xref 4044:1FE4, 21D2, 21D9, 2208
; 221F
4044:32DA BB 098E mov bx,98Eh
4044:32DD E9 FD5B jmp loc_510 ; (303B)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:22C8
;==========================================================================
4044:32E0 sub_143 proc near
4044:32E0 5D pop bp
4044:32E1 8B FC mov di,sp
4044:32E3 33 DB xor bx,bx ; Zero register
4044:32E5 8A C8 mov cl,al
4044:32E7 8A EF mov ch,bh
4044:32E9 B0 20 mov al,20h ; ' '
4044:32EB F3/ AE repe scasb ; Rep zf=1+cx >0 Scan es:[di] for al
4044:32ED 75 02 jnz loc_547 ; Jump if not zero
4044:32EF E3 59 jcxz loc_555 ; Jump if cx=0
4044:32F1 loc_547: ; xref 4044:32ED
4044:32F1 4F dec di
4044:32F2 41 inc cx
4044:32F3 8A 05 mov al,[di]
4044:32F5 3C 2D cmp al,2Dh ; '-'
4044:32F7 74 04 je loc_548 ; Jump if equal
4044:32F9 3C 2B cmp al,2Bh ; '+'
4044:32FB 75 04 jne loc_549 ; Jump if not equal
4044:32FD loc_548: ; xref 4044:32F7
4044:32FD 47 inc di
4044:32FE 49 dec cx
4044:32FF E3 4F jcxz loc_556 ; Jump if cx=0
4044:3301 loc_549: ; xref 4044:32FB
4044:3301 50 push ax
4044:3302 BE 000A mov si,0Ah
4044:3305 8B C3 mov ax,bx
4044:3307 8A 1D mov bl,[di]
4044:3309 E9 0005 jmpn loc_551 ; (3311)
4044:330C locloop_550: ; xref 4044:3337
4044:330C 80 FB 20 cmp bl,20h ; ' '
4044:330F 74 28 je loc_553 ; Jump if equal
4044:3311 loc_551: ; xref 4044:3309
4044:3311 80 FB 30 cmp bl,30h ; '0'
4044:3314 72 3A jb loc_556 ; Jump if below
4044:3316 80 FB 39 cmp bl,39h ; '9'
4044:3319 77 35 ja loc_556 ; Jump if above
4044:331B F7 EE imul si ; dx:ax = reg * ax
4044:331D 70 31 jo loc_556 ; Jump if overflow=1
4044:331F 80 E3 0F and bl,0Fh
4044:3322 03 C3 add ax,bx
4044:3324 71 0E jno loc_552 ; Jump if not overflw
4044:3326 3D 8000 cmp ax,8000h
4044:3329 75 25 jne loc_556 ; Jump if not equal
4044:332B 58 pop ax
4044:332C 3C 2D cmp al,2Dh ; '-'
4044:332E 75 20 jne loc_556 ; Jump if not equal
4044:3330 B8 8000 mov ax,8000h
4044:3333 50 push ax
4044:3334 loc_552: ; xref 4044:3324
4044:3334 47 inc di
4044:3335 8A 1D mov bl,[di]
4044:3337 E2 D3 loop locloop_550 ; Loop if cx > 0
4044:3339 loc_553: ; xref 4044:330F
4044:3339 8B D8 mov bx,ax
4044:333B 58 pop ax
4044:333C 3C 2D cmp al,2Dh ; '-'
4044:333E 75 02 jne loc_554 ; Jump if not equal
4044:3340 F7 DB neg bx
4044:3342 loc_554: ; xref 4044:333E
4044:3342 33 D2 xor dx,dx ; Zero register
4044:3344 B0 20 mov al,20h ; ' '
4044:3346 F3/ AE repe scasb ; Rep zf=1+cx >0 Scan es:[di] for al
4044:3348 75 06 jnz loc_556 ; Jump if not zero
4044:334A loc_555: ; xref 4044:32EF
4044:334A 8A C3 mov al,bl
4044:334C 8B E7 mov sp,di
4044:334E FF E5 jmp bp ;*
4044:3350 loc_556: ; xref 4044:32FF, 3314, 3319, 331D
; 3329, 332E, 3348
4044:3350 E9 FB2E jmp loc_491 ; (2E81)
sub_143 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:277E
;==========================================================================
4044:3353 sub_144 proc near
4044:3353 5B pop bx
4044:3354 89 1E 099C mov word ptr ds:[99Ch],bx ; (4044:099C=8B3Ch)
4044:3358 8B 1E 3D0E mov bx,word ptr ds:[3D0Eh] ; (4044:3D0E=368Bh)
4044:335C 8A 07 mov al,[bx]
4044:335E A2 09A0 mov byte ptr ds:[9A0h],al ; (4044:09A0=3Ch)
4044:3361 A0 3D25 mov al,byte ptr ds:[3D25h] ; (4044:3D25=82h)
4044:3364 0A C0 or al,al ; Zero ?
4044:3366 74 08 jz loc_557 ; Jump if zero
4044:3368 E8 02A7 call sub_149 ; (3612)
4044:336B 74 03 jz loc_557 ; Jump if zero
4044:336D E8 FB11 call sub_121 ; (2E81)
4044:3370 loc_557: ; xref 4044:3366, 336B
4044:3370 A0 09A0 mov al,byte ptr ds:[9A0h] ; (4044:09A0=3Ch)
4044:3373 A2 09A1 mov byte ptr ds:[9A1h],al ; (4044:09A1=0A0h)
4044:3376 B0 56 mov al,56h ; 'V'
4044:3378 E8 027A call sub_148 ; (35F5)
4044:337B ,BB 09A1 mov bx,9A1h ; (4044:09A1=0A0h)
4044:337E 75 02 jnz loc_558 ; Jump if not zero
4044:3380 FE 0F dec byte ptr [bx]
4044:3382 loc_558: ; xref 4044:337E
4044:3382 8A 07 mov al,[bx]
4044:3384 F6 D0 not al
4044:3386 8A D8 mov bl,al
4044:3388 B7 FF mov bh,0FFh
4044:338A 43 inc bx
4044:338B 03 DC add bx,sp
4044:338D 8B E3 mov sp,bx
4044:338F A0 3D28 mov al,byte ptr ds:[3D28h] ; (4044:3D28=0Ah)
4044:3392 0A C0 or al,al ; Zero ?
4044:3394 75 2E jnz loc_562 ; Jump if not zero
4044:3396 B0 39 mov al,39h ; '9'
4044:3398 E8 025A call sub_148 ; (35F5)
4044:339B 74 27 jz loc_562 ; Jump if zero
4044:339D B0 2A mov al,2Ah ; '*'
4044:339F E8 0253 call sub_148 ; (35F5)
4044:33A2 74 04 jz loc_559 ; Jump if zero
4044:33A4 B1 20 mov cl,20h ; ' '
4044:33A6 EB 02 jmp short loc_560 ; (33AA)
4044:33A8 loc_559: ; xref 4044:33A2
4044:33A8 B1 2A mov cl,2Ah ; '*'
4044:33AA loc_560: ; xref 4044:33A6
4044:33AA A0 09A1 mov al,byte ptr ds:[9A1h] ; (4044:09A1=0A0h)
4044:33AD ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:33B0 9F lahf ; Load ah from flags
4044:33B1 03 DC add bx,sp
4044:33B3 D1 DE rcr si,1 ; Rotate thru carry
4044:33B5 9E sahf ; Store ah into flags
4044:33B6 D1 D6 rcl si,1 ; Rotate thru carry
4044:33B8 loc_561: ; xref 4044:33BF
4044:33B8 88 0F mov [bx],cl
4044:33BA 9F lahf ; Load ah from flags
4044:33BB 43 inc bx
4044:33BC 9E sahf ; Store ah into flags
4044:33BD FE C8 dec al
4044:33BF 75 F7 jnz loc_561 ; Jump if not zero
4044:33C1 E9 0208 jmp loc_592 ; (35CC)
4044:33C4 loc_562: ; xref 4044:3394, 339B
4044:33C4 B0 00 mov al,0
4044:33C6 A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:33C9 FE C0 inc al
4044:33CB A2 09A3 mov byte ptr ds:[9A3h],al ; (4044:09A3=3Ch)
4044:33CE A2 09A4 mov byte ptr ds:[9A4h],al ; (4044:09A4=98h)
4044:33D1 loc_563: ; xref 4044:342C, 347D, 3514
4044:33D1 ,E8 F611 call sub_107 ; (29E5)
4044:33D4 A2 099F mov byte ptr ds:[99Fh],al ; (4044:099F=58h)
4044:33D7 loc_564: ; xref 4044:34AC, 34C4, 3551, 3582
; 35C9
4044:33D7 ,A0 09A3 mov al,byte ptr ds:[9A3h] ; (4044:09A3=3Ch)
4044:33DA 8A D0 mov dl,al
4044:33DC B6 00 mov dh,0
4044:33DE A0 09A0 mov al,byte ptr ds:[9A0h] ; (4044:09A0=3Ch)
4044:33E1 2A C2 sub al,dl
4044:33E3 79 03 jns loc_565 ; Jump if not sign
4044:33E5 E9 01E4 jmp loc_592 ; (35CC)
4044:33E8 loc_565: ; xref 4044:33E3
4044:33E8 8B 1E 3D0E mov bx,word ptr ds:[3D0Eh] ; (4044:3D0E=368Bh)
4044:33EC 03 DA add bx,dx
4044:33EE 8A 07 mov al,[bx]
4044:33F0 A2 099E mov byte ptr ds:[99Eh],al ; (4044:099E=36h)
4044:33F3 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:33F6 3C 39 cmp al,39h ; '9'
4044:33F8 75 34 jne loc_567 ; Jump if not equal
4044:33FA A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:33FD 24 80 and al,80h
4044:33FF 74 1D jz loc_566 ; Jump if zero
4044:3401 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3404 24 7F and al,7Fh
4044:3406 A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:3409 E8 01D4 call sub_147 ; (35E0)
4044:340C 75 10 jnz loc_566 ; Jump if not zero
4044:340E A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3411 FE C8 dec al
4044:3413 8A C8 mov cl,al
4044:3415 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3418 E8 028E call sub_154 ; (36A9)
4044:341B E8 0278 call sub_153 ; (3696)
4044:341E loc_566: ; xref 4044:33FF, 340C
4044:341E A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3421 8A C8 mov cl,al
4044:3423 A0 099F mov al,byte ptr ds:[99Fh] ; (4044:099F=58h)
4044:3426 E8 026D call sub_153 ; (3696)
4044:3429 E8 01A9 call sub_145 ; (35D5)
4044:342C EB A3 jmp short loc_563 ; (33D1)
4044:342E loc_567: ; xref 4044:33F8
4044:342E 3C 5A cmp al,5Ah ; 'Z'
4044:3430 74 04 je loc_568 ; Jump if equal
4044:3432 3C 2A cmp al,2Ah ; '*'
4044:3434 75 4A jne loc_573 ; Jump if not equal
4044:3436 loc_568: ; xref 4044:3430
4044:3436 8A C8 mov cl,al
4044:3438 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:343B 24 7F and al,7Fh
4044:343D 75 07 jnz loc_569 ; Jump if not zero
4044:343F 8A C1 mov al,cl
4044:3441 0C 80 or al,80h
4044:3443 A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:3446 loc_569: ; xref 4044:343D
4044:3446 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3449 24 80 and al,80h
4044:344B 74 1A jz loc_571 ; Jump if zero
4044:344D A0 099F mov al,byte ptr ds:[99Fh] ; (4044:099F=58h)
4044:3450 3C 30 cmp al,30h ; '0'
4044:3452 75 13 jne loc_571 ; Jump if not equal
4044:3454 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3457 8A C8 mov cl,al
4044:3459 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:345C 3C 2A cmp al,2Ah ; '*'
4044:345E 74 02 je loc_570 ; Jump if equal
4044:3460 B0 20 mov al,20h ; ' '
4044:3462 loc_570: ; xref 4044:345E
4044:3462 E8 0231 call sub_153 ; (3696)
4044:3465 EB 13 jmp short loc_572 ; (347A)
4044:3467 loc_571: ; xref 4044:344B, 3452
4044:3467 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:346A 24 7F and al,7Fh
4044:346C A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:346F A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3472 8A C8 mov cl,al
4044:3474 A0 099F mov al,byte ptr ds:[99Fh] ; (4044:099F=58h)
4044:3477 E8 021C call sub_153 ; (3696)
4044:347A loc_572: ; xref 4044:3465
4044:347A E8 0158 call sub_145 ; (35D5)
4044:347D E9 FF51 jmp loc_563 ; (33D1)
4044:3480 loc_573: ; xref 4044:3434
4044:3480 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:3483 E8 015A call sub_147 ; (35E0)
4044:3486 74 03 jz loc_574 ; Jump if zero
4044:3488 E9 008C jmp loc_580 ; (3517)
4044:348B loc_574: ; xref 4044:3486
4044:348B A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:348E E8 01BE call sub_151 ; (364F)
4044:3491 75 34 jnz loc_576 ; Jump if not zero
4044:3493 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:3496 E8 01CE call sub_152 ; (3667)
4044:3499 75 14 jnz loc_575 ; Jump if not zero
4044:349B A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:349E 8A C8 mov cl,al
4044:34A0 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:34A3 E8 0203 call sub_154 ; (36A9)
4044:34A6 E8 01ED call sub_153 ; (3696)
4044:34A9 E8 0129 call sub_145 ; (35D5)
4044:34AC E9 FF28 jmp loc_564 ; (33D7)
4044:34AF loc_575: ; xref 4044:3499
4044:34AF A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:34B2 0C 80 or al,80h
4044:34B4 A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:34B7 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:34BA 8A C8 mov cl,al
4044:34BC B0 20 mov al,20h ; ' '
4044:34BE E8 01D5 call sub_153 ; (3696)
4044:34C1 E8 0111 call sub_145 ; (35D5)
4044:34C4 E9 FF10 jmp loc_564 ; (33D7)
4044:34C7 loc_576: ; xref 4044:3491
4044:34C7 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:34CA 24 80 and al,80h
4044:34CC 74 38 jz loc_578 ; Jump if zero
4044:34CE A0 099F mov al,byte ptr ds:[99Fh] ; (4044:099F=58h)
4044:34D1 3C 30 cmp al,30h ; '0'
4044:34D3 75 0C jne loc_577 ; Jump if not equal
4044:34D5 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:34D8 8A C8 mov cl,al
4044:34DA B0 20 mov al,20h ; ' '
4044:34DC E8 01B7 call sub_153 ; (3696)
4044:34DF EB 30 jmp short loc_579 ; (3511)
4044:34E1 loc_577: ; xref 4044:34D3
4044:34E1 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:34E4 FE C8 dec al
4044:34E6 8A C8 mov cl,al
4044:34E8 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:34EB E8 01BB call sub_154 ; (36A9)
4044:34EE E8 01A5 call sub_153 ; (3696)
4044:34F1 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:34F4 8A C8 mov cl,al
4044:34F6 A0 099F mov al,byte ptr ds:[99Fh] ; (4044:099F=58h)
4044:34F9 E8 019A call sub_153 ; (3696)
4044:34FC A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:34FF 24 7F and al,7Fh
4044:3501 A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:3504 EB 0B jmp short loc_579 ; (3511)
4044:3506 loc_578: ; xref 4044:34CC
4044:3506 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3509 8A C8 mov cl,al
4044:350B A0 099F mov al,byte ptr ds:[99Fh] ; (4044:099F=58h)
4044:350E E8 0185 call sub_153 ; (3696)
4044:3511 loc_579: ; xref 4044:34DF, 3504
4044:3511 E8 00C1 call sub_145 ; (35D5)
4044:3514 E9 FEBA jmp loc_563 ; (33D1)
4044:3517 loc_580: ; xref 4044:3488
4044:3517 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:351A 3C 56 cmp al,56h ; 'V'
4044:351C 75 36 jne loc_583 ; Jump if not equal
4044:351E A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3521 24 80 and al,80h
4044:3523 74 1D jz loc_581 ; Jump if zero
4044:3525 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3528 24 7F and al,7Fh
4044:352A A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:352D E8 00B0 call sub_147 ; (35E0)
4044:3530 75 10 jnz loc_581 ; Jump if not zero
4044:3532 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3535 FE C8 dec al
4044:3537 8A C8 mov cl,al
4044:3539 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:353C E8 016A call sub_154 ; (36A9)
4044:353F E8 0154 call sub_153 ; (3696)
4044:3542 loc_581: ; xref 4044:3523, 3530
4044:3542 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3545 24 7F and al,7Fh
4044:3547 75 05 jnz loc_582 ; Jump if not zero
4044:3549 FE C0 inc al
4044:354B A2 09A2 mov byte ptr ds:[9A2h],al ; (4044:09A2=82h)
4044:354E loc_582: ; xref 4044:3547
4044:354E E8 0089 call sub_146 ; (35DA)
4044:3551 E9 FE83 jmp loc_564 ; (33D7)
4044:3554 loc_583: ; xref 4044:351C
4044:3554 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3557 8A C8 mov cl,al
4044:3559 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:355C E8 00D9 call sub_150 ; (3638)
4044:355F 75 24 jnz loc_587 ; Jump if not zero
4044:3561 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3564 24 80 and al,80h
4044:3566 75 09 jnz loc_584 ; Jump if not zero
4044:3568 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:356B 3C 42 cmp al,42h ; 'B'
4044:356D 74 0B je loc_585 ; Jump if equal
4044:356F EB 0B jmp short loc_586 ; (357C)
4044:3571 loc_584: ; xref 4044:3566
4044:3571 A0 09A2 mov al,byte ptr ds:[9A2h] ; (4044:09A2=82h)
4044:3574 24 7F and al,7Fh
4044:3576 3C 2A cmp al,2Ah ; '*'
4044:3578 74 02 je loc_586 ; Jump if equal
4044:357A loc_585: ; xref 4044:356D
4044:357A B0 20 mov al,20h ; ' '
4044:357C loc_586: ; xref 4044:356F, 3578
4044:357C E8 0117 call sub_153 ; (3696)
4044:357F E8 0053 call sub_145 ; (35D5)
4044:3582 E9 FE52 jmp loc_564 ; (33D7)
4044:3585 loc_587: ; xref 4044:355F
4044:3585 A0 09A4 mov al,byte ptr ds:[9A4h] ; (4044:09A4=98h)
4044:3588 8A C8 mov cl,al
4044:358A A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:358D 3C 43 cmp al,43h ; 'C'
4044:358F 74 02 je loc_588 ; Jump if equal
4044:3591 3C 44 cmp al,44h ; 'D'
4044:3593 loc_588: ; xref 4044:358F
4044:3593 A0 3D25 mov al,byte ptr ds:[3D25h] ; (4044:3D25=82h)
4044:3596 0A C0 or al,al ; Zero ?
4044:3598 75 0C jnz loc_589 ; Jump if not zero
4044:359A B0 20 mov al,20h ; ' '
4044:359C E8 00F7 call sub_153 ; (3696)
4044:359F FE C1 inc cl
4044:35A1 E8 00F2 call sub_153 ; (3696)
4044:35A4 EB 1D jmp short loc_591 ; (35C3)
4044:35A6 loc_589: ; xref 4044:3598
4044:35A6 A0 099E mov al,byte ptr ds:[99Eh] ; (4044:099E=36h)
4044:35A9 3C 43 cmp al,43h ; 'C'
4044:35AB 75 0C jne loc_590 ; Jump if not equal
4044:35AD E8 00E6 call sub_153 ; (3696)
4044:35B0 FE C1 inc cl
4044:35B2 B0 52 mov al,52h ; 'R'
4044:35B4 E8 00DF call sub_153 ; (3696)
4044:35B7 EB 0A jmp short loc_591 ; (35C3)
4044:35B9 loc_590: ; xref 4044:35AB
4044:35B9 E8 00DA call sub_153 ; (3696)
4044:35BC FE C1 inc cl
4044:35BE B0 42 mov al,42h ; 'B'
4044:35C0 E8 00D3 call sub_153 ; (3696)
4044:35C3 loc_591: ; xref 4044:35A4, 35B7
4044:35C3 E8 000F call sub_145 ; (35D5)
4044:35C6 E8 000C call sub_145 ; (35D5)
4044:35C9 E9 FE0B jmp loc_564 ; (33D7)
4044:35CC loc_592: ; xref 4044:33C1, 33E5
4044:35CC A0 09A1 mov al,byte ptr ds:[9A1h] ; (4044:09A1=0A0h)
4044:35CF 8B 1E 099C mov bx,word ptr ds:[99Ch] ; (4044:099C=8B3Ch)
4044:35D3 FF E3 jmp bx ;*
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3429, 347A, 34A9, 34C1, 3511, 357F, 35C3
; 35C6
4044:35D5 sub_145:
4044:35D5 ,BB 09A4 mov bx,9A4h ; (4044:09A4=98h)
4044:35D8 FE 07 inc byte ptr [bx]
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:354E
4044:35DA sub_146:
4044:35DA ,BB 09A3 mov bx,9A3h ; (4044:09A3=3Ch)
4044:35DD FE 07 inc byte ptr [bx]
4044:35DF C3 retn
sub_144 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3409, 3483, 352D
;==========================================================================
4044:35E0 sub_147 proc near
4044:35E0 3C 53 cmp al,53h ; 'S'
4044:35E2 75 01 jne loc_593 ; Jump if not equal
4044:35E4 C3 retn
4044:35E5 loc_593: ; xref 4044:35E2
4044:35E5 3C 2B cmp al,2Bh ; '+'
4044:35E7 75 01 jne loc_594 ; Jump if not equal
4044:35E9 C3 retn
4044:35EA loc_594: ; xref 4044:35E7
4044:35EA 3C 2D cmp al,2Dh ; '-'
4044:35EC 75 01 jne loc_595 ; Jump if not equal
4044:35EE C3 retn
4044:35EF loc_595: ; xref 4044:35EC
4044:35EF 3C 24 cmp al,24h ; '$'
4044:35F1 75 01 jne loc_ret_596 ; Jump if not equal
4044:35F3 C3 retn
4044:35F4 loc_ret_596: ; xref 4044:35F1
4044:35F4 C3 retn
sub_147 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3378, 3398, 339F, 3614, 361C, 3624, 362C
; 3634
;==========================================================================
4044:35F5 sub_148 proc near
4044:35F5 8A E8 mov ch,al
4044:35F7 A0 09A0 mov al,byte ptr ds:[9A0h] ; (4044:09A0=3Ch)
4044:35FA 8A C8 mov cl,al
4044:35FC 8A C5 mov al,ch
4044:35FE 8B 1E 3D0E mov bx,word ptr ds:[3D0Eh] ; (4044:3D0E=368Bh)
4044:3602 43 inc bx
4044:3603 loc_597: ; xref 4044:360D
4044:3603 3A 07 cmp al,[bx]
4044:3605 75 01 jne loc_598 ; Jump if not equal
4044:3607 C3 retn
4044:3608 loc_598: ; xref 4044:3605
4044:3608 9F lahf ; Load ah from flags
4044:3609 43 inc bx
4044:360A 9E sahf ; Store ah into flags
4044:360B FE C9 dec cl
4044:360D 75 F4 jnz loc_597 ; Jump if not zero
4044:360F FE C0 inc al
4044:3611 C3 retn
sub_148 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3368
;==========================================================================
4044:3612 sub_149 proc near
4044:3612 B0 53 mov al,53h ; 'S'
4044:3614 E8 FFDE call sub_148 ; (35F5)
4044:3617 75 01 jnz loc_599 ; Jump if not zero
4044:3619 C3 retn
4044:361A loc_599: ; xref 4044:3617
4044:361A B0 2B mov al,2Bh ; '+'
4044:361C E8 FFD6 call sub_148 ; (35F5)
4044:361F 75 01 jnz loc_600 ; Jump if not zero
4044:3621 C3 retn
4044:3622 loc_600: ; xref 4044:361F
4044:3622 B0 2D mov al,2Dh ; '-'
4044:3624 E8 FFCE call sub_148 ; (35F5)
4044:3627 75 01 jnz loc_601 ; Jump if not zero
4044:3629 C3 retn
4044:362A loc_601: ; xref 4044:3627
4044:362A B0 43 mov al,43h ; 'C'
4044:362C E8 FFC6 call sub_148 ; (35F5)
4044:362F 75 01 jnz loc_602 ; Jump if not zero
4044:3631 C3 retn
4044:3632 loc_602: ; xref 4044:362F
4044:3632 B0 44 mov al,44h ; 'D'
4044:3634 E8 FFBE call sub_148 ; (35F5)
4044:3637 C3 retn
sub_149 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:355C
;==========================================================================
4044:3638 sub_150 proc near
4044:3638 3C 3A cmp al,3Ah ; ':'
4044:363A 75 01 jne loc_603 ; Jump if not equal
4044:363C C3 retn
4044:363D loc_603: ; xref 4044:363A
4044:363D 3C 2F cmp al,2Fh ; '/'
4044:363F 75 01 jne loc_604 ; Jump if not equal
4044:3641 C3 retn
4044:3642 loc_604: ; xref 4044:363F
4044:3642 3C 2C cmp al,2Ch ; ','
4044:3644 75 01 jne loc_605 ; Jump if not equal
4044:3646 C3 retn
4044:3647 loc_605: ; xref 4044:3644
4044:3647 3C 2E cmp al,2Eh ; '.'
4044:3649 75 01 jne loc_606 ; Jump if not equal
4044:364B C3 retn
4044:364C loc_606: ; xref 4044:3649
4044:364C 3C 42 cmp al,42h ; 'B'
4044:364E C3 retn
sub_150 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:348E
;==========================================================================
4044:364F sub_151 proc near
4044:364F ,BB 09A3 mov bx,9A3h ; (4044:09A3=3Ch)
4044:3652 8A 0F mov cl,[bx]
4044:3654 8B 1E 3D0E mov bx,word ptr ds:[3D0Eh] ; (4044:3D0E=368Bh)
4044:3658 loc_607: ; xref 4044:3662
4044:3658 9F lahf ; Load ah from flags
4044:3659 43 inc bx
4044:365A 9E sahf ; Store ah into flags
4044:365B FE C9 dec cl
4044:365D 75 01 jnz loc_608 ; Jump if not zero
4044:365F C3 retn
4044:3660 loc_608: ; xref 4044:365D
4044:3660 3A 07 cmp al,[bx]
4044:3662 75 F4 jne loc_607 ; Jump if not equal
4044:3664 0A C0 or al,al ; Zero ?
4044:3666 C3 retn
sub_151 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3496
;==========================================================================
4044:3667 sub_152 proc near
4044:3667 8A E8 mov ch,al
4044:3669 A0 09A3 mov al,byte ptr ds:[9A3h] ; (4044:09A3=3Ch)
4044:366C 8A D0 mov dl,al
4044:366E B6 00 mov dh,0
4044:3670 A0 09A0 mov al,byte ptr ds:[9A0h] ; (4044:09A0=3Ch)
4044:3673 2A C2 sub al,dl
4044:3675 8A C8 mov cl,al
4044:3677 FE C1 inc cl
4044:3679 8A C5 mov al,ch
4044:367B 8B 1E 3D0E mov bx,word ptr ds:[3D0Eh] ; (4044:3D0E=368Bh)
4044:367F 9F lahf ; Load ah from flags
4044:3680 03 DA add bx,dx
4044:3682 D1 DE rcr si,1 ; Rotate thru carry
4044:3684 9E sahf ; Store ah into flags
4044:3685 D1 D6 rcl si,1 ; Rotate thru carry
4044:3687 loc_609: ; xref 4044:3691
4044:3687 9F lahf ; Load ah from flags
4044:3688 43 inc bx
4044:3689 9E sahf ; Store ah into flags
4044:368A FE C9 dec cl
4044:368C 75 01 jnz loc_610 ; Jump if not zero
4044:368E C3 retn
4044:368F loc_610: ; xref 4044:368C
4044:368F 3A 07 cmp al,[bx]
4044:3691 75 F4 jne loc_609 ; Jump if not equal
4044:3693 0A C0 or al,al ; Zero ?
4044:3695 C3 retn
sub_152 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:341B, 3426, 3462, 3477, 34A6, 34BE, 34DC
; 34EE, 34F9, 350E, 353F, 357C, 359C, 35A1
; 35AD, 35B4, 35B9, 35C0
;==========================================================================
4044:3696 sub_153 proc near
4044:3696 ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:3699 8A D9 mov bl,cl
4044:369B 9F lahf ; Load ah from flags
4044:369C 43 inc bx
4044:369D 9E sahf ; Store ah into flags
4044:369E 9F lahf ; Load ah from flags
4044:369F 03 DC add bx,sp
4044:36A1 D1 DE rcr si,1 ; Rotate thru carry
4044:36A3 9E sahf ; Store ah into flags
4044:36A4 D1 D6 rcl si,1 ; Rotate thru carry
4044:36A6 88 07 mov [bx],al
4044:36A8 C3 retn
sub_153 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3418, 34A3, 34EB, 353C
;==========================================================================
4044:36A9 sub_154 proc near
4044:36A9 3C 24 cmp al,24h ; '$'
4044:36AB 75 01 jne loc_611 ; Jump if not equal
4044:36AD C3 retn
4044:36AE loc_611: ; xref 4044:36AB
4044:36AE 8A E8 mov ch,al
4044:36B0 A0 3D25 mov al,byte ptr ds:[3D25h] ; (4044:3D25=82h)
4044:36B3 0A C0 or al,al ; Zero ?
4044:36B5 75 0F jnz loc_613 ; Jump if not zero
4044:36B7 8A C5 mov al,ch
4044:36B9 3C 2B cmp al,2Bh ; '+'
4044:36BB 75 01 jne loc_612 ; Jump if not equal
4044:36BD C3 retn
4044:36BE loc_612: ; xref 4044:36BB
4044:36BE 3C 2D cmp al,2Dh ; '-'
4044:36C0 74 19 je loc_617 ; Jump if equal
4044:36C2 3C 53 cmp al,53h ; 'S'
4044:36C4 74 0F je loc_615 ; Jump if equal
4044:36C6 loc_613: ; xref 4044:36B5
4044:36C6 8A C5 mov al,ch
4044:36C8 3C 2B cmp al,2Bh ; '+'
4044:36CA 74 0F je loc_617 ; Jump if equal
4044:36CC 3C 2D cmp al,2Dh ; '-'
4044:36CE 75 01 jne loc_614 ; Jump if not equal
4044:36D0 C3 retn
4044:36D1 loc_614: ; xref 4044:36CE
4044:36D1 3C 53 cmp al,53h ; 'S'
4044:36D3 74 03 je loc_616 ; Jump if equal
4044:36D5 loc_615: ; xref 4044:36C4
4044:36D5 B0 2B mov al,2Bh ; '+'
4044:36D7 C3 retn
4044:36D8 loc_616: ; xref 4044:36D3
4044:36D8 B0 2D mov al,2Dh ; '-'
4044:36DA C3 retn
4044:36DB loc_617: ; xref 4044:36C0, 36CA
4044:36DB B0 20 mov al,20h ; ' '
4044:36DD C3 retn
sub_154 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:263B
;==========================================================================
4044:36DE sub_155 proc near
4044:36DE loc_618: ; xref 4044:36F8, 3710, 3717, 371C
; 3726, 3740, 374A, 375E
4044:36DE ,E8 EE5C call sub_94 ; (253D)
4044:36E1 3C 09 cmp al,9
4044:36E3 75 15 jne loc_620 ; Jump if not equal
4044:36E5 8A C5 mov al,ch
4044:36E7 FE C8 dec al
4044:36E9 78 0A js loc_619 ; Jump if sign=1
4044:36EB 02 C0 add al,al
4044:36ED 02 C0 add al,al
4044:36EF 02 C0 add al,al
4044:36F1 04 08 add al,8
4044:36F3 8A E8 mov ch,al
4044:36F5 loc_619: ; xref 4044:36E9
4044:36F5 E8 0079 call sub_156 ; (3771)
4044:36F8 EB E4 jmp short loc_618 ; (36DE)
4044:36FA loc_620: ; xref 4044:36E3
4044:36FA 3C 0A cmp al,0Ah
4044:36FC 75 20 jne loc_623 ; Jump if not equal
4044:36FE A0 3CE3 mov al,byte ptr ds:[3CE3h] ; (4044:3CE3=0EBh)
4044:3701 0A C0 or al,al ; Zero ?
4044:3703 74 04 jz loc_621 ; Jump if zero
4044:3705 2A C5 sub al,ch
4044:3707 72 10 jc loc_622 ; Jump if carry Set
4044:3709 loc_621: ; xref 4044:3703
4044:3709 ,BB 3CD2 mov bx,3CD2h ; (4044:3CD2=0D0h)
4044:370C 8A C5 mov al,ch
4044:370E 2A 07 sub al,[bx]
4044:3710 74 CC jz loc_618 ; Jump if zero
4044:3712 72 05 jc loc_622 ; Jump if carry Set
4044:3714 E8 008C call sub_158 ; (37A3)
4044:3717 EB C5 jmp short loc_618 ; (36DE)
4044:3719 loc_622: ; xref 4044:3707, 3712
4044:3719 E8 117C call sub_216 ; (4898)
4044:371C EB C0 jmp short loc_618 ; (36DE)
4044:371E loc_623: ; xref 4044:36FC
4044:371E 3C 0B cmp al,0Bh
4044:3720 75 0F jne loc_625 ; Jump if not equal
4044:3722 FE C5 inc ch
4044:3724 loc_624: ; xref 4044:372F
4044:3724 ,FE CD dec ch
4044:3726 74 B6 jz loc_618 ; Jump if zero
4044:3728 51 push cx
4044:3729 B0 20 mov al,20h ; ' '
4044:372B E8 007E call sub_159 ; (37AC)
4044:372E 59 pop cx
4044:372F EB F3 jmp short loc_624 ; (3724)
4044:3731 loc_625: ; xref 4044:3720
4044:3731 3C 0C cmp al,0Ch
4044:3733 75 0E jne loc_627 ; Jump if not equal
4044:3735 8A C5 mov al,ch
4044:3737 FE C5 inc ch
4044:3739 75 02 jnz loc_626 ; Jump if not zero
4044:373B B0 01 mov al,1
4044:373D loc_626: ; xref 4044:3739
4044:373D E8 0063 call sub_158 ; (37A3)
4044:3740 E9 FF9B ;* jmp loc_618 ; (36DE)
4044:3740 db 0E9h, 9Bh,0FFh ; Fixup - byte match
4044:3743 loc_627: ; xref 4044:3733
4044:3743 3C 0D cmp al,0Dh
4044:3745 75 06 jne loc_628 ; Jump if not equal
4044:3747 E8 0027 call sub_156 ; (3771)
4044:374A E9 FF91 ;* jmp loc_618 ; (36DE)
4044:374A db 0E9h, 91h,0FFh ; Fixup - byte match
4044:374D loc_628: ; xref 4044:3745
4044:374D 3C 0F cmp al,0Fh
4044:374F 74 01 je loc_629 ; Jump if equal
4044:3751 C3 retn
4044:3752 loc_629: ; xref 4044:374F
4044:3752 8A C5 mov al,ch
4044:3754 FE C5 inc ch
4044:3756 75 02 jnz loc_630 ; Jump if not zero
4044:3758 B0 01 mov al,1
4044:375A loc_630: ; xref 4044:3756, 376F
4044:375A ,0A C0 or al,al ; Zero ?
4044:375C 75 03 jnz loc_631 ; Jump if not zero
4044:375E E9 FF7D jmpn loc_618 ; (36DE)
4044:3761 loc_631: ; xref 4044:375C
4044:3761 FE C8 dec al
4044:3763 9F lahf ; Load ah from flags
4044:3764 86 C4 xchg al,ah
4044:3766 50 push ax
4044:3767 86 C4 xchg al,ah
4044:3769 E8 112C call sub_216 ; (4898)
4044:376C 58 pop ax
4044:376D 86 C4 xchg al,ah
4044:376F EB E9 jmp short loc_630 ; (375A)
sub_155 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:36F5, 3747
;==========================================================================
4044:3771 sub_156 proc near
4044:3771 loc_632: ; xref 4044:3785
4044:3771 ,FE C5 inc ch
4044:3773 FE CD dec ch
4044:3775 74 2A jz loc_636 ; Jump if zero
4044:3777 8A C5 mov al,ch
4044:3779 ,BB 3CD0 mov bx,3CD0h ; (4044:3CD0=0)
4044:377C 2A 07 sub al,[bx]
4044:377E 73 07 jnc loc_633 ; Jump if carry=0
4044:3780 51 push cx
4044:3781 E8 001D call sub_157 ; (37A1)
4044:3784 59 pop cx
4044:3785 EB EA jmp short loc_632 ; (3771)
4044:3787 loc_633: ; xref 4044:377E, 379F
4044:3787 ,A0 3CE1 mov al,byte ptr ds:[3CE1h] ; (4044:3CE1=4)
4044:378A 0A C0 or al,al ; Zero ?
4044:378C 74 04 jz loc_634 ; Jump if zero
4044:378E 3A C5 cmp al,ch
4044:3790 72 0F jb loc_636 ; Jump if below
4044:3792 loc_634: ; xref 4044:378C
4044:3792 A0 3CD0 mov al,byte ptr ds:[3CD0h] ; (4044:3CD0=0)
4044:3795 3A C5 cmp al,ch
4044:3797 75 01 jne loc_635 ; Jump if not equal
4044:3799 C3 retn
4044:379A loc_635: ; xref 4044:3797
4044:379A B0 20 mov al,20h ; ' '
4044:379C E8 000D call sub_159 ; (37AC)
4044:379F EB E6 jmp short loc_633 ; (3787)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3781
4044:37A1 sub_157:
4044:37A1 loc_636: ; xref 4044:3775, 3790
4044:37A1 B0 01 mov al,1
sub_156 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3714, 373D
;==========================================================================
4044:37A3 sub_158 proc near
4044:37A3 A2 09AB mov byte ptr ds:[9ABh],al ; (4044:09AB=8Bh)
4044:37A6 BB 09A9 mov bx,9A9h
4044:37A9 E9 0389 jmp loc_685 ; (3B35)
sub_158 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:266B, 2672, 2717, 272F, 2749, 2751, 279B
; 2961, 372B, 379C
;==========================================================================
4044:37AC sub_159 proc near
4044:37AC 51 push cx
4044:37AD 52 push dx
4044:37AE 53 push bx
4044:37AF 9F lahf ; Load ah from flags
4044:37B0 86 C4 xchg al,ah
4044:37B2 50 push ax
4044:37B3 A0 3CE1 mov al,byte ptr ds:[3CE1h] ; (4044:3CE1=4)
4044:37B6 0A C0 or al,al ; Zero ?
4044:37B8 74 11 jz loc_637 ; Jump if zero
4044:37BA ,BB 3CD0 mov bx,3CD0h ; (4044:3CD0=0)
4044:37BD 3A 07 cmp al,[bx]
4044:37BF 73 0A jae loc_637 ; Jump if above or =
4044:37C1 B0 0D mov al,0Dh
4044:37C3 E8 0010 call sub_160 ; (37D6)
4044:37C6 B0 0A mov al,0Ah
4044:37C8 E8 000B call sub_160 ; (37D6)
4044:37CB loc_637: ; xref 4044:37B8, 37BF
4044:37CB 58 pop ax
4044:37CC 86 C4 xchg al,ah
4044:37CE 9E sahf ; Store ah into flags
4044:37CF E8 0004 call sub_160 ; (37D6)
4044:37D2 5B pop bx
4044:37D3 5A pop dx
4044:37D4 59 pop cx
4044:37D5 C3 retn
sub_159 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:37C3, 37C8, 37CF
;==========================================================================
4044:37D6 sub_160 proc near
4044:37D6 A2 09A8 mov byte ptr ds:[9A8h],al ; (4044:09A8=0E0h)
4044:37D9 BB 09A6 mov bx,9A6h
4044:37DC E9 0268 jmp loc_671 ; (3A47)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2A05
4044:37DF sub_161:
4044:37DF loc_638: ; xref 4044:37EA, 3802, 380C
4044:37DF ,E8 ED5B call sub_94 ; (253D)
4044:37E2 3C 0B cmp al,0Bh
4044:37E4 75 0D jne loc_640 ; Jump if not equal
4044:37E6 FE C5 inc ch
4044:37E8 loc_639: ; xref 4044:37F1
4044:37E8 ,FE CD dec ch
4044:37EA 74 F3 jz loc_638 ; Jump if zero
4044:37EC 51 push cx
4044:37ED E8 01F6 call sub_166 ; (39E6)
4044:37F0 59 pop cx
4044:37F1 EB F5 jmp short loc_639 ; (37E8)
4044:37F3 loc_640: ; xref 4044:37E4
4044:37F3 3C 0C cmp al,0Ch
4044:37F5 75 0D jne loc_642 ; Jump if not equal
4044:37F7 8A C5 mov al,ch
4044:37F9 FE C5 inc ch
4044:37FB 75 02 jnz loc_641 ; Jump if not zero
4044:37FD B0 01 mov al,1
4044:37FF loc_641: ; xref 4044:37FB
4044:37FF E8 003E call sub_164 ; (3840)
4044:3802 EB DB jmp short loc_638 ; (37DF)
4044:3804 loc_642: ; xref 4044:37F5
4044:3804 3C 0D cmp al,0Dh
4044:3806 74 01 je loc_643 ; Jump if equal
4044:3808 C3 retn
4044:3809 loc_643: ; xref 4044:3806
4044:3809 E8 0002 call sub_162 ; (380E)
4044:380C EB D1 jmp short loc_638 ; (37DF)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3809
4044:380E sub_162:
4044:380E loc_644: ; xref 4044:3822
4044:380E ,FE C5 inc ch
4044:3810 FE CD dec ch
4044:3812 74 2A jz loc_648 ; Jump if zero
4044:3814 8A C5 mov al,ch
4044:3816 ,BB 3CD0 mov bx,3CD0h ; (4044:3CD0=0)
4044:3819 2A 07 sub al,[bx]
4044:381B 73 07 jnc loc_645 ; Jump if carry=0
4044:381D 51 push cx
4044:381E E8 001D call sub_163 ; (383E)
4044:3821 59 pop cx
4044:3822 EB EA jmp short loc_644 ; (380E)
4044:3824 loc_645: ; xref 4044:381B, 383C
4044:3824 ,A0 3CE1 mov al,byte ptr ds:[3CE1h] ; (4044:3CE1=4)
4044:3827 0A C0 or al,al ; Zero ?
4044:3829 74 04 jz loc_646 ; Jump if zero
4044:382B 3A C5 cmp al,ch
4044:382D 72 0F jb loc_648 ; Jump if below
4044:382F loc_646: ; xref 4044:3829
4044:382F A0 3CD0 mov al,byte ptr ds:[3CD0h] ; (4044:3CD0=0)
4044:3832 3A C5 cmp al,ch
4044:3834 75 01 jne loc_647 ; Jump if not equal
4044:3836 C3 retn
4044:3837 loc_647: ; xref 4044:3834
4044:3837 51 push cx
4044:3838 E8 01AB call sub_166 ; (39E6)
4044:383B 59 pop cx
4044:383C EB E6 jmp short loc_645 ; (3824)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:381E
4044:383E sub_163:
4044:383E loc_648: ; xref 4044:3812, 382D
4044:383E B0 01 mov al,1
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:37FF
4044:3840 sub_164:
4044:3840 A2 09AE mov byte ptr ds:[9AEh],al ; (4044:09AE=3Eh)
4044:3843 BB 09AC mov bx,9ACh
4044:3846 E9 02EC jmp loc_685 ; (3B35)
4044:3849 loc_649: ; xref 4044:27A8, 2A2B, 2BA6, 2BB3
; 2BBE, 2BCB
4044:3849 BB 09B0 mov bx,9B0h
4044:384C E9 F7EC jmp loc_510 ; (303B)
4044:384F loc_650: ; xref 4044:2E75
4044:384F 8B F3 mov si,bx
4044:3851 ,BF 0A1D mov di,0A1Dh ; (4044:0A1D=22h)
4044:3854 B9 000A mov cx,0Ah
4044:3857 FC cld ; Clear direction
4044:3858 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:385A 8B 36 0A1D mov si,word ptr ds:[0A1Dh] ; (4044:0A1D=3C22h)
4044:385E 82 3C 02 ;* cmp byte ptr [si],2
4044:385E db 82h, 3Ch, 02h ; Fixup - byte match
4044:3861 7D 71 jge loc_653 ; Jump if > or =
4044:3863 8B 36 0A1D mov si,word ptr ds:[0A1Dh] ; (4044:0A1D=3C22h)
4044:3867 82 3C 00 ;* cmp byte ptr [si],0
4044:3867 db 82h, 3Ch, 00h ; Fixup - byte match
4044:386A 75 34 jnz loc_651 ; Jump if not zero
4044:386C BE 0A16 mov si,0A16h
4044:386F B0 04 mov al,4
4044:3871 E8 E842 call sub_76 ; (20B6)
4044:3874 8A E0 mov ah,al
4044:3876 50 push ax
4044:3877 44 inc sp
4044:3878 B8 0E90 mov ax,0E90h
4044:387B 50 push ax
4044:387C B8 0000 mov ax,0
4044:387F 50 push ax
4044:3880 B8 0000 mov ax,0
4044:3883 50 push ax
4044:3884 B8 0000 mov ax,0
4044:3887 50 push ax
4044:3888 B8 0000 mov ax,0
4044:388B 50 push ax
4044:388C BB 3D2E mov bx,3D2Eh
4044:388F E8 05E3 call sub_184 ; (3E75)
4044:3892 C7 06 0A2B 3D2E mov word ptr ds:[0A2Bh],3D2Eh ; (4044:0A2B=79E8h)
4044:3898 ,BB 0A29 mov bx,0A29h ; (4044:0A29=0A0h)
4044:389B E8 0573 call sub_183 ; (3E11)
4044:389E EB 32 jmp short loc_652 ; (38D2)
4044:38A0 loc_651: ; xref 4044:386A
4044:38A0 BE 0A16 mov si,0A16h
4044:38A3 B0 04 mov al,4
4044:38A5 E8 E80E call sub_76 ; (20B6)
4044:38A8 8A E0 mov ah,al
4044:38AA 50 push ax
4044:38AB 44 inc sp
4044:38AC B8 2E52 mov ax,2E52h
4044:38AF 50 push ax
4044:38B0 B8 0000 mov ax,0
4044:38B3 50 push ax
4044:38B4 B8 0000 mov ax,0
4044:38B7 50 push ax
4044:38B8 B8 0000 mov ax,0
4044:38BB 50 push ax
4044:38BC B8 0000 mov ax,0
4044:38BF 50 push ax
4044:38C0 BB 3D54 mov bx,3D54h
4044:38C3 E8 05AF call sub_184 ; (3E75)
4044:38C6 C7 06 0A2F 3D54 mov word ptr ds:[0A2Fh],3D54h ; (4044:0A2F=1E5h)
4044:38CC ,BB 0A2D mov bx,0A2Dh ; (4044:0A2D=3)
4044:38CF E8 053F call sub_183 ; (3E11)
4044:38D2 loc_652: ; xref 4044:389E
4044:38D2 EB 12 jmp short loc_654 ; (38E6)
4044:38D4 loc_653: ; xref 4044:3861
4044:38D4 A1 0A1F mov ax,word ptr ds:[0A1Fh] ; (4044:0A1F=7E00h)
4044:38D7 A3 0A31 mov word ptr ds:[0A31h],ax ; (4044:0A31=0D0F6h)
4044:38DA ,BB 0A31 mov bx,0A31h ; (4044:0A31=0F6h)
4044:38DD E8 0531 call sub_183 ; (3E11)
4044:38E0 ,BB 0A33 mov bx,0A33h ; (4044:0A33=24h)
4044:38E3 E8 0DF4 call sub_215 ; (46DA)
4044:38E6 loc_654: ; xref 4044:38D2
4044:38E6 8B 36 0A23 mov si,word ptr ds:[0A23h] ; (4044:0A23=29Eh)
4044:38EA 8B 04 mov ax,[si]
4044:38EC A3 3CD9 mov word ptr ds:[3CD9h],ax ; (4044:3CD9=91A0h)
4044:38EF 8B 36 0A25 mov si,word ptr ds:[0A25h] ; (4044:0A25=0A2A2h)
4044:38F3 8B 04 mov ax,[si]
4044:38F5 A3 3CDB mov word ptr ds:[3CDBh],ax ; (4044:3CDB=0A20Ah)
4044:38F8 B1 06 mov cl,6
4044:38FA 8B 36 0A21 mov si,word ptr ds:[0A21h] ; (4044:0A21=0A00Ch)
4044:38FE 8B 04 mov ax,[si]
4044:3900 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:3902 25 C000 and ax,0C000h
4044:3905 80 E4 C0 and ah,0C0h
4044:3908 8A EC mov ch,ah
4044:390A B1 06 mov cl,6
4044:390C 8B 1E 3CE9 mov bx,word ptr ds:[3CE9h] ; (4044:3CE9=0A2FCh)
4044:3910 D3 E3 shl bx,cl ; Shift w/zeros fill
4044:3912 81 E3 C000 and bx,0C000h
4044:3916 8B C3 mov ax,bx
4044:3918 80 E4 C0 and ah,0C0h
4044:391B 3A EC cmp ch,ah
4044:391D B0 80 mov al,80h
4044:391F 75 02 jnz loc_655 ; Jump if not zero
4044:3921 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3923 loc_655: ; xref 4044:391F
4044:3923 3C 00 cmp al,0
4044:3925 74 06 je loc_656 ; Jump if equal
4044:3927 ,BB 0A37 mov bx,0A37h ; (4044:0A37=3)
4044:392A E8 00A0 call sub_165 ; (39CD)
4044:392D loc_656: ; xref 4044:3925
4044:392D B1 0B mov cl,0Bh
4044:392F 8B 36 0A21 mov si,word ptr ds:[0A21h] ; (4044:0A21=0A00Ch)
4044:3933 8B 04 mov ax,[si]
4044:3935 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:3937 25 C000 and ax,0C000h
4044:393A 80 E4 C0 and ah,0C0h
4044:393D 8A EC mov ch,ah
4044:393F B1 0B mov cl,0Bh
4044:3941 8B 1E 3CE9 mov bx,word ptr ds:[3CE9h] ; (4044:3CE9=0A2FCh)
4044:3945 D3 E3 shl bx,cl ; Shift w/zeros fill
4044:3947 81 E3 C000 and bx,0C000h
4044:394B 8B C3 mov ax,bx
4044:394D 80 E4 C0 and ah,0C0h
4044:3950 3A EC cmp ch,ah
4044:3952 B0 80 mov al,80h
4044:3954 75 02 jnz loc_657 ; Jump if not zero
4044:3956 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3958 loc_657: ; xref 4044:3954
4044:3958 3C 00 cmp al,0
4044:395A 74 06 je loc_658 ; Jump if equal
4044:395C ,BB 0A39 mov bx,0A39h ; (4044:0A39=4)
4044:395F E8 006B call sub_165 ; (39CD)
4044:3962 loc_658: ; xref 4044:395A
4044:3962 A0 3D00 mov al,byte ptr ds:[3D00h] ; (4044:3D00=8Fh)
4044:3965 F6 D0 not al
4044:3967 24 80 and al,80h
4044:3969 3C 00 cmp al,0
4044:396B 75 02 jne loc_659 ; Jump if not equal
4044:396D EB 35 jmp short loc_661 ; (39A4)
4044:396F loc_659: ; xref 4044:396B
4044:396F B1 08 mov cl,8
4044:3971 8B 36 0A21 mov si,word ptr ds:[0A21h] ; (4044:0A21=0A00Ch)
4044:3975 8B 04 mov ax,[si]
4044:3977 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:3979 25 C000 and ax,0C000h
4044:397C 80 E4 C0 and ah,0C0h
4044:397F 8A EC mov ch,ah
4044:3981 B1 08 mov cl,8
4044:3983 8B 1E 3CE9 mov bx,word ptr ds:[3CE9h] ; (4044:3CE9=0A2FCh)
4044:3987 D3 E3 shl bx,cl ; Shift w/zeros fill
4044:3989 81 E3 C000 and bx,0C000h
4044:398D 8B C3 mov ax,bx
4044:398F 80 E4 C0 and ah,0C0h
4044:3992 3A EC cmp ch,ah
4044:3994 B0 80 mov al,80h
4044:3996 75 02 jnz loc_660 ; Jump if not zero
4044:3998 D0 E0 shl al,1 ; Shift w/zeros fill
4044:399A loc_660: ; xref 4044:3996
4044:399A 3C 00 cmp al,0
4044:399C 74 06 je loc_661 ; Jump if equal
4044:399E ,BB 0A3B mov bx,0A3Bh ; (4044:0A3B=0A0h)
4044:39A1 E8 0029 call sub_165 ; (39CD)
4044:39A4 loc_661: ; xref 4044:396D, 399C
4044:39A4 A0 3D03 mov al,byte ptr ds:[3D03h] ; (4044:3D03=5)
4044:39A7 F6 D0 not al
4044:39A9 24 80 and al,80h
4044:39AB 3C 00 cmp al,0
4044:39AD 74 1B je loc_ret_662 ; Jump if equal
4044:39AF B1 0D mov cl,0Dh
4044:39B1 8B 36 0A21 mov si,word ptr ds:[0A21h] ; (4044:0A21=0A00Ch)
4044:39B5 8B 04 mov ax,[si]
4044:39B7 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:39B9 25 8000 and ax,8000h
4044:39BC 80 E4 80 and ah,80h
4044:39BF 82 FC 00 ;* cmp ah,0
4044:39BF db 82h,0FCh, 00h ; Fixup - byte match
4044:39C2 74 06 jz loc_ret_662 ; Jump if zero
4044:39C4 ,BB 0A3D mov bx,0A3Dh ; (4044:0A3D=3Ch)
4044:39C7 E8 0003 call sub_165 ; (39CD)
4044:39CA loc_ret_662: ; xref 4044:39AD, 39C2
4044:39CA C3 retn
4044:39CB EB 18 db 0EBh, 18h
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:392A, 395F, 39A1, 39C7
4044:39CD sub_165:
4044:39CD 8B 07 mov ax,[bx]
4044:39CF A3 0A3F mov word ptr ds:[0A3Fh],ax ; (4044:0A3F=0D08Bh)
4044:39D2 C7 06 0A45 3CB8 mov word ptr ds:[0A45h],3CB8h ; (4044:0A45=0FBh)
4044:39D8 A1 0A3F mov ax,word ptr ds:[0A3Fh] ; (4044:0A3F=0D08Bh)
4044:39DB A3 0A49 mov word ptr ds:[0A49h],ax ; (4044:0A49=274h)
4044:39DE BB 0A41 mov bx,0A41h
4044:39E1 E8 F657 call sub_124 ; (303B)
4044:39E4 C3 retn
4044:39E5 C3 db 0C3h
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2CC2, 37ED, 3838, 3BAE, 3CE7
4044:39E6 sub_166:
4044:39E6 82 3E 3CD8 00 ;* cmp byte ptr ds:[3CD8h],0 ; (4044:3CD8=7)
4044:39E6 db 82h, 3Eh,0D8h, 3Ch, 00h ; Fixup - byte match
4044:39EB B0 80 mov al,80h
4044:39ED 74 02 jz loc_663 ; Jump if zero
4044:39EF D0 E0 shl al,1 ; Shift w/zeros fill
4044:39F1 loc_663: ; xref 4044:39ED
4044:39F1 3C 00 cmp al,0
4044:39F3 74 1B je loc_665 ; Jump if equal
4044:39F5 C7 06 0A51 3CCC mov word ptr ds:[0A51h],3CCCh ; (4044:0A51=0E022h)
4044:39FB BB 0A4D mov bx,0A4Dh
4044:39FE E8 0A4C call sub_210 ; (444D)
4044:3A01 F6 D0 not al
4044:3A03 24 80 and al,80h
4044:3A05 3C 00 cmp al,0
4044:3A07 74 05 je loc_664 ; Jump if equal
4044:3A09 C6 06 0A4C 1A mov byte ptr ds:[0A4Ch],1Ah ; (4044:0A4C=0E0h)
4044:3A0E loc_664: ; xref 4044:3A07
4044:3A0E EB 0B jmp short loc_666 ; (3A1B)
4044:3A10 loc_665: ; xref 4044:39F3
4044:3A10 A0 3CD8 mov al,byte ptr ds:[3CD8h] ; (4044:3CD8=7)
4044:3A13 A2 0A4C mov byte ptr ds:[0A4Ch],al ; (4044:0A4C=0E0h)
4044:3A16 C6 06 3CD8 00 mov byte ptr ds:[3CD8h],0 ; (4044:3CD8=7)
4044:3A1B loc_666: ; xref 4044:3A0E
4044:3A1B 82 3E 0A4C 20 ;* cmp byte ptr ds:[0A4Ch],20h ; (4044:0A4C=0E0h) ' '
4044:3A1B db 82h, 3Eh, 4Ch, 0Ah, 20h ; Fixup - byte match
4044:3A20 B0 80 mov al,80h
4044:3A22 73 02 jnc loc_667 ; Jump if carry=0
4044:3A24 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3A26 loc_667: ; xref 4044:3A22
4044:3A26 3C 00 cmp al,0
4044:3A28 74 04 je loc_668 ; Jump if equal
4044:3A2A FF 06 3CD0 inc word ptr ds:[3CD0h] ; (4044:3CD0=0F600h)
4044:3A2E loc_668: ; xref 4044:3A28
4044:3A2E 82 3E 0A4C 0D ;* cmp byte ptr ds:[0A4Ch],0Dh ; (4044:0A4C=0E0h)
4044:3A2E db 82h, 3Eh, 4Ch, 0Ah, 0Dh ; Fixup - byte match
4044:3A33 B0 80 mov al,80h
4044:3A35 74 02 jz loc_669 ; Jump if zero
4044:3A37 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3A39 loc_669: ; xref 4044:3A35
4044:3A39 3C 00 cmp al,0
4044:3A3B 74 06 je loc_670 ; Jump if equal
4044:3A3D C7 06 3CD0 0001 mov word ptr ds:[3CD0h],1 ; (4044:3CD0=0F600h)
4044:3A43 loc_670: ; xref 4044:3A3B
4044:3A43 A0 0A4C mov al,byte ptr ds:[0A4Ch] ; (4044:0A4C=0E0h)
4044:3A46 C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:2E39, 3B7E, 3B98, 48A4
4044:3A47 sub_167:
4044:3A47 loc_671: ; xref 4044:37DC
4044:3A47 8B 07 mov ax,[bx]
4044:3A49 A3 0A5A mov word ptr ds:[0A5Ah],ax ; (4044:0A5A=3C82h)
4044:3A4C C7 06 0A60 3CCC mov word ptr ds:[0A60h],3CCCh ; (4044:0A60=820Eh)
4044:3A52 A1 0A5A mov ax,word ptr ds:[0A5Ah] ; (4044:0A5A=3C82h)
4044:3A55 A3 0A5E mov word ptr ds:[0A5Eh],ax ; (4044:0A5E=0FE04h)
4044:3A58 BB 0A5C mov bx,0A5Ch
4044:3A5B E8 0A05 call sub_211 ; (4463)
4044:3A5E F6 D0 not al
4044:3A60 24 80 and al,80h
4044:3A62 3C 00 cmp al,0
4044:3A64 74 19 je loc_672 ; Jump if equal
4044:3A66 C7 06 0A66 3CB8 mov word ptr ds:[0A66h],3CB8h ; (4044:0A66=0FF02h)
4044:3A6C C7 06 0A6A 0000 mov word ptr ds:[0A6Ah],0 ; (4044:0A6A=823Ch)
4044:3A72 BB 0A62 mov bx,0A62h
4044:3A75 E8 F5C3 call sub_124 ; (303B)
4044:3A78 3C 00 cmp al,0
4044:3A7A 74 00 jz $+2 ; delay for I/O
4044:3A7C E9 00B5 jmp loc_ret_684 ; (3B34)
4044:3A7F loc_672: ; xref 4044:3A64
4044:3A7F A0 3CFC mov al,byte ptr ds:[3CFCh] ; (4044:3CFC=8Fh)
4044:3A82 24 80 and al,80h
4044:3A84 3C 00 cmp al,0
4044:3A86 75 03 jne loc_673 ; Jump if not equal
4044:3A88 E9 00A9 jmp loc_ret_684 ; (3B34)
4044:3A8B loc_673: ; xref 4044:3A86
4044:3A8B 8B 36 0A5A mov si,word ptr ds:[0A5Ah] ; (4044:0A5A=3C82h)
4044:3A8F 82 3C 20 ;* cmp byte ptr [si],20h ; ' '
4044:3A8F db 82h, 3Ch, 20h ; Fixup - byte match
4044:3A92 B0 80 mov al,80h
4044:3A94 73 02 jnc loc_674 ; Jump if carry=0
4044:3A96 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3A98 loc_674: ; xref 4044:3A94
4044:3A98 3C 00 cmp al,0
4044:3A9A 74 07 je loc_675 ; Jump if equal
4044:3A9C FF 06 3CD0 inc word ptr ds:[3CD0h] ; (4044:3CD0=0F600h)
4044:3AA0 E9 0091 jmp loc_ret_684 ; (3B34)
4044:3AA3 loc_675: ; xref 4044:3A9A
4044:3AA3 8B 36 0A5A mov si,word ptr ds:[0A5Ah] ; (4044:0A5A=3C82h)
4044:3AA7 82 3C 0D ;* cmp byte ptr [si],0Dh
4044:3AA7 db 82h, 3Ch, 0Dh ; Fixup - byte match
4044:3AAA B0 80 mov al,80h
4044:3AAC 74 02 jz loc_676 ; Jump if zero
4044:3AAE D0 E0 shl al,1 ; Shift w/zeros fill
4044:3AB0 loc_676: ; xref 4044:3AAC
4044:3AB0 3C 00 cmp al,0
4044:3AB2 74 09 je loc_677 ; Jump if equal
4044:3AB4 C7 06 3CD0 0001 mov word ptr ds:[3CD0h],1 ; (4044:3CD0=0F600h)
4044:3ABA E9 0077 jmpn loc_ret_684 ; (3B34)
4044:3ABD loc_677: ; xref 4044:3AB2
4044:3ABD A0 3D04 mov al,byte ptr ds:[3D04h] ; (4044:3D04=98h)
4044:3AC0 24 80 and al,80h
4044:3AC2 3C 00 cmp al,0
4044:3AC4 75 03 jne loc_678 ; Jump if not equal
4044:3AC6 E9 006B jmpn loc_ret_684 ; (3B34)
4044:3AC9 loc_678: ; xref 4044:3AC4
4044:3AC9 8B 36 0A5A mov si,word ptr ds:[0A5Ah] ; (4044:0A5A=3C82h)
4044:3ACD 82 3C 0C ;* cmp byte ptr [si],0Ch
4044:3ACD db 82h, 3Ch, 0Ch ; Fixup - byte match
4044:3AD0 B0 80 mov al,80h
4044:3AD2 74 02 jz loc_679 ; Jump if zero
4044:3AD4 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3AD6 loc_679: ; xref 4044:3AD2
4044:3AD6 3C 00 cmp al,0
4044:3AD8 74 0C je loc_680 ; Jump if equal
4044:3ADA FF 06 3CD4 inc word ptr ds:[3CD4h] ; (4044:3CD4=3C80h)
4044:3ADE C7 06 3CD2 0001 mov word ptr ds:[3CD2h],1 ; (4044:3CD2=24D0h)
4044:3AE4 EB 4E jmp short loc_ret_684 ; (3B34)
4044:3AE6 loc_680: ; xref 4044:3AD8
4044:3AE6 8B 36 0A5A mov si,word ptr ds:[0A5Ah] ; (4044:0A5A=3C82h)
4044:3AEA 82 3C 0A ;* cmp byte ptr [si],0Ah
4044:3AEA db 82h, 3Ch, 0Ah ; Fixup - byte match
4044:3AED B0 80 mov al,80h
4044:3AEF 74 02 jz loc_681 ; Jump if zero
4044:3AF1 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3AF3 loc_681: ; xref 4044:3AEF
4044:3AF3 3C 00 cmp al,0
4044:3AF5 74 3D je loc_ret_684 ; Jump if equal
4044:3AF7 FF 06 3CD2 inc word ptr ds:[3CD2h] ; (4044:3CD2=24D0h)
4044:3AFB 83 3E 3CD2 00 cmp word ptr ds:[3CD2h],0 ; (4044:3CD2=24D0h)
4044:3B00 7F 06 jg loc_682 ; Jump if >
4044:3B02 C7 06 3CD2 0001 mov word ptr ds:[3CD2h],1 ; (4044:3CD2=24D0h)
4044:3B08 loc_682: ; xref 4044:3B00
4044:3B08 A1 3CE3 mov ax,word ptr ds:[3CE3h] ; (4044:3CE3=0D5EBh)
4044:3B0B 40 inc ax
4044:3B0C 39 06 3CD2 cmp word ptr ds:[3CD2h],ax ; (4044:3CD2=24D0h)
4044:3B10 75 22 jne loc_ret_684 ; Jump if not equal
4044:3B12 C7 06 0A70 3CB8 mov word ptr ds:[0A70h],3CB8h ; (4044:0A70=477Dh)
4044:3B18 C7 06 0A74 0000 mov word ptr ds:[0A74h],0 ; (4044:0A74=3C7Ah)
4044:3B1E BB 0A6C mov bx,0A6Ch
4044:3B21 E8 F517 call sub_124 ; (303B)
4044:3B24 F6 D0 not al
4044:3B26 24 80 and al,80h
4044:3B28 3C 00 cmp al,0
4044:3B2A 74 03 je loc_683 ; Jump if equal
4044:3B2C E8 0D69 call sub_216 ; (4898)
4044:3B2F loc_683: ; xref 4044:3B2A
4044:3B2F C6 06 3CD8 80 mov byte ptr ds:[3CD8h],80h ; (4044:3CD8=7)
4044:3B34 loc_ret_684: ; xref 4044:3A7C, 3A88, 3AA0, 3ABA
; 3AC6, 3AE4, 3AF5, 3B10
4044:3B34 C3 retn
4044:3B35 loc_685: ; xref 4044:2E7E, 37A9, 3846
4044:3B35 8B 07 mov ax,[bx]
4044:3B37 A3 0A7B mov word ptr ds:[0A7Bh],ax ; (4044:0A7B=3C68h)
4044:3B3A A0 3CFC mov al,byte ptr ds:[3CFCh] ; (4044:3CFC=8Fh)
4044:3B3D F6 D0 not al
4044:3B3F 24 80 and al,80h
4044:3B41 3C 00 cmp al,0
4044:3B43 74 01 je loc_686 ; Jump if equal
4044:3B45 C3 retn
4044:3B46 loc_686: ; xref 4044:3B43
4044:3B46 A0 3CFE mov al,byte ptr ds:[3CFEh] ; (4044:3CFE=8Bh)
4044:3B49 24 80 and al,80h
4044:3B4B 3C 00 cmp al,0
4044:3B4D 74 2C je loc_692 ; Jump if equal
4044:3B4F loc_687: ; xref 4044:3B77
4044:3B4F ,8B 36 0A7B mov si,word ptr ds:[0A7Bh] ; (4044:0A7B=3C68h)
4044:3B53 82 3C 00 ;* cmp byte ptr [si],0
4044:3B53 db 82h, 3Ch, 00h ; Fixup - byte match
4044:3B56 7E 21 jle loc_691 ; Jump if < or =
4044:3B58 8B 36 0A7B mov si,word ptr ds:[0A7Bh] ; (4044:0A7B=3C68h)
4044:3B5C FE 0C dec byte ptr [si]
4044:3B5E C6 06 0A7D 00 mov byte ptr ds:[0A7Dh],0 ; (4044:0A7D=0A1h)
4044:3B63 loc_688: ; xref 4044:3B75
4044:3B63 ,82 3E 0A7D 0A ;* cmp byte ptr ds:[0A7Dh],0Ah ; (4044:0A7D=0A1h)
4044:3B63 db 82h, 3Eh, 7Dh, 0Ah, 0Ah ; Fixup - byte match
4044:3B68 B0 80 mov al,80h
4044:3B6A 75 02 jnz loc_689 ; Jump if not zero
4044:3B6C D0 E0 shl al,1 ; Shift w/zeros fill
4044:3B6E loc_689: ; xref 4044:3B6A
4044:3B6E 3C 00 cmp al,0
4044:3B70 74 05 je loc_690 ; Jump if equal
4044:3B72 E8 0039 call sub_168 ; (3BAE)
4044:3B75 EB EC jmp short loc_688 ; (3B63)
4044:3B77 loc_690: ; xref 4044:3B70
4044:3B77 EB D6 jmp short loc_687 ; (3B4F)
4044:3B79 loc_691: ; xref 4044:3B56
4044:3B79 EB 30 jmp short loc_ret_695 ; (3BAB)
4044:3B7B loc_692: ; xref 4044:3B4D
4044:3B7B ,BB 0A7E mov bx,0A7Eh ; (4044:0A7E=7Ah)
4044:3B7E E8 FEC6 call sub_167 ; (3A47)
4044:3B81 loc_693: ; xref 4044:3BA9
4044:3B81 ,8B 36 0A7B mov si,word ptr ds:[0A7Bh] ; (4044:0A7B=3C68h)
4044:3B85 82 3C 00 ;* cmp byte ptr [si],0
4044:3B85 db 82h, 3Ch, 00h ; Fixup - byte match
4044:3B88 7E 21 jle loc_ret_695 ; Jump if < or =
4044:3B8A 8B 36 0A7B mov si,word ptr ds:[0A7Bh] ; (4044:0A7B=3C68h)
4044:3B8E FE 0C dec byte ptr [si]
4044:3B90 C6 06 3CD8 00 mov byte ptr ds:[3CD8h],0 ; (4044:3CD8=7)
4044:3B95 ,BB 0A80 mov bx,0A80h ; (4044:0A80=40h)
4044:3B98 E8 FEAC call sub_167 ; (3A47)
4044:3B9B 82 3E 3CD8 00 ;* cmp byte ptr ds:[3CD8h],0 ; (4044:3CD8=7)
4044:3B9B db 82h, 3Eh,0D8h, 3Ch, 00h ; Fixup - byte match
4044:3BA0 74 07 jz loc_694 ; Jump if zero
4044:3BA2 8B 36 0A7B mov si,word ptr ds:[0A7Bh] ; (4044:0A7B=3C68h)
4044:3BA6 C6 04 00 mov byte ptr [si],0
4044:3BA9 loc_694: ; xref 4044:3BA0
4044:3BA9 EB D6 jmp short loc_693 ; (3B81)
4044:3BAB loc_ret_695: ; xref 4044:3B79, 3B88
4044:3BAB C3 retn
sub_160 endp
4044:3BAC EB 33 db 0EBh, 33h
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3B72
;==========================================================================
4044:3BAE sub_168 proc near
4044:3BAE E8 FE35 call sub_166 ; (39E6)
4044:3BB1 A2 0A7D mov byte ptr ds:[0A7Dh],al ; (4044:0A7D=0A1h)
4044:3BB4 82 3E 0A7D 1A ;* cmp byte ptr ds:[0A7Dh],1Ah ; (4044:0A7D=0A1h)
4044:3BB4 db 82h, 3Eh, 7Dh, 0Ah, 1Ah ; Fixup - byte match
4044:3BB9 B0 80 mov al,80h
4044:3BBB 74 02 jz loc_696 ; Jump if zero
4044:3BBD D0 E0 shl al,1 ; Shift w/zeros fill
4044:3BBF loc_696: ; xref 4044:3BBB
4044:3BBF 3C 00 cmp al,0
4044:3BC1 74 1D je loc_ret_697 ; Jump if equal
4044:3BC3 C7 06 0A86 3CB8 mov word ptr ds:[0A86h],3CB8h ; (4044:0A86=0FB83h)
4044:3BC9 C7 06 0A8A 0000 mov word ptr ds:[0A8Ah],0 ; (4044:0A8A=0A10Dh)
4044:3BCF BB 0A82 mov bx,0A82h
4044:3BD2 E8 F466 call sub_124 ; (303B)
4044:3BD5 C7 06 3CD0 0001 mov word ptr ds:[3CD0h],1 ; (4044:3CD0=0F600h)
4044:3BDB C6 06 0A7D 0A mov byte ptr ds:[0A7Dh],0Ah ; (4044:0A7D=0A1h)
4044:3BE0 loc_ret_697: ; xref 4044:3BC1
4044:3BE0 C3 retn
sub_168 endp
4044:3BE1 C3 db 0C3h
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:2CED
;==========================================================================
4044:3BE2 sub_169 proc near
4044:3BE2 8B 07 mov ax,[bx]
4044:3BE4 A3 0A8F mov word ptr ds:[0A8Fh],ax ; (4044:0A8F=0A7A3h)
4044:3BE7 8B 36 0A8F mov si,word ptr ds:[0A8Fh] ; (4044:0A8F=0A7A3h)
4044:3BEB C6 04 00 mov byte ptr [si],0
4044:3BEE E8 005B call sub_170 ; (3C4C)
4044:3BF1 E8 0123 call sub_175 ; (3D17)
4044:3BF4 3C 00 cmp al,0
4044:3BF6 74 15 je loc_698 ; Jump if equal
4044:3BF8 C7 06 0A97 3CB8 mov word ptr ds:[0A97h],3CB8h ; (4044:0A97=0BB0Ah)
4044:3BFE C7 06 0A9B 0000 mov word ptr ds:[0A9Bh],0 ; (4044:0A9B=59E8h)
4044:3C04 BB 0A93 mov bx,0A93h
4044:3C07 E8 F431 call sub_124 ; (303B)
4044:3C0A B0 00 mov al,0
4044:3C0C C3 retn
4044:3C0D loc_698: ; xref 4044:3BF6
4044:3C0D E8 0123 call sub_177 ; (3D33)
4044:3C10 3C 00 cmp al,0
4044:3C12 74 03 je loc_699 ; Jump if equal
4044:3C14 B0 00 mov al,0
4044:3C16 C3 retn
4044:3C17 loc_699: ; xref 4044:3C12
4044:3C17 E8 0135 call sub_179 ; (3D4F)
4044:3C1A 24 80 and al,80h
4044:3C1C A2 0A92 mov byte ptr ds:[0A92h],al ; (4044:0A92=0BBh)
4044:3C1F 24 80 and al,80h
4044:3C21 3C 00 cmp al,0
4044:3C23 74 1C je loc_702 ; Jump if equal
4044:3C25 E8 00BF call sub_173 ; (3CE7)
4044:3C28 E8 0043 call sub_171 ; (3C6E)
4044:3C2B A0 0A91 mov al,byte ptr ds:[0A91h] ; (4044:0A91=2)
4044:3C2E 0C 20 or al,20h ; ' '
4044:3C30 3C 62 cmp al,62h ; 'b'
4044:3C32 B0 80 mov al,80h
4044:3C34 74 02 jz loc_700 ; Jump if zero
4044:3C36 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3C38 loc_700: ; xref 4044:3C34
4044:3C38 3C 00 cmp al,0
4044:3C3A 74 03 je loc_701 ; Jump if equal
4044:3C3C E8 00A8 call sub_173 ; (3CE7)
4044:3C3F loc_701: ; xref 4044:3C3A
4044:3C3F EB 03 jmp short loc_703 ; (3C44)
4044:3C41 loc_702: ; xref 4044:3C23
4044:3C41 E8 002A call sub_171 ; (3C6E)
4044:3C44 loc_703: ; xref 4044:3C3F
4044:3C44 E8 006E call sub_172 ; (3CB5)
4044:3C47 B0 80 mov al,80h
4044:3C49 C3 retn
sub_169 endp
4044:3C4A EB data_342 db 0EBh ; xref 4044:012E
4044:3C4B 20 db 20h
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3BEE
;==========================================================================
4044:3C4C sub_170 proc near
4044:3C4C loc_704: ; xref 4044:3C6A
4044:3C4C ,E8 0098 call sub_173 ; (3CE7)
4044:3C4F E8 00C5 call sub_175 ; (3D17)
4044:3C52 3C 00 cmp al,0
4044:3C54 74 01 je loc_705 ; Jump if equal
4044:3C56 C3 retn
4044:3C57 loc_705: ; xref 4044:3C54
4044:3C57 E8 00E7 call sub_178 ; (3D41)
4044:3C5A 3C 00 cmp al,0
4044:3C5C 74 0C je loc_706 ; Jump if equal
4044:3C5E E8 00C4 call sub_176 ; (3D25)
4044:3C61 F6 D0 not al
4044:3C63 24 80 and al,80h
4044:3C65 3C 00 cmp al,0
4044:3C67 74 01 je loc_706 ; Jump if equal
4044:3C69 C3 retn
4044:3C6A loc_706: ; xref 4044:3C5C, 3C67
4044:3C6A EB E0 jmp short loc_704 ; (3C4C)
sub_170 endp
4044:3C6C 45EB data_359 dw 45EBh ; xref 4044:0461, 0473, 047D, 048A
; 04BB, 04C8, 04D5, 0503
; 050D, 051A, 0557, 05AA
; 07CF, 080B, 0BC5, 112C
; 1136, 125F, 132D
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C28, 3C41
;==========================================================================
4044:3C6E sub_171 proc near
4044:3C6E loc_707: ; xref 4044:3CB1
4044:3C6E ,E8 00D0 call sub_178 ; (3D41)
4044:3C71 F6 D0 not al
4044:3C73 24 80 and al,80h
4044:3C75 3C 00 cmp al,0
4044:3C77 74 01 je loc_708 ; Jump if equal
4044:3C79 C3 retn
4044:3C7A loc_708: ; xref 4044:3C77
4044:3C7A A0 0A92 mov al,byte ptr ds:[0A92h] ; (4044:0A92=0BBh)
4044:3C7D 24 80 and al,80h
4044:3C7F 3C 00 cmp al,0
4044:3C81 74 18 je loc_710 ; Jump if equal
4044:3C83 E8 00C9 call sub_179 ; (3D4F)
4044:3C86 3C 00 cmp al,0
4044:3C88 74 0F je loc_709 ; Jump if equal
4044:3C8A E8 005A call sub_173 ; (3CE7)
4044:3C8D E8 00BF call sub_179 ; (3D4F)
4044:3C90 F6 D0 not al
4044:3C92 24 80 and al,80h
4044:3C94 3C 00 cmp al,0
4044:3C96 74 01 je loc_709 ; Jump if equal
4044:3C98 C3 retn
4044:3C99 loc_709: ; xref 4044:3C88, 3C96
4044:3C99 EB 10 jmp short loc_712 ; (3CAB)
4044:3C9B loc_710: ; xref 4044:3C81
4044:3C9B E8 0087 call sub_176 ; (3D25)
4044:3C9E 3C 00 cmp al,0
4044:3CA0 74 01 je loc_711 ; Jump if equal
4044:3CA2 C3 retn
4044:3CA3 loc_711: ; xref 4044:3CA0
4044:3CA3 E8 008D call sub_177 ; (3D33)
4044:3CA6 3C 00 cmp al,0
4044:3CA8 74 01 je loc_712 ; Jump if equal
4044:3CAA C3 retn
4044:3CAB loc_712: ; xref 4044:3C99, 3CA8
4044:3CAB E8 0042 call sub_174 ; (3CF0)
4044:3CAE E8 0036 call sub_173 ; (3CE7)
4044:3CB1 EB BB jmp short loc_707 ; (3C6E)
sub_171 endp
4044:3CB3 EB 30 jmp short loc_717 ; (3CE5)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C44
;==========================================================================
4044:3CB5 sub_172 proc near
4044:3CB5 C6 06 3CD8 00 mov byte ptr ds:[3CD8h],0 ; (4044:3CD8=7)
4044:3CBA loc_713: ; xref 4044:3CE3
4044:3CBA ,E8 0076 call sub_177 ; (3D33)
4044:3CBD 3C 00 cmp al,0
4044:3CBF 74 01 je loc_714 ; Jump if equal
4044:3CC1 C3 retn
4044:3CC2 loc_714: ; xref 4044:3CBF
4044:3CC2 E8 007C call sub_178 ; (3D41)
4044:3CC5 F6 D0 not al
4044:3CC7 24 80 and al,80h
4044:3CC9 3C 00 cmp al,0
4044:3CCB 74 01 je loc_715 ; Jump if equal
4044:3CCD C3 retn
4044:3CCE loc_715: ; xref 4044:3CCB
4044:3CCE E8 0054 call sub_176 ; (3D25)
4044:3CD1 F6 D0 not al
4044:3CD3 24 80 and al,80h
4044:3CD5 3C 00 cmp al,0
4044:3CD7 74 07 je loc_716 ; Jump if equal
4044:3CD9 A0 0A91 mov al,byte ptr ds:[0A91h] ; (4044:0A91=2)
4044:3CDC A2 3CD8 mov byte ptr ds:[3CD8h],al ; (4044:3CD8=7)
4044:3CDF C3 retn
4044:3CE0 loc_716: ; xref 4044:3CD7
4044:3CE0 E8 0004 call sub_173 ; (3CE7)
4044:3CE3 EB D5 jmp short loc_713 ; (3CBA)
sub_172 endp
4044:3CE5 loc_717: ; xref 4044:3CB3
4044:3CE5 EB 07 jmp short loc_718 ; (3CEE)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C25, 3C3C, 3C4C, 3C8A, 3CAE, 3CE0
;==========================================================================
4044:3CE7 sub_173 proc near
4044:3CE7 E8 FCFC call sub_166 ; (39E6)
4044:3CEA A2 0A91 mov byte ptr ds:[0A91h],al ; (4044:0A91=2)
4044:3CED C3 retn
sub_173 endp
4044:3CEE loc_718: ; xref 4044:3CE5
4044:3CEE EB 25 jmp short loc_720 ; (3D15)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3CAB
;==========================================================================
4044:3CF0 sub_174 proc near
4044:3CF0 8B 36 0A8F mov si,word ptr ds:[0A8Fh] ; (4044:0A8F=0A7A3h)
4044:3CF4 82 3C FE ;* cmp byte ptr [si],0FEh
4044:3CF4 db 82h, 3Ch,0FEh ; Fixup - byte match
4044:3CF7 75 01 jnz loc_719 ; Jump if not zero
4044:3CF9 C3 retn
4044:3CFA loc_719: ; xref 4044:3CF7
4044:3CFA 8B 36 0A8F mov si,word ptr ds:[0A8Fh] ; (4044:0A8F=0A7A3h)
4044:3CFE 8B 3E 0A8F mov di,word ptr ds:[0A8Fh] ; (4044:0A8F=0A7A3h)
4044:3D02 8A 05 mov al,[di]
4044:3D04 98 cbw ; Convrt byte to word
4044:3D05 03 F0 add si,ax
4044:3D07 A0 0A91 mov al,byte ptr ds:[0A91h] ; (4044:0A91=2)
4044:3D0A 88 84 0001 mov byte ptr data_2[si],al ; (4044:0001=0B1h)
4044:3D0E 8B 36 0A8F mov si,word ptr ds:[0A8Fh] ; (4044:0A8F=0A7A3h)
4044:3D12 FE 04 inc byte ptr [si]
4044:3D14 C3 retn
sub_174 endp
4044:3D15 loc_720: ; xref 4044:3CEE
4044:3D15 EB 0C jmp short loc_722 ; (3D23)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3BF1, 3C4F
;==========================================================================
4044:3D17 sub_175 proc near
4044:3D17 82 3E 0A91 1A ;* cmp byte ptr ds:[0A91h],1Ah ; (4044:0A91=2)
4044:3D17 db 82h, 3Eh, 91h, 0Ah, 1Ah ; Fixup - byte match
4044:3D1C B0 80 mov al,80h
4044:3D1E 74 02 jz loc_ret_721 ; Jump if zero
4044:3D20 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3D22 loc_ret_721: ; xref 4044:3D1E
4044:3D22 C3 retn
sub_175 endp
4044:3D23 loc_722: ; xref 4044:3D15
4044:3D23 EB 0C jmp short loc_724 ; (3D31)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C5E, 3C9B, 3CCE
;==========================================================================
4044:3D25 sub_176 proc near
4044:3D25 82 3E 0A91 20 ;* cmp byte ptr ds:[0A91h],20h ; (4044:0A91=2) ' '
4044:3D25 db 82h, 3Eh, 91h, 0Ah, 20h ; Fixup - byte match
4044:3D2A B0 80 mov al,80h
4044:3D2C 74 02 jz loc_ret_723 ; Jump if zero
4044:3D2E D0 E0 shl al,1 ; Shift w/zeros fill
4044:3D30 loc_ret_723: ; xref 4044:3D2C
4044:3D30 C3 retn
sub_176 endp
4044:3D31 loc_724: ; xref 4044:3D23
4044:3D31 EB 0C jmp short loc_726 ; (3D3F)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C0D, 3CA3, 3CBA
;==========================================================================
4044:3D33 sub_177 proc near
4044:3D33 82 3E 0A91 2C ;* cmp byte ptr ds:[0A91h],2Ch ; (4044:0A91=2) ','
4044:3D33 db 82h, 3Eh, 91h, 0Ah, 2Ch ; Fixup - byte match
4044:3D38 B0 80 mov al,80h
4044:3D3A 74 02 jz loc_ret_725 ; Jump if zero
4044:3D3C D0 E0 shl al,1 ; Shift w/zeros fill
4044:3D3E loc_ret_725: ; xref 4044:3D3A
4044:3D3E C3 retn
sub_177 endp
4044:3D3F loc_726: ; xref 4044:3D31
4044:3D3F EB 0C jmp short loc_728 ; (3D4D)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C57, 3C6E, 3CC2
;==========================================================================
4044:3D41 sub_178 proc near
4044:3D41 82 3E 0A91 20 ;* cmp byte ptr ds:[0A91h],20h ; (4044:0A91=2) ' '
4044:3D41 db 82h, 3Eh, 91h, 0Ah, 20h ; Fixup - byte match
4044:3D46 B0 80 mov al,80h
4044:3D48 73 02 jnc loc_ret_727 ; Jump if carry=0
4044:3D4A D0 E0 shl al,1 ; Shift w/zeros fill
4044:3D4C loc_ret_727: ; xref 4044:3D48
4044:3D4C C3 retn
sub_178 endp
4044:3D4D loc_728: ; xref 4044:3D3F
4044:3D4D EB 0C jmp short loc_ret_730 ; (3D5B)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3C17, 3C83, 3C8D
;==========================================================================
4044:3D4F sub_179 proc near
4044:3D4F 82 3E 0A91 27 ;* cmp byte ptr ds:[0A91h],27h ; (4044:0A91=2) '''
4044:3D4F db 82h, 3Eh, 91h, 0Ah, 27h ; Fixup - byte match
4044:3D54 B0 80 mov al,80h
4044:3D56 74 02 jz loc_ret_729 ; Jump if zero
4044:3D58 D0 E0 shl al,1 ; Shift w/zeros fill
4044:3D5A loc_ret_729: ; xref 4044:3D56
4044:3D5A C3 retn
sub_179 endp
4044:3D5B loc_ret_730: ; xref 4044:3D4D
4044:3D5B C3 retn
;* No entry point to code
4044:3D5C ,BE 3C96 mov si,3C96h ; (4044:3C96=74h)
4044:3D5F 8A 0C mov cl,[si]
4044:3D61 80 F9 10 cmp cl,10h
4044:3D64 72 06 jb loc_731 ; Jump if below
4044:3D66 BA 0AEE mov dx,0AEEh
4044:3D69 E9 E0FA jmp loc_263 ; (1E66)
4044:3D6C loc_731: ; xref 4044:3D64
4044:3D6C FE 04 inc byte ptr [si]
4044:3D6E 50 push ax
4044:3D6F B0 05 mov al,5
4044:3D71 F6 E1 mul cl ; ax = reg * al
4044:3D73 ,BF 0A9E mov di,0A9Eh ; (4044:0A9E=0A1h)
4044:3D76 03 F8 add di,ax
4044:3D78 58 pop ax
4044:3D79 AA stosb ; Store al to es:[di]
4044:3D7A 8B C3 mov ax,bx
4044:3D7C AB stosw ; Store ax to es:[di]
4044:3D7D 5E pop si
4044:3D7E 56 push si
4044:3D7F 2E: AD lods word ptr cs:[si] ; String [si] to ax
4044:3D81 3C EB cmp al,0EBh
4044:3D83 74 01 je loc_732 ; Jump if equal
4044:3D85 46 inc si
4044:3D86 loc_732: ; xref 4044:3D83
4044:3D86 8B C6 mov ax,si
4044:3D88 AB stosw ; Store ax to es:[di]
4044:3D89 8B C4 mov ax,sp
4044:3D8B 40 inc ax
4044:3D8C 40 inc ax
4044:3D8D ,BF 3C97 mov di,3C97h ; (4044:3C97=1)
4044:3D90 2A ED sub ch,ch
4044:3D92 D1 E1 shl cx,1 ; Shift w/zeros fill
4044:3D94 03 F9 add di,cx
4044:3D96 AB stosw ; Store ax to es:[di]
4044:3D97 C3 retn
4044:3D98 E8 44 00 E3 0F db 0E8h, 44h, 00h,0E3h, 0Fh
4044:3D9D locloop_733: ; xref 4044:3DAA
4044:3D9D 42 inc dx
4044:3D9E 83 EF 05 sub di,5
4044:3DA1 3A 05 cmp al,[di]
4044:3DA3 75 05 jne loc_734 ; Jump if not equal
4044:3DA5 3B 5D 01 cmp bx,[di+1]
4044:3DA8 74 03 je loc_736 ; Jump if equal
4044:3DAA loc_734: ; xref 4044:3DA3
4044:3DAA E2 F1 loop locloop_733 ; Loop if cx > 0
4044:3DAC loc_ret_735: ; xref 4044:3DB7, 3DC5
4044:3DAC C3 retn
4044:3DAD loc_736: ; xref 4044:3DA8
4044:3DAD FE 0E 3C96 dec byte ptr ds:[3C96h] ; (4044:3C96=74h)
4044:3DB1 ,BE 0005 mov si,offset data_4+1 ; (4044:0005=0B1h)
4044:3DB4 03 F7 add si,di
4044:3DB6 loc_737: ; xref 4044:3DBE
4044:3DB6 ,4A dec dx
4044:3DB7 74 F3 jz loc_ret_735 ; Jump if zero
4044:3DB9 B9 0005 mov cx,5
4044:3DBC F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
4044:3DBE EB F6 jmp short loc_737 ; (3DB6)
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3071
;==========================================================================
4044:3DC0 sub_180 proc near
4044:3DC0 E8 001C call sub_181 ; (3DDF)
4044:3DC3 41 inc cx
4044:3DC4 loc_738: ; xref 4044:3DCC, 3DD7
4044:3DC4 49 dec cx
4044:3DC5 74 E5 jz loc_ret_735 ; Jump if zero
4044:3DC7 83 EF 05 sub di,5
4044:3DCA 3A 05 cmp al,[di]
4044:3DCC 75 F6 jne loc_738 ; Jump if not equal
4044:3DCE 83 7D 01 00 cmp word ptr [di+1],0
4044:3DD2 74 05 je loc_739 ; Jump if equal
4044:3DD4 3B 5D 01 cmp bx,[di+1]
4044:3DD7 75 EB jne loc_738 ; Jump if not equal
4044:3DD9 loc_739: ; xref 4044:3DD2
4044:3DD9 8B 5D 03 mov bx,[di+3]
4044:3DDC 0B C9 or cx,cx ; Zero ?
4044:3DDE C3 retn
sub_180 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3DC0
;==========================================================================
4044:3DDF sub_181 proc near
4044:3DDF 8A 0E 3C96 mov cl,byte ptr ds:[3C96h] ; (4044:3C96=74h)
4044:3DE3 2A ED sub ch,ch
4044:3DE5 BF 0A9E mov di,0A9Eh
4044:3DE8 50 push ax
4044:3DE9 B8 0005 mov ax,5
4044:3DEC F6 E1 mul cl ; ax = reg * al
4044:3DEE 03 F8 add di,ax
4044:3DF0 58 pop ax
4044:3DF1 2B D2 sub dx,dx
4044:3DF3 C3 retn
sub_181 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3142, 418E, 4193, 4227
;==========================================================================
4044:3DF4 sub_182 proc near
4044:3DF4 loc_740: ; xref 4044:313D, 3147
4044:3DF4 8B 1E 3CFA mov bx,word ptr ds:[3CFAh] ; (4044:3CFA=368Bh)
4044:3DF8 8A C2 mov al,dl
4044:3DFA 3C 20 cmp al,20h ; ' '
4044:3DFC 73 07 jae loc_741 ; Jump if above or =
4044:3DFE 3C 0D cmp al,0Dh
4044:3E00 75 0A jne loc_742 ; Jump if not equal
4044:3E02 BB 0000 mov bx,0
4044:3E05 loc_741: ; xref 4044:3DFC
4044:3E05 9F lahf ; Load ah from flags
4044:3E06 43 inc bx
4044:3E07 9E sahf ; Store ah into flags
4044:3E08 89 1E 3CFA mov word ptr ds:[3CFAh],bx ; (4044:3CFA=368Bh)
4044:3E0C loc_742: ; xref 4044:3E00
4044:3E0C B1 02 mov cl,2
4044:3E0E E9 E05F jmp loc_264 ; (1E70)
sub_182 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:389B, 38CF, 38DD
;==========================================================================
4044:3E11 sub_183 proc near
4044:3E11 8A 17 mov dl,[bx]
4044:3E13 9F lahf ; Load ah from flags
4044:3E14 43 inc bx
4044:3E15 9E sahf ; Store ah into flags
4044:3E16 8A 37 mov dh,[bx]
4044:3E18 87 DA xchg bx,dx
4044:3E1A 8A 17 mov dl,[bx]
4044:3E1C 9F lahf ; Load ah from flags
4044:3E1D 43 inc bx
4044:3E1E 9E sahf ; Store ah into flags
4044:3E1F 8A 37 mov dh,[bx]
4044:3E21 52 push dx
4044:3E22 E8 DE99 call sub_59 ; (1CBE)
4044:3E25 A0 3CBA mov al,byte ptr ds:[3CBAh] ; (4044:3CBA=0E8h)
4044:3E28 3C 08 cmp al,8
4044:3E2A 72 0B jb loc_743 ; Jump if below
4044:3E2C BB 0B0A mov bx,0B0Ah
4044:3E2F E8 F209 call sub_124 ; (303B)
4044:3E32 32 C0 xor al,al ; Zero register
4044:3E34 A2 3CBA mov byte ptr ds:[3CBAh],al ; (4044:3CBA=0E8h)
4044:3E37 loc_743: ; xref 4044:3E2A
4044:3E37 8A C8 mov cl,al
4044:3E39 B5 00 mov ch,0
4044:3E3B ,BB 3D06 mov bx,3D06h ; (4044:3D06=0F0h)
4044:3E3E 0A C0 or al,al ; Zero ?
4044:3E40 75 05 jnz loc_744 ; Jump if not zero
4044:3E42 C6 07 FF mov byte ptr [bx],0FFh
4044:3E45 EB 0E jmp short loc_745 ; (3E55)
4044:3E47 loc_744: ; xref 4044:3E40
4044:3E47 9F lahf ; Load ah from flags
4044:3E48 03 D9 add bx,cx
4044:3E4A 9E sahf ; Store ah into flags
4044:3E4B 9F lahf ; Load ah from flags
4044:3E4C 4B dec bx
4044:3E4D 9E sahf ; Store ah into flags
4044:3E4E 8A 07 mov al,[bx]
4044:3E50 9F lahf ; Load ah from flags
4044:3E51 43 inc bx
4044:3E52 9E sahf ; Store ah into flags
4044:3E53 88 07 mov [bx],al
4044:3E55 loc_745: ; xref 4044:3E45
4044:3E55 5A pop dx
4044:3E56 ,BB 3CBB mov bx,3CBBh ; (4044:3CBB=76h)
4044:3E59 9F lahf ; Load ah from flags
4044:3E5A 03 D9 add bx,cx
4044:3E5C 9E sahf ; Store ah into flags
4044:3E5D 9F lahf ; Load ah from flags
4044:3E5E 03 D9 add bx,cx
4044:3E60 D1 DE rcr si,1 ; Rotate thru carry
4044:3E62 9E sahf ; Store ah into flags
4044:3E63 D1 D6 rcl si,1 ; Rotate thru carry
4044:3E65 88 17 mov [bx],dl
4044:3E67 9F lahf ; Load ah from flags
4044:3E68 43 inc bx
4044:3E69 9E sahf ; Store ah into flags
4044:3E6A 88 37 mov [bx],dh
4044:3E6C ,BB 3CBA mov bx,3CBAh ; (4044:3CBA=0E8h)
4044:3E6F FE 07 inc byte ptr [bx]
4044:3E71 E8 DDDF call sub_58 ; (1C53)
4044:3E74 C3 retn
sub_183 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:388F, 38C3
;==========================================================================
4044:3E75 sub_184 proc near
4044:3E75 89 1E 0B2A mov word ptr ds:[0B2Ah],bx ; (4044:0B2A=0B03Eh)
4044:3E79 59 pop cx
4044:3E7A BB 0000 mov bx,0
4044:3E7D 9F lahf ; Load ah from flags
4044:3E7E 03 DC add bx,sp
4044:3E80 D1 DE rcr si,1 ; Rotate thru carry
4044:3E82 9E sahf ; Store ah into flags
4044:3E83 D1 D6 rcl si,1 ; Rotate thru carry
4044:3E85 89 1E 0B2C mov word ptr ds:[0B2Ch],bx ; (4044:0B2C=0B02h)
4044:3E89 ,BB 0B2A mov bx,0B2Ah ; (4044:0B2A=3Eh)
4044:3E8C 51 push cx
4044:3E8D E8 084A call sub_215 ; (46DA)
4044:3E90 59 pop cx
4044:3E91 ,BB 000A mov bx,offset data_9 ; (4044:000A=0D8h)
4044:3E94 9F lahf ; Load ah from flags
4044:3E95 03 DC add bx,sp
4044:3E97 9E sahf ; Store ah into flags
4044:3E98 8A 17 mov dl,[bx]
4044:3E9A B6 00 mov dh,0
4044:3E9C 9F lahf ; Load ah from flags
4044:3E9D 42 inc dx
4044:3E9E 9E sahf ; Store ah into flags
4044:3E9F 9F lahf ; Load ah from flags
4044:3EA0 03 DA add bx,dx
4044:3EA2 D1 DE rcr si,1 ; Rotate thru carry
4044:3EA4 9E sahf ; Store ah into flags
4044:3EA5 D1 D6 rcl si,1 ; Rotate thru carry
4044:3EA7 8B E3 mov sp,bx
4044:3EA9 51 push cx
4044:3EAA C3 retn
sub_184 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:42F6, 444D, 4463, 44A2, 44C9, 45DC, 4604
; 464B, 4685
;==========================================================================
4044:3EAB sub_185 proc near
4044:3EAB 89 1E 0BA2 mov word ptr ds:[0BA2h],bx ; (4044:0BA2=0E9C3h)
4044:3EAF 5A pop dx
4044:3EB0 5B pop bx
4044:3EB1 89 1E 0BA4 mov word ptr ds:[0BA4h],bx ; (4044:0BA4=13Dh)
4044:3EB5 87 DA xchg bx,dx
4044:3EB7 FF E3 jmp bx ;*Register jump
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3ED8, 3EFE, 42F9, 4301, 445B, 446E, 4676
4044:3EB9 sub_186:
4044:3EB9 8B 1E 0BA2 mov bx,word ptr ds:[0BA2h] ; (4044:0BA2=0E9C3h)
4044:3EBD 8A 17 mov dl,[bx]
4044:3EBF 9F lahf ; Load ah from flags
4044:3EC0 43 inc bx
4044:3EC1 9E sahf ; Store ah into flags
4044:3EC2 8A 37 mov dh,[bx]
4044:3EC4 9F lahf ; Load ah from flags
4044:3EC5 43 inc bx
4044:3EC6 9E sahf ; Store ah into flags
4044:3EC7 89 1E 0BA2 mov word ptr ds:[0BA2h],bx ; (4044:0BA2=0E9C3h)
4044:3ECB 87 DA xchg bx,dx
4044:3ECD C3 retn
sub_185 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3EDB, 3EE2, 3F01
;==========================================================================
4044:3ECE sub_187 proc near
4044:3ECE 8A 17 mov dl,[bx]
4044:3ED0 9F lahf ; Load ah from flags
4044:3ED1 43 inc bx
4044:3ED2 9E sahf ; Store ah into flags
4044:3ED3 8A 37 mov dh,[bx]
4044:3ED5 87 DA xchg bx,dx
4044:3ED7 C3 retn
sub_187 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3EEE, 4308, 4450, 4466, 44A5, 44CC, 45DF
; 4607
;==========================================================================
4044:3ED8 sub_188 proc near
4044:3ED8 E8 FFDE call sub_186 ; (3EB9)
4044:3EDB E8 FFF0 call sub_187 ; (3ECE)
4044:3EDE 89 1E 0BA8 mov word ptr ds:[0BA8h],bx ; (4044:0BA8=0A33Ch)
4044:3EE2 E8 FFE9 call sub_187 ; (3ECE)
4044:3EE5 89 1E 0BAC mov word ptr ds:[0BACh],bx ; (4044:0BAC=0B4BBh)
4044:3EE9 8A C7 mov al,bh
4044:3EEB 0A C3 or al,bl
4044:3EED C3 retn
sub_188 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:464E, 4688
;==========================================================================
4044:3EEE sub_189 proc near
4044:3EEE E8 FFE7 call sub_188 ; (3ED8)
4044:3EF1 75 01 jnz loc_746 ; Jump if not zero
4044:3EF3 C3 retn
4044:3EF4 loc_746: ; xref 4044:3EF1
4044:3EF4 8A C7 mov al,bh
4044:3EF6 0A C0 or al,al ; Zero ?
4044:3EF8 75 01 jnz loc_747 ; Jump if not zero
4044:3EFA C3 retn
4044:3EFB loc_747: ; xref 4044:3EF8
4044:3EFB 8A 07 mov al,[bx]
4044:3EFD C3 retn
sub_189 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4339, 436F, 4540, 4549, 46A0
;==========================================================================
4044:3EFE sub_190 proc near
4044:3EFE E8 FFB8 call sub_186 ; (3EB9)
4044:3F01 E8 FFCA call sub_187 ; (3ECE)
4044:3F04 C3 retn
sub_190 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3F5D, 3F6A, 3F75, 3FD4, 3FFB, 4013, 4037
; 404F, 40A7, 40E9
;==========================================================================
4044:3F05 sub_191 proc near
4044:3F05 8A C1 mov al,cl
4044:3F07 0A C0 or al,al ; Zero ?
4044:3F09 75 01 jnz loc_748 ; Jump if not zero
4044:3F0B C3 retn
4044:3F0C loc_748: ; xref 4044:3F09
4044:3F0C 8B F2 mov si,dx
4044:3F0E 8A 04 mov al,[si]
4044:3F10 2C 61 sub al,61h ; 'a'
4044:3F12 3C 1A cmp al,1Ah
4044:3F14 73 03 jae loc_749 ; Jump if above or =
4044:3F16 04 41 add al,41h ; 'A'
4044:3F18 C3 retn
4044:3F19 loc_749: ; xref 4044:3F14
4044:3F19 8B F2 mov si,dx
4044:3F1B 8A 04 mov al,[si]
4044:3F1D 3C 20 cmp al,20h ; ' '
4044:3F1F 75 01 jne loc_750 ; Jump if not equal
4044:3F21 C3 retn
4044:3F22 loc_750: ; xref 4044:3F1F
4044:3F22 3C 3D cmp al,3Dh ; '='
4044:3F24 75 01 jne loc_751 ; Jump if not equal
4044:3F26 C3 retn
4044:3F27 loc_751: ; xref 4044:3F24
4044:3F27 3C 2E cmp al,2Eh ; '.'
4044:3F29 75 01 jne loc_752 ; Jump if not equal
4044:3F2B C3 retn
4044:3F2C loc_752: ; xref 4044:3F29
4044:3F2C 3C 3A cmp al,3Ah ; ':'
4044:3F2E 75 01 jne loc_753 ; Jump if not equal
4044:3F30 C3 retn
4044:3F31 loc_753: ; xref 4044:3F2E
4044:3F31 3C 3B cmp al,3Bh ; ';'
4044:3F33 75 01 jne loc_754 ; Jump if not equal
4044:3F35 C3 retn
4044:3F36 loc_754: ; xref 4044:3F33
4044:3F36 3C 3C cmp al,3Ch ; '<'
4044:3F38 75 01 jne loc_755 ; Jump if not equal
4044:3F3A C3 retn
4044:3F3B loc_755: ; xref 4044:3F38
4044:3F3B 3C 3E cmp al,3Eh ; '>'
4044:3F3D 75 01 jne loc_756 ; Jump if not equal
4044:3F3F C3 retn
4044:3F40 loc_756: ; xref 4044:3F3D
4044:3F40 3C 5B cmp al,5Bh ; '['
4044:3F42 75 01 jne loc_757 ; Jump if not equal
4044:3F44 C3 retn
4044:3F45 loc_757: ; xref 4044:3F42
4044:3F45 3C 5D cmp al,5Dh ; ']'
4044:3F47 C3 retn
sub_191 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3F65, 3F72, 3FB7, 3FD1, 3FE9, 400C, 4018
; 402B, 4048, 4054, 40A4, 40DE, 40F4, 4113
;==========================================================================
4044:3F48 sub_192 proc near
4044:3F48 8A C1 mov al,cl
4044:3F4A 0A C0 or al,al ; Zero ?
4044:3F4C 75 01 jnz loc_758 ; Jump if not zero
4044:3F4E C3 retn
4044:3F4F loc_758: ; xref 4044:3F4C
4044:3F4F 9F lahf ; Load ah from flags
4044:3F50 42 inc dx
4044:3F51 9E sahf ; Store ah into flags
4044:3F52 FE C9 dec cl
4044:3F54 C3 retn
sub_192 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3FBD, 409A
;==========================================================================
4044:3F55 sub_193 proc near
4044:3F55 8B 1E 0BA6 mov bx,word ptr ds:[0BA6h] ; (4044:0BA6=20A1h)
4044:3F59 87 DA xchg bx,dx
4044:3F5B B1 0E mov cl,0Eh
4044:3F5D loc_759: ; xref 4044:3F68
4044:3F5D ,E8 FFA5 call sub_191 ; (3F05)
4044:3F60 3C 20 cmp al,20h ; ' '
4044:3F62 74 01 je loc_760 ; Jump if equal
4044:3F64 C3 retn
4044:3F65 loc_760: ; xref 4044:3F62
4044:3F65 E8 FFE0 call sub_192 ; (3F48)
4044:3F68 EB F3 jmp short loc_759 ; (3F5D)
sub_193 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3FF1, 4030
;==========================================================================
4044:3F6A sub_194 proc near
4044:3F6A E8 FF98 call sub_191 ; (3F05)
4044:3F6D 3C 24 cmp al,24h ; '$'
4044:3F6F 74 01 je loc_761 ; Jump if equal
4044:3F71 C3 retn
4044:3F72 loc_761: ; xref 4044:3F6F
4044:3F72 E8 FFD3 call sub_192 ; (3F48)
4044:3F75 E8 FF8D call sub_191 ; (3F05)
4044:3F78 2C 31 sub al,31h ; '1'
4044:3F7A 3C 02 cmp al,2
4044:3F7C 72 06 jb loc_762 ; Jump if below
4044:3F7E 9F lahf ; Load ah from flags
4044:3F7F 4A dec dx
4044:3F80 9E sahf ; Store ah into flags
4044:3F81 FE C1 inc cl
4044:3F83 C3 retn
4044:3F84 loc_762: ; xref 4044:3F7C
4044:3F84 51 push cx
4044:3F85 52 push dx
4044:3F86 53 push bx
4044:3F87 8A D8 mov bl,al
4044:3F89 B7 00 mov bh,0
4044:3F8B D1 E3 shl bx,1 ; Shift w/zeros fill
4044:3F8D D1 E3 shl bx,1 ; Shift w/zeros fill
4044:3F8F D1 E3 shl bx,1 ; Shift w/zeros fill
4044:3F91 D1 E3 shl bx,1 ; Shift w/zeros fill
4044:3F93 83 C3 5C add bx,5Ch
4044:3F96 8A C5 mov al,ch
4044:3F98 8A CD mov cl,ch
4044:3F9A B5 00 mov ch,0
4044:3F9C 03 D9 add bx,cx
4044:3F9E 87 DA xchg bx,dx
4044:3FA0 5B pop bx
4044:3FA1 B1 09 mov cl,9
4044:3FA3 0A C0 or al,al ; Zero ?
4044:3FA5 74 02 jz loc_763 ; Jump if zero
4044:3FA7 B1 03 mov cl,3
4044:3FA9 loc_763: ; xref 4044:3FA5, 3FB3
4044:3FA9 8B F2 mov si,dx
4044:3FAB 8A 04 mov al,[si]
4044:3FAD 43 inc bx
4044:3FAE 88 07 mov [bx],al
4044:3FB0 42 inc dx
4044:3FB1 FE C9 dec cl
4044:3FB3 75 F4 jnz loc_763 ; Jump if not zero
4044:3FB5 5A pop dx
4044:3FB6 59 pop cx
4044:3FB7 E8 FF8E call sub_192 ; (3F48)
4044:3FBA 32 C0 xor al,al ; Zero register
4044:3FBC C3 retn
sub_194 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:43AA
;==========================================================================
4044:3FBD sub_195 proc near
4044:3FBD E8 FF95 call sub_193 ; (3F55)
4044:3FC0 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:3FC4 43 inc bx
4044:3FC5 0A C0 or al,al ; Zero ?
4044:3FC7 74 17 jz loc_764 ; Jump if zero
4044:3FC9 1C 41 sbb al,41h ; 'A'
4044:3FCB 3C 10 cmp al,10h
4044:3FCD 73 11 jae loc_764 ; Jump if above or =
4044:3FCF 8A E8 mov ch,al
4044:3FD1 E8 FF74 call sub_192 ; (3F48)
4044:3FD4 E8 FF2E call sub_191 ; (3F05)
4044:3FD7 3C 3A cmp al,3Ah ; ':'
4044:3FD9 74 0A je loc_765 ; Jump if equal
4044:3FDB FE C1 inc cl
4044:3FDD 9F lahf ; Load ah from flags
4044:3FDE 4A dec dx
4044:3FDF 9E sahf ; Store ah into flags
4044:3FE0 loc_764: ; xref 4044:3FC7, 3FCD
4044:3FE0 C6 07 00 mov byte ptr [bx],0
4044:3FE3 EB 07 jmp short loc_766 ; (3FEC)
4044:3FE5 loc_765: ; xref 4044:3FD9
4044:3FE5 88 2F mov [bx],ch
4044:3FE7 FE 07 inc byte ptr [bx]
4044:3FE9 E8 FF5C call sub_192 ; (3F48)
4044:3FEC loc_766: ; xref 4044:3FE3
4044:3FEC B5 00 mov ch,0
4044:3FEE 9F lahf ; Load ah from flags
4044:3FEF 4B dec bx
4044:3FF0 9E sahf ; Store ah into flags
4044:3FF1 E8 FF76 call sub_194 ; (3F6A)
4044:3FF4 74 1D jz loc_770 ; Jump if zero
4044:3FF6 9F lahf ; Load ah from flags
4044:3FF7 43 inc bx
4044:3FF8 9E sahf ; Store ah into flags
4044:3FF9 B5 08 mov ch,8
4044:3FFB loc_767: ; xref 4044:4011
4044:3FFB E8 FF07 call sub_191 ; (3F05)
4044:3FFE 74 1D jz loc_771 ; Jump if zero
4044:4000 43 inc bx
4044:4001 3C 2A cmp al,2Ah ; '*'
4044:4003 75 05 jne loc_768 ; Jump if not equal
4044:4005 C6 07 3F mov byte ptr [bx],3Fh ; '?'
4044:4008 EB 05 jmp short loc_769 ; (400F)
4044:400A loc_768: ; xref 4044:4003
4044:400A 88 07 mov [bx],al
4044:400C E8 FF39 call sub_192 ; (3F48)
4044:400F loc_769: ; xref 4044:4008
4044:400F FE CD dec ch
4044:4011 75 E8 jnz loc_767 ; Jump if not zero
4044:4013 loc_770: ; xref 4044:3FF4, 401B
4044:4013 ,E8 FEEF call sub_191 ; (3F05)
4044:4016 74 0D jz loc_772 ; Jump if zero
4044:4018 E8 FF2D call sub_192 ; (3F48)
4044:401B EB F6 jmp short loc_770 ; (4013)
4044:401D loc_771: ; xref 4044:3FFE, 4023
4044:401D 43 inc bx
4044:401E C6 07 20 mov byte ptr [bx],20h ; ' '
4044:4021 FE CD dec ch
4044:4023 75 F8 jnz loc_771 ; Jump if not zero
4044:4025 loc_772: ; xref 4044:4016
4044:4025 B5 03 mov ch,3
4044:4027 3C 2E cmp al,2Eh ; '.'
4044:4029 75 2E jne loc_777 ; Jump if not equal
4044:402B E8 FF1A call sub_192 ; (3F48)
4044:402E B5 09 mov ch,9
4044:4030 E8 FF37 call sub_194 ; (3F6A)
4044:4033 74 1A jz loc_776 ; Jump if zero
4044:4035 B5 03 mov ch,3
4044:4037 loc_773: ; xref 4044:404D
4044:4037 E8 FECB call sub_191 ; (3F05)
4044:403A 74 1D jz loc_777 ; Jump if zero
4044:403C 43 inc bx
4044:403D 3C 2A cmp al,2Ah ; '*'
4044:403F 75 05 jne loc_774 ; Jump if not equal
4044:4041 C6 07 3F mov byte ptr [bx],3Fh ; '?'
4044:4044 EB 05 jmp short loc_775 ; (404B)
4044:4046 loc_774: ; xref 4044:403F
4044:4046 88 07 mov [bx],al
4044:4048 E8 FEFD call sub_192 ; (3F48)
4044:404B loc_775: ; xref 4044:4044
4044:404B FE CD dec ch
4044:404D 75 E8 jnz loc_773 ; Jump if not zero
4044:404F loc_776: ; xref 4044:4033, 4057
4044:404F ,E8 FEB3 call sub_191 ; (3F05)
4044:4052 74 0D jz loc_778 ; Jump if zero
4044:4054 E8 FEF1 call sub_192 ; (3F48)
4044:4057 EB F6 jmp short loc_776 ; (404F)
4044:4059 loc_777: ; xref 4044:4029, 403A, 405F
4044:4059 43 inc bx
4044:405A C6 07 20 mov byte ptr [bx],20h ; ' '
4044:405D FE CD dec ch
4044:405F 75 F8 jnz loc_777 ; Jump if not zero
4044:4061 loc_778: ; xref 4044:4052
4044:4061 B5 25 mov ch,25h ; '%'
4044:4063 loc_779: ; xref 4044:4069
4044:4063 43 inc bx
4044:4064 C6 07 00 mov byte ptr [bx],0
4044:4067 FE CD dec ch
4044:4069 75 F8 jnz loc_779 ; Jump if not zero
4044:406B 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:406F 43 inc bx
4044:4070 43 inc bx
4044:4071 8A 17 mov dl,[bx]
4044:4073 B9 000B mov cx,0Bh
4044:4076 loc_780: ; xref 4044:4081
4044:4076 8A 07 mov al,[bx]
4044:4078 3C 3F cmp al,3Fh ; '?'
4044:407A 75 02 jne loc_781 ; Jump if not equal
4044:407C FE C5 inc ch
4044:407E loc_781: ; xref 4044:407A
4044:407E 43 inc bx
4044:407F FE C9 dec cl
4044:4081 75 F3 jnz loc_780 ; Jump if not zero
4044:4083 8A C5 mov al,ch
4044:4085 0A C0 or al,al ; Zero ?
4044:4087 C3 retn
sub_195 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:41E0, 4217
;==========================================================================
4044:4088 sub_196 proc near
4044:4088 8A CB mov cl,bl
4044:408A B5 00 mov ch,0
4044:408C ,BB 0B41 mov bx,0B41h ; (4044:0B41=0A0h)
4044:408F 9F lahf ; Load ah from flags
4044:4090 03 D9 add bx,cx
4044:4092 D1 DE rcr si,1 ; Rotate thru carry
4044:4094 9E sahf ; Store ah into flags
4044:4095 D1 D6 rcl si,1 ; Rotate thru carry
4044:4097 8A 07 mov al,[bx]
4044:4099 C3 retn
sub_196 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4315
;==========================================================================
4044:409A sub_197 proc near
4044:409A E8 FEB8 call sub_193 ; (3F55)
4044:409D 3C 24 cmp al,24h ; '$'
4044:409F 74 03 je loc_782 ; Jump if equal
4044:40A1 E9 007C jmpn loc_792 ; (4120)
4044:40A4 loc_782: ; xref 4044:409F
4044:40A4 E8 FEA1 call sub_192 ; (3F48)
4044:40A7 E8 FE5B call sub_191 ; (3F05)
4044:40AA 2C 31 sub al,31h ; '1'
4044:40AC 3C 02 cmp al,2
4044:40AE 73 31 jae loc_786 ; Jump if above or =
4044:40B0 B1 08 mov cl,8
4044:40B2 BA 005C mov dx,5Ch
4044:40B5 0A C0 or al,al ; Zero ?
4044:40B7 74 03 jz loc_783 ; Jump if zero
4044:40B9 BA 006C mov dx,6Ch
4044:40BC loc_783: ; xref 4044:40B7
4044:40BC 8B F2 mov si,dx
4044:40BE 8A 04 mov al,[si]
4044:40C0 0A C0 or al,al ; Zero ?
4044:40C2 74 03 jz loc_784 ; Jump if zero
4044:40C4 E9 0059 jmpn loc_792 ; (4120)
4044:40C7 loc_784: ; xref 4044:40C2
4044:40C7 42 inc dx
4044:40C8 8B F2 mov si,dx
4044:40CA 8A 04 mov al,[si]
4044:40CC 3C 24 cmp al,24h ; '$'
4044:40CE 74 03 je loc_785 ; Jump if equal
4044:40D0 E9 004D jmpn loc_792 ; (4120)
4044:40D3 loc_785: ; xref 4044:40CE
4044:40D3 ,BB 0008 mov bx,offset data_8 ; (4044:0008=0)
4044:40D6 03 DA add bx,dx
4044:40D8 8A 07 mov al,[bx]
4044:40DA 3C 20 cmp al,20h ; ' '
4044:40DC 75 42 jne loc_792 ; Jump if not equal
4044:40DE E8 FE67 call sub_192 ; (3F48)
4044:40E1 loc_786: ; xref 4044:40AE
4044:40E1 BB 0B2E mov bx,0B2Eh
4044:40E4 B5 05 mov ch,5
4044:40E6 loc_787: ; xref 4044:4111
4044:40E6 ,51 push cx
4044:40E7 52 push dx
4044:40E8 53 push bx
4044:40E9 loc_788: ; xref 4044:40F8
4044:40E9 ,E8 FE19 call sub_191 ; (3F05)
4044:40EC 3A 07 cmp al,[bx]
4044:40EE 75 0A jne loc_789 ; Jump if not equal
4044:40F0 3C 20 cmp al,20h ; ' '
4044:40F2 74 1F je loc_791 ; Jump if equal
4044:40F4 E8 FE51 call sub_192 ; (3F48)
4044:40F7 43 inc bx
4044:40F8 EB EF jmp short loc_788 ; (40E9)
4044:40FA loc_789: ; xref 4044:40EE
4044:40FA 8A C5 mov al,ch
4044:40FC 5B pop bx
4044:40FD BA 0004 mov dx,4
4044:4100 9F lahf ; Load ah from flags
4044:4101 03 DA add bx,dx
4044:4103 D1 DE rcr si,1 ; Rotate thru carry
4044:4105 9E sahf ; Store ah into flags
4044:4106 D1 D6 rcl si,1 ; Rotate thru carry
4044:4108 5A pop dx
4044:4109 59 pop cx
4044:410A FE C8 dec al
4044:410C 75 01 jnz loc_790 ; Jump if not zero
4044:410E C3 retn
4044:410F loc_790: ; xref 4044:410C
4044:410F 8A E8 mov ch,al
4044:4111 EB D3 jmp short loc_787 ; (40E6)
4044:4113 loc_791: ; xref 4044:40F2
4044:4113 E8 FE32 call sub_192 ; (3F48)
4044:4116 B0 06 mov al,6
4044:4118 2A C5 sub al,ch
4044:411A 5B pop bx
4044:411B 59 pop cx
4044:411C 59 pop cx
4044:411D 0A C0 or al,al ; Zero ?
4044:411F C3 retn
4044:4120 loc_792: ; xref 4044:40A1, 40C4, 40D0, 40DC
4044:4120 32 C0 xor al,al ; Zero register
4044:4122 C3 retn
sub_197 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4133, 414C
;==========================================================================
4044:4123 sub_198 proc near
4044:4123 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4127 BA 002B mov dx,2Bh
4044:412A 9F lahf ; Load ah from flags
4044:412B 03 DA add bx,dx
4044:412D D1 DE rcr si,1 ; Rotate thru carry
4044:412F 9E sahf ; Store ah into flags
4044:4130 D1 D6 rcl si,1 ; Rotate thru carry
4044:4132 C3 retn
sub_198 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:413E, 4159, 4273, 429E, 42C3
;==========================================================================
4044:4133 sub_199 proc near
4044:4133 E8 FFED call sub_198 ; (4123)
4044:4136 8A 17 mov dl,[bx]
4044:4138 9F lahf ; Load ah from flags
4044:4139 43 inc bx
4044:413A 9E sahf ; Store ah into flags
4044:413B 8A 37 mov dh,[bx]
4044:413D C3 retn
sub_199 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4264, 42B0
;==========================================================================
4044:413E sub_200 proc near
4044:413E E8 FFF2 call sub_199 ; (4133)
4044:4141 43 inc bx
4044:4142 8A C2 mov al,dl
4044:4144 2A 07 sub al,[bx]
4044:4146 43 inc bx
4044:4147 8A C6 mov al,dh
4044:4149 1A 07 sbb al,[bx]
4044:414B C3 retn
sub_200 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4270, 42B5, 44BE, 44DA
;==========================================================================
4044:414C sub_201 proc near
4044:414C E8 FFD4 call sub_198 ; (4123)
4044:414F C6 07 00 mov byte ptr [bx],0
4044:4152 9F lahf ; Load ah from flags
4044:4153 43 inc bx
4044:4154 9E sahf ; Store ah into flags
4044:4155 C6 07 00 mov byte ptr [bx],0
4044:4158 C3 retn
sub_201 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:42AD
;==========================================================================
4044:4159 sub_202 proc near
4044:4159 E8 FFD7 call sub_199 ; (4133)
4044:415C 87 DA xchg bx,dx
4044:415E B9 0080 mov cx,80h
4044:4161 9F lahf ; Load ah from flags
4044:4162 03 D9 add bx,cx
4044:4164 D1 DE rcr si,1 ; Rotate thru carry
4044:4166 9E sahf ; Store ah into flags
4044:4167 D1 D6 rcl si,1 ; Rotate thru carry
4044:4169 87 DA xchg bx,dx
4044:416B 88 37 mov [bx],dh
4044:416D 9F lahf ; Load ah from flags
4044:416E 4B dec bx
4044:416F 9E sahf ; Store ah into flags
4044:4170 88 17 mov [bx],dl
4044:4172 C3 retn
sub_202 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:41DB
;==========================================================================
4044:4173 sub_203 proc near
4044:4173 ,BB 0B47 mov bx,0B47h ; (4044:0B47=8Bh)
4044:4176 8A 2F mov ch,[bx]
4044:4178 43 inc bx
4044:4179 8A 07 mov al,[bx]
4044:417B 2A C5 sub al,ch
4044:417D 72 38 jc loc_793 ; Jump if carry Set
4044:417F BB 0B47 mov bx,0B47h
4044:4182 C6 07 50 mov byte ptr [bx],50h ; 'P'
4044:4185 87 DA xchg bx,dx
4044:4187 B1 0A mov cl,0Ah
4044:4189 E8 DCE4 call sub_64 ; (1E70)
4044:418C B2 0D mov dl,0Dh
4044:418E E8 FC63 call sub_182 ; (3DF4)
4044:4191 B2 0A mov dl,0Ah
4044:4193 E8 FC5E call sub_182 ; (3DF4)
4044:4196 ,BB 0B48 mov bx,0B48h ; (4044:0B48=3Eh)
4044:4199 8A 17 mov dl,[bx]
4044:419B B6 00 mov dh,0
4044:419D 88 37 mov [bx],dh
4044:419F 9F lahf ; Load ah from flags
4044:41A0 4B dec bx
4044:41A1 9E sahf ; Store ah into flags
4044:41A2 9F lahf ; Load ah from flags
4044:41A3 42 inc dx
4044:41A4 9E sahf ; Store ah into flags
4044:41A5 9F lahf ; Load ah from flags
4044:41A6 42 inc dx
4044:41A7 9E sahf ; Store ah into flags
4044:41A8 88 17 mov [bx],dl
4044:41AA 9F lahf ; Load ah from flags
4044:41AB 03 DA add bx,dx
4044:41AD 9E sahf ; Store ah into flags
4044:41AE C6 07 0D mov byte ptr [bx],0Dh
4044:41B1 9F lahf ; Load ah from flags
4044:41B2 43 inc bx
4044:41B3 9E sahf ; Store ah into flags
4044:41B4 C6 07 0A mov byte ptr [bx],0Ah
4044:41B7 loc_793: ; xref 4044:417D
4044:41B7 ,BB 0B48 mov bx,0B48h ; (4044:0B48=3Eh)
4044:41BA FE 07 inc byte ptr [bx]
4044:41BC 8A 17 mov dl,[bx]
4044:41BE B6 00 mov dh,0
4044:41C0 9F lahf ; Load ah from flags
4044:41C1 03 DA add bx,dx
4044:41C3 D1 DE rcr si,1 ; Rotate thru carry
4044:41C5 9E sahf ; Store ah into flags
4044:41C6 D1 D6 rcl si,1 ; Rotate thru carry
4044:41C8 8A 0F mov cl,[bx]
4044:41CA C3 retn
sub_203 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4458, 4579
;==========================================================================
4044:41CB sub_204 proc near
4044:41CB 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:41CF 8A C7 mov al,bh
4044:41D1 0A C0 or al,al ; Zero ?
4044:41D3 75 21 jnz loc_797 ; Jump if not zero
4044:41D5 8A C3 mov al,bl
4044:41D7 FE C8 dec al
4044:41D9 75 05 jnz loc_794 ; Jump if not zero
4044:41DB E8 FF95 call sub_203 ; (4173)
4044:41DE EB 11 jmp short loc_796 ; (41F1)
4044:41E0 loc_794: ; xref 4044:41D9
4044:41E0 E8 FEA5 call sub_196 ; (4088)
4044:41E3 0A C0 or al,al ; Zero ?
4044:41E5 74 05 jz loc_795 ; Jump if zero
4044:41E7 B1 1A mov cl,1Ah
4044:41E9 32 C0 xor al,al ; Zero register
4044:41EB C3 retn
4044:41EC loc_795: ; xref 4044:41E5
4044:41EC E8 DC81 call sub_64 ; (1E70)
4044:41EF 8A C8 mov cl,al
4044:41F1 loc_796: ; xref 4044:41DE
4044:41F1 B0 FF mov al,0FFh
4044:41F3 0A C0 or al,al ; Zero ?
4044:41F5 C3 retn
4044:41F6 loc_797: ; xref 4044:41D3
4044:41F6 8A 07 mov al,[bx]
4044:41F8 3C 02 cmp al,2
4044:41FA 74 07 je loc_798 ; Jump if equal
4044:41FC 0A C0 or al,al ; Zero ?
4044:41FE 74 03 jz loc_798 ; Jump if zero
4044:4200 32 C0 xor al,al ; Zero register
4044:4202 C3 retn
4044:4203 loc_798: ; xref 4044:41FA, 41FE
4044:4203 B0 14 mov al,14h
4044:4205 E8 0046 call sub_206 ; (424E)
4044:4208 8A 0F mov cl,[bx]
4044:420A C3 retn
sub_204 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4473, 4587
;==========================================================================
4044:420B sub_205 proc near
4044:420B 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:420F 8A C7 mov al,bh
4044:4211 0A C0 or al,al ; Zero ?
4044:4213 75 1F jnz loc_802 ; Jump if not zero
4044:4215 8A D1 mov dl,cl
4044:4217 E8 FE6E call sub_196 ; (4088)
4044:421A FE C8 dec al
4044:421C 74 03 jz loc_799 ; Jump if zero
4044:421E 32 C0 xor al,al ; Zero register
4044:4220 C3 retn
4044:4221 loc_799: ; xref 4044:421C
4044:4221 8A C1 mov al,cl
4044:4223 3C 02 cmp al,2
4044:4225 75 05 jne loc_800 ; Jump if not equal
4044:4227 E8 FBCA call sub_182 ; (3DF4)
4044:422A EB 03 jmp short loc_801 ; (422F)
4044:422C loc_800: ; xref 4044:4225
4044:422C E8 DC41 call sub_64 ; (1E70)
4044:422F loc_801: ; xref 4044:422A
4044:422F B0 FF mov al,0FFh
4044:4231 0A C0 or al,al ; Zero ?
4044:4233 C3 retn
4044:4234 loc_802: ; xref 4044:4213
4044:4234 8A 07 mov al,[bx]
4044:4236 3C 02 cmp al,2
4044:4238 74 07 je loc_803 ; Jump if equal
4044:423A FE C8 dec al
4044:423C 74 03 jz loc_803 ; Jump if zero
4044:423E 32 C0 xor al,al ; Zero register
4044:4240 C3 retn
4044:4241 loc_803: ; xref 4044:4238, 423C
4044:4241 51 push cx
4044:4242 B0 15 mov al,15h
4044:4244 E8 0007 call sub_206 ; (424E)
4044:4247 59 pop cx
4044:4248 75 01 jnz loc_804 ; Jump if not zero
4044:424A C3 retn
4044:424B loc_804: ; xref 4044:4248
4044:424B 88 0F mov [bx],cl
4044:424D C3 retn
sub_205 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4205, 4244, 45BE
;==========================================================================
4044:424E sub_206 proc near
4044:424E loc_805: ; xref 4044:42C0
4044:424E ,A2 0BB1 mov byte ptr ds:[0BB1h],al ; (4044:0BB1=1)
4044:4251 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4255 BA 002F mov dx,2Fh
4044:4258 9F lahf ; Load ah from flags
4044:4259 03 DA add bx,dx
4044:425B D1 DE rcr si,1 ; Rotate thru carry
4044:425D 9E sahf ; Store ah into flags
4044:425E D1 D6 rcl si,1 ; Rotate thru carry
4044:4260 89 1E 0BAE mov word ptr ds:[0BAEh],bx ; (4044:0BAE=0E802h)
4044:4264 E8 FED7 call sub_200 ; (413E)
4044:4267 72 5A jc loc_810 ; Jump if carry Set
4044:4269 8A C2 mov al,dl
4044:426B 0A C6 or al,dh
4044:426D 75 01 jnz loc_806 ; Jump if not zero
4044:426F C3 retn
4044:4270 loc_806: ; xref 4044:426D
4044:4270 E8 FED9 call sub_201 ; (414C)
4044:4273 loc_807: ; xref 4044:42B3
4044:4273 E8 FEBD call sub_199 ; (4133)
4044:4276 8B 1E 0BAE mov bx,word ptr ds:[0BAEh] ; (4044:0BAE=0E802h)
4044:427A 9F lahf ; Load ah from flags
4044:427B 03 DA add bx,dx
4044:427D D1 DE rcr si,1 ; Rotate thru carry
4044:427F 9E sahf ; Store ah into flags
4044:4280 D1 D6 rcl si,1 ; Rotate thru carry
4044:4282 87 DA xchg bx,dx
4044:4284 B1 1A mov cl,1Ah
4044:4286 E8 DBE7 call sub_64 ; (1E70)
4044:4289 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:428D 9F lahf ; Load ah from flags
4044:428E 43 inc bx
4044:428F 9E sahf ; Store ah into flags
4044:4290 87 DA xchg bx,dx
4044:4292 A0 0BB1 mov al,byte ptr ds:[0BB1h] ; (4044:0BB1=1)
4044:4295 8A C8 mov cl,al
4044:4297 E8 DBD6 call sub_64 ; (1E70)
4044:429A 0A C0 or al,al ; Zero ?
4044:429C 74 0F jz loc_808 ; Jump if zero
4044:429E E8 FE92 call sub_199 ; (4133)
4044:42A1 9F lahf ; Load ah from flags
4044:42A2 43 inc bx
4044:42A3 9E sahf ; Store ah into flags
4044:42A4 88 17 mov [bx],dl
4044:42A6 9F lahf ; Load ah from flags
4044:42A7 43 inc bx
4044:42A8 9E sahf ; Store ah into flags
4044:42A9 88 37 mov [bx],dh
4044:42AB EB 08 jmp short loc_809 ; (42B5)
4044:42AD loc_808: ; xref 4044:429C
4044:42AD E8 FEA9 call sub_202 ; (4159)
4044:42B0 E8 FE8B call sub_200 ; (413E)
4044:42B3 72 BE jc loc_807 ; Jump if carry Set
4044:42B5 loc_809: ; xref 4044:42AB
4044:42B5 E8 FE94 call sub_201 ; (414C)
4044:42B8 B1 1A mov cl,1Ah
4044:42BA BA 0080 mov dx,80h
4044:42BD E8 DBB0 call sub_64 ; (1E70)
4044:42C0 E9 FF8B ;* jmp loc_805 ; (424E)
4044:42C0 db 0E9h, 8Bh,0FFh ; Fixup - byte match
4044:42C3 loc_810: ; xref 4044:4267
4044:42C3 E8 FE6D call sub_199 ; (4133)
4044:42C6 42 inc dx
4044:42C7 88 37 mov [bx],dh
4044:42C9 4B dec bx
4044:42CA 88 17 mov [bx],dl
4044:42CC 8A C2 mov al,dl
4044:42CE 24 7F and al,7Fh
4044:42D0 75 05 jnz loc_811 ; Jump if not zero
4044:42D2 ,BB 0BAB mov bx,0BABh ; (4044:0BAB=3Ch)
4044:42D5 FE 07 inc byte ptr [bx]
4044:42D7 loc_811: ; xref 4044:42D0
4044:42D7 8B 1E 0BAE mov bx,word ptr ds:[0BAEh] ; (4044:0BAE=0E802h)
4044:42DB 03 DA add bx,dx
4044:42DD 4B dec bx
4044:42DE B0 FF mov al,0FFh
4044:42E0 0A C0 or al,al ; Zero ?
4044:42E2 C3 retn
sub_206 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4343, 4372
;==========================================================================
4044:42E3 sub_207 proc near
4044:42E3 8A C7 mov al,bh
4044:42E5 0A C3 or al,bl
4044:42E7 74 01 jz loc_812 ; Jump if zero
4044:42E9 4B dec bx
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:435D
4044:42EA sub_208:
4044:42EA loc_812: ; xref 4044:42E7
4044:42EA BA 0080 mov dx,80h
4044:42ED 03 DA add bx,dx
4044:42EF 8A C3 mov al,bl
4044:42F1 24 80 and al,80h
4044:42F3 8A D8 mov bl,al
4044:42F5 C3 retn
sub_207 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4871
;==========================================================================
4044:42F6 sub_209 proc near
4044:42F6 E8 FBB2 call sub_185 ; (3EAB)
4044:42F9 E8 FBBD call sub_186 ; (3EB9)
4044:42FC 8A 07 mov al,[bx]
4044:42FE A2 0BAA mov byte ptr ds:[0BAAh],al ; (4044:0BAA=7Ah)
4044:4301 E8 FBB5 call sub_186 ; (3EB9)
4044:4304 89 1E 0BA6 mov word ptr ds:[0BA6h],bx ; (4044:0BA6=20A1h)
4044:4308 E8 FBCD call sub_188 ; (3ED8)
4044:430B A0 0BAA mov al,byte ptr ds:[0BAAh] ; (4044:0BAA=7Ah)
4044:430E 3C 05 cmp al,5
4044:4310 72 03 jb loc_813 ; Jump if below
4044:4312 E9 012A jmp loc_831 ; (443F)
4044:4315 loc_813: ; xref 4044:4310
4044:4315 E8 FD82 call sub_197 ; (409A)
4044:4318 74 1F jz loc_816 ; Jump if zero
4044:431A 8A E8 mov ch,al
4044:431C A0 0BAA mov al,byte ptr ds:[0BAAh] ; (4044:0BAA=7Ah)
4044:431F 3C 02 cmp al,2
4044:4321 72 03 jb loc_814 ; Jump if below
4044:4323 E9 0119 jmp loc_831 ; (443F)
4044:4326 loc_814: ; xref 4044:4321
4044:4326 8B 1E 0BA8 mov bx,word ptr ds:[0BA8h] ; (4044:0BA8=0A33Ch)
4044:432A 88 2F mov [bx],ch
4044:432C 32 07 xor al,[bx]
4044:432E 75 02 jnz loc_815 ; Jump if not zero
4044:4330 FE 07 inc byte ptr [bx]
4044:4332 loc_815: ; xref 4044:432E
4044:4332 43 inc bx
4044:4333 C6 07 00 mov byte ptr [bx],0
4044:4336 E9 0395 jmp loc_867 ; (46CE)
4044:4339 loc_816: ; xref 4044:4318
4044:4339 E8 FBC2 call sub_190 ; (3EFE)
4044:433C A0 0BAA mov al,byte ptr ds:[0BAAh] ; (4044:0BAA=7Ah)
4044:433F 3C 02 cmp al,2
4044:4341 72 11 jb loc_817 ; Jump if below
4044:4343 E8 FF9D call sub_207 ; (42E3)
4044:4346 53 push bx
4044:4347 8B 1E 0BA2 mov bx,word ptr ds:[0BA2h] ; (4044:0BA2=0E9C3h)
4044:434B 4B dec bx
4044:434C 4B dec bx
4044:434D 89 1E 0BA2 mov word ptr ds:[0BA2h],bx ; (4044:0BA2=0E9C3h)
4044:4351 5B pop bx
4044:4352 EB 0C jmp short loc_818 ; (4360)
4044:4354 loc_817: ; xref 4044:4341
4044:4354 8A C3 mov al,bl
4044:4356 0A C7 or al,bh
4044:4358 9F lahf ; Load ah from flags
4044:4359 4B dec bx
4044:435A 9E sahf ; Store ah into flags
4044:435B 74 0B jz loc_819 ; Jump if zero
4044:435D E8 FF8A call sub_208 ; (42EA)
4044:4360 loc_818: ; xref 4044:4352
4044:4360 8A C3 mov al,bl
4044:4362 02 C0 add al,al
4044:4364 8A C7 mov al,bh
4044:4366 D0 D0 rcl al,1 ; Rotate thru carry
4044:4368 loc_819: ; xref 4044:435B
4044:4368 A2 0B9D mov byte ptr ds:[0B9Dh],al ; (4044:0B9D=0E9h)
4044:436B 89 1E 0B9B mov word ptr ds:[0B9Bh],bx ; (4044:0B9B=2AFh)
4044:436F E8 FB8C call sub_190 ; (3EFE)
4044:4372 E8 FF6E call sub_207 ; (42E3)
4044:4375 89 1E 0BA0 mov word ptr ds:[0BA0h],bx ; (4044:0BA0=0B0h)
4044:4379 BA 0031 mov dx,31h
4044:437C 9F lahf ; Load ah from flags
4044:437D 03 DA add bx,dx
4044:437F D1 DE rcr si,1 ; Rotate thru carry
4044:4381 9E sahf ; Store ah into flags
4044:4382 D1 D6 rcl si,1 ; Rotate thru carry
4044:4384 E8 EB09 call sub_122 ; (2E90)
4044:4387 8A C7 mov al,bh
4044:4389 0A C3 or al,bl
4044:438B 75 03 jnz loc_820 ; Jump if not zero
4044:438D E9 00AF jmp loc_831 ; (443F)
4044:4390 loc_820: ; xref 4044:438B
4044:4390 9F lahf ; Load ah from flags
4044:4391 43 inc bx
4044:4392 9E sahf ; Store ah into flags
4044:4393 9F lahf ; Load ah from flags
4044:4394 43 inc bx
4044:4395 9E sahf ; Store ah into flags
4044:4396 89 1E 0BAC mov word ptr ds:[0BACh],bx ; (4044:0BAC=0B4BBh)
4044:439A C6 07 FF mov byte ptr [bx],0FFh
4044:439D 87 DA xchg bx,dx
4044:439F 8B 1E 0BA8 mov bx,word ptr ds:[0BA8h] ; (4044:0BA8=0A33Ch)
4044:43A3 88 17 mov [bx],dl
4044:43A5 9F lahf ; Load ah from flags
4044:43A6 43 inc bx
4044:43A7 9E sahf ; Store ah into flags
4044:43A8 88 37 mov [bx],dh
4044:43AA E8 FC10 call sub_195 ; (3FBD)
4044:43AD 74 03 jz loc_821 ; Jump if zero
4044:43AF E9 0277 jmp loc_862 ; (4629)
4044:43B2 loc_821: ; xref 4044:43AD
4044:43B2 8A C2 mov al,dl
4044:43B4 3C 20 cmp al,20h ; ' '
4044:43B6 75 03 jne loc_822 ; Jump if not equal
4044:43B8 E9 026E jmp loc_862 ; (4629)
4044:43BB loc_822: ; xref 4044:43B6
4044:43BB 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:43BF A0 0BAA mov al,byte ptr ds:[0BAAh] ; (4044:0BAA=7Ah)
4044:43C2 88 07 mov [bx],al
4044:43C4 3C 02 cmp al,2
4044:43C6 72 03 jb loc_823 ; Jump if below
4044:43C8 C6 07 02 mov byte ptr [bx],2
4044:43CB loc_823: ; xref 4044:43C6
4044:43CB 87 DA xchg bx,dx
4044:43CD 42 inc dx
4044:43CE 24 01 and al,1
4044:43D0 75 1F jnz loc_825 ; Jump if not zero
4044:43D2 8B 1E 0BA0 mov bx,word ptr ds:[0BA0h] ; (4044:0BA0=0B0h)
4044:43D6 89 1E 0B9E mov word ptr ds:[0B9Eh],bx ; (4044:0B9E=0FF30h)
4044:43DA B1 0F mov cl,0Fh
4044:43DC 52 push dx
4044:43DD E8 DA90 call sub_64 ; (1E70)
4044:43E0 5A pop dx
4044:43E1 FE C0 inc al
4044:43E3 75 26 jnz loc_828 ; Jump if not zero
4044:43E5 A0 0BAA mov al,byte ptr ds:[0BAAh] ; (4044:0BAA=7Ah)
4044:43E8 3C 04 cmp al,4
4044:43EA 74 03 je loc_824 ; Jump if equal
4044:43EC E9 023A jmp loc_862 ; (4629)
4044:43EF loc_824: ; xref 4044:43EA
4044:43EF EB 07 jmp short loc_826 ; (43F8)
4044:43F1 loc_825: ; xref 4044:43D0
4044:43F1 52 push dx
4044:43F2 B1 13 mov cl,13h
4044:43F4 E8 DA79 call sub_64 ; (1E70)
4044:43F7 5A pop dx
4044:43F8 loc_826: ; xref 4044:43EF
4044:43F8 B1 16 mov cl,16h
4044:43FA E8 DA73 call sub_64 ; (1E70)
4044:43FD FE C0 inc al
4044:43FF 75 03 jnz loc_827 ; Jump if not zero
4044:4401 E9 0225 jmp loc_862 ; (4629)
4044:4404 loc_827: ; xref 4044:43FF
4044:4404 ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:4407 89 1E 0B9E mov word ptr ds:[0B9Eh],bx ; (4044:0B9E=0FF30h)
4044:440B loc_828: ; xref 4044:43E3
4044:440B 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:440F BA 0028 mov dx,28h
4044:4412 03 DA add bx,dx
4044:4414 BA 0B9B mov dx,0B9Bh
4044:4417 B1 07 mov cl,7
4044:4419 loc_829: ; xref 4044:4423
4044:4419 8B F2 mov si,dx
4044:441B 8A 04 mov al,[si]
4044:441D 88 07 mov [bx],al
4044:441F 42 inc dx
4044:4420 43 inc bx
4044:4421 FE C9 dec cl
4044:4423 75 F4 jnz loc_829 ; Jump if not zero
4044:4425 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4429 8A 07 mov al,[bx]
4044:442B 43 inc bx
4044:442C 3C 02 cmp al,2
4044:442E 75 03 jne loc_830 ; Jump if not equal
4044:4430 E8 05D7 call sub_226 ; (4A0A)
4044:4433 loc_830: ; xref 4044:442E
4044:4433 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4437 E8 D926 call sub_61 ; (1D60)
4044:443A B0 FF mov al,0FFh
4044:443C E9 028F jmp loc_867 ; (46CE)
4044:443F loc_831: ; xref 4044:4312, 4323, 438D
4044:443F 8B 1E 0BA8 mov bx,word ptr ds:[0BA8h] ; (4044:0BA8=0A33Ch)
4044:4443 32 C0 xor al,al ; Zero register
4044:4445 88 07 mov [bx],al
4044:4447 43 inc bx
4044:4448 88 07 mov [bx],al
4044:444A E9 0281 jmp loc_867 ; (46CE)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:39FE
4044:444D sub_210:
4044:444D E8 FA5B call sub_185 ; (3EAB)
4044:4450 E8 FA85 call sub_188 ; (3ED8)
4044:4453 75 03 jnz loc_832 ; Jump if not zero
4044:4455 E9 0276 jmp loc_867 ; (46CE)
4044:4458 loc_832: ; xref 4044:4453
4044:4458 E8 FD70 call sub_204 ; (41CB)
4044:445B E8 FA5B call sub_186 ; (3EB9)
4044:445E 88 0F mov [bx],cl
4044:4460 E9 026B jmp loc_867 ; (46CE)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:3A5B
4044:4463 sub_211:
4044:4463 E8 FA45 call sub_185 ; (3EAB)
4044:4466 E8 FA6F call sub_188 ; (3ED8)
4044:4469 75 03 jnz loc_833 ; Jump if not zero
4044:446B E9 0260 jmp loc_867 ; (46CE)
4044:446E loc_833: ; xref 4044:4469
4044:446E E8 FA48 call sub_186 ; (3EB9)
4044:4471 8A 0F mov cl,[bx]
4044:4473 E8 FD95 call sub_205 ; (420B)
4044:4476 E9 0255 jmp loc_867 ; (46CE)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:45D4
4044:4479 sub_212:
4044:4479 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:447D 8A 07 mov al,[bx]
4044:447F 2C 02 sub al,2
4044:4481 75 01 jnz loc_834 ; Jump if not zero
4044:4483 C3 retn
4044:4484 loc_834: ; xref 4044:4481
4044:4484 B9 0022 mov cx,22h
4044:4487 9F lahf ; Load ah from flags
4044:4488 03 D9 add bx,cx
4044:448A D1 DE rcr si,1 ; Rotate thru carry
4044:448C 9E sahf ; Store ah into flags
4044:448D D1 D6 rcl si,1 ; Rotate thru carry
4044:448F FE 07 inc byte ptr [bx]
4044:4491 74 01 jz loc_835 ; Jump if zero
4044:4493 C3 retn
4044:4494 loc_835: ; xref 4044:4491
4044:4494 9F lahf ; Load ah from flags
4044:4495 43 inc bx
4044:4496 9E sahf ; Store ah into flags
4044:4497 FE 07 inc byte ptr [bx]
4044:4499 74 01 jz loc_836 ; Jump if zero
4044:449B C3 retn
4044:449C loc_836: ; xref 4044:4499
4044:449C 9F lahf ; Load ah from flags
4044:449D 43 inc bx
4044:449E 9E sahf ; Store ah into flags
4044:449F FE 07 inc byte ptr [bx]
4044:44A1 C3 retn
;* No entry point to code
4044:44A2 E8 FA06 call sub_185 ; (3EAB)
4044:44A5 E8 FA30 call sub_188 ; (3ED8)
4044:44A8 75 03 jnz loc_837 ; Jump if not zero
4044:44AA E9 0221 jmp loc_867 ; (46CE)
4044:44AD loc_837: ; xref 4044:44A8
4044:44AD 8A 07 mov al,[bx]
4044:44AF 3C 02 cmp al,2
4044:44B1 75 0E jne loc_839 ; Jump if not equal
4044:44B3 E8 0049 call sub_213 ; (44FF)
4044:44B6 E8 05FB call sub_227 ; (4AB4)
4044:44B9 75 03 jnz loc_838 ; Jump if not zero
4044:44BB E9 0210 jmp loc_867 ; (46CE)
4044:44BE loc_838: ; xref 4044:44B9
4044:44BE E8 FC8B call sub_201 ; (414C)
4044:44C1 loc_839: ; xref 4044:44B1
4044:44C1 B0 14 mov al,14h
4044:44C3 E8 0057 call sub_214 ; (451D)
4044:44C6 E9 0205 jmp loc_867 ; (46CE)
;* No entry point to code
4044:44C9 E8 F9DF call sub_185 ; (3EAB)
4044:44CC E8 FA09 call sub_188 ; (3ED8)
4044:44CF 75 03 jnz loc_840 ; Jump if not zero
4044:44D1 E9 01FA jmp loc_867 ; (46CE)
4044:44D4 loc_840: ; xref 4044:44CF
4044:44D4 8A 07 mov al,[bx]
4044:44D6 3C 02 cmp al,2
4044:44D8 75 03 jne loc_841 ; Jump if not equal
4044:44DA E8 FC6F call sub_201 ; (414C)
4044:44DD loc_841: ; xref 4044:44D8
4044:44DD B0 15 mov al,15h
4044:44DF E8 003B call sub_214 ; (451D)
4044:44E2 75 03 jnz loc_842 ; Jump if not zero
4044:44E4 E9 01E7 jmp loc_867 ; (46CE)
4044:44E7 loc_842: ; xref 4044:44E2
4044:44E7 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:44EB 8A 07 mov al,[bx]
4044:44ED 3C 02 cmp al,2
4044:44EF 74 05 je loc_843 ; Jump if equal
4044:44F1 B0 FF mov al,0FFh
4044:44F3 E9 01D8 jmp loc_867 ; (46CE)
4044:44F6 loc_843: ; xref 4044:44EF
4044:44F6 E8 0006 call sub_213 ; (44FF)
4044:44F9 E8 05BC call sub_228 ; (4AB8)
4044:44FC E9 01CF jmp loc_867 ; (46CE)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:44B3, 44F6
4044:44FF sub_213:
4044:44FF 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4503 87 DA xchg bx,dx
4044:4505 ,BB 002A mov bx,offset data_23 ; (4044:002A=0)
4044:4508 9F lahf ; Load ah from flags
4044:4509 03 DA add bx,dx
4044:450B 9E sahf ; Store ah into flags
4044:450C 8A 07 mov al,[bx]
4044:450E ,BB 002F mov bx,offset data_25 ; (4044:002F=0)
4044:4511 9F lahf ; Load ah from flags
4044:4512 03 DA add bx,dx
4044:4514 D1 DE rcr si,1 ; Rotate thru carry
4044:4516 9E sahf ; Store ah into flags
4044:4517 D1 D6 rcl si,1 ; Rotate thru carry
4044:4519 9F lahf ; Load ah from flags
4044:451A 42 inc dx
4044:451B 9E sahf ; Store ah into flags
4044:451C C3 retn
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:44C3, 44DF
4044:451D sub_214:
4044:451D A2 0BB0 mov byte ptr ds:[0BB0h],al ; (4044:0BB0=34h)
4044:4520 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4524 BA FFFF mov dx,0FFFFh
4044:4527 8A C7 mov al,bh
4044:4529 0A C0 or al,al ; Zero ?
4044:452B 74 12 jz loc_844 ; Jump if zero
4044:452D BA 0028 mov dx,28h
4044:4530 9F lahf ; Load ah from flags
4044:4531 03 DA add bx,dx
4044:4533 D1 DE rcr si,1 ; Rotate thru carry
4044:4535 9E sahf ; Store ah into flags
4044:4536 D1 D6 rcl si,1 ; Rotate thru carry
4044:4538 8A 17 mov dl,[bx]
4044:453A 9F lahf ; Load ah from flags
4044:453B 43 inc bx
4044:453C 9E sahf ; Store ah into flags
4044:453D 8A 37 mov dh,[bx]
4044:453F loc_844: ; xref 4044:452B
4044:453F 52 push dx
4044:4540 E8 F9BB call sub_190 ; (3EFE)
4044:4543 8B EC mov bp,sp
4044:4545 87 5E 00 xchg [bp],bx
4044:4548 53 push bx
4044:4549 E8 F9B2 call sub_190 ; (3EFE)
4044:454C 87 DA xchg bx,dx
4044:454E 5B pop bx
4044:454F 8A C2 mov al,dl
4044:4551 2A C3 sub al,bl
4044:4553 8A C6 mov al,dh
4044:4555 1A C7 sbb al,bh
4044:4557 72 02 jc loc_845 ; Jump if carry Set
4044:4559 87 DA xchg bx,dx
4044:455B loc_845: ; xref 4044:4557
4044:455B 5B pop bx
4044:455C 8A C6 mov al,dh
4044:455E 0A C0 or al,al ; Zero ?
4044:4560 79 03 jns loc_846 ; Jump if not sign
4044:4562 E9 0072 jmpn loc_856 ; (45D7)
4044:4565 loc_846: ; xref 4044:4560
4044:4565 32 C0 xor al,al ; Zero register
4044:4567 A2 0BAB mov byte ptr ds:[0BABh],al ; (4044:0BAB=3Ch)
4044:456A loc_847: ; xref 4044:4591
4044:456A ,8A C6 mov al,dh
4044:456C 0A C2 or al,dl
4044:456E 74 23 jz loc_851 ; Jump if zero
4044:4570 52 push dx
4044:4571 53 push bx
4044:4572 A0 0BB0 mov al,byte ptr ds:[0BB0h] ; (4044:0BB0=34h)
4044:4575 3C 14 cmp al,14h
4044:4577 75 0C jne loc_849 ; Jump if not equal
4044:4579 E8 FC4F call sub_204 ; (41CB)
4044:457C 5B pop bx
4044:457D 5A pop dx
4044:457E 75 01 jnz loc_848 ; Jump if not zero
4044:4580 C3 retn
4044:4581 loc_848: ; xref 4044:457E
4044:4581 88 0F mov [bx],cl
4044:4583 EB 0A jmp short loc_850 ; (458F)
4044:4585 loc_849: ; xref 4044:4577
4044:4585 8A 0F mov cl,[bx]
4044:4587 E8 FC81 call sub_205 ; (420B)
4044:458A 5B pop bx
4044:458B 5A pop dx
4044:458C 75 01 jnz loc_850 ; Jump if not zero
4044:458E C3 retn
4044:458F loc_850: ; xref 4044:4583, 458C
4044:458F 43 inc bx
4044:4590 4A dec dx
4044:4591 EB D7 jmp short loc_847 ; (456A)
4044:4593 loc_851: ; xref 4044:456E
4044:4593 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4597 8A C7 mov al,bh
4044:4599 0A C0 or al,al ; Zero ?
4044:459B 74 3A jz loc_856 ; Jump if zero
4044:459D BA 002A mov dx,2Ah
4044:45A0 03 DA add bx,dx
4044:45A2 8A 07 mov al,[bx]
4044:45A4 0A C0 or al,al ; Zero ?
4044:45A6 74 2F jz loc_856 ; Jump if zero
4044:45A8 FE C8 dec al
4044:45AA loc_852: ; xref 4044:45CF
4044:45AA ,BB 0BAB mov bx,0BABh ; (4044:0BAB=3Ch)
4044:45AD 3A 07 cmp al,[bx]
4044:45AF 72 23 jb loc_855 ; Jump if below
4044:45B1 9F lahf ; Load ah from flags
4044:45B2 86 C4 xchg al,ah
4044:45B4 50 push ax
4044:45B5 A0 0BB0 mov al,byte ptr ds:[0BB0h] ; (4044:0BB0=34h)
4044:45B8 9F lahf ; Load ah from flags
4044:45B9 86 C4 xchg al,ah
4044:45BB 50 push ax
4044:45BC 86 C4 xchg al,ah
4044:45BE E8 FC8D call sub_206 ; (424E)
4044:45C1 74 0E jz loc_854 ; Jump if zero
4044:45C3 58 pop ax
4044:45C4 86 C4 xchg al,ah
4044:45C6 2C 15 sub al,15h
4044:45C8 75 02 jnz loc_853 ; Jump if not zero
4044:45CA 88 07 mov [bx],al
4044:45CC loc_853: ; xref 4044:45C8
4044:45CC 58 pop ax
4044:45CD 86 C4 xchg al,ah
4044:45CF EB D9 jmp short loc_852 ; (45AA)
4044:45D1 loc_854: ; xref 4044:45C1
4044:45D1 59 pop cx
4044:45D2 59 pop cx
4044:45D3 C3 retn
4044:45D4 loc_855: ; xref 4044:45AF
4044:45D4 E8 FEA2 call sub_212 ; (4479)
4044:45D7 loc_856: ; xref 4044:4562, 459B, 45A6
4044:45D7 B0 FF mov al,0FFh
4044:45D9 0A C0 or al,al ; Zero ?
4044:45DB C3 retn
;* No entry point to code
4044:45DC E8 F8CC call sub_185 ; (3EAB)
4044:45DF E8 F8F6 call sub_188 ; (3ED8)
4044:45E2 75 03 jnz loc_857 ; Jump if not zero
4044:45E4 E9 00E7 jmp loc_867 ; (46CE)
4044:45E7 loc_857: ; xref 4044:45E2
4044:45E7 8A C7 mov al,bh
4044:45E9 0A C0 or al,al ; Zero ?
4044:45EB 8A C3 mov al,bl
4044:45ED 75 03 jnz loc_858 ; Jump if not zero
4044:45EF E9 00DC jmp loc_867 ; (46CE)
4044:45F2 loc_858: ; xref 4044:45ED
4044:45F2 8A 07 mov al,[bx]
4044:45F4 3C 02 cmp al,2
4044:45F6 B0 20 mov al,20h ; ' '
4044:45F8 72 03 jc loc_859 ; Jump if carry Set
4044:45FA E9 00D1 jmp loc_867 ; (46CE)
4044:45FD loc_859: ; xref 4044:45F8
4044:45FD 02 07 add al,[bx]
4044:45FF FE C0 inc al
4044:4601 E9 00CA jmp loc_867 ; (46CE)
;* No entry point to code
4044:4604 E8 F8A4 call sub_185 ; (3EAB)
4044:4607 E8 F8CE call sub_188 ; (3ED8)
4044:460A 75 03 jnz loc_860 ; Jump if not zero
4044:460C E9 00BF jmp loc_867 ; (46CE)
4044:460F loc_860: ; xref 4044:460A
4044:460F 8A C7 mov al,bh
4044:4611 0A C0 or al,al ; Zero ?
4044:4613 75 0D jnz loc_861 ; Jump if not zero
4044:4615 8B 1E 0BA8 mov bx,word ptr ds:[0BA8h] ; (4044:0BA8=0A33Ch)
4044:4619 32 C0 xor al,al ; Zero register
4044:461B 88 07 mov [bx],al
4044:461D FE C8 dec al
4044:461F E9 00AC jmp loc_867 ; (46CE)
4044:4622 loc_861: ; xref 4044:4613
4044:4622 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:4626 E8 D74F call sub_62 ; (1D78)
4044:4629 loc_862: ; xref 4044:43AF, 43B8, 43EC, 4401
4044:4629 8B 1E 0BA8 mov bx,word ptr ds:[0BA8h] ; (4044:0BA8=0A33Ch)
4044:462D 8A 17 mov dl,[bx]
4044:462F 9F lahf ; Load ah from flags
4044:4630 43 inc bx
4044:4631 9E sahf ; Store ah into flags
4044:4632 8A 37 mov dh,[bx]
4044:4634 C6 07 00 mov byte ptr [bx],0
4044:4637 9F lahf ; Load ah from flags
4044:4638 4B dec bx
4044:4639 9E sahf ; Store ah into flags
4044:463A C6 07 00 mov byte ptr [bx],0
4044:463D 87 DA xchg bx,dx
4044:463F 9F lahf ; Load ah from flags
4044:4640 4B dec bx
4044:4641 9E sahf ; Store ah into flags
4044:4642 9F lahf ; Load ah from flags
4044:4643 4B dec bx
4044:4644 9E sahf ; Store ah into flags
4044:4645 E8 E8F8 call sub_123 ; (2F40)
4044:4648 E9 0083 jmp loc_867 ; (46CE)
;* No entry point to code
4044:464B E8 F85D call sub_185 ; (3EAB)
4044:464E E8 F89D call sub_189 ; (3EEE)
4044:4651 75 03 jnz loc_863 ; Jump if not zero
4044:4653 E9 0078 jmpn loc_867 ; (46CE)
4044:4656 loc_863: ; xref 4044:4651
4044:4656 3C 02 cmp al,2
4044:4658 B0 00 mov al,0
4044:465A 72 03 jc loc_864 ; Jump if carry Set
4044:465C E9 006F jmpn loc_867 ; (46CE)
4044:465F loc_864: ; xref 4044:465A
4044:465F BA 0022 mov dx,22h
4044:4662 9F lahf ; Load ah from flags
4044:4663 03 DA add bx,dx
4044:4665 D1 DE rcr si,1 ; Rotate thru carry
4044:4667 9E sahf ; Store ah into flags
4044:4668 D1 D6 rcl si,1 ; Rotate thru carry
4044:466A 8A 0F mov cl,[bx]
4044:466C 9F lahf ; Load ah from flags
4044:466D 43 inc bx
4044:466E 9E sahf ; Store ah into flags
4044:466F 8A 2F mov ch,[bx]
4044:4671 9F lahf ; Load ah from flags
4044:4672 43 inc bx
4044:4673 9E sahf ; Store ah into flags
4044:4674 8A 07 mov al,[bx]
4044:4676 E8 F840 call sub_186 ; (3EB9)
4044:4679 88 0F mov [bx],cl
4044:467B 43 inc bx
4044:467C 88 2F mov [bx],ch
4044:467E 43 inc bx
4044:467F 88 07 mov [bx],al
4044:4681 B0 FF mov al,0FFh
4044:4683 EB 49 jmp short loc_867 ; (46CE)
;* No entry point to code
4044:4685 E8 F823 call sub_185 ; (3EAB)
4044:4688 E8 F863 call sub_189 ; (3EEE)
4044:468B 74 41 jz loc_867 ; Jump if zero
4044:468D 3C 02 cmp al,2
4044:468F B0 00 mov al,0
4044:4691 75 3B jnz loc_867 ; Jump if not zero
4044:4693 BA 002A mov dx,2Ah
4044:4696 9F lahf ; Load ah from flags
4044:4697 03 DA add bx,dx
4044:4699 D1 DE rcr si,1 ; Rotate thru carry
4044:469B 9E sahf ; Store ah into flags
4044:469C D1 D6 rcl si,1 ; Rotate thru carry
4044:469E 8A 07 mov al,[bx]
4044:46A0 E8 F85B call sub_190 ; (3EFE)
4044:46A3 87 DA xchg bx,dx
4044:46A5 BB 0000 mov bx,0
4044:46A8 loc_865: ; xref 4044:46B0
4044:46A8 0A C0 or al,al ; Zero ?
4044:46AA 74 0B jz loc_866 ; Jump if zero
4044:46AC FE C8 dec al
4044:46AE 03 DA add bx,dx
4044:46B0 73 F6 jnc loc_865 ; Jump if carry=0
4044:46B2 B0 01 mov al,1
4044:46B4 ,BB 0000 mov bx,offset data_1 ; (4044:0000=1)
4044:46B7 loc_866: ; xref 4044:46AA
4044:46B7 87 DA xchg bx,dx
4044:46B9 8B 1E 0BAC mov bx,word ptr ds:[0BACh] ; (4044:0BAC=0B4BBh)
4044:46BD B9 0022 mov cx,22h
4044:46C0 03 D9 add bx,cx
4044:46C2 88 17 mov [bx],dl
4044:46C4 43 inc bx
4044:46C5 88 37 mov [bx],dh
4044:46C7 43 inc bx
4044:46C8 88 07 mov [bx],al
4044:46CA FE C8 dec al
4044:46CC EB 00 jmp short loc_867 ; (46CE)
4044:46CE loc_867: ; xref 4044:4336, 443C, 444A, 4455
; 4460, 446B, 4476, 44AA
; 44BB, 44C6, 44D1, 44E4
; 44F3, 44FC, 45E4, 45EF
; 45FA, 4601, 460C, 461F
; 4648, 4653, 465C, 4683
; 468B, 4691, 46CC
4044:46CE 87 DA xchg bx,dx
4044:46D0 8B 1E 0BA4 mov bx,word ptr ds:[0BA4h] ; (4044:0BA4=13Dh)
4044:46D4 53 push bx
4044:46D5 87 DA xchg bx,dx
4044:46D7 0A C0 or al,al ; Zero ?
4044:46D9 C3 retn
sub_209 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:38E3, 3E8D
;==========================================================================
4044:46DA sub_215 proc near
4044:46DA 8B F3 mov si,bx
4044:46DC ,BF 0BB9 mov di,0BB9h ; (4044:0BB9=6)
4044:46DF B9 0004 mov cx,4
4044:46E2 FC cld ; Clear direction
4044:46E3 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:46E5 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:46E9 83 3C 00 cmp word ptr [si],0
4044:46EC B0 80 mov al,80h
4044:46EE 75 02 jnz loc_868 ; Jump if not zero
4044:46F0 D0 E0 shl al,1 ; Shift w/zeros fill
4044:46F2 loc_868: ; xref 4044:46EE
4044:46F2 3C 00 cmp al,0
4044:46F4 74 01 je loc_869 ; Jump if equal
4044:46F6 C3 retn
4044:46F7 loc_869: ; xref 4044:46F4
4044:46F7 8B 36 0BBB mov si,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:46FB 8D 04 lea ax,[si] ; Load effective addr
4044:46FD 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:4701 ,8D BC 0015 lea di,data_15[si] ; (4044:0015=0) Load effective addr
4044:4705 B9 000A mov cx,0Ah
4044:4708 8B F0 mov si,ax
4044:470A FC cld ; Clear direction
4044:470B F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
4044:470D 8B 1E 0BBB mov bx,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:4711 8A 87 000A mov al,data_9[bx] ; (4044:000A=0D8h)
4044:4715 32 E4 xor ah,ah ; Zero register
4044:4717 3D 0000 cmp ax,0
4044:471A 7E 12 jle loc_870 ; Jump if < or =
4044:471C 8B 36 0BBB mov si,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:4720 8D B4 000A ;* lea si,cs:[0Ah][si] ; Load effective addr
4044:4720 db 8Dh,0B4h, 0Ah, 00h ; Fixup - byte match
4044:4724 B0 0E mov al,0Eh
4044:4726 BF 0BBE mov di,0BBEh
4044:4729 E8 D9AE call sub_78 ; (20DA)
4044:472C EB 1B jmp short loc_871 ; (4749)
4044:472E loc_870: ; xref 4044:471A
4044:472E BE 0BB2 mov si,0BB2h
4044:4731 B0 04 mov al,4
4044:4733 E8 D980 call sub_76 ; (20B6)
4044:4736 8B 3E 0BB9 mov di,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:473A ,8D B5 001F lea si,data_19[di] ; (4044:001F=0) Load effective addr
4044:473E E8 0193 call sub_218 ; (48D4)
4044:4741 B1 0E mov cl,0Eh
4044:4743 ,BF 0BBE mov di,0BBEh ; (4044:0BBE=0FFh)
4044:4746 E8 D97F call sub_77 ; (20C8)
4044:4749 loc_871: ; xref 4044:472C
4044:4749 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:474D 83 BC 0015 00 cmp data_15[si],0 ; (4044:0015=0)
4044:4752 75 23 jne loc_872 ; Jump if not equal
4044:4754 B1 03 mov cl,3
4044:4756 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:475A 8B 84 001D mov ax,data_18[si] ; (4044:001D=0)
4044:475E D3 E0 shl ax,cl ; Shift w/zeros fill
4044:4760 25 8000 and ax,8000h
4044:4763 F6 D4 not ah
4044:4765 80 E4 80 and ah,80h
4044:4768 82 FC 00 ;* cmp ah,0
4044:4768 db 82h,0FCh, 00h ; Fixup - byte match
4044:476B 74 0A jz loc_872 ; Jump if zero
4044:476D 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:4771 C7 84 0015 0050 mov data_15[si],50h ; (4044:0015=0)
4044:4777 loc_872: ; xref 4044:4752, 476B
4044:4777 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:477B 83 BC 0017 00 cmp data_16[si],0 ; (4044:0017=0)
4044:4780 75 2D jne loc_874 ; Jump if not equal
4044:4782 B1 02 mov cl,2
4044:4784 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:4788 8B 84 001D mov ax,data_18[si] ; (4044:001D=0)
4044:478C D3 E0 shl ax,cl ; Shift w/zeros fill
4044:478E 25 8000 and ax,8000h
4044:4791 80 E4 80 and ah,80h
4044:4794 82 FC 00 ;* cmp ah,0
4044:4794 db 82h,0FCh, 00h ; Fixup - byte match
4044:4797 74 0C jz loc_873 ; Jump if zero
4044:4799 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:479D C7 84 0017 FFFF mov data_16[si],0FFFFh ; (4044:0017=0)
4044:47A3 EB 0A jmp short loc_874 ; (47AF)
4044:47A5 loc_873: ; xref 4044:4797
4044:47A5 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47A9 C7 84 0017 003C mov data_16[si],3Ch ; (4044:0017=0)
4044:47AF loc_874: ; xref 4044:4780, 47A3
4044:47AF 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47B3 C7 84 0008 0001 mov data_8[si],1 ; (4044:0008=200h)
4044:47B9 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47BD C7 84 0006 0001 mov word ptr ds:[6][si],1 ; (4044:0006=4)
4044:47C3 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47C7 C7 84 0004 0001 mov data_4[si],1 ; (4044:0004=0B100h)
4044:47CD 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47D1 C6 84 000C 00 mov data_11[si],0 ; (4044:000C=0)
4044:47D6 B1 09 mov cl,9
4044:47D8 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47DC 8B 84 001D mov ax,data_18[si] ; (4044:001D=0)
4044:47E0 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:47E2 25 8000 and ax,8000h
4044:47E5 B1 0F mov cl,0Fh
4044:47E7 D3 E8 shr ax,cl ; Shift w/zeros fill
4044:47E9 A2 0BBD mov byte ptr ds:[0BBDh],al ; (4044:0BBD=0)
4044:47EC B1 0C mov cl,0Ch
4044:47EE 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:47F2 8B 84 001D mov ax,data_18[si] ; (4044:001D=0)
4044:47F6 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:47F8 25 8000 and ax,8000h
4044:47FB 80 E4 80 and ah,80h
4044:47FE 82 FC 00 ;* cmp ah,0
4044:47FE db 82h,0FCh, 00h ; Fixup - byte match
4044:4801 74 05 jz loc_875 ; Jump if zero
4044:4803 82 06 0BBD 02 ;* add byte ptr ds:[0BBDh],2 ; (4044:0BBD=0)
4044:4803 db 82h, 06h,0BDh, 0Bh, 02h ; Fixup - byte match
4044:4808 loc_875: ; xref 4044:4801
4044:4808 B1 0A mov cl,0Ah
4044:480A 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:480E 8B 84 001D mov ax,data_18[si] ; (4044:001D=0)
4044:4812 D3 E0 shl ax,cl ; Shift w/zeros fill
4044:4814 25 8000 and ax,8000h
4044:4817 80 E4 80 and ah,80h
4044:481A 82 FC 00 ;* cmp ah,0
4044:481A db 82h,0FCh, 00h ; Fixup - byte match
4044:481D 74 05 jz loc_876 ; Jump if zero
4044:481F C6 06 0BBD 04 mov byte ptr ds:[0BBDh],4 ; (4044:0BBD=0)
4044:4824 loc_876: ; xref 4044:481D
4044:4824 B1 0D mov cl,0Dh
4044:4826 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:482A 8B 84 001D mov ax,data_18[si] ; (4044:001D=0)
4044:482E D3 E0 shl ax,cl ; Shift w/zeros fill
4044:4830 25 8000 and ax,8000h
4044:4833 80 E4 80 and ah,80h
4044:4836 82 FC 00 ;* cmp ah,0
4044:4836 db 82h,0FCh, 00h ; Fixup - byte match
4044:4839 75 02 jnz loc_877 ; Jump if not zero
4044:483B EB 15 jmp short loc_878 ; (4852)
4044:483D loc_877: ; xref 4044:4839
4044:483D 8B 36 0BBB mov si,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:4841 83 BC 0004 00 cmp data_4[si],0 ; (4044:0004=0B100h)
4044:4846 75 0A jne loc_878 ; Jump if not equal
4044:4848 8B 36 0BBB mov si,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:484C C7 84 0004 0001 mov data_4[si],1 ; (4044:0004=0B100h)
4044:4852 loc_878: ; xref 4044:483B, 4846
4044:4852 A1 0BB9 mov ax,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:4855 A3 0BD6 mov word ptr ds:[0BD6h],ax ; (4044:0BD6=7E3Ch)
4044:4858 8B 36 0BBB mov si,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:485C 8D 84 0004 ;* lea ax,cs:[4][si] ; Load effective addr
4044:485C db 8Dh, 84h, 04h, 00h ; Fixup - byte match
4044:4860 A3 0BD2 mov word ptr ds:[0BD2h],ax ; (4044:0BD2=393Ch)
4044:4863 8B 36 0BBB mov si,word ptr ds:[0BBBh] ; (4044:0BBB=3Ch)
4044:4867 8D 84 0006 ;* lea ax,cs:[6][si] ; Load effective addr
4044:4867 db 8Dh, 84h, 06h, 00h ; Fixup - byte match
4044:486B A3 0BD4 mov word ptr ds:[0BD4h],ax ; (4044:0BD4=7A06h)
4044:486E BB 0BCC mov bx,0BCCh
4044:4871 E8 FA82 call sub_209 ; (42F6)
4044:4874 8B 36 0BB9 mov si,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:4878 83 3C 00 cmp word ptr [si],0
4044:487B B0 80 mov al,80h
4044:487D 74 02 jz loc_879 ; Jump if zero
4044:487F D0 E0 shl al,1 ; Shift w/zeros fill
4044:4881 loc_879: ; xref 4044:487D
4044:4881 3C 00 cmp al,0
4044:4883 74 12 je loc_ret_880 ; Jump if equal
4044:4885 A1 0BB9 mov ax,word ptr ds:[0BB9h] ; (4044:0BB9=2206h)
4044:4888 A3 0BE0 mov word ptr ds:[0BE0h],ax ; (4044:0BE0=0A2C0h)
4044:488B C7 06 0BE2 0000 mov word ptr ds:[0BE2h],0 ; (4044:0BE2=2B2h)
4044:4891 BB 0BD8 mov bx,0BD8h
4044:4894 E8 E7A4 call sub_124 ; (303B)
4044:4897 loc_ret_880: ; xref 4044:4883
4044:4897 C3 retn
sub_215 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:3719, 3769, 3B2C
;==========================================================================
4044:4898 sub_216 proc near
4044:4898 A0 3D04 mov al,byte ptr ds:[3D04h] ; (4044:3D04=98h)
4044:489B 24 80 and al,80h
4044:489D 3C 00 cmp al,0
4044:489F 74 06 je loc_ret_881 ; Jump if equal
4044:48A1 ,BB 0BE5 mov bx,0BE5h ; (4044:0BE5=66h)
4044:48A4 E8 F1A0 call sub_167 ; (3A47)
4044:48A7 loc_ret_881: ; xref 4044:489F
4044:48A7 C3 retn
sub_216 endp
;* No entry point to code
4044:48A8 8B F4 mov si,sp
4044:48AA 46 inc si
4044:48AB 46 inc si
4044:48AC 2A E4 sub ah,ah
4044:48AE 8B DE mov bx,si
4044:48B0 03 D8 add bx,ax
4044:48B2 53 push bx
4044:48B3 E8 0007 call sub_217 ; (48BD)
4044:48B6 5B pop bx
4044:48B7 5A pop dx
4044:48B8 8B E3 mov sp,bx
4044:48BA FF E2 jmp dx ;*Register jump
4044:48BC AC db 0ACh
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:48B3
;==========================================================================
4044:48BD sub_217 proc near
4044:48BD 57 push di
4044:48BE 8A 1D mov bl,[di]
4044:48C0 2A CB sub cl,bl
4044:48C2 47 inc di
4044:48C3 2A FF sub bh,bh
4044:48C5 03 FB add di,bx
4044:48C7 3A C1 cmp al,cl
4044:48C9 73 02 jae loc_882 ; Jump if above or =
4044:48CB 8A C8 mov cl,al
4044:48CD loc_882: ; xref 4044:48C9
4044:48CD E8 D80D call sub_79 ; (20DD)
4044:48D0 5F pop di
4044:48D1 00 05 add [di],al
4044:48D3 C3 retn
sub_217 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:473E
;==========================================================================
4044:48D4 sub_218 proc near
4044:48D4 8A 0C mov cl,[si]
4044:48D6 46 inc si
4044:48D7 5A pop dx
4044:48D8 2A ED sub ch,ch
4044:48DA 2B E1 sub sp,cx
4044:48DC 8B FC mov di,sp
4044:48DE 52 push dx
4044:48DF 02 C1 add al,cl
4044:48E1 50 push ax
4044:48E2 8A C1 mov al,cl
4044:48E4 E8 D7F6 call sub_79 ; (20DD)
4044:48E7 58 pop ax
4044:48E8 C3 retn
sub_218 endp
;* No entry point to code
4044:48E9 8B FC mov di,sp
4044:48EB 47 inc di
4044:48EC 2A E4 sub ah,ah
4044:48EE 8B C8 mov cx,ax
4044:48F0 03 F8 add di,ax
4044:48F2 8B F7 mov si,di
4044:48F4 47 inc di
4044:48F5 02 05 add al,[di]
4044:48F7 47 inc di
4044:48F8 E3 04 jcxz loc_ret_883 ; Jump if cx=0
4044:48FA FD std ; Set direction flag
4044:48FB F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
4044:48FD FC cld ; Clear direction
4044:48FE loc_ret_883: ; xref 4044:48F8
4044:48FE C2 0002 retn 2
;* No entry point to code
4044:4901 8A F8 mov bh,al
4044:4903 32 DB xor bl,bl ; Zero register
4044:4905 B1 10 mov cl,10h
4044:4907 2A CD sub cl,ch
4044:4909 D3 EB shr bx,cl ; Shift w/zeros fill
4044:490B C3 retn
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4A0E, 4ACC
;==========================================================================
4044:490C sub_219 proc near
4044:490C B1 0C mov cl,0Ch
4044:490E E8 D55F call sub_64 ; (1E70)
4044:4911 8A C3 mov al,bl
4044:4913 ,BB 0BEF mov bx,0BEFh ; (4044:0BEF=0B2h)
4044:4916 C6 07 FF mov byte ptr [bx],0FFh
4044:4919 3C 20 cmp al,20h ; ' '
4044:491B 73 01 jae loc_884 ; Jump if above or =
4044:491D C3 retn
4044:491E loc_884: ; xref 4044:491B
4044:491E FE 07 inc byte ptr [bx]
4044:4920 C3 retn
sub_219 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4A0B, 4AD4
;==========================================================================
4044:4921 sub_220 proc near
4044:4921 B1 1A mov cl,1Ah
4044:4923 BA 0080 mov dx,80h
4044:4926 E8 D547 call sub_64 ; (1E70)
4044:4929 C3 retn
sub_220 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:49E7, 4B04
;==========================================================================
4044:492A sub_221 proc near
4044:492A loc_885: ; xref 4044:498B, 4B3A
4044:492A ,B0 FF mov al,0FFh
4044:492C A2 0BEE mov byte ptr ds:[0BEEh],al ; (4044:0BEE=6)
4044:492F 0A C0 or al,al ; Zero ?
4044:4931 C3 retn
sub_221 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4B4E
;==========================================================================
4044:4932 sub_222 proc near
4044:4932 8B 1E 0BEB mov bx,word ptr ds:[0BEBh] ; (4044:0BEB=2B6h)
4044:4936 BA 0021 mov dx,21h
4044:4939 9F lahf ; Load ah from flags
4044:493A 03 DA add bx,dx
4044:493C D1 DE rcr si,1 ; Rotate thru carry
4044:493E 9E sahf ; Store ah into flags
4044:493F D1 D6 rcl si,1 ; Rotate thru carry
4044:4941 FE 07 inc byte ptr [bx]
4044:4943 74 01 jz loc_886 ; Jump if zero
4044:4945 C3 retn
4044:4946 loc_886: ; xref 4044:4943
4044:4946 9F lahf ; Load ah from flags
4044:4947 43 inc bx
4044:4948 9E sahf ; Store ah into flags
4044:4949 FE 07 inc byte ptr [bx]
4044:494B 74 01 jz loc_887 ; Jump if zero
4044:494D C3 retn
4044:494E loc_887: ; xref 4044:494B
4044:494E 9F lahf ; Load ah from flags
4044:494F 43 inc bx
4044:4950 9E sahf ; Store ah into flags
4044:4951 FE 07 inc byte ptr [bx]
4044:4953 C3 retn
sub_222 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4986, 4B67
;==========================================================================
4044:4954 sub_223 proc near
4044:4954 53 push bx
4044:4955 8A 07 mov al,[bx]
4044:4957 43 inc bx
4044:4958 8A 0F mov cl,[bx]
4044:495A 43 inc bx
4044:495B 8A 2F mov ch,[bx]
4044:495D 43 inc bx
4044:495E 2A 07 sub al,[bx]
4044:4960 8A C1 mov al,cl
4044:4962 43 inc bx
4044:4963 1A 07 sbb al,[bx]
4044:4965 8A C5 mov al,ch
4044:4967 43 inc bx
4044:4968 1A 07 sbb al,[bx]
4044:496A 5B pop bx
4044:496B C3 retn
sub_223 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4AE5
;==========================================================================
4044:496C sub_224 proc near
4044:496C A0 0BEE mov al,byte ptr ds:[0BEEh] ; (4044:0BEE=6)
4044:496F 0A C0 or al,al ; Zero ?
4044:4971 74 01 jz loc_888 ; Jump if zero
4044:4973 C3 retn
4044:4974 loc_888: ; xref 4044:4971
4044:4974 8B 1E 0BEB mov bx,word ptr ds:[0BEBh] ; (4044:0BEB=2B6h)
4044:4978 87 DA xchg bx,dx
4044:497A ,BB 0021 mov bx,offset data_21 ; (4044:0021=0)
4044:497D 03 DA add bx,dx
4044:497F A0 0BED mov al,byte ptr ds:[0BEDh] ; (4044:0BED=38h)
4044:4982 3C 15 cmp al,15h
4044:4984 74 08 je loc_889 ; Jump if equal
4044:4986 E8 FFCB call sub_223 ; (4954)
4044:4989 72 03 jc loc_889 ; Jump if carry Set
4044:498B E9 FF9C ;* jmp loc_885 ; (492A)
4044:498B db 0E9h, 9Ch,0FFh ; Fixup - byte match
4044:498E loc_889: ; xref 4044:4984, 4989
4044:498E A0 0BEF mov al,byte ptr ds:[0BEFh] ; (4044:0BEF=0B2h)
4044:4991 0A C0 or al,al ; Zero ?
4044:4993 75 01 jnz loc_890 ; Jump if not zero
4044:4995 C3 retn
4044:4996 loc_890: ; xref 4044:4993
4044:4996 8A 07 mov al,[bx]
4044:4998 24 7F and al,7Fh
4044:499A 8A E8 mov ch,al
4044:499C 8A 07 mov al,[bx]
4044:499E D0 D0 rcl al,1 ; Rotate thru carry
4044:49A0 43 inc bx
4044:49A1 8A 07 mov al,[bx]
4044:49A3 D0 D0 rcl al,1 ; Rotate thru carry
4044:49A5 8A C8 mov cl,al
4044:49A7 3C 3F cmp al,3Fh ; '?'
4044:49A9 73 3C jae loc_892 ; Jump if above or =
4044:49AB 43 inc bx
4044:49AC 8A 07 mov al,[bx]
4044:49AE 0A C0 or al,al ; Zero ?
4044:49B0 75 35 jnz loc_892 ; Jump if not zero
4044:49B2 ,BB 0020 mov bx,offset data_20 ; (4044:0020=0)
4044:49B5 03 DA add bx,dx
4044:49B7 88 2F mov [bx],ch
4044:49B9 ,BB 000C mov bx,offset data_11 ; (4044:000C=0)
4044:49BC 03 DA add bx,dx
4044:49BE 8A C1 mov al,cl
4044:49C0 2A 07 sub al,[bx]
4044:49C2 75 01 jnz loc_891 ; Jump if not zero
4044:49C4 C3 retn
4044:49C5 loc_891: ; xref 4044:49C2
4044:49C5 51 push cx
4044:49C6 52 push dx
4044:49C7 B1 10 mov cl,10h
4044:49C9 E8 D4A4 call sub_64 ; (1E70)
4044:49CC 5A pop dx
4044:49CD 59 pop cx
4044:49CE ,BB 000C mov bx,offset data_11 ; (4044:000C=0)
4044:49D1 9F lahf ; Load ah from flags
4044:49D2 03 DA add bx,dx
4044:49D4 D1 DE rcr si,1 ; Rotate thru carry
4044:49D6 9E sahf ; Store ah into flags
4044:49D7 D1 D6 rcl si,1 ; Rotate thru carry
4044:49D9 88 0F mov [bx],cl
4044:49DB B1 0F mov cl,0Fh
4044:49DD E8 D490 call sub_64 ; (1E70)
4044:49E0 FE C0 inc al
4044:49E2 75 07 jnz loc_893 ; Jump if not zero
4044:49E4 FE C0 inc al
4044:49E6 C3 retn
4044:49E7 loc_892: ; xref 4044:49A9, 49B0
4044:49E7 E8 FF40 call sub_221 ; (492A)
4044:49EA C3 retn
4044:49EB loc_893: ; xref 4044:49E2
4044:49EB 32 C0 xor al,al ; Zero register
4044:49ED C3 retn
sub_224 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4A2A, 4B6C
;==========================================================================
4044:49EE sub_225 proc near
4044:49EE 8A 07 mov al,[bx]
4044:49F0 9F lahf ; Load ah from flags
4044:49F1 43 inc bx
4044:49F2 9E sahf ; Store ah into flags
4044:49F3 8A 0F mov cl,[bx]
4044:49F5 9F lahf ; Load ah from flags
4044:49F6 43 inc bx
4044:49F7 9E sahf ; Store ah into flags
4044:49F8 8A 2F mov ch,[bx]
4044:49FA 9F lahf ; Load ah from flags
4044:49FB 43 inc bx
4044:49FC 9E sahf ; Store ah into flags
4044:49FD 88 07 mov [bx],al
4044:49FF 9F lahf ; Load ah from flags
4044:4A00 43 inc bx
4044:4A01 9E sahf ; Store ah into flags
4044:4A02 88 0F mov [bx],cl
4044:4A04 9F lahf ; Load ah from flags
4044:4A05 43 inc bx
4044:4A06 9E sahf ; Store ah into flags
4044:4A07 88 2F mov [bx],ch
4044:4A09 C3 retn
sub_225 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:4430
;==========================================================================
4044:4A0A sub_226 proc near
4044:4A0A 53 push bx
4044:4A0B E8 FF13 call sub_220 ; (4921)
4044:4A0E E8 FEFB call sub_219 ; (490C)
4044:4A11 8A 07 mov al,[bx]
4044:4A13 0A C0 or al,al ; Zero ?
4044:4A15 5A pop dx
4044:4A16 75 16 jnz loc_894 ; Jump if not zero
4044:4A18 52 push dx
4044:4A19 B1 23 mov cl,23h ; '#'
4044:4A1B E8 D452 call sub_64 ; (1E70)
4044:4A1E 5A pop dx
4044:4A1F ,BB 0021 mov bx,offset data_21 ; (4044:0021=0)
4044:4A22 9F lahf ; Load ah from flags
4044:4A23 03 DA add bx,dx
4044:4A25 D1 DE rcr si,1 ; Rotate thru carry
4044:4A27 9E sahf ; Store ah into flags
4044:4A28 D1 D6 rcl si,1 ; Rotate thru carry
4044:4A2A E8 FFC1 call sub_225 ; (49EE)
4044:4A2D C3 retn
4044:4A2E loc_894: ; xref 4044:4A16
4044:4A2E BB 000C mov bx,0Ch
4044:4A31 9F lahf ; Load ah from flags
4044:4A32 03 DA add bx,dx
4044:4A34 D1 DE rcr si,1 ; Rotate thru carry
4044:4A36 9E sahf ; Store ah into flags
4044:4A37 D1 D6 rcl si,1 ; Rotate thru carry
4044:4A39 C6 07 3F mov byte ptr [bx],3Fh ; '?'
4044:4A3C 53 push bx
4044:4A3D 52 push dx
4044:4A3E B9 0000 mov cx,0
4044:4A41 51 push cx
4044:4A42 B1 11 mov cl,11h
4044:4A44 loc_895: ; xref 4044:4A7F
4044:4A44 ,E8 D429 call sub_64 ; (1E70)
4044:4A47 59 pop cx
4044:4A48 FE C0 inc al
4044:4A4A 74 35 jz loc_898 ; Jump if zero
4044:4A4C FE C8 dec al
4044:4A4E 24 03 and al,3
4044:4A50 02 C0 add al,al
4044:4A52 02 C0 add al,al
4044:4A54 02 C0 add al,al
4044:4A56 02 C0 add al,al
4044:4A58 02 C0 add al,al
4044:4A5A 04 0C add al,0Ch
4044:4A5C 8A D0 mov dl,al
4044:4A5E B6 00 mov dh,0
4044:4A60 ,BB 0080 mov bx,offset data_27 ; (4044:0080=0E9h)
4044:4A63 03 DA add bx,dx
4044:4A65 8A C5 mov al,ch
4044:4A67 3A 07 cmp al,[bx]
4044:4A69 72 02 jb loc_896 ; Jump if below
4044:4A6B 75 0F jnz loc_897 ; Jump if not zero
4044:4A6D loc_896: ; xref 4044:4A69
4044:4A6D 8A 2F mov ch,[bx]
4044:4A6F BA 0003 mov dx,3
4044:4A72 9F lahf ; Load ah from flags
4044:4A73 03 DA add bx,dx
4044:4A75 D1 DE rcr si,1 ; Rotate thru carry
4044:4A77 9E sahf ; Store ah into flags
4044:4A78 D1 D6 rcl si,1 ; Rotate thru carry
4044:4A7A 8A 0F mov cl,[bx]
4044:4A7C loc_897: ; xref 4044:4A6B
4044:4A7C 51 push cx
4044:4A7D B1 12 mov cl,12h
4044:4A7F EB C3 jmp short loc_895 ; (4A44)
4044:4A81 loc_898: ; xref 4044:4A4A
4044:4A81 5A pop dx
4044:4A82 5B pop bx
4044:4A83 32 C0 xor al,al ; Zero register
4044:4A85 88 07 mov [bx],al
4044:4A87 8A C5 mov al,ch
4044:4A89 D0 D8 rcr al,1 ; Rotate thru carry
4044:4A8B 8A E8 mov ch,al
4044:4A8D B0 00 mov al,0
4044:4A8F D0 D8 rcr al,1 ; Rotate thru carry
4044:4A91 02 C1 add al,cl
4044:4A93 8A C8 mov cl,al
4044:4A95 B0 00 mov al,0
4044:4A97 12 C5 adc al,ch
4044:4A99 8A E8 mov ch,al
4044:4A9B ,BB 0024 mov bx,offset data_22 ; (4044:0024=0)
4044:4A9E 9F lahf ; Load ah from flags
4044:4A9F 03 DA add bx,dx
4044:4AA1 D1 DE rcr si,1 ; Rotate thru carry
4044:4AA3 9E sahf ; Store ah into flags
4044:4AA4 D1 D6 rcl si,1 ; Rotate thru carry
4044:4AA6 88 0F mov [bx],cl
4044:4AA8 9F lahf ; Load ah from flags
4044:4AA9 43 inc bx
4044:4AAA 9E sahf ; Store ah into flags
4044:4AAB 88 2F mov [bx],ch
4044:4AAD 9F lahf ; Load ah from flags
4044:4AAE 43 inc bx
4044:4AAF 9E sahf ; Store ah into flags
4044:4AB0 C6 07 00 mov byte ptr [bx],0
4044:4AB3 C3 retn
sub_226 endp
;==========================================================================
; SUBROUTINE
;
; Called from: 4044:44B6
;==========================================================================
4044:4AB4 sub_227 proc near
4044:4AB4 B5 14 mov ch,14h
4044:4AB6 EB 02 jmp short loc_899 ; (4ABA)
;==== External Entry into Subroutine ======================================
;
; Called from: 4044:44F9
4044:4AB8 sub_228:
4044:4AB8 B5 15 mov ch,15h
4044:4ABA loc_899: ; xref 4044:4AB6
4044:4ABA 89 1E 0BE8 mov word ptr ds:[0BE8h],bx ; (4044:0BE8=2B6h)
4044:4ABE 87 DA xchg bx,dx
4044:4AC0 89 1E 0BEB mov word ptr ds:[0BEBh],bx ; (4044:0BEB=2B6h)
4044:4AC4 A2 0BEA mov byte ptr ds:[0BEAh],al ; (4044:0BEA=0A0h)
4044:4AC7 8A C5 mov al,ch
4044:4AC9 A2 0BED mov byte ptr ds:[0BEDh],al ; (4044:0BED=38h)
4044:4ACC E8 FE3D call sub_219 ; (490C)
4044:4ACF 32 C0 xor al,al ; Zero register
4044:4AD1 A2 0BEE mov byte ptr ds:[0BEEh],al ; (4044:0BEE=6)
4044:4AD4 loc_900: ; xref 4044:4B82
4044:4AD4 ,E8 FE4A call sub_220 ; (4921)
4044:4AD7 ,BB 0BEA mov bx,0BEAh ; (4044:0BEA=0A0h)
4044:4ADA 8A 07 mov al,[bx]
4044:4ADC FE 0F dec byte ptr [bx]
4044:4ADE 0A C0 or al,al ; Zero ?
4044:4AE0 75 03 jnz loc_901 ; Jump if not zero
4044:4AE2 E9 00A0 jmp loc_908 ; (4B85)
4044:4AE5 loc_901: ; xref 4044:4AE0
4044:4AE5 E8 FE84 call sub_224 ; (496C)
4044:4AE8 74 1F jz loc_902 ; Jump if zero
4044:4AEA FE C8 dec al
4044:4AEC 75 4F jnz loc_904 ; Jump if not zero
4044:4AEE A0 0BED mov al,byte ptr ds:[0BEDh] ; (4044:0BED=38h)
4044:4AF1 3C 15 cmp al,15h
4044:4AF3 75 48 jne loc_904 ; Jump if not equal
4044:4AF5 B1 16 mov cl,16h
4044:4AF7 8B 1E 0BEB mov bx,word ptr ds:[0BEBh] ; (4044:0BEB=2B6h)
4044:4AFB 87 DA xchg bx,dx
4044:4AFD E8 D370 call sub_64 ; (1E70)
4044:4B00 FE C0 inc al
4044:4B02 75 05 jnz loc_902 ; Jump if not zero
4044:4B04 E8 FE23 call sub_221 ; (492A)
4044:4B07 EB 34 jmp short loc_904 ; (4B3D)
4044:4B09 loc_902: ; xref 4044:4AE8, 4B02
4044:4B09 8B 1E 0BE8 mov bx,word ptr ds:[0BE8h] ; (4044:0BE8=2B6h)
4044:4B0D 87 DA xchg bx,dx
4044:4B0F B1 1A mov cl,1Ah
4044:4B11 E8 D35C call sub_64 ; (1E70)
4044:4B14 A0 0BED mov al,byte ptr ds:[0BEDh] ; (4044:0BED=38h)
4044:4B17 8A C8 mov cl,al
4044:4B19 8B 1E 0BEB mov bx,word ptr ds:[0BEBh] ; (4044:0BEB=2B6h)
4044:4B1D 87 DA xchg bx,dx
4044:4B1F A0 0BEF mov al,byte ptr ds:[0BEFh] ; (4044:0BEF=0B2h)
4044:4B22 0A C0 or al,al ; Zero ?
4044:4B24 75 06 jnz loc_903 ; Jump if not zero
4044:4B26 8A C1 mov al,cl
4044:4B28 04 0D add al,0Dh
4044:4B2A 8A C8 mov cl,al
4044:4B2C loc_903: ; xref 4044:4B24
4044:4B2C E8 D341 call sub_64 ; (1E70)
4044:4B2F 0A C0 or al,al ; Zero ?
4044:4B31 74 1B jz loc_906 ; Jump if zero
4044:4B33 A0 0BED mov al,byte ptr ds:[0BEDh] ; (4044:0BED=38h)
4044:4B36 3C 14 cmp al,14h
4044:4B38 74 03 je loc_904 ; Jump if equal
4044:4B3A E9 FDED jmp loc_885 ; (492A)
4044:4B3D loc_904: ; xref 4044:4AEC, 4AF3, 4B07, 4B38
4044:4B3D 8B 1E 0BE8 mov bx,word ptr ds:[0BE8h] ; (4044:0BE8=2B6h)
4044:4B41 B1 80 mov cl,80h
4044:4B43 32 C0 xor al,al ; Zero register
4044:4B45 loc_905: ; xref 4044:4B4C
4044:4B45 88 07 mov [bx],al
4044:4B47 9F lahf ; Load ah from flags
4044:4B48 43 inc bx
4044:4B49 9E sahf ; Store ah into flags
4044:4B4A FE C9 dec cl
4044:4B4C 75 F7 jnz loc_905 ; Jump if not zero
4044:4B4E loc_906: ; xref 4044:4B31
4044:4B4E E8 FDE1 call sub_222 ; (4932)
4044:4B51 A0 0BEE mov al,byte ptr ds:[0BEEh] ; (4044:0BEE=6)
4044:4B54 0A C0 or al,al ; Zero ?
4044:4B56 75 17 jnz loc_907 ; Jump if not zero
4044:4B58 8B 1E 0BEB mov bx,word ptr ds:[0BEBh] ; (4044:0BEB=2B6h)
4044:4B5C BA 0021 mov dx,21h
4044:4B5F 9F lahf ; Load ah from flags
4044:4B60 03 DA add bx,dx
4044:4B62 D1 DE rcr si,1 ; Rotate thru carry
4044:4B64 9E sahf ; Store ah into flags
4044:4B65 D1 D6 rcl si,1 ; Rotate thru carry
4044:4B67 E8 FDEA call sub_223 ; (4954)
4044:4B6A 72 03 jc loc_907 ; Jump if carry Set
4044:4B6C E8 FE7F call sub_225 ; (49EE)
4044:4B6F loc_907: ; xref 4044:4B56, 4B6A
4044:4B6F 8B 1E 0BE8 mov bx,word ptr ds:[0BE8h] ; (4044:0BE8=2B6h)
4044:4B73 BA 0080 mov dx,80h
4044:4B76 9F lahf ; Load ah from flags
4044:4B77 03 DA add bx,dx
4044:4B79 D1 DE rcr si,1 ; Rotate thru carry
4044:4B7B 9E sahf ; Store ah into flags
4044:4B7C D1 D6 rcl si,1 ; Rotate thru carry
4044:4B7E 89 1E 0BE8 mov word ptr ds:[0BE8h],bx ; (4044:0BE8=2B6h)
4044:4B82 E9 FF4F jmp loc_900 ; (4AD4)
4044:4B85 loc_908: ; xref 4044:4AE2
4044:4B85 A0 0BEE mov al,byte ptr ds:[0BEEh] ; (4044:0BEE=6)
4044:4B88 F6 D0 not al
4044:4B8A 0A C0 or al,al ; Zero ?
4044:4B8C C3 retn
sub_227 endp
4044:4B8D 0103[00] db 259 dup (0)
4044:4C90 80 00 03 FF 81 41 db 80h, 00h, 03h,0FFh, 81h, 41h
4044:4C96 42 db 42h
4044:4C97 43 44 45 46 47 48 db 'CDEFGHIJKLMNOPABCDEFGHIJKLMNOPQR'
4044:4C9D 49 4A 4B 4C 4D 4E
4044:4CA3 4F 50 41 42 43 44
4044:4CA9 45 46 47 48 49 4A
4044:4CAF 4B 4C 4D 4E 4F 50
4044:4CB5 51 52
4044:4CB7 53 54 55 56 57 58 db 'STUVWXYZabcdefghijklmnopqrstuvwx'
4044:4CBD 59 5A 61 62 63 64
4044:4CC3 65 66 67 68 69 6A
4044:4CC9 6B 6C 6D 6E 6F 70
4044:4CCF 71 72 73 74 75 76
4044:4CD5 77 78
4044:4CD7 79 7A 3A db 'yz:'
4044:4CDA 00 00 03 00 02 00 db 00h, 00h, 03h, 00h, 02h, 00h
4044:4CE0 20 50 01 db 20h, 50h, 01h
4044:4CE3 57 68 69 6C 65 20 db 'While reading record : track , s'
4044:4CE9 72 65 61 64 69 6E
4044:4CEF 67 20 72 65 63 6F
4044:4CF5 72 64 20 3A 20 74
4044:4CFB 72 61 63 6B 20 2C
4044:4D01 20 73
4044:4D03 65 63 74 6F 72 db 'ector'
4044:4D08 01 00 db 1, 0
4044:4D0A 57 68 69 6C 65 20 db 'While writing record '
4044:4D10 77 72 69 74 69 6E
4044:4D16 67 20 72 65 63 6F
4044:4D1C 72 64 20
4044:4D1F 00 db 0
4044:4D20 0095[00] db 149 dup (0)
4044:4DB5 3A 3C 38 3C 3E 3C db ':<8<><J<J<$'
4044:4DBB 4A 3C 4A 3C 24
4044:4DC0 02 22 02 3C 3C 4C db 02h, 22h, 02h, 3Ch, 3Ch, 4Ch
4044:4DC6 3C 24 02 22 02 db 3Ch, 24h, 02h, 22h, 02h
4044:4DCB 2E 3C 30 3C 36 3C db '.<0<6<H<"'
4044:4DD1 48 3C 22
4044:4DD4 02 7A 3C 5E 3C 00 db 02h, 7Ah, 3Ch, 5Eh, 3Ch, 00h
4044:4DDA 00 00 00 db 00h, 00h, 00h
4044:4DDD 56 3C db 56h, 3Ch
4044:4DDF 0008[00] db 8 dup (0)
4044:4DE7 42 3C 42 3C 7A 3C db 'B<B<z<X<z<^<n<z<^<f<J'
4044:4DED 58 3C 7A 3C 5E 3C
4044:4DF3 6E 3C 7A 3C 5E 3C
4044:4DF9 66 3C 4A
4044:4DFC 01 58 3C 00 00 00 db 01h, 58h, 3Ch, 00h, 00h, 00h
4044:4E02 00 7A 3C 5E 3C 00 db 00h, 7Ah, 3Ch, 5Eh, 3Ch, 00h
4044:4E08 6F 02 71 02 5E 3C db 6Fh, 02h, 71h, 02h, 5Eh, 3Ch
4044:4E0E 00 00 7E 02 7E 02 db 00h, 00h, 7Eh, 02h, 7Eh, 02h
4044:4E14 7A 3C 5E 3C 00 00 db 7Ah, 3Ch, 5Eh, 3Ch, 00h, 00h
4044:4E1A 00 00 8A 02 46 3C db 00h, 00h, 8Ah, 02h, 46h, 3Ch
4044:4E20 3C 3C 40 3C 4C 01 db 3Ch, 3Ch, 40h, 3Ch, 4Ch, 01h
4044:4E26 4E 01 db 4Eh, 01h
4044:4E28 0008[00] db 8 dup (0)
4044:4E30 A2 02 00 A7 02 62 db 0A2h, 02h, 00h,0A7h, 02h, 62h
4044:4E36 3C 00 00 80 3C 58 db 3Ch, 00h, 00h, 80h, 3Ch, 58h
4044:4E3C 3C 00 00 00 00 00 db 3Ch, 00h, 00h, 00h, 00h, 00h
4044:4E42 00 00 B3 02 00 B2 db 00h, 00h,0B3h, 02h, 00h,0B2h
4044:4E48 02 db 02h
4044:4E49 7A 3C 5E 3C 7A 3C db 'z<^<z<^<'
4044:4E4F 5E 3C
4044:4E51 00 B3 02 7E 3C 5E db 00h,0B3h, 02h, 7Eh, 3Ch, 5Eh
4044:4E57 3C 00 00 7A 3C 5E db 3Ch, 00h, 00h, 7Ah, 3Ch, 5Eh
4044:4E5D 3C 00 db 3Ch, 00h
4044:4E5F 0007[00] db 7 dup (0)
4044:4E66 3C 3C 00 00 00 00 db 3Ch, 3Ch, 00h, 00h, 00h, 00h
4044:4E6C 00 00 36 3C 00 db 00h, 00h, 36h, 3Ch, 00h
4044:4E71 001A[00] db 26 dup (0)
4044:4E8B 54 3C 44 3C 00 00 db 54h, 3Ch, 44h, 3Ch, 00h, 00h
4044:4E91 00 db 00h
4044:4E92 00 00 00 7A 3C 5E db 00h, 00h, 00h, 7Ah, 3Ch, 5Eh
4044:4E98 3C 00 5A 3C 02 03 db 3Ch, 00h, 5Ah, 3Ch, 02h, 03h
4044:4E9E 03 03 FF 02 5C 3C db 03h, 03h,0FFh, 02h, 5Ch, 3Ch
4044:4EA4 02 03 04 03 FF 02 db 02h, 03h, 04h, 03h,0FFh, 02h
4044:4EAA 03 03 5A 3C 04 03 db 03h, 03h, 5Ah, 3Ch, 04h, 03h
4044:4EB0 5C 3C 5A 3C 03 03 db 5Ch, 3Ch, 5Ah, 3Ch, 03h, 03h
4044:4EB6 5C 3C 04 03 db 5Ch, 3Ch, 04h, 03h
4044:4EBA 000D[00] db 13 dup (0)
4044:4EC7 7E 3C db 7Eh, 3Ch
4044:4EC9 000E[00] db 14 dup (0)
4044:4ED7 7E 3C 00 00 84 3C db 7Eh, 3Ch, 00h, 00h, 84h, 3Ch
4044:4EDD 84 3C 51 03 00 00 db 84h, 3Ch, 51h, 03h, 00h, 00h
4044:4EE3 00 00 57 03 db 00h, 00h, 57h, 03h
4044:4EE7 000A[00] db 10 dup (0)
4044:4EF1 5D 03 78 3C 5D 03 db 5Dh, 03h, 78h, 3Ch, 5Dh, 03h
4044:4EF7 76 3C 00 00 4E 3C db 76h, 3Ch, 00h, 00h, 4Eh, 3Ch
4044:4EFD 00 db 00h
4044:4EFE 0007[00] db 7 dup (0)
4044:4F05 71 03 78 3C 71 db 71h, 03h, 78h, 3Ch, 71h
4044:4F0A loc_910:
4044:4F0A 03 76 3C add si,[bp+3Ch]
4044:4F0D 00 00 add [bx+si],al
4044:4F0F 78 01 js loc_912 ; Jump if sign=1
4044:4F11 50 push ax
4044:4F12 loc_912: ; xref 4044:4F0F
4044:4F12 3C 00 cmp al,0
4044:4F14 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
4044:4F1A 89 03 89 03 52 3C db 89h, 03h, 89h, 03h, 52h, 3Ch
4044:4F20 00 00 96 03 AE 01 db 00h, 00h, 96h, 03h,0AEh, 01h
4044:4F26 00 db 00h
4044:4F27 0046[00] db 70 dup (0)
4044:4F6D 01 00 db 1, 0
4044:4F6F 0009[00] db 9 dup (0)
4044:4F78 0D 0A 4C 61 74 65 db 0Dh, 0Ah, 'Later CP/M or MP/M Ver'
4044:4F7E 72 20 43 50 2F 4D
4044:4F84 20 6F 72 20 4D 50
4044:4F8A 2F 4D 20 56 65 72
4044:4F90 73 69 6F 6E 20 52 db 'sion Required$'
4044:4F96 65 71 75 69 72 65
4044:4F9C 64 24
4044:4F9E CA 05 02 06 3C 06 db 0CAh, 05h, 02h, 06h, 3Ch, 06h
4044:4FA4 6C 06 30 07 24 07 db 6Ch, 06h, 30h, 07h, 24h, 07h
4044:4FAA 22 07 26 07 C8 04 db 22h, 07h, 26h, 07h,0C8h, 04h
4044:4FB0 9E 06 F4 04 56 04 db 9Eh, 06h,0F4h, 04h, 56h, 04h
4044:4FB6 84 04 AA 04 48 05 db 84h, 04h,0AAh, 04h, 48h, 05h
4044:4FBC 6A 04 34 04 CE 06 db 6Ah, 04h, 34h, 04h,0CEh, 06h
4044:4FC2 0E 07 db 0Eh, 07h
4044:4FC4 44 69 73 6B 65 74 db 'Disketten-Schreib/Lese-Fehler: '
4044:4FCA 74 65 6E 2D 53 63
4044:4FD0 68 72 65 69 62 2F
4044:4FD6 4C 65 73 65 2D 46
4044:4FDC 65 68 6C 65 72 3A
4044:4FE2 20 20
4044:4FE4 24 db '$'
4044:4FE5 00 db 0
4044:4FE6 50 61 73 73 77 6F db 'Passwort-Fehler - $'
4044:4FEC 72 74 2D 46 65 68
4044:4FF2 6C 65 72 20 2D 20
4044:4FF8 24
4044:4FF9 00 db 0
4044:4FFA 55 6E 7A 75 6C 61 db 'Unzulaessiges Laufwerk: $'
4044:5000 65 73 73 69 67 65
4044:5006 73 20 4C 61 75 66
4044:500C 77 65 72 6B 3A 20
4044:5012 24
4044:5013 00 db 0
4044:5014 4E 69 63 68 74 20 db 'Nicht genug freie Speicherkapazi'
4044:501A 67 65 6E 75 67 20
4044:5020 66 72 65 69 65 20
4044:5026 53 70 65 69 63 68
4044:502C 65 72 6B 61 70 61
4044:5032 7A 69
4044:5034 74 61 65 74 24 db 'taet$'
4044:5039 00 db 0
4044:503A 44 69 73 6B 65 74 db 'Diskette schreibgeschuetzt: $'
4044:5040 74 65 20 73 63 68
4044:5046 72 65 69 62 67 65
4044:504C 73 63 68 75 65 74
4044:5052 7A 74 3A 20 24
4044:5057 00 db 0
4044:5058 4E 75 72 20 75 6E db 'Nur unter Basis-Betriebssystem a'
4044:505E 74 65 72 20 42 61
4044:5064 73 69 73 2D 42 65
4044:506A 74 72 69 65 62 73
4044:5070 73 79 73 74 65 6D
4044:5076 20 61
4044:5078 62 6C 61 75 66 66 db 'blauffaehig', 0
4044:507E 61 65 68 69 67 00
4044:5084 46 72 65 69 65 72 db 'Freier Speicherplatz im Inhaltsv'
4044:508A 20 53 70 65 69 63
4044:5090 68 65 72 70 6C 61
4044:5096 74 7A 20 69 6D 20
4044:509C 49 6E 68 61 6C 74
4044:50A2 73 76
4044:50A4 65 72 7A 65 69 63 db 'erzeichnis reicht fuer', 0Dh, 0Ah
4044:50AA 68 6E 69 73 20 72
4044:50B0 65 69 63 68 74 20
4044:50B6 66 75 65 72 0D 0A
4044:50BC 44 61 74 75 6D 2D db 'Datum-/Zeiteintraege nicht$'
4044:50C2 2F 5A 65 69 74 65
4044:50C8 69 6E 74 72 61 65
4044:50CE 67 65 20 6E 69 63
4044:50D4 68 74 24
4044:50D7 00 db 0
4044:50D8 44 69 65 73 65 73 db 'Dieses Programm kann nicht ablau'
4044:50DE 20 50 72 6F 67 72
4044:50E4 61 6D 6D 20 6B 61
4044:50EA 6E 6E 20 6E 69 63
4044:50F0 68 74 20 61 62 6C
4044:50F6 61 75
4044:50F8 66 65 6E 20 73 6F db 'fen solange ein anderes ', 0Dh, 0Ah
4044:50FE 6C 61 6E 67 65 20
4044:5104 65 69 6E 20 61 6E
4044:510A 64 65 72 65 73 20
4044:5110 0D 0A
4044:5112 50 72 6F 67 72 61 db 'Programm im Hintergrund ablaeuft'
4044:5118 6D 6D 20 69 6D 20
4044:511E 48 69 6E 74 65 72
4044:5124 67 72 75 6E 64 20
4044:512A 61 62 6C 61 65 75
4044:5130 66 74
4044:5132 20 6F 64 65 72 20 db ' oder wenn ', 0Dh, 0Ah, 'RSX-Dat'
4044:5138 77 65 6E 6E 20 0D
4044:513E 0A 52 53 58 2D 44
4044:5144 61 74
4044:5146 65 69 65 6E 20 67 db 'eien geladen sind.$'
4044:514C 65 6C 61 64 65 6E
4044:5152 20 73 69 6E 64 2E
4044:5158 24
4044:5159 00 db 0
4044:515A 49 4E 49 54 44 49 db 'INITDIR WIRD DATUM-/ZEITEINTR. I'
4044:5160 52 20 57 49 52 44
4044:5166 20 44 41 54 55 4D
4044:516C 2D 2F 5A 45 49 54
4044:5172 45 49 4E 54 52 2E
4044:5178 20 49
4044:517A 4D 20 4C 41 55 46 db 'M LAUFWERK AKTIVIEREN.$'
4044:5180 57 45 52 4B 20 41
4044:5186 4B 54 49 56 49 45
4044:518C 52 45 4E 2E 24
4044:5191 00 db 0
4044:5192 53 6F 6C 6C 20 64 db 'Soll das Inhaltsverz. neu format'
4044:5198 61 73 20 49 6E 68
4044:519E 61 6C 74 73 76 65
4044:51A4 72 7A 2E 20 6E 65
4044:51AA 75 20 66 6F 72 6D
4044:51B0 61 74
4044:51B2 69 65 72 74 20 77 db 'iert werden im Laufwerk: $'
4044:51B8 65 72 64 65 6E 20
4044:51BE 69 6D 20 4C 61 75
4044:51C4 66 77 65 72 6B 3A
4044:51CA 20 24
4044:51CC 53 6F 6C 6C 65 6E db 'Sollen existierende Eintraege ge'
4044:51D2 20 65 78 69 73 74
4044:51D8 69 65 72 65 6E 64
4044:51DE 65 20 45 69 6E 74
4044:51E4 72 61 65 67 65 20
4044:51EA 67 65
4044:51EC 6C 6F 65 73 63 68 db 'loescht werden$'
4044:51F2 74 20 77 65 72 64
4044:51F8 65 6E 24
4044:51FB 00 db 0
4044:51FC 46 75 65 72 20 45 db 'Fuer Eintraege benuetzter Speich'
4044:5202 69 6E 74 72 61 65
4044:5208 67 65 20 62 65 6E
4044:520E 75 65 74 7A 74 65
4044:5214 72 20 53 70 65 69
4044:521A 63 68
4044:521C 65 72 72 61 75 6D db 'erraum freigeben$'
4044:5222 20 66 72 65 69 67
4044:5228 65 62 65 6E 24
4044:522D 00 db 0
4044:522E 49 6E 68 61 6C 74 db 'Inhaltsverzeichnis wurde schon n'
4044:5234 73 76 65 72 7A 65
4044:523A 69 63 68 6E 69 73
4044:5240 20 77 75 72 64 65
4044:5246 20 73 63 68 6F 6E
4044:524C 20 6E
4044:524E 65 75 20 66 6F 72 db 'eu formatiert.$'
4044:5254 6D 61 74 69 65 72
4044:525A 74 2E 24
4044:525D 00 db 0
4044:525E 49 6E 68 61 6C 74 db 'Inhaltsverzeichnis ist passwortg'
4044:5264 73 76 65 72 7A 65
4044:526A 69 63 68 6E 69 73
4044:5270 20 69 73 74 20 70
4044:5276 61 73 73 77 6F 72
4044:527C 74 67
4044:527E 65 73 63 68 75 65 db 'eschuetzt.', 0Dh, 0Ah, 'Passwort'
4044:5284 74 7A 74 2E 0D 0A
4044:528A 50 61 73 73 77 6F
4044:5290 72 74
4044:5292 2C 20 42 69 74 74 db ', Bitte. >$'
4044:5298 65 2E 20 20 3E 24
4044:529E 4C 61 75 66 77 65 db 'Laufwerk Eingeben: $'
4044:52A4 72 6B 20 45 69 6E
4044:52AA 67 65 62 65 6E 3A
4044:52B0 20 24
4044:52B2 6A 61 4A 41 46 45 db 'jaJAFEHLER: $'
4044:52B8 48 4C 45 52 3A 20
4044:52BE 20 24
4044:52C0 20 28 4A 2F 4E 29 db ' (J/N)? $'
4044:52C6 3F 20 24
4044:52C9 00 db 0
4044:52CA 0D 0A 49 6E 73 75 db 0Dh, 0Ah, 'Insufficient Memory$'
4044:52D0 66 66 69 63 69 65
4044:52D6 6E 74 20 4D 65 6D
4044:52DC 6F 72 79 24
4044:52E0 0D 0A 49 6E 76 61 db 0Dh, 0Ah, 'Invalid I/O List', 0Dh
4044:52E6 6C 69 64 20 49 2F
4044:52EC 4F 20 4C 69 73 74
4044:52F2 0D
4044:52F3 0A 45 6E 64 20 6F db 0Ah, 'End of Execution$'
4044:52F9 66 20 45 78 65 63
4044:52FF 75 74 69 6F 6E 24
4044:5305 000B[00] db 11 dup (0)
4044:5310 0F 4B 7F 3D 00 00 db 0Fh, 4Bh, 7Fh, 3Dh, 00h, 00h
4044:5316 8E 07 8F 07 B8 3C db 8Eh, 07h, 8Fh, 07h,0B8h, 3Ch
4044:531C 90 07 00 05 92 07 db 90h, 07h, 00h, 05h, 92h, 07h
4044:5322 20 46 6F 72 6D 61 db ' Format Overflow'
4044:5328 74 20 4F 76 65 72
4044:532E 66 6C 6F 77
4044:5332 00 db 0
4044:5333 00A3[00] db 163 dup (0)
4044:53D6 4E 08 4F 08 B8 3C db 4Eh, 08h, 4Fh, 08h,0B8h, 3Ch
4044:53DC 50 08 05 07 00 00 db 50h, 08h, 05h, 07h, 00h, 00h
4044:53E2 00 00 56 08 00 00 db 00h, 00h, 56h, 08h, 00h, 00h
4044:53E8 62 08 63 08 65 08 db 'b', 8, 'c', 8, 'e', 8, 'g', 8, 'i'
4044:53EE 67 08 69
4044:53F1 08 db 8
4044:53F2 00 db 0
4044:53F3 0009[00] db 9 dup (0)
4044:53FC 6E 08 00 00 db 6Eh, 08h, 00h, 00h
4044:5400 78 08 79 08 7A 08 db 'x', 8, 'y', 8, 'z', 8, '|', 8
4044:5406 7C 08
4044:5408 00 01 00 00 db 0, 1, 0, 0
4044:540C 7E 08 20 43 6F 6E db '~', 8, ' Conversion'
4044:5412 76 65 72 73 69 6F
4044:5418 6E
4044:5419 00 92 08 93 08 94 db 00h, 92h, 08h, 93h, 08h, 94h
4044:541F 08 96 08 04 01 00 db 08h, 96h, 08h, 04h, 01h, 00h
4044:5425 00 00 00 A0 08 A1 db 00h, 00h, 00h,0A0h, 08h,0A1h
4044:542B 08 A2 08 A4 08 00 db 08h,0A2h, 08h,0A4h, 08h, 00h
4044:5431 07 00 00 A6 db 07h, 00h, 00h,0A6h
4044:5435 08 20 46 72 65 65 db 8, ' Free Space Exhausted', 0
4044:543B 20 53 70 61 63 65
4044:5441 20 45 78 68 61 75
4044:5447 73 74 65 64 00
4044:544C 0D 0A 46 52 45 45 db 0Dh, 0Ah, 'FREE Request Out-of-Ra'
4044:5452 20 52 65 71 75 65
4044:5458 73 74 20 4F 75 74
4044:545E 2D 6F 66 2D 52 61
4044:5464 6E 67 65 24 db 'nge$'
4044:5468 0D 0A 46 72 65 65 db 0Dh, 0Ah, 'Free Space Over'
4044:546E 20 53 70 61 63 65
4044:5474 20 4F 76 65 72
4044:5479 77 72 69 74 65 24 db 77h, 72h, 69h, 74h, 65h, 24h
4044:547F 00 20 46 69 6C 65 db 00h, 20h, 46h, 69h, 6Ch, 65h
4044:5485 3A 20 00 db 3Ah, 20h, 00h
4044:5488 20 0D 0A 54 72 61 db ' ', 0Dh, 0Ah, 'Traceback:'
4044:548E 63 65 62 61 63 6B
4044:5494 3A
4044:5495 00 16 09 1D db 00h, 16h, 09h, 1Dh
4044:5499 09 2D 09 37 09 42 db 9, '-', 9, '7', 9, 'B', 9, 'O', 9
4044:549F 09 4F 09
4044:54A2 5C 09 6C 09 20 45 db '\', 9, 'l', 9, ' ERROR', 0
4044:54A8 52 52 4F 52 00
4044:54AD 20 46 49 58 45 44 db ' FIXED OVERFLOW', 0
4044:54B3 20 4F 56 45 52 46
4044:54B9 4C 4F 57 00
4044:54BD 20 4F 56 45 52 46 db ' OVERFLOW', 0
4044:54C3 4C 4F 57 00
4044:54C7 20 55 4E 44 45 52 db ' UNDERFLOW', 0
4044:54CD 46 4C 4F 57 00
4044:54D2 20 5A 45 52 4F 20 db ' ZERO DIVIDE', 0
4044:54D8 44 49 56 49 44 45
4044:54DE 00
4044:54DF 20 45 4E 44 db ' END'
4044:54E3 20 4F 46 20 46 49 db ' OF FILE'
4044:54E9 4C 45
4044:54EB 00 db 0
4044:54EC 20 55 4E 44 45 46 db ' UNDEFINED FILE'
4044:54F2 49 4E 45 44 20 46
4044:54F8 49 4C 45
4044:54FB 00 20 4B 45 59 00 db 00h, 20h, 4Bh, 45h, 59h, 00h
4044:5501 03 4E 55 4C 03 43 db 03h, 4Eh, 55h, 4Ch, 03h, 43h
4044:5507 4F 4E 03 43 4F 4E db 4Fh, 4Eh, 03h, 43h, 4Fh, 4Eh
4044:550D 03 52 44 52 03 50 db 03h, 52h, 44h, 52h, 03h, 50h
4044:5513 55 4E 03 4C 53 54 db 55h, 4Eh, 03h, 4Ch, 53h, 54h
4044:5519 03 42 41 44 00 96 db 03h, 42h, 41h, 44h, 00h, 96h
4044:551F 09 97 09 98 09 9A db 09h, 97h, 09h, 98h, 09h, 9Ah
4044:5525 09 01 01 00 db 09h, 01h, 01h, 00h
4044:5529 000D[00] db 13 dup (0)
4044:5536 A8 09 00 AB 09 00 db 0A8h, 09h, 00h,0ABh, 09h, 00h
4044:553C AE 09 00 00 B8 09 db 0AEh, 09h, 00h, 00h,0B8h, 09h
4044:5542 B9 09 B8 3C BA 09 db 0B9h, 09h,0B8h, 3Ch,0BAh, 09h
4044:5548 00 06 BC db 00h, 06h,0BCh
4044:554B 09 20 49 6E 76 61 db 9, ' Invalid Format Item'
4044:5551 6C 69 64 20 46 6F
4044:5557 72 6D 61 74 20 49
4044:555D 74 65 6D
4044:5560 00 00 db 0, 0
4044:5562 0D 53 74 72 65 61 db 0Dh, 'Stream/Record', 0Dh, 'Seque'
4044:5568 6D 2F 52 65 63 6F
4044:556E 72 64 0D 53 65 71
4044:5574 75 65
4044:5576 6E 2F 44 69 72 65 db 'n/Dire'
4044:557C 63 74 0C 49 6E 70 db 'ct', 0Ch, 'Input/Output ', 0Ch, 'K'
4044:5582 75 74 2F 4F 75 74
4044:5588 70 75 74 20 0C 4B
4044:558E 65 79 65 64 20 41 db 'eyed Access P', 0
4044:5594 63 63 65 73 73 20
4044:559A 50 00
4044:559C 3C 00 db 3Ch, 00h
4044:559E 0007[00] db 7 dup (0)
4044:55A5 20 24 63 6F 6E 00 db 20h, 24h, 63h, 6Fh, 6Eh, 00h
4044:55AB 00 04 00 db 00h, 04h, 00h
4044:55AE 000B[00] db 11 dup (0)
4044:55B9 2B 0A 00 00 2F 0A db 2Bh, 0Ah, 00h, 00h, 2Fh, 0Ah
4044:55BF 00 00 00 00 CC 3C db 00h, 00h, 00h, 00h,0CCh, 3Ch
4044:55C5 0A 0A D2 09 E0 09 db 0Ah, 0Ah,0D2h, 09h,0E0h, 09h
4044:55CB EE 09 FC 09 00 00 db 0EEh, 09h,0FCh, 09h, 00h, 00h
4044:55D1 1A 0A 1C 0A 00 00 db 1Ah, 0Ah, 1Ch, 0Ah, 00h, 00h
4044:55D7 49 0A 00 00 00 00 db 49h, 0Ah, 00h, 00h, 00h, 00h
4044:55DD 51 0A 4C 0A 00 00 db 51h, 0Ah, 4Ch, 0Ah, 00h, 00h
4044:55E3 00 05 00 02 08 00 db 00h, 05h, 00h, 02h, 08h, 00h
4044:55E9 01 00 00 60 0A 00 db 01h, 00h, 00h, 60h, 0Ah, 00h
4044:55EF 00 00 00 54 0A 56 db 00h, 00h, 00h, 54h, 0Ah, 56h
4044:55F5 0A 00 00 6A 0A 00 db 0Ah, 00h, 00h, 6Ah, 0Ah, 00h
4044:55FB 00 57 0A 59 0A 00 db 00h, 57h, 0Ah, 59h, 0Ah, 00h
4044:5601 00 74 0A 00 00 0D db 00h, 74h, 0Ah, 00h, 00h, 0Dh
4044:5607 0A 05 00 05 00 00 db 0Ah, 05h, 00h, 05h, 00h, 00h
4044:560D 00 db 00h
4044:560E 76 0A 77 0A 78 0A db 'v', 0Ah, 'w', 0Ah, 'x', 0Ah, 'z', 0Ah
4044:5614 7A 0A
4044:5616 00 00 8A 0A db 00h, 00h, 8Ah, 0Ah
4044:561A 00 00 db 0, 0
4044:561C loc_916:
4044:561C 05 0100 add ax,100h
4044:561F 00 db 0
4044:5620 00 00 00 8C 0A 8E db 00h, 00h, 00h, 8Ch, 0Ah, 8Eh
4044:5626 0A 00 00 9B 0A 00 db 0Ah, 00h, 00h, 9Bh, 0Ah, 00h
4044:562C 0052[00] db 82 dup (0)
4044:567E 0D 0A 43 6F 6E 64 db 0Dh, 0Ah, 'Condition Stack Overfl'
4044:5684 69 74 69 6F 6E 20
4044:568A 53 74 61 63 6B 20
4044:5690 4F 76 65 72 66 6C
4044:5696 6F 77 24 db 'ow$'
4044:5699 00 12 0B 13 0B B8 db 00h, 12h, 0Bh, 13h, 0Bh,0B8h
4044:569F 3C 14 0B 00 02 16 db 3Ch, 14h, 0Bh, 00h, 02h, 16h
4044:56A5 0B db 0Bh
4044:56A6 20 49 2F 4F 20 53 db ' I/O Stack Overflow'
4044:56AC 74 61 63 6B 20 4F
4044:56B2 76 65 72 66 6C 6F
4044:56B8 77
4044:56B9 00 00 00 00 00 db 0, 0, 0, 0, 0
4044:56BE 43 4F 4E 20 43 4F db 'CON CON RDR PUN LST '
4044:56C4 4E 20 52 44 52 20
4044:56CA 50 55 4E 20 4C 53
4044:56D0 54 20
4044:56D2 00 01 00 01 01 db 0, 1, 0, 1, 1
4044:56D7 006B[00] db 107 dup (0)
4044:5742 2E 64 61 74 06 00 db 2Eh, 64h, 61h, 74h, 06h, 00h
4044:5748 01 db 01h
4044:5749 0013[00] db 19 dup (0)
4044:575C BD 0B BE 0B D6 0B db 0BDh, 0Bh,0BEh, 0Bh,0D6h, 0Bh
4044:5762 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
4044:5768 B6 0B B8 0B E0 0B db 0B6h, 0Bh,0B8h, 0Bh,0E0h, 0Bh
4044:576E E2 0B 00 00 00 00 db 0E2h, 0Bh, 00h, 00h, 00h, 00h
4044:5774 0C E4 0B db 0Ch,0E4h, 0Bh
4044:5777 3113[00] db 12563 dup (0)
4044:888A 01 00 db 1, 0
4044:888C 0051[00] db 81 dup (0)
4044:88DD 05 53 59 53 49 4E db 05h, 53h, 59h, 53h, 49h, 4Eh
4044:88E3 0020[00] db 32 dup (0)
4044:8903 08 53 59 53 50 52 db 8, 'SYSPRINT'
4044:8909 49 4E 54
4044:890C 0074[00] db 116 dup (0)
4044:8980 01 05 00 00 00 05 db 01h, 05h, 00h, 00h, 00h, 05h
4044:8986 00 00 00 02 10 00 db 00h, 00h, 00h, 02h, 10h, 00h
4044:898C 00 00 10 00 db 00h, 00h, 10h, 00h
4044:8990 006F[00] db 111 dup (0)
4044:89FF 10 E9 1D 00 FF 00 db 10h,0E9h, 1Dh, 00h,0FFh, 00h
4044:8A05 00 00 00 db 00h, 00h, 00h
4044:8A08 41 4E 59 52 53 58 db 'ANYRSX '
4044:8A0E 20 20
4044:8A10 0010[00] db 16 dup (0)
4044:8A20 80 F9 3C 74 05 db 80h,0F9h, 3Ch, 74h, 05h
4044:8A25 loc_919: ; xref 4044:8A2F
4044:8A25 2E: FF 2E 0004 jmp dword ptr cs:data_4 ; (4044:0004=0B100h)
;* No entry point to code
4044:8A2A 8B F2 mov si,dx
4044:8A2C 80 3C 96 cmp byte ptr [si],96h
4044:8A2F 75 F4 jne loc_919 ; Jump if not equal
4044:8A31 1E push ds
4044:8A32 2E: C5 1E 0004 lds bx,dword ptr cs:data_4 ; (4044:0004=0B100h) Load seg:offset p
4044:8A37 32 C0 xor al,al ; Zero register
4044:8A39 83 7F 06 00 cmp word ptr [bx+6],0
4044:8A3D 1F pop ds
4044:8A3E 74 02 jz loc_920 ; Jump if zero
4044:8A40 FE C8 dec al
4044:8A42 loc_920: ; xref 4044:8A3E
4044:8A42 88 44 02 mov [si+2],al
4044:8A45 33 DB xor bx,bx ; Zero register
4044:8A47 CB retf ; Return far
4044:8A48 0138[00] db 312 dup (0)
4044:8B80 13 01 db 13h, 01h
4044:8B82 41 4E 59 52 53 58 db 'ANYRSX '
4044:8B88 20 20
4044:8B8A 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
4044:8B90 FF FF 00 db 0FFh,0FFh, 00h
4044:8B93 006D[00] db 109 dup (0)
seg_a ends
end
__________________ Interrupt Usage Synopsis __________________
4 Ocurrences of non-standard interrupts used (search for ??).
__________________ I/O Port Usage Synopsis __________________
No I/O ports used.