mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-23 00:14:25 +00:00
4859 lines
356 KiB
Plaintext
4859 lines
356 KiB
Plaintext
BACK.LST Sourcer v7.00
|
||
|
||
|
||
PAGE 59,132
|
||
|
||
;==========================================================================
|
||
;== ==
|
||
;== BACK ==
|
||
;== ==
|
||
;== Created: ==
|
||
;== Code type: special ==
|
||
;== Passes: 9 Analysis Options on: QRSUX ==
|
||
;== COPYRIGHT 1983, DIGITAL RESEARCHXXXX-0000-020724 ==
|
||
;== ==
|
||
;==========================================================================
|
||
|
||
target EQU 'T3' ; Target assembler: TASM-3.0
|
||
|
||
|
||
; The following equates show data references outside the range of the program.
|
||
|
||
= 0030 data_1e equ 30h ; (0000:0030=3Ah)
|
||
= 0100 data_2e equ 100h ; (0000:0100=0EC59h)
|
||
= 0102 data_3e equ 102h ; (0000:0102=0)
|
||
= 0103 data_4e equ 103h ; (0000:0103=0D5F0h)
|
||
= 0111 data_5e equ 111h ; (0000:0111=0EFh)
|
||
= 0113 data_6e equ 113h ; (0000:0113=6FF0h)
|
||
= 0115 data_8e equ 115h ; (0000:0115=0EFh)
|
||
= 0117 data_9e equ 117h ; (0000:0117=0E5F0h)
|
||
= 0121 data_10e equ 121h ; (0000:0121=0EFh)
|
||
= 014A data_11e equ 14Ah ; (0000:014A=0Fh)
|
||
= 0551 data_12e equ 551h ;*(0000:0551=0)
|
||
= 055A data_13e equ 55Ah ;*(0000:055A=0)
|
||
= 0111 data_14e equ 111h ;*(00EF:0111=0FFF8h)
|
||
= 0121 data_15e equ 121h ;*(00EF:0121=0)
|
||
|
||
;------------------------------------------------------------ seg_a ----
|
||
|
||
seg_a segment byte public
|
||
assume cs:seg_a , ds:seg_a
|
||
|
||
4044:0000 01 FD 00 db 01h,0FDh, 00h
|
||
4044:0003 00 data_16 db 0 ; xref 4044:1EFE, 2009, 2047, 20AD
|
||
; 20CD, 20F8, 2853, 2942
|
||
; 296B, 2995, 2C40, 2DBE
|
||
; 3647, 3650, 365B
|
||
4044:0004 FD00 0000 data_17 dw 0FD00h, 0 ; xref 4044:1B4C, 1BA1, 1BC0, 1F46
|
||
; 1FD3, 28D2, 28DF, 28E8
|
||
; 2C86, 3635, 367E
|
||
4044:0008 00 02 99 00 00 00 db 00h, 02h, 99h, 00h, 00h, 00h
|
||
4044:000E 99 00 db 99h, 00h
|
||
4044:0010 0000 data_18 dw 0 ; xref 4044:1B28, 1B52, 1B64, 2D48
|
||
; 3665, 36C0
|
||
4044:0012 0007[00] db 7 dup (0)
|
||
4044:0019 00 data_20 db 0 ; xref 4044:2863
|
||
4044:001A 0037[00] db 55 dup (0)
|
||
4044:0051 0000 data_21 dw 0 ; xref 4044:0205
|
||
4044:0053 00 data_22 db 0 ; xref 4044:01F8, 01FF, 0211, 03D7
|
||
4044:0054 0008[00] db 8 dup (0)
|
||
4044:005C 00 data_23 db 0 ; xref 4044:034C, 0368, 0E55, 0F20
|
||
; 0FCF
|
||
4044:005D 001E[00] db 30 dup (0)
|
||
4044:007B 76 00 00 00 00 db 76h, 00h, 00h, 00h, 00h
|
||
4044:0080 9C data_24 db 9Ch ; Data table (indexed access)
|
||
; xref 4044:0406, 0432, 0464, 046E
|
||
; 0482, 04AD, 04B7, 04C2
|
||
; 0C5B, 0E6E, 0EA0
|
||
4044:0081 58 FA 8C D9 8E D1 db 58h,0FAh, 8Ch,0D9h, 8Eh,0D1h
|
||
4044:0087 8D 26 2E 09 50 9D db 8Dh, 26h, 2Eh, 09h, 50h, 9Dh
|
||
4044:008D E8 F3 00 33 C9 8B db 0E8h,0F3h, 00h, 33h,0C9h, 8Bh
|
||
4044:0093 D1 CD E0 db 0D1h,0CDh,0E0h
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:01AE, 01BB, 01C8, 024D, 04CF, 04DA, 04FB
|
||
; 050A, 0513, 0525, 0536, 0548, 05F6, 0618
|
||
; 062B, 064A, 066B, 068C, 0696, 06B8, 070B
|
||
; 099B, 0C9E
|
||
;==========================================================================
|
||
|
||
4044:0096 sub_1 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:0096 55 push bp
|
||
4044:0097 8B EC mov bp,sp
|
||
4044:0099 8B 56 04 mov dx,[bp+PARAMETER_1]
|
||
4044:009C 8B 4E 06 mov cx,[bp+PARAMETER_2]
|
||
4044:009F CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:00A1 5D pop bp
|
||
4044:00A2 C2 0004 retn 4
|
||
sub_1 endp
|
||
|
||
4044:00A5 0015[00] db 21 dup (0)
|
||
4044:00BA 31 36 31 31 38 33 db '161183CP/M-86 Plus'
|
||
4044:00C0 43 50 2F 4D 2D 38
|
||
4044:00C6 36 20 50 6C 75 73
|
||
4044:00CC 00 00 00 00 db 0, 0, 0, 0
|
||
4044:00D0 43 4F 50 59 52 49 copyright db 'COPYRIGHT 1983, DIGITAL RESEARCH'
|
||
4044:00D6 47 48 54 20 31 39
|
||
4044:00DC 38 33 2C 20 44 49
|
||
4044:00E2 47 49 54 41 4C 20
|
||
4044:00E8 52 45 53 45 41 52
|
||
4044:00EE 43 48
|
||
4044:00F0 58 58 58 58 2D 30 db 'XXXX-0000-020724'
|
||
4044:00F6 30 30 30 2D 30 32
|
||
4044:00FC 30 37 32 34
|
||
4044:0100 00 data_27 db 0 ; xref 4044:28B4, 2987, 2C63
|
||
4044:0101 00 data_28 db 0 ; xref 4044:2BFC, 2C03
|
||
4044:0102 0000 data_29 dw 0 ; xref 4044:2A22, 2EE3
|
||
4044:0104 00 db 0
|
||
4044:0105 0000 data_31 dw 0 ; xref 4044:28E4
|
||
4044:0107 0000 data_32 dw 0 ; xref 4044:2E7A, 2E9B
|
||
4044:0109 0000 data_33 dw 0 ; xref 4044:2E73, 2E97, 2EB5, 2EC8
|
||
4044:010B 0000 data_34 dw 0 ; xref 4044:2E77, 2E94, 2EB2, 2ECC
|
||
4044:010D 00 data_35 db 0 ; xref 4044:2E6C, 2E9F, 2EA7, 2EAB
|
||
4044:010E 00 db 0
|
||
4044:010F 00 data_36 db 0 ; xref 4044:2E2D, 2E48
|
||
4044:0110 00 db 0
|
||
4044:0111 0000 data_37 dw 0 ; xref 4044:1B1C, 1B94, 1BB3, 1BFE
|
||
; 1C24, 1CED, 1CF8, 1D91
|
||
; 1DB4, 1E43, 1F4E, 1F62
|
||
; 1FCD, 1FE8, 1FFC, 20B5
|
||
; 2110, 2141
|
||
4044:0113 0000 data_38 dw 0 ; xref 4044:1F42, 1F52, 1FC8
|
||
4044:0115 0000 data_40 dw 0 ; xref 4044:1B16, 1B8E, 1BAD, 1FE2
|
||
4044:0117 0000 data_42 dw 0 ; xref 4044:1B12, 1B8A, 1BA9, 1FDE
|
||
4044:0119 00 data_44 db 0 ; xref 4044:1C3C, 1C43, 1C4A, 1CB8
|
||
; 1D74, 1E9F
|
||
4044:011A 0000 data_45 dw 0 ; xref 4044:028A, 1BE9, 1BF6, 1C0F
|
||
; 1CD9, 1D89
|
||
4044:011C 0000 data_46 dw 0 ; Data table (indexed access)
|
||
; xref 4044:02D9, 0301, 0312, 03A7
|
||
; 03BA, 0D18, 0D71, 1BE2
|
||
; 1D81, 1E6E, 1F04, 203B
|
||
; 204F, 20D5, 20F1
|
||
4044:011E 00 data_48 db 0 ; xref 4044:1C6E, 212D
|
||
4044:011F 0000 data_49 dw 0 ; xref 4044:1F87, 1F90, 1FB6
|
||
4044:0121 00 data_50 db 0 ; xref 4044:1C83, 1C90, 1CA6, 1CB3
|
||
; 1CCC, 1D67, 1E5D, 1FB0
|
||
4044:0122 00 db 0
|
||
4044:0123 00 data_51 db 0 ; xref 4044:1EC8, 1EF4, 1F1D, 1F30
|
||
4044:0124 00 00 00 00 00 00 db 0, 0, 0, 0, 0, 0
|
||
4044:012A 00 db 0
|
||
4044:012B 00 data_52 db 0 ; xref 4044:2E22, 2E3D
|
||
4044:012C 0000 data_53 dw 0 ; Data table (indexed access)
|
||
; xref 4044:02DD, 0316, 0D20
|
||
4044:012E 0013[00] db 19 dup (0)
|
||
4044:0141 0000 data_54 dw 0 ; xref 4044:06BB, 06CA, 071C, 0755
|
||
; 2114, 213D
|
||
4044:0143 00 db 0
|
||
4044:0144 00 data_56 db 0 ; xref 4044:211E
|
||
4044:0145 00 db 0
|
||
4044:0146 00 data_57 db 0 ; xref 4044:1BDB, 1CE0
|
||
4044:0147 00 data_58 db 0 ; xref 4044:1F13, 2E58
|
||
4044:0148 0000 data_59 dw 0 ; xref 4044:2E62
|
||
4044:014A 00 data_61 db 0 ; xref 4044:2A2D, 2C71
|
||
4044:014B 00 data_62 db 0 ; xref 4044:286E, 2A88
|
||
4044:014C ,0000 data_63 dw 0 ; segment storage
|
||
; xref 4044:2E7F, 2EBD
|
||
4044:014E 0000 data_64 dw 0 ; xref 4044:2E83, 2EC1
|
||
4044:0150 0019[00] db 25 dup (0)
|
||
4044:0169 00 data_65 db 0 ; xref 4044:1E74, 1E78, 1EA4, 1EA8
|
||
; 1EB9, 1EEC
|
||
4044:016A 0007[00] db 7 dup (0)
|
||
4044:0171 43 53 45 47 20 70 db 'CSEG patch area'
|
||
4044:0177 61 74 63 68 20 61
|
||
4044:017D 72 65 61
|
||
4044:0180 8B EC FB BC 2E 09 db 8Bh,0ECh,0FBh,0BCh, 2Eh, 09h
|
||
4044:0186 8B EC FF 36 5A 09 db 8Bh,0ECh,0FFh, 36h, 5Ah, 09h
|
||
4044:018C B8 EE 04 50 E8 03 db 0B8h,0EEh, 04h, 50h,0E8h, 03h
|
||
4044:0192 FF A2 DA 01 80 3E db 0FFh,0A2h,0DAh, 01h, 80h, 3Eh
|
||
4044:0198 F0 04 04 75 0A B8 db 0F0h, 04h, 04h, 75h, 0Ah,0B8h
|
||
4044:019E CE 07 50 E8 A9 03 db 0CEh, 07h, 50h,0E8h,0A9h, 03h
|
||
4044:01A4 E8 59 03 db 0E8h, 59h, 03h
|
||
4044:01A7 loc_2:
|
||
4044:01A7 B0 2D mov al,2Dh ; '-'
|
||
4044:01A9 ,50 push ax ; PARAMETER_2
|
||
4044:01AA B8 00FF mov ax,0FFh
|
||
4044:01AD 50 push ax ; PARAMETER_1
|
||
4044:01AE E8 FEE5 call sub_1 ; (0096)
|
||
4044:01B1 E8 0C9B call sub_38 ; (0E4F)
|
||
4044:01B4 B0 31 mov al,31h ; '1'
|
||
4044:01B6 ,50 push ax ; PARAMETER_2
|
||
4044:01B7 B8 01C8 mov ax,1C8h
|
||
4044:01BA 50 push ax ; PARAMETER_1
|
||
4044:01BB E8 FED8 call sub_1 ; (0096)
|
||
4044:01BE A2 01DA mov byte ptr ds:[1DAh],al ; (4044:01DA=0Bh)
|
||
4044:01C1 B0 19 mov al,19h
|
||
4044:01C3 ,50 push ax ; PARAMETER_2
|
||
4044:01C4 B8 0000 mov ax,0
|
||
4044:01C7 50 push ax ; PARAMETER_1
|
||
4044:01C8 E8 FECB call sub_1 ; (0096)
|
||
4044:01CB A3 0116 mov word ptr data_40+1,ax ; (4044:0116=0)
|
||
4044:01CE 80 3E 020C 20 cmp byte ptr ds:[20Ch],20h ; (4044:020C=1Eh) ' '
|
||
4044:01D3 75 0E jne loc_3 ; Jump if not equal
|
||
4044:01D5 B8 0712 mov ax,712h
|
||
4044:01D8 ,50 push ax ; PARAMETER_2
|
||
4044:01D9 B8 020B mov ax,20Bh
|
||
4044:01DC 50 push ax ; PARAMETER_1
|
||
4044:01DD E8 03E5 call sub_9 ; (05C5)
|
||
4044:01E0 E8 031D call sub_3 ; (0500)
|
||
4044:01E3 loc_3: ; xref 4044:01D3
|
||
4044:01E3 80 3E 0214 20 cmp byte ptr ds:[214h],20h ; (4044:0214=0A2h) ' '
|
||
4044:01E8 75 0E jne loc_4 ; Jump if not equal
|
||
4044:01EA B9 0003 mov cx,3
|
||
4044:01ED ,BE 01E7 mov si,1E7h ; (4044:01E7=20h)
|
||
4044:01F0 ,BF 0214 mov di,214h ; (4044:0214=0A2h)
|
||
4044:01F3 1E push ds
|
||
4044:01F4 07 pop es
|
||
4044:01F5 FC cld ; Clear direction
|
||
4044:01F6 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:01F8 loc_4: ; xref 4044:01E8
|
||
4044:01F8 80 3E 0053 00 cmp data_22,0 ; (4044:0053=0)
|
||
4044:01FD 76 1A jbe loc_5 ; Jump if below or =
|
||
4044:01FF 8A 0E 0053 mov cl,data_22 ; (4044:0053=0)
|
||
4044:0203 B5 00 mov ch,0
|
||
4044:0205 8B 36 0051 mov si,data_21 ; (4044:0051=0)
|
||
4044:0209 ,BF 028F mov di,28Fh ; (4044:028F=0D7h)
|
||
4044:020C 1E push ds
|
||
4044:020D 07 pop es
|
||
4044:020E FC cld ; Clear direction
|
||
4044:020F F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0211 A0 0053 mov al,data_22 ; (4044:0053=0)
|
||
4044:0214 A2 01DE mov byte ptr ds:[1DEh],al ; (4044:01DE=0E5h)
|
||
4044:0217 EB 05 jmp short loc_6 ; (021E)
|
||
4044:0219 loc_5: ; xref 4044:01FD
|
||
4044:0219 C6 06 01DE 00 mov byte ptr ds:[1DEh],0 ; (4044:01DE=0E5h)
|
||
4044:021E loc_6: ; xref 4044:0217
|
||
4044:021E B8 020B mov ax,20Bh
|
||
4044:0221 ,50 push ax ; PARAMETER_2
|
||
4044:0222 B8 028F mov ax,28Fh
|
||
4044:0225 50 push ax ; PARAMETER_1
|
||
4044:0226 E8 06D4 call sub_23 ; (08FD)
|
||
4044:0229 3C 00 cmp al,0
|
||
4044:022B 75 0B jne loc_7 ; Jump if not equal
|
||
4044:022D B8 020B mov ax,20Bh
|
||
4044:0230 ,50 push ax ; PARAMETER_2
|
||
4044:0231 B8 028F mov ax,28Fh
|
||
4044:0234 50 push ax ; PARAMETER_1
|
||
4044:0235 E8 0601 call sub_21 ; (0839)
|
||
4044:0238 loc_7: ; xref 4044:022B
|
||
4044:0238 80 3E 01E1 00 cmp byte ptr ds:[1E1h],0 ; (4044:01E1=1Dh)
|
||
4044:023D 75 21 jne loc_8 ; Jump if not equal
|
||
4044:023F 80 3E 01DF 00 cmp byte ptr ds:[1DFh],0 ; (4044:01DF=3)
|
||
4044:0244 75 1A jne loc_8 ; Jump if not equal
|
||
4044:0246 B0 31 mov al,31h ; '1'
|
||
4044:0248 ,50 push ax ; PARAMETER_2
|
||
4044:0249 B8 04F1 mov ax,4F1h
|
||
4044:024C 50 push ax ; PARAMETER_1
|
||
4044:024D E8 FE46 call sub_1 ; (0096)
|
||
4044:0250 A0 04F3 mov al,byte ptr ds:[4F3h] ; (4044:04F3=0FFh)
|
||
4044:0253 04 30 add al,30h ; '0'
|
||
4044:0255 A2 01EB mov byte ptr ds:[1EBh],al ; (4044:01EB=3)
|
||
4044:0258 C7 06 0118 01EA mov word ptr data_42+1,1EAh ; (4044:0118=0)
|
||
4044:025E EB 0D jmp short loc_9 ; (026D)
|
||
4044:0260 loc_8: ; xref 4044:023D, 0244
|
||
4044:0260 80 3E 01DF 01 cmp byte ptr ds:[1DFh],1 ; (4044:01DF=3)
|
||
4044:0265 75 06 jne loc_9 ; Jump if not equal
|
||
4044:0267 C7 06 0118 022C mov word ptr data_42+1,22Ch ; (4044:0118=0)
|
||
4044:026D loc_9: ; xref 4044:025E, 0265
|
||
4044:026D 80 3E 01E1 00 cmp byte ptr ds:[1E1h],0 ; (4044:01E1=1Dh)
|
||
4044:0272 75 1D jne loc_10 ; Jump if not equal
|
||
4044:0274 ,FF 36 0118 push word ptr data_42+1 ; PARAMETER_1 (4044:0118=0)
|
||
4044:0278 E8 03E6 call sub_15 ; (0661)
|
||
4044:027B 3C 00 cmp al,0
|
||
4044:027D 75 12 jne loc_10 ; Jump if not equal
|
||
4044:027F ,FF 36 0118 push word ptr data_42+1 ; PARAMETER_1 (4044:0118=0)
|
||
4044:0283 E8 04E4 call sub_19 ; (076A)
|
||
4044:0286 ,FF 36 0118 push word ptr data_42+1 ; PARAMETER_2 (4044:0118=0)
|
||
4044:028A FF 36 011A push data_45 ; PARAMETER_1 (4044:011A=0)
|
||
4044:028E E8 05D7 call sub_22 ; (0868)
|
||
4044:0291 loc_10: ; xref 4044:0272, 027D
|
||
4044:0291 A0 01E0 mov al,byte ptr ds:[1E0h] ; (4044:01E0=0E8h)
|
||
4044:0294 D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0296 73 1A jnc loc_11 ; Jump if carry=0
|
||
4044:0298 B8 024D mov ax,24Dh
|
||
4044:029B ,50 push ax ; PARAMETER_2
|
||
4044:029C B8 029F mov ax,29Fh
|
||
4044:029F 50 push ax ; PARAMETER_1
|
||
4044:02A0 E8 03DF call sub_16 ; (0682)
|
||
4044:02A3 3C 00 cmp al,0
|
||
4044:02A5 75 0B jne loc_11 ; Jump if not equal
|
||
4044:02A7 B8 024D mov ax,24Dh
|
||
4044:02AA ,50 push ax ; PARAMETER_2
|
||
4044:02AB B8 029F mov ax,29Fh
|
||
4044:02AE 50 push ax ; PARAMETER_1
|
||
4044:02AF E8 0587 call sub_21 ; (0839)
|
||
4044:02B2 loc_11: ; xref 4044:0296, 02A5
|
||
4044:02B2 80 3E 01E1 01 cmp byte ptr ds:[1E1h],1 ; (4044:01E1=1Dh)
|
||
4044:02B7 75 07 jne loc_12 ; Jump if not equal
|
||
4044:02B9 B8 0966 mov ax,966h
|
||
4044:02BC ,50 push ax ; PARAMETER_1
|
||
4044:02BD E8 06D1 call sub_24 ; (0991)
|
||
4044:02C0 loc_12: ; xref 4044:02B7
|
||
4044:02C0 C6 06 01D8 00 mov byte ptr ds:[1D8h],0 ; (4044:01D8=50h)
|
||
4044:02C5 C6 06 01E4 01 mov byte ptr ds:[1E4h],1 ; (4044:01E4=3Eh)
|
||
4044:02CA loc_13: ; xref 4044:0321
|
||
4044:02CA A0 01E4 mov al,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:02CD 3A 06 01D9 cmp al,byte ptr ds:[1D9h] ; (4044:01D9=0B8h)
|
||
4044:02D1 77 50 ja loc_16 ; Jump if above
|
||
4044:02D3 B4 00 mov ah,0
|
||
4044:02D5 D1 E0 shl ax,1 ; Shift w/zeros fill
|
||
4044:02D7 89 C3 ;* mov bx,ax
|
||
4044:02D7 db 89h,0C3h ; Fixup - byte match
|
||
4044:02D9 ,FF B7 011C push data_46[bx] ; PARAMETER_2 (4044:011C=0)
|
||
4044:02DD FF B7 012C push data_53[bx] ; PARAMETER_1 (4044:012C=0)
|
||
4044:02E1 E8 039E call sub_16 ; (0682)
|
||
4044:02E4 3C 00 cmp al,0
|
||
4044:02E6 75 35 jne loc_15 ; Jump if not equal
|
||
4044:02E8 FE 06 01D8 inc byte ptr ds:[1D8h] ; (4044:01D8=50h)
|
||
4044:02EC A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:02EF 88 E0 ;* mov al,ah
|
||
4044:02EF db 88h,0E0h ; Fixup - byte match
|
||
4044:02F1 3C 00 cmp al,0
|
||
4044:02F3 75 15 jne loc_14 ; Jump if not equal
|
||
4044:02F5 B8 05C4 mov ax,5C4h
|
||
4044:02F8 ,50 push ax ; PARAMETER_2
|
||
4044:02F9 8A 1E 01E4 mov bl,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:02FD B7 00 mov bh,0
|
||
4044:02FF D1 E3 shl bx,1 ; Shift w/zeros fill
|
||
4044:0301 FF B7 011C push data_46[bx] ; PARAMETER_1 (4044:011C=0)
|
||
4044:0305 E8 02BD call sub_9 ; (05C5)
|
||
4044:0308 EB 13 jmp short loc_15 ; (031D)
|
||
4044:030A loc_14: ; xref 4044:02F3
|
||
4044:030A 8A 1E 01E4 mov bl,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:030E B7 00 mov bh,0
|
||
4044:0310 D1 E3 shl bx,1 ; Shift w/zeros fill
|
||
4044:0312 ,FF B7 011C push data_46[bx] ; PARAMETER_2 (4044:011C=0)
|
||
4044:0316 FF B7 012C push data_53[bx] ; PARAMETER_1 (4044:012C=0)
|
||
4044:031A E8 051C call sub_21 ; (0839)
|
||
4044:031D loc_15: ; xref 4044:02E6, 0308
|
||
4044:031D FE 06 01E4 inc byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:0321 75 A7 jnz loc_13 ; Jump if not zero
|
||
4044:0323 loc_16: ; xref 4044:02D1
|
||
4044:0323 80 3E 01D8 00 cmp byte ptr ds:[1D8h],0 ; (4044:01D8=50h)
|
||
4044:0328 76 03 jbe loc_17 ; Jump if below or =
|
||
4044:032A E8 01D3 call sub_3 ; (0500)
|
||
4044:032D loc_17: ; xref 4044:0328
|
||
4044:032D 80 3E 01E1 00 cmp byte ptr ds:[1E1h],0 ; (4044:01E1=1Dh)
|
||
4044:0332 75 27 jne loc_19 ; Jump if not equal
|
||
4044:0334 loc_18: ; xref 4044:1B36
|
||
4044:0334 E8 0206 call sub_6 ; (053D)
|
||
4044:0337 B8 075C mov ax,75Ch
|
||
4044:033A ,50 push ax ; PARAMETER_1
|
||
4044:033B E8 01EE call sub_5 ; (052C)
|
||
4044:033E ,FF 36 0118 push word ptr data_42+1 ; PARAMETER_1 (4044:0118=0)
|
||
4044:0342 E8 021F call sub_8 ; (0564)
|
||
4044:0345 B9 0021 mov cx,21h
|
||
4044:0348 8B 36 0118 mov si,word ptr data_42+1 ; (4044:0118=0)
|
||
4044:034C ,BF 005C mov di,offset data_23 ; (4044:005C=0)
|
||
4044:034F 1E push ds
|
||
4044:0350 07 pop es
|
||
4044:0351 FC cld ; Clear direction
|
||
4044:0352 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0354 B8 03FE mov ax,3FEh
|
||
4044:0357 50 push ax
|
||
4044:0358 E8 0B98 call sub_39 ; (0EF3)
|
||
4044:035B loc_19: ; xref 4044:0332
|
||
4044:035B A0 01E0 mov al,byte ptr ds:[1E0h] ; (4044:01E0=0E8h)
|
||
4044:035E D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0360 73 15 jnc loc_20 ; Jump if carry=0
|
||
4044:0362 B9 0021 mov cx,21h
|
||
4044:0365 ,BE 024D mov si,24Dh ; (4044:024D=0E8h)
|
||
4044:0368 ,BF 005C mov di,offset data_23 ; (4044:005C=0)
|
||
4044:036B 1E push ds
|
||
4044:036C 07 pop es
|
||
4044:036D FC cld ; Clear direction
|
||
4044:036E F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0370 B8 03FA mov ax,3FAh
|
||
4044:0373 50 push ax
|
||
4044:0374 E8 0C2D call sub_41 ; (0FA4)
|
||
4044:0377 loc_20: ; xref 4044:0360
|
||
4044:0377 E8 02A6 call sub_13 ; (0620)
|
||
4044:037A 3C 00 cmp al,0
|
||
4044:037C 75 0E jne loc_21 ; Jump if not equal
|
||
4044:037E B8 0806 mov ax,806h
|
||
4044:0381 ,50 push ax ; PARAMETER_2
|
||
4044:0382 B8 020B mov ax,20Bh
|
||
4044:0385 50 push ax ; PARAMETER_1
|
||
4044:0386 E8 023C call sub_9 ; (05C5)
|
||
4044:0389 E8 0174 call sub_3 ; (0500)
|
||
4044:038C loc_21: ; xref 4044:037C
|
||
4044:038C 80 3E 01D9 00 cmp byte ptr ds:[1D9h],0 ; (4044:01D9=0B8h)
|
||
4044:0391 76 34 jbe loc_24 ; Jump if below or =
|
||
4044:0393 C6 06 01E4 01 mov byte ptr ds:[1E4h],1 ; (4044:01E4=3Eh)
|
||
4044:0398 loc_22: ; xref 4044:03C5
|
||
4044:0398 A0 01E4 mov al,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:039B 3A 06 01D9 cmp al,byte ptr ds:[1D9h] ; (4044:01D9=0B8h)
|
||
4044:039F 77 26 ja loc_24 ; Jump if above
|
||
4044:03A1 B4 00 mov ah,0
|
||
4044:03A3 D1 E0 shl ax,1 ; Shift w/zeros fill
|
||
4044:03A5 89 C3 ;* mov bx,ax
|
||
4044:03A5 db 89h,0C3h ; Fixup - byte match
|
||
4044:03A7 ,FF B7 011C push data_46[bx] ; PARAMETER_1 (4044:011C=0)
|
||
4044:03AB E8 023E call sub_11 ; (05EC)
|
||
4044:03AE 3C 00 cmp al,0
|
||
4044:03B0 75 0F jne loc_23 ; Jump if not equal
|
||
4044:03B2 8A 1E 01E4 mov bl,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:03B6 B7 00 mov bh,0
|
||
4044:03B8 D1 E3 shl bx,1 ; Shift w/zeros fill
|
||
4044:03BA ,FF B7 011C push data_46[bx] ; PARAMETER_1 (4044:011C=0)
|
||
4044:03BE E8 0217 call sub_10 ; (05D8)
|
||
4044:03C1 loc_23: ; xref 4044:03B0
|
||
4044:03C1 FE 06 01E4 inc byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:03C5 75 D1 jnz loc_22 ; Jump if not zero
|
||
4044:03C7 loc_24: ; xref 4044:0391, 039F
|
||
4044:03C7 A0 028F mov al,byte ptr ds:[28Fh] ; (4044:028F=0D7h)
|
||
4044:03CA 3A 06 096C cmp al,byte ptr ds:[96Ch] ; (4044:096C=4)
|
||
4044:03CE 74 02 je loc_25 ; Jump if equal
|
||
4044:03D0 3C 00 cmp al,0
|
||
4044:03D2 loc_25: ; xref 4044:03CE
|
||
4044:03D2 75 03 jne loc_26 ; Jump if not equal
|
||
4044:03D4 E9 00E0 jmp loc_37 ; (04B7)
|
||
4044:03D7 loc_26: ; xref 4044:03D2
|
||
4044:03D7 80 3E 0053 00 cmp data_22,0 ; (4044:0053=0)
|
||
4044:03DC 74 03 je loc_27 ; Jump if equal
|
||
4044:03DE E9 00D6 jmp loc_37 ; (04B7)
|
||
4044:03E1 loc_27: ; xref 4044:03DC
|
||
4044:03E1 A0 01DC mov al,byte ptr ds:[1DCh] ; (4044:01DC=50h)
|
||
4044:03E4 FE C8 dec al
|
||
4044:03E6 A2 01DD mov byte ptr ds:[1DDh],al ; (4044:01DD=0E8h)
|
||
4044:03E9 8A 0E 01DE mov cl,byte ptr ds:[1DEh] ; (4044:01DE=0E5h)
|
||
4044:03ED 02 C8 add cl,al
|
||
4044:03EF FE C1 inc cl
|
||
4044:03F1 88 0E 01E5 mov byte ptr ds:[1E5h],cl ; (4044:01E5=14h)
|
||
4044:03F5 FE C1 inc cl
|
||
4044:03F7 88 0E 01DC mov byte ptr ds:[1DCh],cl ; (4044:01DC=50h)
|
||
4044:03FB C6 06 01E6 01 mov byte ptr ds:[1E6h],1 ; (4044:01E6=2)
|
||
4044:0400 loc_28: ; xref 4044:042A
|
||
4044:0400 ,8A 1E 01E6 mov bl,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0404 B7 00 mov bh,0
|
||
4044:0406 8A 87 0080 mov al,data_24[bx] ; (4044:0080=9Ch)
|
||
4044:040A 50 push ax
|
||
4044:040B 3A 06 096C cmp al,byte ptr ds:[96Ch] ; (4044:096C=4)
|
||
4044:040F B0 FF mov al,0FFh
|
||
4044:0411 74 01 jz loc_29 ; Jump if zero
|
||
4044:0413 40 inc ax
|
||
4044:0414 loc_29: ; xref 4044:0411
|
||
4044:0414 59 pop cx
|
||
4044:0415 50 push ax
|
||
4044:0416 3A 0E 096B cmp cl,byte ptr ds:[96Bh] ; (4044:096B=76h)
|
||
4044:041A B0 FF mov al,0FFh
|
||
4044:041C 74 01 jz loc_30 ; Jump if zero
|
||
4044:041E 40 inc ax
|
||
4044:041F loc_30: ; xref 4044:041C
|
||
4044:041F 59 pop cx
|
||
4044:0420 0A C1 or al,cl
|
||
4044:0422 D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0424 73 06 jnc loc_31 ; Jump if carry=0
|
||
4044:0426 FE 06 01E6 inc byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:042A EB D4 jmp short loc_28 ; (0400)
|
||
4044:042C loc_31: ; xref 4044:0424, 0455
|
||
4044:042C ,8A 1E 01E6 mov bl,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0430 B7 00 mov bh,0
|
||
4044:0432 8A 87 0080 mov al,data_24[bx] ; (4044:0080=9Ch)
|
||
4044:0436 50 push ax
|
||
4044:0437 3A 06 096C cmp al,byte ptr ds:[96Ch] ; (4044:096C=4)
|
||
4044:043B B0 FF mov al,0FFh
|
||
4044:043D 75 01 jnz loc_32 ; Jump if not zero
|
||
4044:043F 40 inc ax
|
||
4044:0440 loc_32: ; xref 4044:043D
|
||
4044:0440 59 pop cx
|
||
4044:0441 50 push ax
|
||
4044:0442 80 F9 00 cmp cl,0
|
||
4044:0445 B0 FF mov al,0FFh
|
||
4044:0447 75 01 jnz loc_33 ; Jump if not zero
|
||
4044:0449 40 inc ax
|
||
4044:044A loc_33: ; xref 4044:0447
|
||
4044:044A 59 pop cx
|
||
4044:044B 22 C1 and al,cl
|
||
4044:044D D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:044F 73 06 jnc loc_34 ; Jump if carry=0
|
||
4044:0451 FE 06 01E6 inc byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0455 EB D5 jmp short loc_31 ; (042C)
|
||
4044:0457 loc_34: ; xref 4044:044F, 047A
|
||
4044:0457 ,A0 01DD mov al,byte ptr ds:[1DDh] ; (4044:01DD=0E8h)
|
||
4044:045A 3A 06 01E6 cmp al,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:045E 76 1C jbe loc_35 ; Jump if below or =
|
||
4044:0460 B4 00 mov ah,0
|
||
4044:0462 89 C3 ;* mov bx,ax
|
||
4044:0462 db 89h,0C3h ; Fixup - byte match
|
||
4044:0464 8A 87 0080 mov al,data_24[bx] ; (4044:0080=9Ch)
|
||
4044:0468 8A 1E 01E5 mov bl,byte ptr ds:[1E5h] ; (4044:01E5=14h)
|
||
4044:046C B7 00 mov bh,0
|
||
4044:046E 88 87 0080 mov data_24[bx],al ; (4044:0080=9Ch)
|
||
4044:0472 FE 0E 01E5 dec byte ptr ds:[1E5h] ; (4044:01E5=14h)
|
||
4044:0476 FE 0E 01DD dec byte ptr ds:[1DDh] ; (4044:01DD=0E8h)
|
||
4044:047A EB DB jmp short loc_34 ; (0457)
|
||
4044:047C loc_35: ; xref 4044:045E
|
||
4044:047C 8A 1E 01E6 mov bl,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0480 B7 00 mov bh,0
|
||
4044:0482 C6 87 0080 3B mov data_24[bx],3Bh ; (4044:0080=9Ch) ';'
|
||
4044:0487 C6 06 01E4 01 mov byte ptr ds:[1E4h],1 ; (4044:01E4=3Eh)
|
||
4044:048C loc_36: ; xref 4044:04B5
|
||
4044:048C A0 01E4 mov al,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:048F 3A 06 01DE cmp al,byte ptr ds:[1DEh] ; (4044:01DE=0E5h)
|
||
4044:0493 77 22 ja loc_37 ; Jump if above
|
||
4044:0495 A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0498 FE C0 inc al
|
||
4044:049A A2 01E6 mov byte ptr ds:[1E6h],al ; (4044:01E6=2)
|
||
4044:049D 8A 1E 01E4 mov bl,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:04A1 FE CB dec bl
|
||
4044:04A3 B7 00 mov bh,0
|
||
4044:04A5 8A 8F 028F mov cl,byte ptr ds:[28Fh][bx] ; (4044:028F=0D7h)
|
||
4044:04A9 B4 00 mov ah,0
|
||
4044:04AB 89 C3 ;* mov bx,ax
|
||
4044:04AB db 89h,0C3h ; Fixup - byte match
|
||
4044:04AD 88 8F 0080 mov data_24[bx],cl ; (4044:0080=9Ch)
|
||
4044:04B1 FE 06 01E4 inc byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:04B5 75 D5 jnz loc_36 ; Jump if not zero
|
||
4044:04B7 loc_37: ; xref 4044:03D4, 03DE, 0493
|
||
4044:04B7 C6 06 0080 20 mov data_24,20h ; (4044:0080=9Ch) ' '
|
||
4044:04BC 8A 1E 01DC mov bl,byte ptr ds:[1DCh] ; (4044:01DC=50h)
|
||
4044:04C0 B7 00 mov bh,0
|
||
4044:04C2 C6 87 0080 00 mov data_24[bx],0 ; (4044:0080=9Ch)
|
||
4044:04C7 ,FF 36 095C push word ptr ds:[95Ch] ; PARAMETER_2 (4044:095C=0B7h)
|
||
4044:04CB B8 013C mov ax,13Ch
|
||
4044:04CE 50 push ax ; PARAMETER_1
|
||
4044:04CF E8 FBC4 call sub_1 ; (0096)
|
||
4044:04D2 ,FF 36 0958 push word ptr ds:[958h] ; PARAMETER_2 (4044:0958=1E8Ah)
|
||
4044:04D6 B8 0080 mov ax,80h
|
||
4044:04D9 50 push ax ; PARAMETER_1
|
||
4044:04DA E8 FBB9 call sub_1 ; (0096)
|
||
4044:04DD E8 012D call sub_12 ; (060D)
|
||
4044:04E0 B8 0806 mov ax,806h
|
||
4044:04E3 ,50 push ax ; PARAMETER_2
|
||
4044:04E4 B8 020B mov ax,20Bh
|
||
4044:04E7 50 push ax ; PARAMETER_1
|
||
4044:04E8 E8 00DA call sub_9 ; (05C5)
|
||
4044:04EB E8 0012 call sub_3 ; (0500)
|
||
4044:04EE FB sti ; Enable interrupts
|
||
4044:04EF F4 hlt ; Halt processor
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:088E
|
||
;==========================================================================
|
||
|
||
4044:04F0 sub_2 proc near
|
||
4044:04F0 ,55 push bp
|
||
4044:04F1 8B EC mov bp,sp
|
||
4044:04F3 ,FF 36 0951 push word ptr ds:[951h] ; PARAMETER_2 (4044:0951=0D004h)
|
||
4044:04F7 FF 36 0118 push word ptr data_42+1 ; PARAMETER_1 (4044:0118=0)
|
||
4044:04FB E8 FB98 call sub_1 ; (0096)
|
||
4044:04FE 5D pop bp
|
||
4044:04FF C3 retn
|
||
sub_2 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:01E0, 032A, 0389, 04EB, 05E5, 07E9, 0826
|
||
; 084F, 08D1, 08F6, 0CB3, 0CFC, 0D78, 0E4A
|
||
; 0EE1
|
||
;==========================================================================
|
||
|
||
4044:0500 sub_3 proc near
|
||
4044:0500 ,55 push bp
|
||
4044:0501 8B EC mov bp,sp
|
||
4044:0503 B0 6C mov al,6Ch ; 'l'
|
||
4044:0505 ,50 push ax ; PARAMETER_2
|
||
4044:0506 B8 FF00 mov ax,0FF00h
|
||
4044:0509 50 push ax ; PARAMETER_1
|
||
4044:050A E8 FB89 call sub_1 ; (0096)
|
||
4044:050D B0 00 mov al,0
|
||
4044:050F B4 00 mov ah,0
|
||
4044:0511 ,50 push ax ; PARAMETER_2
|
||
4044:0512 50 push ax ; PARAMETER_1
|
||
4044:0513 E8 FB80 call sub_1 ; (0096)
|
||
4044:0516 5D pop bp
|
||
4044:0517 C3 retn
|
||
sub_3 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0587, 0598, 05B4, 0C43
|
||
;==========================================================================
|
||
|
||
4044:0518 sub_4 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:0518 55 push bp
|
||
4044:0519 8B EC mov bp,sp
|
||
4044:051B ,FF 36 0952 push word ptr ds:[952h] ; PARAMETER_2 (4044:0952=0D8D0h)
|
||
4044:051F 8A 46 04 mov al,[bp+PARAMETER_1]
|
||
4044:0522 B4 00 mov ah,0
|
||
4044:0524 50 push ax ; PARAMETER_1
|
||
4044:0525 E8 FB6E call sub_1 ; (0096)
|
||
4044:0528 5D pop bp
|
||
4044:0529 C2 0002 retn 2
|
||
sub_4 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:033B, 0557, 055D, 0700, 087D, 0884, 0E44
|
||
; 0EDB
|
||
;==========================================================================
|
||
|
||
4044:052C sub_5 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:052C 55 push bp
|
||
4044:052D 8B EC mov bp,sp
|
||
4044:052F ,FF 36 0953 push word ptr ds:[953h] ; PARAMETER_2 (4044:0953=72D8h)
|
||
4044:0533 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:0536 E8 FB5D call sub_1 ; (0096)
|
||
4044:0539 5D pop bp
|
||
4044:053A C2 0002 retn 2
|
||
sub_5 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0334, 0550, 0876
|
||
;==========================================================================
|
||
|
||
4044:053D sub_6 proc near
|
||
4044:053D ,55 push bp
|
||
4044:053E 8B EC mov bp,sp
|
||
4044:0540 ,FF 36 0953 push word ptr ds:[953h] ; PARAMETER_2 (4044:0953=72D8h)
|
||
4044:0544 B8 0968 mov ax,968h
|
||
4044:0547 50 push ax ; PARAMETER_1
|
||
4044:0548 E8 FB4B call sub_1 ; (0096)
|
||
4044:054B 5D pop bp
|
||
4044:054C C3 retn
|
||
sub_6 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:05CB, 0CF9, 0E3D, 0ED4
|
||
;==========================================================================
|
||
|
||
4044:054D sub_7 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:054D 55 push bp
|
||
4044:054E 8B EC mov bp,sp
|
||
4044:0550 E8 FFEA call sub_6 ; (053D)
|
||
4044:0553 B8 0844 mov ax,844h
|
||
4044:0556 ,50 push ax ; PARAMETER_1
|
||
4044:0557 E8 FFD2 call sub_5 ; (052C)
|
||
4044:055A ,FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:055D E8 FFCC call sub_5 ; (052C)
|
||
4044:0560 5D pop bp
|
||
4044:0561 C2 0002 retn 2
|
||
sub_7 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0342, 05D1
|
||
;==========================================================================
|
||
|
||
4044:0564 sub_8 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:0564 55 push bp
|
||
4044:0565 8B EC mov bp,sp
|
||
4044:0567 8B 46 04 mov ax,[bp+PARAMETER_1]
|
||
4044:056A 40 inc ax
|
||
4044:056B A3 01CE mov word ptr ds:[1CEh],ax ; (4044:01CE=3E80h)
|
||
4044:056E C6 06 04F4 01 mov byte ptr ds:[4F4h],1 ; (4044:04F4=36h)
|
||
4044:0573 loc_38: ; xref 4044:0592
|
||
4044:0573 80 3E 04F4 08 cmp byte ptr ds:[4F4h],8 ; (4044:04F4=36h)
|
||
4044:0578 77 1A ja loc_40 ; Jump if above
|
||
4044:057A 8B 1E 01CE mov bx,word ptr ds:[1CEh] ; (4044:01CE=3E80h)
|
||
4044:057E 8A 07 mov al,[bx]
|
||
4044:0580 3A 06 096C cmp al,byte ptr ds:[96Ch] ; (4044:096C=4)
|
||
4044:0584 74 04 je loc_39 ; Jump if equal
|
||
4044:0586 ,50 push ax ; PARAMETER_1
|
||
4044:0587 E8 FF8E call sub_4 ; (0518)
|
||
4044:058A loc_39: ; xref 4044:0584
|
||
4044:058A FF 06 01CE inc word ptr ds:[1CEh] ; (4044:01CE=3E80h)
|
||
4044:058E FE 06 04F4 inc byte ptr ds:[4F4h] ; (4044:04F4=36h)
|
||
4044:0592 75 DF jnz loc_38 ; Jump if not zero
|
||
4044:0594 loc_40: ; xref 4044:0578
|
||
4044:0594 ,FF 36 096C push word ptr ds:[96Ch] ; PARAMETER_1 (4044:096C=0E804h)
|
||
4044:0598 E8 FF7D call sub_4 ; (0518)
|
||
4044:059B C6 06 04F4 09 mov byte ptr ds:[4F4h],9 ; (4044:04F4=36h)
|
||
4044:05A0 loc_41: ; xref 4044:05BF
|
||
4044:05A0 80 3E 04F4 0B cmp byte ptr ds:[4F4h],0Bh ; (4044:04F4=36h)
|
||
4044:05A5 77 1A ja loc_43 ; Jump if above
|
||
4044:05A7 8B 1E 01CE mov bx,word ptr ds:[1CEh] ; (4044:01CE=3E80h)
|
||
4044:05AB 8A 07 mov al,[bx]
|
||
4044:05AD 3A 06 096C cmp al,byte ptr ds:[96Ch] ; (4044:096C=4)
|
||
4044:05B1 74 04 je loc_42 ; Jump if equal
|
||
4044:05B3 ,50 push ax ; PARAMETER_1
|
||
4044:05B4 E8 FF61 call sub_4 ; (0518)
|
||
4044:05B7 loc_42: ; xref 4044:05B1
|
||
4044:05B7 FF 06 01CE inc word ptr ds:[1CEh] ; (4044:01CE=3E80h)
|
||
4044:05BB FE 06 04F4 inc byte ptr ds:[4F4h] ; (4044:04F4=36h)
|
||
4044:05BF 75 DF jnz loc_41 ; Jump if not zero
|
||
4044:05C1 loc_43: ; xref 4044:05A5
|
||
4044:05C1 5D pop bp
|
||
4044:05C2 C2 0002 retn 2
|
||
sub_8 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:01DD, 0305, 0386, 04E8, 05E2, 07AF, 07E6
|
||
; 0823, 084C, 08CE, 08F3, 0CB0, 0D75
|
||
;==========================================================================
|
||
|
||
4044:05C5 sub_9 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:05C5 55 push bp
|
||
4044:05C6 8B EC mov bp,sp
|
||
4044:05C8 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:05CB E8 FF7F call sub_7 ; (054D)
|
||
4044:05CE ,FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:05D1 E8 FF90 call sub_8 ; (0564)
|
||
4044:05D4 5D pop bp
|
||
4044:05D5 C2 0004 retn 4
|
||
sub_9 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:03BE
|
||
;==========================================================================
|
||
|
||
4044:05D8 sub_10 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:05D8 55 push bp
|
||
4044:05D9 8B EC mov bp,sp
|
||
4044:05DB B8 066C mov ax,66Ch
|
||
4044:05DE ,50 push ax ; PARAMETER_2
|
||
4044:05DF FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:05E2 E8 FFE0 call sub_9 ; (05C5)
|
||
4044:05E5 E8 FF18 call sub_3 ; (0500)
|
||
4044:05E8 5D pop bp
|
||
4044:05E9 C2 0002 retn 2
|
||
sub_10 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:03AB
|
||
;==========================================================================
|
||
|
||
4044:05EC sub_11 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:05EC 55 push bp
|
||
4044:05ED 8B EC mov bp,sp
|
||
4044:05EF ,FF 36 095B push word ptr ds:[95Bh] ; PARAMETER_2 (4044:095B=0B704h)
|
||
4044:05F3 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:05F6 E8 FA9D call sub_1 ; (0096)
|
||
4044:05F9 A3 0114 mov word ptr data_38+1,ax ; (4044:0114=0)
|
||
4044:05FC A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:05FF 3C FF cmp al,0FFh
|
||
4044:0601 75 04 jne loc_44 ; Jump if not equal
|
||
4044:0603 B0 00 mov al,0
|
||
4044:0605 EB 02 jmp short loc_45 ; (0609)
|
||
4044:0607 loc_44: ; xref 4044:0601
|
||
4044:0607 B0 01 mov al,1
|
||
4044:0609 loc_45: ; xref 4044:0605
|
||
4044:0609 5D pop bp
|
||
4044:060A C2 0002 retn 2
|
||
sub_11 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:04DD
|
||
;==========================================================================
|
||
|
||
4044:060D sub_12 proc near
|
||
4044:060D ,55 push bp
|
||
4044:060E 8B EC mov bp,sp
|
||
4044:0610 ,FF 36 0959 push word ptr ds:[959h] ; PARAMETER_2 (4044:0959=0FB1Eh)
|
||
4044:0614 B8 0000 mov ax,0
|
||
4044:0617 50 push ax ; PARAMETER_1
|
||
4044:0618 E8 FA7B call sub_1 ; (0096)
|
||
4044:061B A3 0114 mov word ptr data_38+1,ax ; (4044:0114=0)
|
||
4044:061E 5D pop bp
|
||
4044:061F C3 retn
|
||
sub_12 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0377
|
||
;==========================================================================
|
||
|
||
4044:0620 sub_13 proc near
|
||
4044:0620 ,55 push bp
|
||
4044:0621 8B EC mov bp,sp
|
||
4044:0623 ,FF 36 095D push word ptr ds:[95Dh] ; PARAMETER_2 (4044:095D=8A00h)
|
||
4044:0627 FF 36 0118 push word ptr data_42+1 ; PARAMETER_1 (4044:0118=0)
|
||
4044:062B E8 FA68 call sub_1 ; (0096)
|
||
4044:062E A3 0114 mov word ptr data_38+1,ax ; (4044:0114=0)
|
||
4044:0631 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0634 3C FF cmp al,0FFh
|
||
4044:0636 75 04 jne loc_46 ; Jump if not equal
|
||
4044:0638 B0 00 mov al,0
|
||
4044:063A 5D pop bp
|
||
4044:063B C3 retn
|
||
4044:063C loc_46: ; xref 4044:0636
|
||
4044:063C B0 01 mov al,1
|
||
4044:063E 5D pop bp
|
||
4044:063F C3 retn
|
||
sub_13 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0894, 08B5
|
||
;==========================================================================
|
||
|
||
4044:0640 sub_14 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:0640 55 push bp
|
||
4044:0641 8B EC mov bp,sp
|
||
4044:0643 ,FF 36 0957 push word ptr ds:[957h] ; PARAMETER_2 (4044:0957=8ADAh)
|
||
4044:0647 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:064A E8 FA49 call sub_1 ; (0096)
|
||
4044:064D A3 0114 mov word ptr data_38+1,ax ; (4044:0114=0)
|
||
4044:0650 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0653 3C FF cmp al,0FFh
|
||
4044:0655 75 04 jne loc_47 ; Jump if not equal
|
||
4044:0657 B0 00 mov al,0
|
||
4044:0659 EB 02 jmp short loc_48 ; (065D)
|
||
4044:065B loc_47: ; xref 4044:0655
|
||
4044:065B B0 01 mov al,1
|
||
4044:065D loc_48: ; xref 4044:0659
|
||
4044:065D 5D pop bp
|
||
4044:065E C2 0002 retn 2
|
||
sub_14 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0278, 08DD
|
||
;==========================================================================
|
||
|
||
4044:0661 sub_15 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:0661 55 push bp
|
||
4044:0662 8B EC mov bp,sp
|
||
4044:0664 ,FF 36 0956 push word ptr ds:[956h] ; PARAMETER_2 (4044:0956=0DAEBh)
|
||
4044:0668 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:066B E8 FA28 call sub_1 ; (0096)
|
||
4044:066E A3 0114 mov word ptr data_38+1,ax ; (4044:0114=0)
|
||
4044:0671 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0674 3C FF cmp al,0FFh
|
||
4044:0676 75 04 jne loc_49 ; Jump if not equal
|
||
4044:0678 B0 00 mov al,0
|
||
4044:067A EB 02 jmp short loc_50 ; (067E)
|
||
4044:067C loc_49: ; xref 4044:0676
|
||
4044:067C B0 01 mov al,1
|
||
4044:067E loc_50: ; xref 4044:067A
|
||
4044:067E 5D pop bp
|
||
4044:067F C2 0002 retn 2
|
||
sub_15 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:02A0, 02E1, 080A, 096D
|
||
;==========================================================================
|
||
|
||
4044:0682 sub_16 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:0682 55 push bp
|
||
4044:0683 8B EC mov bp,sp
|
||
4044:0685 ,FF 36 0958 push word ptr ds:[958h] ; PARAMETER_2 (4044:0958=1E8Ah)
|
||
4044:0689 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:068C E8 FA07 call sub_1 ; (0096)
|
||
4044:068F ,FF 36 0955 push word ptr ds:[955h] ; PARAMETER_2 (4044:0955=0EB2Bh)
|
||
4044:0693 FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:0696 E8 F9FD call sub_1 ; (0096)
|
||
4044:0699 A3 0114 mov word ptr data_38+1,ax ; (4044:0114=0)
|
||
4044:069C A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:069F 3C FF cmp al,0FFh
|
||
4044:06A1 75 04 jne loc_51 ; Jump if not equal
|
||
4044:06A3 B0 00 mov al,0
|
||
4044:06A5 EB 02 jmp short loc_52 ; (06A9)
|
||
4044:06A7 loc_51: ; xref 4044:06A1
|
||
4044:06A7 B0 01 mov al,1
|
||
4044:06A9 loc_52: ; xref 4044:06A5
|
||
4044:06A9 5D pop bp
|
||
4044:06AA C2 0004 retn 4
|
||
sub_16 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0887
|
||
;==========================================================================
|
||
|
||
4044:06AD sub_17 proc near
|
||
4044:06AD ,55 push bp
|
||
4044:06AE 8B EC mov bp,sp
|
||
4044:06B0 ,FF 36 0954 push word ptr ds:[954h] ; PARAMETER_2 (4044:0954=2B72h)
|
||
4044:06B4 B8 0140 mov ax,140h
|
||
4044:06B7 50 push ax ; PARAMETER_1
|
||
4044:06B8 E8 F9DB call sub_1 ; (0096)
|
||
4044:06BB 80 3E 0141 00 cmp byte ptr data_54,0 ; (4044:0141=0)
|
||
4044:06C0 74 2B je loc_54 ; Jump if equal
|
||
4044:06C2 C6 06 01E4 01 mov byte ptr ds:[1E4h],1 ; (4044:01E4=3Eh)
|
||
4044:06C7 loc_53: ; xref 4044:06F5
|
||
4044:06C7 A0 01E4 mov al,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:06CA 3A 06 0141 cmp al,byte ptr data_54 ; (4044:0141=0)
|
||
4044:06CE 77 27 ja loc_56 ; Jump if above
|
||
4044:06D0 FE C8 dec al
|
||
4044:06D2 A2 01E5 mov byte ptr ds:[1E5h],al ; (4044:01E5=14h)
|
||
4044:06D5 B4 00 mov ah,0
|
||
4044:06D7 89 C3 ;* mov bx,ax
|
||
4044:06D7 db 89h,0C3h ; Fixup - byte match
|
||
4044:06D9 8A 8F 0142 mov cl,byte ptr data_54+1[bx] ; (4044:0142=0)
|
||
4044:06DD 88 0E 04F6 mov byte ptr ds:[4F6h],cl ; (4044:04F6=9)
|
||
4044:06E1 3A 8F 0842 cmp cl,byte ptr ds:[842h][bx] ; (4044:0842=0)
|
||
4044:06E5 74 0A je loc_55 ; Jump if equal
|
||
4044:06E7 3A 8F 0840 cmp cl,byte ptr ds:[840h][bx] ; (4044:0840=0E0h)
|
||
4044:06EB 74 04 je loc_55 ; Jump if equal
|
||
4044:06ED loc_54: ; xref 4044:06C0
|
||
4044:06ED B0 00 mov al,0
|
||
4044:06EF 5D pop bp
|
||
4044:06F0 C3 retn
|
||
4044:06F1 loc_55: ; xref 4044:06E5, 06EB
|
||
4044:06F1 FE 06 01E4 inc byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:06F5 75 D0 jnz loc_53 ; Jump if not zero
|
||
4044:06F7 loc_56: ; xref 4044:06CE
|
||
4044:06F7 5D pop bp
|
||
4044:06F8 C3 retn
|
||
sub_17 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0801, 08AF
|
||
;==========================================================================
|
||
|
||
4044:06F9 sub_18 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:06F9 55 push bp
|
||
4044:06FA 8B EC mov bp,sp
|
||
4044:06FC B8 082A mov ax,82Ah
|
||
4044:06FF ,50 push ax ; PARAMETER_1
|
||
4044:0700 E8 FE29 call sub_5 ; (052C)
|
||
4044:0703 ,FF 36 0954 push word ptr ds:[954h] ; PARAMETER_2 (4044:0954=2B72h)
|
||
4044:0707 B8 0140 mov ax,140h
|
||
4044:070A 50 push ax ; PARAMETER_1
|
||
4044:070B E8 F988 call sub_1 ; (0096)
|
||
4044:070E B9 0008 mov cx,8
|
||
4044:0711 ,BE 0977 mov si,977h ; (4044:0977=0FFh)
|
||
4044:0714 8B 7E 04 mov di,[bp+PARAMETER_1]
|
||
4044:0717 1E push ds
|
||
4044:0718 07 pop es
|
||
4044:0719 FC cld ; Clear direction
|
||
4044:071A F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:071C A0 0141 mov al,byte ptr data_54 ; (4044:0141=0)
|
||
4044:071F A2 01DE mov byte ptr ds:[1DEh],al ; (4044:01DE=0E5h)
|
||
4044:0722 C6 06 04F7 01 mov byte ptr ds:[4F7h],1 ; (4044:04F7=0FFh)
|
||
4044:0727 loc_57: ; xref 4044:0753
|
||
4044:0727 A0 04F7 mov al,byte ptr ds:[4F7h] ; (4044:04F7=0FFh)
|
||
4044:072A 3A 06 01DE cmp al,byte ptr ds:[1DEh] ; (4044:01DE=0E5h)
|
||
4044:072E 77 25 ja loc_59 ; Jump if above
|
||
4044:0730 FE C8 dec al
|
||
4044:0732 B4 00 mov ah,0
|
||
4044:0734 89 C3 ;* mov bx,ax
|
||
4044:0734 db 89h,0C3h ; Fixup - byte match
|
||
4044:0736 8A 8F 0142 mov cl,byte ptr data_54+1[bx] ; (4044:0142=0)
|
||
4044:073A 88 0E 04F8 mov byte ptr ds:[4F8h],cl ; (4044:04F8=36h)
|
||
4044:073E 80 F9 61 cmp cl,61h ; 'a'
|
||
4044:0741 72 0C jb loc_58 ; Jump if below
|
||
4044:0743 80 F9 7A cmp cl,7Ah ; 'z'
|
||
4044:0746 77 07 ja loc_58 ; Jump if above
|
||
4044:0748 80 E9 20 sub cl,20h ; ' '
|
||
4044:074B 88 8F 0142 mov byte ptr data_54+1[bx],cl ; (4044:0142=0)
|
||
4044:074F loc_58: ; xref 4044:0741, 0746
|
||
4044:074F FE 06 04F7 inc byte ptr ds:[4F7h] ; (4044:04F7=0FFh)
|
||
4044:0753 75 D2 jnz loc_57 ; Jump if not zero
|
||
4044:0755 loc_59: ; xref 4044:072E
|
||
4044:0755 8A 0E 0141 mov cl,byte ptr data_54 ; (4044:0141=0)
|
||
4044:0759 B5 00 mov ch,0
|
||
4044:075B ,BE 0142 mov si,offset data_54+1 ; (4044:0142=0)
|
||
4044:075E 8B 7E 04 mov di,[bp+PARAMETER_1]
|
||
4044:0761 1E push ds
|
||
4044:0762 07 pop es
|
||
4044:0763 FC cld ; Clear direction
|
||
4044:0764 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0766 5D pop bp
|
||
4044:0767 C2 0002 retn 2
|
||
sub_18 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0283, 082C, 0855, 089E, 08D7, 08E7
|
||
;==========================================================================
|
||
|
||
4044:076A sub_19 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:076A 55 push bp
|
||
4044:076B 8B EC mov bp,sp
|
||
4044:076D A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0770 88 E0 ;* mov al,ah
|
||
4044:0770 db 88h,0E0h ; Fixup - byte match
|
||
4044:0772 3A 06 0963 cmp al,byte ptr ds:[963h] ; (4044:0963=5Eh)
|
||
4044:0776 75 05 jne loc_60 ; Jump if not equal
|
||
4044:0778 B8 0806 mov ax,806h
|
||
4044:077B EB 2E jmp short loc_63 ; (07AB)
|
||
4044:077D loc_60: ; xref 4044:0776
|
||
4044:077D A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0780 88 E0 ;* mov al,ah
|
||
4044:0780 db 88h,0E0h ; Fixup - byte match
|
||
4044:0782 3A 06 0961 cmp al,byte ptr ds:[961h] ; (4044:0961=1)
|
||
4044:0786 75 05 jne loc_61 ; Jump if not equal
|
||
4044:0788 B8 06F8 mov ax,6F8h
|
||
4044:078B EB 55 jmp short loc_67 ; (07E2)
|
||
4044:078D loc_61: ; xref 4044:0786
|
||
4044:078D A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0790 88 E0 ;* mov al,ah
|
||
4044:0790 db 88h,0E0h ; Fixup - byte match
|
||
4044:0792 3A 06 0960 cmp al,byte ptr ds:[960h] ; (4044:0960=0CAh)
|
||
4044:0796 75 05 jne loc_62 ; Jump if not equal
|
||
4044:0798 B8 06DA mov ax,6DAh
|
||
4044:079B EB 45 jmp short loc_67 ; (07E2)
|
||
4044:079D loc_62: ; xref 4044:0796
|
||
4044:079D A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:07A0 88 E0 ;* mov al,ah
|
||
4044:07A0 db 88h,0E0h ; Fixup - byte match
|
||
4044:07A2 3A 06 0964 cmp al,byte ptr ds:[964h] ; (4044:0964=6)
|
||
4044:07A6 75 0C jne loc_64 ; Jump if not equal
|
||
4044:07A8 B8 05AA mov ax,5AAh
|
||
4044:07AB loc_63: ; xref 4044:077B
|
||
4044:07AB ,50 push ax ; PARAMETER_2
|
||
4044:07AC FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:07AF E8 FE13 call sub_9 ; (05C5)
|
||
4044:07B2 EB 38 jmp short loc_68 ; (07EC)
|
||
4044:07B4 loc_64: ; xref 4044:07A6
|
||
4044:07B4 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:07B7 88 E0 ;* mov al,ah
|
||
4044:07B7 db 88h,0E0h ; Fixup - byte match
|
||
4044:07B9 3A 06 095F cmp al,byte ptr ds:[95Fh] ; (4044:095F=87h)
|
||
4044:07BD 75 05 jne loc_65 ; Jump if not equal
|
||
4044:07BF B8 0588 mov ax,588h
|
||
4044:07C2 EB 1E jmp short loc_67 ; (07E2)
|
||
4044:07C4 loc_65: ; xref 4044:07BD
|
||
4044:07C4 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:07C7 88 E0 ;* mov al,ah
|
||
4044:07C7 db 88h,0E0h ; Fixup - byte match
|
||
4044:07C9 3A 06 0962 cmp al,byte ptr ds:[962h] ; (4044:0962=8Bh)
|
||
4044:07CD 75 05 jne loc_66 ; Jump if not equal
|
||
4044:07CF B8 0652 mov ax,652h
|
||
4044:07D2 EB 0E jmp short loc_67 ; (07E2)
|
||
4044:07D4 loc_66: ; xref 4044:07CD
|
||
4044:07D4 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:07D7 88 E0 ;* mov al,ah
|
||
4044:07D7 db 88h,0E0h ; Fixup - byte match
|
||
4044:07D9 3A 06 0965 cmp al,byte ptr ds:[965h] ; (4044:0965=88h)
|
||
4044:07DD 75 0D jne loc_68 ; Jump if not equal
|
||
4044:07DF B8 07A4 mov ax,7A4h
|
||
4044:07E2 loc_67: ; xref 4044:078B, 079B, 07C2, 07D2
|
||
4044:07E2 ,50 push ax ; PARAMETER_2
|
||
4044:07E3 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:07E6 E8 FDDC call sub_9 ; (05C5)
|
||
4044:07E9 E8 FD14 call sub_3 ; (0500)
|
||
4044:07EC loc_68: ; xref 4044:07B2, 07DD
|
||
4044:07EC 5D pop bp
|
||
4044:07ED C2 0002 retn 2
|
||
sub_19 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:085E, 097A
|
||
;==========================================================================
|
||
|
||
4044:07F0 sub_20 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:07F0 55 push bp
|
||
4044:07F1 8B EC mov bp,sp
|
||
4044:07F3 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:07F6 88 E0 ;* mov al,ah
|
||
4044:07F6 db 88h,0E0h ; Fixup - byte match
|
||
4044:07F8 3A 06 0963 cmp al,byte ptr ds:[963h] ; (4044:0963=5Eh)
|
||
4044:07FC 75 35 jne loc_71 ; Jump if not equal
|
||
4044:07FE ,FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:0801 E8 FEF5 call sub_18 ; (06F9)
|
||
4044:0804 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_2
|
||
4044:0807 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:080A E8 FE75 call sub_16 ; (0682)
|
||
4044:080D 3C 00 cmp al,0
|
||
4044:080F 75 1E jne loc_70 ; Jump if not equal
|
||
4044:0811 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:0814 88 E0 ;* mov al,ah
|
||
4044:0814 db 88h,0E0h ; Fixup - byte match
|
||
4044:0816 3A 06 0963 cmp al,byte ptr ds:[963h] ; (4044:0963=5Eh)
|
||
4044:081A 75 0D jne loc_69 ; Jump if not equal
|
||
4044:081C B8 05DC mov ax,5DCh
|
||
4044:081F ,50 push ax ; PARAMETER_2
|
||
4044:0820 FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:0823 E8 FD9F call sub_9 ; (05C5)
|
||
4044:0826 E8 FCD7 call sub_3 ; (0500)
|
||
4044:0829 loc_69: ; xref 4044:081A
|
||
4044:0829 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:082C E8 FF3B call sub_19 ; (076A)
|
||
4044:082F loc_70: ; xref 4044:080F
|
||
4044:082F B0 01 mov al,1
|
||
4044:0831 EB 02 jmp short loc_72 ; (0835)
|
||
4044:0833 loc_71: ; xref 4044:07FC
|
||
4044:0833 B0 00 mov al,0
|
||
4044:0835 loc_72: ; xref 4044:0831
|
||
4044:0835 5D pop bp
|
||
4044:0836 C2 0004 retn 4
|
||
sub_20 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0235, 02AF, 031A
|
||
;==========================================================================
|
||
|
||
4044:0839 sub_21 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:0839 55 push bp
|
||
4044:083A 8B EC mov bp,sp
|
||
4044:083C A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:083F 88 E0 ;* mov al,ah
|
||
4044:083F db 88h,0E0h ; Fixup - byte match
|
||
4044:0841 3C 00 cmp al,0
|
||
4044:0843 75 0D jne loc_73 ; Jump if not equal
|
||
4044:0845 B8 05C4 mov ax,5C4h
|
||
4044:0848 ,50 push ax ; PARAMETER_2
|
||
4044:0849 FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:084C E8 FD76 call sub_9 ; (05C5)
|
||
4044:084F E8 FCAE call sub_3 ; (0500)
|
||
4044:0852 loc_73: ; xref 4044:0843
|
||
4044:0852 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:0855 E8 FF12 call sub_19 ; (076A)
|
||
4044:0858 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_2
|
||
4044:085B FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:085E E8 FF8F call sub_20 ; (07F0)
|
||
4044:0861 A2 04F9 mov byte ptr ds:[4F9h],al ; (4044:04F9=18h)
|
||
4044:0864 5D pop bp
|
||
4044:0865 C2 0004 retn 4
|
||
sub_21 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:028E
|
||
;==========================================================================
|
||
|
||
4044:0868 sub_22 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:0868 55 push bp
|
||
4044:0869 8B EC mov bp,sp
|
||
4044:086B A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:086E 88 E0 ;* mov al,ah
|
||
4044:086E db 88h,0E0h ; Fixup - byte match
|
||
4044:0870 3A 06 0964 cmp al,byte ptr ds:[964h] ; (4044:0964=6)
|
||
4044:0874 75 76 jne loc_77 ; Jump if not equal
|
||
4044:0876 E8 FCC4 call sub_6 ; (053D)
|
||
4044:0879 B8 0858 mov ax,858h
|
||
4044:087C ,50 push ax ; PARAMETER_1
|
||
4044:087D E8 FCAC call sub_5 ; (052C)
|
||
4044:0880 B8 084E mov ax,84Eh
|
||
4044:0883 ,50 push ax ; PARAMETER_1
|
||
4044:0884 E8 FCA5 call sub_5 ; (052C)
|
||
4044:0887 E8 FE23 call sub_17 ; (06AD)
|
||
4044:088A 3C 00 cmp al,0
|
||
4044:088C 75 03 jne loc_74 ; Jump if not equal
|
||
4044:088E E8 FC5F call sub_2 ; (04F0)
|
||
4044:0891 loc_74: ; xref 4044:088C
|
||
4044:0891 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:0894 E8 FDA9 call sub_14 ; (0640)
|
||
4044:0897 3C 00 cmp al,0
|
||
4044:0899 75 3F jne loc_76 ; Jump if not equal
|
||
4044:089B ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:089E E8 FEC9 call sub_19 ; (076A)
|
||
4044:08A1 A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:08A4 88 E0 ;* mov al,ah
|
||
4044:08A4 db 88h,0E0h ; Fixup - byte match
|
||
4044:08A6 3A 06 0963 cmp al,byte ptr ds:[963h] ; (4044:0963=5Eh)
|
||
4044:08AA 75 2E jne loc_76 ; Jump if not equal
|
||
4044:08AC ,FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:08AF E8 FE47 call sub_18 ; (06F9)
|
||
4044:08B2 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:08B5 E8 FD88 call sub_14 ; (0640)
|
||
4044:08B8 3C 00 cmp al,0
|
||
4044:08BA 75 1E jne loc_76 ; Jump if not equal
|
||
4044:08BC A1 0114 mov ax,word ptr data_38+1 ; (4044:0114=0)
|
||
4044:08BF 88 E0 ;* mov al,ah
|
||
4044:08BF db 88h,0E0h ; Fixup - byte match
|
||
4044:08C1 3A 06 0963 cmp al,byte ptr ds:[963h] ; (4044:0963=5Eh)
|
||
4044:08C5 75 0D jne loc_75 ; Jump if not equal
|
||
4044:08C7 B8 05DC mov ax,5DCh
|
||
4044:08CA ,50 push ax ; PARAMETER_2
|
||
4044:08CB FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:08CE E8 FCF4 call sub_9 ; (05C5)
|
||
4044:08D1 E8 FC2C call sub_3 ; (0500)
|
||
4044:08D4 loc_75: ; xref 4044:08C5
|
||
4044:08D4 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:08D7 E8 FE90 call sub_19 ; (076A)
|
||
4044:08DA loc_76: ; xref 4044:0899, 08AA, 08BA
|
||
4044:08DA ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:08DD E8 FD81 call sub_15 ; (0661)
|
||
4044:08E0 3C 00 cmp al,0
|
||
4044:08E2 75 15 jne loc_78 ; Jump if not equal
|
||
4044:08E4 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:08E7 E8 FE80 call sub_19 ; (076A)
|
||
4044:08EA EB 0D jmp short loc_78 ; (08F9)
|
||
4044:08EC loc_77: ; xref 4044:0874
|
||
4044:08EC B8 056C mov ax,56Ch
|
||
4044:08EF ,50 push ax ; PARAMETER_2
|
||
4044:08F0 FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:08F3 E8 FCCF call sub_9 ; (05C5)
|
||
4044:08F6 E8 FC07 call sub_3 ; (0500)
|
||
4044:08F9 loc_78: ; xref 4044:08E2, 08EA
|
||
4044:08F9 5D pop bp
|
||
4044:08FA C2 0004 retn 4
|
||
sub_22 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0226
|
||
;==========================================================================
|
||
|
||
4044:08FD sub_23 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:08FD 55 push bp
|
||
4044:08FE 8B EC mov bp,sp
|
||
4044:0900 C6 06 04FA 00 mov byte ptr ds:[4FAh],0 ; (4044:04FA=1)
|
||
4044:0905 C6 06 04FB 00 mov byte ptr ds:[4FBh],0 ; (4044:04FB=0E8h)
|
||
4044:090A loc_79: ; xref 4044:0985
|
||
4044:090A 80 3E 04FB 03 cmp byte ptr ds:[4FBh],3 ; (4044:04FB=0E8h)
|
||
4044:090F 77 76 ja loc_85 ; Jump if above
|
||
4044:0911 8A 1E 04FB mov bl,byte ptr ds:[4FBh] ; (4044:04FB=0E8h)
|
||
4044:0915 B7 00 mov bh,0
|
||
4044:0917 80 BF 01CA FF cmp byte ptr ds:[1CAh][bx],0FFh ; (4044:01CA=0FEh)
|
||
4044:091C 74 69 je loc_85 ; Jump if equal
|
||
4044:091E 8A 1E 04FB mov bl,byte ptr ds:[4FBh] ; (4044:04FB=0E8h)
|
||
4044:0922 B7 00 mov bh,0
|
||
4044:0924 80 BF 01CA 00 cmp byte ptr ds:[1CAh][bx],0 ; (4044:01CA=0FEh)
|
||
4044:0929 75 13 jne loc_81 ; Jump if not equal
|
||
4044:092B 80 3E 04FA 01 cmp byte ptr ds:[4FAh],1 ; (4044:04FA=1)
|
||
4044:0930 74 4F je loc_84 ; Jump if equal
|
||
4044:0932 loc_80: ; xref 4044:0956
|
||
4044:0932 ,C6 06 04FA 01 mov byte ptr ds:[4FAh],1 ; (4044:04FA=1)
|
||
4044:0937 A1 0116 mov ax,word ptr data_40+1 ; (4044:0116=0)
|
||
4044:093A FE C0 inc al
|
||
4044:093C EB 24 jmp short loc_83 ; (0962)
|
||
4044:093E loc_81: ; xref 4044:0929
|
||
4044:093E A1 0116 mov ax,word ptr data_40+1 ; (4044:0116=0)
|
||
4044:0941 FE C0 inc al
|
||
4044:0943 8A 1E 04FB mov bl,byte ptr ds:[4FBh] ; (4044:04FB=0E8h)
|
||
4044:0947 B7 00 mov bh,0
|
||
4044:0949 38 87 01CA cmp byte ptr ds:[1CAh][bx],al ; (4044:01CA=0FEh)
|
||
4044:094D 75 09 jne loc_82 ; Jump if not equal
|
||
4044:094F A0 04FA mov al,byte ptr ds:[4FAh] ; (4044:04FA=1)
|
||
4044:0952 D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0954 72 2B jc loc_84 ; Jump if carry Set
|
||
4044:0956 EB DA jmp short loc_80 ; (0932)
|
||
4044:0958 loc_82: ; xref 4044:094D
|
||
4044:0958 8A 1E 04FB mov bl,byte ptr ds:[4FBh] ; (4044:04FB=0E8h)
|
||
4044:095C B7 00 mov bh,0
|
||
4044:095E 8A 87 01CA mov al,byte ptr ds:[1CAh][bx] ; (4044:01CA=0FEh)
|
||
4044:0962 loc_83: ; xref 4044:093C
|
||
4044:0962 8B 5E 06 mov bx,[bp+PARAMETER_2]
|
||
4044:0965 88 07 mov [bx],al
|
||
4044:0967 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_2
|
||
4044:096A FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:096D E8 FD12 call sub_16 ; (0682)
|
||
4044:0970 3C 00 cmp al,0
|
||
4044:0972 75 17 jne loc_86 ; Jump if not equal
|
||
4044:0974 ,FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_2
|
||
4044:0977 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:097A E8 FE73 call sub_20 ; (07F0)
|
||
4044:097D 3C 01 cmp al,1
|
||
4044:097F 74 0A je loc_86 ; Jump if equal
|
||
4044:0981 loc_84: ; xref 4044:0930, 0954
|
||
4044:0981 FE 06 04FB inc byte ptr ds:[4FBh] ; (4044:04FB=0E8h)
|
||
4044:0985 75 83 jnz loc_79 ; Jump if not zero
|
||
4044:0987 loc_85: ; xref 4044:090F, 091C
|
||
4044:0987 B0 00 mov al,0
|
||
4044:0989 EB 02 jmp short loc_87 ; (098D)
|
||
4044:098B loc_86: ; xref 4044:0972, 097F
|
||
4044:098B B0 01 mov al,1
|
||
4044:098D loc_87: ; xref 4044:0989
|
||
4044:098D 5D pop bp
|
||
4044:098E C2 0004 retn 4
|
||
sub_23 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:02BD
|
||
;==========================================================================
|
||
|
||
4044:0991 sub_24 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:0991 55 push bp
|
||
4044:0992 8B EC mov bp,sp
|
||
4044:0994 ,FF 36 095C push word ptr ds:[95Ch] ; PARAMETER_2 (4044:095C=0B7h)
|
||
4044:0998 FF 76 04 push word ptr [bp+PARAMETER_1] ; PARAMETER_1
|
||
4044:099B E8 F6F8 call sub_1 ; (0096)
|
||
4044:099E 5D pop bp
|
||
4044:099F C2 0002 retn 2
|
||
sub_24 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0A02, 0A24, 0BA7, 0C08
|
||
;==========================================================================
|
||
|
||
4044:09A2 sub_25 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
|
||
4044:09A2 55 push bp
|
||
4044:09A3 8B EC mov bp,sp
|
||
4044:09A5 C6 06 04FC 01 mov byte ptr ds:[4FCh],1 ; (4044:04FC=98h)
|
||
4044:09AA loc_88: ; xref 4044:09D7
|
||
4044:09AA ,A0 04FC mov al,byte ptr ds:[4FCh] ; (4044:04FC=98h)
|
||
4044:09AD B4 00 mov ah,0
|
||
4044:09AF 89 C6 ;* mov si,ax
|
||
4044:09AF db 89h,0C6h ; Fixup - byte match
|
||
4044:09B1 8A 84 0798 mov al,byte ptr ds:[798h][si] ; (4044:0798=0B8h)
|
||
4044:09B5 3A 06 0976 cmp al,byte ptr ds:[976h] ; (4044:0976=6)
|
||
4044:09B9 75 04 jne loc_89 ; Jump if not equal
|
||
4044:09BB B0 00 mov al,0
|
||
4044:09BD EB 10 jmp short loc_90 ; (09CF)
|
||
4044:09BF loc_89: ; xref 4044:09B9
|
||
4044:09BF A0 04FC mov al,byte ptr ds:[4FCh] ; (4044:04FC=98h)
|
||
4044:09C2 B4 00 mov ah,0
|
||
4044:09C4 89 C6 ;* mov si,ax
|
||
4044:09C4 db 89h,0C6h ; Fixup - byte match
|
||
4044:09C6 8A 8C 0798 mov cl,byte ptr ds:[798h][si] ; (4044:0798=0B8h)
|
||
4044:09CA 3A 4E 04 cmp cl,[bp+PARAMETER_1]
|
||
4044:09CD 75 04 jne loc_91 ; Jump if not equal
|
||
4044:09CF loc_90: ; xref 4044:09BD
|
||
4044:09CF 5D pop bp
|
||
4044:09D0 C2 0002 retn 2
|
||
4044:09D3 loc_91: ; xref 4044:09CD
|
||
4044:09D3 FE 06 04FC inc byte ptr ds:[4FCh] ; (4044:04FC=98h)
|
||
4044:09D7 EB D1 jmp short loc_88 ; (09AA)
|
||
sub_25 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0E2F, 0E87, 0EB9
|
||
;==========================================================================
|
||
|
||
4044:09D9 sub_26 proc near
|
||
4044:09D9 59 pop cx
|
||
4044:09DA 8F 06 01D0 pop word ptr ds:[1D0h] ; (4044:01D0=20Ch)
|
||
4044:09DE 8F 06 01D2 pop word ptr ds:[1D2h] ; (4044:01D2=7520h)
|
||
4044:09E2 51 push cx
|
||
4044:09E3 55 push bp
|
||
4044:09E4 8B EC mov bp,sp
|
||
4044:09E6 E8 0216 call sub_31 ; (0BFF)
|
||
4044:09E9 C6 06 0503 00 mov byte ptr ds:[503h],0 ; (4044:0503=0B0h)
|
||
4044:09EE loc_92: ; xref 4044:0A1E, 0A2E
|
||
4044:09EE ,E8 0132 call sub_28 ; (0B23)
|
||
4044:09F1 80 3E 0504 00 cmp byte ptr ds:[504h],0 ; (4044:0504=6Ch)
|
||
4044:09F6 74 38 je loc_94 ; Jump if equal
|
||
4044:09F8 A0 0504 mov al,byte ptr ds:[504h] ; (4044:0504=6Ch)
|
||
4044:09FB A2 0503 mov byte ptr ds:[503h],al ; (4044:0503=0B0h)
|
||
4044:09FE ,FF 36 0500 push word ptr ds:[500h] ; PARAMETER_1 (4044:0500=8B55h)
|
||
4044:0A02 E8 FF9D call sub_25 ; (09A2)
|
||
4044:0A05 A2 04ED mov byte ptr ds:[4EDh],al ; (4044:04ED=0)
|
||
4044:0A08 C6 06 0508 01 mov byte ptr ds:[508h],1 ; (4044:0508=0FFh)
|
||
4044:0A0D loc_93: ; xref 4044:0A2A
|
||
4044:0A0D ,80 3E 04ED 00 cmp byte ptr ds:[4EDh],0 ; (4044:04ED=0)
|
||
4044:0A12 75 28 jne loc_95 ; Jump if not equal
|
||
4044:0A14 E8 0132 call sub_29 ; (0B49)
|
||
4044:0A17 A0 0508 mov al,byte ptr ds:[508h] ; (4044:0508=0FFh)
|
||
4044:0A1A F6 D0 not al
|
||
4044:0A1C D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0A1E 72 CE jc loc_92 ; Jump if carry Set
|
||
4044:0A20 ,FF 36 0500 push word ptr ds:[500h] ; PARAMETER_1 (4044:0500=8B55h)
|
||
4044:0A24 E8 FF7B call sub_25 ; (09A2)
|
||
4044:0A27 A2 04ED mov byte ptr ds:[4EDh],al ; (4044:04ED=0)
|
||
4044:0A2A EB E1 jmp short loc_93 ; (0A0D)
|
||
4044:0A2C EB 0E jmp short loc_95 ; (0A3C)
|
||
4044:0A2E EB BE jmp short loc_92 ; (09EE)
|
||
4044:0A30 loc_94: ; xref 4044:09F6
|
||
4044:0A30 A0 04FD mov al,byte ptr ds:[4FDh] ; (4044:04FD=0FBh)
|
||
4044:0A33 A2 04EC mov byte ptr ds:[4ECh],al ; (4044:04EC=12h)
|
||
4044:0A36 E8 015A call sub_30 ; (0B93)
|
||
4044:0A39 E9 009A jmp loc_101 ; (0AD6)
|
||
4044:0A3C loc_95: ; xref 4044:0A12, 0A2C
|
||
4044:0A3C A0 04FD mov al,byte ptr ds:[4FDh] ; (4044:04FD=0FBh)
|
||
4044:0A3F A2 04EC mov byte ptr ds:[4ECh],al ; (4044:04EC=12h)
|
||
4044:0A42 A2 0507 mov byte ptr ds:[507h],al ; (4044:0507=0)
|
||
4044:0A45 A0 0504 mov al,byte ptr ds:[504h] ; (4044:0504=6Ch)
|
||
4044:0A48 A2 0505 mov byte ptr ds:[505h],al ; (4044:0505=50h)
|
||
4044:0A4B C6 06 0508 00 mov byte ptr ds:[508h],0 ; (4044:0508=0FFh)
|
||
4044:0A50 loc_96: ; xref 4044:0A7A, 0A99, 0AA3
|
||
4044:0A50 ,A0 0504 mov al,byte ptr ds:[504h] ; (4044:0504=6Ch)
|
||
4044:0A53 A2 0503 mov byte ptr ds:[503h],al ; (4044:0503=0B0h)
|
||
4044:0A56 E8 00CA call sub_28 ; (0B23)
|
||
4044:0A59 80 3E 0504 00 cmp byte ptr ds:[504h],0 ; (4044:0504=6Ch)
|
||
4044:0A5E 74 51 je loc_99 ; Jump if equal
|
||
4044:0A60 A0 0504 mov al,byte ptr ds:[504h] ; (4044:0504=6Ch)
|
||
4044:0A63 B4 00 mov ah,0
|
||
4044:0A65 89 C6 ;* mov si,ax
|
||
4044:0A65 db 89h,0C6h ; Fixup - byte match
|
||
4044:0A67 8B 1E 01D0 mov bx,word ptr ds:[1D0h] ; (4044:01D0=20Ch)
|
||
4044:0A6B 8A 48 01 mov cl,[bx+si+1]
|
||
4044:0A6E 2A 08 sub cl,[bx+si]
|
||
4044:0A70 FE C9 dec cl
|
||
4044:0A72 88 0E 0506 mov byte ptr ds:[506h],cl ; (4044:0506=0B8h)
|
||
4044:0A76 3A 0E 0507 cmp cl,byte ptr ds:[507h] ; (4044:0507=0)
|
||
4044:0A7A 75 D4 jne loc_96 ; Jump if not equal
|
||
4044:0A7C C6 06 0508 01 mov byte ptr ds:[508h],1 ; (4044:0508=0FFh)
|
||
4044:0A81 C6 06 04FE 01 mov byte ptr ds:[4FEh],1 ; (4044:04FE=5Dh)
|
||
4044:0A86 loc_97: ; xref 4044:0A9F
|
||
4044:0A86 A0 04FE mov al,byte ptr ds:[4FEh] ; (4044:04FE=5Dh)
|
||
4044:0A89 3A 06 0507 cmp al,byte ptr ds:[507h] ; (4044:0507=0)
|
||
4044:0A8D 77 16 ja loc_98 ; Jump if above
|
||
4044:0A8F E8 00B7 call sub_29 ; (0B49)
|
||
4044:0A92 A0 0508 mov al,byte ptr ds:[508h] ; (4044:0508=0FFh)
|
||
4044:0A95 F6 D0 not al
|
||
4044:0A97 D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0A99 72 B5 jc loc_96 ; Jump if carry Set
|
||
4044:0A9B FE 06 04FE inc byte ptr ds:[4FEh] ; (4044:04FE=5Dh)
|
||
4044:0A9F 75 E5 jnz loc_97 ; Jump if not zero
|
||
4044:0AA1 EB 02 jmp short loc_98 ; (0AA5)
|
||
4044:0AA3 EB AB jmp short loc_96 ; (0A50)
|
||
4044:0AA5 loc_98: ; xref 4044:0A8D, 0AA1
|
||
4044:0AA5 C6 06 0504 00 mov byte ptr ds:[504h],0 ; (4044:0504=6Ch)
|
||
4044:0AAA E8 00E6 call sub_30 ; (0B93)
|
||
4044:0AAD B0 00 mov al,0
|
||
4044:0AAF 5D pop bp
|
||
4044:0AB0 C3 retn
|
||
4044:0AB1 loc_99: ; xref 4044:0A5E
|
||
4044:0AB1 A0 0505 mov al,byte ptr ds:[505h] ; (4044:0505=50h)
|
||
4044:0AB4 A2 0504 mov byte ptr ds:[504h],al ; (4044:0504=6Ch)
|
||
4044:0AB7 A0 04EC mov al,byte ptr ds:[4ECh] ; (4044:04EC=12h)
|
||
4044:0ABA B4 00 mov ah,0
|
||
4044:0ABC 01 06 01C2 add word ptr ds:[1C2h],ax ; (4044:01C2=5019h)
|
||
4044:0AC0 E8 013C call sub_31 ; (0BFF)
|
||
4044:0AC3 80 3E 04ED 00 cmp byte ptr ds:[4EDh],0 ; (4044:04ED=0)
|
||
4044:0AC8 74 06 je loc_100 ; Jump if equal
|
||
4044:0ACA FF 06 01C2 inc word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0ACE EB 06 jmp short loc_101 ; (0AD6)
|
||
4044:0AD0 loc_100: ; xref 4044:0AC8
|
||
4044:0AD0 A0 096D mov al,byte ptr ds:[96Dh] ; (4044:096D=0E8h)
|
||
4044:0AD3 A2 04ED mov byte ptr ds:[4EDh],al ; (4044:04ED=0)
|
||
4044:0AD6 loc_101: ; xref 4044:0A39, 0ACE
|
||
4044:0AD6 A0 0504 mov al,byte ptr ds:[504h] ; (4044:0504=6Ch)
|
||
4044:0AD9 5D pop bp
|
||
4044:0ADA C3 retn
|
||
sub_26 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0B2F
|
||
;==========================================================================
|
||
|
||
4044:0ADB sub_27 proc near
|
||
4044:0ADB ,55 push bp
|
||
4044:0ADC 8B EC mov bp,sp
|
||
4044:0ADE A0 0503 mov al,byte ptr ds:[503h] ; (4044:0503=0B0h)
|
||
4044:0AE1 A2 0509 mov byte ptr ds:[509h],al ; (4044:0509=50h)
|
||
4044:0AE4 loc_102: ; xref 4044:0B1A
|
||
4044:0AE4 ,B4 00 mov ah,0
|
||
4044:0AE6 89 C6 ;* mov si,ax
|
||
4044:0AE6 db 89h,0C6h ; Fixup - byte match
|
||
4044:0AE8 8B 1E 01D0 mov bx,word ptr ds:[1D0h] ; (4044:01D0=20Ch)
|
||
4044:0AEC 8A 00 mov al,[bx+si]
|
||
4044:0AEE A2 04FF mov byte ptr ds:[4FFh],al ; (4044:04FF=0C3h)
|
||
4044:0AF1 A0 04FF mov al,byte ptr ds:[4FFh] ; (4044:04FF=0C3h)
|
||
4044:0AF4 B4 00 mov ah,0
|
||
4044:0AF6 89 C6 ;* mov si,ax
|
||
4044:0AF6 db 89h,0C6h ; Fixup - byte match
|
||
4044:0AF8 8B 1E 01D2 mov bx,word ptr ds:[1D2h] ; (4044:01D2=7520h)
|
||
4044:0AFC 8A 08 mov cl,[bx+si]
|
||
4044:0AFE 3A 0E 0976 cmp cl,byte ptr ds:[976h] ; (4044:0976=6)
|
||
4044:0B02 74 18 je loc_104 ; Jump if equal
|
||
4044:0B04 A0 0509 mov al,byte ptr ds:[509h] ; (4044:0509=50h)
|
||
4044:0B07 FE C0 inc al
|
||
4044:0B09 A2 0509 mov byte ptr ds:[509h],al ; (4044:0509=50h)
|
||
4044:0B0C A2 0504 mov byte ptr ds:[504h],al ; (4044:0504=6Ch)
|
||
4044:0B0F 3A 0E 0500 cmp cl,byte ptr ds:[500h] ; (4044:0500=55h)
|
||
4044:0B13 75 02 jne loc_103 ; Jump if not equal
|
||
4044:0B15 5D pop bp
|
||
4044:0B16 C3 retn
|
||
4044:0B17 loc_103: ; xref 4044:0B13
|
||
4044:0B17 A0 0509 mov al,byte ptr ds:[509h] ; (4044:0509=50h)
|
||
4044:0B1A EB C8 jmp short loc_102 ; (0AE4)
|
||
4044:0B1C loc_104: ; xref 4044:0B02
|
||
4044:0B1C C6 06 0504 00 mov byte ptr ds:[504h],0 ; (4044:0504=6Ch)
|
||
4044:0B21 5D pop bp
|
||
4044:0B22 C3 retn
|
||
sub_27 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:09EE, 0A56
|
||
;==========================================================================
|
||
|
||
4044:0B23 sub_28 proc near
|
||
4044:0B23 ,55 push bp
|
||
4044:0B24 8B EC mov bp,sp
|
||
4044:0B26 8B 1E 01C2 mov bx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0B2A 8A 07 mov al,[bx]
|
||
4044:0B2C A2 0500 mov byte ptr ds:[500h],al ; (4044:0500=55h)
|
||
4044:0B2F E8 FFA9 call sub_27 ; (0ADB)
|
||
4044:0B32 A0 04FF mov al,byte ptr ds:[4FFh] ; (4044:04FF=0C3h)
|
||
4044:0B35 A2 0501 mov byte ptr ds:[501h],al ; (4044:0501=8Bh)
|
||
4044:0B38 C6 06 04FD 01 mov byte ptr ds:[4FDh],1 ; (4044:04FD=0FBh)
|
||
4044:0B3D 8B 1E 01C2 mov bx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0B41 8A 47 01 mov al,[bx+1]
|
||
4044:0B44 A2 0500 mov byte ptr ds:[500h],al ; (4044:0500=55h)
|
||
4044:0B47 5D pop bp
|
||
4044:0B48 C3 retn
|
||
sub_28 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0A14, 0A8F
|
||
;==========================================================================
|
||
|
||
4044:0B49 sub_29 proc near
|
||
4044:0B49 ,55 push bp
|
||
4044:0B4A 8B EC mov bp,sp
|
||
4044:0B4C A0 0501 mov al,byte ptr ds:[501h] ; (4044:0501=8Bh)
|
||
4044:0B4F FE C0 inc al
|
||
4044:0B51 A2 0501 mov byte ptr ds:[501h],al ; (4044:0501=8Bh)
|
||
4044:0B54 B4 00 mov ah,0
|
||
4044:0B56 89 C6 ;* mov si,ax
|
||
4044:0B56 db 89h,0C6h ; Fixup - byte match
|
||
4044:0B58 8B 1E 01D2 mov bx,word ptr ds:[1D2h] ; (4044:01D2=7520h)
|
||
4044:0B5C 8A 00 mov al,[bx+si]
|
||
4044:0B5E 3A 06 0975 cmp al,byte ptr ds:[975h] ; (4044:0975=76h)
|
||
4044:0B62 74 13 je loc_105 ; Jump if equal
|
||
4044:0B64 A0 0501 mov al,byte ptr ds:[501h] ; (4044:0501=8Bh)
|
||
4044:0B67 B4 00 mov ah,0
|
||
4044:0B69 89 C6 ;* mov si,ax
|
||
4044:0B69 db 89h,0C6h ; Fixup - byte match
|
||
4044:0B6B 8B 1E 01D2 mov bx,word ptr ds:[1D2h] ; (4044:01D2=7520h)
|
||
4044:0B6F 8A 00 mov al,[bx+si]
|
||
4044:0B71 3A 06 0500 cmp al,byte ptr ds:[500h] ; (4044:0500=55h)
|
||
4044:0B75 74 05 je loc_106 ; Jump if equal
|
||
4044:0B77 loc_105: ; xref 4044:0B62
|
||
4044:0B77 C6 06 0508 00 mov byte ptr ds:[508h],0 ; (4044:0508=0FFh)
|
||
4044:0B7C loc_106: ; xref 4044:0B75
|
||
4044:0B7C A0 04FD mov al,byte ptr ds:[4FDh] ; (4044:04FD=0FBh)
|
||
4044:0B7F FE C0 inc al
|
||
4044:0B81 A2 04FD mov byte ptr ds:[4FDh],al ; (4044:04FD=0FBh)
|
||
4044:0B84 B4 00 mov ah,0
|
||
4044:0B86 89 C6 ;* mov si,ax
|
||
4044:0B86 db 89h,0C6h ; Fixup - byte match
|
||
4044:0B88 8B 1E 01C2 mov bx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0B8C 8A 00 mov al,[bx+si]
|
||
4044:0B8E A2 0500 mov byte ptr ds:[500h],al ; (4044:0500=55h)
|
||
4044:0B91 5D pop bp
|
||
4044:0B92 C3 retn
|
||
sub_29 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0A36, 0AAA
|
||
;==========================================================================
|
||
|
||
4044:0B93 sub_30 proc near
|
||
4044:0B93 ,55 push bp
|
||
4044:0B94 8B EC mov bp,sp
|
||
4044:0B96 A0 04FD mov al,byte ptr ds:[4FDh] ; (4044:04FD=0FBh)
|
||
4044:0B99 loc_107: ; xref 4044:0BEB
|
||
4044:0B99 ,B4 00 mov ah,0
|
||
4044:0B9B 89 C6 ;* mov si,ax
|
||
4044:0B9B db 89h,0C6h ; Fixup - byte match
|
||
4044:0B9D 8B 1E 01C2 mov bx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0BA1 8A 00 mov al,[bx+si]
|
||
4044:0BA3 A2 0500 mov byte ptr ds:[500h],al ; (4044:0500=55h)
|
||
4044:0BA6 ,50 push ax ; PARAMETER_1
|
||
4044:0BA7 E8 FDF8 call sub_25 ; (09A2)
|
||
4044:0BAA A2 04ED mov byte ptr ds:[4EDh],al ; (4044:04ED=0)
|
||
4044:0BAD A0 04ED mov al,byte ptr ds:[4EDh] ; (4044:04ED=0)
|
||
4044:0BB0 3C 02 cmp al,2
|
||
4044:0BB2 B0 FF mov al,0FFh
|
||
4044:0BB4 75 01 jnz loc_108 ; Jump if not zero
|
||
4044:0BB6 40 inc ax
|
||
4044:0BB7 loc_108: ; xref 4044:0BB4
|
||
4044:0BB7 8A 0E 04ED mov cl,byte ptr ds:[4EDh] ; (4044:04ED=0)
|
||
4044:0BBB 50 push ax
|
||
4044:0BBC 80 F9 04 cmp cl,4
|
||
4044:0BBF B0 FF mov al,0FFh
|
||
4044:0BC1 75 01 jnz loc_109 ; Jump if not zero
|
||
4044:0BC3 40 inc ax
|
||
4044:0BC4 loc_109: ; xref 4044:0BC1
|
||
4044:0BC4 5A pop dx
|
||
4044:0BC5 22 C2 and al,dl
|
||
4044:0BC7 50 push ax
|
||
4044:0BC8 80 F9 05 cmp cl,5
|
||
4044:0BCB B0 FF mov al,0FFh
|
||
4044:0BCD 75 01 jnz loc_110 ; Jump if not zero
|
||
4044:0BCF 40 inc ax
|
||
4044:0BD0 loc_110: ; xref 4044:0BCD
|
||
4044:0BD0 5A pop dx
|
||
4044:0BD1 22 C2 and al,dl
|
||
4044:0BD3 50 push ax
|
||
4044:0BD4 80 F9 19 cmp cl,19h
|
||
4044:0BD7 B0 FF mov al,0FFh
|
||
4044:0BD9 75 01 jnz loc_111 ; Jump if not zero
|
||
4044:0BDB 40 inc ax
|
||
4044:0BDC loc_111: ; xref 4044:0BD9
|
||
4044:0BDC 59 pop cx
|
||
4044:0BDD 22 C1 and al,cl
|
||
4044:0BDF D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0BE1 73 0A jnc loc_112 ; Jump if carry=0
|
||
4044:0BE3 A0 04FD mov al,byte ptr ds:[4FDh] ; (4044:04FD=0FBh)
|
||
4044:0BE6 FE C0 inc al
|
||
4044:0BE8 A2 04FD mov byte ptr ds:[4FDh],al ; (4044:04FD=0FBh)
|
||
4044:0BEB EB AC jmp short loc_107 ; (0B99)
|
||
4044:0BED loc_112: ; xref 4044:0BE1
|
||
4044:0BED A0 04FD mov al,byte ptr ds:[4FDh] ; (4044:04FD=0FBh)
|
||
4044:0BF0 A2 04EC mov byte ptr ds:[4ECh],al ; (4044:04EC=12h)
|
||
4044:0BF3 B4 00 mov ah,0
|
||
4044:0BF5 03 06 01C2 add ax,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0BF9 40 inc ax
|
||
4044:0BFA A3 01C2 mov word ptr ds:[1C2h],ax ; (4044:01C2=5019h)
|
||
4044:0BFD 5D pop bp
|
||
4044:0BFE C3 retn
|
||
sub_30 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:09E6, 0AC0
|
||
;==========================================================================
|
||
|
||
4044:0BFF sub_31 proc near
|
||
4044:0BFF ,55 push bp
|
||
4044:0C00 8B EC mov bp,sp
|
||
4044:0C02 loc_113: ; xref 4044:0C18
|
||
4044:0C02 ,8B 1E 01C2 mov bx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0C06 ,FF 37 push word ptr [bx] ; PARAMETER_1
|
||
4044:0C08 E8 FD97 call sub_25 ; (09A2)
|
||
4044:0C0B A2 04ED mov byte ptr ds:[4EDh],al ; (4044:04ED=0)
|
||
4044:0C0E 3A 06 096D cmp al,byte ptr ds:[96Dh] ; (4044:096D=0E8h)
|
||
4044:0C12 75 06 jne loc_114 ; Jump if not equal
|
||
4044:0C14 FF 06 01C2 inc word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0C18 EB E8 jmp short loc_113 ; (0C02)
|
||
4044:0C1A loc_114: ; xref 4044:0C12
|
||
4044:0C1A 5D pop bp
|
||
4044:0C1B C3 retn
|
||
sub_31 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0E47, 0EDE
|
||
;==========================================================================
|
||
|
||
4044:0C1C sub_32 proc near
|
||
4044:0C1C ,55 push bp
|
||
4044:0C1D 8B EC mov bp,sp
|
||
4044:0C1F 8B 0E 01C2 mov cx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0C23 A0 04EC mov al,byte ptr ds:[4ECh] ; (4044:04EC=12h)
|
||
4044:0C26 B4 00 mov ah,0
|
||
4044:0C28 2B C8 sub cx,ax
|
||
4044:0C2A 49 dec cx
|
||
4044:0C2B 89 0E 01D4 mov word ptr ds:[1D4h],cx ; (4044:01D4=0B80Eh)
|
||
4044:0C2F C6 06 050A 01 mov byte ptr ds:[50Ah],1 ; (4044:050A=0E8h)
|
||
4044:0C34 loc_115: ; xref 4044:0C4E
|
||
4044:0C34 A0 050A mov al,byte ptr ds:[50Ah] ; (4044:050A=0E8h)
|
||
4044:0C37 3A 06 04EC cmp al,byte ptr ds:[4ECh] ; (4044:04EC=12h)
|
||
4044:0C3B 77 13 ja loc_116 ; Jump if above
|
||
4044:0C3D 8B 1E 01D4 mov bx,word ptr ds:[1D4h] ; (4044:01D4=0B80Eh)
|
||
4044:0C41 ,FF 37 push word ptr [bx] ; PARAMETER_1
|
||
4044:0C43 E8 F8D2 call sub_4 ; (0518)
|
||
4044:0C46 FF 06 01D4 inc word ptr ds:[1D4h] ; (4044:01D4=0B80Eh)
|
||
4044:0C4A FE 06 050A inc byte ptr ds:[50Ah] ; (4044:050A=0E8h)
|
||
4044:0C4E 75 E4 jnz loc_115 ; Jump if not zero
|
||
4044:0C50 loc_116: ; xref 4044:0C3B
|
||
4044:0C50 5D pop bp
|
||
4044:0C51 C3 retn
|
||
sub_32 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0E65, 0E97
|
||
;==========================================================================
|
||
|
||
4044:0C52 sub_33 proc near
|
||
4044:0C52 ,55 push bp
|
||
4044:0C53 8B EC mov bp,sp
|
||
4044:0C55 loc_117: ; xref 4044:0C7F
|
||
4044:0C55 ,8A 1E 01E3 mov bl,byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0C59 B7 00 mov bh,0
|
||
4044:0C5B 8A 87 0080 mov al,data_24[bx] ; (4044:0080=9Ch)
|
||
4044:0C5F 50 push ax
|
||
4044:0C60 3A 06 0828 cmp al,byte ptr ds:[828h] ; (4044:0828=0FCh)
|
||
4044:0C64 B0 FF mov al,0FFh
|
||
4044:0C66 75 01 jnz loc_118 ; Jump if not zero
|
||
4044:0C68 40 inc ax
|
||
4044:0C69 loc_118: ; xref 4044:0C66
|
||
4044:0C69 59 pop cx
|
||
4044:0C6A 50 push ax
|
||
4044:0C6B 3A 0E 0975 cmp cl,byte ptr ds:[975h] ; (4044:0975=76h)
|
||
4044:0C6F B0 FF mov al,0FFh
|
||
4044:0C71 75 01 jnz loc_119 ; Jump if not zero
|
||
4044:0C73 40 inc ax
|
||
4044:0C74 loc_119: ; xref 4044:0C71
|
||
4044:0C74 59 pop cx
|
||
4044:0C75 22 C1 and al,cl
|
||
4044:0C77 D0 D8 rcr al,1 ; Rotate thru carry
|
||
4044:0C79 73 06 jnc loc_120 ; Jump if carry=0
|
||
4044:0C7B FE 06 01E3 inc byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0C7F EB D4 jmp short loc_117 ; (0C55)
|
||
4044:0C81 loc_120: ; xref 4044:0C79
|
||
4044:0C81 FE 06 01E3 inc byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0C85 5D pop bp
|
||
4044:0C86 C3 retn
|
||
sub_33 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0D27, 0DD9, 0DF2
|
||
;==========================================================================
|
||
|
||
4044:0C87 sub_34 proc near
|
||
|
||
PARAMETER_1 = 4 ; bp+4
|
||
PARAMETER_2 = 6 ; bp+6
|
||
|
||
4044:0C87 55 push bp
|
||
4044:0C88 8B EC mov bp,sp
|
||
4044:0C8A A1 01C2 mov ax,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0C8D A3 01C4 mov word ptr ds:[1C4h],ax ; (4044:01C4=0B8h)
|
||
4044:0C90 8B 46 06 mov ax,[bp+PARAMETER_2]
|
||
4044:0C93 A3 01C6 mov word ptr ds:[1C6h],ax ; (4044:01C6=5000h)
|
||
4044:0C96 ,FF 36 095E push word ptr ds:[95Eh] ; PARAMETER_2 (4044:095E=878Ah)
|
||
4044:0C9A B8 01C4 mov ax,1C4h
|
||
4044:0C9D 50 push ax ; PARAMETER_1
|
||
4044:0C9E E8 F3F5 call sub_1 ; (0096)
|
||
4044:0CA1 A3 01D6 mov word ptr ds:[1D6h],ax ; (4044:01D6=712h)
|
||
4044:0CA4 83 F8 FF ;* cmp ax,0FFFFh
|
||
4044:0CA4 db 83h,0F8h,0FFh ; Fixup - byte match
|
||
4044:0CA7 75 0D jnz loc_121 ; Jump if not zero
|
||
4044:0CA9 B8 066C mov ax,66Ch
|
||
4044:0CAC ,50 push ax ; PARAMETER_2
|
||
4044:0CAD FF 76 06 push word ptr [bp+PARAMETER_2] ; PARAMETER_1
|
||
4044:0CB0 E8 F912 call sub_9 ; (05C5)
|
||
4044:0CB3 E8 F84A call sub_3 ; (0500)
|
||
4044:0CB6 loc_121: ; xref 4044:0CA7
|
||
4044:0CB6 8B 76 06 mov si,[bp+PARAMETER_2]
|
||
4044:0CB9 83 C6 10 add si,10h
|
||
4044:0CBC B9 0008 mov cx,8
|
||
4044:0CBF 8B 7E 04 mov di,[bp+PARAMETER_1]
|
||
4044:0CC2 1E push ds
|
||
4044:0CC3 07 pop es
|
||
4044:0CC4 FC cld ; Clear direction
|
||
4044:0CC5 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0CC7 83 3E 01D6 00 cmp word ptr ds:[1D6h],0 ; (4044:01D6=712h)
|
||
4044:0CCC 75 08 jne loc_122 ; Jump if not equal
|
||
4044:0CCE A0 096E mov al,byte ptr ds:[96Eh] ; (4044:096E=12h)
|
||
4044:0CD1 A2 04ED mov byte ptr ds:[4EDh],al ; (4044:04ED=0)
|
||
4044:0CD4 EB 07 jmp short loc_123 ; (0CDD)
|
||
4044:0CD6 loc_122: ; xref 4044:0CCC
|
||
4044:0CD6 A1 01D6 mov ax,word ptr ds:[1D6h] ; (4044:01D6=712h)
|
||
4044:0CD9 40 inc ax
|
||
4044:0CDA A3 01C2 mov word ptr ds:[1C2h],ax ; (4044:01C2=5019h)
|
||
4044:0CDD loc_123: ; xref 4044:0CD4
|
||
4044:0CDD 5D pop bp
|
||
4044:0CDE C2 0004 retn 4
|
||
sub_34 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0E03
|
||
;==========================================================================
|
||
|
||
4044:0CE1 sub_35 proc near
|
||
4044:0CE1 ,55 push bp
|
||
4044:0CE2 8B EC mov bp,sp
|
||
4044:0CE4 C6 06 01E6 00 mov byte ptr ds:[1E6h],0 ; (4044:01E6=2)
|
||
4044:0CE9 8B 1E 01C2 mov bx,word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0CED 8A 07 mov al,[bx]
|
||
4044:0CEF 3A 06 0973 cmp al,byte ptr ds:[973h] ; (4044:0973=17h)
|
||
4044:0CF3 74 0A je loc_124 ; Jump if equal
|
||
4044:0CF5 B8 0628 mov ax,628h
|
||
4044:0CF8 ,50 push ax ; PARAMETER_1
|
||
4044:0CF9 E8 F851 call sub_7 ; (054D)
|
||
4044:0CFC E8 F801 call sub_3 ; (0500)
|
||
4044:0CFF loc_124: ; xref 4044:0CF3
|
||
4044:0CFF FF 06 01C2 inc word ptr ds:[1C2h] ; (4044:01C2=5019h)
|
||
4044:0D03 loc_125: ; xref 4044:0DB4
|
||
4044:0D03 ,A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0D06 B1 29 mov cl,29h ; ')'
|
||
4044:0D08 F6 E1 mul cl ; ax = reg * al
|
||
4044:0D0A 8A 1E 01E6 mov bl,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0D0E B7 00 mov bh,0
|
||
4044:0D10 D1 E3 shl bx,1 ; Shift w/zeros fill
|
||
4044:0D12 89 C6 ;* mov si,ax
|
||
4044:0D12 db 89h,0C6h ; Fixup - byte match
|
||
4044:0D14 8D 8C 02AF lea cx,cs:[2AFh][si] ; Load effective addr
|
||
4044:0D18 89 8F 011C mov data_46[bx],cx ; (4044:011C=0)
|
||
4044:0D1C 8D 84 02D0 lea ax,cs:[2D0h][si] ; Load effective addr
|
||
4044:0D20 89 87 012C mov data_53[bx],ax ; (4044:012C=0)
|
||
4044:0D24 50 push ax
|
||
4044:0D25 ,51 push cx ; PARAMETER_2
|
||
4044:0D26 50 push ax ; PARAMETER_1
|
||
4044:0D27 E8 FF5D call sub_34 ; (0C87)
|
||
4044:0D2A 59 pop cx
|
||
4044:0D2B A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0D2E B1 29 mov cl,29h ; ')'
|
||
4044:0D30 F6 E1 mul cl ; ax = reg * al
|
||
4044:0D32 89 C3 ;* mov bx,ax
|
||
4044:0D32 db 89h,0C3h ; Fixup - byte match
|
||
4044:0D34 8A 87 02B8 mov al,byte ptr ds:[2B8h][bx] ; (4044:02B8=7)
|
||
4044:0D38 3A 06 096C cmp al,byte ptr ds:[96Ch] ; (4044:096C=4)
|
||
4044:0D3C 74 45 je loc_128 ; Jump if equal
|
||
4044:0D3E C6 06 01E4 00 mov byte ptr ds:[1E4h],0 ; (4044:01E4=3Eh)
|
||
4044:0D43 loc_126: ; xref 4044:0D7F
|
||
4044:0D43 A0 01E4 mov al,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:0D46 3C 02 cmp al,2
|
||
4044:0D48 77 51 ja loc_129 ; Jump if above
|
||
4044:0D4A A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0D4D B1 29 mov cl,29h ; ')'
|
||
4044:0D4F F6 E1 mul cl ; ax = reg * al
|
||
4044:0D51 8A 0E 01E4 mov cl,byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:0D55 89 C3 ;* mov bx,ax
|
||
4044:0D55 db 89h,0C3h ; Fixup - byte match
|
||
4044:0D57 B5 00 mov ch,0
|
||
4044:0D59 89 CE ;* mov si,cx
|
||
4044:0D59 db 89h,0CEh ; Fixup - byte match
|
||
4044:0D5B 8A 80 02B8 mov al,byte ptr ds:[2B8h][bx+si] ; (4044:02B8=7)
|
||
4044:0D5F 3A 84 03F7 cmp al,byte ptr ds:[3F7h][si] ; (4044:03F7=88h)
|
||
4044:0D63 74 16 je loc_127 ; Jump if equal
|
||
4044:0D65 B8 0864 mov ax,864h
|
||
4044:0D68 ,50 push ax ; PARAMETER_2
|
||
4044:0D69 8A 1E 01E6 mov bl,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0D6D B7 00 mov bh,0
|
||
4044:0D6F D1 E3 shl bx,1 ; Shift w/zeros fill
|
||
4044:0D71 FF B7 011C push data_46[bx] ; PARAMETER_1 (4044:011C=0)
|
||
4044:0D75 E8 F84D call sub_9 ; (05C5)
|
||
4044:0D78 E8 F785 call sub_3 ; (0500)
|
||
4044:0D7B loc_127: ; xref 4044:0D63
|
||
4044:0D7B FE 06 01E4 inc byte ptr ds:[1E4h] ; (4044:01E4=3Eh)
|
||
4044:0D7F 75 C2 jnz loc_126 ; Jump if not zero
|
||
4044:0D81 EB 18 jmp short loc_129 ; (0D9B)
|
||
4044:0D83 loc_128: ; xref 4044:0D3C
|
||
4044:0D83 A0 01E6 mov al,byte ptr ds:[1E6h] ; (4044:01E6=2)
|
||
4044:0D86 B1 29 mov cl,29h ; ')'
|
||
4044:0D88 F6 E1 mul cl ; ax = reg * al
|
||
4044:0D8A 89 C7 ;* mov di,ax
|
||
4044:0D8A db 89h,0C7h ; Fixup - byte match
|
||
4044:0D8C ,8D BD 02B8 lea di,ds:[2B8h][di] ; (4044:02B8=7) Load effective addr
|
||
4044:0D90 B9 0003 mov cx,3
|
||
4044:0D93 ,BE 03F7 mov si,3F7h ; (4044:03F7=88h)
|
||
4044:0D96 1E push ds
|
||
4044:0D97 07 pop es
|
||
4044:0D98 FC cld ; Clear direction
|
||
4044:0D99 F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0D9B loc_129: ; xref 4044:0D48, 0D81
|
||
4044:0D9B FE 06 01D9 inc byte ptr ds:[1D9h] ; (4044:01D9=0B8h)
|
||
4044:0D9F A0 04ED mov al,byte ptr ds:[4EDh] ; (4044:04ED=0)
|
||
4044:0DA2 3A 06 0974 cmp al,byte ptr ds:[974h] ; (4044:0974=0FFh)
|
||
4044:0DA6 74 0F je loc_130 ; Jump if equal
|
||
4044:0DA8 3A 06 096E cmp al,byte ptr ds:[96Eh] ; (4044:096E=12h)
|
||
4044:0DAC 74 09 je loc_130 ; Jump if equal
|
||
4044:0DAE 3A 06 0972 cmp al,byte ptr ds:[972h] ; (4044:0972=75h)
|
||
4044:0DB2 74 03 je loc_130 ; Jump if equal
|
||
4044:0DB4 E9 FF4C jmp loc_125 ; (0D03)
|
||
4044:0DB7 loc_130: ; xref 4044:0DA6, 0DAC, 0DB2
|
||
4044:0DB7 5D pop bp
|
||
4044:0DB8 C3 retn
|
||
sub_35 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0E0B
|
||
;==========================================================================
|
||
|
||
4044:0DB9 sub_36 proc near
|
||
4044:0DB9 ,55 push bp
|
||
4044:0DBA 8B EC mov bp,sp
|
||
4044:0DBC 80 3E 04EB 01 cmp byte ptr ds:[4EBh],1 ; (4044:04EB=0E8h)
|
||
4044:0DC1 75 07 jne loc_131 ; Jump if not equal
|
||
4044:0DC3 C6 06 01E1 01 mov byte ptr ds:[1E1h],1 ; (4044:01E1=1Dh)
|
||
4044:0DC8 5D pop bp
|
||
4044:0DC9 C3 retn
|
||
4044:0DCA loc_131: ; xref 4044:0DC1
|
||
4044:0DCA 80 3E 04EB 02 cmp byte ptr ds:[4EBh],2 ; (4044:04EB=0E8h)
|
||
4044:0DCF 75 12 jne loc_132 ; Jump if not equal
|
||
4044:0DD1 B8 022C mov ax,22Ch
|
||
4044:0DD4 ,50 push ax ; PARAMETER_2
|
||
4044:0DD5 B8 0297 mov ax,297h
|
||
4044:0DD8 50 push ax ; PARAMETER_1
|
||
4044:0DD9 E8 FEAB call sub_34 ; (0C87)
|
||
4044:0DDC C6 06 01DF 01 mov byte ptr ds:[1DFh],1 ; (4044:01DF=3)
|
||
4044:0DE1 5D pop bp
|
||
4044:0DE2 C3 retn
|
||
4044:0DE3 loc_132: ; xref 4044:0DCF
|
||
4044:0DE3 80 3E 04EB 03 cmp byte ptr ds:[4EBh],3 ; (4044:04EB=0E8h)
|
||
4044:0DE8 75 12 jne loc_133 ; Jump if not equal
|
||
4044:0DEA B8 024D mov ax,24Dh
|
||
4044:0DED ,50 push ax ; PARAMETER_2
|
||
4044:0DEE B8 029F mov ax,29Fh
|
||
4044:0DF1 50 push ax ; PARAMETER_1
|
||
4044:0DF2 E8 FE92 call sub_34 ; (0C87)
|
||
4044:0DF5 C6 06 01E0 01 mov byte ptr ds:[1E0h],1 ; (4044:01E0=0E8h)
|
||
4044:0DFA 5D pop bp
|
||
4044:0DFB C3 retn
|
||
4044:0DFC loc_133: ; xref 4044:0DE8
|
||
4044:0DFC 80 3E 04EB 04 cmp byte ptr ds:[4EBh],4 ; (4044:04EB=0E8h)
|
||
4044:0E01 75 03 jne loc_134 ; Jump if not equal
|
||
4044:0E03 E8 FEDB call sub_35 ; (0CE1)
|
||
4044:0E06 loc_134: ; xref 4044:0E01
|
||
4044:0E06 5D pop bp
|
||
4044:0E07 C3 retn
|
||
sub_36 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0EE6
|
||
;==========================================================================
|
||
|
||
4044:0E08 sub_37 proc near
|
||
4044:0E08 ,55 push bp
|
||
4044:0E09 8B EC mov bp,sp
|
||
4044:0E0B loc_135: ; xref 4044:0E37
|
||
4044:0E0B E8 FFAB call sub_36 ; (0DB9)
|
||
4044:0E0E A0 04ED mov al,byte ptr ds:[4EDh] ; (4044:04ED=0)
|
||
4044:0E11 3A 06 096E cmp al,byte ptr ds:[96Eh] ; (4044:096E=12h)
|
||
4044:0E15 74 06 je loc_136 ; Jump if equal
|
||
4044:0E17 3A 06 0972 cmp al,byte ptr ds:[972h] ; (4044:0972=75h)
|
||
4044:0E1B 75 0A jne loc_137 ; Jump if not equal
|
||
4044:0E1D loc_136: ; xref 4044:0E15
|
||
4044:0E1D A0 01E3 mov al,byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0E20 FE C8 dec al
|
||
4044:0E22 A2 01DC mov byte ptr ds:[1DCh],al ; (4044:01DC=50h)
|
||
4044:0E25 5D pop bp
|
||
4044:0E26 C3 retn
|
||
4044:0E27 loc_137: ; xref 4044:0E1B
|
||
4044:0E27 B8 077A mov ax,77Ah
|
||
4044:0E2A 50 push ax
|
||
4044:0E2B B8 0792 mov ax,792h
|
||
4044:0E2E 50 push ax
|
||
4044:0E2F E8 FBA7 call sub_26 ; (09D9)
|
||
4044:0E32 A2 04EB mov byte ptr ds:[4EBh],al ; (4044:04EB=0E8h)
|
||
4044:0E35 3C 00 cmp al,0
|
||
4044:0E37 75 D2 jne loc_135 ; Jump if not equal
|
||
4044:0E39 B8 073A mov ax,73Ah
|
||
4044:0E3C ,50 push ax ; PARAMETER_1
|
||
4044:0E3D E8 F70D call sub_7 ; (054D)
|
||
4044:0E40 B8 097F mov ax,97Fh
|
||
4044:0E43 ,50 push ax ; PARAMETER_1
|
||
4044:0E44 E8 F6E5 call sub_5 ; (052C)
|
||
4044:0E47 E8 FDD2 call sub_32 ; (0C1C)
|
||
4044:0E4A E8 F6B3 call sub_3 ; (0500)
|
||
4044:0E4D 5D pop bp
|
||
4044:0E4E C3 retn
|
||
sub_37 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:01B1
|
||
;==========================================================================
|
||
|
||
4044:0E4F sub_38 proc near
|
||
4044:0E4F ,55 push bp
|
||
4044:0E50 8B EC mov bp,sp
|
||
4044:0E52 B9 0010 mov cx,10h
|
||
4044:0E55 ,BE 005C mov si,offset data_23 ; (4044:005C=0)
|
||
4044:0E58 ,BF 020B mov di,20Bh ; (4044:020B=2)
|
||
4044:0E5B 1E push ds
|
||
4044:0E5C 07 pop es
|
||
4044:0E5D FC cld ; Clear direction
|
||
4044:0E5E F2/ A4 repne movsb ; Rep zf=0+cx >0 Mov [si] to es:[di]
|
||
4044:0E60 C6 06 01E3 00 mov byte ptr ds:[1E3h],0 ; (4044:01E3=80h)
|
||
4044:0E65 E8 FDEA call sub_33 ; (0C52)
|
||
4044:0E68 8A 1E 01E3 mov bl,byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0E6C B7 00 mov bh,0
|
||
4044:0E6E 8A 87 0080 mov al,data_24[bx] ; (4044:0080=9Ch)
|
||
4044:0E72 3A 06 0975 cmp al,byte ptr ds:[975h] ; (4044:0975=76h)
|
||
4044:0E76 74 71 je loc_139 ; Jump if equal
|
||
4044:0E78 8D 87 0080 lea ax,cs:[80h][bx] ; Load effective addr
|
||
4044:0E7C A3 01C2 mov word ptr ds:[1C2h],ax ; (4044:01C2=5019h)
|
||
4044:0E7F B8 077A mov ax,77Ah
|
||
4044:0E82 50 push ax
|
||
4044:0E83 B8 0792 mov ax,792h
|
||
4044:0E86 50 push ax
|
||
4044:0E87 E8 FB4F call sub_26 ; (09D9)
|
||
4044:0E8A A2 04EB mov byte ptr ds:[4EBh],al ; (4044:04EB=0E8h)
|
||
4044:0E8D 3C 00 cmp al,0
|
||
4044:0E8F 75 55 jne loc_138 ; Jump if not equal
|
||
4044:0E91 A0 01E3 mov al,byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0E94 A2 01E2 mov byte ptr ds:[1E2h],al ; (4044:01E2=3)
|
||
4044:0E97 E8 FDB8 call sub_33 ; (0C52)
|
||
4044:0E9A 8A 1E 01E3 mov bl,byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0E9E B7 00 mov bh,0
|
||
4044:0EA0 8A 87 0080 mov al,data_24[bx] ; (4044:0080=9Ch)
|
||
4044:0EA4 3A 06 0975 cmp al,byte ptr ds:[975h] ; (4044:0975=76h)
|
||
4044:0EA8 74 3F je loc_139 ; Jump if equal
|
||
4044:0EAA 8D 87 0080 lea ax,cs:[80h][bx] ; Load effective addr
|
||
4044:0EAE A3 01C2 mov word ptr ds:[1C2h],ax ; (4044:01C2=5019h)
|
||
4044:0EB1 B8 077A mov ax,77Ah
|
||
4044:0EB4 50 push ax
|
||
4044:0EB5 B8 0792 mov ax,792h
|
||
4044:0EB8 50 push ax
|
||
4044:0EB9 E8 FB1D call sub_26 ; (09D9)
|
||
4044:0EBC A2 04EB mov byte ptr ds:[4EBh],al ; (4044:04EB=0E8h)
|
||
4044:0EBF 3C 00 cmp al,0
|
||
4044:0EC1 75 23 jne loc_138 ; Jump if not equal
|
||
4044:0EC3 8A 1E 01E2 mov bl,byte ptr ds:[1E2h] ; (4044:01E2=3)
|
||
4044:0EC7 B7 00 mov bh,0
|
||
4044:0EC9 8D 87 0080 lea ax,cs:[80h][bx] ; Load effective addr
|
||
4044:0ECD A3 01C2 mov word ptr ds:[1C2h],ax ; (4044:01C2=5019h)
|
||
4044:0ED0 B8 073A mov ax,73Ah
|
||
4044:0ED3 ,50 push ax ; PARAMETER_1
|
||
4044:0ED4 E8 F676 call sub_7 ; (054D)
|
||
4044:0ED7 B8 0981 mov ax,981h
|
||
4044:0EDA ,50 push ax ; PARAMETER_1
|
||
4044:0EDB E8 F64E call sub_5 ; (052C)
|
||
4044:0EDE E8 FD3B call sub_32 ; (0C1C)
|
||
4044:0EE1 E8 F61C call sub_3 ; (0500)
|
||
4044:0EE4 EB 03 jmp short loc_139 ; (0EE9)
|
||
4044:0EE6 loc_138: ; xref 4044:0E8F, 0EC1
|
||
4044:0EE6 E8 FF1F call sub_37 ; (0E08)
|
||
4044:0EE9 loc_139: ; xref 4044:0E76, 0EA8, 0EE4
|
||
4044:0EE9 A0 01E3 mov al,byte ptr ds:[1E3h] ; (4044:01E3=80h)
|
||
4044:0EEC FE C8 dec al
|
||
4044:0EEE A2 01DC mov byte ptr ds:[1DCh],al ; (4044:01DC=50h)
|
||
4044:0EF1 5D pop bp
|
||
4044:0EF2 C3 retn
|
||
sub_38 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0358
|
||
;==========================================================================
|
||
|
||
4044:0EF3 sub_39 proc near
|
||
4044:0EF3 8B F4 mov si,sp
|
||
4044:0EF5 46 inc si
|
||
4044:0EF6 46 inc si
|
||
4044:0EF7 8B 1C mov bx,[si]
|
||
4044:0EF9 8A 07 mov al,[bx]
|
||
4044:0EFB 3C 01 cmp al,1
|
||
4044:0EFD 75 03 jne loc_140 ; Jump if not equal
|
||
4044:0EFF E9 007E jmpn loc_143 ; (0F80)
|
||
4044:0F02 loc_140: ; xref 4044:0EFD
|
||
4044:0F02 3C 03 cmp al,3
|
||
4044:0F04 75 05 jne loc_141 ; Jump if not equal
|
||
4044:0F06 A2 0512 mov byte ptr ds:[512h],al ; (4044:0512=50h)
|
||
4044:0F09 32 C0 xor al,al ; Zero register
|
||
4044:0F0B loc_141: ; xref 4044:0F04
|
||
4044:0F0B A2 0513 mov byte ptr ds:[513h],al ; (4044:0513=0E8h)
|
||
4044:0F0E 43 inc bx
|
||
4044:0F0F 8A 07 mov al,[bx]
|
||
4044:0F11 A2 0514 mov byte ptr ds:[514h],al ; (4044:0514=80h)
|
||
4044:0F14 43 inc bx
|
||
4044:0F15 8A 07 mov al,[bx]
|
||
4044:0F17 A2 0515 mov byte ptr ds:[515h],al ; (4044:0515=0FBh)
|
||
4044:0F1A 43 inc bx
|
||
4044:0F1B 8A 07 mov al,[bx]
|
||
4044:0F1D A2 051A mov byte ptr ds:[51Ah],al ; (4044:051A=0ECh)
|
||
4044:0F20 ,BB 005C mov bx,offset data_23 ; (4044:005C=0)
|
||
4044:0F23 8A 07 mov al,[bx]
|
||
4044:0F25 FE C8 dec al
|
||
4044:0F27 79 0B jns loc_142 ; Jump if not sign
|
||
4044:0F29 B9 0019 mov cx,19h
|
||
4044:0F2C 53 push bx
|
||
4044:0F2D CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0F2F 5B pop bx
|
||
4044:0F30 88 07 mov [bx],al
|
||
4044:0F32 FE 07 inc byte ptr [bx]
|
||
4044:0F34 loc_142: ; xref 4044:0F27
|
||
4044:0F34 8A D0 mov dl,al
|
||
4044:0F36 B1 0E mov cl,0Eh
|
||
4044:0F38 53 push bx
|
||
4044:0F39 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0F3B 5B pop bx
|
||
4044:0F3C 8B F3 mov si,bx
|
||
4044:0F3E ,BF 051C mov di,51Ch ; (4044:051C=36h)
|
||
4044:0F41 B9 0010 mov cx,10h
|
||
4044:0F44 8C DA mov dx,ds
|
||
4044:0F46 06 push es
|
||
4044:0F47 8E C2 mov es,dx
|
||
4044:0F49 F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:0F4B 07 pop es
|
||
4044:0F4C E8 004C call sub_40 ; (0F9B)
|
||
4044:0F4F A2 051B mov byte ptr ds:[51Bh],al ; (4044:051B=0FFh)
|
||
4044:0F52 C6 06 0519 07 mov byte ptr ds:[519h],7 ; (4044:0519=8Bh)
|
||
4044:0F57 C6 06 0518 07 mov byte ptr ds:[518h],7 ; (4044:0518=55h)
|
||
4044:0F5C B1 3C mov cl,3Ch ; '<'
|
||
4044:0F5E BA 050C mov dx,50Ch
|
||
4044:0F61 C6 06 050C 84 mov byte ptr ds:[50Ch],84h ; (4044:050C=0FBh)
|
||
4044:0F66 C6 06 050D 02 mov byte ptr ds:[50Dh],2 ; (4044:050D=0B0h)
|
||
4044:0F6B CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0F6D 06 push es
|
||
4044:0F6E 8E 06 050E mov es,word ptr ds:[50Eh] ; (4044:050E=0B400h)
|
||
4044:0F72 8B 3E 0510 mov di,word ptr ds:[510h] ; (4044:0510=5000h)
|
||
4044:0F76 ,BE 0512 mov si,512h ; (4044:0512=50h)
|
||
4044:0F79 B9 0016 mov cx,16h
|
||
4044:0F7C F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:0F7E 07 pop es
|
||
4044:0F7F C3 retn
|
||
4044:0F80 loc_143: ; xref 4044:0EFF
|
||
4044:0F80 BA 05F0 mov dx,5F0h
|
||
4044:0F83 B1 09 mov cl,9
|
||
4044:0F85 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0F87 B1 10 mov cl,10h
|
||
4044:0F89 BA 005C mov dx,5Ch
|
||
4044:0F8C CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0F8E B1 13 mov cl,13h
|
||
4044:0F90 BA 005C mov dx,5Ch
|
||
4044:0F93 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0F95 B1 00 mov cl,0
|
||
4044:0F97 B2 00 mov dl,0
|
||
4044:0F99 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
sub_39 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0F4C
|
||
;==========================================================================
|
||
|
||
4044:0F9B sub_40 proc near
|
||
4044:0F9B B0 FF mov al,0FFh
|
||
4044:0F9D 8A D0 mov dl,al
|
||
4044:0F9F B1 20 mov cl,20h ; ' '
|
||
4044:0FA1 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0FA3 C3 retn
|
||
sub_40 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:0374
|
||
;==========================================================================
|
||
|
||
4044:0FA4 sub_41 proc near
|
||
4044:0FA4 8B D8 mov bx,ax
|
||
4044:0FA6 8A 07 mov al,[bx]
|
||
4044:0FA8 3C 01 cmp al,1
|
||
4044:0FAA 75 03 jne loc_144 ; Jump if not equal
|
||
4044:0FAC E9 008C jmp loc_147 ; (103B)
|
||
4044:0FAF loc_144: ; xref 4044:0FAA
|
||
4044:0FAF 43 inc bx
|
||
4044:0FB0 8A 07 mov al,[bx]
|
||
4044:0FB2 A2 0546 mov byte ptr ds:[546h],al ; (4044:0546=9)
|
||
4044:0FB5 43 inc bx
|
||
4044:0FB6 8A 07 mov al,[bx]
|
||
4044:0FB8 A2 0547 mov byte ptr ds:[547h],al ; (4044:0547=50h)
|
||
4044:0FBB 43 inc bx
|
||
4044:0FBC 8A 07 mov al,[bx]
|
||
4044:0FBE A2 0548 mov byte ptr ds:[548h],al ; (4044:0548=0E8h)
|
||
4044:0FC1 BA 005C mov dx,5Ch
|
||
4044:0FC4 B1 10 mov cl,10h
|
||
4044:0FC6 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0FC8 BA 005C mov dx,5Ch
|
||
4044:0FCB B1 0F mov cl,0Fh
|
||
4044:0FCD CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0FCF ,BB 005C mov bx,offset data_23 ; (4044:005C=0)
|
||
4044:0FD2 8A 07 mov al,[bx]
|
||
4044:0FD4 0A C0 or al,al ; Zero ?
|
||
4044:0FD6 53 push bx
|
||
4044:0FD7 75 0D jnz loc_145 ; Jump if not zero
|
||
4044:0FD9 B1 19 mov cl,19h
|
||
4044:0FDB CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0FDD FE C0 inc al
|
||
4044:0FDF 8B F4 mov si,sp
|
||
4044:0FE1 36: 8B 1C mov bx,ss:[si]
|
||
4044:0FE4 88 07 mov [bx],al
|
||
4044:0FE6 loc_145: ; xref 4044:0FD7
|
||
4044:0FE6 B1 20 mov cl,20h ; ' '
|
||
4044:0FE8 B2 FF mov dl,0FFh
|
||
4044:0FEA CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:0FEC A2 0549 mov byte ptr ds:[549h],al ; (4044:0549=4Bh)
|
||
4044:0FEF 5E pop si
|
||
4044:0FF0 ,BF 054A mov di,54Ah ; (4044:054A=0FBh)
|
||
4044:0FF3 B9 0010 mov cx,10h
|
||
4044:0FF6 8C D8 mov ax,ds
|
||
4044:0FF8 8E C0 mov es,ax
|
||
4044:0FFA F3/ A5 rep movsw ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:0FFC C6 06 056A 00 mov byte ptr ds:[56Ah],0 ; (4044:056A=40h)
|
||
4044:1001 B1 3C mov cl,3Ch ; '<'
|
||
4044:1003 BA 053E mov dx,53Eh
|
||
4044:1006 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:1008 ,BE 0546 mov si,546h ; (4044:0546=9)
|
||
4044:100B 8B 3E 0540 mov di,word ptr ds:[540h] ; (4044:0540=36FFh)
|
||
4044:100F 8E 06 0542 mov es,word ptr ds:[542h] ; (4044:0542=953h)
|
||
4044:1013 B9 0025 mov cx,25h
|
||
4044:1016 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:1018 B1 3C mov cl,3Ch ; '<'
|
||
4044:101A BA 0544 mov dx,544h
|
||
4044:101D CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:101F C3 retn
|
||
4044:1020 BA B4 06 db 0BAh,0B4h, 06h
|
||
4044:1023 loc_146: ; xref 4044:103E
|
||
4044:1023 ,B1 09 mov cl,9
|
||
4044:1025 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:1027 B1 10 mov cl,10h
|
||
4044:1029 BA 005C mov dx,5Ch
|
||
4044:102C CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:102E B1 13 mov cl,13h
|
||
4044:1030 BA 005C mov dx,5Ch
|
||
4044:1033 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:1035 B1 00 mov cl,0
|
||
4044:1037 B2 00 mov dl,0
|
||
4044:1039 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:103B loc_147: ; xref 4044:0FAC
|
||
4044:103B BA 05F0 mov dx,5F0h
|
||
4044:103E EB E3 jmp short loc_146 ; (1023)
|
||
sub_41 endp
|
||
|
||
;* No entry point to code
|
||
4044:1040 B1 3C mov cl,3Ch ; '<'
|
||
4044:1042 BA 0545 mov dx,545h
|
||
4044:1045 CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:1047 8B C3 mov ax,bx
|
||
4044:1049 C3 retn
|
||
4044:104A 0106[00] db 262 dup (0)
|
||
4044:1150 20 20 20 20 20 44 db ' DSEG patch area'
|
||
4044:1156 53 45 47 20 70 61
|
||
4044:115C 74 63 68 20 61 72
|
||
4044:1162 65 61
|
||
4044:1164 0028[00] db 40 dup (0)
|
||
4044:118C 8C 00 00 00 80 00 db 8Ch, 00h, 00h, 00h, 80h, 00h
|
||
4044:1192 00 db 00h
|
||
4044:1193 0085[00] db 133 dup (0)
|
||
4044:1218 87 00 db 87h, 00h
|
||
4044:121A 001D[00] db 29 dup (0)
|
||
4044:1237 43 4D 44 00 db 43h, 4Dh, 44h, 00h
|
||
4044:123B 78 20 20 20 20 20 db 'x LOG'
|
||
4044:1241 20 20 4C 4F 47
|
||
4044:1246 0016[00] db 22 dup (0)
|
||
4044:125C 000B[20] db 11 dup (20h)
|
||
4044:1267 0016[00] db 22 dup (0)
|
||
4044:127D 000B[20] db 11 dup (20h)
|
||
4044:1288 0016[00] db 22 dup (0)
|
||
4044:129E 000B[20] db 11 dup (20h)
|
||
4044:12A9 0016[00] db 22 dup (0)
|
||
4044:12BF 47 45 54 52 53 58 db 'GETRSX RSX'
|
||
4044:12C5 20 20 52 53 58
|
||
4044:12CA 0015[00] db 21 dup (0)
|
||
4044:12DF 0008[20] db 8 dup (20h)
|
||
4044:12E7 0160[00] db 352 dup (0)
|
||
4044:1447 52 53 58 00 01 00 db 52h, 53h, 58h, 00h, 01h, 00h
|
||
4044:144D 00 03 01 db 00h, 03h, 01h
|
||
4044:1450 00EE[00] db 238 dup (0)
|
||
4044:153E 89 00 00 81 00 00 db 89h, 00h, 00h, 81h, 00h, 00h
|
||
4044:1544 0018[00] db 24 dup (0)
|
||
4044:155C 84 00 00 00 00 00 db 84h, 00h, 00h, 00h, 00h, 00h
|
||
4044:1562 00 00 01 00 00 FF db 00h, 00h, 01h, 00h, 00h,0FFh
|
||
4044:1568 00 00 00 00 01 db 00h, 00h, 00h, 00h, 01h
|
||
4044:156D 53 59 53 4F 55 54 db 'SYSOUT $$$'
|
||
4044:1573 20 20 24 24 24
|
||
4044:1578 00 db 0
|
||
4044:1579 0015[00] db 21 dup (0)
|
||
4044:158E 80 02 00 00 00 00 db 80h, 02h, 00h, 00h, 00h, 00h
|
||
4044:1594 83 AB 01 00 00 00 db 83h,0ABh, 01h, 00h, 00h, 00h
|
||
4044:159A 01 db 01h
|
||
4044:159B 53 59 53 49 4E 20 db 'SYSIN SUB'
|
||
4044:15A1 20 20 53 55 42
|
||
4044:15A6 0016[00] db 22 dup (0)
|
||
4044:15BC 49 6E 68 61 6C 74 db 'Inhaltsverzeichnis voll - $'
|
||
4044:15C2 73 76 65 72 7A 65
|
||
4044:15C8 69 63 68 6E 69 73
|
||
4044:15CE 20 76 6F 6C 6C 20
|
||
4044:15D4 2D 20 24
|
||
4044:15D7 00 db 0
|
||
4044:15D8 44 69 73 6B 65 74 db 'Disketten-Schreib/Lese-Fehler: '
|
||
4044:15DE 74 65 6E 2D 53 63
|
||
4044:15E4 68 72 65 69 62 2F
|
||
4044:15EA 4C 65 73 65 2D 46
|
||
4044:15F0 65 68 6C 65 72 3A
|
||
4044:15F6 20 20
|
||
4044:15F8 24 db '$'
|
||
4044:15F9 00 db 0
|
||
4044:15FA 44 61 74 65 69 20 db 'Datei bereits vorhanden $'
|
||
4044:1600 62 65 72 65 69 74
|
||
4044:1606 73 20 76 6F 72 68
|
||
4044:160C 61 6E 64 65 6E 20
|
||
4044:1612 24
|
||
4044:1613 00 db 0
|
||
4044:1614 44 61 74 65 69 20 db 'Datei nicht gefunden: $'
|
||
4044:161A 6E 69 63 68 74 20
|
||
4044:1620 67 65 66 75 6E 64
|
||
4044:1626 65 6E 3A 20 24
|
||
4044:162B 00 db 0
|
||
4044:162C 50 61 73 73 77 6F db 'Passwort-Fehler - $'
|
||
4044:1632 72 74 2D 46 65 68
|
||
4044:1638 6C 65 72 20 2D 20
|
||
4044:163E 24
|
||
4044:163F 00 db 0
|
||
4044:1640 41 55 58 49 4E 20 db 'AUXIN und AUXOUT bei GET- und PU'
|
||
4044:1646 75 6E 64 20 41 55
|
||
4044:164C 58 4F 55 54 20 62
|
||
4044:1652 65 69 20 47 45 54
|
||
4044:1658 2D 20 75 6E 64 20
|
||
4044:165E 50 55
|
||
4044:1660 54 2D 4B 6F 6D 6D db 'T-Kommandos unzulaessig$'
|
||
4044:1666 61 6E 64 6F 73 20
|
||
4044:166C 75 6E 7A 75 6C 61
|
||
4044:1672 65 73 73 69 67 24
|
||
4044:1678 55 6E 7A 75 6C 61 db 'Unzulaessiger Begrenzer in Komma'
|
||
4044:167E 65 73 73 69 67 65
|
||
4044:1684 72 20 42 65 67 72
|
||
4044:168A 65 6E 7A 65 72 20
|
||
4044:1690 69 6E 20 4B 6F 6D
|
||
4044:1696 6D 61
|
||
4044:1698 6E 64 6F 7A 65 69 db 'ndozeile$'
|
||
4044:169E 6C 65 24
|
||
4044:16A1 00 db 0
|
||
4044:16A2 55 6E 7A 75 6C 61 db 'Unzulaessiges Laufwerk: $'
|
||
4044:16A8 65 73 73 69 67 65
|
||
4044:16AE 73 20 4C 61 75 66
|
||
4044:16B4 77 65 72 6B 3A 20
|
||
4044:16BA 24
|
||
4044:16BB 00 db 0
|
||
4044:16BC 55 6E 7A 75 6C 61 db 'Unzulaessige Dateibezeichnung Ko'
|
||
4044:16C2 65 73 73 69 67 65
|
||
4044:16C8 20 44 61 74 65 69
|
||
4044:16CE 62 65 7A 65 69 63
|
||
4044:16D4 68 6E 75 6E 67 20
|
||
4044:16DA 4B 6F
|
||
4044:16DC 72 72 65 6B 74 65 db 'rrekte Form: d:Dateiname.Typ;Pa'
|
||
4044:16E2 20 46 6F 72 6D 3A
|
||
4044:16E8 20 20 64 3A 44 61
|
||
4044:16EE 74 65 69 6E 61 6D
|
||
4044:16F4 65 2E 54 79 70 3B
|
||
4044:16FA 50 61
|
||
4044:16FC 73 73 77 6F 72 74 db 'sswort$'
|
||
4044:1702 24
|
||
4044:1703 00 db 0
|
||
4044:1704 4E 69 63 68 74 20 db 'Nicht genug freie Speicherkapazi'
|
||
4044:170A 67 65 6E 75 67 20
|
||
4044:1710 66 72 65 69 65 20
|
||
4044:1716 53 70 65 69 63 68
|
||
4044:171C 65 72 6B 61 70 61
|
||
4044:1722 7A 69
|
||
4044:1724 74 61 65 74 24 db 'taet$'
|
||
4044:1729 00 db 0
|
||
4044:172A 44 69 73 6B 65 74 db 'Diskette schreibgeschuetzt: $'
|
||
4044:1730 74 65 20 73 63 68
|
||
4044:1736 72 65 69 62 67 65
|
||
4044:173C 73 63 68 75 65 74
|
||
4044:1742 7A 74 3A 20 24
|
||
4044:1747 00 db 0
|
||
4044:1748 44 61 74 65 69 20 db 'Datei schreibgeschuetzt: $'
|
||
4044:174E 73 63 68 72 65 69
|
||
4044:1754 62 67 65 73 63 68
|
||
4044:175A 75 65 74 7A 74 3A
|
||
4044:1760 20 24
|
||
4044:1762 45 69 6E 67 61 62 db 'Eingabe in Kommandozeile nicht e'
|
||
4044:1768 65 20 69 6E 20 4B
|
||
4044:176E 6F 6D 6D 61 6E 64
|
||
4044:1774 6F 7A 65 69 6C 65
|
||
4044:177A 20 6E 69 63 68 74
|
||
4044:1780 20 65
|
||
4044:1782 72 6B 61 6E 6E 74 db 'rkannt$'
|
||
4044:1788 24
|
||
4044:1789 00 db 0
|
||
4044:178A 50 61 72 61 6D 65 db 'Parameter oder Option fehlerhaft'
|
||
4044:1790 74 65 72 20 6F 64
|
||
4044:1796 65 72 20 4F 70 74
|
||
4044:179C 69 6F 6E 20 66 65
|
||
4044:17A2 68 6C 65 72 68 61
|
||
4044:17A8 66 74
|
||
4044:17AA 24 db '$'
|
||
4044:17AB 00 db 0
|
||
4044:17AC 48 69 6E 74 65 72 db 'Hintergrundausgabe in Datei: $'
|
||
4044:17B2 67 72 75 6E 64 61
|
||
4044:17B8 75 73 67 61 62 65
|
||
4044:17BE 20 69 6E 20 44 61
|
||
4044:17C4 74 65 69 3A 20 24
|
||
4044:17CA 4E 4F 4C 4F 47 30 db 'NOLOG0OFILE0INFILE0RSX'
|
||
4044:17D0 4F 46 49 4C 45 30
|
||
4044:17D6 49 4E 46 49 4C 45
|
||
4044:17DC 30 52 53 58
|
||
4044:17E0 FF 00 00 06 0C 13 db 0FFh, 00h, 00h, 06h, 0Ch, 13h
|
||
4044:17E6 16 00 00 db 16h, 00h, 00h
|
||
4044:17E9 5B 5D 2C 20 3A 28 db '[], :()='
|
||
4044:17EF 29 3D
|
||
4044:17F1 00 FF 00 55 6E db 00h,0FFh, 00h, 55h, 6Eh
|
||
4044:17F6 7A 75 6C 61 65 73 db 'zulaessiges ? in der Dateibezeic'
|
||
4044:17FC 73 69 67 65 73 20
|
||
4044:1802 3F 20 69 6E 20 64
|
||
4044:1808 65 72 20 44 61 74
|
||
4044:180E 65 69 62 65 7A 65
|
||
4044:1814 69 63
|
||
4044:1816 68 6E 75 6E 67 3A db 'hnung: $'
|
||
4044:181C 20 24
|
||
4044:181E 5A 75 20 76 69 65 db 'Zu viele Hintergrund-Programme;H'
|
||
4044:1824 6C 65 20 48 69 6E
|
||
4044:182A 74 65 72 67 72 75
|
||
4044:1830 6E 64 2D 50 72 6F
|
||
4044:1836 67 72 61 6D 6D 65
|
||
4044:183C 3B 48
|
||
4044:183E 6F 65 63 68 73 74 db 'oechstens 3 zulaessig.$'
|
||
4044:1844 65 6E 73 20 33 20
|
||
4044:184A 7A 75 6C 61 65 73
|
||
4044:1850 73 69 67 2E 24
|
||
4044:1855 00 db 0
|
||
4044:1856 44 61 74 65 69 20 db 'Datei kann nicht geladen werden:'
|
||
4044:185C 6B 61 6E 6E 20 6E
|
||
4044:1862 69 63 68 74 20 67
|
||
4044:1868 65 6C 61 64 65 6E
|
||
4044:186E 20 77 65 72 64 65
|
||
4044:1874 6E 3A
|
||
4044:1876 20 24 db ' $'
|
||
4044:1878 5B 00 db '[', 0
|
||
4044:187A 50 61 73 73 77 6F db 'Passwort eingeben: $'
|
||
4044:1880 72 74 20 65 69 6E
|
||
4044:1886 67 65 62 65 6E 3A
|
||
4044:188C 20 20 24
|
||
4044:188F 00 db 0
|
||
4044:1890 6A 61 4A 41 46 45 db 'jaJAFEHLER: $'
|
||
4044:1896 48 4C 45 52 3A 20
|
||
4044:189C 20 24
|
||
4044:189E 20 28 4A 2F 4E 29 db ' (J/N)? $'
|
||
4044:18A4 3F 20 24
|
||
4044:18A7 00 db 0
|
||
4044:18A8 4C 6F 65 73 63 68 db 'Loeschen ? $'
|
||
4044:18AE 65 6E 20 3F 20 24
|
||
4044:18B4 55 6E 67 75 65 6C db 'Ungueltiger RSX-Typ. $'
|
||
4044:18BA 74 69 67 65 72 20
|
||
4044:18C0 52 53 58 2D 54 79
|
||
4044:18C6 70 2E 20 24
|
||
4044:18CA 00B4[00] db 180 dup (0)
|
||
4044:197E 43 6F 70 79 72 69 db 'Copyright (c) 1983 Digital Resea'
|
||
4044:1984 67 68 74 20 28 63
|
||
4044:198A 29 20 31 39 38 33
|
||
4044:1990 20 44 69 67 69 74
|
||
4044:1996 61 6C 20 52 65 73
|
||
4044:199C 65 61
|
||
4044:199E 72 63 68 00 db 'rch', 0
|
||
4044:19A2 02 09 0A 0F 16 13 db 02h, 09h, 0Ah, 0Fh, 16h, 13h
|
||
4044:19A8 1A 2F 31 3B 3C 93 db 1Ah, 2Fh, 31h, 3Bh, 3Ch, 93h
|
||
4044:19AE 98 01 02 03 04 07 db 98h, 01h, 02h, 03h, 04h, 07h
|
||
4044:19B4 08 09 85 81 0D 0A db 08h, 09h, 85h, 81h, 0Dh, 0Ah
|
||
4044:19BA 24 09 20 04 09 03 db 24h, 09h, 20h, 04h, 09h, 03h
|
||
4044:19C0 05 01 02 06 07 00 db 05h, 01h, 02h, 06h, 07h, 00h
|
||
4044:19C6 FF db 0FFh
|
||
4044:19C7 0009[20] db 9 dup (20h)
|
||
4044:19D0 24 20 24 00 db 24h, 20h, 24h, 00h
|
||
4044:19D4 002C[00] db 44 dup (0)
|
||
4044:1A00 01 6D 00 00 00 6D db 01h, 6Dh, 00h, 00h, 00h, 6Dh
|
||
4044:1A06 00 00 00 02 5B 00 db 00h, 00h, 00h, 02h, 5Bh, 00h
|
||
4044:1A0C 00 00 5B 00 db 00h, 00h, 5Bh, 00h
|
||
4044:1A10 006F[00] db 111 dup (0)
|
||
4044:1A7F 10 E9 1D 00 FF 00 db 10h,0E9h, 1Dh, 00h,0FFh, 00h
|
||
4044:1A85 00 00 00 db 00h, 00h, 00h
|
||
4044:1A88 47 45 54 52 53 58 db 'GETRSX '
|
||
4044:1A8E 20 20
|
||
4044:1A90 0010[00] db 16 dup (0)
|
||
4044:1AA0 50 80 F9 3C 75 06 db 50h, 80h,0F9h, 3Ch, 75h, 06h
|
||
4044:1AA6 B8 7C 05 E9 A5 00 db 0B8h, 7Ch, 05h,0E9h,0A5h, 00h
|
||
4044:1AAC 2E A0 03 00 0A C0 db 2Eh,0A0h, 03h, 00h, 0Ah,0C0h
|
||
4044:1AB2 74 03 E9 94 00 db 74h, 03h,0E9h, 94h, 00h
|
||
4044:1AB7 loc_148:
|
||
4044:1AB7 80 F9 00 cmp cl,0
|
||
4044:1ABA 75 06 jne loc_149 ; Jump if not equal
|
||
4044:1ABC B8 0158 mov ax,158h
|
||
4044:1ABF E9 008F jmp loc_160 ; (1B51)
|
||
4044:1AC2 loc_149: ; xref 4044:1ABA
|
||
4044:1AC2 80 F9 0B cmp cl,0Bh
|
||
4044:1AC5 75 06 jne loc_150 ; Jump if not equal
|
||
4044:1AC7 B8 02E4 mov ax,2E4h
|
||
4044:1ACA E9 0090 jmp loc_161 ; (1B5D)
|
||
4044:1ACD loc_150: ; xref 4044:1AC5
|
||
4044:1ACD 80 F9 06 cmp cl,6
|
||
4044:1AD0 75 06 jne loc_151 ; Jump if not equal
|
||
4044:1AD2 B8 01FC mov ax,1FCh
|
||
4044:1AD5 E9 0085 jmp loc_161 ; (1B5D)
|
||
4044:1AD8 loc_151: ; xref 4044:1AD0
|
||
4044:1AD8 80 F9 01 cmp cl,1
|
||
4044:1ADB 75 06 jne loc_152 ; Jump if not equal
|
||
4044:1ADD B8 01B9 mov ax,1B9h
|
||
4044:1AE0 E9 006E jmpn loc_160 ; (1B51)
|
||
4044:1AE3 loc_152: ; xref 4044:1ADB
|
||
4044:1AE3 80 F9 0A cmp cl,0Ah
|
||
4044:1AE6 75 06 jne loc_153 ; Jump if not equal
|
||
4044:1AE8 B8 0259 mov ax,259h
|
||
4044:1AEB E9 0063 jmpn loc_160 ; (1B51)
|
||
4044:1AEE loc_153: ; xref 4044:1AE6
|
||
4044:1AEE 80 F9 2F cmp cl,2Fh ; '/'
|
||
4044:1AF1 75 06 jne loc_154 ; Jump if not equal
|
||
4044:1AF3 B8 0309 mov ax,309h
|
||
4044:1AF6 E9 0058 jmpn loc_160 ; (1B51)
|
||
4044:1AF9 loc_154: ; xref 4044:1AF1
|
||
4044:1AF9 80 F9 32 cmp cl,32h ; '2'
|
||
4044:1AFC 75 06 jne loc_155 ; Jump if not equal
|
||
4044:1AFE B8 03C3 mov ax,3C3h
|
||
4044:1B01 E9 0059 jmpn loc_161 ; (1B5D)
|
||
4044:1B04 loc_155: ; xref 4044:1AFC
|
||
4044:1B04 80 F9 31 cmp cl,31h ; '1'
|
||
4044:1B07 75 1E jne loc_157 ; Jump if not equal
|
||
4044:1B09 B8 0311 mov ax,311h
|
||
4044:1B0C E9 0042 jmpn loc_160 ; (1B51)
|
||
4044:1B0F loc_156: ; xref 4044:1D9E, 1DA9
|
||
4044:1B0F ,9C pushf ; Push flags
|
||
4044:1B10 58 pop ax
|
||
4044:1B11 FA cli ; Disable interrupts
|
||
4044:1B12 8B 26 0117 mov sp,data_42 ; (4044:0117=0)
|
||
4044:1B16 8E 16 0115 mov ss,data_40 ; (4044:0115=0)
|
||
4044:1B1A 50 push ax
|
||
4044:1B1B 9D popf ; Pop flags
|
||
4044:1B1C FF 36 0111 push data_37 ; (4044:0111=0)
|
||
4044:1B20 1F pop ds
|
||
4044:1B21 07 pop es
|
||
4044:1B22 5F pop di
|
||
4044:1B23 5E pop si
|
||
4044:1B24 5A pop dx
|
||
4044:1B25 59 pop cx
|
||
4044:1B26 5B pop bx
|
||
4044:1B27 loc_157: ; xref 4044:1B07
|
||
4044:1B27 1E push ds
|
||
4044:1B28 2E: 8E 1E 0010 mov ds,cs:data_18 ; (4044:0010=0)
|
||
4044:1B2D 8F 06 0111 pop word ptr ds:data_5e ; (0000:0111=0EFh)
|
||
4044:1B31 80 F9 31 cmp cl,31h ; '1'
|
||
4044:1B34 75 0B jne loc_158 ; Jump if not equal
|
||
4044:1B36 ,B8 0334 mov ax,offset loc_18
|
||
4044:1B39 FF 36 0111 push word ptr ds:data_5e ; (0000:0111=0EFh)
|
||
4044:1B3D 1F pop ds
|
||
4044:1B3E E9 0010 jmpn loc_160 ; (1B51)
|
||
4044:1B41 loc_158: ; xref 4044:1B34
|
||
4044:1B41 C6 06 0121 FF mov byte ptr ds:data_15e,0FFh ; (00EF:0121=0)
|
||
4044:1B46 FF 36 0111 push word ptr ds:data_14e ; (00EF:0111=0FFF8h)
|
||
4044:1B4A 1F pop ds
|
||
4044:1B4B loc_159:
|
||
4044:1B4B 58 pop ax
|
||
4044:1B4C 2E: FF 2E 0004 jmp dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:1B51 loc_160: ; xref 4044:1ABF, 1AE0, 1AEB, 1AF6
|
||
; 1B0C, 1B3E
|
||
4044:1B51 1E push ds
|
||
4044:1B52 2E: 8E 1E 0010 mov ds,cs:data_18 ; (4044:0010=0)
|
||
4044:1B57 C6 06 0121 FF mov byte ptr ds:data_10e,0FFh ; (0000:0121=0EFh)
|
||
4044:1B5C 1F pop ds
|
||
4044:1B5D loc_161: ; xref 4044:1ACA, 1AD5, 1B01
|
||
4044:1B5D 53 push bx
|
||
4044:1B5E 51 push cx
|
||
4044:1B5F 52 push dx
|
||
4044:1B60 56 push si
|
||
4044:1B61 57 push di
|
||
4044:1B62 06 push es
|
||
4044:1B63 1E push ds
|
||
4044:1B64 2E: 8E 1E 0010 mov ds,cs:data_18 ; (4044:0010=0)
|
||
4044:1B69 8F 06 0111 pop word ptr ds:data_5e ; (0000:0111=0EFh)
|
||
4044:1B6D 8C 06 0113 mov ds:data_6e,es ; (0000:0113=6FF0h)
|
||
4044:1B71 9C pushf ; Push flags
|
||
4044:1B72 59 pop cx
|
||
4044:1B73 FA cli ; Disable interrupts
|
||
4044:1B74 8C 16 0115 mov ds:data_8e,ss ; (0000:0115=0EFh)
|
||
4044:1B78 89 26 0117 mov ds:data_9e,sp ; (0000:0117=0E5F0h)
|
||
4044:1B7C 8C DB mov bx,ds
|
||
4044:1B7E 8E D3 mov ss,bx
|
||
4044:1B80 BC 0577 mov sp,577h
|
||
4044:1B83 51 push cx
|
||
4044:1B84 9D popf ; Pop flags
|
||
4044:1B85 FF E0 jmp ax ;*Register jump
|
||
4044:1B87 loc_162: ; xref 4044:1BF3, 1C1D, 1C36, 1C9C
|
||
; 1CD1, 1CE7, 1D10, 1D33
|
||
; 1D86, 1D8E, 1E1D, 1E62
|
||
; 1FA1, 2038, 2081, 2100
|
||
4044:1B87 ,9C pushf ; Push flags
|
||
4044:1B88 58 pop ax
|
||
4044:1B89 FA cli ; Disable interrupts
|
||
4044:1B8A 8B 26 0117 mov sp,data_42 ; (4044:0117=0)
|
||
4044:1B8E 8E 16 0115 mov ss,data_40 ; (4044:0115=0)
|
||
4044:1B92 50 push ax
|
||
4044:1B93 9D popf ; Pop flags
|
||
4044:1B94 8B 3E 0111 mov di,data_37 ; (4044:0111=0)
|
||
4044:1B98 8E DF mov ds,di
|
||
4044:1B9A 07 pop es
|
||
4044:1B9B 5F pop di
|
||
4044:1B9C 5E pop si
|
||
4044:1B9D 5A pop dx
|
||
4044:1B9E 59 pop cx
|
||
4044:1B9F 5B pop bx
|
||
4044:1BA0 58 pop ax
|
||
4044:1BA1 2E: FF 2E 0004 jmp dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:1BA6 loc_163: ; xref 4044:20E9
|
||
4044:1BA6 ,9C pushf ; Push flags
|
||
4044:1BA7 58 pop ax
|
||
4044:1BA8 FA cli ; Disable interrupts
|
||
4044:1BA9 8B 26 0117 mov sp,data_42 ; (4044:0117=0)
|
||
4044:1BAD 8E 16 0115 mov ss,data_40 ; (4044:0115=0)
|
||
4044:1BB1 50 push ax
|
||
4044:1BB2 9D popf ; Pop flags
|
||
4044:1BB3 8B 3E 0111 mov di,data_37 ; (4044:0111=0)
|
||
4044:1BB7 8E DF mov ds,di
|
||
4044:1BB9 07 pop es
|
||
4044:1BBA 5F pop di
|
||
4044:1BBB 5E pop si
|
||
4044:1BBC 58 pop ax
|
||
4044:1BBD 58 pop ax
|
||
4044:1BBE 58 pop ax
|
||
4044:1BBF 58 pop ax
|
||
4044:1BC0 2E: FF 2E 0004 jmp dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1BD8, 20DC
|
||
;==========================================================================
|
||
|
||
4044:1BC5 sub_42 proc near
|
||
4044:1BC5 B1 0E mov cl,0Eh
|
||
4044:1BC7 8A 16 0349 mov dl,byte ptr ds:[349h] ; (4044:0349=36h)
|
||
4044:1BCB E8 03F9 call sub_55 ; (1FC7)
|
||
4044:1BCE B1 20 mov cl,20h ; ' '
|
||
4044:1BD0 8A 16 034A mov dl,byte ptr ds:[34Ah] ; (4044:034A=18h)
|
||
4044:1BD4 E8 03F0 call sub_55 ; (1FC7)
|
||
4044:1BD7 C3 retn
|
||
sub_42 endp
|
||
|
||
;* No entry point to code
|
||
4044:1BD8 E8 FFEA call sub_42 ; (1BC5)
|
||
4044:1BDB 80 3E 0146 01 cmp data_57,1 ; (4044:0146=0)
|
||
4044:1BE0 75 2D jne loc_166 ; Jump if not equal
|
||
4044:1BE2 80 3E 011C FF cmp byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:1BE7 74 07 je loc_164 ; Jump if equal
|
||
4044:1BE9 80 3E 011A FF cmp byte ptr data_45,0FFh ; (4044:011A=0)
|
||
4044:1BEE 75 06 jne loc_165 ; Jump if not equal
|
||
4044:1BF0 loc_164: ; xref 4044:1BE7
|
||
4044:1BF0 E8 030B call sub_47 ; (1EFE)
|
||
4044:1BF3 E9 FF91 ;* jmp loc_162 ; (1B87)
|
||
4044:1BF3 db 0E9h, 91h,0FFh ; Fixup - byte match
|
||
4044:1BF6 loc_165: ; xref 4044:1BEE
|
||
4044:1BF6 C6 06 011A FF mov byte ptr data_45,0FFh ; (4044:011A=0)
|
||
4044:1BFB E8 037A call sub_51 ; (1F78)
|
||
4044:1BFE 8B 16 0111 mov dx,data_37 ; (4044:0111=0)
|
||
4044:1C02 89 16 01EF mov word ptr ds:[1EFh],dx ; (4044:01EF=0BF01h)
|
||
4044:1C06 33 D2 xor dx,dx ; Zero register
|
||
4044:1C08 B1 2F mov cl,2Fh ; '/'
|
||
4044:1C0A E8 0334 call sub_48 ; (1F41)
|
||
4044:1C0D EB 11 jmp short loc_168 ; (1C20)
|
||
4044:1C0F loc_166: ; xref 4044:1BE0
|
||
4044:1C0F C6 06 011A FF mov byte ptr data_45,0FFh ; (4044:011A=0)
|
||
4044:1C14 FE 0E 011D dec byte ptr data_46+1 ; (4044:011D=0)
|
||
4044:1C18 74 03 jz loc_167 ; Jump if zero
|
||
4044:1C1A E8 02E1 call sub_47 ; (1EFE)
|
||
4044:1C1D loc_167: ; xref 4044:1C18
|
||
4044:1C1D E9 FF67 jmp loc_162 ; (1B87)
|
||
4044:1C20 loc_168: ; xref 4044:1C0D
|
||
4044:1C20 8B 16 01EF mov dx,word ptr ds:[1EFh] ; (4044:01EF=0BF01h)
|
||
4044:1C24 89 16 0111 mov data_37,dx ; (4044:0111=0)
|
||
4044:1C28 E8 051B call sub_59 ; (2146)
|
||
4044:1C2B B1 09 mov cl,9
|
||
4044:1C2D BA 0578 mov dx,578h
|
||
4044:1C30 E8 031A call sub_49 ; (1F4D)
|
||
4044:1C33 E8 02C8 call sub_47 ; (1EFE)
|
||
4044:1C36 E9 FF4E jmp loc_162 ; (1B87)
|
||
;* No entry point to code
|
||
4044:1C39 E8 0229 call sub_43 ; (1E65)
|
||
4044:1C3C 80 3E 0119 0D cmp data_44,0Dh ; (4044:0119=0)
|
||
4044:1C41 74 0E je loc_169 ; Jump if equal
|
||
4044:1C43 80 3E 0119 0A cmp data_44,0Ah ; (4044:0119=0)
|
||
4044:1C48 74 07 je loc_169 ; Jump if equal
|
||
4044:1C4A 80 3E 0119 1A cmp data_44,1Ah ; (4044:0119=0)
|
||
4044:1C4F 75 05 jne loc_170 ; Jump if not equal
|
||
4044:1C51 loc_169: ; xref 4044:1C41, 1C48
|
||
4044:1C51 50 push ax
|
||
4044:1C52 E8 0210 call sub_43 ; (1E65)
|
||
4044:1C55 58 pop ax
|
||
4044:1C56 loc_170: ; xref 4044:1C4F
|
||
4044:1C56 3C 0D cmp al,0Dh
|
||
4044:1C58 74 1A je loc_171 ; Jump if equal
|
||
4044:1C5A 3C 0A cmp al,0Ah
|
||
4044:1C5C 74 16 je loc_171 ; Jump if equal
|
||
4044:1C5E 3C 08 cmp al,8
|
||
4044:1C60 74 12 je loc_171 ; Jump if equal
|
||
4044:1C62 3C 09 cmp al,9
|
||
4044:1C64 74 0E je loc_171 ; Jump if equal
|
||
4044:1C66 3C 20 cmp al,20h ; ' '
|
||
4044:1C68 7D 0A jge loc_171 ; Jump if > or =
|
||
4044:1C6A 3C 10 cmp al,10h
|
||
4044:1C6C 75 09 jne loc_172 ; Jump if not equal
|
||
4044:1C6E F6 16 011E not data_48 ; (4044:011E=0)
|
||
4044:1C72 EB 03 jmp short loc_172 ; (1C77)
|
||
4044:1C74 loc_171: ; xref 4044:1C58, 1C5C, 1C60, 1C64
|
||
; 1C68
|
||
4044:1C74 E8 0499 call sub_58 ; (2110)
|
||
4044:1C77 loc_172: ; xref 4044:1C6C, 1C72
|
||
4044:1C77 8A D8 mov bl,al
|
||
4044:1C79 E9 035F jmp loc_218 ; (1FDB)
|
||
4044:1C7C loc_173: ; xref 4044:1E5A
|
||
4044:1C7C ,FE C2 inc dl
|
||
4044:1C7E 75 1F jnz loc_176 ; Jump if not zero
|
||
4044:1C80 loc_174: ; xref 4044:1CCA
|
||
4044:1C80 ,E8 0309 call sub_53 ; (1F8C)
|
||
4044:1C83 FE 06 0121 inc data_50 ; (4044:0121=0)
|
||
4044:1C87 75 07 jnz loc_175 ; Jump if not zero
|
||
4044:1C89 33 C0 xor ax,ax ; Zero register
|
||
4044:1C8B 8B D8 mov bx,ax
|
||
4044:1C8D E9 034B jmp loc_218 ; (1FDB)
|
||
4044:1C90 loc_175: ; xref 4044:1C87
|
||
4044:1C90 C6 06 0121 FF mov data_50,0FFh ; (4044:0121=0)
|
||
4044:1C95 E8 01CD call sub_43 ; (1E65)
|
||
4044:1C98 3C 1A cmp al,1Ah
|
||
4044:1C9A 75 38 jne loc_181 ; Jump if not equal
|
||
4044:1C9C E9 FEE8 jmp loc_162 ; (1B87)
|
||
4044:1C9F loc_176: ; xref 4044:1C7E
|
||
4044:1C9F FE C2 inc dl
|
||
4044:1CA1 75 23 jnz loc_179 ; Jump if not zero
|
||
4044:1CA3 E8 02E6 call sub_53 ; (1F8C)
|
||
4044:1CA6 FE 06 0121 inc data_50 ; (4044:0121=0)
|
||
4044:1CAA 75 07 jnz loc_177 ; Jump if not zero
|
||
4044:1CAC 33 C0 xor ax,ax ; Zero register
|
||
4044:1CAE 8B D8 mov bx,ax
|
||
4044:1CB0 E9 0328 jmp loc_218 ; (1FDB)
|
||
4044:1CB3 loc_177: ; xref 4044:1CAA
|
||
4044:1CB3 C6 06 0121 FF mov data_50,0FFh ; (4044:0121=0)
|
||
4044:1CB8 A0 0119 mov al,data_44 ; (4044:0119=0)
|
||
4044:1CBB 3C 1A cmp al,1Ah
|
||
4044:1CBD 75 03 jne loc_178 ; Jump if not equal
|
||
4044:1CBF E9 00BF jmp loc_192 ; (1D81)
|
||
4044:1CC2 loc_178: ; xref 4044:1CBD
|
||
4044:1CC2 B0 FF mov al,0FFh
|
||
4044:1CC4 EB 0E jmp short loc_181 ; (1CD4)
|
||
4044:1CC6 loc_179: ; xref 4044:1CA1
|
||
4044:1CC6 FE C2 inc dl
|
||
4044:1CC8 75 02 jnz loc_180 ; Jump if not zero
|
||
4044:1CCA EB B4 jmp short loc_174 ; (1C80)
|
||
4044:1CCC loc_180: ; xref 4044:1CC8
|
||
4044:1CCC C6 06 0121 FF mov data_50,0FFh ; (4044:0121=0)
|
||
4044:1CD1 E9 FEB3 jmp loc_162 ; (1B87)
|
||
4044:1CD4 loc_181: ; xref 4044:1C9A, 1CC4
|
||
4044:1CD4 8A D8 mov bl,al
|
||
4044:1CD6 E9 0302 jmp loc_218 ; (1FDB)
|
||
;* No entry point to code
|
||
4044:1CD9 80 3E 011A FF cmp byte ptr data_45,0FFh ; (4044:011A=0)
|
||
4044:1CDE 75 0A jne loc_182 ; Jump if not equal
|
||
4044:1CE0 80 3E 0146 01 cmp data_57,1 ; (4044:0146=0)
|
||
4044:1CE5 74 03 je loc_182 ; Jump if equal
|
||
4044:1CE7 E9 FE9D jmp loc_162 ; (1B87)
|
||
4044:1CEA loc_182: ; xref 4044:1CDE, 1CE5
|
||
4044:1CEA 8B DA mov bx,dx
|
||
4044:1CEC 06 push es
|
||
4044:1CED 8E 06 0111 mov es,data_37 ; (4044:0111=0)
|
||
4044:1CF1 B5 00 mov ch,0
|
||
4044:1CF3 83 FB 00 cmp bx,0
|
||
4044:1CF6 75 0C jne loc_183 ; Jump if not equal
|
||
4044:1CF8 83 3E 0111 00 cmp data_37,0 ; (4044:0111=0)
|
||
4044:1CFD 75 05 jne loc_183 ; Jump if not equal
|
||
4044:1CFF B1 34 mov cl,34h ; '4'
|
||
4044:1D01 E8 02C3 call sub_55 ; (1FC7)
|
||
4044:1D04 loc_183: ; xref 4044:1CF6, 1CFD, 1D56
|
||
4044:1D04 ,53 push bx
|
||
4044:1D05 51 push cx
|
||
4044:1D06 E8 015C call sub_43 ; (1E65)
|
||
4044:1D09 59 pop cx
|
||
4044:1D0A 5B pop bx
|
||
4044:1D0B 3C FF cmp al,0FFh
|
||
4044:1D0D 75 04 jne loc_184 ; Jump if not equal
|
||
4044:1D0F 07 pop es
|
||
4044:1D10 E9 FE74 jmp loc_162 ; (1B87)
|
||
4044:1D13 loc_184: ; xref 4044:1D0D
|
||
4044:1D13 3C 0D cmp al,0Dh
|
||
4044:1D15 74 45 je loc_189 ; Jump if equal
|
||
4044:1D17 3C 0A cmp al,0Ah
|
||
4044:1D19 74 41 je loc_189 ; Jump if equal
|
||
4044:1D1B 3C 03 cmp al,3
|
||
4044:1D1D 75 0B jne loc_185 ; Jump if not equal
|
||
4044:1D1F E8 0246 call sub_50 ; (1F68)
|
||
4044:1D22 07 pop es
|
||
4044:1D23 33 C9 xor cx,cx ; Zero register
|
||
4044:1D25 8B D1 mov dx,cx
|
||
4044:1D27 E8 0223 call sub_49 ; (1F4D)
|
||
4044:1D2A loc_185: ; xref 4044:1D1D
|
||
4044:1D2A 3C 1A cmp al,1Ah
|
||
4044:1D2C 75 08 jne loc_186 ; Jump if not equal
|
||
4044:1D2E 84 ED test ch,ch
|
||
4044:1D30 75 2A jnz loc_189 ; Jump if not zero
|
||
4044:1D32 07 pop es
|
||
4044:1D33 E9 FE51 jmp loc_162 ; (1B87)
|
||
4044:1D36 loc_186: ; xref 4044:1D2C
|
||
4044:1D36 E8 03D7 call sub_58 ; (2110)
|
||
4044:1D39 FE C5 inc ch
|
||
4044:1D3B 8B D3 mov dx,bx
|
||
4044:1D3D 42 inc dx
|
||
4044:1D3E 02 D5 add dl,ch
|
||
4044:1D40 73 02 jnc loc_187 ; Jump if carry=0
|
||
4044:1D42 FE C6 inc dh
|
||
4044:1D44 loc_187: ; xref 4044:1D40
|
||
4044:1D44 87 DA xchg bx,dx
|
||
4044:1D46 26: 88 07 mov es:[bx],al
|
||
4044:1D49 87 DA xchg bx,dx
|
||
4044:1D4B 26: 8A 0F mov cl,es:[bx]
|
||
4044:1D4E 84 C9 test cl,cl
|
||
4044:1D50 74 07 jz loc_188 ; Jump if zero
|
||
4044:1D52 3A CD cmp cl,ch
|
||
4044:1D54 74 03 je loc_188 ; Jump if equal
|
||
4044:1D56 E9 FFAB ;* jmp loc_183 ; (1D04)
|
||
4044:1D56 db 0E9h,0ABh,0FFh ; Fixup - byte match
|
||
4044:1D59 loc_188: ; xref 4044:1D50, 1D54
|
||
4044:1D59 E8 020C call sub_50 ; (1F68)
|
||
4044:1D5C loc_189: ; xref 4044:1D15, 1D19, 1D30
|
||
4044:1D5C 43 inc bx
|
||
4044:1D5D 26: 88 2F mov es:[bx],ch
|
||
4044:1D60 07 pop es
|
||
4044:1D61 E9 0277 jmp loc_218 ; (1FDB)
|
||
4044:1D64 loc_190: ; xref 4044:1E50
|
||
4044:1D64 ,E8 0225 call sub_53 ; (1F8C)
|
||
4044:1D67 FE 06 0121 inc data_50 ; (4044:0121=0)
|
||
4044:1D6B 75 07 jnz loc_191 ; Jump if not zero
|
||
4044:1D6D 33 C0 xor ax,ax ; Zero register
|
||
4044:1D6F 8B D8 mov bx,ax
|
||
4044:1D71 E9 0267 jmp loc_218 ; (1FDB)
|
||
4044:1D74 loc_191: ; xref 4044:1D6B
|
||
4044:1D74 A0 0119 mov al,data_44 ; (4044:0119=0)
|
||
4044:1D77 3C 1A cmp al,1Ah
|
||
4044:1D79 74 06 je loc_192 ; Jump if equal
|
||
4044:1D7B E8 0238 call sub_54 ; (1FB6)
|
||
4044:1D7E E9 025A jmp loc_218 ; (1FDB)
|
||
4044:1D81 loc_192: ; xref 4044:1CBF, 1D79
|
||
4044:1D81 C6 06 011C FF mov byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:1D86 E9 FDFE jmp loc_162 ; (1B87)
|
||
;* No entry point to code
|
||
4044:1D89 C6 06 011A 00 mov byte ptr data_45,0 ; (4044:011A=0)
|
||
4044:1D8E E9 FDF6 jmp loc_162 ; (1B87)
|
||
;* No entry point to code
|
||
4044:1D91 8E 06 0111 mov es,data_37 ; (4044:0111=0)
|
||
4044:1D95 8B DA mov bx,dx
|
||
4044:1D97 26: 8A 07 mov al,es:[bx]
|
||
4044:1D9A 3C 02 cmp al,2
|
||
4044:1D9C 74 03 je loc_193 ; Jump if equal
|
||
4044:1D9E E9 FD6E jmp loc_156 ; (1B0F)
|
||
4044:1DA1 loc_193: ; xref 4044:1D9C
|
||
4044:1DA1 26: 8A 47 01 mov al,es:[bx+1]
|
||
4044:1DA5 3C FF cmp al,0FFh
|
||
4044:1DA7 75 03 jne loc_194 ; Jump if not equal
|
||
4044:1DA9 E9 FD63 jmp loc_156 ; (1B0F)
|
||
4044:1DAC loc_194: ; xref 4044:1DA7
|
||
4044:1DAC 26: C6 47 02 FF mov byte ptr es:[bx+2],0FFh
|
||
4044:1DB1 E9 0227 jmp loc_218 ; (1FDB)
|
||
;* No entry point to code
|
||
4044:1DB4 8E 06 0111 mov es,data_37 ; (4044:0111=0)
|
||
4044:1DB8 8B DA mov bx,dx
|
||
4044:1DBA 26: 8A 07 mov al,es:[bx]
|
||
4044:1DBD 26: 8A 67 01 mov ah,es:[bx+1]
|
||
4044:1DC1 3C 81 cmp al,81h
|
||
4044:1DC3 75 07 jne loc_195 ; Jump if not equal
|
||
4044:1DC5 80 FC FF cmp ah,0FFh
|
||
4044:1DC8 74 02 je loc_195 ; Jump if equal
|
||
4044:1DCA EB 51 jmp short loc_200 ; (1E1D)
|
||
4044:1DCC loc_195: ; xref 4044:1DC3, 1DC8
|
||
4044:1DCC 3C 89 cmp al,89h
|
||
4044:1DCE 75 05 jne loc_196 ; Jump if not equal
|
||
4044:1DD0 80 FC FF cmp ah,0FFh
|
||
4044:1DD3 75 48 jne loc_200 ; Jump if not equal
|
||
4044:1DD5 loc_196: ; xref 4044:1DCE
|
||
4044:1DD5 83 C3 02 add bx,2
|
||
4044:1DD8 53 push bx
|
||
4044:1DD9 8A C8 mov cl,al
|
||
4044:1DDB 32 ED xor ch,ch ; Zero register
|
||
4044:1DDD 24 80 and al,80h
|
||
4044:1DDF 75 18 jnz loc_197 ; Jump if not zero
|
||
4044:1DE1 80 F9 05 cmp cl,5
|
||
4044:1DE4 77 36 ja loc_199 ; Jump if above
|
||
4044:1DE6 ,BB 01F3 mov bx,1F3h ; (4044:01F3=1Eh)
|
||
4044:1DE9 03 D9 add bx,cx
|
||
4044:1DEB 03 D9 add bx,cx
|
||
4044:1DED 03 D9 add bx,cx
|
||
4044:1DEF 8B 17 mov dx,[bx]
|
||
4044:1DF1 83 C3 02 add bx,2
|
||
4044:1DF4 8A 0F mov cl,[bx]
|
||
4044:1DF6 E9 0027 jmpn loc_201 ; (1E20)
|
||
4044:1DF9 loc_197: ; xref 4044:1DDF
|
||
4044:1DF9 80 E1 0F and cl,0Fh
|
||
4044:1DFC 80 F9 0A cmp cl,0Ah
|
||
4044:1DFF 77 1B ja loc_199 ; Jump if above
|
||
4044:1E01 80 F9 02 cmp cl,2
|
||
4044:1E04 74 16 je loc_199 ; Jump if equal
|
||
4044:1E06 72 01 jc loc_198 ; Jump if carry Set
|
||
4044:1E08 49 dec cx
|
||
4044:1E09 loc_198: ; xref 4044:1E06
|
||
4044:1E09 ,BB 0205 mov bx,205h ; (4044:0205=8Bh)
|
||
4044:1E0C 03 D9 add bx,cx
|
||
4044:1E0E 03 D9 add bx,cx
|
||
4044:1E10 03 D9 add bx,cx
|
||
4044:1E12 8B 17 mov dx,[bx]
|
||
4044:1E14 83 C3 02 add bx,2
|
||
4044:1E17 8A 0F mov cl,[bx]
|
||
4044:1E19 E9 0004 jmpn loc_201 ; (1E20)
|
||
4044:1E1C loc_199: ; xref 4044:1DE4, 1DFF, 1E04
|
||
4044:1E1C 5B pop bx
|
||
4044:1E1D loc_200: ; xref 4044:1DCA, 1DD3
|
||
4044:1E1D E9 FD67 jmp loc_162 ; (1B87)
|
||
4044:1E20 loc_201: ; xref 4044:1DF6, 1E19
|
||
4044:1E20 5B pop bx
|
||
4044:1E21 80 FC FF cmp ah,0FFh
|
||
4044:1E24 75 14 jne loc_202 ; Jump if not equal
|
||
4044:1E26 8B F3 mov si,bx
|
||
4044:1E28 8B FA mov di,dx
|
||
4044:1E2A 8C C2 mov dx,es
|
||
4044:1E2C 8C DB mov bx,ds
|
||
4044:1E2E 8E DA mov ds,dx
|
||
4044:1E30 8E C3 mov es,bx
|
||
4044:1E32 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:1E34 8E DB mov ds,bx
|
||
4044:1E36 8E C2 mov es,dx
|
||
4044:1E38 EB 06 jmp short loc_203 ; (1E40)
|
||
4044:1E3A loc_202: ; xref 4044:1E24
|
||
4044:1E3A 8B F2 mov si,dx
|
||
4044:1E3C 8B FB mov di,bx
|
||
4044:1E3E F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:1E40 loc_203: ; xref 4044:1E38
|
||
4044:1E40 E9 0198 jmp loc_218 ; (1FDB)
|
||
;* No entry point to code
|
||
4044:1E43 8E 06 0111 mov es,data_37 ; (4044:0111=0)
|
||
4044:1E47 8B FA mov di,dx
|
||
4044:1E49 26: 8A 05 mov al,es:[di]
|
||
4044:1E4C 3C 02 cmp al,2
|
||
4044:1E4E 75 03 jne loc_204 ; Jump if not equal
|
||
4044:1E50 E9 FF11 jmp loc_190 ; (1D64)
|
||
4044:1E53 loc_204: ; xref 4044:1E4E
|
||
4044:1E53 3C 03 cmp al,3
|
||
4044:1E55 75 06 jne loc_205 ; Jump if not equal
|
||
4044:1E57 BA 00FD mov dx,0FDh
|
||
4044:1E5A E9 FE1F jmp loc_173 ; (1C7C)
|
||
4044:1E5D loc_205: ; xref 4044:1E55
|
||
4044:1E5D C6 06 0121 FF mov data_50,0FFh ; (4044:0121=0)
|
||
4044:1E62 E9 FD22 jmp loc_162 ; (1B87)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1C39, 1C52, 1C95, 1D06, 1F68
|
||
;==========================================================================
|
||
|
||
4044:1E65 sub_43 proc near
|
||
4044:1E65 E8 004E call sub_45 ; (1EB6)
|
||
4044:1E68 8A 07 mov al,[bx]
|
||
4044:1E6A 3C 1A cmp al,1Ah
|
||
4044:1E6C 75 06 jne loc_206 ; Jump if not equal
|
||
4044:1E6E C6 06 011C FF mov byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:1E73 C3 retn
|
||
4044:1E74 loc_206: ; xref 4044:1E6C
|
||
4044:1E74 FE 06 0169 inc data_65 ; (4044:0169=0)
|
||
4044:1E78 80 3E 0169 80 cmp data_65,80h ; (4044:0169=0)
|
||
4044:1E7D 75 03 jne loc_207 ; Jump if not equal
|
||
4044:1E7F E8 0042 call sub_46 ; (1EC4)
|
||
4044:1E82 loc_207: ; xref 4044:1E7D
|
||
4044:1E82 3C 0D cmp al,0Dh
|
||
4044:1E84 74 09 je loc_208 ; Jump if equal
|
||
4044:1E86 3C 0A cmp al,0Ah
|
||
4044:1E88 75 10 jne loc_209 ; Jump if not equal
|
||
4044:1E8A E8 0029 call sub_45 ; (1EB6)
|
||
4044:1E8D EB 0B jmp short loc_209 ; (1E9A)
|
||
4044:1E8F loc_208: ; xref 4044:1E84
|
||
4044:1E8F E8 0024 call sub_45 ; (1EB6)
|
||
4044:1E92 80 3F 0A cmp byte ptr [bx],0Ah
|
||
4044:1E95 75 03 jne loc_209 ; Jump if not equal
|
||
4044:1E97 E8 000A call sub_44 ; (1EA4)
|
||
4044:1E9A loc_209: ; xref 4044:1E88, 1E8D, 1E95
|
||
4044:1E9A E8 0019 call sub_45 ; (1EB6)
|
||
4044:1E9D 8A 0F mov cl,[bx]
|
||
4044:1E9F 88 0E 0119 mov data_44,cl ; (4044:0119=0)
|
||
4044:1EA3 C3 retn
|
||
sub_43 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1E97
|
||
;==========================================================================
|
||
|
||
4044:1EA4 sub_44 proc near
|
||
4044:1EA4 FE 06 0169 inc data_65 ; (4044:0169=0)
|
||
4044:1EA8 80 3E 0169 80 cmp data_65,80h ; (4044:0169=0)
|
||
4044:1EAD 75 03 jne loc_210 ; Jump if not equal
|
||
4044:1EAF E8 0012 call sub_46 ; (1EC4)
|
||
4044:1EB2 loc_210: ; xref 4044:1EAD
|
||
4044:1EB2 E8 0001 call sub_45 ; (1EB6)
|
||
4044:1EB5 C3 retn
|
||
sub_44 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1E65, 1E8A, 1E8F, 1E9A, 1EB2
|
||
;==========================================================================
|
||
|
||
4044:1EB6 sub_45 proc near
|
||
4044:1EB6 BB 016B mov bx,16Bh
|
||
4044:1EB9 8A 26 0169 mov ah,data_65 ; (4044:0169=0)
|
||
4044:1EBD 02 DC add bl,ah
|
||
4044:1EBF 73 02 jnc loc_ret_211 ; Jump if carry=0
|
||
4044:1EC1 FE C7 inc bh
|
||
|
||
4044:1EC3 loc_ret_211: ; xref 4044:1EBF
|
||
4044:1EC3 C3 retn
|
||
sub_45 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1E7F, 1EAF, 20C7
|
||
;==========================================================================
|
||
|
||
4044:1EC4 sub_46 proc near
|
||
4044:1EC4 50 push ax
|
||
4044:1EC5 BA 0122 mov dx,122h
|
||
4044:1EC8 C6 06 0123 00 mov data_51,0 ; (4044:0123=0)
|
||
4044:1ECD E8 0126 call sub_56 ; (1FF6)
|
||
4044:1ED0 B1 2C mov cl,2Ch ; ','
|
||
4044:1ED2 B2 01 mov dl,1
|
||
4044:1ED4 E8 00F0 call sub_55 ; (1FC7)
|
||
4044:1ED7 BA 016B mov dx,16Bh
|
||
4044:1EDA E8 0226 call sub_57 ; (2103)
|
||
4044:1EDD B1 2D mov cl,2Dh ; '-'
|
||
4044:1EDF B2 FF mov dl,0FFh
|
||
4044:1EE1 E8 00E3 call sub_55 ; (1FC7)
|
||
4044:1EE4 B1 14 mov cl,14h
|
||
4044:1EE6 BA 0148 mov dx,148h
|
||
4044:1EE9 E8 0055 call sub_48 ; (1F41)
|
||
4044:1EEC C6 06 0169 00 mov data_65,0 ; (4044:0169=0)
|
||
4044:1EF1 BA 0122 mov dx,122h
|
||
4044:1EF4 C6 06 0123 FF mov data_51,0FFh ; (4044:0123=0)
|
||
4044:1EF9 E8 00FA call sub_56 ; (1FF6)
|
||
4044:1EFC 58 pop ax
|
||
4044:1EFD C3 retn
|
||
sub_46 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1BF0, 1C1A, 1C33, 20E2
|
||
;==========================================================================
|
||
|
||
4044:1EFE sub_47 proc near
|
||
4044:1EFE 2E: C6 06 0003 FF mov cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:1F04 C6 06 011C FF mov byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:1F09 B1 20 mov cl,20h ; ' '
|
||
4044:1F0B B2 FF mov dl,0FFh
|
||
4044:1F0D E8 0031 call sub_48 ; (1F41)
|
||
4044:1F10 53 push bx
|
||
4044:1F11 B1 20 mov cl,20h ; ' '
|
||
4044:1F13 8A 16 0147 mov dl,data_58 ; (4044:0147=0)
|
||
4044:1F17 E8 0027 call sub_48 ; (1F41)
|
||
4044:1F1A BA 0122 mov dx,122h
|
||
4044:1F1D C6 06 0123 00 mov data_51,0 ; (4044:0123=0)
|
||
4044:1F22 E8 00D1 call sub_56 ; (1FF6)
|
||
4044:1F25 B1 10 mov cl,10h
|
||
4044:1F27 BA 0148 mov dx,148h
|
||
4044:1F2A E8 0014 call sub_48 ; (1F41)
|
||
4044:1F2D BA 0122 mov dx,122h
|
||
4044:1F30 C6 06 0123 FF mov data_51,0FFh ; (4044:0123=0)
|
||
4044:1F35 E8 00BE call sub_56 ; (1FF6)
|
||
4044:1F38 B1 20 mov cl,20h ; ' '
|
||
4044:1F3A 5A pop dx
|
||
4044:1F3B E8 0003 call sub_48 ; (1F41)
|
||
4044:1F3E B0 1A mov al,1Ah
|
||
4044:1F40 C3 retn
|
||
sub_47 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1C0A, 1EE9, 1F0D, 1F17, 1F2A, 1F3B, 1F84
|
||
; 1FF8, 206F, 2099, 2105, 210C, 2129, 2137
|
||
;==========================================================================
|
||
|
||
4044:1F41 sub_48 proc near
|
||
4044:1F41 06 push es
|
||
4044:1F42 8E 06 0113 mov es,data_38 ; (4044:0113=0)
|
||
4044:1F46 2E: FF 1E 0004 call dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:1F4B 07 pop es
|
||
4044:1F4C C3 retn
|
||
sub_48 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1C30, 1D27, 2061, 214B
|
||
;==========================================================================
|
||
|
||
4044:1F4D sub_49 proc near
|
||
4044:1F4D 06 push es
|
||
4044:1F4E FF 36 0111 push data_37 ; (4044:0111=0)
|
||
4044:1F52 8E 06 0113 mov es,data_38 ; (4044:0113=0)
|
||
4044:1F56 26: FF 36 0030 push word ptr es:data_1e ; (0000:0030=3Ah)
|
||
4044:1F5B CD E0 int 0E0h ; ??INT Non-standard interrupt
|
||
4044:1F5D 26: 8F 06 0030 pop word ptr es:data_1e ; (0000:0030=3Ah)
|
||
4044:1F62 8F 06 0111 pop data_37 ; (4044:0111=0)
|
||
4044:1F66 07 pop es
|
||
4044:1F67 C3 retn
|
||
sub_49 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1D1F, 1D59
|
||
;==========================================================================
|
||
|
||
4044:1F68 sub_50 proc near
|
||
4044:1F68 loc_212: ; xref 4044:1F75
|
||
4044:1F68 E8 FEFA call sub_43 ; (1E65)
|
||
4044:1F6B 3C 0D cmp al,0Dh
|
||
4044:1F6D 74 08 je loc_ret_213 ; Jump if equal
|
||
4044:1F6F 3C 0A cmp al,0Ah
|
||
4044:1F71 74 04 je loc_ret_213 ; Jump if equal
|
||
4044:1F73 3C 1A cmp al,1Ah
|
||
4044:1F75 75 F1 jne loc_212 ; Jump if not equal
|
||
|
||
4044:1F77 loc_ret_213: ; xref 4044:1F6D, 1F71
|
||
4044:1F77 C3 retn
|
||
sub_50 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1BFB
|
||
;==========================================================================
|
||
|
||
4044:1F78 sub_51 proc near
|
||
4044:1F78 BA 01EB mov dx,1EBh
|
||
4044:1F7B E8 0185 call sub_57 ; (2103)
|
||
4044:1F7E C3 retn
|
||
sub_51 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1F8D
|
||
;==========================================================================
|
||
|
||
4044:1F7F sub_52 proc near
|
||
4044:1F7F B1 6D mov cl,6Dh ; 'm'
|
||
4044:1F81 BA FFFF mov dx,0FFFFh
|
||
4044:1F84 E8 FFBA call sub_48 ; (1F41)
|
||
4044:1F87 89 1E 011F mov data_49,bx ; (4044:011F=0)
|
||
4044:1F8B C3 retn
|
||
sub_52 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1C80, 1CA3, 1D64
|
||
;==========================================================================
|
||
|
||
4044:1F8C sub_53 proc near
|
||
4044:1F8C 52 push dx
|
||
4044:1F8D E8 FFEF call sub_52 ; (1F7F)
|
||
4044:1F90 A1 011F mov ax,data_49 ; (4044:011F=0)
|
||
4044:1F93 25 0300 and ax,300h
|
||
4044:1F96 75 02 jnz loc_214 ; Jump if not zero
|
||
4044:1F98 5A pop dx
|
||
4044:1F99 C3 retn
|
||
4044:1F9A loc_214: ; xref 4044:1F96
|
||
4044:1F9A 35 0300 xor ax,300h
|
||
4044:1F9D 75 05 jnz loc_215 ; Jump if not zero
|
||
4044:1F9F 5A pop dx
|
||
4044:1FA0 5A pop dx
|
||
4044:1FA1 E9 FBE3 jmp loc_162 ; (1B87)
|
||
4044:1FA4 loc_215: ; xref 4044:1F9D
|
||
4044:1FA4 25 0200 and ax,200h
|
||
4044:1FA7 75 07 jnz loc_216 ; Jump if not zero
|
||
4044:1FA9 5A pop dx
|
||
4044:1FAA 5A pop dx
|
||
4044:1FAB 33 C0 xor ax,ax ; Zero register
|
||
4044:1FAD E9 002B jmpn loc_218 ; (1FDB)
|
||
4044:1FB0 loc_216: ; xref 4044:1FA7
|
||
4044:1FB0 C6 06 0121 00 mov data_50,0 ; (4044:0121=0)
|
||
4044:1FB5 C3 retn
|
||
|
||
;==== External Entry into Subroutine ======================================
|
||
;
|
||
; Called from: 4044:1D7B
|
||
|
||
4044:1FB6 sub_54:
|
||
4044:1FB6 A1 011F mov ax,data_49 ; (4044:011F=0)
|
||
4044:1FB9 25 0001 and ax,1
|
||
4044:1FBC B3 01 mov bl,1
|
||
4044:1FBE 74 06 jz loc_ret_217 ; Jump if zero
|
||
4044:1FC0 3C 03 cmp al,3
|
||
4044:1FC2 74 02 je loc_ret_217 ; Jump if equal
|
||
4044:1FC4 B1 00 mov cl,0
|
||
|
||
4044:1FC6 loc_ret_217: ; xref 4044:1FBE, 1FC2
|
||
4044:1FC6 C3 retn
|
||
|
||
;==== External Entry into Subroutine ======================================
|
||
;
|
||
; Called from: 4044:1BCB, 1BD4, 1D01, 1ED4, 1EE1
|
||
|
||
4044:1FC7 sub_55:
|
||
4044:1FC7 06 push es
|
||
4044:1FC8 8E 06 0113 mov es,data_38 ; (4044:0113=0)
|
||
4044:1FCC 1E push ds
|
||
4044:1FCD 8B 1E 0111 mov bx,data_37 ; (4044:0111=0)
|
||
4044:1FD1 8E DB mov ds,bx
|
||
4044:1FD3 2E: FF 1E 0004 call dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:1FD8 1F pop ds
|
||
4044:1FD9 07 pop es
|
||
4044:1FDA C3 retn
|
||
4044:1FDB loc_218: ; xref 4044:1C79, 1C8D, 1CB0, 1CD6
|
||
; 1D61, 1D71, 1D7E, 1DB1
|
||
; 1E40, 1FAD, 2044, 2056
|
||
; 207E, 20C4, 20CA, 20DF
|
||
; 20EE
|
||
4044:1FDB ,9C pushf ; Push flags
|
||
4044:1FDC 5A pop dx
|
||
4044:1FDD FA cli ; Disable interrupts
|
||
4044:1FDE 8B 26 0117 mov sp,data_42 ; (4044:0117=0)
|
||
4044:1FE2 8E 16 0115 mov ss,data_40 ; (4044:0115=0)
|
||
4044:1FE6 52 push dx
|
||
4044:1FE7 9D popf ; Pop flags
|
||
4044:1FE8 8B 16 0111 mov dx,data_37 ; (4044:0111=0)
|
||
4044:1FEC 8E DA mov ds,dx
|
||
4044:1FEE 07 pop es
|
||
4044:1FEF 5F pop di
|
||
4044:1FF0 5E pop si
|
||
4044:1FF1 5A pop dx
|
||
4044:1FF2 5A pop dx
|
||
4044:1FF3 5A pop dx
|
||
4044:1FF4 5A pop dx
|
||
4044:1FF5 CB retf ; Return far
|
||
sub_53 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1ECD, 1EF9, 1F22, 1F35
|
||
;==========================================================================
|
||
|
||
4044:1FF6 sub_56 proc near
|
||
4044:1FF6 B1 31 mov cl,31h ; '1'
|
||
4044:1FF8 E8 FF46 call sub_48 ; (1F41)
|
||
4044:1FFB C3 retn
|
||
sub_56 endp
|
||
|
||
;* No entry point to code
|
||
4044:1FFC 8E 06 0111 mov es,data_37 ; (4044:0111=0)
|
||
4044:2000 8B FA mov di,dx
|
||
4044:2002 26: 8A 05 mov al,es:[di]
|
||
4044:2005 3C 80 cmp al,80h
|
||
4044:2007 74 7B je loc_230 ; Jump if equal
|
||
4044:2009 2E: 80 3E 0003 FF cmp cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:200F 74 04 je loc_219 ; Jump if equal
|
||
4044:2011 3C 81 cmp al,81h
|
||
4044:2013 74 26 je loc_225 ; Jump if equal
|
||
4044:2015 loc_219: ; xref 4044:200F
|
||
4044:2015 3C 82 cmp al,82h
|
||
4044:2017 75 03 jne loc_220 ; Jump if not equal
|
||
4044:2019 E9 002B jmpn loc_226 ; (2047)
|
||
4044:201C loc_220: ; xref 4044:2017
|
||
4044:201C 3C 83 cmp al,83h
|
||
4044:201E 75 03 jne loc_221 ; Jump if not equal
|
||
4044:2020 E9 00A4 jmp loc_232 ; (20C7)
|
||
4044:2023 loc_221: ; xref 4044:201E
|
||
4044:2023 3C AC cmp al,0ACh
|
||
4044:2025 75 03 jne loc_222 ; Jump if not equal
|
||
4044:2027 E9 00C7 jmp loc_236 ; (20F1)
|
||
4044:202A loc_222: ; xref 4044:2025
|
||
4044:202A 3C 8C cmp al,8Ch
|
||
4044:202C 75 03 jne loc_223 ; Jump if not equal
|
||
4044:202E E9 009C jmp loc_233 ; (20CD)
|
||
4044:2031 loc_223: ; xref 4044:202C
|
||
4044:2031 3C AB cmp al,0ABh
|
||
4044:2033 75 03 jne loc_224 ; Jump if not equal
|
||
4044:2035 E9 00B4 jmp loc_235 ; (20EC)
|
||
4044:2038 loc_224: ; xref 4044:2033
|
||
4044:2038 E9 FB4C jmp loc_162 ; (1B87)
|
||
4044:203B loc_225: ; xref 4044:2013
|
||
4044:203B C6 06 011C FF mov byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:2040 33 C9 xor cx,cx ; Zero register
|
||
4044:2042 8B D9 mov bx,cx
|
||
4044:2044 E9 FF94 ;* jmp loc_218 ; (1FDB)
|
||
4044:2044 db 0E9h, 94h,0FFh ; Fixup - byte match
|
||
4044:2047 loc_226: ; xref 4044:2019
|
||
4044:2047 2E: 80 3E 0003 FF cmp cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:204D 74 32 je loc_229 ; Jump if equal
|
||
4044:204F 80 3E 011C FF cmp byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:2054 75 03 jne loc_227 ; Jump if not equal
|
||
4044:2056 E9 FF82 ;* jmp loc_218 ; (1FDB)
|
||
4044:2056 db 0E9h, 82h,0FFh ; Fixup - byte match
|
||
4044:2059 loc_227: ; xref 4044:2054
|
||
4044:2059 E8 00EA call sub_59 ; (2146)
|
||
4044:205C BA 0598 mov dx,598h
|
||
4044:205F B1 09 mov cl,9
|
||
4044:2061 E8 FEE9 call sub_49 ; (1F4D)
|
||
4044:2064 ,BB 0149 mov bx,offset data_59+1 ; (4044:0149=0)
|
||
4044:2067 loc_228: ; xref 4044:2078
|
||
4044:2067 B1 02 mov cl,2
|
||
4044:2069 8A 17 mov dl,[bx]
|
||
4044:206B 80 E2 7F and dl,7Fh
|
||
4044:206E 53 push bx
|
||
4044:206F E8 FECF call sub_48 ; (1F41)
|
||
4044:2072 5B pop bx
|
||
4044:2073 43 inc bx
|
||
4044:2074 81 FB 0154 cmp bx,154h
|
||
4044:2078 75 ED jne loc_228 ; Jump if not equal
|
||
4044:207A 33 C9 xor cx,cx ; Zero register
|
||
4044:207C 8B D9 mov bx,cx
|
||
4044:207E E9 FF5A jmp loc_218 ; (1FDB)
|
||
4044:2081 loc_229: ; xref 4044:204D, 20D3
|
||
4044:2081 E9 FB03 jmp loc_162 ; (1B87)
|
||
4044:2084 loc_230: ; xref 4044:2007
|
||
4044:2084 57 push di
|
||
4044:2085 C7 06 01F1 0000 mov word ptr ds:[1F1h],0 ; (4044:01F1=214h)
|
||
4044:208B loc_231: ; xref 4044:20A6
|
||
4044:208B B1 31 mov cl,31h ; '1'
|
||
4044:208D ,BB 01F3 mov bx,1F3h ; (4044:01F3=1Eh)
|
||
4044:2090 03 1E 01F1 add bx,word ptr ds:[1F1h] ; (4044:01F1=214h)
|
||
4044:2094 8B 17 mov dx,[bx]
|
||
4044:2096 83 EA 02 sub dx,2
|
||
4044:2099 E8 FEA5 call sub_48 ; (1F41)
|
||
4044:209C 83 06 01F1 03 add word ptr ds:[1F1h],3 ; (4044:01F1=214h)
|
||
4044:20A1 83 3E 01F1 30 cmp word ptr ds:[1F1h],30h ; (4044:01F1=214h)
|
||
4044:20A6 75 E3 jne loc_231 ; Jump if not equal
|
||
4044:20A8 C6 06 034E 00 mov byte ptr ds:[34Eh],0 ; (4044:034E=0)
|
||
4044:20AD 2E: C6 06 0003 00 mov cs:data_16,0 ; (4044:0003=0)
|
||
4044:20B3 5F pop di
|
||
4044:20B4 06 push es
|
||
4044:20B5 8E 06 0111 mov es,data_37 ; (4044:0111=0)
|
||
4044:20B9 26: C7 45 02 0144 mov word ptr es:[di+2],144h
|
||
4044:20BF 26: 8C 5D 04 mov es:[di+4],ds
|
||
4044:20C3 07 pop es
|
||
4044:20C4 E9 FF14 jmp loc_218 ; (1FDB)
|
||
4044:20C7 loc_232: ; xref 4044:2020
|
||
4044:20C7 E8 FDFA call sub_46 ; (1EC4)
|
||
4044:20CA E9 FF0E jmp loc_218 ; (1FDB)
|
||
4044:20CD loc_233: ; xref 4044:202E
|
||
4044:20CD 2E: 80 3E 0003 FF cmp cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:20D3 74 AC je loc_229 ; Jump if equal
|
||
4044:20D5 80 3E 011C FF cmp byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:20DA 74 06 je loc_234 ; Jump if equal
|
||
4044:20DC E8 FAE6 call sub_42 ; (1BC5)
|
||
4044:20DF E9 FEF9 jmp loc_218 ; (1FDB)
|
||
4044:20E2 loc_234: ; xref 4044:20DA
|
||
4044:20E2 E8 FE19 call sub_47 ; (1EFE)
|
||
4044:20E5 33 C9 xor cx,cx ; Zero register
|
||
4044:20E7 8B D1 mov dx,cx
|
||
4044:20E9 E9 FABA jmp loc_163 ; (1BA6)
|
||
4044:20EC loc_235: ; xref 4044:2035
|
||
4044:20EC 8C DB mov bx,ds
|
||
4044:20EE E9 FEEA jmp loc_218 ; (1FDB)
|
||
4044:20F1 loc_236: ; xref 4044:2027
|
||
4044:20F1 80 3E 011C FF cmp byte ptr data_46,0FFh ; (4044:011C=0)
|
||
4044:20F6 75 08 jne loc_237 ; Jump if not equal
|
||
4044:20F8 2E: 80 3E 0003 FF cmp cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:20FE 74 00 je loc_237 ; Jump if equal
|
||
4044:2100 loc_237: ; xref 4044:20F6, 20FE
|
||
4044:2100 E9 FA84 jmp loc_162 ; (1B87)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1EDA, 1F7B
|
||
;==========================================================================
|
||
|
||
4044:2103 sub_57 proc near
|
||
4044:2103 B1 1A mov cl,1Ah
|
||
4044:2105 E8 FE39 call sub_48 ; (1F41)
|
||
4044:2108 B1 33 mov cl,33h ; '3'
|
||
4044:210A 8C DA mov dx,ds
|
||
4044:210C E8 FE32 call sub_48 ; (1F41)
|
||
4044:210F C3 retn
|
||
sub_57 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1C74, 1D36
|
||
;==========================================================================
|
||
|
||
4044:2110 sub_58 proc near
|
||
4044:2110 FF 36 0111 push data_37 ; (4044:0111=0)
|
||
4044:2114 8F 06 0141 pop data_54 ; (4044:0141=0)
|
||
4044:2118 50 push ax
|
||
4044:2119 53 push bx
|
||
4044:211A 51 push cx
|
||
4044:211B 50 push ax
|
||
4044:211C 8A D0 mov dl,al
|
||
4044:211E A0 0144 mov al,data_56 ; (4044:0144=0)
|
||
4044:2121 0A C0 or al,al ; Zero ?
|
||
4044:2123 74 07 jz loc_238 ; Jump if zero
|
||
4044:2125 8A C2 mov al,dl
|
||
4044:2127 B1 02 mov cl,2
|
||
4044:2129 E8 FE15 call sub_48 ; (1F41)
|
||
4044:212C loc_238: ; xref 4044:2123
|
||
4044:212C 58 pop ax
|
||
4044:212D 8A 1E 011E mov bl,data_48 ; (4044:011E=0)
|
||
4044:2131 0A DB or bl,bl ; Zero ?
|
||
4044:2133 74 05 jz loc_239 ; Jump if zero
|
||
4044:2135 B1 05 mov cl,5
|
||
4044:2137 E8 FE07 call sub_48 ; (1F41)
|
||
4044:213A loc_239: ; xref 4044:2133
|
||
4044:213A 59 pop cx
|
||
4044:213B 5B pop bx
|
||
4044:213C 58 pop ax
|
||
4044:213D FF 36 0141 push data_54 ; (4044:0141=0)
|
||
4044:2141 8F 06 0111 pop data_37 ; (4044:0111=0)
|
||
4044:2145 C3 retn
|
||
sub_58 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:1C28, 2059
|
||
;==========================================================================
|
||
|
||
4044:2146 sub_59 proc near
|
||
4044:2146 BA 013E mov dx,13Eh
|
||
4044:2149 B1 09 mov cl,9
|
||
4044:214B E8 FDFF call sub_49 ; (1F4D)
|
||
4044:214E C3 retn
|
||
sub_59 endp
|
||
|
||
4044:214F 0101[00] db 257 dup (0)
|
||
4044:2250 24 db '$'
|
||
4044:2251 67 6C 6F 62 61 6C db 'global $'
|
||
4044:2257 20 24
|
||
4044:2259 6C 6F 63 61 6C 20 db 'local $'
|
||
4044:225F 20 24
|
||
4044:2261 00 db 0
|
||
4044:2262 0007[00] db 7 dup (0)
|
||
4044:2269 1A 00 00 00 01 00 db 1Ah, 00h, 00h, 00h, 01h, 00h
|
||
4044:226F 00 00 FF 82 00 00 db 00h, 00h,0FFh, 82h, 00h, 00h
|
||
4044:2275 0019[00] db 25 dup (0)
|
||
4044:228E 0D 0A 24 00 00 AC db 0Dh, 0Ah, 24h, 00h, 00h,0ACh
|
||
4044:2294 01 00 00 00 01 db 01h, 00h, 00h, 00h, 01h
|
||
4044:2299 53 59 53 49 4E 20 db 'SYSIN SUB'
|
||
4044:229F 20 20 53 55 42
|
||
4044:22A4 0016[00] db 22 dup (0)
|
||
4044:22BA FF 03 db 0FFh, 03h
|
||
4044:22BC 007F[03] db 127 dup (3)
|
||
4044:233B 43 43 50 00 00 00 db 43h, 43h, 50h, 00h, 00h, 00h
|
||
4044:2341 00 00 25 02 01 28 db 00h, 00h, 25h, 02h, 01h, 28h
|
||
4044:2347 02 01 2B 02 01 2E db 02h, 01h, 2Bh, 02h, 01h, 2Eh
|
||
4044:234D 02 01 31 02 01 34 db 02h, 01h, 31h, 02h, 01h, 34h
|
||
4044:2353 02 05 3B 02 01 3E db 02h, 05h, 3Bh, 02h, 01h, 3Eh
|
||
4044:2359 02 01 41 02 01 44 db 02h, 01h, 41h, 02h, 01h, 44h
|
||
4044:235F 02 FF 45 03 02 49 db 02h,0FFh, 45h, 03h, 02h, 49h
|
||
4044:2365 03 FF 4A 04 04 50 db 03h,0FFh, 4Ah, 04h, 04h, 50h
|
||
4044:236B 04 01 53 04 01 56 db 04h, 01h, 53h, 04h, 01h, 56h
|
||
4044:2371 04 01 00 00 00 01 db 04h, 01h, 00h, 00h, 00h, 01h
|
||
4044:2377 00 00 02 00 00 03 db 00h, 00h, 02h, 00h, 00h, 03h
|
||
4044:237D 00 00 04 00 00 05 db 00h, 00h, 04h, 00h, 00h, 05h
|
||
4044:2383 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
|
||
4044:2389 80 00 00 81 00 00 db 80h, 00h, 00h, 81h, 00h, 00h
|
||
4044:238F 83 00 00 84 00 db 83h, 00h, 00h, 84h, 00h
|
||
4044:2394 00FF[00] db 255 dup (0)
|
||
4044:2493 85 00 00 00 86 00 db 85h, 00h, 00h, 00h, 86h, 00h
|
||
4044:2499 00FF[00] db 255 dup (0)
|
||
4044:2598 87 00 00 00 00 00 db 87h, 00h, 00h, 00h, 00h, 00h
|
||
4044:259E 88 00 00 89 00 00 db 88h, 00h, 00h, 89h, 00h, 00h
|
||
4044:25A4 8A 00 00 db 8Ah, 00h, 00h
|
||
4044:25A7 0121[00] db 289 dup (0)
|
||
4044:26C8 44 61 74 65 69 20 db 'Datei nicht gefunden: CCP.CMD', 0Dh
|
||
4044:26CE 6E 69 63 68 74 20
|
||
4044:26D4 67 65 66 75 6E 64
|
||
4044:26DA 65 6E 3A 20 43 43
|
||
4044:26E0 50 2E 43 4D 44 0D
|
||
4044:26E6 0A 24 db 0Ah, '$'
|
||
4044:26E8 48 6F 6C 65 20 76 db 'Hole von $'
|
||
4044:26EE 6F 6E 20 24
|
||
4044:26F2 008E[00] db 142 dup (0)
|
||
4044:2780 01 72 00 00 00 72 db 01h, 72h, 00h, 00h, 00h, 72h
|
||
4044:2786 00 00 00 02 62 00 db 00h, 00h, 00h, 02h, 62h, 00h
|
||
4044:278C 00 00 db 00h, 00h
|
||
4044:278E 62 db 62h
|
||
4044:278F 0070[00] db 112 dup (0)
|
||
4044:27FF 10 E9 1D 00 FF 00 db 10h,0E9h, 1Dh, 00h,0FFh, 00h
|
||
4044:2805 00 00 00 db 00h, 00h, 00h
|
||
4044:2808 50 55 54 20 20 20 db 'PUT '
|
||
4044:280E 20 20
|
||
4044:2810 00 db 0
|
||
4044:2811 000F[00] db 15 dup (0)
|
||
4044:2820 90 1E 50 8C D8 E8 db 90h, 1Eh, 50h, 8Ch,0D8h,0E8h
|
||
4044:2826 20 05 A3 03 01 58 db 20h, 05h,0A3h, 03h, 01h, 58h
|
||
4044:282C 56 57 06 52 51 53 db 56h, 57h, 06h, 52h, 51h, 53h
|
||
4044:2832 50 8C 06 05 01 80 db 50h, 8Ch, 06h, 05h, 01h, 80h
|
||
4044:2838 F9 3C 75 03 E9 C1 db 0F9h, 3Ch, 75h, 03h,0E9h,0C1h
|
||
4044:283E 00 80 3E 5A 05 FF db 00h, 80h, 3Eh, 5Ah, 05h,0FFh
|
||
4044:2844 75 03 E9 81 00 db 75h, 03h,0E9h, 81h, 00h
|
||
4044:2849 loc_240:
|
||
4044:2849 53 push bx
|
||
4044:284A 8A 1E 0554 mov bl,byte ptr ds:[554h] ; (4044:0554=44h)
|
||
4044:284E 80 FB 00 cmp bl,0
|
||
4044:2851 75 09 jne loc_241 ; Jump if not equal
|
||
4044:2853 2E: 88 1E 0003 mov cs:data_16,bl ; (4044:0003=0)
|
||
4044:2858 5B pop bx
|
||
4044:2859 E9 001A jmpn loc_242 ; (2876)
|
||
4044:285C loc_241: ; xref 4044:2851
|
||
4044:285C 5B pop bx
|
||
4044:285D E9 006A jmpn loc_253 ; (28CA)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:299E, 2A78
|
||
;==========================================================================
|
||
|
||
4044:2860 sub_60 proc near
|
||
4044:2860 53 push bx
|
||
4044:2861 51 push cx
|
||
4044:2862 52 push dx
|
||
4044:2863 ,BB 0019 mov bx,offset data_20 ; (4044:0019=0)
|
||
4044:2866 8C C1 mov cx,es
|
||
4044:2868 1E push ds
|
||
4044:2869 8E D9 mov ds,cx
|
||
4044:286B 8A 17 mov dl,[bx]
|
||
4044:286D 1F pop ds
|
||
4044:286E 88 16 014B mov data_62,dl ; (4044:014B=0)
|
||
4044:2872 5A pop dx
|
||
4044:2873 59 pop cx
|
||
4044:2874 5B pop bx
|
||
4044:2875 C3 retn
|
||
sub_60 endp
|
||
|
||
4044:2876 loc_242: ; xref 4044:2859
|
||
4044:2876 8A C1 mov al,cl
|
||
4044:2878 3C 02 cmp al,2
|
||
4044:287A 75 03 jne loc_243 ; Jump if not equal
|
||
4044:287C E9 018F jmp loc_268 ; (2A0E)
|
||
4044:287F loc_243: ; xref 4044:287A
|
||
4044:287F 3C 06 cmp al,6
|
||
4044:2881 75 03 jne loc_244 ; Jump if not equal
|
||
4044:2883 E9 01BB jmp loc_272 ; (2A41)
|
||
4044:2886 loc_244: ; xref 4044:2881
|
||
4044:2886 3C 09 cmp al,9
|
||
4044:2888 75 03 jne loc_245 ; Jump if not equal
|
||
4044:288A E9 01E4 jmp loc_275 ; (2A71)
|
||
4044:288D loc_245: ; xref 4044:2888
|
||
4044:288D 3C 05 cmp al,5
|
||
4044:288F 75 03 jne loc_246 ; Jump if not equal
|
||
4044:2891 E9 0216 jmp loc_280 ; (2AAA)
|
||
4044:2894 loc_246: ; xref 4044:288F
|
||
4044:2894 3C 6F cmp al,6Fh ; 'o'
|
||
4044:2896 75 03 jne loc_247 ; Jump if not equal
|
||
4044:2898 E9 023D jmp loc_283 ; (2AD8)
|
||
4044:289B loc_247: ; xref 4044:2896
|
||
4044:289B 3C 70 cmp al,70h ; 'p'
|
||
4044:289D 75 03 jne loc_248 ; Jump if not equal
|
||
4044:289F E9 0284 jmp loc_288 ; (2B26)
|
||
4044:28A2 loc_248: ; xref 4044:289D
|
||
4044:28A2 3C 0A cmp al,0Ah
|
||
4044:28A4 75 03 jne loc_249 ; Jump if not equal
|
||
4044:28A6 E9 0400 jmp loc_309 ; (2CA9)
|
||
4044:28A9 loc_249: ; xref 4044:28A4
|
||
4044:28A9 3C 01 cmp al,1
|
||
4044:28AB 75 03 jne loc_250 ; Jump if not equal
|
||
4044:28AD E9 0455 jmp loc_315 ; (2D05)
|
||
4044:28B0 loc_250: ; xref 4044:28AB
|
||
4044:28B0 3C 00 cmp al,0
|
||
4044:28B2 75 08 jne loc_251 ; Jump if not equal
|
||
4044:28B4 C6 06 0100 00 mov data_27,0 ; (4044:0100=0)
|
||
4044:28B9 E9 033D jmp loc_300 ; (2BF9)
|
||
4044:28BC loc_251: ; xref 4044:28B2
|
||
4044:28BC 3C 2F cmp al,2Fh ; '/'
|
||
4044:28BE 75 03 jne loc_252 ; Jump if not equal
|
||
4044:28C0 E9 0465 jmp loc_318 ; (2D28)
|
||
4044:28C3 loc_252: ; xref 4044:28BE
|
||
4044:28C3 3C 32 cmp al,32h ; '2'
|
||
4044:28C5 75 03 jne loc_253 ; Jump if not equal
|
||
4044:28C7 E9 02B4 jmp loc_293 ; (2B7E)
|
||
4044:28CA loc_253: ; xref 4044:285D, 28C5, 2992, 2A3B
|
||
; 2A6B, 2AA4, 2AD2, 2B20
|
||
; 2B78, 2B96, 2BBB, 2BF0
|
||
; 2C51, 2CB0, 2D25, 2D3D
|
||
; 2DCC
|
||
4044:28CA ,58 pop ax
|
||
4044:28CB 5B pop bx
|
||
4044:28CC 59 pop cx
|
||
4044:28CD 5A pop dx
|
||
4044:28CE 07 pop es
|
||
4044:28CF 5F pop di
|
||
4044:28D0 5E pop si
|
||
4044:28D1 1F pop ds
|
||
4044:28D2 2E: FF 2E 0004 jmp dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:28D7 loc_254: ; xref 4044:2ACF, 2B75
|
||
4044:28D7 ,58 pop ax
|
||
4044:28D8 5B pop bx
|
||
4044:28D9 5A pop dx
|
||
4044:28DA 5A pop dx
|
||
4044:28DB 07 pop es
|
||
4044:28DC 5F pop di
|
||
4044:28DD 5E pop si
|
||
4044:28DE 5A pop dx
|
||
4044:28DF 2E: FF 2E 0004 jmp dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:29A6, 29B7, 29C6, 29CD, 29E3, 29F2, 2A02
|
||
; 2A09, 2C15, 2CC8, 2DA7, 2DEF, 2E05, 2E0D
|
||
; 2E19, 2E35, 2E50, 2E5F, 2F0E, 2F15
|
||
;==========================================================================
|
||
|
||
4044:28E4 sub_61 proc near
|
||
4044:28E4 8E 06 0105 mov es,data_31 ; (4044:0105=0)
|
||
4044:28E8 2E: FF 1E 0004 call dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:28ED C3 retn
|
||
sub_61 endp
|
||
|
||
4044:28EE loc_255: ; xref 4044:2950, 2979, 2A3E, 2A6E
|
||
; 2AA7, 2AD5, 2B23, 2B7B
|
||
; 2BC1, 2BF6, 2D02, 2D22
|
||
4044:28EE ,58 pop ax
|
||
4044:28EF 5B pop bx
|
||
4044:28F0 59 pop cx
|
||
4044:28F1 5A pop dx
|
||
4044:28F2 07 pop es
|
||
4044:28F3 5F pop di
|
||
4044:28F4 5E pop si
|
||
4044:28F5 1F pop ds
|
||
4044:28F6 CB retf ; Return far
|
||
4044:28F7 loc_256: ; xref 4044:2927
|
||
4044:28F7 ,5A pop dx
|
||
4044:28F8 5A pop dx
|
||
4044:28F9 59 pop cx
|
||
4044:28FA 5A pop dx
|
||
4044:28FB 07 pop es
|
||
4044:28FC 5F pop di
|
||
4044:28FD 5E pop si
|
||
4044:28FE 1F pop ds
|
||
4044:28FF CB retf
|
||
;* No entry point to code
|
||
4044:2900 E8 0566 call sub_78 ; (2E69)
|
||
4044:2903 8B F2 mov si,dx
|
||
4044:2905 E8 0438 call sub_65 ; (2D40)
|
||
4044:2908 8A 04 mov al,[si]
|
||
4044:290A E8 043B call sub_66 ; (2D48)
|
||
4044:290D 3C 84 cmp al,84h
|
||
4044:290F 75 19 jne loc_257 ; Jump if not equal
|
||
4044:2911 46 inc si
|
||
4044:2912 46 inc si
|
||
4044:2913 BB 0550 mov bx,550h
|
||
4044:2916 8C D9 mov cx,ds
|
||
4044:2918 E8 0425 call sub_65 ; (2D40)
|
||
4044:291B 89 0C mov [si],cx
|
||
4044:291D 46 inc si
|
||
4044:291E 46 inc si
|
||
4044:291F 89 1C mov [si],bx
|
||
4044:2921 E8 0424 call sub_66 ; (2D48)
|
||
4044:2924 E8 057D call sub_79 ; (2EA4)
|
||
4044:2927 E9 FFCD ;* jmp loc_256 ; (28F7)
|
||
4044:2927 db 0E9h,0CDh,0FFh ; Fixup - byte match
|
||
4044:292A loc_257: ; xref 4044:290F
|
||
4044:292A 3C 85 cmp al,85h
|
||
4044:292C 75 25 jne loc_258 ; Jump if not equal
|
||
4044:292E 80 3E 0550 00 cmp byte ptr ds:[550h],0 ; (4044:0550=0E8h)
|
||
4044:2933 74 1E je loc_258 ; Jump if equal
|
||
4044:2935 80 3E 055A FF cmp byte ptr ds:[55Ah],0FFh ; (4044:055A=0FFh)
|
||
4044:293A 74 17 je loc_258 ; Jump if equal
|
||
4044:293C E8 0591 call sub_80 ; (2ED0)
|
||
4044:293F E8 0053 call sub_62 ; (2995)
|
||
4044:2942 2E: C6 06 0003 FF mov cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:2948 C6 06 0554 FF mov byte ptr ds:[554h],0FFh ; (4044:0554=44h)
|
||
4044:294D E8 0554 call sub_79 ; (2EA4)
|
||
4044:2950 E9 FF9B ;* jmp loc_255 ; (28EE)
|
||
4044:2950 db 0E9h, 9Bh,0FFh ; Fixup - byte match
|
||
4044:2953 loc_258: ; xref 4044:292C, 2933, 293A
|
||
4044:2953 3C 89 cmp al,89h
|
||
4044:2955 75 25 jne loc_259 ; Jump if not equal
|
||
4044:2957 80 3E 0551 00 cmp byte ptr ds:[551h],0 ; (4044:0551=0EAh)
|
||
4044:295C 74 1E je loc_259 ; Jump if equal
|
||
4044:295E 80 3E 055A FF cmp byte ptr ds:[55Ah],0FFh ; (4044:055A=0FFh)
|
||
4044:2963 74 17 je loc_259 ; Jump if equal
|
||
4044:2965 E8 0568 call sub_80 ; (2ED0)
|
||
4044:2968 E8 002A call sub_62 ; (2995)
|
||
4044:296B 2E: C6 06 0003 FF mov cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:2971 C6 06 0554 FF mov byte ptr ds:[554h],0FFh ; (4044:0554=44h)
|
||
4044:2976 E8 052B call sub_79 ; (2EA4)
|
||
4044:2979 E9 FF72 jmp loc_255 ; (28EE)
|
||
4044:297C loc_259: ; xref 4044:2955, 295C, 2963
|
||
4044:297C 3C 8C cmp al,8Ch
|
||
4044:297E 75 0F jne loc_260 ; Jump if not equal
|
||
4044:2980 80 3E 055A FF cmp byte ptr ds:[55Ah],0FFh ; (4044:055A=0FFh)
|
||
4044:2985 74 08 je loc_260 ; Jump if equal
|
||
4044:2987 C6 06 0100 FF mov data_27,0FFh ; (4044:0100=0)
|
||
4044:298C E9 026D jmp loc_301 ; (2BFC)
|
||
4044:298F loc_260: ; xref 4044:297E, 2985
|
||
4044:298F E8 0512 call sub_79 ; (2EA4)
|
||
4044:2992 E9 FF35 jmp loc_253 ; (28CA)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:293F, 2968
|
||
;==========================================================================
|
||
|
||
4044:2995 sub_62 proc near
|
||
4044:2995 2E: 80 3E 0003 00 cmp cs:data_16,0 ; (4044:0003=0)
|
||
4044:299B 75 70 jne loc_ret_267 ; Jump if not equal
|
||
4044:299D 50 push ax
|
||
4044:299E E8 FEBF call sub_60 ; (2860)
|
||
4044:29A1 BA 05FE mov dx,5FEh
|
||
4044:29A4 B1 09 mov cl,9
|
||
4044:29A6 E8 FF3B call sub_61 ; (28E4)
|
||
4044:29A9 8A 16 055A mov dl,byte ptr ds:[55Ah] ; (4044:055A=0FFh)
|
||
4044:29AD 80 FA 00 cmp dl,0
|
||
4044:29B0 74 0B je loc_261 ; Jump if equal
|
||
4044:29B2 80 C2 40 add dl,40h ; '@'
|
||
4044:29B5 B1 02 mov cl,2
|
||
4044:29B7 E8 FF2A call sub_61 ; (28E4)
|
||
4044:29BA E9 000C jmpn loc_262 ; (29C9)
|
||
4044:29BD loc_261: ; xref 4044:29B0
|
||
4044:29BD B1 19 mov cl,19h
|
||
4044:29BF 8A D3 mov dl,bl
|
||
4044:29C1 80 C2 40 add dl,40h ; '@'
|
||
4044:29C4 B1 02 mov cl,2
|
||
4044:29C6 E8 FF1B call sub_61 ; (28E4)
|
||
4044:29C9 loc_262: ; xref 4044:29BA
|
||
4044:29C9 B2 3A mov dl,3Ah ; ':'
|
||
4044:29CB B1 02 mov cl,2
|
||
4044:29CD E8 FF14 call sub_61 ; (28E4)
|
||
4044:29D0 B0 00 mov al,0
|
||
4044:29D2 ,BB 055A mov bx,55Ah ; (4044:055A=0FFh)
|
||
4044:29D5 loc_263: ; xref 4044:29FB
|
||
4044:29D5 ,FE C0 inc al
|
||
4044:29D7 43 inc bx
|
||
4044:29D8 80 3F 20 cmp byte ptr [bx],20h ; ' '
|
||
4044:29DB 74 0B je loc_264 ; Jump if equal
|
||
4044:29DD 50 push ax
|
||
4044:29DE 53 push bx
|
||
4044:29DF B1 02 mov cl,2
|
||
4044:29E1 8A 17 mov dl,[bx]
|
||
4044:29E3 E8 FEFE call sub_61 ; (28E4)
|
||
4044:29E6 5B pop bx
|
||
4044:29E7 58 pop ax
|
||
4044:29E8 loc_264: ; xref 4044:29DB
|
||
4044:29E8 3C 08 cmp al,8
|
||
4044:29EA 75 0B jne loc_265 ; Jump if not equal
|
||
4044:29EC 50 push ax
|
||
4044:29ED 53 push bx
|
||
4044:29EE B1 02 mov cl,2
|
||
4044:29F0 B2 2E mov dl,2Eh ; '.'
|
||
4044:29F2 E8 FEEF call sub_61 ; (28E4)
|
||
4044:29F5 5B pop bx
|
||
4044:29F6 58 pop ax
|
||
4044:29F7 loc_265: ; xref 4044:29EA
|
||
4044:29F7 3C 0B cmp al,0Bh
|
||
4044:29F9 74 03 je loc_266 ; Jump if equal
|
||
4044:29FB E9 FFD7 ;* jmp loc_263 ; (29D5)
|
||
4044:29FB db 0E9h,0D7h,0FFh ; Fixup - byte match
|
||
4044:29FE loc_266: ; xref 4044:29F9
|
||
4044:29FE B1 02 mov cl,2
|
||
4044:2A00 B2 0D mov dl,0Dh
|
||
4044:2A02 E8 FEDF call sub_61 ; (28E4)
|
||
4044:2A05 B1 02 mov cl,2
|
||
4044:2A07 B2 0A mov dl,0Ah
|
||
4044:2A09 E8 FED8 call sub_61 ; (28E4)
|
||
4044:2A0C 58 pop ax
|
||
|
||
4044:2A0D loc_ret_267: ; xref 4044:299B
|
||
4044:2A0D C3 retn
|
||
sub_62 endp
|
||
|
||
4044:2A0E loc_268: ; xref 4044:287C
|
||
4044:2A0E 80 3E 0550 00 cmp byte ptr ds:[550h],0 ; (4044:0550=0E8h)
|
||
4044:2A13 74 26 je loc_270 ; Jump if equal
|
||
4044:2A15 E8 0451 call sub_78 ; (2E69)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2F04
|
||
;==========================================================================
|
||
|
||
4044:2A18 sub_63 proc near
|
||
4044:2A18 8A CA mov cl,dl
|
||
4044:2A1A E8 035B call sub_68 ; (2D78)
|
||
4044:2A1D E8 032E call sub_67 ; (2D4E)
|
||
4044:2A20 88 0F mov [bx],cl
|
||
4044:2A22 80 3E 0102 01 cmp byte ptr data_29,1 ; (4044:0102=0)
|
||
4044:2A27 75 01 jne loc_269 ; Jump if not equal
|
||
4044:2A29 C3 retn
|
||
4044:2A2A loc_269: ; xref 4044:2A27
|
||
4044:2A2A E8 0477 call sub_79 ; (2EA4)
|
||
4044:2A2D 80 3E 014A 00 cmp data_61,0 ; (4044:014A=0)
|
||
4044:2A32 75 07 jne loc_270 ; Jump if not equal
|
||
4044:2A34 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2A39 74 03 je loc_271 ; Jump if equal
|
||
4044:2A3B loc_270: ; xref 4044:2A13, 2A32
|
||
4044:2A3B E9 FE8C jmp loc_253 ; (28CA)
|
||
4044:2A3E loc_271: ; xref 4044:2A39
|
||
4044:2A3E E9 FEAD jmp loc_255 ; (28EE)
|
||
sub_63 endp
|
||
|
||
4044:2A41 loc_272: ; xref 4044:2883
|
||
4044:2A41 80 3E 0550 00 cmp byte ptr ds:[550h],0 ; (4044:0550=0E8h)
|
||
4044:2A46 74 23 je loc_273 ; Jump if equal
|
||
4044:2A48 8A CA mov cl,dl
|
||
4044:2A4A FE C2 inc dl
|
||
4044:2A4C 74 1D jz loc_273 ; Jump if zero
|
||
4044:2A4E FE C2 inc dl
|
||
4044:2A50 74 19 jz loc_273 ; Jump if zero
|
||
4044:2A52 FE C2 inc dl
|
||
4044:2A54 74 15 jz loc_273 ; Jump if zero
|
||
4044:2A56 E8 0410 call sub_78 ; (2E69)
|
||
4044:2A59 E8 031C call sub_68 ; (2D78)
|
||
4044:2A5C E8 02EF call sub_67 ; (2D4E)
|
||
4044:2A5F 88 0F mov [bx],cl
|
||
4044:2A61 E8 0440 call sub_79 ; (2EA4)
|
||
4044:2A64 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2A69 74 03 je loc_274 ; Jump if equal
|
||
4044:2A6B loc_273: ; xref 4044:2A46, 2A4C, 2A50, 2A54
|
||
4044:2A6B E9 FE5C jmp loc_253 ; (28CA)
|
||
4044:2A6E loc_274: ; xref 4044:2A69
|
||
4044:2A6E E9 FE7D jmp loc_255 ; (28EE)
|
||
4044:2A71 loc_275: ; xref 4044:288A
|
||
4044:2A71 80 3E 0550 00 cmp byte ptr ds:[550h],0 ; (4044:0550=0E8h)
|
||
4044:2A76 74 2C je loc_278 ; Jump if equal
|
||
4044:2A78 E8 FDE5 call sub_60 ; (2860)
|
||
4044:2A7B E8 03EB call sub_78 ; (2E69)
|
||
4044:2A7E loc_276: ; xref 4044:2A97
|
||
4044:2A7E ,8B DA mov bx,dx
|
||
4044:2A80 E8 02BD call sub_65 ; (2D40)
|
||
4044:2A83 8A 0F mov cl,[bx]
|
||
4044:2A85 E8 02C0 call sub_66 ; (2D48)
|
||
4044:2A88 3A 0E 014B cmp cl,data_62 ; (4044:014B=0)
|
||
4044:2A8C 74 0C je loc_277 ; Jump if equal
|
||
4044:2A8E E8 02E7 call sub_68 ; (2D78)
|
||
4044:2A91 E8 02BA call sub_67 ; (2D4E)
|
||
4044:2A94 88 0F mov [bx],cl
|
||
4044:2A96 42 inc dx
|
||
4044:2A97 E9 FFE4 ;* jmp loc_276 ; (2A7E)
|
||
4044:2A97 db 0E9h,0E4h,0FFh ; Fixup - byte match
|
||
4044:2A9A loc_277: ; xref 4044:2A8C
|
||
4044:2A9A E8 0407 call sub_79 ; (2EA4)
|
||
4044:2A9D 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2AA2 74 03 je loc_279 ; Jump if equal
|
||
4044:2AA4 loc_278: ; xref 4044:2A76
|
||
4044:2AA4 E9 FE23 jmp loc_253 ; (28CA)
|
||
4044:2AA7 loc_279: ; xref 4044:2AA2
|
||
4044:2AA7 E9 FE44 jmp loc_255 ; (28EE)
|
||
4044:2AAA loc_280: ; xref 4044:2891
|
||
4044:2AAA 80 3E 0551 00 cmp byte ptr ds:[551h],0 ; (4044:0551=0EAh)
|
||
4044:2AAF 74 21 je loc_281 ; Jump if equal
|
||
4044:2AB1 E8 03B5 call sub_78 ; (2E69)
|
||
4044:2AB4 8A CA mov cl,dl
|
||
4044:2AB6 E8 02BF call sub_68 ; (2D78)
|
||
4044:2AB9 E8 0292 call sub_67 ; (2D4E)
|
||
4044:2ABC 88 0F mov [bx],cl
|
||
4044:2ABE E8 03E3 call sub_79 ; (2EA4)
|
||
4044:2AC1 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2AC6 74 0D je loc_282 ; Jump if equal
|
||
4044:2AC8 E8 038A call sub_77 ; (2E55)
|
||
4044:2ACB 74 08 jz loc_282 ; Jump if zero
|
||
4044:2ACD B1 02 mov cl,2
|
||
4044:2ACF E9 FE05 jmp loc_254 ; (28D7)
|
||
4044:2AD2 loc_281: ; xref 4044:2AAF
|
||
4044:2AD2 E9 FDF5 jmp loc_253 ; (28CA)
|
||
4044:2AD5 loc_282: ; xref 4044:2AC6, 2ACB
|
||
4044:2AD5 E9 FE16 jmp loc_255 ; (28EE)
|
||
4044:2AD8 loc_283: ; xref 4044:2898
|
||
4044:2AD8 80 3E 0550 00 cmp byte ptr ds:[550h],0 ; (4044:0550=0E8h)
|
||
4044:2ADD 74 41 je loc_286 ; Jump if equal
|
||
4044:2ADF E8 0387 call sub_78 ; (2E69)
|
||
4044:2AE2 8B DA mov bx,dx
|
||
4044:2AE4 E8 0259 call sub_65 ; (2D40)
|
||
4044:2AE7 8B 57 02 mov dx,[bx+2]
|
||
4044:2AEA 8B 47 04 mov ax,[bx+4]
|
||
4044:2AED BE 0000 mov si,0
|
||
4044:2AF0 8B 1F mov bx,[bx]
|
||
4044:2AF2 E8 0253 call sub_66 ; (2D48)
|
||
4044:2AF5 loc_284: ; xref 4044:2B13
|
||
4044:2AF5 ,48 dec ax
|
||
4044:2AF6 78 1E js loc_285 ; Jump if sign=1
|
||
4044:2AF8 1E push ds
|
||
4044:2AF9 8E DA mov ds,dx
|
||
4044:2AFB 53 push bx
|
||
4044:2AFC 03 DE add bx,si
|
||
4044:2AFE 8A 0F mov cl,[bx]
|
||
4044:2B00 5B pop bx
|
||
4044:2B01 1F pop ds
|
||
4044:2B02 56 push si
|
||
4044:2B03 53 push bx
|
||
4044:2B04 50 push ax
|
||
4044:2B05 52 push dx
|
||
4044:2B06 E8 026F call sub_68 ; (2D78)
|
||
4044:2B09 E8 0242 call sub_67 ; (2D4E)
|
||
4044:2B0C 5A pop dx
|
||
4044:2B0D 58 pop ax
|
||
4044:2B0E 88 0F mov [bx],cl
|
||
4044:2B10 5B pop bx
|
||
4044:2B11 5E pop si
|
||
4044:2B12 46 inc si
|
||
4044:2B13 E9 FFDF ;* jmp loc_284 ; (2AF5)
|
||
4044:2B13 db 0E9h,0DFh,0FFh ; Fixup - byte match
|
||
4044:2B16 loc_285: ; xref 4044:2AF6
|
||
4044:2B16 E8 038B call sub_79 ; (2EA4)
|
||
4044:2B19 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2B1E 74 03 je loc_287 ; Jump if equal
|
||
4044:2B20 loc_286: ; xref 4044:2ADD
|
||
4044:2B20 E9 FDA7 jmp loc_253 ; (28CA)
|
||
4044:2B23 loc_287: ; xref 4044:2B1E
|
||
4044:2B23 E9 FDC8 jmp loc_255 ; (28EE)
|
||
4044:2B26 loc_288: ; xref 4044:289F
|
||
4044:2B26 80 3E 0551 00 cmp byte ptr ds:[551h],0 ; (4044:0551=0EAh)
|
||
4044:2B2B 74 4B je loc_291 ; Jump if equal
|
||
4044:2B2D E8 0339 call sub_78 ; (2E69)
|
||
4044:2B30 8B DA mov bx,dx
|
||
4044:2B32 E8 020B call sub_65 ; (2D40)
|
||
4044:2B35 8B 57 02 mov dx,[bx+2]
|
||
4044:2B38 8B 47 04 mov ax,[bx+4]
|
||
4044:2B3B BE 0000 mov si,0
|
||
4044:2B3E 8B 1F mov bx,[bx]
|
||
4044:2B40 E8 0205 call sub_66 ; (2D48)
|
||
4044:2B43 loc_289: ; xref 4044:2B61
|
||
4044:2B43 ,48 dec ax
|
||
4044:2B44 78 1E js loc_290 ; Jump if sign=1
|
||
4044:2B46 1E push ds
|
||
4044:2B47 8E DA mov ds,dx
|
||
4044:2B49 53 push bx
|
||
4044:2B4A 03 DE add bx,si
|
||
4044:2B4C 8A 0F mov cl,[bx]
|
||
4044:2B4E 5B pop bx
|
||
4044:2B4F 1F pop ds
|
||
4044:2B50 56 push si
|
||
4044:2B51 53 push bx
|
||
4044:2B52 52 push dx
|
||
4044:2B53 50 push ax
|
||
4044:2B54 E8 0221 call sub_68 ; (2D78)
|
||
4044:2B57 E8 01F4 call sub_67 ; (2D4E)
|
||
4044:2B5A 58 pop ax
|
||
4044:2B5B 5A pop dx
|
||
4044:2B5C 88 0F mov [bx],cl
|
||
4044:2B5E 5B pop bx
|
||
4044:2B5F 5E pop si
|
||
4044:2B60 46 inc si
|
||
4044:2B61 E9 FFDF ;* jmp loc_289 ; (2B43)
|
||
4044:2B61 db 0E9h,0DFh,0FFh ; Fixup - byte match
|
||
4044:2B64 loc_290: ; xref 4044:2B44
|
||
4044:2B64 E8 033D call sub_79 ; (2EA4)
|
||
4044:2B67 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2B6C 74 0D je loc_292 ; Jump if equal
|
||
4044:2B6E E8 02E4 call sub_77 ; (2E55)
|
||
4044:2B71 74 08 jz loc_292 ; Jump if zero
|
||
4044:2B73 B1 6F mov cl,6Fh ; 'o'
|
||
4044:2B75 E9 FD5F jmp loc_254 ; (28D7)
|
||
4044:2B78 loc_291: ; xref 4044:2B2B
|
||
4044:2B78 E9 FD4F jmp loc_253 ; (28CA)
|
||
4044:2B7B loc_292: ; xref 4044:2B6C, 2B71
|
||
4044:2B7B E9 FD70 jmp loc_255 ; (28EE)
|
||
4044:2B7E loc_293: ; xref 4044:28C7
|
||
4044:2B7E E8 02E8 call sub_78 ; (2E69)
|
||
4044:2B81 E8 01BC call sub_65 ; (2D40)
|
||
4044:2B84 8B DA mov bx,dx
|
||
4044:2B86 8A 07 mov al,[bx]
|
||
4044:2B88 E8 01BD call sub_66 ; (2D48)
|
||
4044:2B8B 3C 04 cmp al,4
|
||
4044:2B8D 74 0A je loc_294 ; Jump if equal
|
||
4044:2B8F 3C 05 cmp al,5
|
||
4044:2B91 74 31 je loc_297 ; Jump if equal
|
||
4044:2B93 E8 030E call sub_79 ; (2EA4)
|
||
4044:2B96 E9 FD31 jmp loc_253 ; (28CA)
|
||
4044:2B99 loc_294: ; xref 4044:2B8D
|
||
4044:2B99 80 3E 0550 00 cmp byte ptr ds:[550h],0 ; (4044:0550=0E8h)
|
||
4044:2B9E 74 18 je loc_295 ; Jump if equal
|
||
4044:2BA0 43 inc bx
|
||
4044:2BA1 E8 019C call sub_65 ; (2D40)
|
||
4044:2BA4 8B 0F mov cx,[bx]
|
||
4044:2BA6 E8 019F call sub_66 ; (2D48)
|
||
4044:2BA9 E8 01CC call sub_68 ; (2D78)
|
||
4044:2BAC E8 019F call sub_67 ; (2D4E)
|
||
4044:2BAF 88 0F mov [bx],cl
|
||
4044:2BB1 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2BB6 74 06 je loc_296 ; Jump if equal
|
||
4044:2BB8 loc_295: ; xref 4044:2B9E
|
||
4044:2BB8 E8 02E9 call sub_79 ; (2EA4)
|
||
4044:2BBB E9 FD0C jmp loc_253 ; (28CA)
|
||
4044:2BBE loc_296: ; xref 4044:2BB6
|
||
4044:2BBE E8 02E3 call sub_79 ; (2EA4)
|
||
4044:2BC1 E9 FD2A jmp loc_255 ; (28EE)
|
||
4044:2BC4 loc_297: ; xref 4044:2B91
|
||
4044:2BC4 80 3E 0551 00 cmp byte ptr ds:[551h],0 ; (4044:0551=0EAh)
|
||
4044:2BC9 74 22 je loc_298 ; Jump if equal
|
||
4044:2BCB 43 inc bx
|
||
4044:2BCC 53 push bx
|
||
4044:2BCD E8 0170 call sub_65 ; (2D40)
|
||
4044:2BD0 8B 0F mov cx,[bx]
|
||
4044:2BD2 E8 0173 call sub_66 ; (2D48)
|
||
4044:2BD5 E8 01A0 call sub_68 ; (2D78)
|
||
4044:2BD8 E8 0173 call sub_67 ; (2D4E)
|
||
4044:2BDB 88 0F mov [bx],cl
|
||
4044:2BDD 5B pop bx
|
||
4044:2BDE 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2BE3 74 0E je loc_299 ; Jump if equal
|
||
4044:2BE5 E8 0158 call sub_65 ; (2D40)
|
||
4044:2BE8 FF 0F dec word ptr [bx]
|
||
4044:2BEA E8 015B call sub_66 ; (2D48)
|
||
4044:2BED loc_298: ; xref 4044:2BC9
|
||
4044:2BED E8 02B4 call sub_79 ; (2EA4)
|
||
4044:2BF0 E9 FCD7 jmp loc_253 ; (28CA)
|
||
4044:2BF3 loc_299: ; xref 4044:2BE3
|
||
4044:2BF3 E8 02AE call sub_79 ; (2EA4)
|
||
4044:2BF6 E9 FCF5 jmp loc_255 ; (28EE)
|
||
4044:2BF9 loc_300: ; xref 4044:28B9
|
||
4044:2BF9 E8 026D call sub_78 ; (2E69)
|
||
4044:2BFC loc_301: ; xref 4044:298C
|
||
4044:2BFC 80 3E 0101 00 cmp data_28,0 ; (4044:0101=0)
|
||
4044:2C01 75 1E jne loc_302 ; Jump if not equal
|
||
4044:2C03 C6 06 0101 01 mov data_28,1 ; (4044:0101=0)
|
||
4044:2C08 E8 021F call sub_74 ; (2E2A)
|
||
4044:2C0B E8 01EE call sub_71 ; (2DFC)
|
||
4044:2C0E E8 0202 call sub_72 ; (2E13)
|
||
4044:2C11 B1 2D mov cl,2Dh ; '-'
|
||
4044:2C13 B2 FF mov dl,0FFh
|
||
4044:2C15 E8 FCCC call sub_61 ; (28E4)
|
||
4044:2C18 E8 0204 call sub_73 ; (2E1F)
|
||
4044:2C1B E8 0227 call sub_76 ; (2E45)
|
||
4044:2C1E E9 002A jmpn loc_303 ; (2C4B)
|
||
4044:2C21 loc_302: ; xref 4044:2C01
|
||
4044:2C21 E8 0206 call sub_74 ; (2E2A)
|
||
4044:2C24 E8 0213 call sub_75 ; (2E3A)
|
||
4044:2C27 ,BB 055A mov bx,55Ah ; (4044:055A=0FFh)
|
||
4044:2C2A 83 C3 05 add bx,5
|
||
4044:2C2D 80 0F 80 or byte ptr [bx],80h
|
||
4044:2C30 E8 01B4 call sub_70 ; (2DE7)
|
||
4044:2C33 E8 020F call sub_76 ; (2E45)
|
||
4044:2C36 80 3E 0558 00 cmp byte ptr ds:[558h],0 ; (4044:0558=0D2h)
|
||
4044:2C3B 75 0E jne loc_303 ; Jump if not equal
|
||
4044:2C3D E8 0290 call sub_80 ; (2ED0)
|
||
4044:2C40 2E: C6 06 0003 FF mov cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:2C46 C6 06 0554 FF mov byte ptr ds:[554h],0FFh ; (4044:0554=44h)
|
||
4044:2C4B loc_303: ; xref 4044:2C1E, 2C3B
|
||
4044:2C4B E8 0006 call sub_64 ; (2C54)
|
||
4044:2C4E E8 0253 call sub_79 ; (2EA4)
|
||
4044:2C51 E9 FC76 jmp loc_253 ; (28CA)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C4B
|
||
;==========================================================================
|
||
|
||
4044:2C54 sub_64 proc near
|
||
4044:2C54 80 3E 0551 00 cmp byte ptr ds:[551h],0 ; (4044:0551=0EAh)
|
||
4044:2C59 75 07 jne loc_ret_304 ; Jump if not equal
|
||
4044:2C5B 80 3E 0552 00 cmp byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2C60 74 01 je loc_305 ; Jump if equal
|
||
|
||
4044:2C62 loc_ret_304: ; xref 4044:2C59
|
||
4044:2C62 C3 retn
|
||
4044:2C63 loc_305: ; xref 4044:2C60
|
||
4044:2C63 80 3E 0100 00 cmp data_27,0 ; (4044:0100=0)
|
||
4044:2C68 74 07 je loc_306 ; Jump if equal
|
||
4044:2C6A 80 3E 0554 FF cmp byte ptr ds:[554h],0FFh ; (4044:0554=44h)
|
||
4044:2C6F 75 05 jne loc_307 ; Jump if not equal
|
||
4044:2C71 loc_306: ; xref 4044:2C68
|
||
4044:2C71 C6 06 014A FF mov data_61,0FFh ; (4044:014A=0)
|
||
4044:2C76 loc_307: ; xref 4044:2C6F
|
||
4044:2C76 E8 0291 call sub_81 ; (2F0A)
|
||
4044:2C79 C3 retn
|
||
sub_64 endp
|
||
|
||
4044:2C7A loc_308: ; xref 4044:2CB8, 2D0C
|
||
4044:2C7A ,58 pop ax
|
||
4044:2C7B 5B pop bx
|
||
4044:2C7C 59 pop cx
|
||
4044:2C7D 5A pop dx
|
||
4044:2C7E 07 pop es
|
||
4044:2C7F 5F pop di
|
||
4044:2C80 5E pop si
|
||
4044:2C81 1F pop ds
|
||
4044:2C82 52 push dx
|
||
4044:2C83 51 push cx
|
||
4044:2C84 06 push es
|
||
4044:2C85 1E push ds
|
||
4044:2C86 2E: FF 1E 0004 call dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:2C8B 1F pop ds
|
||
4044:2C8C 07 pop es
|
||
4044:2C8D 59 pop cx
|
||
4044:2C8E 5A pop dx
|
||
4044:2C8F 1E push ds
|
||
4044:2C90 56 push si
|
||
4044:2C91 57 push di
|
||
4044:2C92 06 push es
|
||
4044:2C93 52 push dx
|
||
4044:2C94 51 push cx
|
||
4044:2C95 53 push bx
|
||
4044:2C96 50 push ax
|
||
4044:2C97 50 push ax
|
||
4044:2C98 8C D8 mov ax,ds
|
||
4044:2C9A E8 00AB call sub_66 ; (2D48)
|
||
4044:2C9D A3 0103 mov ds:data_4e,ax ; (0000:0103=0D5F0h)
|
||
4044:2CA0 58 pop ax
|
||
4044:2CA1 80 F9 01 cmp cl,1
|
||
4044:2CA4 74 69 je loc_316 ; Jump if equal
|
||
4044:2CA6 E9 0012 jmpn loc_311 ; (2CBB)
|
||
4044:2CA9 loc_309: ; xref 4044:28A6
|
||
4044:2CA9 80 3E 0551 00 cmp byte ptr ds:data_12e,0 ; (0000:0551=0)
|
||
4044:2CAE 74 03 je loc_310 ; Jump if equal
|
||
4044:2CB0 E9 FC17 jmp loc_253 ; (28CA)
|
||
4044:2CB3 loc_310: ; xref 4044:2CAE
|
||
4044:2CB3 C6 06 014A 00 mov byte ptr ds:data_11e,0 ; (0000:014A=0Fh)
|
||
4044:2CB8 E9 FFBF ;* jmp loc_308 ; (2C7A)
|
||
4044:2CB8 db 0E9h,0BFh,0FFh ; Fixup - byte match
|
||
4044:2CBB loc_311: ; xref 4044:2CA6
|
||
4044:2CBB E8 01AB call sub_78 ; (2E69)
|
||
4044:2CBE E8 007F call sub_65 ; (2D40)
|
||
4044:2CC1 83 FA 00 cmp dx,0
|
||
4044:2CC4 75 0B jne loc_312 ; Jump if not equal
|
||
4044:2CC6 B1 34 mov cl,34h ; '4'
|
||
4044:2CC8 E8 FC19 call sub_61 ; (28E4)
|
||
4044:2CCB 8C C0 mov ax,es
|
||
4044:2CCD 8E D8 mov ds,ax
|
||
4044:2CCF 8B D3 mov dx,bx
|
||
4044:2CD1 loc_312: ; xref 4044:2CC4
|
||
4044:2CD1 8B DA mov bx,dx
|
||
4044:2CD3 BE 0002 mov si,2
|
||
4044:2CD6 8A 47 01 mov al,[bx+1]
|
||
4044:2CD9 loc_313: ; xref 4044:2CF9
|
||
4044:2CD9 ,FE C8 dec al
|
||
4044:2CDB 78 1F js loc_314 ; Jump if sign=1
|
||
4044:2CDD 53 push bx
|
||
4044:2CDE 03 DE add bx,si
|
||
4044:2CE0 8A 0F mov cl,[bx]
|
||
4044:2CE2 5B pop bx
|
||
4044:2CE3 1E push ds
|
||
4044:2CE4 53 push bx
|
||
4044:2CE5 50 push ax
|
||
4044:2CE6 56 push si
|
||
4044:2CE7 52 push dx
|
||
4044:2CE8 E8 005D call sub_66 ; (2D48)
|
||
4044:2CEB E8 008A call sub_68 ; (2D78)
|
||
4044:2CEE E8 005D call sub_67 ; (2D4E)
|
||
4044:2CF1 5A pop dx
|
||
4044:2CF2 5E pop si
|
||
4044:2CF3 58 pop ax
|
||
4044:2CF4 88 0F mov [bx],cl
|
||
4044:2CF6 5B pop bx
|
||
4044:2CF7 1F pop ds
|
||
4044:2CF8 46 inc si
|
||
4044:2CF9 E9 FFDD ;* jmp loc_313 ; (2CD9)
|
||
4044:2CF9 db 0E9h,0DDh,0FFh ; Fixup - byte match
|
||
4044:2CFC loc_314: ; xref 4044:2CDB
|
||
4044:2CFC E8 0049 call sub_66 ; (2D48)
|
||
4044:2CFF E8 01A2 call sub_79 ; (2EA4)
|
||
4044:2D02 E9 FBE9 jmp loc_255 ; (28EE)
|
||
4044:2D05 loc_315: ; xref 4044:28AD
|
||
4044:2D05 80 3E 0551 00 cmp byte ptr ds:data_12e,0 ; (0000:0551=0)
|
||
4044:2D0A 75 19 jne loc_317 ; Jump if not equal
|
||
4044:2D0C E9 FF6B jmp loc_308 ; (2C7A)
|
||
4044:2D0F loc_316: ; xref 4044:2CA4
|
||
4044:2D0F E8 0036 call sub_66 ; (2D48)
|
||
4044:2D12 E8 0154 call sub_78 ; (2E69)
|
||
4044:2D15 8B CB mov cx,bx
|
||
4044:2D17 E8 005E call sub_68 ; (2D78)
|
||
4044:2D1A E8 0031 call sub_67 ; (2D4E)
|
||
4044:2D1D 88 0F mov [bx],cl
|
||
4044:2D1F E8 0182 call sub_79 ; (2EA4)
|
||
4044:2D22 E9 FBC9 jmp loc_255 ; (28EE)
|
||
4044:2D25 loc_317: ; xref 4044:2D0A
|
||
4044:2D25 E9 FBA2 jmp loc_253 ; (28CA)
|
||
4044:2D28 loc_318: ; xref 4044:28C0
|
||
4044:2D28 E8 00FF call sub_74 ; (2E2A)
|
||
4044:2D2B E8 010C call sub_75 ; (2E3A)
|
||
4044:2D2E ,BB 055A mov bx,data_13e ; (0000:055A=0)
|
||
4044:2D31 83 C3 05 add bx,5
|
||
4044:2D34 80 0F 80 or byte ptr [bx],80h
|
||
4044:2D37 E8 00AD call sub_70 ; (2DE7)
|
||
4044:2D3A E8 0108 call sub_76 ; (2E45)
|
||
4044:2D3D E9 FB8A jmp loc_253 ; (28CA)
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2905, 2918, 2A80, 2AE4, 2B32, 2B81, 2BA1
|
||
; 2BCD, 2BE5, 2CBE
|
||
;==========================================================================
|
||
|
||
4044:2D40 sub_65 proc near
|
||
4044:2D40 50 push ax
|
||
4044:2D41 A1 0103 mov ax,word ptr data_29+1 ; (4044:0103=0)
|
||
4044:2D44 8E D8 mov ds,ax
|
||
4044:2D46 58 pop ax
|
||
4044:2D47 C3 retn
|
||
sub_65 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:290A, 2921, 2A85, 2AF2, 2B40, 2B88, 2BA6
|
||
; 2BD2, 2BEA, 2C9A, 2CE8, 2CFC, 2D0F, 2DFE
|
||
; 2E69, 2EA4
|
||
;==========================================================================
|
||
|
||
4044:2D48 sub_66 proc near
|
||
4044:2D48 2E: 8E 1E 0010 mov ds,cs:data_18 ; (4044:0010=0)
|
||
4044:2D4D C3 retn
|
||
sub_66 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2A1D, 2A5C, 2A91, 2AB9, 2B09, 2B57, 2BAC
|
||
; 2BD8, 2CEE, 2D1A
|
||
;==========================================================================
|
||
|
||
4044:2D4E sub_67 proc near
|
||
4044:2D4E 80 3E 0553 00 cmp byte ptr ds:[553h],0 ; (4044:0553=0B8h)
|
||
4044:2D53 74 22 je loc_ret_319 ; Jump if equal
|
||
4044:2D55 80 F9 0D cmp cl,0Dh
|
||
4044:2D58 74 1D je loc_ret_319 ; Jump if equal
|
||
4044:2D5A 80 F9 0A cmp cl,0Ah
|
||
4044:2D5D 74 18 je loc_ret_319 ; Jump if equal
|
||
4044:2D5F 80 F9 09 cmp cl,9
|
||
4044:2D62 74 13 je loc_ret_319 ; Jump if equal
|
||
4044:2D64 80 F9 08 cmp cl,8
|
||
4044:2D67 74 0E je loc_ret_319 ; Jump if equal
|
||
4044:2D69 80 F9 20 cmp cl,20h ; ' '
|
||
4044:2D6C 73 09 jae loc_ret_319 ; Jump if above or =
|
||
4044:2D6E 80 C1 40 add cl,40h ; '@'
|
||
4044:2D71 C6 07 5E mov byte ptr [bx],5Eh ; '^'
|
||
4044:2D74 E8 0001 call sub_68 ; (2D78)
|
||
|
||
4044:2D77 loc_ret_319: ; xref 4044:2D53, 2D58, 2D5D, 2D62
|
||
; 2D67, 2D6C
|
||
4044:2D77 C3 retn
|
||
sub_67 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2A1A, 2A59, 2A8E, 2AB6, 2B06, 2B54, 2BA9
|
||
; 2BD5, 2CEB, 2D17, 2D74
|
||
;==========================================================================
|
||
|
||
4044:2D78 sub_68 proc near
|
||
4044:2D78 FE 06 057C inc byte ptr ds:[57Ch] ; (4044:057C=0CEh)
|
||
4044:2D7C 80 3E 057C 80 cmp byte ptr ds:[57Ch],80h ; (4044:057C=0CEh)
|
||
4044:2D81 76 08 jbe loc_320 ; Jump if below or =
|
||
4044:2D83 C6 06 057C 01 mov byte ptr ds:[57Ch],1 ; (4044:057C=0CEh)
|
||
4044:2D88 E8 000F call sub_69 ; (2D9A)
|
||
4044:2D8B loc_320: ; xref 4044:2D81
|
||
4044:2D8B BB 057D mov bx,57Dh
|
||
4044:2D8E 02 1E 057C add bl,byte ptr ds:[57Ch] ; (4044:057C=0CEh)
|
||
4044:2D92 73 02 jnc loc_321 ; Jump if carry=0
|
||
4044:2D94 FE C7 inc bh
|
||
4044:2D96 loc_321: ; xref 4044:2D92
|
||
4044:2D96 83 EB 01 sub bx,1
|
||
4044:2D99 C3 retn
|
||
sub_68 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2D88
|
||
;==========================================================================
|
||
|
||
4044:2D9A sub_69 proc near
|
||
4044:2D9A 51 push cx
|
||
4044:2D9B 52 push dx
|
||
4044:2D9C E8 008B call sub_74 ; (2E2A)
|
||
4044:2D9F E8 0098 call sub_75 ; (2E3A)
|
||
4044:2DA2 B1 15 mov cl,15h
|
||
4044:2DA4 BA 055A mov dx,55Ah
|
||
4044:2DA7 E8 FB3A call sub_61 ; (28E4)
|
||
4044:2DAA 3C 00 cmp al,0
|
||
4044:2DAC 74 21 je loc_322 ; Jump if equal
|
||
4044:2DAE E8 0036 call sub_70 ; (2DE7)
|
||
4044:2DB1 E8 0091 call sub_76 ; (2E45)
|
||
4044:2DB4 5A pop dx
|
||
4044:2DB5 59 pop cx
|
||
4044:2DB6 C6 06 057C 01 mov byte ptr ds:[57Ch],1 ; (4044:057C=0CEh)
|
||
4044:2DBB E8 0112 call sub_80 ; (2ED0)
|
||
4044:2DBE 2E: C6 06 0003 FF mov cs:data_16,0FFh ; (4044:0003=0)
|
||
4044:2DC4 C6 06 0554 FF mov byte ptr ds:[554h],0FFh ; (4044:0554=44h)
|
||
4044:2DC9 E8 00D8 call sub_79 ; (2EA4)
|
||
4044:2DCC E9 FAFB jmp loc_253 ; (28CA)
|
||
4044:2DCF loc_322: ; xref 4044:2DAC
|
||
4044:2DCF FE 0E 0556 dec byte ptr ds:[556h] ; (4044:0556=50h)
|
||
4044:2DD3 79 0C jns loc_323 ; Jump if not sign
|
||
4044:2DD5 ,BB 055A mov bx,55Ah ; (4044:055A=0FFh)
|
||
4044:2DD8 83 C3 05 add bx,5
|
||
4044:2DDB 80 0F 80 or byte ptr [bx],80h
|
||
4044:2DDE E8 0006 call sub_70 ; (2DE7)
|
||
4044:2DE1 loc_323: ; xref 4044:2DD3
|
||
4044:2DE1 E8 0061 call sub_76 ; (2E45)
|
||
4044:2DE4 5A pop dx
|
||
4044:2DE5 59 pop cx
|
||
4044:2DE6 C3 retn
|
||
sub_69 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C30, 2D37, 2DAE, 2DDE, 2EF6
|
||
;==========================================================================
|
||
|
||
4044:2DE7 sub_70 proc near
|
||
4044:2DE7 52 push dx
|
||
4044:2DE8 B1 10 mov cl,10h
|
||
4044:2DEA BA 055A mov dx,55Ah
|
||
4044:2DED B1 10 mov cl,10h
|
||
4044:2DEF E8 FAF2 call sub_61 ; (28E4)
|
||
4044:2DF2 8A 16 0557 mov dl,byte ptr ds:[557h] ; (4044:0557=0E8h)
|
||
4044:2DF6 88 16 0556 mov byte ptr ds:[556h],dl ; (4044:0556=50h)
|
||
4044:2DFA 5A pop dx
|
||
4044:2DFB C3 retn
|
||
sub_70 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C0B
|
||
;==========================================================================
|
||
|
||
4044:2DFC sub_71 proc near
|
||
4044:2DFC 51 push cx
|
||
4044:2DFD 52 push dx
|
||
4044:2DFE E8 FF47 call sub_66 ; (2D48)
|
||
4044:2E01 B1 33 mov cl,33h ; '3'
|
||
4044:2E03 8C DA mov dx,ds
|
||
4044:2E05 E8 FADC call sub_61 ; (28E4)
|
||
4044:2E08 BA 057D mov dx,57Dh
|
||
4044:2E0B B1 1A mov cl,1Ah
|
||
4044:2E0D E8 FAD4 call sub_61 ; (28E4)
|
||
4044:2E10 5A pop dx
|
||
4044:2E11 59 pop cx
|
||
4044:2E12 C3 retn
|
||
sub_71 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C0E
|
||
;==========================================================================
|
||
|
||
4044:2E13 sub_72 proc near
|
||
4044:2E13 51 push cx
|
||
4044:2E14 52 push dx
|
||
4044:2E15 B1 2C mov cl,2Ch ; ','
|
||
4044:2E17 B2 01 mov dl,1
|
||
4044:2E19 E8 FAC8 call sub_61 ; (28E4)
|
||
4044:2E1C 5A pop dx
|
||
4044:2E1D 59 pop cx
|
||
4044:2E1E C3 retn
|
||
sub_72 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C18
|
||
;==========================================================================
|
||
|
||
4044:2E1F sub_73 proc near
|
||
4044:2E1F BA 012A mov dx,12Ah
|
||
4044:2E22 C6 06 012B 00 mov data_52,0 ; (4044:012B=0)
|
||
4044:2E27 E9 0008 jmpn loc_324 ; (2E32)
|
||
|
||
;==== External Entry into Subroutine ======================================
|
||
;
|
||
; Called from: 4044:2C08, 2C21, 2D28, 2D9C, 2EF0
|
||
|
||
4044:2E2A sub_74:
|
||
4044:2E2A BA 010E mov dx,10Eh
|
||
4044:2E2D C6 06 010F 00 mov data_36,0 ; (4044:010F=0)
|
||
4044:2E32 loc_324: ; xref 4044:2E27
|
||
4044:2E32 51 push cx
|
||
4044:2E33 B1 31 mov cl,31h ; '1'
|
||
4044:2E35 E8 FAAC call sub_61 ; (28E4)
|
||
4044:2E38 59 pop cx
|
||
4044:2E39 C3 retn
|
||
sub_73 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C24, 2D2B, 2D9F, 2EF3
|
||
;==========================================================================
|
||
|
||
4044:2E3A sub_75 proc near
|
||
4044:2E3A BA 012A mov dx,12Ah
|
||
4044:2E3D C6 06 012B FF mov data_52,0FFh ; (4044:012B=0)
|
||
4044:2E42 E9 0008 jmpn loc_325 ; (2E4D)
|
||
|
||
;==== External Entry into Subroutine ======================================
|
||
;
|
||
; Called from: 4044:2C1B, 2C33, 2D3A, 2DB1, 2DE1, 2EF9
|
||
|
||
4044:2E45 sub_76:
|
||
4044:2E45 BA 010E mov dx,10Eh
|
||
4044:2E48 C6 06 010F FF mov data_36,0FFh ; (4044:010F=0)
|
||
4044:2E4D loc_325: ; xref 4044:2E42
|
||
4044:2E4D 51 push cx
|
||
4044:2E4E B1 31 mov cl,31h ; '1'
|
||
4044:2E50 E8 FA91 call sub_61 ; (28E4)
|
||
4044:2E53 59 pop cx
|
||
4044:2E54 C3 retn
|
||
sub_75 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2AC8, 2B6E
|
||
;==========================================================================
|
||
|
||
4044:2E55 sub_77 proc near
|
||
4044:2E55 BA 0146 mov dx,146h
|
||
4044:2E58 C6 06 0147 00 mov data_58,0 ; (4044:0147=0)
|
||
4044:2E5D B1 31 mov cl,31h ; '1'
|
||
4044:2E5F E8 FA82 call sub_61 ; (28E4)
|
||
4044:2E62 81 3E 0148 0200 cmp data_59,200h ; (4044:0148=0)
|
||
4044:2E68 C3 retn
|
||
sub_77 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2900, 2A15, 2A56, 2A7B, 2AB1, 2ADF, 2B2D
|
||
; 2B7E, 2BF9, 2CBB, 2D12
|
||
;==========================================================================
|
||
|
||
4044:2E69 sub_78 proc near
|
||
4044:2E69 E8 FEDC call sub_66 ; (2D48)
|
||
4044:2E6C 80 3E 010D 00 cmp data_35,0 ; (4044:010D=0)
|
||
4044:2E71 75 2C jne loc_326 ; Jump if not equal
|
||
4044:2E73 89 1E 0109 mov data_33,bx ; (4044:0109=0)
|
||
4044:2E77 A3 010B mov data_34,ax ; (4044:010B=0)
|
||
4044:2E7A 89 0E 0107 mov data_32,cx ; (4044:0107=0)
|
||
4044:2E7E 5B pop bx
|
||
4044:2E7F 8C 16 014C mov data_63,ss ; (4044:014C=18D4h)
|
||
4044:2E83 89 26 014E mov data_64,sp ; (4044:014E=0)
|
||
4044:2E87 8C D8 mov ax,ds
|
||
4044:2E89 9C pushf ; Push flags
|
||
4044:2E8A 59 pop cx
|
||
4044:2E8B FA cli ; Disable interrupts
|
||
4044:2E8C 8E D0 mov ss,ax
|
||
4044:2E8E BC 0550 mov sp,550h
|
||
4044:2E91 51 push cx
|
||
4044:2E92 9D popf ; Pop flags
|
||
4044:2E93 53 push bx
|
||
4044:2E94 A1 010B mov ax,data_34 ; (4044:010B=0)
|
||
4044:2E97 8B 1E 0109 mov bx,data_33 ; (4044:0109=0)
|
||
4044:2E9B 8B 0E 0107 mov cx,data_32 ; (4044:0107=0)
|
||
4044:2E9F loc_326: ; xref 4044:2E71
|
||
4044:2E9F FE 06 010D inc data_35 ; (4044:010D=0)
|
||
4044:2EA3 C3 retn
|
||
sub_78 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2924, 294D, 2976, 298F, 2A2A, 2A61, 2A9A
|
||
; 2ABE, 2B16, 2B64, 2B93, 2BB8, 2BBE, 2BED
|
||
; 2BF3, 2C4E, 2CFF, 2D1F, 2DC9
|
||
;==========================================================================
|
||
|
||
4044:2EA4 sub_79 proc near
|
||
4044:2EA4 E8 FEA1 call sub_66 ; (2D48)
|
||
4044:2EA7 FE 0E 010D dec data_35 ; (4044:010D=0)
|
||
4044:2EAB 80 3E 010D 00 cmp data_35,0 ; (4044:010D=0)
|
||
4044:2EB0 75 1D jne loc_ret_327 ; Jump if not equal
|
||
4044:2EB2 A3 010B mov data_34,ax ; (4044:010B=0)
|
||
4044:2EB5 89 1E 0109 mov data_33,bx ; (4044:0109=0)
|
||
4044:2EB9 5B pop bx
|
||
4044:2EBA 9C pushf ; Push flags
|
||
4044:2EBB 58 pop ax
|
||
4044:2EBC FA cli ; Disable interrupts
|
||
4044:2EBD 8E 16 014C mov ss,data_63 ; (4044:014C=18D4h)
|
||
4044:2EC1 8B 26 014E mov sp,data_64 ; (4044:014E=0)
|
||
4044:2EC5 50 push ax
|
||
4044:2EC6 9D popf ; Pop flags
|
||
4044:2EC7 53 push bx
|
||
4044:2EC8 8B 1E 0109 mov bx,data_33 ; (4044:0109=0)
|
||
4044:2ECC A1 010B mov ax,data_34 ; (4044:010B=0)
|
||
|
||
4044:2ECF loc_ret_327: ; xref 4044:2EB0
|
||
4044:2ECF C3 retn
|
||
sub_79 endp
|
||
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:293C, 2965, 2C3D, 2DBB
|
||
;==========================================================================
|
||
|
||
4044:2ED0 sub_80 proc near
|
||
4044:2ED0 C6 06 0550 01 mov byte ptr ds:[550h],1 ; (4044:0550=0E8h)
|
||
4044:2ED5 A0 0552 mov al,byte ptr ds:[552h] ; (4044:0552=0FFh)
|
||
4044:2ED8 C6 06 0553 00 mov byte ptr ds:[553h],0 ; (4044:0553=0B8h)
|
||
4044:2EDD 50 push ax
|
||
4044:2EDE C6 06 0552 00 mov byte ptr ds:[552h],0 ; (4044:0552=0FFh)
|
||
4044:2EE3 C6 06 0102 01 mov byte ptr data_29,1 ; (4044:0102=0)
|
||
4044:2EE8 loc_328: ; xref 4044:2F07
|
||
4044:2EE8 ,80 3E 057C 01 cmp byte ptr ds:[57Ch],1 ; (4044:057C=0CEh)
|
||
4044:2EED 75 13 jne loc_329 ; Jump if not equal
|
||
4044:2EEF 52 push dx
|
||
4044:2EF0 E8 FF37 call sub_74 ; (2E2A)
|
||
4044:2EF3 E8 FF44 call sub_75 ; (2E3A)
|
||
4044:2EF6 E8 FEEE call sub_70 ; (2DE7)
|
||
4044:2EF9 E8 FF49 call sub_76 ; (2E45)
|
||
4044:2EFC 5A pop dx
|
||
4044:2EFD 58 pop ax
|
||
4044:2EFE A2 0552 mov byte ptr ds:[552h],al ; (4044:0552=0FFh)
|
||
4044:2F01 C3 retn
|
||
4044:2F02 loc_329: ; xref 4044:2EED
|
||
4044:2F02 B2 1A mov dl,1Ah
|
||
4044:2F04 E8 FB11 call sub_63 ; (2A18)
|
||
4044:2F07 E9 FFDE ;* jmp loc_328 ; (2EE8)
|
||
sub_80 endp
|
||
|
||
4044:2F07 db 0E9h,0DEh,0FFh ; Fixup - byte match
|
||
|
||
;==========================================================================
|
||
; SUBROUTINE
|
||
;
|
||
; Called from: 4044:2C76
|
||
;==========================================================================
|
||
|
||
4044:2F0A sub_81 proc near
|
||
4044:2F0A B1 02 mov cl,2
|
||
4044:2F0C B2 0D mov dl,0Dh
|
||
4044:2F0E E8 F9D3 call sub_61 ; (28E4)
|
||
4044:2F11 B1 02 mov cl,2
|
||
4044:2F13 B2 0A mov dl,0Ah
|
||
4044:2F15 E8 F9CC call sub_61 ; (28E4)
|
||
4044:2F18 C3 retn
|
||
sub_81 endp
|
||
|
||
4044:2F19 0115[00] db 277 dup (0)
|
||
4044:302E 82 00 00 db 82h, 00h, 00h
|
||
4044:3031 0019[00] db 25 dup (0)
|
||
4044:304A 82 00 00 db 82h, 00h, 00h
|
||
4044:304D 0019[00] db 25 dup (0)
|
||
4044:3066 8B 00 db 8Bh, 00h
|
||
4044:3068 040C[00] db 1036 dup (0)
|
||
4044:3474 FF FF 00 00 00 00 db 0FFh,0FFh, 00h, 00h, 00h, 00h
|
||
4044:347A FF db 0FFh
|
||
4044:347B 53 59 53 4F 55 54 db 'SYSOUT $$$'
|
||
4044:3481 20 20 24 24 24
|
||
4044:3486 00 db 0
|
||
4044:3487 0097[00] db 151 dup (0)
|
||
4044:351E 50 55 54 20 61 62 db 'PUT abgeschlossen fuer $'
|
||
4044:3524 67 65 73 63 68 6C
|
||
4044:352A 6F 73 73 65 6E 20
|
||
4044:3530 66 75 65 72 20 24
|
||
4044:3536 00 db 0
|
||
4044:3537 0049[00] db 73 dup (0)
|
||
4044:3580 01 14 00 00 00 14 db 01h, 14h, 00h, 00h, 00h, 14h
|
||
4044:3586 00 00 00 02 37 00 db 00h, 00h, 00h, 02h, 37h, 00h
|
||
4044:358C 00 00 db 00h, 00h
|
||
4044:358E 37 db 37h
|
||
4044:358F 0070[00] db 112 dup (0)
|
||
4044:35FF 10 E9 1D 00 FF 00 db 10h,0E9h, 1Dh, 00h,0FFh, 00h
|
||
4044:3605 00 00 00 db 00h, 00h, 00h
|
||
4044:3608 42 41 43 4B 34 39 db 'BACK49 '
|
||
4044:360E 20 20
|
||
4044:3610 0010[00] db 16 dup (0)
|
||
4044:3620 80 F9 3C 74 15 2E db 80h,0F9h, 3Ch, 74h, 15h, 2Eh
|
||
4044:3626 80 3E 03 00 FF 74 db 80h, 3Eh, 03h, 00h,0FFh, 74h
|
||
4044:362C 08 80 F9 31 75 03 db 08h, 80h,0F9h, 31h, 75h, 03h
|
||
4044:3632 E9 62 00 db 0E9h, 62h, 00h
|
||
4044:3635 loc_330: ; xref 4044:3658, 3694, 370F
|
||
4044:3635 ,2E: FF 2E 0004 jmp dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
;* No entry point to code
|
||
4044:363A 50 push ax
|
||
4044:363B 87 DA xchg bx,dx
|
||
4044:363D 8A 07 mov al,[bx]
|
||
4044:363F 3C 84 cmp al,84h
|
||
4044:3641 74 18 je loc_333 ; Jump if equal
|
||
4044:3643 3C 8D cmp al,8Dh
|
||
4044:3645 75 05 jne loc_331 ; Jump if not equal
|
||
4044:3647 2E: F6 16 0003 not cs:data_16 ; (4044:0003=0)
|
||
4044:364C loc_331: ; xref 4044:3645
|
||
4044:364C 3C 85 cmp al,85h
|
||
4044:364E 75 05 jne loc_332 ; Jump if not equal
|
||
4044:3650 2E: F6 16 0003 not cs:data_16 ; (4044:0003=0)
|
||
4044:3655 loc_332: ; xref 4044:364E
|
||
4044:3655 87 DA xchg bx,dx
|
||
4044:3657 58 pop ax
|
||
4044:3658 E9 FFDA ;* jmp loc_330 ; (3635)
|
||
4044:3658 db 0E9h,0DAh,0FFh ; Fixup - byte match
|
||
4044:365B loc_333: ; xref 4044:3641
|
||
4044:365B 2E: C6 06 0003 00 mov cs:data_16,0 ; (4044:0003=0)
|
||
4044:3661 52 push dx
|
||
4044:3662 51 push cx
|
||
4044:3663 53 push bx
|
||
4044:3664 1E push ds
|
||
4044:3665 2E: 8E 1E 0010 mov ds,cs:data_18 ; (4044:0010=0)
|
||
4044:366A C7 06 0100 0000 mov word ptr ds:data_2e,0 ; (0000:0100=0EC59h)
|
||
4044:3670 loc_334: ; xref 4044:368D
|
||
4044:3670 B1 31 mov cl,31h ; '1'
|
||
4044:3672 ,BB 0102 mov bx,data_3e ; (0000:0102=0)
|
||
4044:3675 03 1E 0100 add bx,ds:data_2e ; (0000:0100=0EC59h)
|
||
4044:3679 8B 17 mov dx,[bx]
|
||
4044:367B 83 EA 02 sub dx,2
|
||
4044:367E 2E: FF 1E 0004 call dword ptr cs:data_17 ; (4044:0004=0FD00h)
|
||
4044:3683 83 06 0100 03 add word ptr ds:data_2e,3 ; (0000:0100=0EC59h)
|
||
4044:3688 83 3E 0100 30 cmp word ptr ds:data_2e,30h ; (0000:0100=0EC59h)
|
||
4044:368D 75 E1 jne loc_334 ; Jump if not equal
|
||
4044:368F 1F pop ds
|
||
4044:3690 5A pop dx
|
||
4044:3691 59 pop cx
|
||
4044:3692 5B pop bx
|
||
4044:3693 58 pop ax
|
||
4044:3694 E9 FF9E ;* jmp loc_330 ; (3635)
|
||
4044:3694 db 0E9h, 9Eh,0FFh ; Fixup - byte match
|
||
;* No entry point to code
|
||
4044:3697 50 push ax
|
||
4044:3698 53 push bx
|
||
4044:3699 51 push cx
|
||
4044:369A 52 push dx
|
||
4044:369B 06 push es
|
||
4044:369C 1E push ds
|
||
4044:369D 8B DA mov bx,dx
|
||
4044:369F 8A 07 mov al,[bx]
|
||
4044:36A1 8A 67 01 mov ah,[bx+1]
|
||
4044:36A4 3C 81 cmp al,81h
|
||
4044:36A6 75 07 jne loc_335 ; Jump if not equal
|
||
4044:36A8 80 FC FF cmp ah,0FFh
|
||
4044:36AB 74 0B je loc_336 ; Jump if equal
|
||
4044:36AD EB 5A jmp short loc_340 ; (3709)
|
||
4044:36AF loc_335: ; xref 4044:36A6
|
||
4044:36AF 3C 89 cmp al,89h
|
||
4044:36B1 75 05 jne loc_336 ; Jump if not equal
|
||
4044:36B3 80 FC FF cmp ah,0FFh
|
||
4044:36B6 75 51 jne loc_340 ; Jump if not equal
|
||
4044:36B8 loc_336: ; xref 4044:36AB, 36B1
|
||
4044:36B8 83 C3 02 add bx,2
|
||
4044:36BB 53 push bx
|
||
4044:36BC 8C D9 mov cx,ds
|
||
4044:36BE 8E C1 mov es,cx
|
||
4044:36C0 2E: 8E 1E 0010 mov ds,cs:data_18 ; (4044:0010=0)
|
||
4044:36C5 8A C8 mov cl,al
|
||
4044:36C7 32 ED xor ch,ch ; Zero register
|
||
4044:36C9 24 80 and al,80h
|
||
4044:36CB 75 18 jnz loc_337 ; Jump if not zero
|
||
4044:36CD 80 F9 05 cmp cl,5
|
||
4044:36D0 77 36 ja loc_339 ; Jump if above
|
||
4044:36D2 ,BB 0102 mov bx,data_3e ; (0000:0102=0)
|
||
4044:36D5 03 D9 add bx,cx
|
||
4044:36D7 03 D9 add bx,cx
|
||
4044:36D9 03 D9 add bx,cx
|
||
4044:36DB 8B 17 mov dx,[bx]
|
||
4044:36DD 83 C3 02 add bx,2
|
||
4044:36E0 8A 0F mov cl,[bx]
|
||
4044:36E2 E9 002D jmpn loc_341 ; (3712)
|
||
4044:36E5 loc_337: ; xref 4044:36CB
|
||
4044:36E5 80 E1 0F and cl,0Fh
|
||
4044:36E8 80 F9 0A cmp cl,0Ah
|
||
4044:36EB 77 1B ja loc_339 ; Jump if above
|
||
4044:36ED 80 F9 02 cmp cl,2
|
||
4044:36F0 74 16 je loc_339 ; Jump if equal
|
||
4044:36F2 72 01 jc loc_338 ; Jump if carry Set
|
||
4044:36F4 49 dec cx
|
||
4044:36F5 loc_338: ; xref 4044:36F2
|
||
4044:36F5 ,BB 0114 mov bx,data_6e+1 ; (0000:0114=6Fh)
|
||
4044:36F8 03 D9 add bx,cx
|
||
4044:36FA 03 D9 add bx,cx
|
||
4044:36FC 03 D9 add bx,cx
|
||
4044:36FE 8B 17 mov dx,[bx]
|
||
4044:3700 83 C3 02 add bx,2
|
||
4044:3703 8A 0F mov cl,[bx]
|
||
4044:3705 E9 000A jmpn loc_341 ; (3712)
|
||
4044:3708 loc_339: ; xref 4044:36D0, 36EB, 36F0
|
||
4044:3708 5B pop bx
|
||
4044:3709 loc_340: ; xref 4044:36AD, 36B6, 371D
|
||
4044:3709 ,1F pop ds
|
||
4044:370A 07 pop es
|
||
4044:370B 5A pop dx
|
||
4044:370C 59 pop cx
|
||
4044:370D 5B pop bx
|
||
4044:370E 58 pop ax
|
||
4044:370F E9 FF23 jmp loc_330 ; (3635)
|
||
4044:3712 loc_341: ; xref 4044:36E2, 3705
|
||
4044:3712 5B pop bx
|
||
4044:3713 80 FC FF cmp ah,0FFh
|
||
4044:3716 75 19 jne loc_343 ; Jump if not equal
|
||
4044:3718 83 F9 05 cmp cx,5
|
||
4044:371B 74 03 je loc_342 ; Jump if equal
|
||
4044:371D E9 FFE9 ;* jmp loc_340 ; (3709)
|
||
4044:371D db 0E9h,0E9h,0FFh ; Fixup - byte match
|
||
4044:3720 loc_342: ; xref 4044:371B
|
||
4044:3720 8B F3 mov si,bx
|
||
4044:3722 8B FA mov di,dx
|
||
4044:3724 8C DB mov bx,ds
|
||
4044:3726 8C C2 mov dx,es
|
||
4044:3728 8E DA mov ds,dx
|
||
4044:372A 8E C3 mov es,bx
|
||
4044:372C F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:372E E9 0006 jmpn loc_344 ; (3737)
|
||
4044:3731 loc_343: ; xref 4044:3716
|
||
4044:3731 8B F2 mov si,dx
|
||
4044:3733 8B FB mov di,bx
|
||
4044:3735 F3/ A4 rep movsb ; Rep when cx >0 Mov [si] to es:[di]
|
||
4044:3737 loc_344: ; xref 4044:372E
|
||
4044:3737 1F pop ds
|
||
4044:3738 07 pop es
|
||
4044:3739 5A pop dx
|
||
4044:373A 59 pop cx
|
||
4044:373B 5B pop bx
|
||
4044:373C 58 pop ax
|
||
4044:373D CB retf ; Return far
|
||
4044:373E 0104[00] db 260 dup (0)
|
||
4044:3842 34 01 01 37 01 01 db 34h, 01h, 01h, 37h, 01h, 01h
|
||
4044:3848 3A 01 01 3D 01 01 db 3Ah, 01h, 01h, 3Dh, 01h, 01h
|
||
4044:384E 40 01 01 43 01 05 db 40h, 01h, 01h, 43h, 01h, 05h
|
||
4044:3854 4A 01 01 4D 01 01 db 4Ah, 01h, 01h, 4Dh, 01h, 01h
|
||
4044:385A 50 01 01 53 01 FF db 50h, 01h, 01h, 53h, 01h,0FFh
|
||
4044:3860 54 02 02 58 02 FF db 54h, 02h, 02h, 58h, 02h,0FFh
|
||
4044:3866 59 03 04 5F 03 01 db 59h, 03h, 04h, 5Fh, 03h, 01h
|
||
4044:386C 62 03 01 65 03 01 db 62h, 03h, 01h, 65h, 03h, 01h
|
||
4044:3872 00 00 00 01 00 00 db 00h, 00h, 00h, 01h, 00h, 00h
|
||
4044:3878 02 00 00 03 00 00 db 02h, 00h, 00h, 03h, 00h, 00h
|
||
4044:387E 04 00 00 05 00 00 db 04h, 00h, 00h, 05h, 00h, 00h
|
||
4044:3884 00 00 00 00 80 00 db 00h, 00h, 00h, 00h, 80h, 00h
|
||
4044:388A 00 81 00 00 83 00 db 00h, 81h, 00h, 00h, 83h, 00h
|
||
4044:3890 00 84 00 db 00h, 84h, 00h
|
||
4044:3893 00FF[00] db 255 dup (0)
|
||
4044:3992 85 00 00 00 86 00 db 85h, 00h, 00h, 00h, 86h, 00h
|
||
4044:3998 00FF[00] db 255 dup (0)
|
||
4044:3A97 87 00 00 00 00 00 db 87h, 00h, 00h, 00h, 00h, 00h
|
||
4044:3A9D 88 00 00 89 00 00 db 88h, 00h, 00h, 89h, 00h, 00h
|
||
4044:3AA3 8A 00 00 db 8Ah, 00h, 00h
|
||
4044:3AA6 005A[00] db 90 dup (0)
|
||
4044:3B00 34 00 db 34h, 00h
|
||
4044:3B02 47 45 54 52 53 58 db 'GETRSX '
|
||
4044:3B08 20 20
|
||
4044:3B0A 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
|
||
4044:3B10 4F 00 db 4Fh, 00h
|
||
4044:3B12 50 55 54 52 53 58 db 'PUTRSX '
|
||
4044:3B18 20 20
|
||
4044:3B1A 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
|
||
4044:3B20 6B 00 db 6Bh, 00h
|
||
4044:3B22 42 41 43 4B 34 39 db 'BACK49 '
|
||
4044:3B28 20 20
|
||
4044:3B2A 00 00 00 00 00 00 db 00h, 00h, 00h, 00h, 00h, 00h
|
||
4044:3B30 FF FF 00 db 0FFh,0FFh, 00h
|
||
4044:3B33 004D[00] db 77 dup (0)
|
||
|
||
seg_a ends
|
||
|
||
|
||
|
||
end
|
||
|
||
__________________ Interrupt Usage Synopsis __________________
|
||
|
||
21 Ocurrences of non-standard interrupts used (search for ??).
|
||
|
||
__________________ I/O Port Usage Synopsis __________________
|
||
|
||
No I/O ports used.
|
||
|
||
|