mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-23 00:14:25 +00:00
12346 lines
906 KiB
Plaintext
12346 lines
906 KiB
Plaintext
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.
|
||
|
||
|