Procházet zdrojové kódy

calc: compact the math runtime (ladder 50744)

Replace the fully unrolled Ln/Exp/Sin/Cos/Arctan polynomials with guest
mt_horner loops, and Exp's eight squarings with one mt_square loop.  The
coefficient tables are traversed through D_HT; mt_horner's optional final
p*y+1 covers the TPSRC sin/arctan polynomial shape.  Exp's coefficient table
is stored high-to-low for the Horner loop.

Runtime size drops from 14,063 to 9,203 bytes.  t105_lnexp and t106_trig still
execute identically under qemu and Exec86.

The ladder moves past the code-image ceiling and now stops at ERR 41 50744:
insert(Ch,S,X) in GetLine.

Verified: compile matrix 110/110, ladder 1/1, 96 .COM executions under both
oracles, rt_exec 276/276, nonvacuity 121/121, run_all ALL PASS.
Eric Streit před 4 dny
rodič
revize
af389ce54f
6 změnil soubory, kde provedl 2532 přidání a 3824 odebrání
  1. 10 8
      CALC-COMPILE.md
  2. 6 5
      SUMMARY.md
  3. 115 58
      shell/Runtime.mod
  4. 2 2
      shell/tests/audit_helpers.py
  5. 5 7
      shell/tests/fixtures/calc_ladder.tsv
  6. 2394 3744
      shell/tests/runtime.golden

+ 10 - 8
CALC-COMPILE.md

@@ -97,7 +97,7 @@ Current rung (measured today, normalised position):
 
 
 | position | blocker |
 | position | blocker |
 |---|---|
 |---|---|
-| **48574** | code-image ceiling — runtime + generated code reaches the `0x8000` data base (`ERR 98`) |
+| **50744** | `insert(Ch,S,X)` in `GetLine` — the `Insert` string builtin (`ERR 41`) |
 
 
 Rungs behind it (now passed):
 Rungs behind it (now passed):
 
 
@@ -159,7 +159,8 @@ Rungs ahead:
 | 44567 | `Delete` string builtin - DONE |
 | 44567 | `Delete` string builtin - DONE |
 | 47788 | code ceiling reached; raised to 0x8000 - DONE |
 | 47788 | code ceiling reached; raised to 0x8000 - DONE |
 | 48461 | local `set of Char` variable - DONE |
 | 48461 | local `set of Char` variable - DONE |
-| 48574 | code-image ceiling (`ERR 98`) |
+| 48574 | code-image ceiling - DONE (runtime shrunk) |
+| 50744 | `Insert` string builtin (`ERR 41`) |
 
 
 Corrections the measurements force, worth stating plainly because the stage list
 Corrections the measurements force, worth stating plainly because the stage list
 below was written before them:
 below was written before them:
@@ -598,6 +599,10 @@ Exec86):
 - **`Abs`, `Sqr` and `Sqrt` are landed (`t104_mathbasic`).**  `Abs` clears the
 - **`Abs`, `Sqr` and `Sqrt` are landed (`t104_mathbasic`).**  `Abs` clears the
   MBF sign, `Sqr` lowers to the real multiply entry, and `Sqrt` is Newton over
   MBF sign, `Sqr` lowers to the real multiply entry, and `Sqrt` is Newton over
   the existing real division/addition entries.
   the existing real division/addition entries.
+- **The math runtime was compacted.**  Ln/Exp/Sin/Cos/Arctan now evaluate
+  their polynomials with guest Horner loops and Exp's eight squarings with one
+  guest loop, instead of fully unrolled copies.  The runtime fell from 14,063
+  to 9,203 bytes; `t105_lnexp` and `t106_trig` still pass under both oracles.
 - **Local `set of Char` variables are landed (`t109_localset`).**  The local
 - **Local `set of Char` variables are landed (`t109_localset`).**  The local
   variable declaration path now admits sets, and the identifier-statement
   variable declaration path now admits sets, and the identifier-statement
   assignment path carries the set size/base metadata; literal assignment and
   assignment path carries the set size/base metadata; literal assignment and
@@ -1241,12 +1246,9 @@ and TEXT file output is done (`t91_textout`), both compile-only because the
 harness has no filesystem.  `Str` real formatting is done (`t92_strreal`),
 harness has no filesystem.  `Str` real formatting is done (`t92_strreal`),
 pointer types with `New`/`Dispose`/dereference are done (`t93_pointer`), and
 pointer types with `New`/`Dispose`/dereference are done (`t93_pointer`), and
 text `Eof`/`Readln` plus integer `Str` are done (`t94_textread`/`t95_strint`).
 text `Eof`/`Readln` plus integer `Str` are done (`t94_textread`/`t95_strint`).
-The next blocker is image capacity, not a language construct: the runtime plus
-generated CALC code reaches the `0x8000` data base.  The runtime is 14,063
-bytes; `rt_exec` is at HDR=0x4000 / data 0x5000, and the compiler's code
-ceiling is 0x8000.  The next change must either shrink the runtime (the
-unrolled math entries are the largest part) or move the data base/code
-ceiling as a deliberate layout change.
+The next blocker is the `Insert` string builtin in `GetLine`.  The runtime is
+now 9,203 bytes; `rt_exec` is at HDR=0x4000 / data 0x5000, and the compiler's
+code ceiling is 0x8000.  The image-capacity failure is gone for this rung.
 
 
 **Stage 14 — the CRT identifiers.** `GotoXY` (25), `LowVideo`/`NormVideo`
 **Stage 14 — the CRT identifiers.** `GotoXY` (25), `LowVideo`/`NormVideo`
 (16 + 16), `ClrEol` (10), `ClrScr` (6), `KeyPressed` (3), `Delay` (1),
 (16 + 16), `ClrEol` (10), `ClrScr` (6), `KeyPressed` (3), `Delay` (1),

+ 6 - 5
SUMMARY.md

@@ -2044,7 +2044,7 @@ the compiler *emitting* a 16,560-byte program). The ratchet and front-end
 features through **file control-block operations and the original memory
 features through **file control-block operations and the original memory
 layout** are landed: the ladder (`tests/calc_ladder.sh` +
 layout** are landed: the ladder (`tests/calc_ladder.sh` +
 `tests/fixtures/calc_ladder.tsv`, run by `run_all.sh`; CALC.PAS now stops at
 `tests/fixtures/calc_ladder.tsv`, run by `run_all.sh`; CALC.PAS now stops at
-`ERR 98` at pos 48574, the code-image ceiling), the `{$I}` include,
+`ERR 41` at pos 50744, `Insert(Ch,S,X)`), the `{$I}` include,
 `^X`/`#nn`, scalar typed constants, sets, enums, records (CellRec = 80),
 `^X`/`#nn`, scalar typed constants, sets, enums, records (CellRec = 80),
 subranges, arrays, element/field access, file types, string value parameters,
 subranges, arrays, element/field access, file types, string value parameters,
 `Length`, the CRT identifiers (`ClrScr`/`GotoXY`/`ClrEol`/`LowVideo`/
 `Length`, the CRT identifiers (`ClrScr`/`GotoXY`/`ClrEol`/`LowVideo`/
@@ -2067,10 +2067,11 @@ pointer types with `New`/`Dispose`/dereference (`t93`), text `Eof`/`Readln`
 literals/comparisons/arithmetic, self-recursion, `Copy`, real `Val`, the REAL
 literals/comparisons/arithmetic, self-recursion, `Copy`, real `Val`, the REAL
 standard functions (`Abs`, `Sqr`, `Sqrt`, `Ln`, `Exp`, `Sin`, `Cos`,
 standard functions (`Abs`, `Sqr`, `Sqrt`, `Ln`, `Exp`, `Sin`, `Cos`,
 `Arctan`), `Int(REAL)` and forward definitions that repeat only the name are
 `Arctan`), `Int(REAL)` and forward definitions that repeat only the name are
-landed, along with `Delete` and local `set of Char` variables.  The ladder now
-stops at the code-image ceiling (`ERR 98 48574`), not a source construct.  The
-runtime is 14,063 bytes / 55 entries; the rt_exec scaffold is at HDR=0x4000 /
-data 0x5000.  Items 1-4 below are independent of both tracks.
+landed, along with `Delete` and local `set of Char` variables.  The math runtime
+was compacted to guest Horner/square loops, reducing it from 14,063 to 9,203
+bytes.  The ladder now stops at `Insert(Ch,S,X)` (`ERR 41 50744`).  The runtime
+is 9,203 bytes / 55 entries; the rt_exec scaffold is at HDR=0x4000 / data
+0x5000.  Items 1-4 below are independent of both tracks.
 
 
 1. The rest of the string language. `v-TP3-STRVAR`/`v-TP3-STRREAD-ASSIGN` cover
 1. The rest of the string language. `v-TP3-STRVAR`/`v-TP3-STRREAD-ASSIGN` cover
    string variables, `s := 'literal'`, `writeln (s)`, `readln (s)`/`read (s)`
    string variables, `s := 'literal'`, `writeln (s)`, `readln (s)`/`read (s)`

+ 115 - 58
shell/Runtime.mod

@@ -133,7 +133,10 @@ CONST
    D_ATNT  = 807 ;    (* tan(pi/8) *)
    D_ATNT  = 807 ;    (* tan(pi/8) *)
    D_PI4   = 813 ;    (* pi/4 *)
    D_PI4   = 813 ;    (* pi/4 *)
    D_ZERO  = 819 ;    (* 0.0 *)
    D_ZERO  = 819 ;    (* 0.0 *)
-   D_END   = 825 ;    (* the block is padded to here *)    (* the block is padded to here *)
+   D_HT    = 825 ;    (* 2 bytes: Horner table pointer *)
+   D_HC    = 827 ;    (* 1 byte: Horner/square iteration count *)
+   D_HF    = 828 ;    (* 1 byte: Horner final +1 flag *)
+   D_END   = 829 ;    (* the block is padded to here *)    (* the block is padded to here *)
 
 
    (* THE LOAD BIAS.  Everything above is an offset into the image as this
    (* THE LOAD BIAS.  Everything above is an offset into the image as this
       compiler numbers it: the entry JMP is at image 0.  But a DOS .COM is
       compiler numbers it: the entry JMP is at image 0.  But a DOS .COM is
@@ -804,6 +807,8 @@ PROCEDURE AdcBxCx ; BEGIN B (13H) ; B (0D9H) END AdcBxCx ;       (* BX:=BX+CX+CF
 PROCEDURE AdcDxCx ; BEGIN B (13H) ; B (0D1H) END AdcDxCx ;       (* DX:=DX+CX+CF *)
 PROCEDURE AdcDxCx ; BEGIN B (13H) ; B (0D1H) END AdcDxCx ;       (* DX:=DX+CX+CF *)
 PROCEDURE AddAxDx ; BEGIN B (03H) ; B (0C2H) END AddAxDx ;       (* AX:=AX+DX *)
 PROCEDURE AddAxDx ; BEGIN B (03H) ; B (0C2H) END AddAxDx ;       (* AX:=AX+DX *)
 PROCEDURE AddBxAx ; BEGIN B (03H) ; B (0D8H) END AddBxAx ;       (* BX:=BX+AX *)
 PROCEDURE AddBxAx ; BEGIN B (03H) ; B (0D8H) END AddBxAx ;       (* BX:=BX+AX *)
+PROCEDURE AddBxImm (v : CARDINAL) ;
+BEGIN B (81H) ; B (0C3H) ; W (v) END AddBxImm ;               (* ADD BX,imm16 *)
 PROCEDURE SubAxDx ; BEGIN B (2BH) ; B (0C2H) END SubAxDx ;       (* AX:=AX-DX *)
 PROCEDURE SubAxDx ; BEGIN B (2BH) ; B (0C2H) END SubAxDx ;       (* AX:=AX-DX *)
 PROCEDURE AddAxImm (v : CARDINAL) ;
 PROCEDURE AddAxImm (v : CARDINAL) ;
 BEGIN B (05H) ; W (v) END AddAxImm ;                             (* ADD AX,imm16 *)
 BEGIN B (05H) ; W (v) END AddAxImm ;                             (* ADD AX,imm16 *)
@@ -2425,7 +2430,6 @@ BEGIN
 END MathInt ;
 END MathInt ;
 
 
 PROCEDURE EmitRealMath ;
 PROCEDURE EmitRealMath ;
-VAR k : CARDINAL ;
 (* REAL math entries.  The caller passes a 12-byte block; the first six bytes
 (* REAL math entries.  The caller passes a 12-byte block; the first six bytes
    are the argument and are overwritten by the result.  Abs is a sign clear.
    are the argument and are overwritten by the result.  Abs is a sign clear.
    Sqrt is Newton's iteration with a fixed count: the 8086 has no FPU, so the
    Sqrt is Newton's iteration with a fixed count: the 8086 has no FPU, so the
@@ -2448,6 +2452,84 @@ BEGIN
    M ("mt_div") ;
    M ("mt_div") ;
    Call ("rv_core") ; RetR ;
    Call ("rv_core") ; RetR ;
 
 
+   (* mt_horner: D_P := c0; for each remaining table entry c, D_P := D_P*D_Y+c.
+      D_HF then adds a final D_P*D_Y+1.  D_HT points at the first coefficient
+      and is advanced by six; D_HC is the total count. *)
+   M ("mt_horner") ;
+   MovBxData (D_HT) ; MovSiBx ;
+   LdAxSi ; StDataAx (D_P) ;
+   LdCxSiOff (2) ; MovBxCx ; StDataBx (D_P + 2) ;
+   LdDxSiOff (4) ; StDataDx (D_P + 4) ;
+   MovBxData (D_HT) ; AddBxImm (6) ; StDataBx (D_HT) ;
+   DecData (D_HC) ; JccNear (74H, "mh_final") ;
+   M ("mh_loop") ;
+   (* block := p, y *)
+   MovAxData (D_P) ; StDataAx (D_BLK) ;
+   MovBxData (D_P + 2) ; StDataBx (D_BLK + 2) ;
+   MovDxData (D_P + 4) ; StDataDx (D_BLK + 4) ;
+   MovAxData (D_Y) ; StDataAx (D_BLK + 6) ;
+   MovBxData (D_Y + 2) ; StDataBx (D_BLK + 8) ;
+   MovDxData (D_Y + 4) ; StDataDx (D_BLK + 10) ;
+   MovBxDataAddr (D_BLK) ; PushBx ; Call ("real_mul") ; AddSp2 ;
+   MovAxData (D_BLK) ; StDataAx (D_P) ;
+   MovBxData (D_BLK + 2) ; StDataBx (D_P + 2) ;
+   MovDxData (D_BLK + 4) ; StDataDx (D_P + 4) ;
+   (* block := p, next coefficient *)
+   MovAxData (D_P) ; StDataAx (D_BLK) ;
+   MovBxData (D_P + 2) ; StDataBx (D_BLK + 2) ;
+   MovDxData (D_P + 4) ; StDataDx (D_BLK + 4) ;
+   MovBxData (D_HT) ; MovSiBx ;
+   LdAxSi ; StDataAx (D_BLK + 6) ;
+   LdCxSiOff (2) ; MovBxCx ; StDataBx (D_BLK + 8) ;
+   LdDxSiOff (4) ; StDataDx (D_BLK + 10) ;
+   MovBxDataAddr (D_BLK) ; PushBx ; Call ("real_add") ; AddSp2 ;
+   MovAxData (D_BLK) ; StDataAx (D_P) ;
+   MovBxData (D_BLK + 2) ; StDataBx (D_P + 2) ;
+   MovDxData (D_BLK + 4) ; StDataDx (D_P + 4) ;
+   MovBxData (D_HT) ; AddBxImm (6) ; StDataBx (D_HT) ;
+   DecData (D_HC) ; JccNear (75H, "mh_loop") ;
+   M ("mh_final") ;
+   TestDataImm (D_HF, 1) ; JccNear (74H, "mh_done") ;
+   (* final p*y + 1 *)
+   MovAxData (D_P) ; StDataAx (D_BLK) ;
+   MovBxData (D_P + 2) ; StDataBx (D_BLK + 2) ;
+   MovDxData (D_P + 4) ; StDataDx (D_BLK + 4) ;
+   MovAxData (D_Y) ; StDataAx (D_BLK + 6) ;
+   MovBxData (D_Y + 2) ; StDataBx (D_BLK + 8) ;
+   MovDxData (D_Y + 4) ; StDataDx (D_BLK + 10) ;
+   MovBxDataAddr (D_BLK) ; PushBx ; Call ("real_mul") ; AddSp2 ;
+   MovAxData (D_BLK) ; StDataAx (D_P) ;
+   MovBxData (D_BLK + 2) ; StDataBx (D_P + 2) ;
+   MovDxData (D_BLK + 4) ; StDataDx (D_P + 4) ;
+   MovAxData (D_P) ; StDataAx (D_BLK) ;
+   MovBxData (D_P + 2) ; StDataBx (D_BLK + 2) ;
+   MovDxData (D_P + 4) ; StDataDx (D_BLK + 4) ;
+   MovAxData (D_ONE) ; StDataAx (D_BLK + 6) ;
+   MovBxData (D_ONE + 2) ; StDataBx (D_BLK + 8) ;
+   MovDxData (D_ONE + 4) ; StDataDx (D_BLK + 10) ;
+   MovBxDataAddr (D_BLK) ; PushBx ; Call ("real_add") ; AddSp2 ;
+   MovAxData (D_BLK) ; StDataAx (D_P) ;
+   MovBxData (D_BLK + 2) ; StDataBx (D_P + 2) ;
+   MovDxData (D_BLK + 4) ; StDataDx (D_P + 4) ;
+   M ("mh_done") ;
+   RetR ;
+
+   (* mt_square: D_P := D_P^(2^D_HC). *)
+   M ("mt_square") ;
+   M ("msq_loop") ;
+   MovAxData (D_P) ; StDataAx (D_BLK) ;
+   MovBxData (D_P + 2) ; StDataBx (D_BLK + 2) ;
+   MovDxData (D_P + 4) ; StDataDx (D_BLK + 4) ;
+   MovAxData (D_P) ; StDataAx (D_BLK + 6) ;
+   MovBxData (D_P + 2) ; StDataBx (D_BLK + 8) ;
+   MovDxData (D_P + 4) ; StDataDx (D_BLK + 10) ;
+   MovBxDataAddr (D_BLK) ; PushBx ; Call ("real_mul") ; AddSp2 ;
+   MovAxData (D_BLK) ; StDataAx (D_P) ;
+   MovBxData (D_BLK + 2) ; StDataBx (D_P + 2) ;
+   MovDxData (D_BLK + 4) ; StDataDx (D_P + 4) ;
+   DecData (D_HC) ; JccNear (75H, "msq_loop") ;
+   RetR ;
+
    M ("real_abs") ;
    M ("real_abs") ;
    PushBp ; MovBpSp ; PushBx ; PushDx ; PushSi ; PushDi ;
    PushBp ; MovBpSp ; PushBx ; PushDx ; PushSi ; PushDi ;
    PushBp4 ;
    PushBp4 ;
@@ -2517,20 +2599,10 @@ BEGIN
    MovSiBp4 ; LdAxSi ; LdCxSiOff (2) ; MovBxCx ; LdDxSiOff (4) ;
    MovSiBp4 ; LdAxSi ; LdCxSiOff (2) ; MovBxCx ; LdDxSiOff (4) ;
    StoreMath (D_X) ;
    StoreMath (D_X) ;
    MathDiv (D_X, D_EXP256, D_Y) ;
    MathDiv (D_X, D_EXP256, D_Y) ;
-   Copy6 (D_EXPC + 66, D_P) ;
-   k := 10 ;
-   WHILE k > 0 DO
-      MathMul (D_P, D_Y, D_P) ;
-      MathAdd (D_P, D_EXPC + k * 6, D_P) ;
-      DEC (k)
-   END ;
-   MathMul (D_P, D_Y, D_P) ;
-   MathAdd (D_P, D_EXPC, D_P) ;
-   k := 0 ;
-   WHILE k < 8 DO
-      MathMul (D_P, D_P, D_P) ;
-      INC (k)
-   END ;
+   MovBxDataAddr (D_EXPC) ; StDataBx (D_HT) ;
+   StDataByte (D_HC, 12) ; StDataByte (D_HF, 0) ;
+   Call ("mt_horner") ;
+   StDataByte (D_HC, 8) ; Call ("mt_square") ;
    PopDi ; LoadMath (D_P) ;
    PopDi ; LoadMath (D_P) ;
    StDiAx ; StDiOffBx (2) ; StDiOffDx (4) ;
    StDiAx ; StDiOffBx (2) ; StDiOffDx (4) ;
    Jmp8 ("ex_done") ;
    Jmp8 ("ex_done") ;
@@ -2550,19 +2622,16 @@ BEGIN
    MathSub (D_X, D_ONE, D_Y) ;
    MathSub (D_X, D_ONE, D_Y) ;
    MathAdd (D_X, D_ONE, D_P) ;
    MathAdd (D_X, D_ONE, D_P) ;
    MathDiv (D_Y, D_P, D_Y) ;
    MathDiv (D_Y, D_P, D_Y) ;
-   MathMul (D_Y, D_Y, D_P) ;
-   Copy6 (D_LNC, D_X) ;
-   k := 1 ;
-   WHILE k < 8 DO
-      MathMul (D_X, D_P, D_X) ;
-      MathAdd (D_X, D_LNC + k * 6, D_X) ;
-      INC (k)
-   END ;
-   MathMul (D_Y, D_X, D_X) ;
-   MathAdd (D_X, D_X, D_X) ;
+   Copy6 (D_Y, D_X) ;                 (* keep y for the final y*p *)
+   MathMul (D_Y, D_Y, D_Y) ;          (* y^2 *)
+   MovBxDataAddr (D_LNC) ; StDataBx (D_HT) ;
+   StDataByte (D_HC, 8) ; StDataByte (D_HF, 0) ;
+   Call ("mt_horner") ;
+   MathMul (D_X, D_P, D_P) ;          (* y * p *)
+   MathAdd (D_P, D_P, D_P) ;          (* 2*y*p *)
    MathMul (D_E, D_LN2, D_E) ;
    MathMul (D_E, D_LN2, D_E) ;
-   MathAdd (D_X, D_E, D_X) ;
-   PopDi ; LoadMath (D_X) ;
+   MathAdd (D_P, D_E, D_P) ;
+   PopDi ; LoadMath (D_P) ;
    StDiAx ; StDiOffBx (2) ; StDiOffDx (4) ;
    StDiAx ; StDiOffBx (2) ; StDiOffDx (4) ;
    Jmp8 ("ln_done") ;
    Jmp8 ("ln_done") ;
    M ("ln_err") ;
    M ("ln_err") ;
@@ -2590,15 +2659,9 @@ BEGIN
    M ("sn_low_done") ;
    M ("sn_low_done") ;
    (* sin(x) = x * (1 + c1*x^2 + ...), the TPSRC fltsin table. *)
    (* sin(x) = x * (1 + c1*x^2 + ...), the TPSRC fltsin table. *)
    MathMul (D_X, D_X, D_Y) ;
    MathMul (D_X, D_X, D_Y) ;
-   Copy6 (D_FLTSIN, D_P) ;
-   MathMul (D_P, D_Y, D_P) ;
-   k := 1 ;
-   WHILE k < 7 DO
-      MathAdd (D_P, D_FLTSIN + k * 6, D_P) ;
-      MathMul (D_P, D_Y, D_P) ;
-      INC (k)
-   END ;
-   MathAdd (D_P, D_ONE, D_P) ;
+   MovBxDataAddr (D_FLTSIN) ; StDataBx (D_HT) ;
+   StDataByte (D_HC, 7) ; StDataByte (D_HF, 1) ;
+   Call ("mt_horner") ;
    MathMul (D_P, D_X, D_P) ;
    MathMul (D_P, D_X, D_P) ;
    PopDi ; LoadMath (D_P) ;
    PopDi ; LoadMath (D_P) ;
    StDiAx ; StDiOffBx (2) ; StDiOffDx (4) ;
    StDiAx ; StDiOffBx (2) ; StDiOffDx (4) ;
@@ -2643,17 +2706,11 @@ BEGIN
    M ("at_no_trans") ;
    M ("at_no_trans") ;
    Copy6 (D_Y, D_X) ;
    Copy6 (D_Y, D_X) ;
    M ("at_poly") ;
    M ("at_poly") ;
-   MathMul (D_X, D_X, D_P) ;
-   Copy6 (D_FLTATN, D_Y) ;
-   MathMul (D_Y, D_P, D_Y) ;
-   k := 1 ;
-   WHILE k < 5 DO
-      MathAdd (D_Y, D_FLTATN + k * 6, D_Y) ;
-      MathMul (D_Y, D_P, D_Y) ;
-      INC (k)
-   END ;
-   MathAdd (D_Y, D_ONE, D_Y) ;
-   MathMul (D_Y, D_X, D_Y) ;
+   MathMul (D_X, D_X, D_Y) ;
+   MovBxDataAddr (D_FLTATN) ; StDataBx (D_HT) ;
+   StDataByte (D_HC, 5) ; StDataByte (D_HF, 1) ;
+   Call ("mt_horner") ;
+   MathMul (D_P, D_X, D_Y) ;
    TestDataImm (D_TRANS, 1) ; JccNear (74H, "at_after_trans") ;
    TestDataImm (D_TRANS, 1) ; JccNear (74H, "at_after_trans") ;
    MathAdd (D_Y, D_PI4, D_Y) ;
    MathAdd (D_Y, D_PI4, D_Y) ;
    M ("at_after_trans") ;
    M ("at_after_trans") ;
@@ -3875,18 +3932,18 @@ BEGIN
    Data6 (0AB7FH, 0AAAAH, 2AAAH) ;
    Data6 (0AB7FH, 0AAAAH, 2AAAH) ;
    Data6 (0081H, 0000H, 0000H) ;
    Data6 (0081H, 0000H, 0000H) ;
    IF dataAt + D_EXPC # rpos THEN HALT END ;
    IF dataAt + D_EXPC # rpos THEN HALT END ;
+   Data6 (0AA67H, 2B3FH, 5732H) ;
+   Data6 (0C56BH, 7DBBH, 13F2H) ;
+   Data6 (0B66EH, 1D2AH, 38EFH) ;
+   Data6 (0D71H, 00D0H, 500DH) ;
+   Data6 (0D74H, 00D0H, 500DH) ;
+   Data6 (0B77H, 60B6H, 360BH) ;
+   Data6 (897AH, 8888H, 0888H) ;
+   Data6 (0AB7CH, 0AAAAH, 2AAAH) ;
+   Data6 (0AB7EH, 0AAAAH, 2AAAH) ;
+   Data6 (0080H, 0000H, 0000H) ;
    Data6 (0081H, 0000H, 0000H) ;
    Data6 (0081H, 0000H, 0000H) ;
    Data6 (0081H, 0000H, 0000H) ;
    Data6 (0081H, 0000H, 0000H) ;
-   Data6 (0080H, 0000H, 0000H) ;
-   Data6 (0AB7EH, 0AAAAH, 2AAAH) ;
-   Data6 (0AB7CH, 0AAAAH, 2AAAH) ;
-   Data6 (897AH, 8888H, 0888H) ;
-   Data6 (0B77H, 60B6H, 360BH) ;
-   Data6 (0D74H, 00D0H, 500DH) ;
-   Data6 (0D71H, 00D0H, 500DH) ;
-   Data6 (0B66EH, 1D2AH, 38EFH) ;
-   Data6 (0C56BH, 7DBBH, 13F2H) ;
-   Data6 (0AA67H, 2B3FH, 5732H) ;
    IF dataAt + D_PI # rpos THEN HALT END ;
    IF dataAt + D_PI # rpos THEN HALT END ;
    Data6 (2182H, 0DAA2H, 490FH) ;
    Data6 (2182H, 0DAA2H, 490FH) ;
    IF dataAt + D_PI2 # rpos THEN HALT END ;
    IF dataAt + D_PI2 # rpos THEN HALT END ;

+ 2 - 2
shell/tests/audit_helpers.py

@@ -156,7 +156,7 @@ NON_ONE_LINE = {
         # bytes are pinned by rt_exec's file_assign case and the runtime
         # bytes are pinned by rt_exec's file_assign case and the runtime
         # golden; the name grammar cannot read a whole routine.
         # golden; the name grammar cannot read a whole routine.
         "EmitFileOps": COMP,
         "EmitFileOps": COMP,
-        "AddDiImm": COMP,
+        "AddDiImm": COMP, "AddBxImm": COMP,
     },
     },
     "Compiler.mod": {
     "Compiler.mod": {
         "FileIo": COMP,        # typed-file INT 21h sequence; see EmFileIo
         "FileIo": COMP,        # typed-file INT 21h sequence; see EmFileIo
@@ -216,7 +216,7 @@ NON_ONE_LINE = {
         # park that address in a data slot across a WITH body.  Each is a fixed
         # park that address in a data slot across a WITH body.  Each is a fixed
         # 3-4 byte sequence whose operand is a data/field offset, and t77_with
         # 3-4 byte sequence whose operand is a data/field offset, and t77_with
         # pins the behaviour (2-D element, constant element, field offsets).
         # pins the behaviour (2-D element, constant element, field offsets).
-        "AddDiImm": COMP,
+        "AddDiImm": COMP, "AddBxImm": COMP,
         "LdDiGlob": COMP,
         "LdDiGlob": COMP,
         "StDiGlob": COMP,
         "StDiGlob": COMP,
         # Set-field helpers: store one constructor byte through DI
         # Set-field helpers: store one constructor byte through DI

+ 5 - 7
shell/tests/fixtures/calc_ladder.tsv

@@ -25,7 +25,7 @@
 # positions shift — which is exactly why this must be a measured number, not a
 # positions shift — which is exactly why this must be a measured number, not a
 # remembered one.
 # remembered one.
 #
 #
-# Current rung (2026-10-23): the code image reaches the 0x8000 data boundary.
+# Current rung (2026-10-23): `insert(Ch,S,X)' in GetLine.
 # UpCase, run-time set membership, string fields through DI, the original memory
 # UpCase, run-time set membership, string fields through DI, the original memory
 # layout, untyped-file declarations, file control-block operations, VAR string
 # layout, untyped-file declarations, file control-block operations, VAR string
 # parameters, Chr, typed-file block I/O, text-file output, Str,
 # parameters, Chr, typed-file block I/O, text-file output, Str,
@@ -33,9 +33,7 @@
 # value REAL and REAL function results, REAL literals/comparisons/arithmetic,
 # value REAL and REAL function results, REAL literals/comparisons/arithmetic,
 # self-recursion, enum-indexed arrays, string-array typed constants, local REAL
 # self-recursion, enum-indexed arrays, string-array typed constants, local REAL
 # variables, Copy, real Val, Abs/Sqr/Sqrt, Ln/Exp/Sin/Cos/Arctan, Int(REAL),
 # variables, Copy, real Val, Abs/Sqr/Sqrt, Ln/Exp/Sin/Cos/Arctan, Int(REAL),
-# forward definitions that repeat only the name, Delete and local set of Char
-# variables moved the ladder 15911 -> ... -> 44567 -> 47788 -> 48461 -> 48574.
-# The next blocker is the image layout/code ceiling (TP3 error 98), not a
-# source construct: the runtime and generated code no longer fit below the
-# 0x8000 data base.
-CALC.PAS	ERR	98	48574
+# forward definitions, Delete, local set of Char variables and the compact
+# Horner/square runtime moved the ladder 15911 -> ... -> 48574 -> 50744.  The
+# next blocker is the Insert string builtin (TP3 error 41).
+CALC.PAS	ERR	41	50744

+ 2394 - 3744
shell/tests/runtime.golden

@@ -22,7 +22,7 @@
 0015  39 CF       cmp di,cx
 0015  39 CF       cmp di,cx
 0017  72 F5       jb 0eh
 0017  72 F5       jb 0eh
 0019  89 C8       mov ax,cx
 0019  89 C8       mov ax,cx
-001B  A3 7B 35    mov word ptr [357bh],ax
+001B  A3 7B 22    mov word ptr [227bh],ax
 001E  1E          push ds
 001E  1E          push ds
 001F  07          pop es
 001F  07          pop es
 0020  C3          ret
 0020  C3          ret
@@ -43,7 +43,7 @@
 003B  58          pop ax
 003B  58          pop ax
 003C  F7 D8       neg ax
 003C  F7 D8       neg ax
 003E  B9 0A 00    mov cx,0ah
 003E  B9 0A 00    mov cx,0ah
-0041  BB BE 34    mov bx,34beh
+0041  BB BE 21    mov bx,21beh
 0044  89 DE       mov si,bx
 0044  89 DE       mov si,bx
 0046  31 D2       xor dx,dx
 0046  31 D2       xor dx,dx
 0048  F7 F1       div ax,cx
 0048  F7 F1       div ax,cx
@@ -95,7 +95,7 @@
 00A7  58          pop ax
 00A7  58          pop ax
 00A8  F7 D8       neg ax
 00A8  F7 D8       neg ax
 00AA  B9 0A 00    mov cx,0ah
 00AA  B9 0A 00    mov cx,0ah
-00AD  BB BE 34    mov bx,34beh
+00AD  BB BE 21    mov bx,21beh
 00B0  89 DE       mov si,bx
 00B0  89 DE       mov si,bx
 00B2  31 D2       xor dx,dx
 00B2  31 D2       xor dx,dx
 00B4  F7 F1       div ax,cx
 00B4  F7 F1       div ax,cx
@@ -127,18 +127,18 @@
 00E3  83 7E 04 00 cmp word ptr [bp+4h],0h
 00E3  83 7E 04 00 cmp word ptr [bp+4h],0h
 00E7  89 EC       mov sp,bp
 00E7  89 EC       mov sp,bp
 00E9  75 05       jne 0f0h
 00E9  75 05       jne 0f0h
-00EB  BA C3 34    mov dx,34c3h
+00EB  BA C3 21    mov dx,21c3h
 00EE  EB 03       jmp 0f3h
 00EE  EB 03       jmp 0f3h
-00F0  BA BE 34    mov dx,34beh
+00F0  BA BE 21    mov dx,21beh
 00F3  B4 09       mov ah,9h
 00F3  B4 09       mov ah,9h
 00F5  CD 21       int 21h
 00F5  CD 21       int 21h
 00F7  5D          pop bp
 00F7  5D          pop bp
 00F8  C3          ret
 00F8  C3          ret
-00F9  BA CC 34    mov dx,34cch
+00F9  BA CC 21    mov dx,21cch
 00FC  B4 09       mov ah,9h
 00FC  B4 09       mov ah,9h
 00FE  CD 21       int 21h
 00FE  CD 21       int 21h
 0100  C3          ret
 0100  C3          ret
-0101  BA C9 34    mov dx,34c9h
+0101  BA C9 21    mov dx,21c9h
 0104  B4 09       mov ah,9h
 0104  B4 09       mov ah,9h
 0106  CD 21       int 21h
 0106  CD 21       int 21h
 0108  C3          ret
 0108  C3          ret
@@ -305,12 +305,12 @@
 021C  EB EF       jmp 20dh
 021C  EB EF       jmp 20dh
 021E  58          pop ax
 021E  58          pop ax
 021F  C3          ret
 021F  C3          ret
-0220  8B 1E D2 34 mov bx,word ptr [34d2h]
+0220  8B 1E D2 21 mov bx,word ptr [21d2h]
 0224  83 FB 00    cmp bx,0h
 0224  83 FB 00    cmp bx,0h
 0227  74 09       je 232h
 0227  74 09       je 232h
 0229  8A C3       mov al,bl
 0229  8A C3       mov al,bl
 022B  31 DB       xor bx,bx
 022B  31 DB       xor bx,bx
-022D  89 1E D2 34 mov word ptr [34d2h],bx
+022D  89 1E D2 21 mov word ptr [21d2h],bx
 0231  C3          ret
 0231  C3          ret
 0232  B4 08       mov ah,8h
 0232  B4 08       mov ah,8h
 0234  CD 21       int 21h
 0234  CD 21       int 21h
@@ -318,7 +318,7 @@
 0237  88 C2       mov dl,al
 0237  88 C2       mov dl,al
 0239  BB 01 00    mov bx,1h
 0239  BB 01 00    mov bx,1h
 023C  8A DA       mov bl,dl
 023C  8A DA       mov bl,dl
-023E  89 1E D2 34 mov word ptr [34d2h],bx
+023E  89 1E D2 21 mov word ptr [21d2h],bx
 0242  C3          ret
 0242  C3          ret
 0243  55          push bp
 0243  55          push bp
 0244  8B EC       mov bp,sp
 0244  8B EC       mov bp,sp
@@ -606,7 +606,7 @@
 0431  8B 4D 06    mov cx,word ptr [di+6h]
 0431  8B 4D 06    mov cx,word ptr [di+6h]
 0434  8B 75 08    mov si,word ptr [di+8h]
 0434  8B 75 08    mov si,word ptr [di+8h]
 0437  8B 7D 0A    mov di,word ptr [di+0ah]
 0437  8B 7D 0A    mov di,word ptr [di+0ah]
-043A  C7 06 D4 34 00 00 mov word ptr [34d4h],0h
+043A  C7 06 D4 21 00 00 mov word ptr [21d4h],0h
 0440  E8 4D 00    call 490h
 0440  E8 4D 00    call 490h
 0443  5F          pop di
 0443  5F          pop di
 0444  89 05       mov word ptr [di],ax
 0444  89 05       mov word ptr [di],ax
@@ -635,7 +635,7 @@
 046D  8B 4D 06    mov cx,word ptr [di+6h]
 046D  8B 4D 06    mov cx,word ptr [di+6h]
 0470  8B 75 08    mov si,word ptr [di+8h]
 0470  8B 75 08    mov si,word ptr [di+8h]
 0473  8B 7D 0A    mov di,word ptr [di+0ah]
 0473  8B 7D 0A    mov di,word ptr [di+0ah]
-0476  C7 06 D4 34 00 80 mov word ptr [34d4h],8000h
+0476  C7 06 D4 21 00 80 mov word ptr [21d4h],8000h
 047C  E8 11 00    call 490h
 047C  E8 11 00    call 490h
 047F  5F          pop di
 047F  5F          pop di
 0480  89 05       mov word ptr [di],ax
 0480  89 05       mov word ptr [di],ax
@@ -650,7 +650,7 @@
 048F  C3          ret
 048F  C3          ret
 0490  80 F9 00    cmp cl,0h
 0490  80 F9 00    cmp cl,0h
 0493  74 0E       je 4a3h
 0493  74 0E       je 4a3h
-0495  33 3E D4 34 xor di,word ptr [34d4h]
+0495  33 3E D4 21 xor di,word ptr [21d4h]
 0499  3C 00       cmp al,0h
 0499  3C 00       cmp al,0h
 049B  75 07       jne 4a4h
 049B  75 07       jne 4a4h
 049D  89 C8       mov ax,cx
 049D  89 C8       mov ax,cx
@@ -662,16 +662,16 @@
 04A8  91          xchg ax,cx
 04A8  91          xchg ax,cx
 04A9  87 F3       xchg bx,si
 04A9  87 F3       xchg bx,si
 04AB  87 FA       xchg dx,di
 04AB  87 FA       xchg dx,di
-04AD  88 0E D8 34 mov byte ptr [34d8h],cl
+04AD  88 0E D8 21 mov byte ptr [21d8h],cl
 04B1  28 C1       sub cl,al
 04B1  28 C1       sub cl,al
 04B3  80 F9 28    cmp cl,28h
 04B3  80 F9 28    cmp cl,28h
 04B6  72 06       jb 4beh
 04B6  72 06       jb 4beh
-04B8  8A 0E D8 34 mov cl,byte ptr [34d8h]
+04B8  8A 0E D8 21 mov cl,byte ptr [21d8h]
 04BC  EB DF       jmp 49dh
 04BC  EB DF       jmp 49dh
-04BE  89 3E D4 34 mov word ptr [34d4h],di
-04C2  80 26 D5 34 80 and byte ptr [34d5h],80h
-04C7  89 3E D6 34 mov word ptr [34d6h],di
-04CB  30 36 D7 34 xor byte ptr [34d7h],dh
+04BE  89 3E D4 21 mov word ptr [21d4h],di
+04C2  80 26 D5 21 80 and byte ptr [21d5h],80h
+04C7  89 3E D6 21 mov word ptr [21d6h],di
+04CB  30 36 D7 21 xor byte ptr [21d7h],dh
 04CF  81 CF 00 80 or di,8000h
 04CF  81 CF 00 80 or di,8000h
 04D3  80 CE 80    or dh,80h
 04D3  80 CE 80    or dh,80h
 04D6  80 F9 10    cmp cl,10h
 04D6  80 F9 10    cmp cl,10h
@@ -696,8 +696,8 @@
 0501  D0 DC       rcr ah,1h
 0501  D0 DC       rcr ah,1h
 0503  FE C9       dec cl
 0503  FE C9       dec cl
 0505  75 F6       jne 4fdh
 0505  75 F6       jne 4fdh
-0507  A0 D8 34    mov al,byte ptr [34d8h]
-050A  F6 06 D7 34 80 test byte ptr [34d7h],80h
+0507  A0 D8 21    mov al,byte ptr [21d8h]
+050A  F6 06 D7 21 80 test byte ptr [21d7h],80h
 050F  75 14       jne 525h
 050F  75 14       jne 525h
 0511  00 EC       add ah,ch
 0511  00 EC       add ah,ch
 0513  11 F3       adc bx,si
 0513  11 F3       adc bx,si
@@ -717,7 +717,7 @@
 052D  19 F3       sbb bx,si
 052D  19 F3       sbb bx,si
 052F  19 FA       sbb dx,di
 052F  19 FA       sbb dx,di
 0531  73 14       jnb 547h
 0531  73 14       jnb 547h
-0533  80 36 D5 34 80 xor byte ptr [34d5h],80h
+0533  80 36 D5 21 80 xor byte ptr [21d5h],80h
 0538  F6 D4       not ah
 0538  F6 D4       not ah
 053A  F7 D3       not bx
 053A  F7 D3       not bx
 053C  F7 D2       not dx
 053C  F7 D2       not dx
@@ -749,7 +749,7 @@
 0575  31 D2       xor dx,dx
 0575  31 D2       xor dx,dx
 0577  C3          ret
 0577  C3          ret
 0578  80 E6 7F    and dh,7fh
 0578  80 E6 7F    and dh,7fh
-057B  32 36 D5 34 xor dh,byte ptr [34d5h]
+057B  32 36 D5 21 xor dh,byte ptr [21d5h]
 057F  C3          ret
 057F  C3          ret
 0580  55          push bp
 0580  55          push bp
 0581  8B EC       mov bp,sp
 0581  8B EC       mov bp,sp
@@ -795,23 +795,23 @@
 05D4  B0 01       mov al,1h
 05D4  B0 01       mov al,1h
 05D6  B4 4C       mov ah,4ch
 05D6  B4 4C       mov ah,4ch
 05D8  CD 21       int 21h
 05D8  CD 21       int 21h
-05DA  89 0E DF 34 mov word ptr [34dfh],cx
+05DA  89 0E DF 21 mov word ptr [21dfh],cx
 05DE  8B CA       mov cx,dx
 05DE  8B CA       mov cx,dx
 05E0  31 F9       xor cx,di
 05E0  31 F9       xor cx,di
 05E2  F6 D5       not ch
 05E2  F6 D5       not ch
 05E4  80 E5 80    and ch,80h
 05E4  80 E5 80    and ch,80h
-05E7  88 2E D5 34 mov byte ptr [34d5h],ch
+05E7  88 2E D5 21 mov byte ptr [21d5h],ch
 05EB  80 CE 80    or dh,80h
 05EB  80 CE 80    or dh,80h
 05EE  81 CF 00 80 or di,8000h
 05EE  81 CF 00 80 or di,8000h
-05F2  89 36 E1 34 mov word ptr [34e1h],si
-05F6  89 3E E3 34 mov word ptr [34e3h],di
-05FA  A3 D9 34    mov word ptr [34d9h],ax
-05FD  89 1E DB 34 mov word ptr [34dbh],bx
-0601  89 16 DD 34 mov word ptr [34ddh],dx
+05F2  89 36 E1 21 mov word ptr [21e1h],si
+05F6  89 3E E3 21 mov word ptr [21e3h],di
+05FA  A3 D9 21    mov word ptr [21d9h],ax
+05FD  89 1E DB 21 mov word ptr [21dbh],bx
+0601  89 16 DD 21 mov word ptr [21ddh],dx
 0605  30 E4       xor ah,ah
 0605  30 E4       xor ah,ah
 0607  31 DB       xor bx,bx
 0607  31 DB       xor bx,bx
 0609  31 D2       xor dx,dx
 0609  31 D2       xor dx,dx
-060B  BF DF 34    mov di,34dfh
+060B  BF DF 21    mov di,21dfh
 060E  B1 05       mov cl,5h
 060E  B1 05       mov cl,5h
 0610  47          inc di
 0610  47          inc di
 0611  8A 2D       mov ch,byte ptr [di]
 0611  8A 2D       mov ch,byte ptr [di]
@@ -826,9 +826,9 @@
 0624  BE 08 00    mov si,8h
 0624  BE 08 00    mov si,8h
 0627  D0 DD       rcr ch,1h
 0627  D0 DD       rcr ch,1h
 0629  73 0C       jnb 637h
 0629  73 0C       jnb 637h
-062B  02 26 DA 34 add ah,byte ptr [34dah]
-062F  13 1E DB 34 adc bx,word ptr [34dbh]
-0633  13 16 DD 34 adc dx,word ptr [34ddh]
+062B  02 26 DA 21 add ah,byte ptr [21dah]
+062F  13 1E DB 21 adc bx,word ptr [21dbh]
+0633  13 16 DD 21 adc dx,word ptr [21ddh]
 0637  D1 DA       rcr dx,1h
 0637  D1 DA       rcr dx,1h
 0639  D1 DB       rcr bx,1h
 0639  D1 DB       rcr bx,1h
 063B  D0 DC       rcr ah,1h
 063B  D0 DC       rcr ah,1h
@@ -848,7 +848,7 @@
 0655  74 02       je 659h
 0655  74 02       je 659h
 0657  FE C9       dec cl
 0657  FE C9       dec cl
 0659  91          xchg ax,cx
 0659  91          xchg ax,cx
-065A  32 36 D5 34 xor dh,byte ptr [34d5h]
+065A  32 36 D5 21 xor dh,byte ptr [21d5h]
 065E  3C 00       cmp al,0h
 065E  3C 00       cmp al,0h
 0660  75 06       jne 668h
 0660  75 06       jne 668h
 0662  31 C0       xor ax,ax
 0662  31 C0       xor ax,ax
@@ -897,29 +897,29 @@
 06B6  B0 01       mov al,1h
 06B6  B0 01       mov al,1h
 06B8  B4 4C       mov ah,4ch
 06B8  B4 4C       mov ah,4ch
 06BA  CD 21       int 21h
 06BA  CD 21       int 21h
-06BC  89 0E DF 34 mov word ptr [34dfh],cx
+06BC  89 0E DF 21 mov word ptr [21dfh],cx
 06C0  8B CA       mov cx,dx
 06C0  8B CA       mov cx,dx
 06C2  31 F9       xor cx,di
 06C2  31 F9       xor cx,di
 06C4  F6 D5       not ch
 06C4  F6 D5       not ch
 06C6  80 E5 80    and ch,80h
 06C6  80 E5 80    and ch,80h
-06C9  88 2E D5 34 mov byte ptr [34d5h],ch
+06C9  88 2E D5 21 mov byte ptr [21d5h],ch
 06CD  80 CE 80    or dh,80h
 06CD  80 CE 80    or dh,80h
 06D0  81 CF 00 80 or di,8000h
 06D0  81 CF 00 80 or di,8000h
-06D4  89 36 E1 34 mov word ptr [34e1h],si
-06D8  89 3E E3 34 mov word ptr [34e3h],di
-06DC  A2 D9 34    mov byte ptr [34d9h],al
-06DF  BF DE 34    mov di,34deh
+06D4  89 36 E1 21 mov word ptr [21e1h],si
+06D8  89 3E E3 21 mov word ptr [21e3h],di
+06DC  A2 D9 21    mov byte ptr [21d9h],al
+06DF  BF DE 21    mov di,21deh
 06E2  B1 05       mov cl,5h
 06E2  B1 05       mov cl,5h
 06E4  BE 08 00    mov si,8h
 06E4  BE 08 00    mov si,8h
-06E7  3B 16 E3 34 cmp dx,word ptr [34e3h]
+06E7  3B 16 E3 21 cmp dx,word ptr [21e3h]
 06EB  75 0A       jne 6f7h
 06EB  75 0A       jne 6f7h
-06ED  3B 1E E1 34 cmp bx,word ptr [34e1h]
+06ED  3B 1E E1 21 cmp bx,word ptr [21e1h]
 06F1  75 04       jne 6f7h
 06F1  75 04       jne 6f7h
-06F3  3A 26 E0 34 cmp ah,byte ptr [34e0h]
+06F3  3A 26 E0 21 cmp ah,byte ptr [21e0h]
 06F7  72 0C       jb 705h
 06F7  72 0C       jb 705h
-06F9  2A 26 E0 34 sub ah,byte ptr [34e0h]
-06FD  1B 1E E1 34 sbb bx,word ptr [34e1h]
-0701  1B 16 E3 34 sbb dx,word ptr [34e3h]
+06F9  2A 26 E0 21 sub ah,byte ptr [21e0h]
+06FD  1B 1E E1 21 sbb bx,word ptr [21e1h]
+0701  1B 16 E3 21 sbb dx,word ptr [21e3h]
 0705  F5          cmc
 0705  F5          cmc
 0706  D0 D5       rcl ch,1h
 0706  D0 D5       rcl ch,1h
 0708  4E          dec si
 0708  4E          dec si
@@ -933,24 +933,24 @@
 0717  D1 D3       rcl bx,1h
 0717  D1 D3       rcl bx,1h
 0719  D1 D2       rcl dx,1h
 0719  D1 D2       rcl dx,1h
 071B  73 CA       jnb 6e7h
 071B  73 CA       jnb 6e7h
-071D  2A 26 E0 34 sub ah,byte ptr [34e0h]
-0721  1B 1E E1 34 sbb bx,word ptr [34e1h]
-0725  1B 16 E3 34 sbb dx,word ptr [34e3h]
+071D  2A 26 E0 21 sub ah,byte ptr [21e0h]
+0721  1B 1E E1 21 sbb bx,word ptr [21e1h]
+0725  1B 16 E3 21 sbb dx,word ptr [21e3h]
 0729  F8          clc
 0729  F8          clc
 072A  EB D9       jmp 705h
 072A  EB D9       jmp 705h
 072C  D0 E4       shl ah,1h
 072C  D0 E4       shl ah,1h
 072E  D1 D3       rcl bx,1h
 072E  D1 D3       rcl bx,1h
 0730  D1 D2       rcl dx,1h
 0730  D1 D2       rcl dx,1h
 0732  72 11       jb 745h
 0732  72 11       jb 745h
-0734  3B 16 E3 34 cmp dx,word ptr [34e3h]
+0734  3B 16 E3 21 cmp dx,word ptr [21e3h]
 0738  75 0A       jne 744h
 0738  75 0A       jne 744h
-073A  3B 1E E1 34 cmp bx,word ptr [34e1h]
+073A  3B 1E E1 21 cmp bx,word ptr [21e1h]
 073E  75 04       jne 744h
 073E  75 04       jne 744h
-0740  3A 26 E0 34 cmp ah,byte ptr [34e0h]
+0740  3A 26 E0 21 cmp ah,byte ptr [21e0h]
 0744  F5          cmc
 0744  F5          cmc
-0745  8B 0E D9 34 mov cx,word ptr [34d9h]
-0749  8B 1E DB 34 mov bx,word ptr [34dbh]
-074D  8B 16 DD 34 mov dx,word ptr [34ddh]
+0745  8B 0E D9 21 mov cx,word ptr [21d9h]
+0749  8B 1E DB 21 mov bx,word ptr [21dbh]
+074D  8B 16 DD 21 mov dx,word ptr [21ddh]
 0751  9F          lahf
 0751  9F          lahf
 0752  F6 C6 80    test dh,80h
 0752  F6 C6 80    test dh,80h
 0755  75 09       jne 760h
 0755  75 09       jne 760h
@@ -1082,3700 +1082,2350 @@
 084A  C3          ret
 084A  C3          ret
 084B  B0 00       mov al,0h
 084B  B0 00       mov al,0h
 084D  EB EB       jmp 83ah
 084D  EB EB       jmp 83ah
-084F  C7 06 D4 34 00 00 mov word ptr [34d4h],0h
+084F  C7 06 D4 21 00 00 mov word ptr [21d4h],0h
 0855  E8 38 FC    call 490h
 0855  E8 38 FC    call 490h
 0858  C3          ret
 0858  C3          ret
 0859  E8 43 FE    call 69fh
 0859  E8 43 FE    call 69fh
 085C  C3          ret
 085C  C3          ret
-085D  55          push bp
-085E  8B EC       mov bp,sp
-0860  53          push bx
-0861  52          push dx
-0862  56          push si
-0863  57          push di
-0864  FF 76 04    push word ptr [bp+4h]
-0867  8B 7E 04    mov di,word ptr [bp+4h]
-086A  8B 05       mov ax,word ptr [di]
-086C  8B 4D 02    mov cx,word ptr [di+2h]
-086F  89 CB       mov bx,cx
-0871  8B 55 04    mov dx,word ptr [di+4h]
-0874  80 E6 7F    and dh,7fh
-0877  89 05       mov word ptr [di],ax
-0879  89 5D 02    mov word ptr [di+2h],bx
-087C  89 55 04    mov word ptr [di+4h],dx
-087F  5F          pop di
-0880  5E          pop si
-0881  5A          pop dx
-0882  5B          pop bx
-0883  89 EC       mov sp,bp
-0885  5D          pop bp
-0886  C3          ret
-0887  55          push bp
-0888  8B EC       mov bp,sp
-088A  53          push bx
-088B  52          push dx
-088C  56          push si
-088D  57          push di
-088E  FF 76 04    push word ptr [bp+4h]
-0891  8B 76 04    mov si,word ptr [bp+4h]
-0894  8B 04       mov ax,word ptr [si]
-0896  8B 4C 02    mov cx,word ptr [si+2h]
-0899  89 CB       mov bx,cx
-089B  8B 54 04    mov dx,word ptr [si+4h]
-089E  3C 00       cmp al,0h
-08A0  75 03       jne 8a5h
-08A2  E9 05 01    jmp 9aah
-08A5  F6 C6 80    test dh,80h
-08A8  74 03       je 8adh
-08AA  E9 06 01    jmp 9b3h
-08AD  A3 82 36    mov word ptr [3682h],ax
-08B0  89 1E 84 36 mov word ptr [3684h],bx
-08B4  89 16 86 36 mov word ptr [3686h],dx
-08B8  88 C1       mov cl,al
-08BA  80 C1 80    add cl,80h
-08BD  D0 F9       sar cl,1h
-08BF  80 C1 80    add cl,80h
-08C2  88 C8       mov al,cl
-08C4  A3 88 36    mov word ptr [3688h],ax
-08C7  89 1E 8A 36 mov word ptr [368ah],bx
-08CB  89 16 8C 36 mov word ptr [368ch],dx
-08CF  C6 06 94 36 0C mov byte ptr [3694h],0ch
-08D4  8B 7E 04    mov di,word ptr [bp+4h]
-08D7  8B 06 82 36 mov ax,word ptr [3682h]
-08DB  89 05       mov word ptr [di],ax
-08DD  8B 1E 84 36 mov bx,word ptr [3684h]
-08E1  89 5D 02    mov word ptr [di+2h],bx
-08E4  8B 16 86 36 mov dx,word ptr [3686h]
-08E8  89 55 04    mov word ptr [di+4h],dx
-08EB  8B 7E 04    mov di,word ptr [bp+4h]
-08EE  81 C7 06 00 add di,6h
-08F2  8B 06 88 36 mov ax,word ptr [3688h]
-08F6  89 05       mov word ptr [di],ax
-08F8  8B 1E 8A 36 mov bx,word ptr [368ah]
-08FC  89 5D 02    mov word ptr [di+2h],bx
-08FF  8B 16 8C 36 mov dx,word ptr [368ch]
-0903  89 55 04    mov word ptr [di+4h],dx
-0906  FF 76 04    push word ptr [bp+4h]
-0909  E8 5D FD    call 669h
-090C  83 C4 02    add sp,2h
-090F  8B 76 04    mov si,word ptr [bp+4h]
-0912  8B 04       mov ax,word ptr [si]
-0914  8B 4C 02    mov cx,word ptr [si+2h]
-0917  89 CB       mov bx,cx
-0919  8B 54 04    mov dx,word ptr [si+4h]
-091C  A3 8E 36    mov word ptr [368eh],ax
-091F  89 1E 90 36 mov word ptr [3690h],bx
-0923  89 16 92 36 mov word ptr [3692h],dx
-0927  8B 7E 04    mov di,word ptr [bp+4h]
-092A  8B 06 88 36 mov ax,word ptr [3688h]
-092E  89 05       mov word ptr [di],ax
-0930  8B 1E 8A 36 mov bx,word ptr [368ah]
-0934  89 5D 02    mov word ptr [di+2h],bx
-0937  8B 16 8C 36 mov dx,word ptr [368ch]
-093B  89 55 04    mov word ptr [di+4h],dx
-093E  8B 7E 04    mov di,word ptr [bp+4h]
-0941  81 C7 06 00 add di,6h
-0945  8B 06 8E 36 mov ax,word ptr [368eh]
-0949  89 05       mov word ptr [di],ax
-094B  8B 1E 90 36 mov bx,word ptr [3690h]
-094F  89 5D 02    mov word ptr [di+2h],bx
-0952  8B 16 92 36 mov dx,word ptr [3692h]
-0956  89 55 04    mov word ptr [di+4h],dx
-0959  FF 76 04    push word ptr [bp+4h]
-095C  E8 B9 FA    call 418h
-095F  83 C4 02    add sp,2h
-0962  8B 76 04    mov si,word ptr [bp+4h]
-0965  8B 04       mov ax,word ptr [si]
-0967  8B 4C 02    mov cx,word ptr [si+2h]
-096A  89 CB       mov bx,cx
-096C  8B 54 04    mov dx,word ptr [si+4h]
-096F  FE C8       dec al
-0971  A3 88 36    mov word ptr [3688h],ax
-0974  89 1E 8A 36 mov word ptr [368ah],bx
-0978  89 16 8C 36 mov word ptr [368ch],dx
-097C  FE 0E 94 36 dec byte ptr [3694h]
-0980  74 03       je 985h
-0982  E9 4F FF    jmp 8d4h
-0985  8B 06 88 36 mov ax,word ptr [3688h]
-0989  8B 1E 8A 36 mov bx,word ptr [368ah]
-098D  8B 16 8C 36 mov dx,word ptr [368ch]
-0991  EB 0C       jmp 99fh
-0993  8B 06 8E 36 mov ax,word ptr [368eh]
-0997  8B 1E 90 36 mov bx,word ptr [3690h]
-099B  8B 16 92 36 mov dx,word ptr [3692h]
-099F  5F          pop di
-09A0  89 05       mov word ptr [di],ax
-09A2  89 5D 02    mov word ptr [di+2h],bx
-09A5  89 55 04    mov word ptr [di+4h],dx
-09A8  EB 01       jmp 9abh
-09AA  5F          pop di
-09AB  5F          pop di
-09AC  5E          pop si
-09AD  5A          pop dx
-09AE  5B          pop bx
-09AF  89 EC       mov sp,bp
-09B1  5D          pop bp
-09B2  C3          ret
-09B3  5F          pop di
-09B4  B0 03       mov al,3h
-09B6  B4 4C       mov ah,4ch
-09B8  CD 21       int 21h
-09BA  55          push bp
-09BB  8B EC       mov bp,sp
-09BD  53          push bx
-09BE  52          push dx
-09BF  56          push si
-09C0  57          push di
-09C1  FF 76 04    push word ptr [bp+4h]
-09C4  8B 76 04    mov si,word ptr [bp+4h]
-09C7  8B 04       mov ax,word ptr [si]
-09C9  8B 4C 02    mov cx,word ptr [si+2h]
-09CC  89 CB       mov bx,cx
-09CE  8B 54 04    mov dx,word ptr [si+4h]
-09D1  A3 AF 37    mov word ptr [37afh],ax
-09D4  89 1E B1 37 mov word ptr [37b1h],bx
-09D8  89 16 B3 37 mov word ptr [37b3h],dx
-09DC  8B 06 AF 37 mov ax,word ptr [37afh]
-09E0  A3 C1 37    mov word ptr [37c1h],ax
-09E3  8B 1E B1 37 mov bx,word ptr [37b1h]
-09E7  89 1E C3 37 mov word ptr [37c3h],bx
-09EB  8B 16 B3 37 mov dx,word ptr [37b3h]
-09EF  89 16 C5 37 mov word ptr [37c5h],dx
-09F3  8B 06 9B 36 mov ax,word ptr [369bh]
-09F7  A3 C7 37    mov word ptr [37c7h],ax
-09FA  8B 1E 9D 36 mov bx,word ptr [369dh]
-09FE  89 1E C9 37 mov word ptr [37c9h],bx
-0A02  8B 16 9F 36 mov dx,word ptr [369fh]
-0A06  89 16 CB 37 mov word ptr [37cbh],dx
-0A0A  BB C1 37    mov bx,37c1h
-0A0D  53          push bx
-0A0E  E8 58 FC    call 669h
-0A11  83 C4 02    add sp,2h
-0A14  8B 06 C1 37 mov ax,word ptr [37c1h]
-0A18  A3 B5 37    mov word ptr [37b5h],ax
-0A1B  8B 1E C3 37 mov bx,word ptr [37c3h]
-0A1F  89 1E B7 37 mov word ptr [37b7h],bx
-0A23  8B 16 C5 37 mov dx,word ptr [37c5h]
-0A27  89 16 B9 37 mov word ptr [37b9h],dx
-0A2B  8B 06 1F 37 mov ax,word ptr [371fh]
-0A2F  A3 BB 37    mov word ptr [37bbh],ax
-0A32  8B 1E 21 37 mov bx,word ptr [3721h]
-0A36  89 1E BD 37 mov word ptr [37bdh],bx
-0A3A  8B 16 23 37 mov dx,word ptr [3723h]
-0A3E  89 16 BF 37 mov word ptr [37bfh],dx
-0A42  8B 06 BB 37 mov ax,word ptr [37bbh]
-0A46  A3 C1 37    mov word ptr [37c1h],ax
-0A49  8B 1E BD 37 mov bx,word ptr [37bdh]
-0A4D  89 1E C3 37 mov word ptr [37c3h],bx
-0A51  8B 16 BF 37 mov dx,word ptr [37bfh]
-0A55  89 16 C5 37 mov word ptr [37c5h],dx
-0A59  8B 06 B5 37 mov ax,word ptr [37b5h]
-0A5D  A3 C7 37    mov word ptr [37c7h],ax
-0A60  8B 1E B7 37 mov bx,word ptr [37b7h]
-0A64  89 1E C9 37 mov word ptr [37c9h],bx
-0A68  8B 16 B9 37 mov dx,word ptr [37b9h]
-0A6C  89 16 CB 37 mov word ptr [37cbh],dx
-0A70  BB C1 37    mov bx,37c1h
+085D  8B 1E EF 24 mov bx,word ptr [24efh]
+0861  89 DE       mov si,bx
+0863  8B 04       mov ax,word ptr [si]
+0865  A3 BB 24    mov word ptr [24bbh],ax
+0868  8B 4C 02    mov cx,word ptr [si+2h]
+086B  89 CB       mov bx,cx
+086D  89 1E BD 24 mov word ptr [24bdh],bx
+0871  8B 54 04    mov dx,word ptr [si+4h]
+0874  89 16 BF 24 mov word ptr [24bfh],dx
+0878  8B 1E EF 24 mov bx,word ptr [24efh]
+087C  81 C3 06 00 add bx,6h
+0880  89 1E EF 24 mov word ptr [24efh],bx
+0884  FE 0E F1 24 dec byte ptr [24f1h]
+0888  75 03       jne 88dh
+088A  E9 B7 00    jmp 944h
+088D  8B 06 BB 24 mov ax,word ptr [24bbh]
+0891  A3 C1 24    mov word ptr [24c1h],ax
+0894  8B 1E BD 24 mov bx,word ptr [24bdh]
+0898  89 1E C3 24 mov word ptr [24c3h],bx
+089C  8B 16 BF 24 mov dx,word ptr [24bfh]
+08A0  89 16 C5 24 mov word ptr [24c5h],dx
+08A4  8B 06 B5 24 mov ax,word ptr [24b5h]
+08A8  A3 C7 24    mov word ptr [24c7h],ax
+08AB  8B 1E B7 24 mov bx,word ptr [24b7h]
+08AF  89 1E C9 24 mov word ptr [24c9h],bx
+08B3  8B 16 B9 24 mov dx,word ptr [24b9h]
+08B7  89 16 CB 24 mov word ptr [24cbh],dx
+08BB  BB C1 24    mov bx,24c1h
+08BE  53          push bx
+08BF  E8 BE FC    call 580h
+08C2  83 C4 02    add sp,2h
+08C5  8B 06 C1 24 mov ax,word ptr [24c1h]
+08C9  A3 BB 24    mov word ptr [24bbh],ax
+08CC  8B 1E C3 24 mov bx,word ptr [24c3h]
+08D0  89 1E BD 24 mov word ptr [24bdh],bx
+08D4  8B 16 C5 24 mov dx,word ptr [24c5h]
+08D8  89 16 BF 24 mov word ptr [24bfh],dx
+08DC  8B 06 BB 24 mov ax,word ptr [24bbh]
+08E0  A3 C1 24    mov word ptr [24c1h],ax
+08E3  8B 1E BD 24 mov bx,word ptr [24bdh]
+08E7  89 1E C3 24 mov word ptr [24c3h],bx
+08EB  8B 16 BF 24 mov dx,word ptr [24bfh]
+08EF  89 16 C5 24 mov word ptr [24c5h],dx
+08F3  8B 1E EF 24 mov bx,word ptr [24efh]
+08F7  89 DE       mov si,bx
+08F9  8B 04       mov ax,word ptr [si]
+08FB  A3 C7 24    mov word ptr [24c7h],ax
+08FE  8B 4C 02    mov cx,word ptr [si+2h]
+0901  89 CB       mov bx,cx
+0903  89 1E C9 24 mov word ptr [24c9h],bx
+0907  8B 54 04    mov dx,word ptr [si+4h]
+090A  89 16 CB 24 mov word ptr [24cbh],dx
+090E  BB C1 24    mov bx,24c1h
+0911  53          push bx
+0912  E8 03 FB    call 418h
+0915  83 C4 02    add sp,2h
+0918  8B 06 C1 24 mov ax,word ptr [24c1h]
+091C  A3 BB 24    mov word ptr [24bbh],ax
+091F  8B 1E C3 24 mov bx,word ptr [24c3h]
+0923  89 1E BD 24 mov word ptr [24bdh],bx
+0927  8B 16 C5 24 mov dx,word ptr [24c5h]
+092B  89 16 BF 24 mov word ptr [24bfh],dx
+092F  8B 1E EF 24 mov bx,word ptr [24efh]
+0933  81 C3 06 00 add bx,6h
+0937  89 1E EF 24 mov word ptr [24efh],bx
+093B  FE 0E F1 24 dec byte ptr [24f1h]
+093F  74 03       je 944h
+0941  E9 49 FF    jmp 88dh
+0944  F6 06 F2 24 01 test byte ptr [24f2h],1h
+0949  75 03       jne 94eh
+094B  E9 9E 00    jmp 9ech
+094E  8B 06 BB 24 mov ax,word ptr [24bbh]
+0952  A3 C1 24    mov word ptr [24c1h],ax
+0955  8B 1E BD 24 mov bx,word ptr [24bdh]
+0959  89 1E C3 24 mov word ptr [24c3h],bx
+095D  8B 16 BF 24 mov dx,word ptr [24bfh]
+0961  89 16 C5 24 mov word ptr [24c5h],dx
+0965  8B 06 B5 24 mov ax,word ptr [24b5h]
+0969  A3 C7 24    mov word ptr [24c7h],ax
+096C  8B 1E B7 24 mov bx,word ptr [24b7h]
+0970  89 1E C9 24 mov word ptr [24c9h],bx
+0974  8B 16 B9 24 mov dx,word ptr [24b9h]
+0978  89 16 CB 24 mov word ptr [24cbh],dx
+097C  BB C1 24    mov bx,24c1h
+097F  53          push bx
+0980  E8 FD FB    call 580h
+0983  83 C4 02    add sp,2h
+0986  8B 06 C1 24 mov ax,word ptr [24c1h]
+098A  A3 BB 24    mov word ptr [24bbh],ax
+098D  8B 1E C3 24 mov bx,word ptr [24c3h]
+0991  89 1E BD 24 mov word ptr [24bdh],bx
+0995  8B 16 C5 24 mov dx,word ptr [24c5h]
+0999  89 16 BF 24 mov word ptr [24bfh],dx
+099D  8B 06 BB 24 mov ax,word ptr [24bbh]
+09A1  A3 C1 24    mov word ptr [24c1h],ax
+09A4  8B 1E BD 24 mov bx,word ptr [24bdh]
+09A8  89 1E C3 24 mov word ptr [24c3h],bx
+09AC  8B 16 BF 24 mov dx,word ptr [24bfh]
+09B0  89 16 C5 24 mov word ptr [24c5h],dx
+09B4  8B 06 95 23 mov ax,word ptr [2395h]
+09B8  A3 C7 24    mov word ptr [24c7h],ax
+09BB  8B 1E 97 23 mov bx,word ptr [2397h]
+09BF  89 1E C9 24 mov word ptr [24c9h],bx
+09C3  8B 16 99 23 mov dx,word ptr [2399h]
+09C7  89 16 CB 24 mov word ptr [24cbh],dx
+09CB  BB C1 24    mov bx,24c1h
+09CE  53          push bx
+09CF  E8 46 FA    call 418h
+09D2  83 C4 02    add sp,2h
+09D5  8B 06 C1 24 mov ax,word ptr [24c1h]
+09D9  A3 BB 24    mov word ptr [24bbh],ax
+09DC  8B 1E C3 24 mov bx,word ptr [24c3h]
+09E0  89 1E BD 24 mov word ptr [24bdh],bx
+09E4  8B 16 C5 24 mov dx,word ptr [24c5h]
+09E8  89 16 BF 24 mov word ptr [24bfh],dx
+09EC  C3          ret
+09ED  8B 06 BB 24 mov ax,word ptr [24bbh]
+09F1  A3 C1 24    mov word ptr [24c1h],ax
+09F4  8B 1E BD 24 mov bx,word ptr [24bdh]
+09F8  89 1E C3 24 mov word ptr [24c3h],bx
+09FC  8B 16 BF 24 mov dx,word ptr [24bfh]
+0A00  89 16 C5 24 mov word ptr [24c5h],dx
+0A04  8B 06 BB 24 mov ax,word ptr [24bbh]
+0A08  A3 C7 24    mov word ptr [24c7h],ax
+0A0B  8B 1E BD 24 mov bx,word ptr [24bdh]
+0A0F  89 1E C9 24 mov word ptr [24c9h],bx
+0A13  8B 16 BF 24 mov dx,word ptr [24bfh]
+0A17  89 16 CB 24 mov word ptr [24cbh],dx
+0A1B  BB C1 24    mov bx,24c1h
+0A1E  53          push bx
+0A1F  E8 5E FB    call 580h
+0A22  83 C4 02    add sp,2h
+0A25  8B 06 C1 24 mov ax,word ptr [24c1h]
+0A29  A3 BB 24    mov word ptr [24bbh],ax
+0A2C  8B 1E C3 24 mov bx,word ptr [24c3h]
+0A30  89 1E BD 24 mov word ptr [24bdh],bx
+0A34  8B 16 C5 24 mov dx,word ptr [24c5h]
+0A38  89 16 BF 24 mov word ptr [24bfh],dx
+0A3C  FE 0E F1 24 dec byte ptr [24f1h]
+0A40  74 03       je 0a45h
+0A42  E9 A8 FF    jmp 9edh
+0A45  C3          ret
+0A46  55          push bp
+0A47  8B EC       mov bp,sp
+0A49  53          push bx
+0A4A  52          push dx
+0A4B  56          push si
+0A4C  57          push di
+0A4D  FF 76 04    push word ptr [bp+4h]
+0A50  8B 7E 04    mov di,word ptr [bp+4h]
+0A53  8B 05       mov ax,word ptr [di]
+0A55  8B 4D 02    mov cx,word ptr [di+2h]
+0A58  89 CB       mov bx,cx
+0A5A  8B 55 04    mov dx,word ptr [di+4h]
+0A5D  80 E6 7F    and dh,7fh
+0A60  89 05       mov word ptr [di],ax
+0A62  89 5D 02    mov word ptr [di+2h],bx
+0A65  89 55 04    mov word ptr [di+4h],dx
+0A68  5F          pop di
+0A69  5E          pop si
+0A6A  5A          pop dx
+0A6B  5B          pop bx
+0A6C  89 EC       mov sp,bp
+0A6E  5D          pop bp
+0A6F  C3          ret
+0A70  55          push bp
+0A71  8B EC       mov bp,sp
 0A73  53          push bx
 0A73  53          push bx
-0A74  E8 09 FB    call 580h
-0A77  83 C4 02    add sp,2h
-0A7A  8B 06 C1 37 mov ax,word ptr [37c1h]
-0A7E  A3 BB 37    mov word ptr [37bbh],ax
-0A81  8B 1E C3 37 mov bx,word ptr [37c3h]
-0A85  89 1E BD 37 mov word ptr [37bdh],bx
-0A89  8B 16 C5 37 mov dx,word ptr [37c5h]
-0A8D  89 16 BF 37 mov word ptr [37bfh],dx
-0A91  8B 06 BB 37 mov ax,word ptr [37bbh]
-0A95  A3 C1 37    mov word ptr [37c1h],ax
-0A98  8B 1E BD 37 mov bx,word ptr [37bdh]
-0A9C  89 1E C3 37 mov word ptr [37c3h],bx
-0AA0  8B 16 BF 37 mov dx,word ptr [37bfh]
-0AA4  89 16 C5 37 mov word ptr [37c5h],dx
-0AA8  8B 06 19 37 mov ax,word ptr [3719h]
-0AAC  A3 C7 37    mov word ptr [37c7h],ax
-0AAF  8B 1E 1B 37 mov bx,word ptr [371bh]
-0AB3  89 1E C9 37 mov word ptr [37c9h],bx
-0AB7  8B 16 1D 37 mov dx,word ptr [371dh]
-0ABB  89 16 CB 37 mov word ptr [37cbh],dx
-0ABF  BB C1 37    mov bx,37c1h
-0AC2  53          push bx
-0AC3  E8 52 F9    call 418h
-0AC6  83 C4 02    add sp,2h
-0AC9  8B 06 C1 37 mov ax,word ptr [37c1h]
-0ACD  A3 BB 37    mov word ptr [37bbh],ax
-0AD0  8B 1E C3 37 mov bx,word ptr [37c3h]
-0AD4  89 1E BD 37 mov word ptr [37bdh],bx
-0AD8  8B 16 C5 37 mov dx,word ptr [37c5h]
-0ADC  89 16 BF 37 mov word ptr [37bfh],dx
-0AE0  8B 06 BB 37 mov ax,word ptr [37bbh]
-0AE4  A3 C1 37    mov word ptr [37c1h],ax
-0AE7  8B 1E BD 37 mov bx,word ptr [37bdh]
-0AEB  89 1E C3 37 mov word ptr [37c3h],bx
-0AEF  8B 16 BF 37 mov dx,word ptr [37bfh]
-0AF3  89 16 C5 37 mov word ptr [37c5h],dx
-0AF7  8B 06 B5 37 mov ax,word ptr [37b5h]
-0AFB  A3 C7 37    mov word ptr [37c7h],ax
-0AFE  8B 1E B7 37 mov bx,word ptr [37b7h]
-0B02  89 1E C9 37 mov word ptr [37c9h],bx
-0B06  8B 16 B9 37 mov dx,word ptr [37b9h]
-0B0A  89 16 CB 37 mov word ptr [37cbh],dx
-0B0E  BB C1 37    mov bx,37c1h
-0B11  53          push bx
-0B12  E8 6B FA    call 580h
-0B15  83 C4 02    add sp,2h
-0B18  8B 06 C1 37 mov ax,word ptr [37c1h]
-0B1C  A3 BB 37    mov word ptr [37bbh],ax
-0B1F  8B 1E C3 37 mov bx,word ptr [37c3h]
-0B23  89 1E BD 37 mov word ptr [37bdh],bx
-0B27  8B 16 C5 37 mov dx,word ptr [37c5h]
-0B2B  89 16 BF 37 mov word ptr [37bfh],dx
-0B2F  8B 06 BB 37 mov ax,word ptr [37bbh]
-0B33  A3 C1 37    mov word ptr [37c1h],ax
-0B36  8B 1E BD 37 mov bx,word ptr [37bdh]
-0B3A  89 1E C3 37 mov word ptr [37c3h],bx
-0B3E  8B 16 BF 37 mov dx,word ptr [37bfh]
-0B42  89 16 C5 37 mov word ptr [37c5h],dx
-0B46  8B 06 13 37 mov ax,word ptr [3713h]
-0B4A  A3 C7 37    mov word ptr [37c7h],ax
-0B4D  8B 1E 15 37 mov bx,word ptr [3715h]
-0B51  89 1E C9 37 mov word ptr [37c9h],bx
-0B55  8B 16 17 37 mov dx,word ptr [3717h]
-0B59  89 16 CB 37 mov word ptr [37cbh],dx
-0B5D  BB C1 37    mov bx,37c1h
-0B60  53          push bx
-0B61  E8 B4 F8    call 418h
-0B64  83 C4 02    add sp,2h
-0B67  8B 06 C1 37 mov ax,word ptr [37c1h]
-0B6B  A3 BB 37    mov word ptr [37bbh],ax
-0B6E  8B 1E C3 37 mov bx,word ptr [37c3h]
-0B72  89 1E BD 37 mov word ptr [37bdh],bx
-0B76  8B 16 C5 37 mov dx,word ptr [37c5h]
-0B7A  89 16 BF 37 mov word ptr [37bfh],dx
-0B7E  8B 06 BB 37 mov ax,word ptr [37bbh]
-0B82  A3 C1 37    mov word ptr [37c1h],ax
-0B85  8B 1E BD 37 mov bx,word ptr [37bdh]
-0B89  89 1E C3 37 mov word ptr [37c3h],bx
-0B8D  8B 16 BF 37 mov dx,word ptr [37bfh]
-0B91  89 16 C5 37 mov word ptr [37c5h],dx
-0B95  8B 06 B5 37 mov ax,word ptr [37b5h]
-0B99  A3 C7 37    mov word ptr [37c7h],ax
-0B9C  8B 1E B7 37 mov bx,word ptr [37b7h]
-0BA0  89 1E C9 37 mov word ptr [37c9h],bx
-0BA4  8B 16 B9 37 mov dx,word ptr [37b9h]
-0BA8  89 16 CB 37 mov word ptr [37cbh],dx
-0BAC  BB C1 37    mov bx,37c1h
-0BAF  53          push bx
-0BB0  E8 CD F9    call 580h
-0BB3  83 C4 02    add sp,2h
-0BB6  8B 06 C1 37 mov ax,word ptr [37c1h]
-0BBA  A3 BB 37    mov word ptr [37bbh],ax
-0BBD  8B 1E C3 37 mov bx,word ptr [37c3h]
-0BC1  89 1E BD 37 mov word ptr [37bdh],bx
-0BC5  8B 16 C5 37 mov dx,word ptr [37c5h]
-0BC9  89 16 BF 37 mov word ptr [37bfh],dx
-0BCD  8B 06 BB 37 mov ax,word ptr [37bbh]
-0BD1  A3 C1 37    mov word ptr [37c1h],ax
-0BD4  8B 1E BD 37 mov bx,word ptr [37bdh]
-0BD8  89 1E C3 37 mov word ptr [37c3h],bx
-0BDC  8B 16 BF 37 mov dx,word ptr [37bfh]
-0BE0  89 16 C5 37 mov word ptr [37c5h],dx
-0BE4  8B 06 0D 37 mov ax,word ptr [370dh]
-0BE8  A3 C7 37    mov word ptr [37c7h],ax
-0BEB  8B 1E 0F 37 mov bx,word ptr [370fh]
-0BEF  89 1E C9 37 mov word ptr [37c9h],bx
-0BF3  8B 16 11 37 mov dx,word ptr [3711h]
-0BF7  89 16 CB 37 mov word ptr [37cbh],dx
-0BFB  BB C1 37    mov bx,37c1h
-0BFE  53          push bx
-0BFF  E8 16 F8    call 418h
-0C02  83 C4 02    add sp,2h
-0C05  8B 06 C1 37 mov ax,word ptr [37c1h]
-0C09  A3 BB 37    mov word ptr [37bbh],ax
-0C0C  8B 1E C3 37 mov bx,word ptr [37c3h]
-0C10  89 1E BD 37 mov word ptr [37bdh],bx
-0C14  8B 16 C5 37 mov dx,word ptr [37c5h]
-0C18  89 16 BF 37 mov word ptr [37bfh],dx
-0C1C  8B 06 BB 37 mov ax,word ptr [37bbh]
-0C20  A3 C1 37    mov word ptr [37c1h],ax
-0C23  8B 1E BD 37 mov bx,word ptr [37bdh]
-0C27  89 1E C3 37 mov word ptr [37c3h],bx
-0C2B  8B 16 BF 37 mov dx,word ptr [37bfh]
-0C2F  89 16 C5 37 mov word ptr [37c5h],dx
-0C33  8B 06 B5 37 mov ax,word ptr [37b5h]
-0C37  A3 C7 37    mov word ptr [37c7h],ax
-0C3A  8B 1E B7 37 mov bx,word ptr [37b7h]
-0C3E  89 1E C9 37 mov word ptr [37c9h],bx
-0C42  8B 16 B9 37 mov dx,word ptr [37b9h]
-0C46  89 16 CB 37 mov word ptr [37cbh],dx
-0C4A  BB C1 37    mov bx,37c1h
-0C4D  53          push bx
-0C4E  E8 2F F9    call 580h
-0C51  83 C4 02    add sp,2h
-0C54  8B 06 C1 37 mov ax,word ptr [37c1h]
-0C58  A3 BB 37    mov word ptr [37bbh],ax
-0C5B  8B 1E C3 37 mov bx,word ptr [37c3h]
-0C5F  89 1E BD 37 mov word ptr [37bdh],bx
-0C63  8B 16 C5 37 mov dx,word ptr [37c5h]
-0C67  89 16 BF 37 mov word ptr [37bfh],dx
-0C6B  8B 06 BB 37 mov ax,word ptr [37bbh]
-0C6F  A3 C1 37    mov word ptr [37c1h],ax
-0C72  8B 1E BD 37 mov bx,word ptr [37bdh]
-0C76  89 1E C3 37 mov word ptr [37c3h],bx
-0C7A  8B 16 BF 37 mov dx,word ptr [37bfh]
-0C7E  89 16 C5 37 mov word ptr [37c5h],dx
-0C82  8B 06 07 37 mov ax,word ptr [3707h]
-0C86  A3 C7 37    mov word ptr [37c7h],ax
-0C89  8B 1E 09 37 mov bx,word ptr [3709h]
-0C8D  89 1E C9 37 mov word ptr [37c9h],bx
-0C91  8B 16 0B 37 mov dx,word ptr [370bh]
-0C95  89 16 CB 37 mov word ptr [37cbh],dx
-0C99  BB C1 37    mov bx,37c1h
-0C9C  53          push bx
-0C9D  E8 78 F7    call 418h
-0CA0  83 C4 02    add sp,2h
-0CA3  8B 06 C1 37 mov ax,word ptr [37c1h]
-0CA7  A3 BB 37    mov word ptr [37bbh],ax
-0CAA  8B 1E C3 37 mov bx,word ptr [37c3h]
-0CAE  89 1E BD 37 mov word ptr [37bdh],bx
-0CB2  8B 16 C5 37 mov dx,word ptr [37c5h]
-0CB6  89 16 BF 37 mov word ptr [37bfh],dx
-0CBA  8B 06 BB 37 mov ax,word ptr [37bbh]
-0CBE  A3 C1 37    mov word ptr [37c1h],ax
-0CC1  8B 1E BD 37 mov bx,word ptr [37bdh]
-0CC5  89 1E C3 37 mov word ptr [37c3h],bx
-0CC9  8B 16 BF 37 mov dx,word ptr [37bfh]
-0CCD  89 16 C5 37 mov word ptr [37c5h],dx
-0CD1  8B 06 B5 37 mov ax,word ptr [37b5h]
-0CD5  A3 C7 37    mov word ptr [37c7h],ax
-0CD8  8B 1E B7 37 mov bx,word ptr [37b7h]
-0CDC  89 1E C9 37 mov word ptr [37c9h],bx
-0CE0  8B 16 B9 37 mov dx,word ptr [37b9h]
-0CE4  89 16 CB 37 mov word ptr [37cbh],dx
-0CE8  BB C1 37    mov bx,37c1h
-0CEB  53          push bx
-0CEC  E8 91 F8    call 580h
-0CEF  83 C4 02    add sp,2h
-0CF2  8B 06 C1 37 mov ax,word ptr [37c1h]
-0CF6  A3 BB 37    mov word ptr [37bbh],ax
-0CF9  8B 1E C3 37 mov bx,word ptr [37c3h]
-0CFD  89 1E BD 37 mov word ptr [37bdh],bx
-0D01  8B 16 C5 37 mov dx,word ptr [37c5h]
-0D05  89 16 BF 37 mov word ptr [37bfh],dx
-0D09  8B 06 BB 37 mov ax,word ptr [37bbh]
-0D0D  A3 C1 37    mov word ptr [37c1h],ax
-0D10  8B 1E BD 37 mov bx,word ptr [37bdh]
-0D14  89 1E C3 37 mov word ptr [37c3h],bx
-0D18  8B 16 BF 37 mov dx,word ptr [37bfh]
-0D1C  89 16 C5 37 mov word ptr [37c5h],dx
-0D20  8B 06 01 37 mov ax,word ptr [3701h]
-0D24  A3 C7 37    mov word ptr [37c7h],ax
-0D27  8B 1E 03 37 mov bx,word ptr [3703h]
-0D2B  89 1E C9 37 mov word ptr [37c9h],bx
-0D2F  8B 16 05 37 mov dx,word ptr [3705h]
-0D33  89 16 CB 37 mov word ptr [37cbh],dx
-0D37  BB C1 37    mov bx,37c1h
-0D3A  53          push bx
-0D3B  E8 DA F6    call 418h
-0D3E  83 C4 02    add sp,2h
-0D41  8B 06 C1 37 mov ax,word ptr [37c1h]
-0D45  A3 BB 37    mov word ptr [37bbh],ax
-0D48  8B 1E C3 37 mov bx,word ptr [37c3h]
-0D4C  89 1E BD 37 mov word ptr [37bdh],bx
-0D50  8B 16 C5 37 mov dx,word ptr [37c5h]
-0D54  89 16 BF 37 mov word ptr [37bfh],dx
-0D58  8B 06 BB 37 mov ax,word ptr [37bbh]
-0D5C  A3 C1 37    mov word ptr [37c1h],ax
-0D5F  8B 1E BD 37 mov bx,word ptr [37bdh]
-0D63  89 1E C3 37 mov word ptr [37c3h],bx
-0D67  8B 16 BF 37 mov dx,word ptr [37bfh]
-0D6B  89 16 C5 37 mov word ptr [37c5h],dx
-0D6F  8B 06 B5 37 mov ax,word ptr [37b5h]
-0D73  A3 C7 37    mov word ptr [37c7h],ax
-0D76  8B 1E B7 37 mov bx,word ptr [37b7h]
-0D7A  89 1E C9 37 mov word ptr [37c9h],bx
-0D7E  8B 16 B9 37 mov dx,word ptr [37b9h]
-0D82  89 16 CB 37 mov word ptr [37cbh],dx
-0D86  BB C1 37    mov bx,37c1h
-0D89  53          push bx
-0D8A  E8 F3 F7    call 580h
-0D8D  83 C4 02    add sp,2h
-0D90  8B 06 C1 37 mov ax,word ptr [37c1h]
-0D94  A3 BB 37    mov word ptr [37bbh],ax
-0D97  8B 1E C3 37 mov bx,word ptr [37c3h]
-0D9B  89 1E BD 37 mov word ptr [37bdh],bx
-0D9F  8B 16 C5 37 mov dx,word ptr [37c5h]
-0DA3  89 16 BF 37 mov word ptr [37bfh],dx
-0DA7  8B 06 BB 37 mov ax,word ptr [37bbh]
-0DAB  A3 C1 37    mov word ptr [37c1h],ax
-0DAE  8B 1E BD 37 mov bx,word ptr [37bdh]
-0DB2  89 1E C3 37 mov word ptr [37c3h],bx
-0DB6  8B 16 BF 37 mov dx,word ptr [37bfh]
-0DBA  89 16 C5 37 mov word ptr [37c5h],dx
-0DBE  8B 06 FB 36 mov ax,word ptr [36fbh]
-0DC2  A3 C7 37    mov word ptr [37c7h],ax
-0DC5  8B 1E FD 36 mov bx,word ptr [36fdh]
-0DC9  89 1E C9 37 mov word ptr [37c9h],bx
-0DCD  8B 16 FF 36 mov dx,word ptr [36ffh]
-0DD1  89 16 CB 37 mov word ptr [37cbh],dx
-0DD5  BB C1 37    mov bx,37c1h
-0DD8  53          push bx
-0DD9  E8 3C F6    call 418h
-0DDC  83 C4 02    add sp,2h
-0DDF  8B 06 C1 37 mov ax,word ptr [37c1h]
-0DE3  A3 BB 37    mov word ptr [37bbh],ax
-0DE6  8B 1E C3 37 mov bx,word ptr [37c3h]
-0DEA  89 1E BD 37 mov word ptr [37bdh],bx
-0DEE  8B 16 C5 37 mov dx,word ptr [37c5h]
-0DF2  89 16 BF 37 mov word ptr [37bfh],dx
-0DF6  8B 06 BB 37 mov ax,word ptr [37bbh]
-0DFA  A3 C1 37    mov word ptr [37c1h],ax
-0DFD  8B 1E BD 37 mov bx,word ptr [37bdh]
-0E01  89 1E C3 37 mov word ptr [37c3h],bx
-0E05  8B 16 BF 37 mov dx,word ptr [37bfh]
-0E09  89 16 C5 37 mov word ptr [37c5h],dx
-0E0D  8B 06 B5 37 mov ax,word ptr [37b5h]
-0E11  A3 C7 37    mov word ptr [37c7h],ax
-0E14  8B 1E B7 37 mov bx,word ptr [37b7h]
-0E18  89 1E C9 37 mov word ptr [37c9h],bx
-0E1C  8B 16 B9 37 mov dx,word ptr [37b9h]
-0E20  89 16 CB 37 mov word ptr [37cbh],dx
-0E24  BB C1 37    mov bx,37c1h
-0E27  53          push bx
-0E28  E8 55 F7    call 580h
-0E2B  83 C4 02    add sp,2h
-0E2E  8B 06 C1 37 mov ax,word ptr [37c1h]
-0E32  A3 BB 37    mov word ptr [37bbh],ax
-0E35  8B 1E C3 37 mov bx,word ptr [37c3h]
-0E39  89 1E BD 37 mov word ptr [37bdh],bx
-0E3D  8B 16 C5 37 mov dx,word ptr [37c5h]
-0E41  89 16 BF 37 mov word ptr [37bfh],dx
-0E45  8B 06 BB 37 mov ax,word ptr [37bbh]
-0E49  A3 C1 37    mov word ptr [37c1h],ax
-0E4C  8B 1E BD 37 mov bx,word ptr [37bdh]
-0E50  89 1E C3 37 mov word ptr [37c3h],bx
-0E54  8B 16 BF 37 mov dx,word ptr [37bfh]
-0E58  89 16 C5 37 mov word ptr [37c5h],dx
-0E5C  8B 06 F5 36 mov ax,word ptr [36f5h]
-0E60  A3 C7 37    mov word ptr [37c7h],ax
-0E63  8B 1E F7 36 mov bx,word ptr [36f7h]
-0E67  89 1E C9 37 mov word ptr [37c9h],bx
-0E6B  8B 16 F9 36 mov dx,word ptr [36f9h]
-0E6F  89 16 CB 37 mov word ptr [37cbh],dx
-0E73  BB C1 37    mov bx,37c1h
-0E76  53          push bx
-0E77  E8 9E F5    call 418h
-0E7A  83 C4 02    add sp,2h
-0E7D  8B 06 C1 37 mov ax,word ptr [37c1h]
-0E81  A3 BB 37    mov word ptr [37bbh],ax
-0E84  8B 1E C3 37 mov bx,word ptr [37c3h]
-0E88  89 1E BD 37 mov word ptr [37bdh],bx
-0E8C  8B 16 C5 37 mov dx,word ptr [37c5h]
-0E90  89 16 BF 37 mov word ptr [37bfh],dx
-0E94  8B 06 BB 37 mov ax,word ptr [37bbh]
-0E98  A3 C1 37    mov word ptr [37c1h],ax
-0E9B  8B 1E BD 37 mov bx,word ptr [37bdh]
-0E9F  89 1E C3 37 mov word ptr [37c3h],bx
-0EA3  8B 16 BF 37 mov dx,word ptr [37bfh]
-0EA7  89 16 C5 37 mov word ptr [37c5h],dx
-0EAB  8B 06 B5 37 mov ax,word ptr [37b5h]
-0EAF  A3 C7 37    mov word ptr [37c7h],ax
-0EB2  8B 1E B7 37 mov bx,word ptr [37b7h]
-0EB6  89 1E C9 37 mov word ptr [37c9h],bx
-0EBA  8B 16 B9 37 mov dx,word ptr [37b9h]
-0EBE  89 16 CB 37 mov word ptr [37cbh],dx
-0EC2  BB C1 37    mov bx,37c1h
-0EC5  53          push bx
-0EC6  E8 B7 F6    call 580h
-0EC9  83 C4 02    add sp,2h
-0ECC  8B 06 C1 37 mov ax,word ptr [37c1h]
-0ED0  A3 BB 37    mov word ptr [37bbh],ax
-0ED3  8B 1E C3 37 mov bx,word ptr [37c3h]
-0ED7  89 1E BD 37 mov word ptr [37bdh],bx
-0EDB  8B 16 C5 37 mov dx,word ptr [37c5h]
-0EDF  89 16 BF 37 mov word ptr [37bfh],dx
-0EE3  8B 06 BB 37 mov ax,word ptr [37bbh]
-0EE7  A3 C1 37    mov word ptr [37c1h],ax
-0EEA  8B 1E BD 37 mov bx,word ptr [37bdh]
-0EEE  89 1E C3 37 mov word ptr [37c3h],bx
-0EF2  8B 16 BF 37 mov dx,word ptr [37bfh]
-0EF6  89 16 C5 37 mov word ptr [37c5h],dx
-0EFA  8B 06 EF 36 mov ax,word ptr [36efh]
-0EFE  A3 C7 37    mov word ptr [37c7h],ax
-0F01  8B 1E F1 36 mov bx,word ptr [36f1h]
-0F05  89 1E C9 37 mov word ptr [37c9h],bx
-0F09  8B 16 F3 36 mov dx,word ptr [36f3h]
-0F0D  89 16 CB 37 mov word ptr [37cbh],dx
-0F11  BB C1 37    mov bx,37c1h
-0F14  53          push bx
-0F15  E8 00 F5    call 418h
-0F18  83 C4 02    add sp,2h
-0F1B  8B 06 C1 37 mov ax,word ptr [37c1h]
-0F1F  A3 BB 37    mov word ptr [37bbh],ax
-0F22  8B 1E C3 37 mov bx,word ptr [37c3h]
-0F26  89 1E BD 37 mov word ptr [37bdh],bx
-0F2A  8B 16 C5 37 mov dx,word ptr [37c5h]
-0F2E  89 16 BF 37 mov word ptr [37bfh],dx
-0F32  8B 06 BB 37 mov ax,word ptr [37bbh]
-0F36  A3 C1 37    mov word ptr [37c1h],ax
-0F39  8B 1E BD 37 mov bx,word ptr [37bdh]
-0F3D  89 1E C3 37 mov word ptr [37c3h],bx
-0F41  8B 16 BF 37 mov dx,word ptr [37bfh]
-0F45  89 16 C5 37 mov word ptr [37c5h],dx
-0F49  8B 06 B5 37 mov ax,word ptr [37b5h]
-0F4D  A3 C7 37    mov word ptr [37c7h],ax
-0F50  8B 1E B7 37 mov bx,word ptr [37b7h]
-0F54  89 1E C9 37 mov word ptr [37c9h],bx
-0F58  8B 16 B9 37 mov dx,word ptr [37b9h]
-0F5C  89 16 CB 37 mov word ptr [37cbh],dx
-0F60  BB C1 37    mov bx,37c1h
-0F63  53          push bx
-0F64  E8 19 F6    call 580h
-0F67  83 C4 02    add sp,2h
-0F6A  8B 06 C1 37 mov ax,word ptr [37c1h]
-0F6E  A3 BB 37    mov word ptr [37bbh],ax
-0F71  8B 1E C3 37 mov bx,word ptr [37c3h]
-0F75  89 1E BD 37 mov word ptr [37bdh],bx
-0F79  8B 16 C5 37 mov dx,word ptr [37c5h]
-0F7D  89 16 BF 37 mov word ptr [37bfh],dx
-0F81  8B 06 BB 37 mov ax,word ptr [37bbh]
-0F85  A3 C1 37    mov word ptr [37c1h],ax
-0F88  8B 1E BD 37 mov bx,word ptr [37bdh]
-0F8C  89 1E C3 37 mov word ptr [37c3h],bx
-0F90  8B 16 BF 37 mov dx,word ptr [37bfh]
-0F94  89 16 C5 37 mov word ptr [37c5h],dx
-0F98  8B 06 E9 36 mov ax,word ptr [36e9h]
-0F9C  A3 C7 37    mov word ptr [37c7h],ax
-0F9F  8B 1E EB 36 mov bx,word ptr [36ebh]
-0FA3  89 1E C9 37 mov word ptr [37c9h],bx
-0FA7  8B 16 ED 36 mov dx,word ptr [36edh]
-0FAB  89 16 CB 37 mov word ptr [37cbh],dx
-0FAF  BB C1 37    mov bx,37c1h
-0FB2  53          push bx
-0FB3  E8 62 F4    call 418h
-0FB6  83 C4 02    add sp,2h
-0FB9  8B 06 C1 37 mov ax,word ptr [37c1h]
-0FBD  A3 BB 37    mov word ptr [37bbh],ax
-0FC0  8B 1E C3 37 mov bx,word ptr [37c3h]
-0FC4  89 1E BD 37 mov word ptr [37bdh],bx
-0FC8  8B 16 C5 37 mov dx,word ptr [37c5h]
-0FCC  89 16 BF 37 mov word ptr [37bfh],dx
-0FD0  8B 06 BB 37 mov ax,word ptr [37bbh]
-0FD4  A3 C1 37    mov word ptr [37c1h],ax
-0FD7  8B 1E BD 37 mov bx,word ptr [37bdh]
-0FDB  89 1E C3 37 mov word ptr [37c3h],bx
-0FDF  8B 16 BF 37 mov dx,word ptr [37bfh]
-0FE3  89 16 C5 37 mov word ptr [37c5h],dx
-0FE7  8B 06 B5 37 mov ax,word ptr [37b5h]
-0FEB  A3 C7 37    mov word ptr [37c7h],ax
-0FEE  8B 1E B7 37 mov bx,word ptr [37b7h]
-0FF2  89 1E C9 37 mov word ptr [37c9h],bx
-0FF6  8B 16 B9 37 mov dx,word ptr [37b9h]
-0FFA  89 16 CB 37 mov word ptr [37cbh],dx
-0FFE  BB C1 37    mov bx,37c1h
-1001  53          push bx
-1002  E8 7B F5    call 580h
-1005  83 C4 02    add sp,2h
-1008  8B 06 C1 37 mov ax,word ptr [37c1h]
-100C  A3 BB 37    mov word ptr [37bbh],ax
-100F  8B 1E C3 37 mov bx,word ptr [37c3h]
-1013  89 1E BD 37 mov word ptr [37bdh],bx
-1017  8B 16 C5 37 mov dx,word ptr [37c5h]
-101B  89 16 BF 37 mov word ptr [37bfh],dx
-101F  8B 06 BB 37 mov ax,word ptr [37bbh]
-1023  A3 C1 37    mov word ptr [37c1h],ax
-1026  8B 1E BD 37 mov bx,word ptr [37bdh]
-102A  89 1E C3 37 mov word ptr [37c3h],bx
-102E  8B 16 BF 37 mov dx,word ptr [37bfh]
-1032  89 16 C5 37 mov word ptr [37c5h],dx
-1036  8B 06 E3 36 mov ax,word ptr [36e3h]
-103A  A3 C7 37    mov word ptr [37c7h],ax
-103D  8B 1E E5 36 mov bx,word ptr [36e5h]
-1041  89 1E C9 37 mov word ptr [37c9h],bx
-1045  8B 16 E7 36 mov dx,word ptr [36e7h]
-1049  89 16 CB 37 mov word ptr [37cbh],dx
-104D  BB C1 37    mov bx,37c1h
-1050  53          push bx
-1051  E8 C4 F3    call 418h
-1054  83 C4 02    add sp,2h
-1057  8B 06 C1 37 mov ax,word ptr [37c1h]
-105B  A3 BB 37    mov word ptr [37bbh],ax
-105E  8B 1E C3 37 mov bx,word ptr [37c3h]
-1062  89 1E BD 37 mov word ptr [37bdh],bx
-1066  8B 16 C5 37 mov dx,word ptr [37c5h]
-106A  89 16 BF 37 mov word ptr [37bfh],dx
-106E  8B 06 BB 37 mov ax,word ptr [37bbh]
-1072  A3 C1 37    mov word ptr [37c1h],ax
-1075  8B 1E BD 37 mov bx,word ptr [37bdh]
-1079  89 1E C3 37 mov word ptr [37c3h],bx
-107D  8B 16 BF 37 mov dx,word ptr [37bfh]
-1081  89 16 C5 37 mov word ptr [37c5h],dx
-1085  8B 06 B5 37 mov ax,word ptr [37b5h]
-1089  A3 C7 37    mov word ptr [37c7h],ax
-108C  8B 1E B7 37 mov bx,word ptr [37b7h]
-1090  89 1E C9 37 mov word ptr [37c9h],bx
-1094  8B 16 B9 37 mov dx,word ptr [37b9h]
-1098  89 16 CB 37 mov word ptr [37cbh],dx
-109C  BB C1 37    mov bx,37c1h
-109F  53          push bx
-10A0  E8 DD F4    call 580h
-10A3  83 C4 02    add sp,2h
-10A6  8B 06 C1 37 mov ax,word ptr [37c1h]
-10AA  A3 BB 37    mov word ptr [37bbh],ax
-10AD  8B 1E C3 37 mov bx,word ptr [37c3h]
-10B1  89 1E BD 37 mov word ptr [37bdh],bx
-10B5  8B 16 C5 37 mov dx,word ptr [37c5h]
-10B9  89 16 BF 37 mov word ptr [37bfh],dx
-10BD  8B 06 BB 37 mov ax,word ptr [37bbh]
-10C1  A3 C1 37    mov word ptr [37c1h],ax
-10C4  8B 1E BD 37 mov bx,word ptr [37bdh]
-10C8  89 1E C3 37 mov word ptr [37c3h],bx
-10CC  8B 16 BF 37 mov dx,word ptr [37bfh]
-10D0  89 16 C5 37 mov word ptr [37c5h],dx
-10D4  8B 06 DD 36 mov ax,word ptr [36ddh]
-10D8  A3 C7 37    mov word ptr [37c7h],ax
-10DB  8B 1E DF 36 mov bx,word ptr [36dfh]
-10DF  89 1E C9 37 mov word ptr [37c9h],bx
-10E3  8B 16 E1 36 mov dx,word ptr [36e1h]
-10E7  89 16 CB 37 mov word ptr [37cbh],dx
-10EB  BB C1 37    mov bx,37c1h
-10EE  53          push bx
-10EF  E8 26 F3    call 418h
-10F2  83 C4 02    add sp,2h
-10F5  8B 06 C1 37 mov ax,word ptr [37c1h]
-10F9  A3 BB 37    mov word ptr [37bbh],ax
-10FC  8B 1E C3 37 mov bx,word ptr [37c3h]
-1100  89 1E BD 37 mov word ptr [37bdh],bx
-1104  8B 16 C5 37 mov dx,word ptr [37c5h]
-1108  89 16 BF 37 mov word ptr [37bfh],dx
-110C  8B 06 BB 37 mov ax,word ptr [37bbh]
-1110  A3 C1 37    mov word ptr [37c1h],ax
-1113  8B 1E BD 37 mov bx,word ptr [37bdh]
-1117  89 1E C3 37 mov word ptr [37c3h],bx
-111B  8B 16 BF 37 mov dx,word ptr [37bfh]
-111F  89 16 C5 37 mov word ptr [37c5h],dx
-1123  8B 06 BB 37 mov ax,word ptr [37bbh]
-1127  A3 C7 37    mov word ptr [37c7h],ax
-112A  8B 1E BD 37 mov bx,word ptr [37bdh]
-112E  89 1E C9 37 mov word ptr [37c9h],bx
-1132  8B 16 BF 37 mov dx,word ptr [37bfh]
-1136  89 16 CB 37 mov word ptr [37cbh],dx
-113A  BB C1 37    mov bx,37c1h
-113D  53          push bx
-113E  E8 3F F4    call 580h
-1141  83 C4 02    add sp,2h
-1144  8B 06 C1 37 mov ax,word ptr [37c1h]
-1148  A3 BB 37    mov word ptr [37bbh],ax
-114B  8B 1E C3 37 mov bx,word ptr [37c3h]
-114F  89 1E BD 37 mov word ptr [37bdh],bx
-1153  8B 16 C5 37 mov dx,word ptr [37c5h]
-1157  89 16 BF 37 mov word ptr [37bfh],dx
-115B  8B 06 BB 37 mov ax,word ptr [37bbh]
-115F  A3 C1 37    mov word ptr [37c1h],ax
-1162  8B 1E BD 37 mov bx,word ptr [37bdh]
-1166  89 1E C3 37 mov word ptr [37c3h],bx
-116A  8B 16 BF 37 mov dx,word ptr [37bfh]
-116E  89 16 C5 37 mov word ptr [37c5h],dx
-1172  8B 06 BB 37 mov ax,word ptr [37bbh]
-1176  A3 C7 37    mov word ptr [37c7h],ax
-1179  8B 1E BD 37 mov bx,word ptr [37bdh]
-117D  89 1E C9 37 mov word ptr [37c9h],bx
-1181  8B 16 BF 37 mov dx,word ptr [37bfh]
-1185  89 16 CB 37 mov word ptr [37cbh],dx
-1189  BB C1 37    mov bx,37c1h
-118C  53          push bx
-118D  E8 F0 F3    call 580h
-1190  83 C4 02    add sp,2h
-1193  8B 06 C1 37 mov ax,word ptr [37c1h]
-1197  A3 BB 37    mov word ptr [37bbh],ax
-119A  8B 1E C3 37 mov bx,word ptr [37c3h]
-119E  89 1E BD 37 mov word ptr [37bdh],bx
-11A2  8B 16 C5 37 mov dx,word ptr [37c5h]
-11A6  89 16 BF 37 mov word ptr [37bfh],dx
-11AA  8B 06 BB 37 mov ax,word ptr [37bbh]
-11AE  A3 C1 37    mov word ptr [37c1h],ax
-11B1  8B 1E BD 37 mov bx,word ptr [37bdh]
-11B5  89 1E C3 37 mov word ptr [37c3h],bx
-11B9  8B 16 BF 37 mov dx,word ptr [37bfh]
-11BD  89 16 C5 37 mov word ptr [37c5h],dx
-11C1  8B 06 BB 37 mov ax,word ptr [37bbh]
-11C5  A3 C7 37    mov word ptr [37c7h],ax
-11C8  8B 1E BD 37 mov bx,word ptr [37bdh]
-11CC  89 1E C9 37 mov word ptr [37c9h],bx
-11D0  8B 16 BF 37 mov dx,word ptr [37bfh]
-11D4  89 16 CB 37 mov word ptr [37cbh],dx
-11D8  BB C1 37    mov bx,37c1h
-11DB  53          push bx
-11DC  E8 A1 F3    call 580h
-11DF  83 C4 02    add sp,2h
-11E2  8B 06 C1 37 mov ax,word ptr [37c1h]
-11E6  A3 BB 37    mov word ptr [37bbh],ax
-11E9  8B 1E C3 37 mov bx,word ptr [37c3h]
-11ED  89 1E BD 37 mov word ptr [37bdh],bx
-11F1  8B 16 C5 37 mov dx,word ptr [37c5h]
-11F5  89 16 BF 37 mov word ptr [37bfh],dx
-11F9  8B 06 BB 37 mov ax,word ptr [37bbh]
-11FD  A3 C1 37    mov word ptr [37c1h],ax
-1200  8B 1E BD 37 mov bx,word ptr [37bdh]
-1204  89 1E C3 37 mov word ptr [37c3h],bx
-1208  8B 16 BF 37 mov dx,word ptr [37bfh]
-120C  89 16 C5 37 mov word ptr [37c5h],dx
-1210  8B 06 BB 37 mov ax,word ptr [37bbh]
-1214  A3 C7 37    mov word ptr [37c7h],ax
-1217  8B 1E BD 37 mov bx,word ptr [37bdh]
-121B  89 1E C9 37 mov word ptr [37c9h],bx
-121F  8B 16 BF 37 mov dx,word ptr [37bfh]
-1223  89 16 CB 37 mov word ptr [37cbh],dx
-1227  BB C1 37    mov bx,37c1h
-122A  53          push bx
-122B  E8 52 F3    call 580h
-122E  83 C4 02    add sp,2h
-1231  8B 06 C1 37 mov ax,word ptr [37c1h]
-1235  A3 BB 37    mov word ptr [37bbh],ax
-1238  8B 1E C3 37 mov bx,word ptr [37c3h]
-123C  89 1E BD 37 mov word ptr [37bdh],bx
-1240  8B 16 C5 37 mov dx,word ptr [37c5h]
-1244  89 16 BF 37 mov word ptr [37bfh],dx
-1248  8B 06 BB 37 mov ax,word ptr [37bbh]
-124C  A3 C1 37    mov word ptr [37c1h],ax
-124F  8B 1E BD 37 mov bx,word ptr [37bdh]
-1253  89 1E C3 37 mov word ptr [37c3h],bx
-1257  8B 16 BF 37 mov dx,word ptr [37bfh]
-125B  89 16 C5 37 mov word ptr [37c5h],dx
-125F  8B 06 BB 37 mov ax,word ptr [37bbh]
-1263  A3 C7 37    mov word ptr [37c7h],ax
-1266  8B 1E BD 37 mov bx,word ptr [37bdh]
-126A  89 1E C9 37 mov word ptr [37c9h],bx
-126E  8B 16 BF 37 mov dx,word ptr [37bfh]
-1272  89 16 CB 37 mov word ptr [37cbh],dx
-1276  BB C1 37    mov bx,37c1h
-1279  53          push bx
-127A  E8 03 F3    call 580h
-127D  83 C4 02    add sp,2h
-1280  8B 06 C1 37 mov ax,word ptr [37c1h]
-1284  A3 BB 37    mov word ptr [37bbh],ax
-1287  8B 1E C3 37 mov bx,word ptr [37c3h]
-128B  89 1E BD 37 mov word ptr [37bdh],bx
-128F  8B 16 C5 37 mov dx,word ptr [37c5h]
-1293  89 16 BF 37 mov word ptr [37bfh],dx
-1297  8B 06 BB 37 mov ax,word ptr [37bbh]
-129B  A3 C1 37    mov word ptr [37c1h],ax
-129E  8B 1E BD 37 mov bx,word ptr [37bdh]
-12A2  89 1E C3 37 mov word ptr [37c3h],bx
-12A6  8B 16 BF 37 mov dx,word ptr [37bfh]
-12AA  89 16 C5 37 mov word ptr [37c5h],dx
-12AE  8B 06 BB 37 mov ax,word ptr [37bbh]
-12B2  A3 C7 37    mov word ptr [37c7h],ax
-12B5  8B 1E BD 37 mov bx,word ptr [37bdh]
-12B9  89 1E C9 37 mov word ptr [37c9h],bx
-12BD  8B 16 BF 37 mov dx,word ptr [37bfh]
-12C1  89 16 CB 37 mov word ptr [37cbh],dx
-12C5  BB C1 37    mov bx,37c1h
-12C8  53          push bx
-12C9  E8 B4 F2    call 580h
-12CC  83 C4 02    add sp,2h
-12CF  8B 06 C1 37 mov ax,word ptr [37c1h]
-12D3  A3 BB 37    mov word ptr [37bbh],ax
-12D6  8B 1E C3 37 mov bx,word ptr [37c3h]
-12DA  89 1E BD 37 mov word ptr [37bdh],bx
-12DE  8B 16 C5 37 mov dx,word ptr [37c5h]
-12E2  89 16 BF 37 mov word ptr [37bfh],dx
-12E6  8B 06 BB 37 mov ax,word ptr [37bbh]
-12EA  A3 C1 37    mov word ptr [37c1h],ax
-12ED  8B 1E BD 37 mov bx,word ptr [37bdh]
-12F1  89 1E C3 37 mov word ptr [37c3h],bx
-12F5  8B 16 BF 37 mov dx,word ptr [37bfh]
-12F9  89 16 C5 37 mov word ptr [37c5h],dx
-12FD  8B 06 BB 37 mov ax,word ptr [37bbh]
-1301  A3 C7 37    mov word ptr [37c7h],ax
-1304  8B 1E BD 37 mov bx,word ptr [37bdh]
-1308  89 1E C9 37 mov word ptr [37c9h],bx
-130C  8B 16 BF 37 mov dx,word ptr [37bfh]
-1310  89 16 CB 37 mov word ptr [37cbh],dx
-1314  BB C1 37    mov bx,37c1h
-1317  53          push bx
-1318  E8 65 F2    call 580h
-131B  83 C4 02    add sp,2h
-131E  8B 06 C1 37 mov ax,word ptr [37c1h]
-1322  A3 BB 37    mov word ptr [37bbh],ax
-1325  8B 1E C3 37 mov bx,word ptr [37c3h]
-1329  89 1E BD 37 mov word ptr [37bdh],bx
-132D  8B 16 C5 37 mov dx,word ptr [37c5h]
-1331  89 16 BF 37 mov word ptr [37bfh],dx
-1335  8B 06 BB 37 mov ax,word ptr [37bbh]
-1339  A3 C1 37    mov word ptr [37c1h],ax
-133C  8B 1E BD 37 mov bx,word ptr [37bdh]
-1340  89 1E C3 37 mov word ptr [37c3h],bx
-1344  8B 16 BF 37 mov dx,word ptr [37bfh]
-1348  89 16 C5 37 mov word ptr [37c5h],dx
-134C  8B 06 BB 37 mov ax,word ptr [37bbh]
-1350  A3 C7 37    mov word ptr [37c7h],ax
-1353  8B 1E BD 37 mov bx,word ptr [37bdh]
-1357  89 1E C9 37 mov word ptr [37c9h],bx
-135B  8B 16 BF 37 mov dx,word ptr [37bfh]
-135F  89 16 CB 37 mov word ptr [37cbh],dx
-1363  BB C1 37    mov bx,37c1h
-1366  53          push bx
-1367  E8 16 F2    call 580h
-136A  83 C4 02    add sp,2h
-136D  8B 06 C1 37 mov ax,word ptr [37c1h]
-1371  A3 BB 37    mov word ptr [37bbh],ax
-1374  8B 1E C3 37 mov bx,word ptr [37c3h]
-1378  89 1E BD 37 mov word ptr [37bdh],bx
-137C  8B 16 C5 37 mov dx,word ptr [37c5h]
-1380  89 16 BF 37 mov word ptr [37bfh],dx
-1384  5F          pop di
-1385  8B 06 BB 37 mov ax,word ptr [37bbh]
-1389  8B 1E BD 37 mov bx,word ptr [37bdh]
-138D  8B 16 BF 37 mov dx,word ptr [37bfh]
-1391  89 05       mov word ptr [di],ax
-1393  89 5D 02    mov word ptr [di+2h],bx
-1396  89 55 04    mov word ptr [di+4h],dx
-1399  EB 00       jmp 139bh
-139B  5F          pop di
-139C  5E          pop si
-139D  5A          pop dx
-139E  5B          pop bx
-139F  89 EC       mov sp,bp
-13A1  5D          pop bp
-13A2  C3          ret
-13A3  55          push bp
-13A4  8B EC       mov bp,sp
-13A6  53          push bx
-13A7  52          push dx
-13A8  56          push si
-13A9  57          push di
-13AA  FF 76 04    push word ptr [bp+4h]
-13AD  8B 76 04    mov si,word ptr [bp+4h]
-13B0  8B 04       mov ax,word ptr [si]
-13B2  8B 4C 02    mov cx,word ptr [si+2h]
-13B5  89 CB       mov bx,cx
-13B7  8B 54 04    mov dx,word ptr [si+4h]
-13BA  3C 00       cmp al,0h
-13BC  75 03       jne 13c1h
-13BE  E9 30 07    jmp 1af1h
-13C1  F6 C6 80    test dh,80h
-13C4  74 03       je 13c9h
-13C6  E9 28 07    jmp 1af1h
-13C9  04 7F       add al,7fh
-13CB  98          cbw
-13CC  E8 11 F0    call 3e0h
-13CF  A3 CD 37    mov word ptr [37cdh],ax
-13D2  89 1E CF 37 mov word ptr [37cfh],bx
-13D6  89 16 D1 37 mov word ptr [37d1h],dx
-13DA  8B 7E 04    mov di,word ptr [bp+4h]
-13DD  B0 81       mov al,81h
-13DF  88 05       mov byte ptr [di],al
-13E1  8B 76 04    mov si,word ptr [bp+4h]
-13E4  8B 04       mov ax,word ptr [si]
-13E6  8B 4C 02    mov cx,word ptr [si+2h]
-13E9  89 CB       mov bx,cx
-13EB  8B 54 04    mov dx,word ptr [si+4h]
-13EE  A3 AF 37    mov word ptr [37afh],ax
-13F1  89 1E B1 37 mov word ptr [37b1h],bx
-13F5  89 16 B3 37 mov word ptr [37b3h],dx
-13F9  8B 06 AF 37 mov ax,word ptr [37afh]
-13FD  A3 C1 37    mov word ptr [37c1h],ax
-1400  8B 1E B1 37 mov bx,word ptr [37b1h]
-1404  89 1E C3 37 mov word ptr [37c3h],bx
-1408  8B 16 B3 37 mov dx,word ptr [37b3h]
-140C  89 16 C5 37 mov word ptr [37c5h],dx
-1410  8B 06 95 36 mov ax,word ptr [3695h]
-1414  A3 C7 37    mov word ptr [37c7h],ax
-1417  8B 1E 97 36 mov bx,word ptr [3697h]
-141B  89 1E C9 37 mov word ptr [37c9h],bx
-141F  8B 16 99 36 mov dx,word ptr [3699h]
-1423  89 16 CB 37 mov word ptr [37cbh],dx
-1427  BB C1 37    mov bx,37c1h
-142A  53          push bx
-142B  E8 26 F0    call 454h
-142E  83 C4 02    add sp,2h
-1431  8B 06 C1 37 mov ax,word ptr [37c1h]
-1435  A3 B5 37    mov word ptr [37b5h],ax
-1438  8B 1E C3 37 mov bx,word ptr [37c3h]
-143C  89 1E B7 37 mov word ptr [37b7h],bx
-1440  8B 16 C5 37 mov dx,word ptr [37c5h]
-1444  89 16 B9 37 mov word ptr [37b9h],dx
-1448  8B 06 AF 37 mov ax,word ptr [37afh]
-144C  A3 C1 37    mov word ptr [37c1h],ax
-144F  8B 1E B1 37 mov bx,word ptr [37b1h]
-1453  89 1E C3 37 mov word ptr [37c3h],bx
-1457  8B 16 B3 37 mov dx,word ptr [37b3h]
-145B  89 16 C5 37 mov word ptr [37c5h],dx
-145F  8B 06 95 36 mov ax,word ptr [3695h]
-1463  A3 C7 37    mov word ptr [37c7h],ax
-1466  8B 1E 97 36 mov bx,word ptr [3697h]
-146A  89 1E C9 37 mov word ptr [37c9h],bx
-146E  8B 16 99 36 mov dx,word ptr [3699h]
-1472  89 16 CB 37 mov word ptr [37cbh],dx
-1476  BB C1 37    mov bx,37c1h
-1479  53          push bx
-147A  E8 9B EF    call 418h
-147D  83 C4 02    add sp,2h
-1480  8B 06 C1 37 mov ax,word ptr [37c1h]
-1484  A3 BB 37    mov word ptr [37bbh],ax
-1487  8B 1E C3 37 mov bx,word ptr [37c3h]
-148B  89 1E BD 37 mov word ptr [37bdh],bx
-148F  8B 16 C5 37 mov dx,word ptr [37c5h]
-1493  89 16 BF 37 mov word ptr [37bfh],dx
-1497  8B 06 B5 37 mov ax,word ptr [37b5h]
-149B  A3 C1 37    mov word ptr [37c1h],ax
-149E  8B 1E B7 37 mov bx,word ptr [37b7h]
-14A2  89 1E C3 37 mov word ptr [37c3h],bx
-14A6  8B 16 B9 37 mov dx,word ptr [37b9h]
-14AA  89 16 C5 37 mov word ptr [37c5h],dx
-14AE  8B 06 BB 37 mov ax,word ptr [37bbh]
-14B2  A3 C7 37    mov word ptr [37c7h],ax
-14B5  8B 1E BD 37 mov bx,word ptr [37bdh]
-14B9  89 1E C9 37 mov word ptr [37c9h],bx
-14BD  8B 16 BF 37 mov dx,word ptr [37bfh]
-14C1  89 16 CB 37 mov word ptr [37cbh],dx
-14C5  BB C1 37    mov bx,37c1h
-14C8  53          push bx
-14C9  E8 9D F1    call 669h
-14CC  83 C4 02    add sp,2h
-14CF  8B 06 C1 37 mov ax,word ptr [37c1h]
-14D3  A3 B5 37    mov word ptr [37b5h],ax
-14D6  8B 1E C3 37 mov bx,word ptr [37c3h]
-14DA  89 1E B7 37 mov word ptr [37b7h],bx
-14DE  8B 16 C5 37 mov dx,word ptr [37c5h]
-14E2  89 16 B9 37 mov word ptr [37b9h],dx
-14E6  8B 06 B5 37 mov ax,word ptr [37b5h]
-14EA  A3 C1 37    mov word ptr [37c1h],ax
-14ED  8B 1E B7 37 mov bx,word ptr [37b7h]
-14F1  89 1E C3 37 mov word ptr [37c3h],bx
-14F5  8B 16 B9 37 mov dx,word ptr [37b9h]
-14F9  89 16 C5 37 mov word ptr [37c5h],dx
-14FD  8B 06 B5 37 mov ax,word ptr [37b5h]
-1501  A3 C7 37    mov word ptr [37c7h],ax
-1504  8B 1E B7 37 mov bx,word ptr [37b7h]
-1508  89 1E C9 37 mov word ptr [37c9h],bx
-150C  8B 16 B9 37 mov dx,word ptr [37b9h]
-1510  89 16 CB 37 mov word ptr [37cbh],dx
-1514  BB C1 37    mov bx,37c1h
-1517  53          push bx
-1518  E8 65 F0    call 580h
-151B  83 C4 02    add sp,2h
-151E  8B 06 C1 37 mov ax,word ptr [37c1h]
-1522  A3 BB 37    mov word ptr [37bbh],ax
-1525  8B 1E C3 37 mov bx,word ptr [37c3h]
-1529  89 1E BD 37 mov word ptr [37bdh],bx
-152D  8B 16 C5 37 mov dx,word ptr [37c5h]
-1531  89 16 BF 37 mov word ptr [37bfh],dx
-1535  8B 06 AD 36 mov ax,word ptr [36adh]
-1539  A3 AF 37    mov word ptr [37afh],ax
-153C  8B 1E AF 36 mov bx,word ptr [36afh]
-1540  89 1E B1 37 mov word ptr [37b1h],bx
-1544  8B 16 B1 36 mov dx,word ptr [36b1h]
-1548  89 16 B3 37 mov word ptr [37b3h],dx
-154C  8B 06 AF 37 mov ax,word ptr [37afh]
-1550  A3 C1 37    mov word ptr [37c1h],ax
-1553  8B 1E B1 37 mov bx,word ptr [37b1h]
-1557  89 1E C3 37 mov word ptr [37c3h],bx
-155B  8B 16 B3 37 mov dx,word ptr [37b3h]
-155F  89 16 C5 37 mov word ptr [37c5h],dx
-1563  8B 06 BB 37 mov ax,word ptr [37bbh]
-1567  A3 C7 37    mov word ptr [37c7h],ax
-156A  8B 1E BD 37 mov bx,word ptr [37bdh]
-156E  89 1E C9 37 mov word ptr [37c9h],bx
-1572  8B 16 BF 37 mov dx,word ptr [37bfh]
-1576  89 16 CB 37 mov word ptr [37cbh],dx
-157A  BB C1 37    mov bx,37c1h
-157D  53          push bx
-157E  E8 FF EF    call 580h
-1581  83 C4 02    add sp,2h
-1584  8B 06 C1 37 mov ax,word ptr [37c1h]
-1588  A3 AF 37    mov word ptr [37afh],ax
-158B  8B 1E C3 37 mov bx,word ptr [37c3h]
-158F  89 1E B1 37 mov word ptr [37b1h],bx
-1593  8B 16 C5 37 mov dx,word ptr [37c5h]
-1597  89 16 B3 37 mov word ptr [37b3h],dx
-159B  8B 06 AF 37 mov ax,word ptr [37afh]
-159F  A3 C1 37    mov word ptr [37c1h],ax
-15A2  8B 1E B1 37 mov bx,word ptr [37b1h]
-15A6  89 1E C3 37 mov word ptr [37c3h],bx
-15AA  8B 16 B3 37 mov dx,word ptr [37b3h]
-15AE  89 16 C5 37 mov word ptr [37c5h],dx
-15B2  8B 06 B3 36 mov ax,word ptr [36b3h]
-15B6  A3 C7 37    mov word ptr [37c7h],ax
-15B9  8B 1E B5 36 mov bx,word ptr [36b5h]
-15BD  89 1E C9 37 mov word ptr [37c9h],bx
-15C1  8B 16 B7 36 mov dx,word ptr [36b7h]
-15C5  89 16 CB 37 mov word ptr [37cbh],dx
-15C9  BB C1 37    mov bx,37c1h
-15CC  53          push bx
-15CD  E8 48 EE    call 418h
-15D0  83 C4 02    add sp,2h
-15D3  8B 06 C1 37 mov ax,word ptr [37c1h]
-15D7  A3 AF 37    mov word ptr [37afh],ax
-15DA  8B 1E C3 37 mov bx,word ptr [37c3h]
-15DE  89 1E B1 37 mov word ptr [37b1h],bx
-15E2  8B 16 C5 37 mov dx,word ptr [37c5h]
-15E6  89 16 B3 37 mov word ptr [37b3h],dx
-15EA  8B 06 AF 37 mov ax,word ptr [37afh]
-15EE  A3 C1 37    mov word ptr [37c1h],ax
-15F1  8B 1E B1 37 mov bx,word ptr [37b1h]
-15F5  89 1E C3 37 mov word ptr [37c3h],bx
-15F9  8B 16 B3 37 mov dx,word ptr [37b3h]
-15FD  89 16 C5 37 mov word ptr [37c5h],dx
-1601  8B 06 BB 37 mov ax,word ptr [37bbh]
-1605  A3 C7 37    mov word ptr [37c7h],ax
-1608  8B 1E BD 37 mov bx,word ptr [37bdh]
-160C  89 1E C9 37 mov word ptr [37c9h],bx
-1610  8B 16 BF 37 mov dx,word ptr [37bfh]
-1614  89 16 CB 37 mov word ptr [37cbh],dx
-1618  BB C1 37    mov bx,37c1h
-161B  53          push bx
-161C  E8 61 EF    call 580h
-161F  83 C4 02    add sp,2h
-1622  8B 06 C1 37 mov ax,word ptr [37c1h]
-1626  A3 AF 37    mov word ptr [37afh],ax
-1629  8B 1E C3 37 mov bx,word ptr [37c3h]
-162D  89 1E B1 37 mov word ptr [37b1h],bx
-1631  8B 16 C5 37 mov dx,word ptr [37c5h]
-1635  89 16 B3 37 mov word ptr [37b3h],dx
-1639  8B 06 AF 37 mov ax,word ptr [37afh]
-163D  A3 C1 37    mov word ptr [37c1h],ax
-1640  8B 1E B1 37 mov bx,word ptr [37b1h]
-1644  89 1E C3 37 mov word ptr [37c3h],bx
-1648  8B 16 B3 37 mov dx,word ptr [37b3h]
-164C  89 16 C5 37 mov word ptr [37c5h],dx
-1650  8B 06 B9 36 mov ax,word ptr [36b9h]
-1654  A3 C7 37    mov word ptr [37c7h],ax
-1657  8B 1E BB 36 mov bx,word ptr [36bbh]
-165B  89 1E C9 37 mov word ptr [37c9h],bx
-165F  8B 16 BD 36 mov dx,word ptr [36bdh]
-1663  89 16 CB 37 mov word ptr [37cbh],dx
-1667  BB C1 37    mov bx,37c1h
-166A  53          push bx
-166B  E8 AA ED    call 418h
-166E  83 C4 02    add sp,2h
-1671  8B 06 C1 37 mov ax,word ptr [37c1h]
-1675  A3 AF 37    mov word ptr [37afh],ax
-1678  8B 1E C3 37 mov bx,word ptr [37c3h]
-167C  89 1E B1 37 mov word ptr [37b1h],bx
-1680  8B 16 C5 37 mov dx,word ptr [37c5h]
-1684  89 16 B3 37 mov word ptr [37b3h],dx
-1688  8B 06 AF 37 mov ax,word ptr [37afh]
-168C  A3 C1 37    mov word ptr [37c1h],ax
-168F  8B 1E B1 37 mov bx,word ptr [37b1h]
-1693  89 1E C3 37 mov word ptr [37c3h],bx
-1697  8B 16 B3 37 mov dx,word ptr [37b3h]
-169B  89 16 C5 37 mov word ptr [37c5h],dx
-169F  8B 06 BB 37 mov ax,word ptr [37bbh]
-16A3  A3 C7 37    mov word ptr [37c7h],ax
-16A6  8B 1E BD 37 mov bx,word ptr [37bdh]
-16AA  89 1E C9 37 mov word ptr [37c9h],bx
-16AE  8B 16 BF 37 mov dx,word ptr [37bfh]
-16B2  89 16 CB 37 mov word ptr [37cbh],dx
-16B6  BB C1 37    mov bx,37c1h
+0A74  52          push dx
+0A75  56          push si
+0A76  57          push di
+0A77  FF 76 04    push word ptr [bp+4h]
+0A7A  8B 76 04    mov si,word ptr [bp+4h]
+0A7D  8B 04       mov ax,word ptr [si]
+0A7F  8B 4C 02    mov cx,word ptr [si+2h]
+0A82  89 CB       mov bx,cx
+0A84  8B 54 04    mov dx,word ptr [si+4h]
+0A87  3C 00       cmp al,0h
+0A89  75 03       jne 0a8eh
+0A8B  E9 05 01    jmp 0b93h
+0A8E  F6 C6 80    test dh,80h
+0A91  74 03       je 0a96h
+0A93  E9 06 01    jmp 0b9ch
+0A96  A3 82 23    mov word ptr [2382h],ax
+0A99  89 1E 84 23 mov word ptr [2384h],bx
+0A9D  89 16 86 23 mov word ptr [2386h],dx
+0AA1  88 C1       mov cl,al
+0AA3  80 C1 80    add cl,80h
+0AA6  D0 F9       sar cl,1h
+0AA8  80 C1 80    add cl,80h
+0AAB  88 C8       mov al,cl
+0AAD  A3 88 23    mov word ptr [2388h],ax
+0AB0  89 1E 8A 23 mov word ptr [238ah],bx
+0AB4  89 16 8C 23 mov word ptr [238ch],dx
+0AB8  C6 06 94 23 0C mov byte ptr [2394h],0ch
+0ABD  8B 7E 04    mov di,word ptr [bp+4h]
+0AC0  8B 06 82 23 mov ax,word ptr [2382h]
+0AC4  89 05       mov word ptr [di],ax
+0AC6  8B 1E 84 23 mov bx,word ptr [2384h]
+0ACA  89 5D 02    mov word ptr [di+2h],bx
+0ACD  8B 16 86 23 mov dx,word ptr [2386h]
+0AD1  89 55 04    mov word ptr [di+4h],dx
+0AD4  8B 7E 04    mov di,word ptr [bp+4h]
+0AD7  81 C7 06 00 add di,6h
+0ADB  8B 06 88 23 mov ax,word ptr [2388h]
+0ADF  89 05       mov word ptr [di],ax
+0AE1  8B 1E 8A 23 mov bx,word ptr [238ah]
+0AE5  89 5D 02    mov word ptr [di+2h],bx
+0AE8  8B 16 8C 23 mov dx,word ptr [238ch]
+0AEC  89 55 04    mov word ptr [di+4h],dx
+0AEF  FF 76 04    push word ptr [bp+4h]
+0AF2  E8 74 FB    call 669h
+0AF5  83 C4 02    add sp,2h
+0AF8  8B 76 04    mov si,word ptr [bp+4h]
+0AFB  8B 04       mov ax,word ptr [si]
+0AFD  8B 4C 02    mov cx,word ptr [si+2h]
+0B00  89 CB       mov bx,cx
+0B02  8B 54 04    mov dx,word ptr [si+4h]
+0B05  A3 8E 23    mov word ptr [238eh],ax
+0B08  89 1E 90 23 mov word ptr [2390h],bx
+0B0C  89 16 92 23 mov word ptr [2392h],dx
+0B10  8B 7E 04    mov di,word ptr [bp+4h]
+0B13  8B 06 88 23 mov ax,word ptr [2388h]
+0B17  89 05       mov word ptr [di],ax
+0B19  8B 1E 8A 23 mov bx,word ptr [238ah]
+0B1D  89 5D 02    mov word ptr [di+2h],bx
+0B20  8B 16 8C 23 mov dx,word ptr [238ch]
+0B24  89 55 04    mov word ptr [di+4h],dx
+0B27  8B 7E 04    mov di,word ptr [bp+4h]
+0B2A  81 C7 06 00 add di,6h
+0B2E  8B 06 8E 23 mov ax,word ptr [238eh]
+0B32  89 05       mov word ptr [di],ax
+0B34  8B 1E 90 23 mov bx,word ptr [2390h]
+0B38  89 5D 02    mov word ptr [di+2h],bx
+0B3B  8B 16 92 23 mov dx,word ptr [2392h]
+0B3F  89 55 04    mov word ptr [di+4h],dx
+0B42  FF 76 04    push word ptr [bp+4h]
+0B45  E8 D0 F8    call 418h
+0B48  83 C4 02    add sp,2h
+0B4B  8B 76 04    mov si,word ptr [bp+4h]
+0B4E  8B 04       mov ax,word ptr [si]
+0B50  8B 4C 02    mov cx,word ptr [si+2h]
+0B53  89 CB       mov bx,cx
+0B55  8B 54 04    mov dx,word ptr [si+4h]
+0B58  FE C8       dec al
+0B5A  A3 88 23    mov word ptr [2388h],ax
+0B5D  89 1E 8A 23 mov word ptr [238ah],bx
+0B61  89 16 8C 23 mov word ptr [238ch],dx
+0B65  FE 0E 94 23 dec byte ptr [2394h]
+0B69  74 03       je 0b6eh
+0B6B  E9 4F FF    jmp 0abdh
+0B6E  8B 06 88 23 mov ax,word ptr [2388h]
+0B72  8B 1E 8A 23 mov bx,word ptr [238ah]
+0B76  8B 16 8C 23 mov dx,word ptr [238ch]
+0B7A  EB 0C       jmp 0b88h
+0B7C  8B 06 8E 23 mov ax,word ptr [238eh]
+0B80  8B 1E 90 23 mov bx,word ptr [2390h]
+0B84  8B 16 92 23 mov dx,word ptr [2392h]
+0B88  5F          pop di
+0B89  89 05       mov word ptr [di],ax
+0B8B  89 5D 02    mov word ptr [di+2h],bx
+0B8E  89 55 04    mov word ptr [di+4h],dx
+0B91  EB 01       jmp 0b94h
+0B93  5F          pop di
+0B94  5F          pop di
+0B95  5E          pop si
+0B96  5A          pop dx
+0B97  5B          pop bx
+0B98  89 EC       mov sp,bp
+0B9A  5D          pop bp
+0B9B  C3          ret
+0B9C  5F          pop di
+0B9D  B0 03       mov al,3h
+0B9F  B4 4C       mov ah,4ch
+0BA1  CD 21       int 21h
+0BA3  55          push bp
+0BA4  8B EC       mov bp,sp
+0BA6  53          push bx
+0BA7  52          push dx
+0BA8  56          push si
+0BA9  57          push di
+0BAA  FF 76 04    push word ptr [bp+4h]
+0BAD  8B 76 04    mov si,word ptr [bp+4h]
+0BB0  8B 04       mov ax,word ptr [si]
+0BB2  8B 4C 02    mov cx,word ptr [si+2h]
+0BB5  89 CB       mov bx,cx
+0BB7  8B 54 04    mov dx,word ptr [si+4h]
+0BBA  A3 AF 24    mov word ptr [24afh],ax
+0BBD  89 1E B1 24 mov word ptr [24b1h],bx
+0BC1  89 16 B3 24 mov word ptr [24b3h],dx
+0BC5  8B 06 AF 24 mov ax,word ptr [24afh]
+0BC9  A3 C1 24    mov word ptr [24c1h],ax
+0BCC  8B 1E B1 24 mov bx,word ptr [24b1h]
+0BD0  89 1E C3 24 mov word ptr [24c3h],bx
+0BD4  8B 16 B3 24 mov dx,word ptr [24b3h]
+0BD8  89 16 C5 24 mov word ptr [24c5h],dx
+0BDC  8B 06 9B 23 mov ax,word ptr [239bh]
+0BE0  A3 C7 24    mov word ptr [24c7h],ax
+0BE3  8B 1E 9D 23 mov bx,word ptr [239dh]
+0BE7  89 1E C9 24 mov word ptr [24c9h],bx
+0BEB  8B 16 9F 23 mov dx,word ptr [239fh]
+0BEF  89 16 CB 24 mov word ptr [24cbh],dx
+0BF3  BB C1 24    mov bx,24c1h
+0BF6  53          push bx
+0BF7  E8 6F FA    call 669h
+0BFA  83 C4 02    add sp,2h
+0BFD  8B 06 C1 24 mov ax,word ptr [24c1h]
+0C01  A3 B5 24    mov word ptr [24b5h],ax
+0C04  8B 1E C3 24 mov bx,word ptr [24c3h]
+0C08  89 1E B7 24 mov word ptr [24b7h],bx
+0C0C  8B 16 C5 24 mov dx,word ptr [24c5h]
+0C10  89 16 B9 24 mov word ptr [24b9h],dx
+0C14  BB DD 23    mov bx,23ddh
+0C17  89 1E EF 24 mov word ptr [24efh],bx
+0C1B  C6 06 F1 24 0C mov byte ptr [24f1h],0ch
+0C20  C6 06 F2 24 00 mov byte ptr [24f2h],0h
+0C25  E8 35 FC    call 85dh
+0C28  C6 06 F1 24 08 mov byte ptr [24f1h],8h
+0C2D  E8 BD FD    call 9edh
+0C30  5F          pop di
+0C31  8B 06 BB 24 mov ax,word ptr [24bbh]
+0C35  8B 1E BD 24 mov bx,word ptr [24bdh]
+0C39  8B 16 BF 24 mov dx,word ptr [24bfh]
+0C3D  89 05       mov word ptr [di],ax
+0C3F  89 5D 02    mov word ptr [di+2h],bx
+0C42  89 55 04    mov word ptr [di+4h],dx
+0C45  EB 00       jmp 0c47h
+0C47  5F          pop di
+0C48  5E          pop si
+0C49  5A          pop dx
+0C4A  5B          pop bx
+0C4B  89 EC       mov sp,bp
+0C4D  5D          pop bp
+0C4E  C3          ret
+0C4F  55          push bp
+0C50  8B EC       mov bp,sp
+0C52  53          push bx
+0C53  52          push dx
+0C54  56          push si
+0C55  57          push di
+0C56  FF 76 04    push word ptr [bp+4h]
+0C59  8B 76 04    mov si,word ptr [bp+4h]
+0C5C  8B 04       mov ax,word ptr [si]
+0C5E  8B 4C 02    mov cx,word ptr [si+2h]
+0C61  89 CB       mov bx,cx
+0C63  8B 54 04    mov dx,word ptr [si+4h]
+0C66  3C 00       cmp al,0h
+0C68  75 03       jne 0c6dh
+0C6A  E9 F2 02    jmp 0f5fh
+0C6D  F6 C6 80    test dh,80h
+0C70  74 03       je 0c75h
+0C72  E9 EA 02    jmp 0f5fh
+0C75  04 7F       add al,7fh
+0C77  98          cbw
+0C78  E8 65 F7    call 3e0h
+0C7B  A3 CD 24    mov word ptr [24cdh],ax
+0C7E  89 1E CF 24 mov word ptr [24cfh],bx
+0C82  89 16 D1 24 mov word ptr [24d1h],dx
+0C86  8B 7E 04    mov di,word ptr [bp+4h]
+0C89  B0 81       mov al,81h
+0C8B  88 05       mov byte ptr [di],al
+0C8D  8B 76 04    mov si,word ptr [bp+4h]
+0C90  8B 04       mov ax,word ptr [si]
+0C92  8B 4C 02    mov cx,word ptr [si+2h]
+0C95  89 CB       mov bx,cx
+0C97  8B 54 04    mov dx,word ptr [si+4h]
+0C9A  A3 AF 24    mov word ptr [24afh],ax
+0C9D  89 1E B1 24 mov word ptr [24b1h],bx
+0CA1  89 16 B3 24 mov word ptr [24b3h],dx
+0CA5  8B 06 AF 24 mov ax,word ptr [24afh]
+0CA9  A3 C1 24    mov word ptr [24c1h],ax
+0CAC  8B 1E B1 24 mov bx,word ptr [24b1h]
+0CB0  89 1E C3 24 mov word ptr [24c3h],bx
+0CB4  8B 16 B3 24 mov dx,word ptr [24b3h]
+0CB8  89 16 C5 24 mov word ptr [24c5h],dx
+0CBC  8B 06 95 23 mov ax,word ptr [2395h]
+0CC0  A3 C7 24    mov word ptr [24c7h],ax
+0CC3  8B 1E 97 23 mov bx,word ptr [2397h]
+0CC7  89 1E C9 24 mov word ptr [24c9h],bx
+0CCB  8B 16 99 23 mov dx,word ptr [2399h]
+0CCF  89 16 CB 24 mov word ptr [24cbh],dx
+0CD3  BB C1 24    mov bx,24c1h
+0CD6  53          push bx
+0CD7  E8 7A F7    call 454h
+0CDA  83 C4 02    add sp,2h
+0CDD  8B 06 C1 24 mov ax,word ptr [24c1h]
+0CE1  A3 B5 24    mov word ptr [24b5h],ax
+0CE4  8B 1E C3 24 mov bx,word ptr [24c3h]
+0CE8  89 1E B7 24 mov word ptr [24b7h],bx
+0CEC  8B 16 C5 24 mov dx,word ptr [24c5h]
+0CF0  89 16 B9 24 mov word ptr [24b9h],dx
+0CF4  8B 06 AF 24 mov ax,word ptr [24afh]
+0CF8  A3 C1 24    mov word ptr [24c1h],ax
+0CFB  8B 1E B1 24 mov bx,word ptr [24b1h]
+0CFF  89 1E C3 24 mov word ptr [24c3h],bx
+0D03  8B 16 B3 24 mov dx,word ptr [24b3h]
+0D07  89 16 C5 24 mov word ptr [24c5h],dx
+0D0B  8B 06 95 23 mov ax,word ptr [2395h]
+0D0F  A3 C7 24    mov word ptr [24c7h],ax
+0D12  8B 1E 97 23 mov bx,word ptr [2397h]
+0D16  89 1E C9 24 mov word ptr [24c9h],bx
+0D1A  8B 16 99 23 mov dx,word ptr [2399h]
+0D1E  89 16 CB 24 mov word ptr [24cbh],dx
+0D22  BB C1 24    mov bx,24c1h
+0D25  53          push bx
+0D26  E8 EF F6    call 418h
+0D29  83 C4 02    add sp,2h
+0D2C  8B 06 C1 24 mov ax,word ptr [24c1h]
+0D30  A3 BB 24    mov word ptr [24bbh],ax
+0D33  8B 1E C3 24 mov bx,word ptr [24c3h]
+0D37  89 1E BD 24 mov word ptr [24bdh],bx
+0D3B  8B 16 C5 24 mov dx,word ptr [24c5h]
+0D3F  89 16 BF 24 mov word ptr [24bfh],dx
+0D43  8B 06 B5 24 mov ax,word ptr [24b5h]
+0D47  A3 C1 24    mov word ptr [24c1h],ax
+0D4A  8B 1E B7 24 mov bx,word ptr [24b7h]
+0D4E  89 1E C3 24 mov word ptr [24c3h],bx
+0D52  8B 16 B9 24 mov dx,word ptr [24b9h]
+0D56  89 16 C5 24 mov word ptr [24c5h],dx
+0D5A  8B 06 BB 24 mov ax,word ptr [24bbh]
+0D5E  A3 C7 24    mov word ptr [24c7h],ax
+0D61  8B 1E BD 24 mov bx,word ptr [24bdh]
+0D65  89 1E C9 24 mov word ptr [24c9h],bx
+0D69  8B 16 BF 24 mov dx,word ptr [24bfh]
+0D6D  89 16 CB 24 mov word ptr [24cbh],dx
+0D71  BB C1 24    mov bx,24c1h
+0D74  53          push bx
+0D75  E8 F1 F8    call 669h
+0D78  83 C4 02    add sp,2h
+0D7B  8B 06 C1 24 mov ax,word ptr [24c1h]
+0D7F  A3 B5 24    mov word ptr [24b5h],ax
+0D82  8B 1E C3 24 mov bx,word ptr [24c3h]
+0D86  89 1E B7 24 mov word ptr [24b7h],bx
+0D8A  8B 16 C5 24 mov dx,word ptr [24c5h]
+0D8E  89 16 B9 24 mov word ptr [24b9h],dx
+0D92  8B 06 B5 24 mov ax,word ptr [24b5h]
+0D96  A3 AF 24    mov word ptr [24afh],ax
+0D99  8B 1E B7 24 mov bx,word ptr [24b7h]
+0D9D  89 1E B1 24 mov word ptr [24b1h],bx
+0DA1  8B 16 B9 24 mov dx,word ptr [24b9h]
+0DA5  89 16 B3 24 mov word ptr [24b3h],dx
+0DA9  8B 06 B5 24 mov ax,word ptr [24b5h]
+0DAD  A3 C1 24    mov word ptr [24c1h],ax
+0DB0  8B 1E B7 24 mov bx,word ptr [24b7h]
+0DB4  89 1E C3 24 mov word ptr [24c3h],bx
+0DB8  8B 16 B9 24 mov dx,word ptr [24b9h]
+0DBC  89 16 C5 24 mov word ptr [24c5h],dx
+0DC0  8B 06 B5 24 mov ax,word ptr [24b5h]
+0DC4  A3 C7 24    mov word ptr [24c7h],ax
+0DC7  8B 1E B7 24 mov bx,word ptr [24b7h]
+0DCB  89 1E C9 24 mov word ptr [24c9h],bx
+0DCF  8B 16 B9 24 mov dx,word ptr [24b9h]
+0DD3  89 16 CB 24 mov word ptr [24cbh],dx
+0DD7  BB C1 24    mov bx,24c1h
+0DDA  53          push bx
+0DDB  E8 A2 F7    call 580h
+0DDE  83 C4 02    add sp,2h
+0DE1  8B 06 C1 24 mov ax,word ptr [24c1h]
+0DE5  A3 B5 24    mov word ptr [24b5h],ax
+0DE8  8B 1E C3 24 mov bx,word ptr [24c3h]
+0DEC  89 1E B7 24 mov word ptr [24b7h],bx
+0DF0  8B 16 C5 24 mov dx,word ptr [24c5h]
+0DF4  89 16 B9 24 mov word ptr [24b9h],dx
+0DF8  BB AD 23    mov bx,23adh
+0DFB  89 1E EF 24 mov word ptr [24efh],bx
+0DFF  C6 06 F1 24 08 mov byte ptr [24f1h],8h
+0E04  C6 06 F2 24 00 mov byte ptr [24f2h],0h
+0E09  E8 51 FA    call 85dh
+0E0C  8B 06 AF 24 mov ax,word ptr [24afh]
+0E10  A3 C1 24    mov word ptr [24c1h],ax
+0E13  8B 1E B1 24 mov bx,word ptr [24b1h]
+0E17  89 1E C3 24 mov word ptr [24c3h],bx
+0E1B  8B 16 B3 24 mov dx,word ptr [24b3h]
+0E1F  89 16 C5 24 mov word ptr [24c5h],dx
+0E23  8B 06 BB 24 mov ax,word ptr [24bbh]
+0E27  A3 C7 24    mov word ptr [24c7h],ax
+0E2A  8B 1E BD 24 mov bx,word ptr [24bdh]
+0E2E  89 1E C9 24 mov word ptr [24c9h],bx
+0E32  8B 16 BF 24 mov dx,word ptr [24bfh]
+0E36  89 16 CB 24 mov word ptr [24cbh],dx
+0E3A  BB C1 24    mov bx,24c1h
+0E3D  53          push bx
+0E3E  E8 3F F7    call 580h
+0E41  83 C4 02    add sp,2h
+0E44  8B 06 C1 24 mov ax,word ptr [24c1h]
+0E48  A3 BB 24    mov word ptr [24bbh],ax
+0E4B  8B 1E C3 24 mov bx,word ptr [24c3h]
+0E4F  89 1E BD 24 mov word ptr [24bdh],bx
+0E53  8B 16 C5 24 mov dx,word ptr [24c5h]
+0E57  89 16 BF 24 mov word ptr [24bfh],dx
+0E5B  8B 06 BB 24 mov ax,word ptr [24bbh]
+0E5F  A3 C1 24    mov word ptr [24c1h],ax
+0E62  8B 1E BD 24 mov bx,word ptr [24bdh]
+0E66  89 1E C3 24 mov word ptr [24c3h],bx
+0E6A  8B 16 BF 24 mov dx,word ptr [24bfh]
+0E6E  89 16 C5 24 mov word ptr [24c5h],dx
+0E72  8B 06 BB 24 mov ax,word ptr [24bbh]
+0E76  A3 C7 24    mov word ptr [24c7h],ax
+0E79  8B 1E BD 24 mov bx,word ptr [24bdh]
+0E7D  89 1E C9 24 mov word ptr [24c9h],bx
+0E81  8B 16 BF 24 mov dx,word ptr [24bfh]
+0E85  89 16 CB 24 mov word ptr [24cbh],dx
+0E89  BB C1 24    mov bx,24c1h
+0E8C  53          push bx
+0E8D  E8 88 F5    call 418h
+0E90  83 C4 02    add sp,2h
+0E93  8B 06 C1 24 mov ax,word ptr [24c1h]
+0E97  A3 BB 24    mov word ptr [24bbh],ax
+0E9A  8B 1E C3 24 mov bx,word ptr [24c3h]
+0E9E  89 1E BD 24 mov word ptr [24bdh],bx
+0EA2  8B 16 C5 24 mov dx,word ptr [24c5h]
+0EA6  89 16 BF 24 mov word ptr [24bfh],dx
+0EAA  8B 06 CD 24 mov ax,word ptr [24cdh]
+0EAE  A3 C1 24    mov word ptr [24c1h],ax
+0EB1  8B 1E CF 24 mov bx,word ptr [24cfh]
+0EB5  89 1E C3 24 mov word ptr [24c3h],bx
+0EB9  8B 16 D1 24 mov dx,word ptr [24d1h]
+0EBD  89 16 C5 24 mov word ptr [24c5h],dx
+0EC1  8B 06 A1 23 mov ax,word ptr [23a1h]
+0EC5  A3 C7 24    mov word ptr [24c7h],ax
+0EC8  8B 1E A3 23 mov bx,word ptr [23a3h]
+0ECC  89 1E C9 24 mov word ptr [24c9h],bx
+0ED0  8B 16 A5 23 mov dx,word ptr [23a5h]
+0ED4  89 16 CB 24 mov word ptr [24cbh],dx
+0ED8  BB C1 24    mov bx,24c1h
+0EDB  53          push bx
+0EDC  E8 A1 F6    call 580h
+0EDF  83 C4 02    add sp,2h
+0EE2  8B 06 C1 24 mov ax,word ptr [24c1h]
+0EE6  A3 CD 24    mov word ptr [24cdh],ax
+0EE9  8B 1E C3 24 mov bx,word ptr [24c3h]
+0EED  89 1E CF 24 mov word ptr [24cfh],bx
+0EF1  8B 16 C5 24 mov dx,word ptr [24c5h]
+0EF5  89 16 D1 24 mov word ptr [24d1h],dx
+0EF9  8B 06 BB 24 mov ax,word ptr [24bbh]
+0EFD  A3 C1 24    mov word ptr [24c1h],ax
+0F00  8B 1E BD 24 mov bx,word ptr [24bdh]
+0F04  89 1E C3 24 mov word ptr [24c3h],bx
+0F08  8B 16 BF 24 mov dx,word ptr [24bfh]
+0F0C  89 16 C5 24 mov word ptr [24c5h],dx
+0F10  8B 06 CD 24 mov ax,word ptr [24cdh]
+0F14  A3 C7 24    mov word ptr [24c7h],ax
+0F17  8B 1E CF 24 mov bx,word ptr [24cfh]
+0F1B  89 1E C9 24 mov word ptr [24c9h],bx
+0F1F  8B 16 D1 24 mov dx,word ptr [24d1h]
+0F23  89 16 CB 24 mov word ptr [24cbh],dx
+0F27  BB C1 24    mov bx,24c1h
+0F2A  53          push bx
+0F2B  E8 EA F4    call 418h
+0F2E  83 C4 02    add sp,2h
+0F31  8B 06 C1 24 mov ax,word ptr [24c1h]
+0F35  A3 BB 24    mov word ptr [24bbh],ax
+0F38  8B 1E C3 24 mov bx,word ptr [24c3h]
+0F3C  89 1E BD 24 mov word ptr [24bdh],bx
+0F40  8B 16 C5 24 mov dx,word ptr [24c5h]
+0F44  89 16 BF 24 mov word ptr [24bfh],dx
+0F48  5F          pop di
+0F49  8B 06 BB 24 mov ax,word ptr [24bbh]
+0F4D  8B 1E BD 24 mov bx,word ptr [24bdh]
+0F51  8B 16 BF 24 mov dx,word ptr [24bfh]
+0F55  89 05       mov word ptr [di],ax
+0F57  89 5D 02    mov word ptr [di+2h],bx
+0F5A  89 55 04    mov word ptr [di+4h],dx
+0F5D  EB 07       jmp 0f66h
+0F5F  5F          pop di
+0F60  B0 04       mov al,4h
+0F62  B4 4C       mov ah,4ch
+0F64  CD 21       int 21h
+0F66  5F          pop di
+0F67  5E          pop si
+0F68  5A          pop dx
+0F69  5B          pop bx
+0F6A  89 EC       mov sp,bp
+0F6C  5D          pop bp
+0F6D  C3          ret
+0F6E  55          push bp
+0F6F  8B EC       mov bp,sp
+0F71  53          push bx
+0F72  52          push dx
+0F73  56          push si
+0F74  57          push di
+0F75  FF 76 04    push word ptr [bp+4h]
+0F78  8B 76 04    mov si,word ptr [bp+4h]
+0F7B  8B 04       mov ax,word ptr [si]
+0F7D  8B 4C 02    mov cx,word ptr [si+2h]
+0F80  89 CB       mov bx,cx
+0F82  8B 54 04    mov dx,word ptr [si+4h]
+0F85  A3 AF 24    mov word ptr [24afh],ax
+0F88  89 1E B1 24 mov word ptr [24b1h],bx
+0F8C  89 16 B3 24 mov word ptr [24b3h],dx
+0F90  8B 06 AF 24 mov ax,word ptr [24afh]
+0F94  A3 C1 24    mov word ptr [24c1h],ax
+0F97  8B 1E B1 24 mov bx,word ptr [24b1h]
+0F9B  89 1E C3 24 mov word ptr [24c3h],bx
+0F9F  8B 16 B3 24 mov dx,word ptr [24b3h]
+0FA3  89 16 C5 24 mov word ptr [24c5h],dx
+0FA7  8B 06 31 24 mov ax,word ptr [2431h]
+0FAB  A3 C7 24    mov word ptr [24c7h],ax
+0FAE  8B 1E 33 24 mov bx,word ptr [2433h]
+0FB2  89 1E C9 24 mov word ptr [24c9h],bx
+0FB6  8B 16 35 24 mov dx,word ptr [2435h]
+0FBA  89 16 CB 24 mov word ptr [24cbh],dx
+0FBE  BB C1 24    mov bx,24c1h
+0FC1  53          push bx
+0FC2  E8 A4 F6    call 669h
+0FC5  83 C4 02    add sp,2h
+0FC8  8B 06 C1 24 mov ax,word ptr [24c1h]
+0FCC  A3 B5 24    mov word ptr [24b5h],ax
+0FCF  8B 1E C3 24 mov bx,word ptr [24c3h]
+0FD3  89 1E B7 24 mov word ptr [24b7h],bx
+0FD7  8B 16 C5 24 mov dx,word ptr [24c5h]
+0FDB  89 16 B9 24 mov word ptr [24b9h],dx
+0FDF  8B 06 B5 24 mov ax,word ptr [24b5h]
+0FE3  A3 C1 24    mov word ptr [24c1h],ax
+0FE6  8B 1E B7 24 mov bx,word ptr [24b7h]
+0FEA  89 1E C3 24 mov word ptr [24c3h],bx
+0FEE  8B 16 B9 24 mov dx,word ptr [24b9h]
+0FF2  89 16 C5 24 mov word ptr [24c5h],dx
+0FF6  BB C1 24    mov bx,24c1h
+0FF9  53          push bx
+0FFA  E8 D6 F7    call 7d3h
+0FFD  83 C4 02    add sp,2h
+1000  8B 06 C1 24 mov ax,word ptr [24c1h]
+1004  A3 B5 24    mov word ptr [24b5h],ax
+1007  8B 1E C3 24 mov bx,word ptr [24c3h]
+100B  89 1E B7 24 mov word ptr [24b7h],bx
+100F  8B 16 C5 24 mov dx,word ptr [24c5h]
+1013  89 16 B9 24 mov word ptr [24b9h],dx
+1017  8B 06 B5 24 mov ax,word ptr [24b5h]
+101B  A3 C1 24    mov word ptr [24c1h],ax
+101E  8B 1E B7 24 mov bx,word ptr [24b7h]
+1022  89 1E C3 24 mov word ptr [24c3h],bx
+1026  8B 16 B9 24 mov dx,word ptr [24b9h]
+102A  89 16 C5 24 mov word ptr [24c5h],dx
+102E  8B 06 31 24 mov ax,word ptr [2431h]
+1032  A3 C7 24    mov word ptr [24c7h],ax
+1035  8B 1E 33 24 mov bx,word ptr [2433h]
+1039  89 1E C9 24 mov word ptr [24c9h],bx
+103D  8B 16 35 24 mov dx,word ptr [2435h]
+1041  89 16 CB 24 mov word ptr [24cbh],dx
+1045  BB C1 24    mov bx,24c1h
+1048  53          push bx
+1049  E8 34 F5    call 580h
+104C  83 C4 02    add sp,2h
+104F  8B 06 C1 24 mov ax,word ptr [24c1h]
+1053  A3 B5 24    mov word ptr [24b5h],ax
+1056  8B 1E C3 24 mov bx,word ptr [24c3h]
+105A  89 1E B7 24 mov word ptr [24b7h],bx
+105E  8B 16 C5 24 mov dx,word ptr [24c5h]
+1062  89 16 B9 24 mov word ptr [24b9h],dx
+1066  8B 06 AF 24 mov ax,word ptr [24afh]
+106A  A3 C1 24    mov word ptr [24c1h],ax
+106D  8B 1E B1 24 mov bx,word ptr [24b1h]
+1071  89 1E C3 24 mov word ptr [24c3h],bx
+1075  8B 16 B3 24 mov dx,word ptr [24b3h]
+1079  89 16 C5 24 mov word ptr [24c5h],dx
+107D  8B 06 B5 24 mov ax,word ptr [24b5h]
+1081  A3 C7 24    mov word ptr [24c7h],ax
+1084  8B 1E B7 24 mov bx,word ptr [24b7h]
+1088  89 1E C9 24 mov word ptr [24c9h],bx
+108C  8B 16 B9 24 mov dx,word ptr [24b9h]
+1090  89 16 CB 24 mov word ptr [24cbh],dx
+1094  BB C1 24    mov bx,24c1h
+1097  53          push bx
+1098  E8 B9 F3    call 454h
+109B  83 C4 02    add sp,2h
+109E  8B 06 C1 24 mov ax,word ptr [24c1h]
+10A2  A3 AF 24    mov word ptr [24afh],ax
+10A5  8B 1E C3 24 mov bx,word ptr [24c3h]
+10A9  89 1E B1 24 mov word ptr [24b1h],bx
+10AD  8B 16 C5 24 mov dx,word ptr [24c5h]
+10B1  89 16 B3 24 mov word ptr [24b3h],dx
+10B5  8B 06 AF 24 mov ax,word ptr [24afh]
+10B9  A3 C1 24    mov word ptr [24c1h],ax
+10BC  8B 1E B1 24 mov bx,word ptr [24b1h]
+10C0  89 1E C3 24 mov word ptr [24c3h],bx
+10C4  8B 16 B3 24 mov dx,word ptr [24b3h]
+10C8  89 16 C5 24 mov word ptr [24c5h],dx
+10CC  8B 06 25 24 mov ax,word ptr [2425h]
+10D0  A3 C7 24    mov word ptr [24c7h],ax
+10D3  8B 1E 27 24 mov bx,word ptr [2427h]
+10D7  89 1E C9 24 mov word ptr [24c9h],bx
+10DB  8B 16 29 24 mov dx,word ptr [2429h]
+10DF  89 16 CB 24 mov word ptr [24cbh],dx
+10E3  BB C1 24    mov bx,24c1h
+10E6  53          push bx
+10E7  E8 83 F6    call 76dh
+10EA  83 C4 02    add sp,2h
+10ED  83 F8 00    cmp ax,0h
+10F0  7F 03       jnle 10f5h
+10F2  E9 4F 00    jmp 1144h
+10F5  8B 06 AF 24 mov ax,word ptr [24afh]
+10F9  A3 C1 24    mov word ptr [24c1h],ax
+10FC  8B 1E B1 24 mov bx,word ptr [24b1h]
+1100  89 1E C3 24 mov word ptr [24c3h],bx
+1104  8B 16 B3 24 mov dx,word ptr [24b3h]
+1108  89 16 C5 24 mov word ptr [24c5h],dx
+110C  8B 06 31 24 mov ax,word ptr [2431h]
+1110  A3 C7 24    mov word ptr [24c7h],ax
+1113  8B 1E 33 24 mov bx,word ptr [2433h]
+1117  89 1E C9 24 mov word ptr [24c9h],bx
+111B  8B 16 35 24 mov dx,word ptr [2435h]
+111F  89 16 CB 24 mov word ptr [24cbh],dx
+1123  BB C1 24    mov bx,24c1h
+1126  53          push bx
+1127  E8 2A F3    call 454h
+112A  83 C4 02    add sp,2h
+112D  8B 06 C1 24 mov ax,word ptr [24c1h]
+1131  A3 AF 24    mov word ptr [24afh],ax
+1134  8B 1E C3 24 mov bx,word ptr [24c3h]
+1138  89 1E B1 24 mov word ptr [24b1h],bx
+113C  8B 16 C5 24 mov dx,word ptr [24c5h]
+1140  89 16 B3 24 mov word ptr [24b3h],dx
+1144  8B 06 AF 24 mov ax,word ptr [24afh]
+1148  A3 C1 24    mov word ptr [24c1h],ax
+114B  8B 1E B1 24 mov bx,word ptr [24b1h]
+114F  89 1E C3 24 mov word ptr [24c3h],bx
+1153  8B 16 B3 24 mov dx,word ptr [24b3h]
+1157  89 16 C5 24 mov word ptr [24c5h],dx
+115B  8B 06 D4 24 mov ax,word ptr [24d4h]
+115F  A3 C7 24    mov word ptr [24c7h],ax
+1162  8B 1E D6 24 mov bx,word ptr [24d6h]
+1166  89 1E C9 24 mov word ptr [24c9h],bx
+116A  8B 16 D8 24 mov dx,word ptr [24d8h]
+116E  89 16 CB 24 mov word ptr [24cbh],dx
+1172  BB C1 24    mov bx,24c1h
+1175  53          push bx
+1176  E8 F4 F5    call 76dh
+1179  83 C4 02    add sp,2h
+117C  83 F8 00    cmp ax,0h
+117F  7C 03       jl 1184h
+1181  E9 4F 00    jmp 11d3h
+1184  8B 06 AF 24 mov ax,word ptr [24afh]
+1188  A3 C1 24    mov word ptr [24c1h],ax
+118B  8B 1E B1 24 mov bx,word ptr [24b1h]
+118F  89 1E C3 24 mov word ptr [24c3h],bx
+1193  8B 16 B3 24 mov dx,word ptr [24b3h]
+1197  89 16 C5 24 mov word ptr [24c5h],dx
+119B  8B 06 31 24 mov ax,word ptr [2431h]
+119F  A3 C7 24    mov word ptr [24c7h],ax
+11A2  8B 1E 33 24 mov bx,word ptr [2433h]
+11A6  89 1E C9 24 mov word ptr [24c9h],bx
+11AA  8B 16 35 24 mov dx,word ptr [2435h]
+11AE  89 16 CB 24 mov word ptr [24cbh],dx
+11B2  BB C1 24    mov bx,24c1h
+11B5  53          push bx
+11B6  E8 5F F2    call 418h
+11B9  83 C4 02    add sp,2h
+11BC  8B 06 C1 24 mov ax,word ptr [24c1h]
+11C0  A3 AF 24    mov word ptr [24afh],ax
+11C3  8B 1E C3 24 mov bx,word ptr [24c3h]
+11C7  89 1E B1 24 mov word ptr [24b1h],bx
+11CB  8B 16 C5 24 mov dx,word ptr [24c5h]
+11CF  89 16 B3 24 mov word ptr [24b3h],dx
+11D3  8B 06 AF 24 mov ax,word ptr [24afh]
+11D7  A3 C1 24    mov word ptr [24c1h],ax
+11DA  8B 1E B1 24 mov bx,word ptr [24b1h]
+11DE  89 1E C3 24 mov word ptr [24c3h],bx
+11E2  8B 16 B3 24 mov dx,word ptr [24b3h]
+11E6  89 16 C5 24 mov word ptr [24c5h],dx
+11EA  8B 06 AF 24 mov ax,word ptr [24afh]
+11EE  A3 C7 24    mov word ptr [24c7h],ax
+11F1  8B 1E B1 24 mov bx,word ptr [24b1h]
+11F5  89 1E C9 24 mov word ptr [24c9h],bx
+11F9  8B 16 B3 24 mov dx,word ptr [24b3h]
+11FD  89 16 CB 24 mov word ptr [24cbh],dx
+1201  BB C1 24    mov bx,24c1h
+1204  53          push bx
+1205  E8 78 F3    call 580h
+1208  83 C4 02    add sp,2h
+120B  8B 06 C1 24 mov ax,word ptr [24c1h]
+120F  A3 B5 24    mov word ptr [24b5h],ax
+1212  8B 1E C3 24 mov bx,word ptr [24c3h]
+1216  89 1E B7 24 mov word ptr [24b7h],bx
+121A  8B 16 C5 24 mov dx,word ptr [24c5h]
+121E  89 16 B9 24 mov word ptr [24b9h],dx
+1222  BB 37 24    mov bx,2437h
+1225  89 1E EF 24 mov word ptr [24efh],bx
+1229  C6 06 F1 24 07 mov byte ptr [24f1h],7h
+122E  C6 06 F2 24 01 mov byte ptr [24f2h],1h
+1233  E8 27 F6    call 85dh
+1236  8B 06 BB 24 mov ax,word ptr [24bbh]
+123A  A3 C1 24    mov word ptr [24c1h],ax
+123D  8B 1E BD 24 mov bx,word ptr [24bdh]
+1241  89 1E C3 24 mov word ptr [24c3h],bx
+1245  8B 16 BF 24 mov dx,word ptr [24bfh]
+1249  89 16 C5 24 mov word ptr [24c5h],dx
+124D  8B 06 AF 24 mov ax,word ptr [24afh]
+1251  A3 C7 24    mov word ptr [24c7h],ax
+1254  8B 1E B1 24 mov bx,word ptr [24b1h]
+1258  89 1E C9 24 mov word ptr [24c9h],bx
+125C  8B 16 B3 24 mov dx,word ptr [24b3h]
+1260  89 16 CB 24 mov word ptr [24cbh],dx
+1264  BB C1 24    mov bx,24c1h
+1267  53          push bx
+1268  E8 15 F3    call 580h
+126B  83 C4 02    add sp,2h
+126E  8B 06 C1 24 mov ax,word ptr [24c1h]
+1272  A3 BB 24    mov word ptr [24bbh],ax
+1275  8B 1E C3 24 mov bx,word ptr [24c3h]
+1279  89 1E BD 24 mov word ptr [24bdh],bx
+127D  8B 16 C5 24 mov dx,word ptr [24c5h]
+1281  89 16 BF 24 mov word ptr [24bfh],dx
+1285  5F          pop di
+1286  8B 06 BB 24 mov ax,word ptr [24bbh]
+128A  8B 1E BD 24 mov bx,word ptr [24bdh]
+128E  8B 16 BF 24 mov dx,word ptr [24bfh]
+1292  89 05       mov word ptr [di],ax
+1294  89 5D 02    mov word ptr [di+2h],bx
+1297  89 55 04    mov word ptr [di+4h],dx
+129A  EB 00       jmp 129ch
+129C  5F          pop di
+129D  5E          pop si
+129E  5A          pop dx
+129F  5B          pop bx
+12A0  89 EC       mov sp,bp
+12A2  5D          pop bp
+12A3  C3          ret
+12A4  55          push bp
+12A5  8B EC       mov bp,sp
+12A7  53          push bx
+12A8  52          push dx
+12A9  56          push si
+12AA  57          push di
+12AB  FF 76 04    push word ptr [bp+4h]
+12AE  8B 76 04    mov si,word ptr [bp+4h]
+12B1  8B 04       mov ax,word ptr [si]
+12B3  8B 4C 02    mov cx,word ptr [si+2h]
+12B6  89 CB       mov bx,cx
+12B8  8B 54 04    mov dx,word ptr [si+4h]
+12BB  A3 AF 24    mov word ptr [24afh],ax
+12BE  89 1E B1 24 mov word ptr [24b1h],bx
+12C2  89 16 B3 24 mov word ptr [24b3h],dx
+12C6  8B 06 AF 24 mov ax,word ptr [24afh]
+12CA  A3 C1 24    mov word ptr [24c1h],ax
+12CD  8B 1E B1 24 mov bx,word ptr [24b1h]
+12D1  89 1E C3 24 mov word ptr [24c3h],bx
+12D5  8B 16 B3 24 mov dx,word ptr [24b3h]
+12D9  89 16 C5 24 mov word ptr [24c5h],dx
+12DD  8B 06 2B 24 mov ax,word ptr [242bh]
+12E1  A3 C7 24    mov word ptr [24c7h],ax
+12E4  8B 1E 2D 24 mov bx,word ptr [242dh]
+12E8  89 1E C9 24 mov word ptr [24c9h],bx
+12EC  8B 16 2F 24 mov dx,word ptr [242fh]
+12F0  89 16 CB 24 mov word ptr [24cbh],dx
+12F4  BB C1 24    mov bx,24c1h
+12F7  53          push bx
+12F8  E8 1D F1    call 418h
+12FB  83 C4 02    add sp,2h
+12FE  8B 06 C1 24 mov ax,word ptr [24c1h]
+1302  A3 AF 24    mov word ptr [24afh],ax
+1305  8B 1E C3 24 mov bx,word ptr [24c3h]
+1309  89 1E B1 24 mov word ptr [24b1h],bx
+130D  8B 16 C5 24 mov dx,word ptr [24c5h]
+1311  89 16 B3 24 mov word ptr [24b3h],dx
+1315  5F          pop di
+1316  8B 06 AF 24 mov ax,word ptr [24afh]
+131A  8B 1E B1 24 mov bx,word ptr [24b1h]
+131E  8B 16 B3 24 mov dx,word ptr [24b3h]
+1322  89 05       mov word ptr [di],ax
+1324  89 5D 02    mov word ptr [di+2h],bx
+1327  89 55 04    mov word ptr [di+4h],dx
+132A  FF 76 04    push word ptr [bp+4h]
+132D  E8 3E FC    call 0f6eh
+1330  83 C4 02    add sp,2h
+1333  5F          pop di
+1334  5E          pop si
+1335  5A          pop dx
+1336  5B          pop bx
+1337  89 EC       mov sp,bp
+1339  5D          pop bp
+133A  C3          ret
+133B  55          push bp
+133C  8B EC       mov bp,sp
+133E  53          push bx
+133F  52          push dx
+1340  56          push si
+1341  57          push di
+1342  FF 76 04    push word ptr [bp+4h]
+1345  8B 76 04    mov si,word ptr [bp+4h]
+1348  8B 04       mov ax,word ptr [si]
+134A  8B 4C 02    mov cx,word ptr [si+2h]
+134D  89 CB       mov bx,cx
+134F  8B 54 04    mov dx,word ptr [si+4h]
+1352  A3 AF 24    mov word ptr [24afh],ax
+1355  89 1E B1 24 mov word ptr [24b1h],bx
+1359  89 16 B3 24 mov word ptr [24b3h],dx
+135D  8B 06 AF 24 mov ax,word ptr [24afh]
+1361  A3 C1 24    mov word ptr [24c1h],ax
+1364  8B 1E B1 24 mov bx,word ptr [24b1h]
+1368  89 1E C3 24 mov word ptr [24c3h],bx
+136C  8B 16 B3 24 mov dx,word ptr [24b3h]
+1370  89 16 C5 24 mov word ptr [24c5h],dx
+1374  8B 06 E9 24 mov ax,word ptr [24e9h]
+1378  A3 C7 24    mov word ptr [24c7h],ax
+137B  8B 1E EB 24 mov bx,word ptr [24ebh]
+137F  89 1E C9 24 mov word ptr [24c9h],bx
+1383  8B 16 ED 24 mov dx,word ptr [24edh]
+1387  89 16 CB 24 mov word ptr [24cbh],dx
+138B  BB C1 24    mov bx,24c1h
+138E  53          push bx
+138F  E8 DB F3    call 76dh
+1392  83 C4 02    add sp,2h
+1395  83 F8 00    cmp ax,0h
+1398  7C 03       jl 139dh
+139A  E9 08 00    jmp 13a5h
+139D  C6 06 DA 24 01 mov byte ptr [24dah],1h
+13A2  E9 05 00    jmp 13aah
+13A5  C6 06 DA 24 00 mov byte ptr [24dah],0h
+13AA  8B 06 AF 24 mov ax,word ptr [24afh]
+13AE  A3 C1 24    mov word ptr [24c1h],ax
+13B1  8B 1E B1 24 mov bx,word ptr [24b1h]
+13B5  89 1E C3 24 mov word ptr [24c3h],bx
+13B9  8B 16 B3 24 mov dx,word ptr [24b3h]
+13BD  89 16 C5 24 mov word ptr [24c5h],dx
+13C1  BB C1 24    mov bx,24c1h
+13C4  53          push bx
+13C5  E8 7E F6    call 0a46h
+13C8  83 C4 02    add sp,2h
+13CB  8B 06 C1 24 mov ax,word ptr [24c1h]
+13CF  A3 B5 24    mov word ptr [24b5h],ax
+13D2  8B 1E C3 24 mov bx,word ptr [24c3h]
+13D6  89 1E B7 24 mov word ptr [24b7h],bx
+13DA  8B 16 C5 24 mov dx,word ptr [24c5h]
+13DE  89 16 B9 24 mov word ptr [24b9h],dx
+13E2  C6 06 DB 24 00 mov byte ptr [24dbh],0h
+13E7  8B 06 B5 24 mov ax,word ptr [24b5h]
+13EB  A3 C1 24    mov word ptr [24c1h],ax
+13EE  8B 1E B7 24 mov bx,word ptr [24b7h]
+13F2  89 1E C3 24 mov word ptr [24c3h],bx
+13F6  8B 16 B9 24 mov dx,word ptr [24b9h]
+13FA  89 16 C5 24 mov word ptr [24c5h],dx
+13FE  8B 06 95 23 mov ax,word ptr [2395h]
+1402  A3 C7 24    mov word ptr [24c7h],ax
+1405  8B 1E 97 23 mov bx,word ptr [2397h]
+1409  89 1E C9 24 mov word ptr [24c9h],bx
+140D  8B 16 99 23 mov dx,word ptr [2399h]
+1411  89 16 CB 24 mov word ptr [24cbh],dx
+1415  BB C1 24    mov bx,24c1h
+1418  53          push bx
+1419  E8 51 F3    call 76dh
+141C  83 C4 02    add sp,2h
+141F  83 F8 00    cmp ax,0h
+1422  7F 03       jnle 1427h
+1424  E9 54 00    jmp 147bh
+1427  C6 06 DB 24 01 mov byte ptr [24dbh],1h
+142C  8B 06 95 23 mov ax,word ptr [2395h]
+1430  A3 C1 24    mov word ptr [24c1h],ax
+1433  8B 1E 97 23 mov bx,word ptr [2397h]
+1437  89 1E C3 24 mov word ptr [24c3h],bx
+143B  8B 16 99 23 mov dx,word ptr [2399h]
+143F  89 16 C5 24 mov word ptr [24c5h],dx
+1443  8B 06 B5 24 mov ax,word ptr [24b5h]
+1447  A3 C7 24    mov word ptr [24c7h],ax
+144A  8B 1E B7 24 mov bx,word ptr [24b7h]
+144E  89 1E C9 24 mov word ptr [24c9h],bx
+1452  8B 16 B9 24 mov dx,word ptr [24b9h]
+1456  89 16 CB 24 mov word ptr [24cbh],dx
+145A  BB C1 24    mov bx,24c1h
+145D  53          push bx
+145E  E8 08 F2    call 669h
+1461  83 C4 02    add sp,2h
+1464  8B 06 C1 24 mov ax,word ptr [24c1h]
+1468  A3 B5 24    mov word ptr [24b5h],ax
+146B  8B 1E C3 24 mov bx,word ptr [24c3h]
+146F  89 1E B7 24 mov word ptr [24b7h],bx
+1473  8B 16 C5 24 mov dx,word ptr [24c5h]
+1477  89 16 B9 24 mov word ptr [24b9h],dx
+147B  C6 06 DC 24 00 mov byte ptr [24dch],0h
+1480  8B 06 B5 24 mov ax,word ptr [24b5h]
+1484  A3 C1 24    mov word ptr [24c1h],ax
+1487  8B 1E B7 24 mov bx,word ptr [24b7h]
+148B  89 1E C3 24 mov word ptr [24c3h],bx
+148F  8B 16 B9 24 mov dx,word ptr [24b9h]
+1493  89 16 C5 24 mov word ptr [24c5h],dx
+1497  8B 06 DD 24 mov ax,word ptr [24ddh]
+149B  A3 C7 24    mov word ptr [24c7h],ax
+149E  8B 1E DF 24 mov bx,word ptr [24dfh]
+14A2  89 1E C9 24 mov word ptr [24c9h],bx
+14A6  8B 16 E1 24 mov dx,word ptr [24e1h]
+14AA  89 16 CB 24 mov word ptr [24cbh],dx
+14AE  BB C1 24    mov bx,24c1h
+14B1  53          push bx
+14B2  E8 B8 F2    call 76dh
+14B5  83 C4 02    add sp,2h
+14B8  83 F8 00    cmp ax,0h
+14BB  7F 03       jnle 14c0h
+14BD  E9 F5 00    jmp 15b5h
+14C0  C6 06 DC 24 01 mov byte ptr [24dch],1h
+14C5  8B 06 B5 24 mov ax,word ptr [24b5h]
+14C9  A3 C1 24    mov word ptr [24c1h],ax
+14CC  8B 1E B7 24 mov bx,word ptr [24b7h]
+14D0  89 1E C3 24 mov word ptr [24c3h],bx
+14D4  8B 16 B9 24 mov dx,word ptr [24b9h]
+14D8  89 16 C5 24 mov word ptr [24c5h],dx
+14DC  8B 06 95 23 mov ax,word ptr [2395h]
+14E0  A3 C7 24    mov word ptr [24c7h],ax
+14E3  8B 1E 97 23 mov bx,word ptr [2397h]
+14E7  89 1E C9 24 mov word ptr [24c9h],bx
+14EB  8B 16 99 23 mov dx,word ptr [2399h]
+14EF  89 16 CB 24 mov word ptr [24cbh],dx
+14F3  BB C1 24    mov bx,24c1h
+14F6  53          push bx
+14F7  E8 5A EF    call 454h
+14FA  83 C4 02    add sp,2h
+14FD  8B 06 C1 24 mov ax,word ptr [24c1h]
+1501  A3 AF 24    mov word ptr [24afh],ax
+1504  8B 1E C3 24 mov bx,word ptr [24c3h]
+1508  89 1E B1 24 mov word ptr [24b1h],bx
+150C  8B 16 C5 24 mov dx,word ptr [24c5h]
+1510  89 16 B3 24 mov word ptr [24b3h],dx
+1514  8B 06 B5 24 mov ax,word ptr [24b5h]
+1518  A3 C1 24    mov word ptr [24c1h],ax
+151B  8B 1E B7 24 mov bx,word ptr [24b7h]
+151F  89 1E C3 24 mov word ptr [24c3h],bx
+1523  8B 16 B9 24 mov dx,word ptr [24b9h]
+1527  89 16 C5 24 mov word ptr [24c5h],dx
+152B  8B 06 95 23 mov ax,word ptr [2395h]
+152F  A3 C7 24    mov word ptr [24c7h],ax
+1532  8B 1E 97 23 mov bx,word ptr [2397h]
+1536  89 1E C9 24 mov word ptr [24c9h],bx
+153A  8B 16 99 23 mov dx,word ptr [2399h]
+153E  89 16 CB 24 mov word ptr [24cbh],dx
+1542  BB C1 24    mov bx,24c1h
+1545  53          push bx
+1546  E8 CF EE    call 418h
+1549  83 C4 02    add sp,2h
+154C  8B 06 C1 24 mov ax,word ptr [24c1h]
+1550  A3 BB 24    mov word ptr [24bbh],ax
+1553  8B 1E C3 24 mov bx,word ptr [24c3h]
+1557  89 1E BD 24 mov word ptr [24bdh],bx
+155B  8B 16 C5 24 mov dx,word ptr [24c5h]
+155F  89 16 BF 24 mov word ptr [24bfh],dx
+1563  8B 06 AF 24 mov ax,word ptr [24afh]
+1567  A3 C1 24    mov word ptr [24c1h],ax
+156A  8B 1E B1 24 mov bx,word ptr [24b1h]
+156E  89 1E C3 24 mov word ptr [24c3h],bx
+1572  8B 16 B3 24 mov dx,word ptr [24b3h]
+1576  89 16 C5 24 mov word ptr [24c5h],dx
+157A  8B 06 BB 24 mov ax,word ptr [24bbh]
+157E  A3 C7 24    mov word ptr [24c7h],ax
+1581  8B 1E BD 24 mov bx,word ptr [24bdh]
+1585  89 1E C9 24 mov word ptr [24c9h],bx
+1589  8B 16 BF 24 mov dx,word ptr [24bfh]
+158D  89 16 CB 24 mov word ptr [24cbh],dx
+1591  BB C1 24    mov bx,24c1h
+1594  53          push bx
+1595  E8 D1 F0    call 669h
+1598  83 C4 02    add sp,2h
+159B  8B 06 C1 24 mov ax,word ptr [24c1h]
+159F  A3 AF 24    mov word ptr [24afh],ax
+15A2  8B 1E C3 24 mov bx,word ptr [24c3h]
+15A6  89 1E B1 24 mov word ptr [24b1h],bx
+15AA  8B 16 C5 24 mov dx,word ptr [24c5h]
+15AE  89 16 B3 24 mov word ptr [24b3h],dx
+15B2  E9 17 00    jmp 15cch
+15B5  8B 06 B5 24 mov ax,word ptr [24b5h]
+15B9  A3 AF 24    mov word ptr [24afh],ax
+15BC  8B 1E B7 24 mov bx,word ptr [24b7h]
+15C0  89 1E B1 24 mov word ptr [24b1h],bx
+15C4  8B 16 B9 24 mov dx,word ptr [24b9h]
+15C8  89 16 B3 24 mov word ptr [24b3h],dx
+15CC  8B 06 AF 24 mov ax,word ptr [24afh]
+15D0  A3 C1 24    mov word ptr [24c1h],ax
+15D3  8B 1E B1 24 mov bx,word ptr [24b1h]
+15D7  89 1E C3 24 mov word ptr [24c3h],bx
+15DB  8B 16 B3 24 mov dx,word ptr [24b3h]
+15DF  89 16 C5 24 mov word ptr [24c5h],dx
+15E3  8B 06 AF 24 mov ax,word ptr [24afh]
+15E7  A3 C7 24    mov word ptr [24c7h],ax
+15EA  8B 1E B1 24 mov bx,word ptr [24b1h]
+15EE  89 1E C9 24 mov word ptr [24c9h],bx
+15F2  8B 16 B3 24 mov dx,word ptr [24b3h]
+15F6  89 16 CB 24 mov word ptr [24cbh],dx
+15FA  BB C1 24    mov bx,24c1h
+15FD  53          push bx
+15FE  E8 7F EF    call 580h
+1601  83 C4 02    add sp,2h
+1604  8B 06 C1 24 mov ax,word ptr [24c1h]
+1608  A3 B5 24    mov word ptr [24b5h],ax
+160B  8B 1E C3 24 mov bx,word ptr [24c3h]
+160F  89 1E B7 24 mov word ptr [24b7h],bx
+1613  8B 16 C5 24 mov dx,word ptr [24c5h]
+1617  89 16 B9 24 mov word ptr [24b9h],dx
+161B  BB 61 24    mov bx,2461h
+161E  89 1E EF 24 mov word ptr [24efh],bx
+1622  C6 06 F1 24 05 mov byte ptr [24f1h],5h
+1627  C6 06 F2 24 01 mov byte ptr [24f2h],1h
+162C  E8 2E F2    call 85dh
+162F  8B 06 BB 24 mov ax,word ptr [24bbh]
+1633  A3 C1 24    mov word ptr [24c1h],ax
+1636  8B 1E BD 24 mov bx,word ptr [24bdh]
+163A  89 1E C3 24 mov word ptr [24c3h],bx
+163E  8B 16 BF 24 mov dx,word ptr [24bfh]
+1642  89 16 C5 24 mov word ptr [24c5h],dx
+1646  8B 06 AF 24 mov ax,word ptr [24afh]
+164A  A3 C7 24    mov word ptr [24c7h],ax
+164D  8B 1E B1 24 mov bx,word ptr [24b1h]
+1651  89 1E C9 24 mov word ptr [24c9h],bx
+1655  8B 16 B3 24 mov dx,word ptr [24b3h]
+1659  89 16 CB 24 mov word ptr [24cbh],dx
+165D  BB C1 24    mov bx,24c1h
+1660  53          push bx
+1661  E8 1C EF    call 580h
+1664  83 C4 02    add sp,2h
+1667  8B 06 C1 24 mov ax,word ptr [24c1h]
+166B  A3 B5 24    mov word ptr [24b5h],ax
+166E  8B 1E C3 24 mov bx,word ptr [24c3h]
+1672  89 1E B7 24 mov word ptr [24b7h],bx
+1676  8B 16 C5 24 mov dx,word ptr [24c5h]
+167A  89 16 B9 24 mov word ptr [24b9h],dx
+167E  F6 06 DC 24 01 test byte ptr [24dch],1h
+1683  75 03       jne 1688h
+1685  E9 4F 00    jmp 16d7h
+1688  8B 06 B5 24 mov ax,word ptr [24b5h]
+168C  A3 C1 24    mov word ptr [24c1h],ax
+168F  8B 1E B7 24 mov bx,word ptr [24b7h]
+1693  89 1E C3 24 mov word ptr [24c3h],bx
+1697  8B 16 B9 24 mov dx,word ptr [24b9h]
+169B  89 16 C5 24 mov word ptr [24c5h],dx
+169F  8B 06 E3 24 mov ax,word ptr [24e3h]
+16A3  A3 C7 24    mov word ptr [24c7h],ax
+16A6  8B 1E E5 24 mov bx,word ptr [24e5h]
+16AA  89 1E C9 24 mov word ptr [24c9h],bx
+16AE  8B 16 E7 24 mov dx,word ptr [24e7h]
+16B2  89 16 CB 24 mov word ptr [24cbh],dx
+16B6  BB C1 24    mov bx,24c1h
 16B9  53          push bx
 16B9  53          push bx
-16BA  E8 C3 EE    call 580h
+16BA  E8 5B ED    call 418h
 16BD  83 C4 02    add sp,2h
 16BD  83 C4 02    add sp,2h
-16C0  8B 06 C1 37 mov ax,word ptr [37c1h]
-16C4  A3 AF 37    mov word ptr [37afh],ax
-16C7  8B 1E C3 37 mov bx,word ptr [37c3h]
-16CB  89 1E B1 37 mov word ptr [37b1h],bx
-16CF  8B 16 C5 37 mov dx,word ptr [37c5h]
-16D3  89 16 B3 37 mov word ptr [37b3h],dx
-16D7  8B 06 AF 37 mov ax,word ptr [37afh]
-16DB  A3 C1 37    mov word ptr [37c1h],ax
-16DE  8B 1E B1 37 mov bx,word ptr [37b1h]
-16E2  89 1E C3 37 mov word ptr [37c3h],bx
-16E6  8B 16 B3 37 mov dx,word ptr [37b3h]
-16EA  89 16 C5 37 mov word ptr [37c5h],dx
-16EE  8B 06 BF 36 mov ax,word ptr [36bfh]
-16F2  A3 C7 37    mov word ptr [37c7h],ax
-16F5  8B 1E C1 36 mov bx,word ptr [36c1h]
-16F9  89 1E C9 37 mov word ptr [37c9h],bx
-16FD  8B 16 C3 36 mov dx,word ptr [36c3h]
-1701  89 16 CB 37 mov word ptr [37cbh],dx
-1705  BB C1 37    mov bx,37c1h
-1708  53          push bx
-1709  E8 0C ED    call 418h
-170C  83 C4 02    add sp,2h
-170F  8B 06 C1 37 mov ax,word ptr [37c1h]
-1713  A3 AF 37    mov word ptr [37afh],ax
-1716  8B 1E C3 37 mov bx,word ptr [37c3h]
-171A  89 1E B1 37 mov word ptr [37b1h],bx
-171E  8B 16 C5 37 mov dx,word ptr [37c5h]
-1722  89 16 B3 37 mov word ptr [37b3h],dx
-1726  8B 06 AF 37 mov ax,word ptr [37afh]
-172A  A3 C1 37    mov word ptr [37c1h],ax
-172D  8B 1E B1 37 mov bx,word ptr [37b1h]
-1731  89 1E C3 37 mov word ptr [37c3h],bx
-1735  8B 16 B3 37 mov dx,word ptr [37b3h]
-1739  89 16 C5 37 mov word ptr [37c5h],dx
-173D  8B 06 BB 37 mov ax,word ptr [37bbh]
-1741  A3 C7 37    mov word ptr [37c7h],ax
-1744  8B 1E BD 37 mov bx,word ptr [37bdh]
-1748  89 1E C9 37 mov word ptr [37c9h],bx
-174C  8B 16 BF 37 mov dx,word ptr [37bfh]
-1750  89 16 CB 37 mov word ptr [37cbh],dx
-1754  BB C1 37    mov bx,37c1h
-1757  53          push bx
-1758  E8 25 EE    call 580h
-175B  83 C4 02    add sp,2h
-175E  8B 06 C1 37 mov ax,word ptr [37c1h]
-1762  A3 AF 37    mov word ptr [37afh],ax
-1765  8B 1E C3 37 mov bx,word ptr [37c3h]
-1769  89 1E B1 37 mov word ptr [37b1h],bx
-176D  8B 16 C5 37 mov dx,word ptr [37c5h]
-1771  89 16 B3 37 mov word ptr [37b3h],dx
-1775  8B 06 AF 37 mov ax,word ptr [37afh]
-1779  A3 C1 37    mov word ptr [37c1h],ax
-177C  8B 1E B1 37 mov bx,word ptr [37b1h]
-1780  89 1E C3 37 mov word ptr [37c3h],bx
-1784  8B 16 B3 37 mov dx,word ptr [37b3h]
-1788  89 16 C5 37 mov word ptr [37c5h],dx
-178C  8B 06 C5 36 mov ax,word ptr [36c5h]
-1790  A3 C7 37    mov word ptr [37c7h],ax
-1793  8B 1E C7 36 mov bx,word ptr [36c7h]
-1797  89 1E C9 37 mov word ptr [37c9h],bx
-179B  8B 16 C9 36 mov dx,word ptr [36c9h]
-179F  89 16 CB 37 mov word ptr [37cbh],dx
-17A3  BB C1 37    mov bx,37c1h
-17A6  53          push bx
-17A7  E8 6E EC    call 418h
-17AA  83 C4 02    add sp,2h
-17AD  8B 06 C1 37 mov ax,word ptr [37c1h]
-17B1  A3 AF 37    mov word ptr [37afh],ax
-17B4  8B 1E C3 37 mov bx,word ptr [37c3h]
-17B8  89 1E B1 37 mov word ptr [37b1h],bx
-17BC  8B 16 C5 37 mov dx,word ptr [37c5h]
-17C0  89 16 B3 37 mov word ptr [37b3h],dx
-17C4  8B 06 AF 37 mov ax,word ptr [37afh]
-17C8  A3 C1 37    mov word ptr [37c1h],ax
-17CB  8B 1E B1 37 mov bx,word ptr [37b1h]
-17CF  89 1E C3 37 mov word ptr [37c3h],bx
-17D3  8B 16 B3 37 mov dx,word ptr [37b3h]
-17D7  89 16 C5 37 mov word ptr [37c5h],dx
-17DB  8B 06 BB 37 mov ax,word ptr [37bbh]
-17DF  A3 C7 37    mov word ptr [37c7h],ax
-17E2  8B 1E BD 37 mov bx,word ptr [37bdh]
-17E6  89 1E C9 37 mov word ptr [37c9h],bx
-17EA  8B 16 BF 37 mov dx,word ptr [37bfh]
-17EE  89 16 CB 37 mov word ptr [37cbh],dx
-17F2  BB C1 37    mov bx,37c1h
-17F5  53          push bx
-17F6  E8 87 ED    call 580h
-17F9  83 C4 02    add sp,2h
-17FC  8B 06 C1 37 mov ax,word ptr [37c1h]
-1800  A3 AF 37    mov word ptr [37afh],ax
-1803  8B 1E C3 37 mov bx,word ptr [37c3h]
-1807  89 1E B1 37 mov word ptr [37b1h],bx
-180B  8B 16 C5 37 mov dx,word ptr [37c5h]
-180F  89 16 B3 37 mov word ptr [37b3h],dx
-1813  8B 06 AF 37 mov ax,word ptr [37afh]
-1817  A3 C1 37    mov word ptr [37c1h],ax
-181A  8B 1E B1 37 mov bx,word ptr [37b1h]
-181E  89 1E C3 37 mov word ptr [37c3h],bx
-1822  8B 16 B3 37 mov dx,word ptr [37b3h]
-1826  89 16 C5 37 mov word ptr [37c5h],dx
-182A  8B 06 CB 36 mov ax,word ptr [36cbh]
-182E  A3 C7 37    mov word ptr [37c7h],ax
-1831  8B 1E CD 36 mov bx,word ptr [36cdh]
-1835  89 1E C9 37 mov word ptr [37c9h],bx
-1839  8B 16 CF 36 mov dx,word ptr [36cfh]
-183D  89 16 CB 37 mov word ptr [37cbh],dx
-1841  BB C1 37    mov bx,37c1h
-1844  53          push bx
-1845  E8 D0 EB    call 418h
-1848  83 C4 02    add sp,2h
-184B  8B 06 C1 37 mov ax,word ptr [37c1h]
-184F  A3 AF 37    mov word ptr [37afh],ax
-1852  8B 1E C3 37 mov bx,word ptr [37c3h]
-1856  89 1E B1 37 mov word ptr [37b1h],bx
-185A  8B 16 C5 37 mov dx,word ptr [37c5h]
-185E  89 16 B3 37 mov word ptr [37b3h],dx
-1862  8B 06 AF 37 mov ax,word ptr [37afh]
-1866  A3 C1 37    mov word ptr [37c1h],ax
-1869  8B 1E B1 37 mov bx,word ptr [37b1h]
-186D  89 1E C3 37 mov word ptr [37c3h],bx
-1871  8B 16 B3 37 mov dx,word ptr [37b3h]
-1875  89 16 C5 37 mov word ptr [37c5h],dx
-1879  8B 06 BB 37 mov ax,word ptr [37bbh]
-187D  A3 C7 37    mov word ptr [37c7h],ax
-1880  8B 1E BD 37 mov bx,word ptr [37bdh]
-1884  89 1E C9 37 mov word ptr [37c9h],bx
-1888  8B 16 BF 37 mov dx,word ptr [37bfh]
-188C  89 16 CB 37 mov word ptr [37cbh],dx
-1890  BB C1 37    mov bx,37c1h
-1893  53          push bx
-1894  E8 E9 EC    call 580h
-1897  83 C4 02    add sp,2h
-189A  8B 06 C1 37 mov ax,word ptr [37c1h]
-189E  A3 AF 37    mov word ptr [37afh],ax
-18A1  8B 1E C3 37 mov bx,word ptr [37c3h]
-18A5  89 1E B1 37 mov word ptr [37b1h],bx
-18A9  8B 16 C5 37 mov dx,word ptr [37c5h]
-18AD  89 16 B3 37 mov word ptr [37b3h],dx
-18B1  8B 06 AF 37 mov ax,word ptr [37afh]
-18B5  A3 C1 37    mov word ptr [37c1h],ax
-18B8  8B 1E B1 37 mov bx,word ptr [37b1h]
-18BC  89 1E C3 37 mov word ptr [37c3h],bx
-18C0  8B 16 B3 37 mov dx,word ptr [37b3h]
-18C4  89 16 C5 37 mov word ptr [37c5h],dx
-18C8  8B 06 D1 36 mov ax,word ptr [36d1h]
-18CC  A3 C7 37    mov word ptr [37c7h],ax
-18CF  8B 1E D3 36 mov bx,word ptr [36d3h]
-18D3  89 1E C9 37 mov word ptr [37c9h],bx
-18D7  8B 16 D5 36 mov dx,word ptr [36d5h]
-18DB  89 16 CB 37 mov word ptr [37cbh],dx
-18DF  BB C1 37    mov bx,37c1h
-18E2  53          push bx
-18E3  E8 32 EB    call 418h
-18E6  83 C4 02    add sp,2h
-18E9  8B 06 C1 37 mov ax,word ptr [37c1h]
-18ED  A3 AF 37    mov word ptr [37afh],ax
-18F0  8B 1E C3 37 mov bx,word ptr [37c3h]
-18F4  89 1E B1 37 mov word ptr [37b1h],bx
-18F8  8B 16 C5 37 mov dx,word ptr [37c5h]
-18FC  89 16 B3 37 mov word ptr [37b3h],dx
-1900  8B 06 AF 37 mov ax,word ptr [37afh]
-1904  A3 C1 37    mov word ptr [37c1h],ax
-1907  8B 1E B1 37 mov bx,word ptr [37b1h]
-190B  89 1E C3 37 mov word ptr [37c3h],bx
-190F  8B 16 B3 37 mov dx,word ptr [37b3h]
-1913  89 16 C5 37 mov word ptr [37c5h],dx
-1917  8B 06 BB 37 mov ax,word ptr [37bbh]
-191B  A3 C7 37    mov word ptr [37c7h],ax
-191E  8B 1E BD 37 mov bx,word ptr [37bdh]
-1922  89 1E C9 37 mov word ptr [37c9h],bx
-1926  8B 16 BF 37 mov dx,word ptr [37bfh]
-192A  89 16 CB 37 mov word ptr [37cbh],dx
-192E  BB C1 37    mov bx,37c1h
-1931  53          push bx
-1932  E8 4B EC    call 580h
-1935  83 C4 02    add sp,2h
-1938  8B 06 C1 37 mov ax,word ptr [37c1h]
-193C  A3 AF 37    mov word ptr [37afh],ax
-193F  8B 1E C3 37 mov bx,word ptr [37c3h]
-1943  89 1E B1 37 mov word ptr [37b1h],bx
-1947  8B 16 C5 37 mov dx,word ptr [37c5h]
-194B  89 16 B3 37 mov word ptr [37b3h],dx
-194F  8B 06 AF 37 mov ax,word ptr [37afh]
-1953  A3 C1 37    mov word ptr [37c1h],ax
-1956  8B 1E B1 37 mov bx,word ptr [37b1h]
-195A  89 1E C3 37 mov word ptr [37c3h],bx
-195E  8B 16 B3 37 mov dx,word ptr [37b3h]
-1962  89 16 C5 37 mov word ptr [37c5h],dx
-1966  8B 06 D7 36 mov ax,word ptr [36d7h]
-196A  A3 C7 37    mov word ptr [37c7h],ax
-196D  8B 1E D9 36 mov bx,word ptr [36d9h]
-1971  89 1E C9 37 mov word ptr [37c9h],bx
-1975  8B 16 DB 36 mov dx,word ptr [36dbh]
-1979  89 16 CB 37 mov word ptr [37cbh],dx
-197D  BB C1 37    mov bx,37c1h
-1980  53          push bx
-1981  E8 94 EA    call 418h
-1984  83 C4 02    add sp,2h
-1987  8B 06 C1 37 mov ax,word ptr [37c1h]
-198B  A3 AF 37    mov word ptr [37afh],ax
-198E  8B 1E C3 37 mov bx,word ptr [37c3h]
-1992  89 1E B1 37 mov word ptr [37b1h],bx
-1996  8B 16 C5 37 mov dx,word ptr [37c5h]
-199A  89 16 B3 37 mov word ptr [37b3h],dx
-199E  8B 06 B5 37 mov ax,word ptr [37b5h]
-19A2  A3 C1 37    mov word ptr [37c1h],ax
-19A5  8B 1E B7 37 mov bx,word ptr [37b7h]
-19A9  89 1E C3 37 mov word ptr [37c3h],bx
-19AD  8B 16 B9 37 mov dx,word ptr [37b9h]
-19B1  89 16 C5 37 mov word ptr [37c5h],dx
-19B5  8B 06 AF 37 mov ax,word ptr [37afh]
-19B9  A3 C7 37    mov word ptr [37c7h],ax
-19BC  8B 1E B1 37 mov bx,word ptr [37b1h]
-19C0  89 1E C9 37 mov word ptr [37c9h],bx
-19C4  8B 16 B3 37 mov dx,word ptr [37b3h]
-19C8  89 16 CB 37 mov word ptr [37cbh],dx
-19CC  BB C1 37    mov bx,37c1h
+16C0  8B 06 C1 24 mov ax,word ptr [24c1h]
+16C4  A3 B5 24    mov word ptr [24b5h],ax
+16C7  8B 1E C3 24 mov bx,word ptr [24c3h]
+16CB  89 1E B7 24 mov word ptr [24b7h],bx
+16CF  8B 16 C5 24 mov dx,word ptr [24c5h]
+16D3  89 16 B9 24 mov word ptr [24b9h],dx
+16D7  F6 06 DB 24 01 test byte ptr [24dbh],1h
+16DC  75 03       jne 16e1h
+16DE  E9 4F 00    jmp 1730h
+16E1  8B 06 2B 24 mov ax,word ptr [242bh]
+16E5  A3 C1 24    mov word ptr [24c1h],ax
+16E8  8B 1E 2D 24 mov bx,word ptr [242dh]
+16EC  89 1E C3 24 mov word ptr [24c3h],bx
+16F0  8B 16 2F 24 mov dx,word ptr [242fh]
+16F4  89 16 C5 24 mov word ptr [24c5h],dx
+16F8  8B 06 B5 24 mov ax,word ptr [24b5h]
+16FC  A3 C7 24    mov word ptr [24c7h],ax
+16FF  8B 1E B7 24 mov bx,word ptr [24b7h]
+1703  89 1E C9 24 mov word ptr [24c9h],bx
+1707  8B 16 B9 24 mov dx,word ptr [24b9h]
+170B  89 16 CB 24 mov word ptr [24cbh],dx
+170F  BB C1 24    mov bx,24c1h
+1712  53          push bx
+1713  E8 3E ED    call 454h
+1716  83 C4 02    add sp,2h
+1719  8B 06 C1 24 mov ax,word ptr [24c1h]
+171D  A3 B5 24    mov word ptr [24b5h],ax
+1720  8B 1E C3 24 mov bx,word ptr [24c3h]
+1724  89 1E B7 24 mov word ptr [24b7h],bx
+1728  8B 16 C5 24 mov dx,word ptr [24c5h]
+172C  89 16 B9 24 mov word ptr [24b9h],dx
+1730  F6 06 DA 24 01 test byte ptr [24dah],1h
+1735  75 03       jne 173ah
+1737  E9 1E 00    jmp 1758h
+173A  8B 06 B5 24 mov ax,word ptr [24b5h]
+173E  A3 B5 24    mov word ptr [24b5h],ax
+1741  8B 1E B7 24 mov bx,word ptr [24b7h]
+1745  89 1E B7 24 mov word ptr [24b7h],bx
+1749  8B 16 B9 24 mov dx,word ptr [24b9h]
+174D  89 16 B9 24 mov word ptr [24b9h],dx
+1751  BF B5 24    mov di,24b5h
+1754  80 75 05 80 xor byte ptr [di+5h],80h
+1758  5F          pop di
+1759  8B 06 B5 24 mov ax,word ptr [24b5h]
+175D  8B 1E B7 24 mov bx,word ptr [24b7h]
+1761  8B 16 B9 24 mov dx,word ptr [24b9h]
+1765  89 05       mov word ptr [di],ax
+1767  89 5D 02    mov word ptr [di+2h],bx
+176A  89 55 04    mov word ptr [di+4h],dx
+176D  EB 00       jmp 176fh
+176F  5F          pop di
+1770  5E          pop si
+1771  5A          pop dx
+1772  5B          pop bx
+1773  89 EC       mov sp,bp
+1775  5D          pop bp
+1776  C3          ret
+1777  55          push bp
+1778  8B EC       mov bp,sp
+177A  53          push bx
+177B  52          push dx
+177C  56          push si
+177D  57          push di
+177E  8B 7E 04    mov di,word ptr [bp+4h]
+1781  88 EA       mov dl,ch
+1783  B5 00       mov ch,0h
+1785  B6 00       mov dh,0h
+1787  51          push cx
+1788  BB 2F 22    mov bx,222fh
+178B  E8 41 02    call 19cfh
+178E  59          pop cx
+178F  89 D8       mov ax,bx
+1791  BB 2F 22    mov bx,222fh
+1794  2B C3       sub ax,bx
+1796  A3 6F 22    mov word ptr [226fh],ax
+1799  89 0E 71 22 mov word ptr [2271h],cx
+179D  8B 06 71 22 mov ax,word ptr [2271h]
+17A1  8B 16 6F 22 mov dx,word ptr [226fh]
+17A5  2B C2       sub ax,dx
+17A7  83 F8 00    cmp ax,0h
+17AA  7D 02       jnl 17aeh
+17AC  31 C0       xor ax,ax
+17AE  A3 73 22    mov word ptr [2273h],ax
+17B1  8B 16 6F 22 mov dx,word ptr [226fh]
+17B5  03 C2       add ax,dx
+17B7  3D FF 00    cmp ax,0ffh
+17BA  77 03       jnbe 17bfh
+17BC  E9 03 00    jmp 17c2h
+17BF  B8 FF 00    mov ax,0ffh
+17C2  A3 75 22    mov word ptr [2275h],ax
+17C5  8B 56 06    mov dx,word ptr [bp+6h]
+17C8  89 D7       mov di,dx
+17CA  88 05       mov byte ptr [di],al
+17CC  47          inc di
+17CD  8B 0E 73 22 mov cx,word ptr [2273h]
+17D1  E3 07       jcxz 17dah
+17D3  B0 20       mov al,20h
+17D5  88 05       mov byte ptr [di],al
+17D7  47          inc di
+17D8  E2 F9       loop 17d3h
+17DA  BE 2F 22    mov si,222fh
+17DD  8B 0E 6F 22 mov cx,word ptr [226fh]
+17E1  E3 08       jcxz 17ebh
+17E3  8A 04       mov al,byte ptr [si]
+17E5  88 05       mov byte ptr [di],al
+17E7  46          inc si
+17E8  47          inc di
+17E9  E2 F8       loop 17e3h
+17EB  8B 06 75 22 mov ax,word ptr [2275h]
+17EF  5F          pop di
+17F0  5E          pop si
+17F1  5A          pop dx
+17F2  5B          pop bx
+17F3  89 EC       mov sp,bp
+17F5  5D          pop bp
+17F6  C3          ret
+17F7  55          push bp
+17F8  8B EC       mov bp,sp
+17FA  53          push bx
+17FB  52          push dx
+17FC  56          push si
+17FD  57          push di
+17FE  8B 5E 04    mov bx,word ptr [bp+4h]
+1801  8B 7E 06    mov di,word ptr [bp+6h]
+1804  89 1E 77 22 mov word ptr [2277h],bx
+1808  E8 CF 02    call 1adah
+180B  73 03       jnb 1810h
+180D  E9 0B 00    jmp 181bh
+1810  89 D8       mov ax,bx
+1812  8B 16 77 22 mov dx,word ptr [2277h]
+1816  2B C2       sub ax,dx
+1818  E9 03 00    jmp 181eh
+181B  B8 FF FF    mov ax,0ffffh
+181E  5F          pop di
+181F  5E          pop si
+1820  5A          pop dx
+1821  5B          pop bx
+1822  89 EC       mov sp,bp
+1824  5D          pop bp
+1825  C3          ret
+1826  3C 00       cmp al,0h
+1828  74 03       je 182dh
+182A  E9 01 00    jmp 182eh
+182D  C3          ret
+182E  80 CE 80    or dh,80h
+1831  51          push cx
+1832  52          push dx
+1833  53          push bx
+1834  50          push ax
+1835  D1 EA       shr dx,1h
+1837  D1 DB       rcr bx,1h
+1839  D0 DC       rcr ah,1h
+183B  D1 EA       shr dx,1h
+183D  D1 DB       rcr bx,1h
+183F  D0 DC       rcr ah,1h
+1841  59          pop cx
+1842  00 EC       add ah,ch
+1844  59          pop cx
+1845  13 D9       adc bx,cx
+1847  59          pop cx
+1848  13 D1       adc dx,cx
+184A  59          pop cx
+184B  72 03       jb 1850h
+184D  E9 0F 00    jmp 185fh
+1850  D1 DA       rcr dx,1h
+1852  D1 DB       rcr bx,1h
+1854  D0 DC       rcr ah,1h
+1856  FE C0       inc al
+1858  74 03       je 185dh
+185A  E9 02 00    jmp 185fh
+185D  F9          stc
+185E  C3          ret
+185F  80 E6 7F    and dh,7fh
+1862  04 03       add al,3h
+1864  C3          ret
+1865  52          push dx
+1866  53          push bx
+1867  50          push ax
+1868  88 0E F1 21 mov byte ptr [21f1h],cl
+186C  80 F9 00    cmp cl,0h
+186F  78 03       js 1874h
+1871  E9 02 00    jmp 1876h
+1874  F6 D9       neg cl
+1876  88 CB       mov bl,cl
+1878  80 E3 FC    and bl,0fch
+187B  88 DF       mov bh,bl
+187D  D0 EB       shr bl,1h
+187F  00 FB       add bl,bh
+1881  30 FF       xor bh,bh
+1883  8D BF F3 21 lea di,[bx+21f3h]
+1887  8B 05       mov ax,word ptr [di]
+1889  8B 5D 02    mov bx,word ptr [di+2h]
+188C  8B 55 04    mov dx,word ptr [di+4h]
+188F  80 E1 03    and cl,3h
+1892  75 03       jne 1897h
+1894  E9 0A 00    jmp 18a1h
+1897  E8 8C FF    call 1826h
+189A  FE C9       dec cl
+189C  74 03       je 18a1h
+189E  E9 F6 FF    jmp 1897h
+18A1  89 C1       mov cx,ax
+18A3  89 DE       mov si,bx
+18A5  89 D7       mov di,dx
+18A7  58          pop ax
+18A8  5B          pop bx
+18A9  5A          pop dx
+18AA  F6 06 F1 21 80 test byte ptr [21f1h],80h
+18AF  74 03       je 18b4h
+18B1  E9 03 00    jmp 18b7h
+18B4  E9 FF EC    jmp 5b6h
+18B7  E9 E5 ED    jmp 69fh
+18BA  80 F9 DA    cmp cl,0dah
+18BD  7D 03       jnl 18c2h
+18BF  E9 12 00    jmp 18d4h
+18C2  80 F9 26    cmp cl,26h
+18C5  7E 03       jle 18cah
+18C7  E9 0A 00    jmp 18d4h
+18CA  51          push cx
+18CB  56          push si
+18CC  57          push di
+18CD  E8 95 FF    call 1865h
+18D0  5F          pop di
+18D1  5E          pop si
+18D2  59          pop cx
+18D3  C3          ret
+18D4  F9          stc
+18D5  C3          ret
+18D6  8B 05       mov ax,word ptr [di]
+18D8  8B 5D 02    mov bx,word ptr [di+2h]
+18DB  8B 55 04    mov dx,word ptr [di+4h]
+18DE  3C 00       cmp al,0h
+18E0  74 03       je 18e5h
+18E2  E9 16 00    jmp 18fbh
+18E5  BE E5 21    mov si,21e5h
+18E8  C7 04 30 30 mov word ptr [si],3030h
+18EC  46          inc si
+18ED  46          inc si
+18EE  81 FE F1 21 cmp si,21f1h
+18F2  74 03       je 18f7h
+18F4  E9 F1 FF    jmp 18e8h
+18F7  B9 00 00    mov cx,0h
+18FA  C3          ret
+18FB  88 F5       mov ch,dh
+18FD  80 E6 7F    and dh,7fh
+1900  50          push ax
+1901  52          push dx
+1902  2C 80       sub al,80h
+1904  98          cbw
+1905  BA 4D 00    mov dx,4dh
+1908  F7 EA       imul dx
+190A  05 05 00    add ax,5h
+190D  88 E1       mov cl,ah
+190F  5A          pop dx
+1910  58          pop ax
+1911  80 F9 D9    cmp cl,0d9h
+1914  74 03       je 1919h
+1916  E9 02 00    jmp 191bh
+1919  FE C1       inc cl
+191B  51          push cx
+191C  F6 D9       neg cl
+191E  E8 44 FF    call 1865h
+1921  59          pop cx
+1922  3C 81       cmp al,81h
+1924  72 03       jb 1929h
+1926  E9 05 00    jmp 192eh
+1929  E8 FA FE    call 1826h
+192C  FE C9       dec cl
+192E  51          push cx
+192F  80 CE 80    or dh,80h
+1932  B1 84       mov cl,84h
+1934  28 C1       sub cl,al
+1936  B0 00       mov al,0h
+1938  80 F9 00    cmp cl,0h
+193B  75 03       jne 1940h
+193D  E9 0D 00    jmp 194dh
+1940  D1 EA       shr dx,1h
+1942  D1 DB       rcr bx,1h
+1944  D0 DC       rcr ah,1h
+1946  FE C9       dec cl
+1948  74 03       je 194dh
+194A  E9 F3 FF    jmp 1940h
+194D  BE E5 21    mov si,21e5h
+1950  88 F5       mov ch,dh
+1952  B1 04       mov cl,4h
+1954  D2 ED       shr ch,cl
+1956  80 C5 30    add ch,30h
+1959  88 2C       mov byte ptr [si],ch
+195B  80 E6 0F    and dh,0fh
+195E  52          push dx
+195F  53          push bx
+1960  50          push ax
+1961  D1 E0       shl ax,1h
+1963  D1 D3       rcl bx,1h
+1965  D1 D2       rcl dx,1h
+1967  D1 E0       shl ax,1h
+1969  D1 D3       rcl bx,1h
+196B  D1 D2       rcl dx,1h
+196D  59          pop cx
+196E  03 C1       add ax,cx
+1970  59          pop cx
+1971  13 D9       adc bx,cx
+1973  59          pop cx
+1974  13 D1       adc dx,cx
+1976  D1 E0       shl ax,1h
+1978  D1 D3       rcl bx,1h
+197A  D1 D2       rcl dx,1h
+197C  46          inc si
+197D  81 FE F1 21 cmp si,21f1h
+1981  74 03       je 1986h
+1983  E9 CA FF    jmp 1950h
+1986  59          pop cx
+1987  C3          ret
+1988  30 E4       xor ah,ah
+198A  BB E5 21    mov bx,21e5h
+198D  03 D8       add bx,ax
+198F  80 3F 35    cmp byte ptr [bx],35h
+1992  C6 07 00    mov byte ptr [bx],0h
+1995  73 03       jnb 199ah
+1997  E9 21 00    jmp 19bbh
+199A  FE C8       dec al
+199C  79 03       jns 19a1h
+199E  E9 11 00    jmp 19b2h
+19A1  4B          dec bx
+19A2  FE 07       inc byte ptr [bx]
+19A4  80 3F 3A    cmp byte ptr [bx],3ah
+19A7  73 03       jnb 19ach
+19A9  E9 0F 00    jmp 19bbh
+19AC  C6 07 00    mov byte ptr [bx],0h
+19AF  E9 E8 FF    jmp 199ah
+19B2  C6 07 31    mov byte ptr [bx],31h
+19B5  C6 47 01 00 mov byte ptr [bx+1h],0h
+19B9  FE C1       inc cl
+19BB  C3          ret
+19BC  8A 04       mov al,byte ptr [si]
+19BE  3C 00       cmp al,0h
+19C0  75 03       jne 19c5h
+19C2  E9 04 00    jmp 19c9h
+19C5  46          inc si
+19C6  E9 02 00    jmp 19cbh
+19C9  B0 30       mov al,30h
+19CB  88 07       mov byte ptr [bx],al
+19CD  43          inc bx
+19CE  C3          ret
 19CF  53          push bx
 19CF  53          push bx
-19D0  E8 AD EB    call 580h
-19D3  83 C4 02    add sp,2h
-19D6  8B 06 C1 37 mov ax,word ptr [37c1h]
-19DA  A3 AF 37    mov word ptr [37afh],ax
-19DD  8B 1E C3 37 mov bx,word ptr [37c3h]
-19E1  89 1E B1 37 mov word ptr [37b1h],bx
-19E5  8B 16 C5 37 mov dx,word ptr [37c5h]
-19E9  89 16 B3 37 mov word ptr [37b3h],dx
-19ED  8B 06 AF 37 mov ax,word ptr [37afh]
-19F1  A3 C1 37    mov word ptr [37c1h],ax
-19F4  8B 1E B1 37 mov bx,word ptr [37b1h]
-19F8  89 1E C3 37 mov word ptr [37c3h],bx
-19FC  8B 16 B3 37 mov dx,word ptr [37b3h]
-1A00  89 16 C5 37 mov word ptr [37c5h],dx
-1A04  8B 06 AF 37 mov ax,word ptr [37afh]
-1A08  A3 C7 37    mov word ptr [37c7h],ax
-1A0B  8B 1E B1 37 mov bx,word ptr [37b1h]
-1A0F  89 1E C9 37 mov word ptr [37c9h],bx
-1A13  8B 16 B3 37 mov dx,word ptr [37b3h]
-1A17  89 16 CB 37 mov word ptr [37cbh],dx
-1A1B  BB C1 37    mov bx,37c1h
-1A1E  53          push bx
-1A1F  E8 F6 E9    call 418h
-1A22  83 C4 02    add sp,2h
-1A25  8B 06 C1 37 mov ax,word ptr [37c1h]
-1A29  A3 AF 37    mov word ptr [37afh],ax
-1A2C  8B 1E C3 37 mov bx,word ptr [37c3h]
-1A30  89 1E B1 37 mov word ptr [37b1h],bx
-1A34  8B 16 C5 37 mov dx,word ptr [37c5h]
-1A38  89 16 B3 37 mov word ptr [37b3h],dx
-1A3C  8B 06 CD 37 mov ax,word ptr [37cdh]
-1A40  A3 C1 37    mov word ptr [37c1h],ax
-1A43  8B 1E CF 37 mov bx,word ptr [37cfh]
-1A47  89 1E C3 37 mov word ptr [37c3h],bx
-1A4B  8B 16 D1 37 mov dx,word ptr [37d1h]
-1A4F  89 16 C5 37 mov word ptr [37c5h],dx
-1A53  8B 06 A1 36 mov ax,word ptr [36a1h]
-1A57  A3 C7 37    mov word ptr [37c7h],ax
-1A5A  8B 1E A3 36 mov bx,word ptr [36a3h]
-1A5E  89 1E C9 37 mov word ptr [37c9h],bx
-1A62  8B 16 A5 36 mov dx,word ptr [36a5h]
-1A66  89 16 CB 37 mov word ptr [37cbh],dx
-1A6A  BB C1 37    mov bx,37c1h
-1A6D  53          push bx
-1A6E  E8 0F EB    call 580h
-1A71  83 C4 02    add sp,2h
-1A74  8B 06 C1 37 mov ax,word ptr [37c1h]
-1A78  A3 CD 37    mov word ptr [37cdh],ax
-1A7B  8B 1E C3 37 mov bx,word ptr [37c3h]
-1A7F  89 1E CF 37 mov word ptr [37cfh],bx
-1A83  8B 16 C5 37 mov dx,word ptr [37c5h]
-1A87  89 16 D1 37 mov word ptr [37d1h],dx
-1A8B  8B 06 AF 37 mov ax,word ptr [37afh]
-1A8F  A3 C1 37    mov word ptr [37c1h],ax
-1A92  8B 1E B1 37 mov bx,word ptr [37b1h]
-1A96  89 1E C3 37 mov word ptr [37c3h],bx
-1A9A  8B 16 B3 37 mov dx,word ptr [37b3h]
-1A9E  89 16 C5 37 mov word ptr [37c5h],dx
-1AA2  8B 06 CD 37 mov ax,word ptr [37cdh]
-1AA6  A3 C7 37    mov word ptr [37c7h],ax
-1AA9  8B 1E CF 37 mov bx,word ptr [37cfh]
-1AAD  89 1E C9 37 mov word ptr [37c9h],bx
-1AB1  8B 16 D1 37 mov dx,word ptr [37d1h]
-1AB5  89 16 CB 37 mov word ptr [37cbh],dx
-1AB9  BB C1 37    mov bx,37c1h
-1ABC  53          push bx
-1ABD  E8 58 E9    call 418h
-1AC0  83 C4 02    add sp,2h
-1AC3  8B 06 C1 37 mov ax,word ptr [37c1h]
-1AC7  A3 AF 37    mov word ptr [37afh],ax
-1ACA  8B 1E C3 37 mov bx,word ptr [37c3h]
-1ACE  89 1E B1 37 mov word ptr [37b1h],bx
-1AD2  8B 16 C5 37 mov dx,word ptr [37c5h]
-1AD6  89 16 B3 37 mov word ptr [37b3h],dx
-1ADA  5F          pop di
-1ADB  8B 06 AF 37 mov ax,word ptr [37afh]
-1ADF  8B 1E B1 37 mov bx,word ptr [37b1h]
-1AE3  8B 16 B3 37 mov dx,word ptr [37b3h]
-1AE7  89 05       mov word ptr [di],ax
-1AE9  89 5D 02    mov word ptr [di+2h],bx
-1AEC  89 55 04    mov word ptr [di+4h],dx
-1AEF  EB 07       jmp 1af8h
-1AF1  5F          pop di
-1AF2  B0 04       mov al,4h
-1AF4  B4 4C       mov ah,4ch
-1AF6  CD 21       int 21h
-1AF8  5F          pop di
-1AF9  5E          pop si
-1AFA  5A          pop dx
-1AFB  5B          pop bx
-1AFC  89 EC       mov sp,bp
-1AFE  5D          pop bp
-1AFF  C3          ret
-1B00  55          push bp
-1B01  8B EC       mov bp,sp
-1B03  53          push bx
-1B04  52          push dx
-1B05  56          push si
-1B06  57          push di
-1B07  FF 76 04    push word ptr [bp+4h]
-1B0A  8B 76 04    mov si,word ptr [bp+4h]
-1B0D  8B 04       mov ax,word ptr [si]
-1B0F  8B 4C 02    mov cx,word ptr [si+2h]
-1B12  89 CB       mov bx,cx
-1B14  8B 54 04    mov dx,word ptr [si+4h]
-1B17  A3 AF 37    mov word ptr [37afh],ax
-1B1A  89 1E B1 37 mov word ptr [37b1h],bx
-1B1E  89 16 B3 37 mov word ptr [37b3h],dx
-1B22  8B 06 AF 37 mov ax,word ptr [37afh]
-1B26  A3 C1 37    mov word ptr [37c1h],ax
-1B29  8B 1E B1 37 mov bx,word ptr [37b1h]
-1B2D  89 1E C3 37 mov word ptr [37c3h],bx
-1B31  8B 16 B3 37 mov dx,word ptr [37b3h]
-1B35  89 16 C5 37 mov word ptr [37c5h],dx
-1B39  8B 06 31 37 mov ax,word ptr [3731h]
-1B3D  A3 C7 37    mov word ptr [37c7h],ax
-1B40  8B 1E 33 37 mov bx,word ptr [3733h]
-1B44  89 1E C9 37 mov word ptr [37c9h],bx
-1B48  8B 16 35 37 mov dx,word ptr [3735h]
-1B4C  89 16 CB 37 mov word ptr [37cbh],dx
-1B50  BB C1 37    mov bx,37c1h
-1B53  53          push bx
-1B54  E8 12 EB    call 669h
-1B57  83 C4 02    add sp,2h
-1B5A  8B 06 C1 37 mov ax,word ptr [37c1h]
-1B5E  A3 B5 37    mov word ptr [37b5h],ax
-1B61  8B 1E C3 37 mov bx,word ptr [37c3h]
-1B65  89 1E B7 37 mov word ptr [37b7h],bx
-1B69  8B 16 C5 37 mov dx,word ptr [37c5h]
-1B6D  89 16 B9 37 mov word ptr [37b9h],dx
-1B71  8B 06 B5 37 mov ax,word ptr [37b5h]
-1B75  A3 C1 37    mov word ptr [37c1h],ax
-1B78  8B 1E B7 37 mov bx,word ptr [37b7h]
-1B7C  89 1E C3 37 mov word ptr [37c3h],bx
-1B80  8B 16 B9 37 mov dx,word ptr [37b9h]
-1B84  89 16 C5 37 mov word ptr [37c5h],dx
-1B88  BB C1 37    mov bx,37c1h
-1B8B  53          push bx
-1B8C  E8 44 EC    call 7d3h
-1B8F  83 C4 02    add sp,2h
-1B92  8B 06 C1 37 mov ax,word ptr [37c1h]
-1B96  A3 B5 37    mov word ptr [37b5h],ax
-1B99  8B 1E C3 37 mov bx,word ptr [37c3h]
-1B9D  89 1E B7 37 mov word ptr [37b7h],bx
-1BA1  8B 16 C5 37 mov dx,word ptr [37c5h]
-1BA5  89 16 B9 37 mov word ptr [37b9h],dx
-1BA9  8B 06 B5 37 mov ax,word ptr [37b5h]
-1BAD  A3 C1 37    mov word ptr [37c1h],ax
-1BB0  8B 1E B7 37 mov bx,word ptr [37b7h]
-1BB4  89 1E C3 37 mov word ptr [37c3h],bx
-1BB8  8B 16 B9 37 mov dx,word ptr [37b9h]
-1BBC  89 16 C5 37 mov word ptr [37c5h],dx
-1BC0  8B 06 31 37 mov ax,word ptr [3731h]
-1BC4  A3 C7 37    mov word ptr [37c7h],ax
-1BC7  8B 1E 33 37 mov bx,word ptr [3733h]
-1BCB  89 1E C9 37 mov word ptr [37c9h],bx
-1BCF  8B 16 35 37 mov dx,word ptr [3735h]
-1BD3  89 16 CB 37 mov word ptr [37cbh],dx
-1BD7  BB C1 37    mov bx,37c1h
-1BDA  53          push bx
-1BDB  E8 A2 E9    call 580h
-1BDE  83 C4 02    add sp,2h
-1BE1  8B 06 C1 37 mov ax,word ptr [37c1h]
-1BE5  A3 B5 37    mov word ptr [37b5h],ax
-1BE8  8B 1E C3 37 mov bx,word ptr [37c3h]
-1BEC  89 1E B7 37 mov word ptr [37b7h],bx
-1BF0  8B 16 C5 37 mov dx,word ptr [37c5h]
-1BF4  89 16 B9 37 mov word ptr [37b9h],dx
-1BF8  8B 06 AF 37 mov ax,word ptr [37afh]
-1BFC  A3 C1 37    mov word ptr [37c1h],ax
-1BFF  8B 1E B1 37 mov bx,word ptr [37b1h]
-1C03  89 1E C3 37 mov word ptr [37c3h],bx
-1C07  8B 16 B3 37 mov dx,word ptr [37b3h]
-1C0B  89 16 C5 37 mov word ptr [37c5h],dx
-1C0F  8B 06 B5 37 mov ax,word ptr [37b5h]
-1C13  A3 C7 37    mov word ptr [37c7h],ax
-1C16  8B 1E B7 37 mov bx,word ptr [37b7h]
-1C1A  89 1E C9 37 mov word ptr [37c9h],bx
-1C1E  8B 16 B9 37 mov dx,word ptr [37b9h]
-1C22  89 16 CB 37 mov word ptr [37cbh],dx
-1C26  BB C1 37    mov bx,37c1h
-1C29  53          push bx
-1C2A  E8 27 E8    call 454h
-1C2D  83 C4 02    add sp,2h
-1C30  8B 06 C1 37 mov ax,word ptr [37c1h]
-1C34  A3 AF 37    mov word ptr [37afh],ax
-1C37  8B 1E C3 37 mov bx,word ptr [37c3h]
-1C3B  89 1E B1 37 mov word ptr [37b1h],bx
-1C3F  8B 16 C5 37 mov dx,word ptr [37c5h]
-1C43  89 16 B3 37 mov word ptr [37b3h],dx
-1C47  8B 06 AF 37 mov ax,word ptr [37afh]
-1C4B  A3 C1 37    mov word ptr [37c1h],ax
-1C4E  8B 1E B1 37 mov bx,word ptr [37b1h]
-1C52  89 1E C3 37 mov word ptr [37c3h],bx
-1C56  8B 16 B3 37 mov dx,word ptr [37b3h]
-1C5A  89 16 C5 37 mov word ptr [37c5h],dx
-1C5E  8B 06 25 37 mov ax,word ptr [3725h]
-1C62  A3 C7 37    mov word ptr [37c7h],ax
-1C65  8B 1E 27 37 mov bx,word ptr [3727h]
-1C69  89 1E C9 37 mov word ptr [37c9h],bx
-1C6D  8B 16 29 37 mov dx,word ptr [3729h]
-1C71  89 16 CB 37 mov word ptr [37cbh],dx
-1C75  BB C1 37    mov bx,37c1h
-1C78  53          push bx
-1C79  E8 F1 EA    call 76dh
-1C7C  83 C4 02    add sp,2h
-1C7F  83 F8 00    cmp ax,0h
-1C82  7F 03       jnle 1c87h
-1C84  E9 4F 00    jmp 1cd6h
-1C87  8B 06 AF 37 mov ax,word ptr [37afh]
-1C8B  A3 C1 37    mov word ptr [37c1h],ax
-1C8E  8B 1E B1 37 mov bx,word ptr [37b1h]
-1C92  89 1E C3 37 mov word ptr [37c3h],bx
-1C96  8B 16 B3 37 mov dx,word ptr [37b3h]
-1C9A  89 16 C5 37 mov word ptr [37c5h],dx
-1C9E  8B 06 31 37 mov ax,word ptr [3731h]
-1CA2  A3 C7 37    mov word ptr [37c7h],ax
-1CA5  8B 1E 33 37 mov bx,word ptr [3733h]
-1CA9  89 1E C9 37 mov word ptr [37c9h],bx
-1CAD  8B 16 35 37 mov dx,word ptr [3735h]
-1CB1  89 16 CB 37 mov word ptr [37cbh],dx
-1CB5  BB C1 37    mov bx,37c1h
-1CB8  53          push bx
-1CB9  E8 98 E7    call 454h
-1CBC  83 C4 02    add sp,2h
-1CBF  8B 06 C1 37 mov ax,word ptr [37c1h]
-1CC3  A3 AF 37    mov word ptr [37afh],ax
-1CC6  8B 1E C3 37 mov bx,word ptr [37c3h]
-1CCA  89 1E B1 37 mov word ptr [37b1h],bx
-1CCE  8B 16 C5 37 mov dx,word ptr [37c5h]
-1CD2  89 16 B3 37 mov word ptr [37b3h],dx
-1CD6  8B 06 AF 37 mov ax,word ptr [37afh]
-1CDA  A3 C1 37    mov word ptr [37c1h],ax
-1CDD  8B 1E B1 37 mov bx,word ptr [37b1h]
-1CE1  89 1E C3 37 mov word ptr [37c3h],bx
-1CE5  8B 16 B3 37 mov dx,word ptr [37b3h]
-1CE9  89 16 C5 37 mov word ptr [37c5h],dx
-1CED  8B 06 D4 37 mov ax,word ptr [37d4h]
-1CF1  A3 C7 37    mov word ptr [37c7h],ax
-1CF4  8B 1E D6 37 mov bx,word ptr [37d6h]
-1CF8  89 1E C9 37 mov word ptr [37c9h],bx
-1CFC  8B 16 D8 37 mov dx,word ptr [37d8h]
-1D00  89 16 CB 37 mov word ptr [37cbh],dx
-1D04  BB C1 37    mov bx,37c1h
-1D07  53          push bx
-1D08  E8 62 EA    call 76dh
-1D0B  83 C4 02    add sp,2h
-1D0E  83 F8 00    cmp ax,0h
-1D11  7C 03       jl 1d16h
-1D13  E9 4F 00    jmp 1d65h
-1D16  8B 06 AF 37 mov ax,word ptr [37afh]
-1D1A  A3 C1 37    mov word ptr [37c1h],ax
-1D1D  8B 1E B1 37 mov bx,word ptr [37b1h]
-1D21  89 1E C3 37 mov word ptr [37c3h],bx
-1D25  8B 16 B3 37 mov dx,word ptr [37b3h]
-1D29  89 16 C5 37 mov word ptr [37c5h],dx
-1D2D  8B 06 31 37 mov ax,word ptr [3731h]
-1D31  A3 C7 37    mov word ptr [37c7h],ax
-1D34  8B 1E 33 37 mov bx,word ptr [3733h]
-1D38  89 1E C9 37 mov word ptr [37c9h],bx
-1D3C  8B 16 35 37 mov dx,word ptr [3735h]
-1D40  89 16 CB 37 mov word ptr [37cbh],dx
-1D44  BB C1 37    mov bx,37c1h
-1D47  53          push bx
-1D48  E8 CD E6    call 418h
-1D4B  83 C4 02    add sp,2h
-1D4E  8B 06 C1 37 mov ax,word ptr [37c1h]
-1D52  A3 AF 37    mov word ptr [37afh],ax
-1D55  8B 1E C3 37 mov bx,word ptr [37c3h]
-1D59  89 1E B1 37 mov word ptr [37b1h],bx
-1D5D  8B 16 C5 37 mov dx,word ptr [37c5h]
-1D61  89 16 B3 37 mov word ptr [37b3h],dx
-1D65  8B 06 AF 37 mov ax,word ptr [37afh]
-1D69  A3 C1 37    mov word ptr [37c1h],ax
-1D6C  8B 1E B1 37 mov bx,word ptr [37b1h]
-1D70  89 1E C3 37 mov word ptr [37c3h],bx
-1D74  8B 16 B3 37 mov dx,word ptr [37b3h]
-1D78  89 16 C5 37 mov word ptr [37c5h],dx
-1D7C  8B 06 AF 37 mov ax,word ptr [37afh]
-1D80  A3 C7 37    mov word ptr [37c7h],ax
-1D83  8B 1E B1 37 mov bx,word ptr [37b1h]
-1D87  89 1E C9 37 mov word ptr [37c9h],bx
-1D8B  8B 16 B3 37 mov dx,word ptr [37b3h]
-1D8F  89 16 CB 37 mov word ptr [37cbh],dx
-1D93  BB C1 37    mov bx,37c1h
+19D0  81 FA 19 00 cmp dx,19h
+19D4  73 03       jnb 19d9h
+19D6  E9 3F 00    jmp 1a18h
+19D9  89 C8       mov ax,cx
+19DB  80 FD 00    cmp ch,0h
+19DE  75 03       jne 19e3h
+19E0  E9 10 00    jmp 19f3h
+19E3  F6 C5 80    test ch,80h
+19E6  75 03       jne 19ebh
+19E8  E9 05 00    jmp 19f0h
+19EB  31 C0       xor ax,ax
+19ED  E9 03 00    jmp 19f3h
+19F0  B8 FF 00    mov ax,0ffh
+19F3  B2 07       mov dl,7h
+19F5  F6 45 05 80 test byte ptr [di+5h],80h
+19F9  75 03       jne 19feh
+19FB  E9 02 00    jmp 1a00h
+19FE  FE C2       inc dl
+1A00  2A C2       sub al,dl
+1A02  72 03       jb 1a07h
+1A04  E9 02 00    jmp 1a09h
+1A07  B0 00       mov al,0h
+1A09  3C 09       cmp al,9h
+1A0B  73 03       jnb 1a10h
+1A0D  E9 02 00    jmp 1a12h
+1A10  B0 09       mov al,9h
+1A12  FE C0       inc al
+1A14  88 C2       mov dl,al
+1A16  88 C6       mov dh,al
+1A18  52          push dx
+1A19  E8 BA FE    call 18d6h
+1A1C  5A          pop dx
+1A1D  8A C2       mov al,dl
+1A1F  FE C0       inc al
+1A21  80 FE 00    cmp dh,0h
+1A24  74 03       je 1a29h
+1A26  E9 18 00    jmp 1a41h
+1A29  00 C8       add al,cl
+1A2B  78 03       js 1a30h
+1A2D  E9 08 00    jmp 1a38h
+1A30  C6 06 E5 21 00 mov byte ptr [21e5h],0h
+1A35  E9 0C 00    jmp 1a44h
+1A38  3C 0C       cmp al,0ch
+1A3A  73 03       jnb 1a3fh
+1A3C  E9 02 00    jmp 1a41h
+1A3F  B0 0B       mov al,0bh
+1A41  E8 44 FF    call 1988h
+1A44  5B          pop bx
+1A45  BE E5 21    mov si,21e5h
+1A48  F6 C5 80    test ch,80h
+1A4B  75 03       jne 1a50h
+1A4D  E9 05 00    jmp 1a55h
+1A50  B0 2D       mov al,2dh
+1A52  E8 76 FF    call 19cbh
+1A55  88 CD       mov ch,cl
+1A57  80 FE 00    cmp dh,0h
+1A5A  75 03       jne 1a5fh
+1A5C  E9 02 00    jmp 1a61h
+1A5F  B5 00       mov ch,0h
+1A61  80 FD 00    cmp ch,0h
+1A64  78 03       js 1a69h
+1A66  E9 06 00    jmp 1a6fh
+1A69  E8 5D FF    call 19c9h
+1A6C  E9 0A 00    jmp 1a79h
+1A6F  E8 4A FF    call 19bch
+1A72  FE CD       dec ch
+1A74  78 03       js 1a79h
+1A76  E9 F6 FF    jmp 1a6fh
+1A79  80 FA 00    cmp dl,0h
+1A7C  75 03       jne 1a81h
+1A7E  E9 23 00    jmp 1aa4h
+1A81  B0 2E       mov al,2eh
+1A83  E8 45 FF    call 19cbh
+1A86  FE C5       inc ch
+1A88  75 03       jne 1a8dh
+1A8A  E9 0A 00    jmp 1a97h
+1A8D  E8 39 FF    call 19c9h
+1A90  FE CA       dec dl
+1A92  74 03       je 1a97h
+1A94  E9 EF FF    jmp 1a86h
+1A97  FE CA       dec dl
+1A99  79 03       jns 1a9eh
+1A9B  E9 06 00    jmp 1aa4h
+1A9E  E8 1B FF    call 19bch
+1AA1  E9 F3 FF    jmp 1a97h
+1AA4  80 FE 00    cmp dh,0h
+1AA7  74 03       je 1aach
+1AA9  E9 01 00    jmp 1aadh
+1AAC  C3          ret
+1AAD  B0 45       mov al,45h
+1AAF  E8 19 FF    call 19cbh
+1AB2  B0 2B       mov al,2bh
+1AB4  80 F9 00    cmp cl,0h
+1AB7  78 03       js 1abch
+1AB9  E9 04 00    jmp 1ac0h
+1ABC  F6 D9       neg cl
+1ABE  B0 2D       mov al,2dh
+1AC0  E8 08 FF    call 19cbh
+1AC3  B0 2F       mov al,2fh
+1AC5  FE C0       inc al
+1AC7  80 E9 0A    sub cl,0ah
+1ACA  72 03       jb 1acfh
+1ACC  E9 F6 FF    jmp 1ac5h
+1ACF  E8 F9 FE    call 19cbh
+1AD2  80 C1 3A    add cl,3ah
+1AD5  88 C8       mov al,cl
+1AD7  E9 F1 FE    jmp 19cbh
+1ADA  8A 0F       mov cl,byte ptr [bx]
+1ADC  80 F9 2D    cmp cl,2dh
+1ADF  74 03       je 1ae4h
+1AE1  E9 01 00    jmp 1ae5h
+1AE4  43          inc bx
+1AE5  51          push cx
+1AE6  E8 1F 00    call 1b08h
+1AE9  59          pop cx
+1AEA  73 03       jnb 1aefh
+1AEC  E9 17 00    jmp 1b06h
+1AEF  80 F9 2D    cmp cl,2dh
+1AF2  74 03       je 1af7h
+1AF4  E9 0D 00    jmp 1b04h
+1AF7  8A 05       mov al,byte ptr [di]
+1AF9  3C 00       cmp al,0h
+1AFB  75 03       jne 1b00h
+1AFD  E9 04 00    jmp 1b04h
+1B00  80 75 05 80 xor byte ptr [di+5h],80h
+1B04  F8          clc
+1B05  C3          ret
+1B06  F9          stc
+1B07  C3          ret
+1B08  89 DE       mov si,bx
+1B0A  31 C0       xor ax,ax
+1B0C  31 DB       xor bx,bx
+1B0E  31 D2       xor dx,dx
+1B10  31 C9       xor cx,cx
+1B12  C6 06 F2 21 00 mov byte ptr [21f2h],0h
+1B17  8A 0C       mov cl,byte ptr [si]
+1B19  80 F9 61    cmp cl,61h
+1B1C  73 03       jnb 1b21h
+1B1E  E9 08 00    jmp 1b29h
+1B21  80 F9 7A    cmp cl,7ah
+1B24  77 03       jnbe 1b29h
+1B26  80 E9 20    sub cl,20h
+1B29  E8 C8 00    call 1bf4h
+1B2C  73 03       jnb 1b31h
+1B2E  E9 3A 00    jmp 1b6bh
+1B31  E8 F2 FC    call 1826h
+1B34  73 03       jnb 1b39h
+1B36  E9 B5 00    jmp 1beeh
+1B39  57          push di
+1B3A  56          push si
+1B3B  51          push cx
+1B3C  52          push dx
+1B3D  53          push bx
+1B3E  50          push ax
+1B3F  88 C8       mov al,cl
+1B41  30 E4       xor ah,ah
+1B43  E8 9A E8    call 3e0h
+1B46  89 C1       mov cx,ax
+1B48  89 DE       mov si,bx
+1B4A  89 D7       mov di,dx
+1B4C  58          pop ax
+1B4D  5B          pop bx
+1B4E  5A          pop dx
+1B4F  C7 06 D4 21 00 00 mov word ptr [21d4h],0h
+1B55  E8 38 E9    call 490h
+1B58  59          pop cx
+1B59  5E          pop si
+1B5A  5F          pop di
+1B5B  F6 C5 40    test ch,40h
+1B5E  75 03       jne 1b63h
+1B60  E9 04 00    jmp 1b67h
+1B63  FE 0E F2 21 dec byte ptr [21f2h]
+1B67  46          inc si
+1B68  E9 AC FF    jmp 1b17h
+1B6B  80 F9 2E    cmp cl,2eh
+1B6E  74 03       je 1b73h
+1B70  E9 0E 00    jmp 1b81h
+1B73  F6 C5 40    test ch,40h
+1B76  74 03       je 1b7bh
+1B78  E9 73 00    jmp 1beeh
+1B7B  80 CD 40    or ch,40h
+1B7E  E9 E6 FF    jmp 1b67h
+1B81  80 F9 45    cmp cl,45h
+1B84  8A 0E F2 21 mov cl,byte ptr [21f2h]
+1B88  74 03       je 1b8dh
+1B8A  E9 4D 00    jmp 1bdah
+1B8D  E8 2A FD    call 18bah
+1B90  73 03       jnb 1b95h
+1B92  E9 59 00    jmp 1beeh
+1B95  46          inc si
+1B96  8A 0C       mov cl,byte ptr [si]
+1B98  80 F9 2B    cmp cl,2bh
+1B9B  75 03       jne 1ba0h
+1B9D  E9 0B 00    jmp 1babh
+1BA0  80 F9 2D    cmp cl,2dh
+1BA3  74 03       je 1ba8h
+1BA5  E9 04 00    jmp 1bach
+1BA8  80 CD 20    or ch,20h
+1BAB  46          inc si
+1BAC  E8 43 00    call 1bf2h
+1BAF  73 03       jnb 1bb4h
+1BB1  E9 3A 00    jmp 1beeh
+1BB4  50          push ax
+1BB5  88 C8       mov al,cl
+1BB7  46          inc si
+1BB8  E8 37 00    call 1bf2h
+1BBB  73 03       jnb 1bc0h
+1BBD  E9 0D 00    jmp 1bcdh
+1BC0  88 C4       mov ah,al
+1BC2  D0 E0       shl al,1h
+1BC4  D0 E0       shl al,1h
+1BC6  00 E0       add al,ah
+1BC8  D0 E0       shl al,1h
+1BCA  00 C8       add al,cl
+1BCC  46          inc si
+1BCD  88 C1       mov cl,al
+1BCF  58          pop ax
+1BD0  F6 C5 20    test ch,20h
+1BD3  75 03       jne 1bd8h
+1BD5  E9 02 00    jmp 1bdah
+1BD8  F6 D9       neg cl
+1BDA  E8 DD FC    call 18bah
+1BDD  73 03       jnb 1be2h
+1BDF  E9 0C 00    jmp 1beeh
+1BE2  89 05       mov word ptr [di],ax
+1BE4  89 5D 02    mov word ptr [di+2h],bx
+1BE7  89 55 04    mov word ptr [di+4h],dx
+1BEA  F8          clc
+1BEB  E9 01 00    jmp 1befh
+1BEE  F9          stc
+1BEF  89 F3       mov bx,si
+1BF1  C3          ret
+1BF2  8A 0C       mov cl,byte ptr [si]
+1BF4  80 F9 30    cmp cl,30h
+1BF7  73 03       jnb 1bfch
+1BF9  E9 0C 00    jmp 1c08h
+1BFC  80 F9 3A    cmp cl,3ah
+1BFF  F5          cmc
+1C00  73 03       jnb 1c05h
+1C02  E9 03 00    jmp 1c08h
+1C05  80 E9 30    sub cl,30h
+1C08  C3          ret
+1C09  55          push bp
+1C0A  8B EC       mov bp,sp
+1C0C  53          push bx
+1C0D  52          push dx
+1C0E  56          push si
+1C0F  57          push di
+1C10  8B 46 06    mov ax,word ptr [bp+6h]
+1C13  A3 71 22    mov word ptr [2271h],ax
+1C16  8B 56 04    mov dx,word ptr [bp+4h]
+1C19  8B 4E 06    mov cx,word ptr [bp+6h]
+1C1C  8B 7E 08    mov di,word ptr [bp+8h]
+1C1F  BB 2F 22    mov bx,222fh
+1C22  E8 AA FD    call 19cfh
+1C25  89 D8       mov ax,bx
+1C27  BB 2F 22    mov bx,222fh
+1C2A  2B C3       sub ax,bx
+1C2C  A3 6F 22    mov word ptr [226fh],ax
+1C2F  8B 06 71 22 mov ax,word ptr [2271h]
+1C33  8B 16 6F 22 mov dx,word ptr [226fh]
+1C37  2B C2       sub ax,dx
+1C39  83 F8 00    cmp ax,0h
+1C3C  7D 02       jnl 1c40h
+1C3E  31 C0       xor ax,ax
+1C40  A3 73 22    mov word ptr [2273h],ax
+1C43  8B 0E 73 22 mov cx,word ptr [2273h]
+1C47  E3 08       jcxz 1c51h
+1C49  B0 20       mov al,20h
+1C4B  B4 02       mov ah,2h
+1C4D  CD 21       int 21h
+1C4F  E2 F8       loop 1c49h
+1C51  BE 2F 22    mov si,222fh
+1C54  8B 0E 6F 22 mov cx,word ptr [226fh]
+1C58  E3 09       jcxz 1c63h
+1C5A  8A 04       mov al,byte ptr [si]
+1C5C  B4 02       mov ah,2h
+1C5E  CD 21       int 21h
+1C60  46          inc si
+1C61  E2 F7       loop 1c5ah
+1C63  5F          pop di
+1C64  5E          pop si
+1C65  5A          pop dx
+1C66  5B          pop bx
+1C67  89 EC       mov sp,bp
+1C69  5D          pop bp
+1C6A  C3          ret
+1C6B  55          push bp
+1C6C  8B EC       mov bp,sp
+1C6E  53          push bx
+1C6F  51          push cx
+1C70  52          push dx
+1C71  56          push si
+1C72  57          push di
+1C73  8B 46 04    mov ax,word ptr [bp+4h]
+1C76  88 C6       mov dh,al
+1C78  8B 76 0A    mov si,word ptr [bp+0ah]
+1C7B  8B 7E 08    mov di,word ptr [bp+8h]
+1C7E  8B 5E 06    mov bx,word ptr [bp+6h]
+1C81  80 FE 00    cmp dh,0h
+1C84  74 23       je 1ca9h
+1C86  8A 04       mov al,byte ptr [si]
+1C88  8A 15       mov dl,byte ptr [di]
+1C8A  80 FC 00    cmp ah,0h
+1C8D  74 0B       je 1c9ah
+1C8F  80 FC 01    cmp ah,1h
+1C92  74 0A       je 1c9eh
+1C94  F6 D2       not dl
+1C96  20 D0       and al,dl
+1C98  EB 06       jmp 1ca0h
+1C9A  20 D0       and al,dl
+1C9C  EB 02       jmp 1ca0h
+1C9E  08 D0       or al,dl
+1CA0  88 07       mov byte ptr [bx],al
+1CA2  46          inc si
+1CA3  47          inc di
+1CA4  43          inc bx
+1CA5  FE CE       dec dh
+1CA7  75 DD       jne 1c86h
+1CA9  5F          pop di
+1CAA  5E          pop si
+1CAB  5A          pop dx
+1CAC  59          pop cx
+1CAD  5B          pop bx
+1CAE  89 EC       mov sp,bp
+1CB0  5D          pop bp
+1CB1  C3          ret
+1CB2  55          push bp
+1CB3  8B EC       mov bp,sp
+1CB5  53          push bx
+1CB6  51          push cx
+1CB7  52          push dx
+1CB8  56          push si
+1CB9  57          push di
+1CBA  8B 4E 04    mov cx,word ptr [bp+4h]
+1CBD  8B 76 08    mov si,word ptr [bp+8h]
+1CC0  8B 7E 06    mov di,word ptr [bp+6h]
+1CC3  B4 07       mov ah,7h
+1CC5  E3 2B       jcxz 1cf2h
+1CC7  8A 04       mov al,byte ptr [si]
+1CC9  8A 15       mov dl,byte ptr [di]
+1CCB  88 C3       mov bl,al
+1CCD  88 D6       mov dh,dl
+1CCF  3A C2       cmp al,dl
+1CD1  74 03       je 1cd6h
+1CD3  80 E4 FE    and ah,0feh
+1CD6  F6 D2       not dl
+1CD8  20 D0       and al,dl
+1CDA  3C 00       cmp al,0h
+1CDC  74 03       je 1ce1h
+1CDE  80 E4 FD    and ah,0fdh
+1CE1  8A C3       mov al,bl
+1CE3  F6 D0       not al
+1CE5  20 F0       and al,dh
+1CE7  3C 00       cmp al,0h
+1CE9  74 03       je 1ceeh
+1CEB  80 E4 FB    and ah,0fbh
+1CEE  46          inc si
+1CEF  47          inc di
+1CF0  E2 D5       loop 1cc7h
+1CF2  F6 C4 01    test ah,1h
+1CF5  74 03       je 1cfah
+1CF7  80 E4 F9    and ah,0f9h
+1CFA  88 E0       mov al,ah
+1CFC  B4 00       mov ah,0h
+1CFE  5F          pop di
+1CFF  5E          pop si
+1D00  5A          pop dx
+1D01  59          pop cx
+1D02  5B          pop bx
+1D03  89 EC       mov sp,bp
+1D05  5D          pop bp
+1D06  C3          ret
+1D07  55          push bp
+1D08  8B EC       mov bp,sp
+1D0A  53          push bx
+1D0B  51          push cx
+1D0C  56          push si
+1D0D  8B 4E 04    mov cx,word ptr [bp+4h]
+1D10  8B 76 06    mov si,word ptr [bp+6h]
+1D13  8B 5E 08    mov bx,word ptr [bp+8h]
+1D16  E3 08       jcxz 1d20h
+1D18  8A 04       mov al,byte ptr [si]
+1D1A  88 07       mov byte ptr [bx],al
+1D1C  46          inc si
+1D1D  43          inc bx
+1D1E  E2 F8       loop 1d18h
+1D20  5E          pop si
+1D21  59          pop cx
+1D22  5B          pop bx
+1D23  89 EC       mov sp,bp
+1D25  5D          pop bp
+1D26  C3          ret
+1D27  55          push bp
+1D28  8B EC       mov bp,sp
+1D2A  53          push bx
+1D2B  51          push cx
+1D2C  52          push dx
+1D2D  56          push si
+1D2E  57          push di
+1D2F  8B 5E 04    mov bx,word ptr [bp+4h]
+1D32  8A 07       mov al,byte ptr [bx]
+1D34  30 E4       xor ah,ah
+1D36  89 C1       mov cx,ax
+1D38  8B 46 06    mov ax,word ptr [bp+6h]
+1D3B  3D 01 00    cmp ax,1h
+1D3E  72 4A       jb 1d8ah
+1D40  39 C8       cmp ax,cx
+1D42  77 46       jnbe 1d8ah
+1D44  89 C2       mov dx,ax
+1D46  8B 46 08    mov ax,word ptr [bp+8h]
+1D49  83 F8 00    cmp ax,0h
+1D4C  7E 3C       jle 1d8ah
+1D4E  8B F0       mov si,ax
+1D50  89 C8       mov ax,cx
+1D52  2B C2       sub ax,dx
+1D54  05 01 00    add ax,1h
+1D57  39 F0       cmp ax,si
+1D59  76 02       jbe 1d5dh
+1D5B  89 F0       mov ax,si
+1D5D  89 C1       mov cx,ax
+1D5F  89 D0       mov ax,dx
+1D61  03 C3       add ax,bx
+1D63  89 C7       mov di,ax
+1D65  03 C1       add ax,cx
+1D67  8B F0       mov si,ax
+1D69  8A 07       mov al,byte ptr [bx]
+1D6B  30 E4       xor ah,ah
+1D6D  2B C2       sub ax,dx
+1D6F  2B C1       sub ax,cx
+1D71  05 01 00    add ax,1h
+1D74  50          push ax
+1D75  8A 07       mov al,byte ptr [bx]
+1D77  30 E4       xor ah,ah
+1D79  2B C1       sub ax,cx
+1D7B  88 07       mov byte ptr [bx],al
+1D7D  58          pop ax
+1D7E  89 C1       mov cx,ax
+1D80  E3 08       jcxz 1d8ah
+1D82  8A 04       mov al,byte ptr [si]
+1D84  88 05       mov byte ptr [di],al
+1D86  46          inc si
+1D87  47          inc di
+1D88  E2 F8       loop 1d82h
+1D8A  5F          pop di
+1D8B  5E          pop si
+1D8C  5A          pop dx
+1D8D  59          pop cx
+1D8E  5B          pop bx
+1D8F  89 EC       mov sp,bp
+1D91  5D          pop bp
+1D92  C3          ret
+1D93  55          push bp
+1D94  8B EC       mov bp,sp
 1D96  53          push bx
 1D96  53          push bx
-1D97  E8 E6 E7    call 580h
-1D9A  83 C4 02    add sp,2h
-1D9D  8B 06 C1 37 mov ax,word ptr [37c1h]
-1DA1  A3 B5 37    mov word ptr [37b5h],ax
-1DA4  8B 1E C3 37 mov bx,word ptr [37c3h]
-1DA8  89 1E B7 37 mov word ptr [37b7h],bx
-1DAC  8B 16 C5 37 mov dx,word ptr [37c5h]
-1DB0  89 16 B9 37 mov word ptr [37b9h],dx
-1DB4  8B 06 37 37 mov ax,word ptr [3737h]
-1DB8  A3 BB 37    mov word ptr [37bbh],ax
-1DBB  8B 1E 39 37 mov bx,word ptr [3739h]
-1DBF  89 1E BD 37 mov word ptr [37bdh],bx
-1DC3  8B 16 3B 37 mov dx,word ptr [373bh]
-1DC7  89 16 BF 37 mov word ptr [37bfh],dx
-1DCB  8B 06 BB 37 mov ax,word ptr [37bbh]
-1DCF  A3 C1 37    mov word ptr [37c1h],ax
-1DD2  8B 1E BD 37 mov bx,word ptr [37bdh]
-1DD6  89 1E C3 37 mov word ptr [37c3h],bx
-1DDA  8B 16 BF 37 mov dx,word ptr [37bfh]
-1DDE  89 16 C5 37 mov word ptr [37c5h],dx
-1DE2  8B 06 B5 37 mov ax,word ptr [37b5h]
-1DE6  A3 C7 37    mov word ptr [37c7h],ax
-1DE9  8B 1E B7 37 mov bx,word ptr [37b7h]
-1DED  89 1E C9 37 mov word ptr [37c9h],bx
-1DF1  8B 16 B9 37 mov dx,word ptr [37b9h]
-1DF5  89 16 CB 37 mov word ptr [37cbh],dx
-1DF9  BB C1 37    mov bx,37c1h
-1DFC  53          push bx
-1DFD  E8 80 E7    call 580h
-1E00  83 C4 02    add sp,2h
-1E03  8B 06 C1 37 mov ax,word ptr [37c1h]
-1E07  A3 BB 37    mov word ptr [37bbh],ax
-1E0A  8B 1E C3 37 mov bx,word ptr [37c3h]
-1E0E  89 1E BD 37 mov word ptr [37bdh],bx
-1E12  8B 16 C5 37 mov dx,word ptr [37c5h]
-1E16  89 16 BF 37 mov word ptr [37bfh],dx
-1E1A  8B 06 BB 37 mov ax,word ptr [37bbh]
-1E1E  A3 C1 37    mov word ptr [37c1h],ax
-1E21  8B 1E BD 37 mov bx,word ptr [37bdh]
-1E25  89 1E C3 37 mov word ptr [37c3h],bx
-1E29  8B 16 BF 37 mov dx,word ptr [37bfh]
-1E2D  89 16 C5 37 mov word ptr [37c5h],dx
-1E31  8B 06 3D 37 mov ax,word ptr [373dh]
-1E35  A3 C7 37    mov word ptr [37c7h],ax
-1E38  8B 1E 3F 37 mov bx,word ptr [373fh]
-1E3C  89 1E C9 37 mov word ptr [37c9h],bx
-1E40  8B 16 41 37 mov dx,word ptr [3741h]
-1E44  89 16 CB 37 mov word ptr [37cbh],dx
-1E48  BB C1 37    mov bx,37c1h
-1E4B  53          push bx
-1E4C  E8 C9 E5    call 418h
-1E4F  83 C4 02    add sp,2h
-1E52  8B 06 C1 37 mov ax,word ptr [37c1h]
-1E56  A3 BB 37    mov word ptr [37bbh],ax
-1E59  8B 1E C3 37 mov bx,word ptr [37c3h]
-1E5D  89 1E BD 37 mov word ptr [37bdh],bx
-1E61  8B 16 C5 37 mov dx,word ptr [37c5h]
-1E65  89 16 BF 37 mov word ptr [37bfh],dx
-1E69  8B 06 BB 37 mov ax,word ptr [37bbh]
-1E6D  A3 C1 37    mov word ptr [37c1h],ax
-1E70  8B 1E BD 37 mov bx,word ptr [37bdh]
-1E74  89 1E C3 37 mov word ptr [37c3h],bx
-1E78  8B 16 BF 37 mov dx,word ptr [37bfh]
-1E7C  89 16 C5 37 mov word ptr [37c5h],dx
-1E80  8B 06 B5 37 mov ax,word ptr [37b5h]
-1E84  A3 C7 37    mov word ptr [37c7h],ax
-1E87  8B 1E B7 37 mov bx,word ptr [37b7h]
-1E8B  89 1E C9 37 mov word ptr [37c9h],bx
-1E8F  8B 16 B9 37 mov dx,word ptr [37b9h]
-1E93  89 16 CB 37 mov word ptr [37cbh],dx
-1E97  BB C1 37    mov bx,37c1h
-1E9A  53          push bx
-1E9B  E8 E2 E6    call 580h
-1E9E  83 C4 02    add sp,2h
-1EA1  8B 06 C1 37 mov ax,word ptr [37c1h]
-1EA5  A3 BB 37    mov word ptr [37bbh],ax
-1EA8  8B 1E C3 37 mov bx,word ptr [37c3h]
-1EAC  89 1E BD 37 mov word ptr [37bdh],bx
-1EB0  8B 16 C5 37 mov dx,word ptr [37c5h]
-1EB4  89 16 BF 37 mov word ptr [37bfh],dx
-1EB8  8B 06 BB 37 mov ax,word ptr [37bbh]
-1EBC  A3 C1 37    mov word ptr [37c1h],ax
-1EBF  8B 1E BD 37 mov bx,word ptr [37bdh]
-1EC3  89 1E C3 37 mov word ptr [37c3h],bx
-1EC7  8B 16 BF 37 mov dx,word ptr [37bfh]
-1ECB  89 16 C5 37 mov word ptr [37c5h],dx
-1ECF  8B 06 43 37 mov ax,word ptr [3743h]
-1ED3  A3 C7 37    mov word ptr [37c7h],ax
-1ED6  8B 1E 45 37 mov bx,word ptr [3745h]
-1EDA  89 1E C9 37 mov word ptr [37c9h],bx
-1EDE  8B 16 47 37 mov dx,word ptr [3747h]
-1EE2  89 16 CB 37 mov word ptr [37cbh],dx
-1EE6  BB C1 37    mov bx,37c1h
-1EE9  53          push bx
-1EEA  E8 2B E5    call 418h
-1EED  83 C4 02    add sp,2h
-1EF0  8B 06 C1 37 mov ax,word ptr [37c1h]
-1EF4  A3 BB 37    mov word ptr [37bbh],ax
-1EF7  8B 1E C3 37 mov bx,word ptr [37c3h]
-1EFB  89 1E BD 37 mov word ptr [37bdh],bx
-1EFF  8B 16 C5 37 mov dx,word ptr [37c5h]
-1F03  89 16 BF 37 mov word ptr [37bfh],dx
-1F07  8B 06 BB 37 mov ax,word ptr [37bbh]
-1F0B  A3 C1 37    mov word ptr [37c1h],ax
-1F0E  8B 1E BD 37 mov bx,word ptr [37bdh]
-1F12  89 1E C3 37 mov word ptr [37c3h],bx
-1F16  8B 16 BF 37 mov dx,word ptr [37bfh]
-1F1A  89 16 C5 37 mov word ptr [37c5h],dx
-1F1E  8B 06 B5 37 mov ax,word ptr [37b5h]
-1F22  A3 C7 37    mov word ptr [37c7h],ax
-1F25  8B 1E B7 37 mov bx,word ptr [37b7h]
-1F29  89 1E C9 37 mov word ptr [37c9h],bx
-1F2D  8B 16 B9 37 mov dx,word ptr [37b9h]
-1F31  89 16 CB 37 mov word ptr [37cbh],dx
-1F35  BB C1 37    mov bx,37c1h
-1F38  53          push bx
-1F39  E8 44 E6    call 580h
-1F3C  83 C4 02    add sp,2h
-1F3F  8B 06 C1 37 mov ax,word ptr [37c1h]
-1F43  A3 BB 37    mov word ptr [37bbh],ax
-1F46  8B 1E C3 37 mov bx,word ptr [37c3h]
-1F4A  89 1E BD 37 mov word ptr [37bdh],bx
-1F4E  8B 16 C5 37 mov dx,word ptr [37c5h]
-1F52  89 16 BF 37 mov word ptr [37bfh],dx
-1F56  8B 06 BB 37 mov ax,word ptr [37bbh]
-1F5A  A3 C1 37    mov word ptr [37c1h],ax
-1F5D  8B 1E BD 37 mov bx,word ptr [37bdh]
-1F61  89 1E C3 37 mov word ptr [37c3h],bx
-1F65  8B 16 BF 37 mov dx,word ptr [37bfh]
-1F69  89 16 C5 37 mov word ptr [37c5h],dx
-1F6D  8B 06 49 37 mov ax,word ptr [3749h]
-1F71  A3 C7 37    mov word ptr [37c7h],ax
-1F74  8B 1E 4B 37 mov bx,word ptr [374bh]
-1F78  89 1E C9 37 mov word ptr [37c9h],bx
-1F7C  8B 16 4D 37 mov dx,word ptr [374dh]
-1F80  89 16 CB 37 mov word ptr [37cbh],dx
-1F84  BB C1 37    mov bx,37c1h
-1F87  53          push bx
-1F88  E8 8D E4    call 418h
-1F8B  83 C4 02    add sp,2h
-1F8E  8B 06 C1 37 mov ax,word ptr [37c1h]
-1F92  A3 BB 37    mov word ptr [37bbh],ax
-1F95  8B 1E C3 37 mov bx,word ptr [37c3h]
-1F99  89 1E BD 37 mov word ptr [37bdh],bx
-1F9D  8B 16 C5 37 mov dx,word ptr [37c5h]
-1FA1  89 16 BF 37 mov word ptr [37bfh],dx
-1FA5  8B 06 BB 37 mov ax,word ptr [37bbh]
-1FA9  A3 C1 37    mov word ptr [37c1h],ax
-1FAC  8B 1E BD 37 mov bx,word ptr [37bdh]
-1FB0  89 1E C3 37 mov word ptr [37c3h],bx
-1FB4  8B 16 BF 37 mov dx,word ptr [37bfh]
-1FB8  89 16 C5 37 mov word ptr [37c5h],dx
-1FBC  8B 06 B5 37 mov ax,word ptr [37b5h]
-1FC0  A3 C7 37    mov word ptr [37c7h],ax
-1FC3  8B 1E B7 37 mov bx,word ptr [37b7h]
-1FC7  89 1E C9 37 mov word ptr [37c9h],bx
-1FCB  8B 16 B9 37 mov dx,word ptr [37b9h]
-1FCF  89 16 CB 37 mov word ptr [37cbh],dx
-1FD3  BB C1 37    mov bx,37c1h
-1FD6  53          push bx
-1FD7  E8 A6 E5    call 580h
-1FDA  83 C4 02    add sp,2h
-1FDD  8B 06 C1 37 mov ax,word ptr [37c1h]
-1FE1  A3 BB 37    mov word ptr [37bbh],ax
-1FE4  8B 1E C3 37 mov bx,word ptr [37c3h]
-1FE8  89 1E BD 37 mov word ptr [37bdh],bx
-1FEC  8B 16 C5 37 mov dx,word ptr [37c5h]
-1FF0  89 16 BF 37 mov word ptr [37bfh],dx
-1FF4  8B 06 BB 37 mov ax,word ptr [37bbh]
-1FF8  A3 C1 37    mov word ptr [37c1h],ax
-1FFB  8B 1E BD 37 mov bx,word ptr [37bdh]
-1FFF  89 1E C3 37 mov word ptr [37c3h],bx
-2003  8B 16 BF 37 mov dx,word ptr [37bfh]
-2007  89 16 C5 37 mov word ptr [37c5h],dx
-200B  8B 06 4F 37 mov ax,word ptr [374fh]
-200F  A3 C7 37    mov word ptr [37c7h],ax
-2012  8B 1E 51 37 mov bx,word ptr [3751h]
-2016  89 1E C9 37 mov word ptr [37c9h],bx
-201A  8B 16 53 37 mov dx,word ptr [3753h]
-201E  89 16 CB 37 mov word ptr [37cbh],dx
-2022  BB C1 37    mov bx,37c1h
-2025  53          push bx
-2026  E8 EF E3    call 418h
-2029  83 C4 02    add sp,2h
-202C  8B 06 C1 37 mov ax,word ptr [37c1h]
-2030  A3 BB 37    mov word ptr [37bbh],ax
-2033  8B 1E C3 37 mov bx,word ptr [37c3h]
-2037  89 1E BD 37 mov word ptr [37bdh],bx
-203B  8B 16 C5 37 mov dx,word ptr [37c5h]
-203F  89 16 BF 37 mov word ptr [37bfh],dx
-2043  8B 06 BB 37 mov ax,word ptr [37bbh]
-2047  A3 C1 37    mov word ptr [37c1h],ax
-204A  8B 1E BD 37 mov bx,word ptr [37bdh]
-204E  89 1E C3 37 mov word ptr [37c3h],bx
-2052  8B 16 BF 37 mov dx,word ptr [37bfh]
-2056  89 16 C5 37 mov word ptr [37c5h],dx
-205A  8B 06 B5 37 mov ax,word ptr [37b5h]
-205E  A3 C7 37    mov word ptr [37c7h],ax
-2061  8B 1E B7 37 mov bx,word ptr [37b7h]
-2065  89 1E C9 37 mov word ptr [37c9h],bx
-2069  8B 16 B9 37 mov dx,word ptr [37b9h]
-206D  89 16 CB 37 mov word ptr [37cbh],dx
-2071  BB C1 37    mov bx,37c1h
-2074  53          push bx
-2075  E8 08 E5    call 580h
-2078  83 C4 02    add sp,2h
-207B  8B 06 C1 37 mov ax,word ptr [37c1h]
-207F  A3 BB 37    mov word ptr [37bbh],ax
-2082  8B 1E C3 37 mov bx,word ptr [37c3h]
-2086  89 1E BD 37 mov word ptr [37bdh],bx
-208A  8B 16 C5 37 mov dx,word ptr [37c5h]
-208E  89 16 BF 37 mov word ptr [37bfh],dx
-2092  8B 06 BB 37 mov ax,word ptr [37bbh]
-2096  A3 C1 37    mov word ptr [37c1h],ax
-2099  8B 1E BD 37 mov bx,word ptr [37bdh]
-209D  89 1E C3 37 mov word ptr [37c3h],bx
-20A1  8B 16 BF 37 mov dx,word ptr [37bfh]
-20A5  89 16 C5 37 mov word ptr [37c5h],dx
-20A9  8B 06 55 37 mov ax,word ptr [3755h]
-20AD  A3 C7 37    mov word ptr [37c7h],ax
-20B0  8B 1E 57 37 mov bx,word ptr [3757h]
-20B4  89 1E C9 37 mov word ptr [37c9h],bx
-20B8  8B 16 59 37 mov dx,word ptr [3759h]
-20BC  89 16 CB 37 mov word ptr [37cbh],dx
-20C0  BB C1 37    mov bx,37c1h
-20C3  53          push bx
-20C4  E8 51 E3    call 418h
-20C7  83 C4 02    add sp,2h
-20CA  8B 06 C1 37 mov ax,word ptr [37c1h]
-20CE  A3 BB 37    mov word ptr [37bbh],ax
-20D1  8B 1E C3 37 mov bx,word ptr [37c3h]
-20D5  89 1E BD 37 mov word ptr [37bdh],bx
-20D9  8B 16 C5 37 mov dx,word ptr [37c5h]
-20DD  89 16 BF 37 mov word ptr [37bfh],dx
-20E1  8B 06 BB 37 mov ax,word ptr [37bbh]
-20E5  A3 C1 37    mov word ptr [37c1h],ax
-20E8  8B 1E BD 37 mov bx,word ptr [37bdh]
-20EC  89 1E C3 37 mov word ptr [37c3h],bx
-20F0  8B 16 BF 37 mov dx,word ptr [37bfh]
-20F4  89 16 C5 37 mov word ptr [37c5h],dx
-20F8  8B 06 B5 37 mov ax,word ptr [37b5h]
-20FC  A3 C7 37    mov word ptr [37c7h],ax
-20FF  8B 1E B7 37 mov bx,word ptr [37b7h]
-2103  89 1E C9 37 mov word ptr [37c9h],bx
-2107  8B 16 B9 37 mov dx,word ptr [37b9h]
-210B  89 16 CB 37 mov word ptr [37cbh],dx
-210F  BB C1 37    mov bx,37c1h
-2112  53          push bx
-2113  E8 6A E4    call 580h
-2116  83 C4 02    add sp,2h
-2119  8B 06 C1 37 mov ax,word ptr [37c1h]
-211D  A3 BB 37    mov word ptr [37bbh],ax
-2120  8B 1E C3 37 mov bx,word ptr [37c3h]
-2124  89 1E BD 37 mov word ptr [37bdh],bx
-2128  8B 16 C5 37 mov dx,word ptr [37c5h]
-212C  89 16 BF 37 mov word ptr [37bfh],dx
-2130  8B 06 BB 37 mov ax,word ptr [37bbh]
-2134  A3 C1 37    mov word ptr [37c1h],ax
-2137  8B 1E BD 37 mov bx,word ptr [37bdh]
-213B  89 1E C3 37 mov word ptr [37c3h],bx
-213F  8B 16 BF 37 mov dx,word ptr [37bfh]
-2143  89 16 C5 37 mov word ptr [37c5h],dx
-2147  8B 06 5B 37 mov ax,word ptr [375bh]
-214B  A3 C7 37    mov word ptr [37c7h],ax
-214E  8B 1E 5D 37 mov bx,word ptr [375dh]
-2152  89 1E C9 37 mov word ptr [37c9h],bx
-2156  8B 16 5F 37 mov dx,word ptr [375fh]
-215A  89 16 CB 37 mov word ptr [37cbh],dx
-215E  BB C1 37    mov bx,37c1h
-2161  53          push bx
-2162  E8 B3 E2    call 418h
-2165  83 C4 02    add sp,2h
-2168  8B 06 C1 37 mov ax,word ptr [37c1h]
-216C  A3 BB 37    mov word ptr [37bbh],ax
-216F  8B 1E C3 37 mov bx,word ptr [37c3h]
-2173  89 1E BD 37 mov word ptr [37bdh],bx
-2177  8B 16 C5 37 mov dx,word ptr [37c5h]
-217B  89 16 BF 37 mov word ptr [37bfh],dx
-217F  8B 06 BB 37 mov ax,word ptr [37bbh]
-2183  A3 C1 37    mov word ptr [37c1h],ax
-2186  8B 1E BD 37 mov bx,word ptr [37bdh]
-218A  89 1E C3 37 mov word ptr [37c3h],bx
-218E  8B 16 BF 37 mov dx,word ptr [37bfh]
-2192  89 16 C5 37 mov word ptr [37c5h],dx
-2196  8B 06 B5 37 mov ax,word ptr [37b5h]
-219A  A3 C7 37    mov word ptr [37c7h],ax
-219D  8B 1E B7 37 mov bx,word ptr [37b7h]
-21A1  89 1E C9 37 mov word ptr [37c9h],bx
-21A5  8B 16 B9 37 mov dx,word ptr [37b9h]
-21A9  89 16 CB 37 mov word ptr [37cbh],dx
-21AD  BB C1 37    mov bx,37c1h
-21B0  53          push bx
-21B1  E8 CC E3    call 580h
-21B4  83 C4 02    add sp,2h
-21B7  8B 06 C1 37 mov ax,word ptr [37c1h]
-21BB  A3 BB 37    mov word ptr [37bbh],ax
-21BE  8B 1E C3 37 mov bx,word ptr [37c3h]
-21C2  89 1E BD 37 mov word ptr [37bdh],bx
-21C6  8B 16 C5 37 mov dx,word ptr [37c5h]
-21CA  89 16 BF 37 mov word ptr [37bfh],dx
-21CE  8B 06 BB 37 mov ax,word ptr [37bbh]
-21D2  A3 C1 37    mov word ptr [37c1h],ax
-21D5  8B 1E BD 37 mov bx,word ptr [37bdh]
-21D9  89 1E C3 37 mov word ptr [37c3h],bx
-21DD  8B 16 BF 37 mov dx,word ptr [37bfh]
-21E1  89 16 C5 37 mov word ptr [37c5h],dx
-21E5  8B 06 95 36 mov ax,word ptr [3695h]
-21E9  A3 C7 37    mov word ptr [37c7h],ax
-21EC  8B 1E 97 36 mov bx,word ptr [3697h]
-21F0  89 1E C9 37 mov word ptr [37c9h],bx
-21F4  8B 16 99 36 mov dx,word ptr [3699h]
-21F8  89 16 CB 37 mov word ptr [37cbh],dx
-21FC  BB C1 37    mov bx,37c1h
-21FF  53          push bx
-2200  E8 15 E2    call 418h
-2203  83 C4 02    add sp,2h
-2206  8B 06 C1 37 mov ax,word ptr [37c1h]
-220A  A3 BB 37    mov word ptr [37bbh],ax
-220D  8B 1E C3 37 mov bx,word ptr [37c3h]
-2211  89 1E BD 37 mov word ptr [37bdh],bx
-2215  8B 16 C5 37 mov dx,word ptr [37c5h]
-2219  89 16 BF 37 mov word ptr [37bfh],dx
-221D  8B 06 BB 37 mov ax,word ptr [37bbh]
-2221  A3 C1 37    mov word ptr [37c1h],ax
-2224  8B 1E BD 37 mov bx,word ptr [37bdh]
-2228  89 1E C3 37 mov word ptr [37c3h],bx
-222C  8B 16 BF 37 mov dx,word ptr [37bfh]
-2230  89 16 C5 37 mov word ptr [37c5h],dx
-2234  8B 06 AF 37 mov ax,word ptr [37afh]
-2238  A3 C7 37    mov word ptr [37c7h],ax
-223B  8B 1E B1 37 mov bx,word ptr [37b1h]
-223F  89 1E C9 37 mov word ptr [37c9h],bx
-2243  8B 16 B3 37 mov dx,word ptr [37b3h]
-2247  89 16 CB 37 mov word ptr [37cbh],dx
-224B  BB C1 37    mov bx,37c1h
-224E  53          push bx
-224F  E8 2E E3    call 580h
-2252  83 C4 02    add sp,2h
-2255  8B 06 C1 37 mov ax,word ptr [37c1h]
-2259  A3 BB 37    mov word ptr [37bbh],ax
-225C  8B 1E C3 37 mov bx,word ptr [37c3h]
-2260  89 1E BD 37 mov word ptr [37bdh],bx
-2264  8B 16 C5 37 mov dx,word ptr [37c5h]
-2268  89 16 BF 37 mov word ptr [37bfh],dx
-226C  5F          pop di
-226D  8B 06 BB 37 mov ax,word ptr [37bbh]
-2271  8B 1E BD 37 mov bx,word ptr [37bdh]
-2275  8B 16 BF 37 mov dx,word ptr [37bfh]
-2279  89 05       mov word ptr [di],ax
-227B  89 5D 02    mov word ptr [di+2h],bx
-227E  89 55 04    mov word ptr [di+4h],dx
-2281  EB 00       jmp 2283h
-2283  5F          pop di
-2284  5E          pop si
-2285  5A          pop dx
-2286  5B          pop bx
-2287  89 EC       mov sp,bp
-2289  5D          pop bp
-228A  C3          ret
-228B  55          push bp
-228C  8B EC       mov bp,sp
-228E  53          push bx
-228F  52          push dx
-2290  56          push si
-2291  57          push di
-2292  FF 76 04    push word ptr [bp+4h]
-2295  8B 76 04    mov si,word ptr [bp+4h]
-2298  8B 04       mov ax,word ptr [si]
-229A  8B 4C 02    mov cx,word ptr [si+2h]
-229D  89 CB       mov bx,cx
-229F  8B 54 04    mov dx,word ptr [si+4h]
-22A2  A3 AF 37    mov word ptr [37afh],ax
-22A5  89 1E B1 37 mov word ptr [37b1h],bx
-22A9  89 16 B3 37 mov word ptr [37b3h],dx
-22AD  8B 06 AF 37 mov ax,word ptr [37afh]
-22B1  A3 C1 37    mov word ptr [37c1h],ax
-22B4  8B 1E B1 37 mov bx,word ptr [37b1h]
-22B8  89 1E C3 37 mov word ptr [37c3h],bx
-22BC  8B 16 B3 37 mov dx,word ptr [37b3h]
-22C0  89 16 C5 37 mov word ptr [37c5h],dx
-22C4  8B 06 2B 37 mov ax,word ptr [372bh]
-22C8  A3 C7 37    mov word ptr [37c7h],ax
-22CB  8B 1E 2D 37 mov bx,word ptr [372dh]
-22CF  89 1E C9 37 mov word ptr [37c9h],bx
-22D3  8B 16 2F 37 mov dx,word ptr [372fh]
-22D7  89 16 CB 37 mov word ptr [37cbh],dx
-22DB  BB C1 37    mov bx,37c1h
-22DE  53          push bx
-22DF  E8 36 E1    call 418h
-22E2  83 C4 02    add sp,2h
-22E5  8B 06 C1 37 mov ax,word ptr [37c1h]
-22E9  A3 AF 37    mov word ptr [37afh],ax
-22EC  8B 1E C3 37 mov bx,word ptr [37c3h]
-22F0  89 1E B1 37 mov word ptr [37b1h],bx
-22F4  8B 16 C5 37 mov dx,word ptr [37c5h]
-22F8  89 16 B3 37 mov word ptr [37b3h],dx
-22FC  5F          pop di
-22FD  8B 06 AF 37 mov ax,word ptr [37afh]
-2301  8B 1E B1 37 mov bx,word ptr [37b1h]
-2305  8B 16 B3 37 mov dx,word ptr [37b3h]
-2309  89 05       mov word ptr [di],ax
-230B  89 5D 02    mov word ptr [di+2h],bx
-230E  89 55 04    mov word ptr [di+4h],dx
-2311  FF 76 04    push word ptr [bp+4h]
-2314  E8 E9 F7    call 1b00h
-2317  83 C4 02    add sp,2h
-231A  5F          pop di
-231B  5E          pop si
-231C  5A          pop dx
-231D  5B          pop bx
-231E  89 EC       mov sp,bp
-2320  5D          pop bp
-2321  C3          ret
-2322  55          push bp
-2323  8B EC       mov bp,sp
-2325  53          push bx
-2326  52          push dx
-2327  56          push si
-2328  57          push di
-2329  FF 76 04    push word ptr [bp+4h]
-232C  8B 76 04    mov si,word ptr [bp+4h]
-232F  8B 04       mov ax,word ptr [si]
-2331  8B 4C 02    mov cx,word ptr [si+2h]
-2334  89 CB       mov bx,cx
-2336  8B 54 04    mov dx,word ptr [si+4h]
-2339  A3 AF 37    mov word ptr [37afh],ax
-233C  89 1E B1 37 mov word ptr [37b1h],bx
-2340  89 16 B3 37 mov word ptr [37b3h],dx
-2344  8B 06 AF 37 mov ax,word ptr [37afh]
-2348  A3 C1 37    mov word ptr [37c1h],ax
-234B  8B 1E B1 37 mov bx,word ptr [37b1h]
-234F  89 1E C3 37 mov word ptr [37c3h],bx
-2353  8B 16 B3 37 mov dx,word ptr [37b3h]
-2357  89 16 C5 37 mov word ptr [37c5h],dx
-235B  8B 06 E9 37 mov ax,word ptr [37e9h]
-235F  A3 C7 37    mov word ptr [37c7h],ax
-2362  8B 1E EB 37 mov bx,word ptr [37ebh]
-2366  89 1E C9 37 mov word ptr [37c9h],bx
-236A  8B 16 ED 37 mov dx,word ptr [37edh]
-236E  89 16 CB 37 mov word ptr [37cbh],dx
-2372  BB C1 37    mov bx,37c1h
-2375  53          push bx
-2376  E8 F4 E3    call 76dh
-2379  83 C4 02    add sp,2h
-237C  83 F8 00    cmp ax,0h
-237F  7C 03       jl 2384h
-2381  E9 08 00    jmp 238ch
-2384  C6 06 DA 37 01 mov byte ptr [37dah],1h
-2389  E9 05 00    jmp 2391h
-238C  C6 06 DA 37 00 mov byte ptr [37dah],0h
-2391  8B 06 AF 37 mov ax,word ptr [37afh]
-2395  A3 C1 37    mov word ptr [37c1h],ax
-2398  8B 1E B1 37 mov bx,word ptr [37b1h]
-239C  89 1E C3 37 mov word ptr [37c3h],bx
-23A0  8B 16 B3 37 mov dx,word ptr [37b3h]
-23A4  89 16 C5 37 mov word ptr [37c5h],dx
-23A8  BB C1 37    mov bx,37c1h
-23AB  53          push bx
-23AC  E8 AE E4    call 85dh
-23AF  83 C4 02    add sp,2h
-23B2  8B 06 C1 37 mov ax,word ptr [37c1h]
-23B6  A3 B5 37    mov word ptr [37b5h],ax
-23B9  8B 1E C3 37 mov bx,word ptr [37c3h]
-23BD  89 1E B7 37 mov word ptr [37b7h],bx
-23C1  8B 16 C5 37 mov dx,word ptr [37c5h]
-23C5  89 16 B9 37 mov word ptr [37b9h],dx
-23C9  C6 06 DB 37 00 mov byte ptr [37dbh],0h
-23CE  8B 06 B5 37 mov ax,word ptr [37b5h]
-23D2  A3 C1 37    mov word ptr [37c1h],ax
-23D5  8B 1E B7 37 mov bx,word ptr [37b7h]
-23D9  89 1E C3 37 mov word ptr [37c3h],bx
-23DD  8B 16 B9 37 mov dx,word ptr [37b9h]
-23E1  89 16 C5 37 mov word ptr [37c5h],dx
-23E5  8B 06 95 36 mov ax,word ptr [3695h]
-23E9  A3 C7 37    mov word ptr [37c7h],ax
-23EC  8B 1E 97 36 mov bx,word ptr [3697h]
-23F0  89 1E C9 37 mov word ptr [37c9h],bx
-23F4  8B 16 99 36 mov dx,word ptr [3699h]
-23F8  89 16 CB 37 mov word ptr [37cbh],dx
-23FC  BB C1 37    mov bx,37c1h
-23FF  53          push bx
-2400  E8 6A E3    call 76dh
-2403  83 C4 02    add sp,2h
-2406  83 F8 00    cmp ax,0h
-2409  7F 03       jnle 240eh
-240B  E9 54 00    jmp 2462h
-240E  C6 06 DB 37 01 mov byte ptr [37dbh],1h
-2413  8B 06 95 36 mov ax,word ptr [3695h]
-2417  A3 C1 37    mov word ptr [37c1h],ax
-241A  8B 1E 97 36 mov bx,word ptr [3697h]
-241E  89 1E C3 37 mov word ptr [37c3h],bx
-2422  8B 16 99 36 mov dx,word ptr [3699h]
-2426  89 16 C5 37 mov word ptr [37c5h],dx
-242A  8B 06 B5 37 mov ax,word ptr [37b5h]
-242E  A3 C7 37    mov word ptr [37c7h],ax
-2431  8B 1E B7 37 mov bx,word ptr [37b7h]
-2435  89 1E C9 37 mov word ptr [37c9h],bx
-2439  8B 16 B9 37 mov dx,word ptr [37b9h]
-243D  89 16 CB 37 mov word ptr [37cbh],dx
-2441  BB C1 37    mov bx,37c1h
-2444  53          push bx
-2445  E8 21 E2    call 669h
-2448  83 C4 02    add sp,2h
-244B  8B 06 C1 37 mov ax,word ptr [37c1h]
-244F  A3 B5 37    mov word ptr [37b5h],ax
-2452  8B 1E C3 37 mov bx,word ptr [37c3h]
-2456  89 1E B7 37 mov word ptr [37b7h],bx
-245A  8B 16 C5 37 mov dx,word ptr [37c5h]
-245E  89 16 B9 37 mov word ptr [37b9h],dx
-2462  C6 06 DC 37 00 mov byte ptr [37dch],0h
-2467  8B 06 B5 37 mov ax,word ptr [37b5h]
-246B  A3 C1 37    mov word ptr [37c1h],ax
-246E  8B 1E B7 37 mov bx,word ptr [37b7h]
-2472  89 1E C3 37 mov word ptr [37c3h],bx
-2476  8B 16 B9 37 mov dx,word ptr [37b9h]
-247A  89 16 C5 37 mov word ptr [37c5h],dx
-247E  8B 06 DD 37 mov ax,word ptr [37ddh]
-2482  A3 C7 37    mov word ptr [37c7h],ax
-2485  8B 1E DF 37 mov bx,word ptr [37dfh]
-2489  89 1E C9 37 mov word ptr [37c9h],bx
-248D  8B 16 E1 37 mov dx,word ptr [37e1h]
-2491  89 16 CB 37 mov word ptr [37cbh],dx
-2495  BB C1 37    mov bx,37c1h
-2498  53          push bx
-2499  E8 D1 E2    call 76dh
-249C  83 C4 02    add sp,2h
-249F  83 F8 00    cmp ax,0h
-24A2  7F 03       jnle 24a7h
-24A4  E9 F5 00    jmp 259ch
-24A7  C6 06 DC 37 01 mov byte ptr [37dch],1h
-24AC  8B 06 B5 37 mov ax,word ptr [37b5h]
-24B0  A3 C1 37    mov word ptr [37c1h],ax
-24B3  8B 1E B7 37 mov bx,word ptr [37b7h]
-24B7  89 1E C3 37 mov word ptr [37c3h],bx
-24BB  8B 16 B9 37 mov dx,word ptr [37b9h]
-24BF  89 16 C5 37 mov word ptr [37c5h],dx
-24C3  8B 06 95 36 mov ax,word ptr [3695h]
-24C7  A3 C7 37    mov word ptr [37c7h],ax
-24CA  8B 1E 97 36 mov bx,word ptr [3697h]
-24CE  89 1E C9 37 mov word ptr [37c9h],bx
-24D2  8B 16 99 36 mov dx,word ptr [3699h]
-24D6  89 16 CB 37 mov word ptr [37cbh],dx
-24DA  BB C1 37    mov bx,37c1h
-24DD  53          push bx
-24DE  E8 73 DF    call 454h
-24E1  83 C4 02    add sp,2h
-24E4  8B 06 C1 37 mov ax,word ptr [37c1h]
-24E8  A3 AF 37    mov word ptr [37afh],ax
-24EB  8B 1E C3 37 mov bx,word ptr [37c3h]
-24EF  89 1E B1 37 mov word ptr [37b1h],bx
-24F3  8B 16 C5 37 mov dx,word ptr [37c5h]
-24F7  89 16 B3 37 mov word ptr [37b3h],dx
-24FB  8B 06 B5 37 mov ax,word ptr [37b5h]
-24FF  A3 C1 37    mov word ptr [37c1h],ax
-2502  8B 1E B7 37 mov bx,word ptr [37b7h]
-2506  89 1E C3 37 mov word ptr [37c3h],bx
-250A  8B 16 B9 37 mov dx,word ptr [37b9h]
-250E  89 16 C5 37 mov word ptr [37c5h],dx
-2512  8B 06 95 36 mov ax,word ptr [3695h]
-2516  A3 C7 37    mov word ptr [37c7h],ax
-2519  8B 1E 97 36 mov bx,word ptr [3697h]
-251D  89 1E C9 37 mov word ptr [37c9h],bx
-2521  8B 16 99 36 mov dx,word ptr [3699h]
-2525  89 16 CB 37 mov word ptr [37cbh],dx
-2529  BB C1 37    mov bx,37c1h
-252C  53          push bx
-252D  E8 E8 DE    call 418h
-2530  83 C4 02    add sp,2h
-2533  8B 06 C1 37 mov ax,word ptr [37c1h]
-2537  A3 BB 37    mov word ptr [37bbh],ax
-253A  8B 1E C3 37 mov bx,word ptr [37c3h]
-253E  89 1E BD 37 mov word ptr [37bdh],bx
-2542  8B 16 C5 37 mov dx,word ptr [37c5h]
-2546  89 16 BF 37 mov word ptr [37bfh],dx
-254A  8B 06 AF 37 mov ax,word ptr [37afh]
-254E  A3 C1 37    mov word ptr [37c1h],ax
-2551  8B 1E B1 37 mov bx,word ptr [37b1h]
-2555  89 1E C3 37 mov word ptr [37c3h],bx
-2559  8B 16 B3 37 mov dx,word ptr [37b3h]
-255D  89 16 C5 37 mov word ptr [37c5h],dx
-2561  8B 06 BB 37 mov ax,word ptr [37bbh]
-2565  A3 C7 37    mov word ptr [37c7h],ax
-2568  8B 1E BD 37 mov bx,word ptr [37bdh]
-256C  89 1E C9 37 mov word ptr [37c9h],bx
-2570  8B 16 BF 37 mov dx,word ptr [37bfh]
-2574  89 16 CB 37 mov word ptr [37cbh],dx
-2578  BB C1 37    mov bx,37c1h
-257B  53          push bx
-257C  E8 EA E0    call 669h
-257F  83 C4 02    add sp,2h
-2582  8B 06 C1 37 mov ax,word ptr [37c1h]
-2586  A3 AF 37    mov word ptr [37afh],ax
-2589  8B 1E C3 37 mov bx,word ptr [37c3h]
-258D  89 1E B1 37 mov word ptr [37b1h],bx
-2591  8B 16 C5 37 mov dx,word ptr [37c5h]
-2595  89 16 B3 37 mov word ptr [37b3h],dx
-2599  E9 17 00    jmp 25b3h
-259C  8B 06 B5 37 mov ax,word ptr [37b5h]
-25A0  A3 AF 37    mov word ptr [37afh],ax
-25A3  8B 1E B7 37 mov bx,word ptr [37b7h]
-25A7  89 1E B1 37 mov word ptr [37b1h],bx
-25AB  8B 16 B9 37 mov dx,word ptr [37b9h]
-25AF  89 16 B3 37 mov word ptr [37b3h],dx
-25B3  8B 06 AF 37 mov ax,word ptr [37afh]
-25B7  A3 C1 37    mov word ptr [37c1h],ax
-25BA  8B 1E B1 37 mov bx,word ptr [37b1h]
-25BE  89 1E C3 37 mov word ptr [37c3h],bx
-25C2  8B 16 B3 37 mov dx,word ptr [37b3h]
-25C6  89 16 C5 37 mov word ptr [37c5h],dx
-25CA  8B 06 AF 37 mov ax,word ptr [37afh]
-25CE  A3 C7 37    mov word ptr [37c7h],ax
-25D1  8B 1E B1 37 mov bx,word ptr [37b1h]
-25D5  89 1E C9 37 mov word ptr [37c9h],bx
-25D9  8B 16 B3 37 mov dx,word ptr [37b3h]
-25DD  89 16 CB 37 mov word ptr [37cbh],dx
-25E1  BB C1 37    mov bx,37c1h
-25E4  53          push bx
-25E5  E8 98 DF    call 580h
-25E8  83 C4 02    add sp,2h
-25EB  8B 06 C1 37 mov ax,word ptr [37c1h]
-25EF  A3 BB 37    mov word ptr [37bbh],ax
-25F2  8B 1E C3 37 mov bx,word ptr [37c3h]
-25F6  89 1E BD 37 mov word ptr [37bdh],bx
-25FA  8B 16 C5 37 mov dx,word ptr [37c5h]
-25FE  89 16 BF 37 mov word ptr [37bfh],dx
-2602  8B 06 61 37 mov ax,word ptr [3761h]
-2606  A3 B5 37    mov word ptr [37b5h],ax
-2609  8B 1E 63 37 mov bx,word ptr [3763h]
-260D  89 1E B7 37 mov word ptr [37b7h],bx
-2611  8B 16 65 37 mov dx,word ptr [3765h]
-2615  89 16 B9 37 mov word ptr [37b9h],dx
-2619  8B 06 B5 37 mov ax,word ptr [37b5h]
-261D  A3 C1 37    mov word ptr [37c1h],ax
-2620  8B 1E B7 37 mov bx,word ptr [37b7h]
-2624  89 1E C3 37 mov word ptr [37c3h],bx
-2628  8B 16 B9 37 mov dx,word ptr [37b9h]
-262C  89 16 C5 37 mov word ptr [37c5h],dx
-2630  8B 06 BB 37 mov ax,word ptr [37bbh]
-2634  A3 C7 37    mov word ptr [37c7h],ax
-2637  8B 1E BD 37 mov bx,word ptr [37bdh]
-263B  89 1E C9 37 mov word ptr [37c9h],bx
-263F  8B 16 BF 37 mov dx,word ptr [37bfh]
-2643  89 16 CB 37 mov word ptr [37cbh],dx
-2647  BB C1 37    mov bx,37c1h
-264A  53          push bx
-264B  E8 32 DF    call 580h
-264E  83 C4 02    add sp,2h
-2651  8B 06 C1 37 mov ax,word ptr [37c1h]
-2655  A3 B5 37    mov word ptr [37b5h],ax
-2658  8B 1E C3 37 mov bx,word ptr [37c3h]
-265C  89 1E B7 37 mov word ptr [37b7h],bx
-2660  8B 16 C5 37 mov dx,word ptr [37c5h]
-2664  89 16 B9 37 mov word ptr [37b9h],dx
-2668  8B 06 B5 37 mov ax,word ptr [37b5h]
-266C  A3 C1 37    mov word ptr [37c1h],ax
-266F  8B 1E B7 37 mov bx,word ptr [37b7h]
-2673  89 1E C3 37 mov word ptr [37c3h],bx
-2677  8B 16 B9 37 mov dx,word ptr [37b9h]
-267B  89 16 C5 37 mov word ptr [37c5h],dx
-267F  8B 06 67 37 mov ax,word ptr [3767h]
-2683  A3 C7 37    mov word ptr [37c7h],ax
-2686  8B 1E 69 37 mov bx,word ptr [3769h]
-268A  89 1E C9 37 mov word ptr [37c9h],bx
-268E  8B 16 6B 37 mov dx,word ptr [376bh]
-2692  89 16 CB 37 mov word ptr [37cbh],dx
-2696  BB C1 37    mov bx,37c1h
-2699  53          push bx
-269A  E8 7B DD    call 418h
-269D  83 C4 02    add sp,2h
-26A0  8B 06 C1 37 mov ax,word ptr [37c1h]
-26A4  A3 B5 37    mov word ptr [37b5h],ax
-26A7  8B 1E C3 37 mov bx,word ptr [37c3h]
-26AB  89 1E B7 37 mov word ptr [37b7h],bx
-26AF  8B 16 C5 37 mov dx,word ptr [37c5h]
-26B3  89 16 B9 37 mov word ptr [37b9h],dx
-26B7  8B 06 B5 37 mov ax,word ptr [37b5h]
-26BB  A3 C1 37    mov word ptr [37c1h],ax
-26BE  8B 1E B7 37 mov bx,word ptr [37b7h]
-26C2  89 1E C3 37 mov word ptr [37c3h],bx
-26C6  8B 16 B9 37 mov dx,word ptr [37b9h]
-26CA  89 16 C5 37 mov word ptr [37c5h],dx
-26CE  8B 06 BB 37 mov ax,word ptr [37bbh]
-26D2  A3 C7 37    mov word ptr [37c7h],ax
-26D5  8B 1E BD 37 mov bx,word ptr [37bdh]
-26D9  89 1E C9 37 mov word ptr [37c9h],bx
-26DD  8B 16 BF 37 mov dx,word ptr [37bfh]
-26E1  89 16 CB 37 mov word ptr [37cbh],dx
-26E5  BB C1 37    mov bx,37c1h
-26E8  53          push bx
-26E9  E8 94 DE    call 580h
-26EC  83 C4 02    add sp,2h
-26EF  8B 06 C1 37 mov ax,word ptr [37c1h]
-26F3  A3 B5 37    mov word ptr [37b5h],ax
-26F6  8B 1E C3 37 mov bx,word ptr [37c3h]
-26FA  89 1E B7 37 mov word ptr [37b7h],bx
-26FE  8B 16 C5 37 mov dx,word ptr [37c5h]
-2702  89 16 B9 37 mov word ptr [37b9h],dx
-2706  8B 06 B5 37 mov ax,word ptr [37b5h]
-270A  A3 C1 37    mov word ptr [37c1h],ax
-270D  8B 1E B7 37 mov bx,word ptr [37b7h]
-2711  89 1E C3 37 mov word ptr [37c3h],bx
-2715  8B 16 B9 37 mov dx,word ptr [37b9h]
-2719  89 16 C5 37 mov word ptr [37c5h],dx
-271D  8B 06 6D 37 mov ax,word ptr [376dh]
-2721  A3 C7 37    mov word ptr [37c7h],ax
-2724  8B 1E 6F 37 mov bx,word ptr [376fh]
-2728  89 1E C9 37 mov word ptr [37c9h],bx
-272C  8B 16 71 37 mov dx,word ptr [3771h]
-2730  89 16 CB 37 mov word ptr [37cbh],dx
-2734  BB C1 37    mov bx,37c1h
-2737  53          push bx
-2738  E8 DD DC    call 418h
-273B  83 C4 02    add sp,2h
-273E  8B 06 C1 37 mov ax,word ptr [37c1h]
-2742  A3 B5 37    mov word ptr [37b5h],ax
-2745  8B 1E C3 37 mov bx,word ptr [37c3h]
-2749  89 1E B7 37 mov word ptr [37b7h],bx
-274D  8B 16 C5 37 mov dx,word ptr [37c5h]
-2751  89 16 B9 37 mov word ptr [37b9h],dx
-2755  8B 06 B5 37 mov ax,word ptr [37b5h]
-2759  A3 C1 37    mov word ptr [37c1h],ax
-275C  8B 1E B7 37 mov bx,word ptr [37b7h]
-2760  89 1E C3 37 mov word ptr [37c3h],bx
-2764  8B 16 B9 37 mov dx,word ptr [37b9h]
-2768  89 16 C5 37 mov word ptr [37c5h],dx
-276C  8B 06 BB 37 mov ax,word ptr [37bbh]
-2770  A3 C7 37    mov word ptr [37c7h],ax
-2773  8B 1E BD 37 mov bx,word ptr [37bdh]
-2777  89 1E C9 37 mov word ptr [37c9h],bx
-277B  8B 16 BF 37 mov dx,word ptr [37bfh]
-277F  89 16 CB 37 mov word ptr [37cbh],dx
-2783  BB C1 37    mov bx,37c1h
-2786  53          push bx
-2787  E8 F6 DD    call 580h
-278A  83 C4 02    add sp,2h
-278D  8B 06 C1 37 mov ax,word ptr [37c1h]
-2791  A3 B5 37    mov word ptr [37b5h],ax
-2794  8B 1E C3 37 mov bx,word ptr [37c3h]
-2798  89 1E B7 37 mov word ptr [37b7h],bx
-279C  8B 16 C5 37 mov dx,word ptr [37c5h]
-27A0  89 16 B9 37 mov word ptr [37b9h],dx
-27A4  8B 06 B5 37 mov ax,word ptr [37b5h]
-27A8  A3 C1 37    mov word ptr [37c1h],ax
-27AB  8B 1E B7 37 mov bx,word ptr [37b7h]
-27AF  89 1E C3 37 mov word ptr [37c3h],bx
-27B3  8B 16 B9 37 mov dx,word ptr [37b9h]
-27B7  89 16 C5 37 mov word ptr [37c5h],dx
-27BB  8B 06 73 37 mov ax,word ptr [3773h]
-27BF  A3 C7 37    mov word ptr [37c7h],ax
-27C2  8B 1E 75 37 mov bx,word ptr [3775h]
-27C6  89 1E C9 37 mov word ptr [37c9h],bx
-27CA  8B 16 77 37 mov dx,word ptr [3777h]
-27CE  89 16 CB 37 mov word ptr [37cbh],dx
-27D2  BB C1 37    mov bx,37c1h
-27D5  53          push bx
-27D6  E8 3F DC    call 418h
-27D9  83 C4 02    add sp,2h
-27DC  8B 06 C1 37 mov ax,word ptr [37c1h]
-27E0  A3 B5 37    mov word ptr [37b5h],ax
-27E3  8B 1E C3 37 mov bx,word ptr [37c3h]
-27E7  89 1E B7 37 mov word ptr [37b7h],bx
-27EB  8B 16 C5 37 mov dx,word ptr [37c5h]
-27EF  89 16 B9 37 mov word ptr [37b9h],dx
-27F3  8B 06 B5 37 mov ax,word ptr [37b5h]
-27F7  A3 C1 37    mov word ptr [37c1h],ax
-27FA  8B 1E B7 37 mov bx,word ptr [37b7h]
-27FE  89 1E C3 37 mov word ptr [37c3h],bx
-2802  8B 16 B9 37 mov dx,word ptr [37b9h]
-2806  89 16 C5 37 mov word ptr [37c5h],dx
-280A  8B 06 BB 37 mov ax,word ptr [37bbh]
-280E  A3 C7 37    mov word ptr [37c7h],ax
-2811  8B 1E BD 37 mov bx,word ptr [37bdh]
-2815  89 1E C9 37 mov word ptr [37c9h],bx
-2819  8B 16 BF 37 mov dx,word ptr [37bfh]
-281D  89 16 CB 37 mov word ptr [37cbh],dx
-2821  BB C1 37    mov bx,37c1h
-2824  53          push bx
-2825  E8 58 DD    call 580h
-2828  83 C4 02    add sp,2h
-282B  8B 06 C1 37 mov ax,word ptr [37c1h]
-282F  A3 B5 37    mov word ptr [37b5h],ax
-2832  8B 1E C3 37 mov bx,word ptr [37c3h]
-2836  89 1E B7 37 mov word ptr [37b7h],bx
-283A  8B 16 C5 37 mov dx,word ptr [37c5h]
-283E  89 16 B9 37 mov word ptr [37b9h],dx
-2842  8B 06 B5 37 mov ax,word ptr [37b5h]
-2846  A3 C1 37    mov word ptr [37c1h],ax
-2849  8B 1E B7 37 mov bx,word ptr [37b7h]
-284D  89 1E C3 37 mov word ptr [37c3h],bx
-2851  8B 16 B9 37 mov dx,word ptr [37b9h]
-2855  89 16 C5 37 mov word ptr [37c5h],dx
-2859  8B 06 79 37 mov ax,word ptr [3779h]
-285D  A3 C7 37    mov word ptr [37c7h],ax
-2860  8B 1E 7B 37 mov bx,word ptr [377bh]
-2864  89 1E C9 37 mov word ptr [37c9h],bx
-2868  8B 16 7D 37 mov dx,word ptr [377dh]
-286C  89 16 CB 37 mov word ptr [37cbh],dx
-2870  BB C1 37    mov bx,37c1h
-2873  53          push bx
-2874  E8 A1 DB    call 418h
-2877  83 C4 02    add sp,2h
-287A  8B 06 C1 37 mov ax,word ptr [37c1h]
-287E  A3 B5 37    mov word ptr [37b5h],ax
-2881  8B 1E C3 37 mov bx,word ptr [37c3h]
-2885  89 1E B7 37 mov word ptr [37b7h],bx
-2889  8B 16 C5 37 mov dx,word ptr [37c5h]
-288D  89 16 B9 37 mov word ptr [37b9h],dx
-2891  8B 06 B5 37 mov ax,word ptr [37b5h]
-2895  A3 C1 37    mov word ptr [37c1h],ax
-2898  8B 1E B7 37 mov bx,word ptr [37b7h]
-289C  89 1E C3 37 mov word ptr [37c3h],bx
-28A0  8B 16 B9 37 mov dx,word ptr [37b9h]
-28A4  89 16 C5 37 mov word ptr [37c5h],dx
-28A8  8B 06 BB 37 mov ax,word ptr [37bbh]
-28AC  A3 C7 37    mov word ptr [37c7h],ax
-28AF  8B 1E BD 37 mov bx,word ptr [37bdh]
-28B3  89 1E C9 37 mov word ptr [37c9h],bx
-28B7  8B 16 BF 37 mov dx,word ptr [37bfh]
-28BB  89 16 CB 37 mov word ptr [37cbh],dx
-28BF  BB C1 37    mov bx,37c1h
-28C2  53          push bx
-28C3  E8 BA DC    call 580h
-28C6  83 C4 02    add sp,2h
-28C9  8B 06 C1 37 mov ax,word ptr [37c1h]
-28CD  A3 B5 37    mov word ptr [37b5h],ax
-28D0  8B 1E C3 37 mov bx,word ptr [37c3h]
-28D4  89 1E B7 37 mov word ptr [37b7h],bx
-28D8  8B 16 C5 37 mov dx,word ptr [37c5h]
-28DC  89 16 B9 37 mov word ptr [37b9h],dx
-28E0  8B 06 B5 37 mov ax,word ptr [37b5h]
-28E4  A3 C1 37    mov word ptr [37c1h],ax
-28E7  8B 1E B7 37 mov bx,word ptr [37b7h]
-28EB  89 1E C3 37 mov word ptr [37c3h],bx
-28EF  8B 16 B9 37 mov dx,word ptr [37b9h]
-28F3  89 16 C5 37 mov word ptr [37c5h],dx
-28F7  8B 06 95 36 mov ax,word ptr [3695h]
-28FB  A3 C7 37    mov word ptr [37c7h],ax
-28FE  8B 1E 97 36 mov bx,word ptr [3697h]
-2902  89 1E C9 37 mov word ptr [37c9h],bx
-2906  8B 16 99 36 mov dx,word ptr [3699h]
-290A  89 16 CB 37 mov word ptr [37cbh],dx
-290E  BB C1 37    mov bx,37c1h
-2911  53          push bx
-2912  E8 03 DB    call 418h
-2915  83 C4 02    add sp,2h
-2918  8B 06 C1 37 mov ax,word ptr [37c1h]
-291C  A3 B5 37    mov word ptr [37b5h],ax
-291F  8B 1E C3 37 mov bx,word ptr [37c3h]
-2923  89 1E B7 37 mov word ptr [37b7h],bx
-2927  8B 16 C5 37 mov dx,word ptr [37c5h]
-292B  89 16 B9 37 mov word ptr [37b9h],dx
-292F  8B 06 B5 37 mov ax,word ptr [37b5h]
-2933  A3 C1 37    mov word ptr [37c1h],ax
-2936  8B 1E B7 37 mov bx,word ptr [37b7h]
-293A  89 1E C3 37 mov word ptr [37c3h],bx
-293E  8B 16 B9 37 mov dx,word ptr [37b9h]
-2942  89 16 C5 37 mov word ptr [37c5h],dx
-2946  8B 06 AF 37 mov ax,word ptr [37afh]
-294A  A3 C7 37    mov word ptr [37c7h],ax
-294D  8B 1E B1 37 mov bx,word ptr [37b1h]
-2951  89 1E C9 37 mov word ptr [37c9h],bx
-2955  8B 16 B3 37 mov dx,word ptr [37b3h]
-2959  89 16 CB 37 mov word ptr [37cbh],dx
-295D  BB C1 37    mov bx,37c1h
-2960  53          push bx
-2961  E8 1C DC    call 580h
-2964  83 C4 02    add sp,2h
-2967  8B 06 C1 37 mov ax,word ptr [37c1h]
-296B  A3 B5 37    mov word ptr [37b5h],ax
-296E  8B 1E C3 37 mov bx,word ptr [37c3h]
-2972  89 1E B7 37 mov word ptr [37b7h],bx
-2976  8B 16 C5 37 mov dx,word ptr [37c5h]
-297A  89 16 B9 37 mov word ptr [37b9h],dx
-297E  F6 06 DC 37 01 test byte ptr [37dch],1h
-2983  75 03       jne 2988h
-2985  E9 4F 00    jmp 29d7h
-2988  8B 06 B5 37 mov ax,word ptr [37b5h]
-298C  A3 C1 37    mov word ptr [37c1h],ax
-298F  8B 1E B7 37 mov bx,word ptr [37b7h]
-2993  89 1E C3 37 mov word ptr [37c3h],bx
-2997  8B 16 B9 37 mov dx,word ptr [37b9h]
-299B  89 16 C5 37 mov word ptr [37c5h],dx
-299F  8B 06 E3 37 mov ax,word ptr [37e3h]
-29A3  A3 C7 37    mov word ptr [37c7h],ax
-29A6  8B 1E E5 37 mov bx,word ptr [37e5h]
-29AA  89 1E C9 37 mov word ptr [37c9h],bx
-29AE  8B 16 E7 37 mov dx,word ptr [37e7h]
-29B2  89 16 CB 37 mov word ptr [37cbh],dx
-29B6  BB C1 37    mov bx,37c1h
-29B9  53          push bx
-29BA  E8 5B DA    call 418h
-29BD  83 C4 02    add sp,2h
-29C0  8B 06 C1 37 mov ax,word ptr [37c1h]
-29C4  A3 B5 37    mov word ptr [37b5h],ax
-29C7  8B 1E C3 37 mov bx,word ptr [37c3h]
-29CB  89 1E B7 37 mov word ptr [37b7h],bx
-29CF  8B 16 C5 37 mov dx,word ptr [37c5h]
-29D3  89 16 B9 37 mov word ptr [37b9h],dx
-29D7  F6 06 DB 37 01 test byte ptr [37dbh],1h
-29DC  75 03       jne 29e1h
-29DE  E9 4F 00    jmp 2a30h
-29E1  8B 06 2B 37 mov ax,word ptr [372bh]
-29E5  A3 C1 37    mov word ptr [37c1h],ax
-29E8  8B 1E 2D 37 mov bx,word ptr [372dh]
-29EC  89 1E C3 37 mov word ptr [37c3h],bx
-29F0  8B 16 2F 37 mov dx,word ptr [372fh]
-29F4  89 16 C5 37 mov word ptr [37c5h],dx
-29F8  8B 06 B5 37 mov ax,word ptr [37b5h]
-29FC  A3 C7 37    mov word ptr [37c7h],ax
-29FF  8B 1E B7 37 mov bx,word ptr [37b7h]
-2A03  89 1E C9 37 mov word ptr [37c9h],bx
-2A07  8B 16 B9 37 mov dx,word ptr [37b9h]
-2A0B  89 16 CB 37 mov word ptr [37cbh],dx
-2A0F  BB C1 37    mov bx,37c1h
-2A12  53          push bx
-2A13  E8 3E DA    call 454h
-2A16  83 C4 02    add sp,2h
-2A19  8B 06 C1 37 mov ax,word ptr [37c1h]
-2A1D  A3 B5 37    mov word ptr [37b5h],ax
-2A20  8B 1E C3 37 mov bx,word ptr [37c3h]
-2A24  89 1E B7 37 mov word ptr [37b7h],bx
-2A28  8B 16 C5 37 mov dx,word ptr [37c5h]
-2A2C  89 16 B9 37 mov word ptr [37b9h],dx
-2A30  F6 06 DA 37 01 test byte ptr [37dah],1h
-2A35  75 03       jne 2a3ah
-2A37  E9 1E 00    jmp 2a58h
-2A3A  8B 06 B5 37 mov ax,word ptr [37b5h]
-2A3E  A3 B5 37    mov word ptr [37b5h],ax
-2A41  8B 1E B7 37 mov bx,word ptr [37b7h]
-2A45  89 1E B7 37 mov word ptr [37b7h],bx
-2A49  8B 16 B9 37 mov dx,word ptr [37b9h]
-2A4D  89 16 B9 37 mov word ptr [37b9h],dx
-2A51  BF B5 37    mov di,37b5h
-2A54  80 75 05 80 xor byte ptr [di+5h],80h
-2A58  5F          pop di
-2A59  8B 06 B5 37 mov ax,word ptr [37b5h]
-2A5D  8B 1E B7 37 mov bx,word ptr [37b7h]
-2A61  8B 16 B9 37 mov dx,word ptr [37b9h]
-2A65  89 05       mov word ptr [di],ax
-2A67  89 5D 02    mov word ptr [di+2h],bx
-2A6A  89 55 04    mov word ptr [di+4h],dx
-2A6D  EB 00       jmp 2a6fh
-2A6F  5F          pop di
-2A70  5E          pop si
-2A71  5A          pop dx
-2A72  5B          pop bx
-2A73  89 EC       mov sp,bp
-2A75  5D          pop bp
-2A76  C3          ret
-2A77  55          push bp
-2A78  8B EC       mov bp,sp
-2A7A  53          push bx
-2A7B  52          push dx
-2A7C  56          push si
-2A7D  57          push di
-2A7E  8B 7E 04    mov di,word ptr [bp+4h]
-2A81  88 EA       mov dl,ch
-2A83  B5 00       mov ch,0h
-2A85  B6 00       mov dh,0h
-2A87  51          push cx
-2A88  BB 2F 35    mov bx,352fh
-2A8B  E8 41 02    call 2ccfh
-2A8E  59          pop cx
-2A8F  89 D8       mov ax,bx
-2A91  BB 2F 35    mov bx,352fh
-2A94  2B C3       sub ax,bx
-2A96  A3 6F 35    mov word ptr [356fh],ax
-2A99  89 0E 71 35 mov word ptr [3571h],cx
-2A9D  8B 06 71 35 mov ax,word ptr [3571h]
-2AA1  8B 16 6F 35 mov dx,word ptr [356fh]
-2AA5  2B C2       sub ax,dx
-2AA7  83 F8 00    cmp ax,0h
-2AAA  7D 02       jnl 2aaeh
-2AAC  31 C0       xor ax,ax
-2AAE  A3 73 35    mov word ptr [3573h],ax
-2AB1  8B 16 6F 35 mov dx,word ptr [356fh]
-2AB5  03 C2       add ax,dx
-2AB7  3D FF 00    cmp ax,0ffh
-2ABA  77 03       jnbe 2abfh
-2ABC  E9 03 00    jmp 2ac2h
-2ABF  B8 FF 00    mov ax,0ffh
-2AC2  A3 75 35    mov word ptr [3575h],ax
-2AC5  8B 56 06    mov dx,word ptr [bp+6h]
-2AC8  89 D7       mov di,dx
-2ACA  88 05       mov byte ptr [di],al
-2ACC  47          inc di
-2ACD  8B 0E 73 35 mov cx,word ptr [3573h]
-2AD1  E3 07       jcxz 2adah
-2AD3  B0 20       mov al,20h
-2AD5  88 05       mov byte ptr [di],al
-2AD7  47          inc di
-2AD8  E2 F9       loop 2ad3h
-2ADA  BE 2F 35    mov si,352fh
-2ADD  8B 0E 6F 35 mov cx,word ptr [356fh]
-2AE1  E3 08       jcxz 2aebh
-2AE3  8A 04       mov al,byte ptr [si]
-2AE5  88 05       mov byte ptr [di],al
-2AE7  46          inc si
-2AE8  47          inc di
-2AE9  E2 F8       loop 2ae3h
-2AEB  8B 06 75 35 mov ax,word ptr [3575h]
-2AEF  5F          pop di
-2AF0  5E          pop si
-2AF1  5A          pop dx
-2AF2  5B          pop bx
-2AF3  89 EC       mov sp,bp
-2AF5  5D          pop bp
-2AF6  C3          ret
-2AF7  55          push bp
-2AF8  8B EC       mov bp,sp
-2AFA  53          push bx
-2AFB  52          push dx
-2AFC  56          push si
-2AFD  57          push di
-2AFE  8B 5E 04    mov bx,word ptr [bp+4h]
-2B01  8B 7E 06    mov di,word ptr [bp+6h]
-2B04  89 1E 77 35 mov word ptr [3577h],bx
-2B08  E8 CF 02    call 2ddah
-2B0B  73 03       jnb 2b10h
-2B0D  E9 0B 00    jmp 2b1bh
-2B10  89 D8       mov ax,bx
-2B12  8B 16 77 35 mov dx,word ptr [3577h]
-2B16  2B C2       sub ax,dx
-2B18  E9 03 00    jmp 2b1eh
-2B1B  B8 FF FF    mov ax,0ffffh
-2B1E  5F          pop di
-2B1F  5E          pop si
-2B20  5A          pop dx
-2B21  5B          pop bx
-2B22  89 EC       mov sp,bp
-2B24  5D          pop bp
-2B25  C3          ret
-2B26  3C 00       cmp al,0h
-2B28  74 03       je 2b2dh
-2B2A  E9 01 00    jmp 2b2eh
-2B2D  C3          ret
-2B2E  80 CE 80    or dh,80h
-2B31  51          push cx
-2B32  52          push dx
-2B33  53          push bx
-2B34  50          push ax
-2B35  D1 EA       shr dx,1h
-2B37  D1 DB       rcr bx,1h
-2B39  D0 DC       rcr ah,1h
-2B3B  D1 EA       shr dx,1h
-2B3D  D1 DB       rcr bx,1h
-2B3F  D0 DC       rcr ah,1h
-2B41  59          pop cx
-2B42  00 EC       add ah,ch
-2B44  59          pop cx
-2B45  13 D9       adc bx,cx
-2B47  59          pop cx
-2B48  13 D1       adc dx,cx
-2B4A  59          pop cx
-2B4B  72 03       jb 2b50h
-2B4D  E9 0F 00    jmp 2b5fh
-2B50  D1 DA       rcr dx,1h
-2B52  D1 DB       rcr bx,1h
-2B54  D0 DC       rcr ah,1h
-2B56  FE C0       inc al
-2B58  74 03       je 2b5dh
-2B5A  E9 02 00    jmp 2b5fh
-2B5D  F9          stc
-2B5E  C3          ret
-2B5F  80 E6 7F    and dh,7fh
-2B62  04 03       add al,3h
-2B64  C3          ret
-2B65  52          push dx
-2B66  53          push bx
-2B67  50          push ax
-2B68  88 0E F1 34 mov byte ptr [34f1h],cl
-2B6C  80 F9 00    cmp cl,0h
-2B6F  78 03       js 2b74h
-2B71  E9 02 00    jmp 2b76h
-2B74  F6 D9       neg cl
-2B76  88 CB       mov bl,cl
-2B78  80 E3 FC    and bl,0fch
-2B7B  88 DF       mov bh,bl
-2B7D  D0 EB       shr bl,1h
-2B7F  00 FB       add bl,bh
-2B81  30 FF       xor bh,bh
-2B83  8D BF F3 34 lea di,[bx+34f3h]
-2B87  8B 05       mov ax,word ptr [di]
-2B89  8B 5D 02    mov bx,word ptr [di+2h]
-2B8C  8B 55 04    mov dx,word ptr [di+4h]
-2B8F  80 E1 03    and cl,3h
-2B92  75 03       jne 2b97h
-2B94  E9 0A 00    jmp 2ba1h
-2B97  E8 8C FF    call 2b26h
-2B9A  FE C9       dec cl
-2B9C  74 03       je 2ba1h
-2B9E  E9 F6 FF    jmp 2b97h
-2BA1  89 C1       mov cx,ax
-2BA3  89 DE       mov si,bx
-2BA5  89 D7       mov di,dx
-2BA7  58          pop ax
-2BA8  5B          pop bx
-2BA9  5A          pop dx
-2BAA  F6 06 F1 34 80 test byte ptr [34f1h],80h
-2BAF  74 03       je 2bb4h
-2BB1  E9 03 00    jmp 2bb7h
-2BB4  E9 FF D9    jmp 5b6h
-2BB7  E9 E5 DA    jmp 69fh
-2BBA  80 F9 DA    cmp cl,0dah
-2BBD  7D 03       jnl 2bc2h
-2BBF  E9 12 00    jmp 2bd4h
-2BC2  80 F9 26    cmp cl,26h
-2BC5  7E 03       jle 2bcah
-2BC7  E9 0A 00    jmp 2bd4h
-2BCA  51          push cx
-2BCB  56          push si
-2BCC  57          push di
-2BCD  E8 95 FF    call 2b65h
-2BD0  5F          pop di
-2BD1  5E          pop si
-2BD2  59          pop cx
-2BD3  C3          ret
-2BD4  F9          stc
-2BD5  C3          ret
-2BD6  8B 05       mov ax,word ptr [di]
-2BD8  8B 5D 02    mov bx,word ptr [di+2h]
-2BDB  8B 55 04    mov dx,word ptr [di+4h]
-2BDE  3C 00       cmp al,0h
-2BE0  74 03       je 2be5h
-2BE2  E9 16 00    jmp 2bfbh
-2BE5  BE E5 34    mov si,34e5h
-2BE8  C7 04 30 30 mov word ptr [si],3030h
-2BEC  46          inc si
-2BED  46          inc si
-2BEE  81 FE F1 34 cmp si,34f1h
-2BF2  74 03       je 2bf7h
-2BF4  E9 F1 FF    jmp 2be8h
-2BF7  B9 00 00    mov cx,0h
-2BFA  C3          ret
-2BFB  88 F5       mov ch,dh
-2BFD  80 E6 7F    and dh,7fh
-2C00  50          push ax
-2C01  52          push dx
-2C02  2C 80       sub al,80h
-2C04  98          cbw
-2C05  BA 4D 00    mov dx,4dh
-2C08  F7 EA       imul dx
-2C0A  05 05 00    add ax,5h
-2C0D  88 E1       mov cl,ah
-2C0F  5A          pop dx
-2C10  58          pop ax
-2C11  80 F9 D9    cmp cl,0d9h
-2C14  74 03       je 2c19h
-2C16  E9 02 00    jmp 2c1bh
-2C19  FE C1       inc cl
-2C1B  51          push cx
-2C1C  F6 D9       neg cl
-2C1E  E8 44 FF    call 2b65h
-2C21  59          pop cx
-2C22  3C 81       cmp al,81h
-2C24  72 03       jb 2c29h
-2C26  E9 05 00    jmp 2c2eh
-2C29  E8 FA FE    call 2b26h
-2C2C  FE C9       dec cl
-2C2E  51          push cx
-2C2F  80 CE 80    or dh,80h
-2C32  B1 84       mov cl,84h
-2C34  28 C1       sub cl,al
-2C36  B0 00       mov al,0h
-2C38  80 F9 00    cmp cl,0h
-2C3B  75 03       jne 2c40h
-2C3D  E9 0D 00    jmp 2c4dh
-2C40  D1 EA       shr dx,1h
-2C42  D1 DB       rcr bx,1h
-2C44  D0 DC       rcr ah,1h
-2C46  FE C9       dec cl
-2C48  74 03       je 2c4dh
-2C4A  E9 F3 FF    jmp 2c40h
-2C4D  BE E5 34    mov si,34e5h
-2C50  88 F5       mov ch,dh
-2C52  B1 04       mov cl,4h
-2C54  D2 ED       shr ch,cl
-2C56  80 C5 30    add ch,30h
-2C59  88 2C       mov byte ptr [si],ch
-2C5B  80 E6 0F    and dh,0fh
-2C5E  52          push dx
-2C5F  53          push bx
-2C60  50          push ax
-2C61  D1 E0       shl ax,1h
-2C63  D1 D3       rcl bx,1h
-2C65  D1 D2       rcl dx,1h
-2C67  D1 E0       shl ax,1h
-2C69  D1 D3       rcl bx,1h
-2C6B  D1 D2       rcl dx,1h
-2C6D  59          pop cx
-2C6E  03 C1       add ax,cx
-2C70  59          pop cx
-2C71  13 D9       adc bx,cx
-2C73  59          pop cx
-2C74  13 D1       adc dx,cx
-2C76  D1 E0       shl ax,1h
-2C78  D1 D3       rcl bx,1h
-2C7A  D1 D2       rcl dx,1h
-2C7C  46          inc si
-2C7D  81 FE F1 34 cmp si,34f1h
-2C81  74 03       je 2c86h
-2C83  E9 CA FF    jmp 2c50h
-2C86  59          pop cx
-2C87  C3          ret
-2C88  30 E4       xor ah,ah
-2C8A  BB E5 34    mov bx,34e5h
-2C8D  03 D8       add bx,ax
-2C8F  80 3F 35    cmp byte ptr [bx],35h
-2C92  C6 07 00    mov byte ptr [bx],0h
-2C95  73 03       jnb 2c9ah
-2C97  E9 21 00    jmp 2cbbh
-2C9A  FE C8       dec al
-2C9C  79 03       jns 2ca1h
-2C9E  E9 11 00    jmp 2cb2h
-2CA1  4B          dec bx
-2CA2  FE 07       inc byte ptr [bx]
-2CA4  80 3F 3A    cmp byte ptr [bx],3ah
-2CA7  73 03       jnb 2cach
-2CA9  E9 0F 00    jmp 2cbbh
-2CAC  C6 07 00    mov byte ptr [bx],0h
-2CAF  E9 E8 FF    jmp 2c9ah
-2CB2  C6 07 31    mov byte ptr [bx],31h
-2CB5  C6 47 01 00 mov byte ptr [bx+1h],0h
-2CB9  FE C1       inc cl
-2CBB  C3          ret
-2CBC  8A 04       mov al,byte ptr [si]
-2CBE  3C 00       cmp al,0h
-2CC0  75 03       jne 2cc5h
-2CC2  E9 04 00    jmp 2cc9h
-2CC5  46          inc si
-2CC6  E9 02 00    jmp 2ccbh
-2CC9  B0 30       mov al,30h
-2CCB  88 07       mov byte ptr [bx],al
-2CCD  43          inc bx
-2CCE  C3          ret
-2CCF  53          push bx
-2CD0  81 FA 19 00 cmp dx,19h
-2CD4  73 03       jnb 2cd9h
-2CD6  E9 3F 00    jmp 2d18h
-2CD9  89 C8       mov ax,cx
-2CDB  80 FD 00    cmp ch,0h
-2CDE  75 03       jne 2ce3h
-2CE0  E9 10 00    jmp 2cf3h
-2CE3  F6 C5 80    test ch,80h
-2CE6  75 03       jne 2cebh
-2CE8  E9 05 00    jmp 2cf0h
-2CEB  31 C0       xor ax,ax
-2CED  E9 03 00    jmp 2cf3h
-2CF0  B8 FF 00    mov ax,0ffh
-2CF3  B2 07       mov dl,7h
-2CF5  F6 45 05 80 test byte ptr [di+5h],80h
-2CF9  75 03       jne 2cfeh
-2CFB  E9 02 00    jmp 2d00h
-2CFE  FE C2       inc dl
-2D00  2A C2       sub al,dl
-2D02  72 03       jb 2d07h
-2D04  E9 02 00    jmp 2d09h
-2D07  B0 00       mov al,0h
-2D09  3C 09       cmp al,9h
-2D0B  73 03       jnb 2d10h
-2D0D  E9 02 00    jmp 2d12h
-2D10  B0 09       mov al,9h
-2D12  FE C0       inc al
-2D14  88 C2       mov dl,al
-2D16  88 C6       mov dh,al
-2D18  52          push dx
-2D19  E8 BA FE    call 2bd6h
-2D1C  5A          pop dx
-2D1D  8A C2       mov al,dl
-2D1F  FE C0       inc al
-2D21  80 FE 00    cmp dh,0h
-2D24  74 03       je 2d29h
-2D26  E9 18 00    jmp 2d41h
-2D29  00 C8       add al,cl
-2D2B  78 03       js 2d30h
-2D2D  E9 08 00    jmp 2d38h
-2D30  C6 06 E5 34 00 mov byte ptr [34e5h],0h
-2D35  E9 0C 00    jmp 2d44h
-2D38  3C 0C       cmp al,0ch
-2D3A  73 03       jnb 2d3fh
-2D3C  E9 02 00    jmp 2d41h
-2D3F  B0 0B       mov al,0bh
-2D41  E8 44 FF    call 2c88h
-2D44  5B          pop bx
-2D45  BE E5 34    mov si,34e5h
-2D48  F6 C5 80    test ch,80h
-2D4B  75 03       jne 2d50h
-2D4D  E9 05 00    jmp 2d55h
-2D50  B0 2D       mov al,2dh
-2D52  E8 76 FF    call 2ccbh
-2D55  88 CD       mov ch,cl
-2D57  80 FE 00    cmp dh,0h
-2D5A  75 03       jne 2d5fh
-2D5C  E9 02 00    jmp 2d61h
-2D5F  B5 00       mov ch,0h
-2D61  80 FD 00    cmp ch,0h
-2D64  78 03       js 2d69h
-2D66  E9 06 00    jmp 2d6fh
-2D69  E8 5D FF    call 2cc9h
-2D6C  E9 0A 00    jmp 2d79h
-2D6F  E8 4A FF    call 2cbch
-2D72  FE CD       dec ch
-2D74  78 03       js 2d79h
-2D76  E9 F6 FF    jmp 2d6fh
-2D79  80 FA 00    cmp dl,0h
-2D7C  75 03       jne 2d81h
-2D7E  E9 23 00    jmp 2da4h
-2D81  B0 2E       mov al,2eh
-2D83  E8 45 FF    call 2ccbh
-2D86  FE C5       inc ch
-2D88  75 03       jne 2d8dh
-2D8A  E9 0A 00    jmp 2d97h
-2D8D  E8 39 FF    call 2cc9h
-2D90  FE CA       dec dl
-2D92  74 03       je 2d97h
-2D94  E9 EF FF    jmp 2d86h
-2D97  FE CA       dec dl
-2D99  79 03       jns 2d9eh
-2D9B  E9 06 00    jmp 2da4h
-2D9E  E8 1B FF    call 2cbch
-2DA1  E9 F3 FF    jmp 2d97h
-2DA4  80 FE 00    cmp dh,0h
-2DA7  74 03       je 2dach
-2DA9  E9 01 00    jmp 2dadh
-2DAC  C3          ret
-2DAD  B0 45       mov al,45h
-2DAF  E8 19 FF    call 2ccbh
-2DB2  B0 2B       mov al,2bh
-2DB4  80 F9 00    cmp cl,0h
-2DB7  78 03       js 2dbch
-2DB9  E9 04 00    jmp 2dc0h
-2DBC  F6 D9       neg cl
-2DBE  B0 2D       mov al,2dh
-2DC0  E8 08 FF    call 2ccbh
-2DC3  B0 2F       mov al,2fh
-2DC5  FE C0       inc al
-2DC7  80 E9 0A    sub cl,0ah
-2DCA  72 03       jb 2dcfh
-2DCC  E9 F6 FF    jmp 2dc5h
-2DCF  E8 F9 FE    call 2ccbh
-2DD2  80 C1 3A    add cl,3ah
-2DD5  88 C8       mov al,cl
-2DD7  E9 F1 FE    jmp 2ccbh
-2DDA  8A 0F       mov cl,byte ptr [bx]
-2DDC  80 F9 2D    cmp cl,2dh
-2DDF  74 03       je 2de4h
-2DE1  E9 01 00    jmp 2de5h
-2DE4  43          inc bx
-2DE5  51          push cx
-2DE6  E8 1F 00    call 2e08h
-2DE9  59          pop cx
-2DEA  73 03       jnb 2defh
-2DEC  E9 17 00    jmp 2e06h
-2DEF  80 F9 2D    cmp cl,2dh
-2DF2  74 03       je 2df7h
-2DF4  E9 0D 00    jmp 2e04h
-2DF7  8A 05       mov al,byte ptr [di]
-2DF9  3C 00       cmp al,0h
-2DFB  75 03       jne 2e00h
-2DFD  E9 04 00    jmp 2e04h
-2E00  80 75 05 80 xor byte ptr [di+5h],80h
-2E04  F8          clc
-2E05  C3          ret
-2E06  F9          stc
-2E07  C3          ret
-2E08  89 DE       mov si,bx
-2E0A  31 C0       xor ax,ax
-2E0C  31 DB       xor bx,bx
-2E0E  31 D2       xor dx,dx
-2E10  31 C9       xor cx,cx
-2E12  C6 06 F2 34 00 mov byte ptr [34f2h],0h
-2E17  8A 0C       mov cl,byte ptr [si]
-2E19  80 F9 61    cmp cl,61h
-2E1C  73 03       jnb 2e21h
-2E1E  E9 08 00    jmp 2e29h
-2E21  80 F9 7A    cmp cl,7ah
-2E24  77 03       jnbe 2e29h
-2E26  80 E9 20    sub cl,20h
-2E29  E8 C8 00    call 2ef4h
-2E2C  73 03       jnb 2e31h
-2E2E  E9 3A 00    jmp 2e6bh
-2E31  E8 F2 FC    call 2b26h
-2E34  73 03       jnb 2e39h
-2E36  E9 B5 00    jmp 2eeeh
-2E39  57          push di
-2E3A  56          push si
-2E3B  51          push cx
-2E3C  52          push dx
-2E3D  53          push bx
-2E3E  50          push ax
-2E3F  88 C8       mov al,cl
-2E41  30 E4       xor ah,ah
-2E43  E8 9A D5    call 3e0h
-2E46  89 C1       mov cx,ax
-2E48  89 DE       mov si,bx
-2E4A  89 D7       mov di,dx
-2E4C  58          pop ax
-2E4D  5B          pop bx
-2E4E  5A          pop dx
-2E4F  C7 06 D4 34 00 00 mov word ptr [34d4h],0h
-2E55  E8 38 D6    call 490h
-2E58  59          pop cx
-2E59  5E          pop si
-2E5A  5F          pop di
-2E5B  F6 C5 40    test ch,40h
-2E5E  75 03       jne 2e63h
-2E60  E9 04 00    jmp 2e67h
-2E63  FE 0E F2 34 dec byte ptr [34f2h]
-2E67  46          inc si
-2E68  E9 AC FF    jmp 2e17h
-2E6B  80 F9 2E    cmp cl,2eh
-2E6E  74 03       je 2e73h
-2E70  E9 0E 00    jmp 2e81h
-2E73  F6 C5 40    test ch,40h
-2E76  74 03       je 2e7bh
-2E78  E9 73 00    jmp 2eeeh
-2E7B  80 CD 40    or ch,40h
-2E7E  E9 E6 FF    jmp 2e67h
-2E81  80 F9 45    cmp cl,45h
-2E84  8A 0E F2 34 mov cl,byte ptr [34f2h]
-2E88  74 03       je 2e8dh
-2E8A  E9 4D 00    jmp 2edah
-2E8D  E8 2A FD    call 2bbah
-2E90  73 03       jnb 2e95h
-2E92  E9 59 00    jmp 2eeeh
-2E95  46          inc si
-2E96  8A 0C       mov cl,byte ptr [si]
-2E98  80 F9 2B    cmp cl,2bh
-2E9B  75 03       jne 2ea0h
-2E9D  E9 0B 00    jmp 2eabh
-2EA0  80 F9 2D    cmp cl,2dh
-2EA3  74 03       je 2ea8h
-2EA5  E9 04 00    jmp 2each
-2EA8  80 CD 20    or ch,20h
-2EAB  46          inc si
-2EAC  E8 43 00    call 2ef2h
-2EAF  73 03       jnb 2eb4h
-2EB1  E9 3A 00    jmp 2eeeh
-2EB4  50          push ax
-2EB5  88 C8       mov al,cl
-2EB7  46          inc si
-2EB8  E8 37 00    call 2ef2h
-2EBB  73 03       jnb 2ec0h
-2EBD  E9 0D 00    jmp 2ecdh
-2EC0  88 C4       mov ah,al
-2EC2  D0 E0       shl al,1h
-2EC4  D0 E0       shl al,1h
-2EC6  00 E0       add al,ah
-2EC8  D0 E0       shl al,1h
-2ECA  00 C8       add al,cl
-2ECC  46          inc si
-2ECD  88 C1       mov cl,al
-2ECF  58          pop ax
-2ED0  F6 C5 20    test ch,20h
-2ED3  75 03       jne 2ed8h
-2ED5  E9 02 00    jmp 2edah
-2ED8  F6 D9       neg cl
-2EDA  E8 DD FC    call 2bbah
-2EDD  73 03       jnb 2ee2h
-2EDF  E9 0C 00    jmp 2eeeh
-2EE2  89 05       mov word ptr [di],ax
-2EE4  89 5D 02    mov word ptr [di+2h],bx
-2EE7  89 55 04    mov word ptr [di+4h],dx
-2EEA  F8          clc
-2EEB  E9 01 00    jmp 2eefh
-2EEE  F9          stc
-2EEF  89 F3       mov bx,si
-2EF1  C3          ret
-2EF2  8A 0C       mov cl,byte ptr [si]
-2EF4  80 F9 30    cmp cl,30h
-2EF7  73 03       jnb 2efch
-2EF9  E9 0C 00    jmp 2f08h
-2EFC  80 F9 3A    cmp cl,3ah
-2EFF  F5          cmc
-2F00  73 03       jnb 2f05h
-2F02  E9 03 00    jmp 2f08h
-2F05  80 E9 30    sub cl,30h
-2F08  C3          ret
-2F09  55          push bp
-2F0A  8B EC       mov bp,sp
-2F0C  53          push bx
-2F0D  52          push dx
-2F0E  56          push si
-2F0F  57          push di
-2F10  8B 46 06    mov ax,word ptr [bp+6h]
-2F13  A3 71 35    mov word ptr [3571h],ax
-2F16  8B 56 04    mov dx,word ptr [bp+4h]
-2F19  8B 4E 06    mov cx,word ptr [bp+6h]
-2F1C  8B 7E 08    mov di,word ptr [bp+8h]
-2F1F  BB 2F 35    mov bx,352fh
-2F22  E8 AA FD    call 2ccfh
-2F25  89 D8       mov ax,bx
-2F27  BB 2F 35    mov bx,352fh
-2F2A  2B C3       sub ax,bx
-2F2C  A3 6F 35    mov word ptr [356fh],ax
-2F2F  8B 06 71 35 mov ax,word ptr [3571h]
-2F33  8B 16 6F 35 mov dx,word ptr [356fh]
-2F37  2B C2       sub ax,dx
-2F39  83 F8 00    cmp ax,0h
-2F3C  7D 02       jnl 2f40h
-2F3E  31 C0       xor ax,ax
-2F40  A3 73 35    mov word ptr [3573h],ax
-2F43  8B 0E 73 35 mov cx,word ptr [3573h]
-2F47  E3 08       jcxz 2f51h
-2F49  B0 20       mov al,20h
-2F4B  B4 02       mov ah,2h
-2F4D  CD 21       int 21h
-2F4F  E2 F8       loop 2f49h
-2F51  BE 2F 35    mov si,352fh
-2F54  8B 0E 6F 35 mov cx,word ptr [356fh]
-2F58  E3 09       jcxz 2f63h
-2F5A  8A 04       mov al,byte ptr [si]
-2F5C  B4 02       mov ah,2h
-2F5E  CD 21       int 21h
-2F60  46          inc si
-2F61  E2 F7       loop 2f5ah
-2F63  5F          pop di
-2F64  5E          pop si
-2F65  5A          pop dx
-2F66  5B          pop bx
-2F67  89 EC       mov sp,bp
-2F69  5D          pop bp
-2F6A  C3          ret
-2F6B  55          push bp
-2F6C  8B EC       mov bp,sp
-2F6E  53          push bx
-2F6F  51          push cx
-2F70  52          push dx
-2F71  56          push si
-2F72  57          push di
-2F73  8B 46 04    mov ax,word ptr [bp+4h]
-2F76  88 C6       mov dh,al
-2F78  8B 76 0A    mov si,word ptr [bp+0ah]
-2F7B  8B 7E 08    mov di,word ptr [bp+8h]
-2F7E  8B 5E 06    mov bx,word ptr [bp+6h]
-2F81  80 FE 00    cmp dh,0h
-2F84  74 23       je 2fa9h
-2F86  8A 04       mov al,byte ptr [si]
-2F88  8A 15       mov dl,byte ptr [di]
-2F8A  80 FC 00    cmp ah,0h
-2F8D  74 0B       je 2f9ah
-2F8F  80 FC 01    cmp ah,1h
-2F92  74 0A       je 2f9eh
-2F94  F6 D2       not dl
-2F96  20 D0       and al,dl
-2F98  EB 06       jmp 2fa0h
-2F9A  20 D0       and al,dl
-2F9C  EB 02       jmp 2fa0h
-2F9E  08 D0       or al,dl
-2FA0  88 07       mov byte ptr [bx],al
-2FA2  46          inc si
-2FA3  47          inc di
-2FA4  43          inc bx
-2FA5  FE CE       dec dh
-2FA7  75 DD       jne 2f86h
-2FA9  5F          pop di
-2FAA  5E          pop si
-2FAB  5A          pop dx
-2FAC  59          pop cx
-2FAD  5B          pop bx
-2FAE  89 EC       mov sp,bp
-2FB0  5D          pop bp
-2FB1  C3          ret
-2FB2  55          push bp
-2FB3  8B EC       mov bp,sp
-2FB5  53          push bx
-2FB6  51          push cx
-2FB7  52          push dx
-2FB8  56          push si
-2FB9  57          push di
-2FBA  8B 4E 04    mov cx,word ptr [bp+4h]
-2FBD  8B 76 08    mov si,word ptr [bp+8h]
-2FC0  8B 7E 06    mov di,word ptr [bp+6h]
-2FC3  B4 07       mov ah,7h
-2FC5  E3 2B       jcxz 2ff2h
-2FC7  8A 04       mov al,byte ptr [si]
-2FC9  8A 15       mov dl,byte ptr [di]
-2FCB  88 C3       mov bl,al
-2FCD  88 D6       mov dh,dl
-2FCF  3A C2       cmp al,dl
-2FD1  74 03       je 2fd6h
-2FD3  80 E4 FE    and ah,0feh
-2FD6  F6 D2       not dl
-2FD8  20 D0       and al,dl
-2FDA  3C 00       cmp al,0h
-2FDC  74 03       je 2fe1h
-2FDE  80 E4 FD    and ah,0fdh
-2FE1  8A C3       mov al,bl
-2FE3  F6 D0       not al
-2FE5  20 F0       and al,dh
-2FE7  3C 00       cmp al,0h
-2FE9  74 03       je 2feeh
-2FEB  80 E4 FB    and ah,0fbh
-2FEE  46          inc si
-2FEF  47          inc di
-2FF0  E2 D5       loop 2fc7h
-2FF2  F6 C4 01    test ah,1h
-2FF5  74 03       je 2ffah
-2FF7  80 E4 F9    and ah,0f9h
-2FFA  88 E0       mov al,ah
-2FFC  B4 00       mov ah,0h
-2FFE  5F          pop di
-2FFF  5E          pop si
-3000  5A          pop dx
-3001  59          pop cx
-3002  5B          pop bx
-3003  89 EC       mov sp,bp
-3005  5D          pop bp
-3006  C3          ret
-3007  55          push bp
-3008  8B EC       mov bp,sp
-300A  53          push bx
-300B  51          push cx
-300C  56          push si
-300D  8B 4E 04    mov cx,word ptr [bp+4h]
-3010  8B 76 06    mov si,word ptr [bp+6h]
-3013  8B 5E 08    mov bx,word ptr [bp+8h]
-3016  E3 08       jcxz 3020h
-3018  8A 04       mov al,byte ptr [si]
-301A  88 07       mov byte ptr [bx],al
-301C  46          inc si
-301D  43          inc bx
-301E  E2 F8       loop 3018h
-3020  5E          pop si
-3021  59          pop cx
-3022  5B          pop bx
-3023  89 EC       mov sp,bp
-3025  5D          pop bp
-3026  C3          ret
-3027  55          push bp
-3028  8B EC       mov bp,sp
-302A  53          push bx
-302B  51          push cx
-302C  52          push dx
-302D  56          push si
-302E  57          push di
-302F  8B 5E 04    mov bx,word ptr [bp+4h]
-3032  8A 07       mov al,byte ptr [bx]
-3034  30 E4       xor ah,ah
-3036  89 C1       mov cx,ax
-3038  8B 46 06    mov ax,word ptr [bp+6h]
-303B  3D 01 00    cmp ax,1h
-303E  72 4A       jb 308ah
-3040  39 C8       cmp ax,cx
-3042  77 46       jnbe 308ah
-3044  89 C2       mov dx,ax
-3046  8B 46 08    mov ax,word ptr [bp+8h]
-3049  83 F8 00    cmp ax,0h
-304C  7E 3C       jle 308ah
-304E  8B F0       mov si,ax
-3050  89 C8       mov ax,cx
-3052  2B C2       sub ax,dx
-3054  05 01 00    add ax,1h
-3057  39 F0       cmp ax,si
-3059  76 02       jbe 305dh
-305B  89 F0       mov ax,si
-305D  89 C1       mov cx,ax
-305F  89 D0       mov ax,dx
-3061  03 C3       add ax,bx
-3063  89 C7       mov di,ax
-3065  03 C1       add ax,cx
-3067  8B F0       mov si,ax
-3069  8A 07       mov al,byte ptr [bx]
-306B  30 E4       xor ah,ah
-306D  2B C2       sub ax,dx
-306F  2B C1       sub ax,cx
-3071  05 01 00    add ax,1h
-3074  50          push ax
-3075  8A 07       mov al,byte ptr [bx]
-3077  30 E4       xor ah,ah
-3079  2B C1       sub ax,cx
-307B  88 07       mov byte ptr [bx],al
-307D  58          pop ax
-307E  89 C1       mov cx,ax
-3080  E3 08       jcxz 308ah
-3082  8A 04       mov al,byte ptr [si]
-3084  88 05       mov byte ptr [di],al
-3086  46          inc si
-3087  47          inc di
-3088  E2 F8       loop 3082h
-308A  5F          pop di
-308B  5E          pop si
-308C  5A          pop dx
-308D  59          pop cx
-308E  5B          pop bx
-308F  89 EC       mov sp,bp
-3091  5D          pop bp
-3092  C3          ret
-3093  55          push bp
-3094  8B EC       mov bp,sp
-3096  53          push bx
-3097  51          push cx
-3098  52          push dx
-3099  56          push si
-309A  57          push di
-309B  8B 7E 04    mov di,word ptr [bp+4h]
-309E  B8 FF FF    mov ax,0ffffh
-30A1  89 05       mov word ptr [di],ax
-30A3  31 C0       xor ax,ax
-30A5  89 45 02    mov word ptr [di+2h],ax
-30A8  8B 76 06    mov si,word ptr [bp+6h]
-30AB  8A 04       mov al,byte ptr [si]
-30AD  46          inc si
-30AE  3C 7F       cmp al,7fh
-30B0  76 02       jbe 30b4h
-30B2  B0 7F       mov al,7fh
-30B4  88 C1       mov cl,al
-30B6  30 ED       xor ch,ch
-30B8  83 C7 04    add di,4h
-30BB  E3 08       jcxz 30c5h
-30BD  8A 04       mov al,byte ptr [si]
-30BF  88 05       mov byte ptr [di],al
-30C1  46          inc si
-30C2  47          inc di
-30C3  E2 F8       loop 30bdh
-30C5  C6 05 00    mov byte ptr [di],0h
-30C8  5F          pop di
-30C9  5E          pop si
-30CA  5A          pop dx
-30CB  59          pop cx
-30CC  5B          pop bx
-30CD  89 EC       mov sp,bp
-30CF  5D          pop bp
-30D0  C3          ret
-30D1  55          push bp
-30D2  8B EC       mov bp,sp
-30D4  53          push bx
-30D5  51          push cx
-30D6  52          push dx
-30D7  57          push di
-30D8  8B 7E 04    mov di,word ptr [bp+4h]
-30DB  8D 55 04    lea dx,[di+4h]
-30DE  B8 00 3D    mov ax,3d00h
-30E1  CD 21       int 21h
-30E3  72 0F       jb 30f4h
-30E5  89 05       mov word ptr [di],ax
-30E7  B8 01 00    mov ax,1h
-30EA  89 45 02    mov word ptr [di+2h],ax
-30ED  31 C0       xor ax,ax
-30EF  A3 79 35    mov word ptr [3579h],ax
-30F2  EB 10       jmp 3104h
-30F4  89 C3       mov bx,ax
-30F6  B8 FF FF    mov ax,0ffffh
-30F9  89 05       mov word ptr [di],ax
-30FB  31 C0       xor ax,ax
-30FD  89 45 02    mov word ptr [di+2h],ax
-3100  89 1E 79 35 mov word ptr [3579h],bx
-3104  5F          pop di
-3105  5A          pop dx
-3106  59          pop cx
-3107  5B          pop bx
-3108  89 EC       mov sp,bp
-310A  5D          pop bp
-310B  C3          ret
-310C  55          push bp
-310D  8B EC       mov bp,sp
-310F  53          push bx
-3110  51          push cx
-3111  52          push dx
-3112  57          push di
-3113  8B 7E 04    mov di,word ptr [bp+4h]
-3116  8D 55 04    lea dx,[di+4h]
-3119  31 C9       xor cx,cx
-311B  B8 00 3C    mov ax,3c00h
-311E  CD 21       int 21h
-3120  72 0F       jb 3131h
-3122  89 05       mov word ptr [di],ax
-3124  B8 02 00    mov ax,2h
-3127  89 45 02    mov word ptr [di+2h],ax
-312A  31 C0       xor ax,ax
-312C  A3 79 35    mov word ptr [3579h],ax
-312F  EB 10       jmp 3141h
-3131  89 C3       mov bx,ax
-3133  B8 FF FF    mov ax,0ffffh
-3136  89 05       mov word ptr [di],ax
-3138  31 C0       xor ax,ax
-313A  89 45 02    mov word ptr [di+2h],ax
-313D  89 1E 79 35 mov word ptr [3579h],bx
-3141  5F          pop di
-3142  5A          pop dx
-3143  59          pop cx
-3144  5B          pop bx
-3145  89 EC       mov sp,bp
-3147  5D          pop bp
-3148  C3          ret
-3149  55          push bp
-314A  8B EC       mov bp,sp
-314C  53          push bx
-314D  52          push dx
-314E  57          push di
-314F  8B 7E 04    mov di,word ptr [bp+4h]
-3152  8B 05       mov ax,word ptr [di]
-3154  3D FF FF    cmp ax,0ffffh
-3157  74 16       je 316fh
-3159  89 C3       mov bx,ax
-315B  B4 3E       mov ah,3eh
-315D  CD 21       int 21h
-315F  89 C3       mov bx,ax
-3161  B8 FF FF    mov ax,0ffffh
-3164  89 05       mov word ptr [di],ax
-3166  31 C0       xor ax,ax
-3168  89 45 02    mov word ptr [di+2h],ax
-316B  89 1E 79 35 mov word ptr [3579h],bx
-316F  5F          pop di
-3170  5A          pop dx
-3171  5B          pop bx
-3172  89 EC       mov sp,bp
-3174  5D          pop bp
-3175  C3          ret
-3176  8B 06 79 35 mov ax,word ptr [3579h]
-317A  C7 06 79 35 00 00 mov word ptr [3579h],0h
-3180  C3          ret
-3181  A3 79 35    mov word ptr [3579h],ax
-3184  C3          ret
-3185  55          push bp
-3186  8B EC       mov bp,sp
-3188  53          push bx
-3189  51          push cx
-318A  52          push dx
-318B  8B 1E 7B 35 mov bx,word ptr [357bh]
-318F  8B 56 04    mov dx,word ptr [bp+4h]
-3192  89 1A       mov word ptr [bp+si],bx
-3194  8B 4E 06    mov cx,word ptr [bp+6h]
-3197  89 D8       mov ax,bx
-3199  03 C1       add ax,cx
-319B  A3 7B 35    mov word ptr [357bh],ax
-319E  5A          pop dx
-319F  59          pop cx
-31A0  5B          pop bx
-31A1  89 EC       mov sp,bp
-31A3  5D          pop bp
-31A4  C3          ret
-31A5  55          push bp
-31A6  8B EC       mov bp,sp
-31A8  53          push bx
-31A9  51          push cx
-31AA  52          push dx
-31AB  56          push si
-31AC  57          push di
-31AD  A0 7D 35    mov al,byte ptr [357dh]
-31B0  3C 00       cmp al,0h
-31B2  75 42       jne 31f6h
-31B4  8B 7E 04    mov di,word ptr [bp+4h]
-31B7  8B 05       mov ax,word ptr [di]
-31B9  3D FF FF    cmp ax,0ffffh
-31BC  74 38       je 31f6h
-31BE  89 C3       mov bx,ax
-31C0  31 C9       xor cx,cx
-31C2  31 D2       xor dx,dx
-31C4  B8 01 42    mov ax,4201h
-31C7  CD 21       int 21h
-31C9  8B F0       mov si,ax
-31CB  89 D7       mov di,dx
-31CD  31 C9       xor cx,cx
-31CF  31 D2       xor dx,dx
-31D1  B8 02 42    mov ax,4202h
-31D4  CD 21       int 21h
-31D6  39 FA       cmp dx,di
-31D8  72 08       jb 31e2h
-31DA  77 0B       jnbe 31e7h
-31DC  39 F0       cmp ax,si
-31DE  72 02       jb 31e2h
-31E0  77 05       jnbe 31e7h
-31E2  B8 01 00    mov ax,1h
-31E5  EB 02       jmp 31e9h
-31E7  31 C0       xor ax,ax
-31E9  50          push ax
-31EA  89 F9       mov cx,di
-31EC  89 F2       mov dx,si
-31EE  B8 00 42    mov ax,4200h
-31F1  CD 21       int 21h
-31F3  58          pop ax
-31F4  EB 03       jmp 31f9h
-31F6  B8 01 00    mov ax,1h
-31F9  5F          pop di
-31FA  5E          pop si
-31FB  5A          pop dx
-31FC  59          pop cx
-31FD  5B          pop bx
-31FE  89 EC       mov sp,bp
-3200  5D          pop bp
-3201  C3          ret
-3202  55          push bp
-3203  8B EC       mov bp,sp
-3205  53          push bx
-3206  51          push cx
-3207  52          push dx
-3208  56          push si
-3209  57          push di
-320A  8B 7E 06    mov di,word ptr [bp+6h]
-320D  C6 05 00    mov byte ptr [di],0h
-3210  47          inc di
-3211  31 C9       xor cx,cx
-3213  8B 76 04    mov si,word ptr [bp+4h]
-3216  8B 04       mov ax,word ptr [si]
-3218  89 C3       mov bx,ax
-321A  BA 7E 35    mov dx,357eh
-321D  B9 01 00    mov cx,1h
-3220  B4 3F       mov ah,3fh
-3222  CD 21       int 21h
-3224  83 F8 00    cmp ax,0h
-3227  74 1C       je 3245h
-3229  A0 7E 35    mov al,byte ptr [357eh]
-322C  3C 1A       cmp al,1ah
-322E  74 1C       je 324ch
-3230  3C 0D       cmp al,0dh
-3232  74 E2       je 3216h
-3234  3C 0A       cmp al,0ah
-3236  74 19       je 3251h
-3238  8B 46 08    mov ax,word ptr [bp+8h]
-323B  39 C8       cmp ax,cx
-323D  76 D7       jbe 3216h
-323F  88 05       mov byte ptr [di],al
-3241  47          inc di
-3242  41          inc cx
-3243  EB D1       jmp 3216h
-3245  C6 06 7D 35 01 mov byte ptr [357dh],1h
-324A  EB 05       jmp 3251h
-324C  C6 06 7D 35 01 mov byte ptr [357dh],1h
-3251  8B 5E 06    mov bx,word ptr [bp+6h]
-3254  88 0F       mov byte ptr [bx],cl
-3256  31 C0       xor ax,ax
-3258  A3 79 35    mov word ptr [3579h],ax
-325B  5F          pop di
-325C  5E          pop si
-325D  5A          pop dx
-325E  59          pop cx
-325F  5B          pop bx
-3260  89 EC       mov sp,bp
-3262  5D          pop bp
-3263  C3          ret
-3264  55          push bp
-3265  8B EC       mov bp,sp
-3267  53          push bx
-3268  51          push cx
-3269  52          push dx
-326A  56          push si
-326B  57          push di
-326C  8B 7E 04    mov di,word ptr [bp+4h]
-326F  C6 05 00    mov byte ptr [di],0h
-3272  47          inc di
-3273  8B 46 06    mov ax,word ptr [bp+6h]
-3276  C6 06 7E 35 00 mov byte ptr [357eh],0h
-327B  83 F8 00    cmp ax,0h
-327E  7D 07       jnl 3287h
-3280  C6 06 7E 35 01 mov byte ptr [357eh],1h
-3285  F7 D8       neg ax
-3287  B9 0A 00    mov cx,0ah
-328A  BB BE 34    mov bx,34beh
-328D  89 DE       mov si,bx
-328F  31 D2       xor dx,dx
-3291  F7 F1       div ax,cx
-3293  80 C2 30    add dl,30h
-3296  4E          dec si
-3297  88 14       mov byte ptr [si],dl
-3299  83 F8 00    cmp ax,0h
-329C  75 F1       jne 328fh
-329E  A0 7E 35    mov al,byte ptr [357eh]
-32A1  3C 00       cmp al,0h
-32A3  74 04       je 32a9h
-32A5  C6 05 2D    mov byte ptr [di],2dh
-32A8  47          inc di
-32A9  89 D9       mov cx,bx
-32AB  29 F1       sub cx,si
-32AD  A0 7E 35    mov al,byte ptr [357eh]
-32B0  3C 00       cmp al,0h
-32B2  74 01       je 32b5h
-32B4  41          inc cx
-32B5  8A D1       mov dl,cl
-32B7  8A 04       mov al,byte ptr [si]
-32B9  88 05       mov byte ptr [di],al
-32BB  46          inc si
-32BC  47          inc di
-32BD  E2 F8       loop 32b7h
-32BF  8B 5E 04    mov bx,word ptr [bp+4h]
-32C2  88 17       mov byte ptr [bx],dl
-32C4  5F          pop di
-32C5  5E          pop si
-32C6  5A          pop dx
-32C7  59          pop cx
-32C8  5B          pop bx
-32C9  89 EC       mov sp,bp
-32CB  5D          pop bp
-32CC  C3          ret
-32CD  55          push bp
-32CE  8B EC       mov bp,sp
-32D0  53          push bx
-32D1  51          push cx
-32D2  52          push dx
-32D3  56          push si
-32D4  57          push di
-32D5  8B 7E 04    mov di,word ptr [bp+4h]
-32D8  8A 05       mov al,byte ptr [di]
-32DA  88 C1       mov cl,al
-32DC  30 ED       xor ch,ch
-32DE  47          inc di
-32DF  89 FE       mov si,di
-32E1  31 DB       xor bx,bx
-32E3  C6 06 7F 35 00 mov byte ptr [357fh],0h
-32E8  E3 35       jcxz 331fh
-32EA  8A 05       mov al,byte ptr [di]
-32EC  3C 2D       cmp al,2dh
-32EE  74 02       je 32f2h
-32F0  EB 09       jmp 32fbh
-32F2  C6 06 7F 35 01 mov byte ptr [357fh],1h
-32F7  47          inc di
-32F8  49          dec cx
-32F9  E3 46       jcxz 3341h
-32FB  8A 05       mov al,byte ptr [di]
-32FD  3C 30       cmp al,30h
-32FF  72 40       jb 3341h
-3301  3C 39       cmp al,39h
-3303  77 3C       jnbe 3341h
-3305  2C 30       sub al,30h
-3307  30 E4       xor ah,ah
-3309  A3 80 35    mov word ptr [3580h],ax
-330C  89 D8       mov ax,bx
-330E  BB 0A 00    mov bx,0ah
-3311  F7 E3       mul bx
-3313  03 06 80 35 add ax,word ptr [3580h]
-3317  89 C3       mov bx,ax
-3319  47          inc di
-331A  49          dec cx
-331B  E3 0B       jcxz 3328h
-331D  EB DC       jmp 32fbh
-331F  8B 5E 08    mov bx,word ptr [bp+8h]
-3322  31 C0       xor ax,ax
-3324  89 07       mov word ptr [bx],ax
-3326  EB 23       jmp 334bh
-3328  A0 7F 35    mov al,byte ptr [357fh]
-332B  3C 00       cmp al,0h
-332D  74 02       je 3331h
-332F  F7 DB       neg bx
-3331  89 D8       mov ax,bx
-3333  8B 5E 06    mov bx,word ptr [bp+6h]
-3336  89 07       mov word ptr [bx],ax
-3338  8B 5E 08    mov bx,word ptr [bp+8h]
-333B  31 C0       xor ax,ax
-333D  89 07       mov word ptr [bx],ax
-333F  EB 0A       jmp 334bh
-3341  8B C7       mov ax,di
-3343  2B C6       sub ax,si
-3345  40          inc ax
-3346  8B 5E 08    mov bx,word ptr [bp+8h]
-3349  89 07       mov word ptr [bx],ax
-334B  5F          pop di
-334C  5E          pop si
-334D  5A          pop dx
-334E  59          pop cx
-334F  5B          pop bx
-3350  89 EC       mov sp,bp
-3352  5D          pop bp
-3353  C3          ret
-3354  55          push bp
-3355  8B EC       mov bp,sp
-3357  53          push bx
-3358  51          push cx
-3359  52          push dx
-335A  56          push si
-335B  57          push di
-335C  8B 76 04    mov si,word ptr [bp+4h]
-335F  8A 04       mov al,byte ptr [si]
-3361  30 E4       xor ah,ah
-3363  89 C1       mov cx,ax
-3365  46          inc si
-3366  BF 82 35    mov di,3582h
-3369  E3 08       jcxz 3373h
-336B  8A 04       mov al,byte ptr [si]
-336D  88 05       mov byte ptr [di],al
-336F  46          inc si
-3370  47          inc di
-3371  E2 F8       loop 336bh
-3373  31 C0       xor ax,ax
-3375  88 05       mov byte ptr [di],al
-3377  BB 82 35    mov bx,3582h
-337A  8B 7E 06    mov di,word ptr [bp+6h]
-337D  89 1E 77 35 mov word ptr [3577h],bx
-3381  E8 56 FA    call 2ddah
-3384  72 1F       jb 33a5h
-3386  89 D8       mov ax,bx
-3388  8B 16 77 35 mov dx,word ptr [3577h]
-338C  2B C2       sub ax,dx
-338E  8B 76 04    mov si,word ptr [bp+4h]
-3391  8A 0C       mov cl,byte ptr [si]
-3393  30 ED       xor ch,ch
-3395  39 C8       cmp ax,cx
-3397  74 03       je 339ch
-3399  40          inc ax
-339A  EB 02       jmp 339eh
-339C  31 C0       xor ax,ax
-339E  8B 5E 08    mov bx,word ptr [bp+8h]
-33A1  89 07       mov word ptr [bx],ax
-33A3  EB 08       jmp 33adh
-33A5  B8 01 00    mov ax,1h
-33A8  8B 5E 08    mov bx,word ptr [bp+8h]
-33AB  89 07       mov word ptr [bx],ax
-33AD  5F          pop di
-33AE  5E          pop si
-33AF  5A          pop dx
-33B0  59          pop cx
-33B1  5B          pop bx
-33B2  89 EC       mov sp,bp
-33B4  5D          pop bp
-33B5  C3          ret
+1D97  51          push cx
+1D98  52          push dx
+1D99  56          push si
+1D9A  57          push di
+1D9B  8B 7E 04    mov di,word ptr [bp+4h]
+1D9E  B8 FF FF    mov ax,0ffffh
+1DA1  89 05       mov word ptr [di],ax
+1DA3  31 C0       xor ax,ax
+1DA5  89 45 02    mov word ptr [di+2h],ax
+1DA8  8B 76 06    mov si,word ptr [bp+6h]
+1DAB  8A 04       mov al,byte ptr [si]
+1DAD  46          inc si
+1DAE  3C 7F       cmp al,7fh
+1DB0  76 02       jbe 1db4h
+1DB2  B0 7F       mov al,7fh
+1DB4  88 C1       mov cl,al
+1DB6  30 ED       xor ch,ch
+1DB8  83 C7 04    add di,4h
+1DBB  E3 08       jcxz 1dc5h
+1DBD  8A 04       mov al,byte ptr [si]
+1DBF  88 05       mov byte ptr [di],al
+1DC1  46          inc si
+1DC2  47          inc di
+1DC3  E2 F8       loop 1dbdh
+1DC5  C6 05 00    mov byte ptr [di],0h
+1DC8  5F          pop di
+1DC9  5E          pop si
+1DCA  5A          pop dx
+1DCB  59          pop cx
+1DCC  5B          pop bx
+1DCD  89 EC       mov sp,bp
+1DCF  5D          pop bp
+1DD0  C3          ret
+1DD1  55          push bp
+1DD2  8B EC       mov bp,sp
+1DD4  53          push bx
+1DD5  51          push cx
+1DD6  52          push dx
+1DD7  57          push di
+1DD8  8B 7E 04    mov di,word ptr [bp+4h]
+1DDB  8D 55 04    lea dx,[di+4h]
+1DDE  B8 00 3D    mov ax,3d00h
+1DE1  CD 21       int 21h
+1DE3  72 0F       jb 1df4h
+1DE5  89 05       mov word ptr [di],ax
+1DE7  B8 01 00    mov ax,1h
+1DEA  89 45 02    mov word ptr [di+2h],ax
+1DED  31 C0       xor ax,ax
+1DEF  A3 79 22    mov word ptr [2279h],ax
+1DF2  EB 10       jmp 1e04h
+1DF4  89 C3       mov bx,ax
+1DF6  B8 FF FF    mov ax,0ffffh
+1DF9  89 05       mov word ptr [di],ax
+1DFB  31 C0       xor ax,ax
+1DFD  89 45 02    mov word ptr [di+2h],ax
+1E00  89 1E 79 22 mov word ptr [2279h],bx
+1E04  5F          pop di
+1E05  5A          pop dx
+1E06  59          pop cx
+1E07  5B          pop bx
+1E08  89 EC       mov sp,bp
+1E0A  5D          pop bp
+1E0B  C3          ret
+1E0C  55          push bp
+1E0D  8B EC       mov bp,sp
+1E0F  53          push bx
+1E10  51          push cx
+1E11  52          push dx
+1E12  57          push di
+1E13  8B 7E 04    mov di,word ptr [bp+4h]
+1E16  8D 55 04    lea dx,[di+4h]
+1E19  31 C9       xor cx,cx
+1E1B  B8 00 3C    mov ax,3c00h
+1E1E  CD 21       int 21h
+1E20  72 0F       jb 1e31h
+1E22  89 05       mov word ptr [di],ax
+1E24  B8 02 00    mov ax,2h
+1E27  89 45 02    mov word ptr [di+2h],ax
+1E2A  31 C0       xor ax,ax
+1E2C  A3 79 22    mov word ptr [2279h],ax
+1E2F  EB 10       jmp 1e41h
+1E31  89 C3       mov bx,ax
+1E33  B8 FF FF    mov ax,0ffffh
+1E36  89 05       mov word ptr [di],ax
+1E38  31 C0       xor ax,ax
+1E3A  89 45 02    mov word ptr [di+2h],ax
+1E3D  89 1E 79 22 mov word ptr [2279h],bx
+1E41  5F          pop di
+1E42  5A          pop dx
+1E43  59          pop cx
+1E44  5B          pop bx
+1E45  89 EC       mov sp,bp
+1E47  5D          pop bp
+1E48  C3          ret
+1E49  55          push bp
+1E4A  8B EC       mov bp,sp
+1E4C  53          push bx
+1E4D  52          push dx
+1E4E  57          push di
+1E4F  8B 7E 04    mov di,word ptr [bp+4h]
+1E52  8B 05       mov ax,word ptr [di]
+1E54  3D FF FF    cmp ax,0ffffh
+1E57  74 16       je 1e6fh
+1E59  89 C3       mov bx,ax
+1E5B  B4 3E       mov ah,3eh
+1E5D  CD 21       int 21h
+1E5F  89 C3       mov bx,ax
+1E61  B8 FF FF    mov ax,0ffffh
+1E64  89 05       mov word ptr [di],ax
+1E66  31 C0       xor ax,ax
+1E68  89 45 02    mov word ptr [di+2h],ax
+1E6B  89 1E 79 22 mov word ptr [2279h],bx
+1E6F  5F          pop di
+1E70  5A          pop dx
+1E71  5B          pop bx
+1E72  89 EC       mov sp,bp
+1E74  5D          pop bp
+1E75  C3          ret
+1E76  8B 06 79 22 mov ax,word ptr [2279h]
+1E7A  C7 06 79 22 00 00 mov word ptr [2279h],0h
+1E80  C3          ret
+1E81  A3 79 22    mov word ptr [2279h],ax
+1E84  C3          ret
+1E85  55          push bp
+1E86  8B EC       mov bp,sp
+1E88  53          push bx
+1E89  51          push cx
+1E8A  52          push dx
+1E8B  8B 1E 7B 22 mov bx,word ptr [227bh]
+1E8F  8B 56 04    mov dx,word ptr [bp+4h]
+1E92  89 1A       mov word ptr [bp+si],bx
+1E94  8B 4E 06    mov cx,word ptr [bp+6h]
+1E97  89 D8       mov ax,bx
+1E99  03 C1       add ax,cx
+1E9B  A3 7B 22    mov word ptr [227bh],ax
+1E9E  5A          pop dx
+1E9F  59          pop cx
+1EA0  5B          pop bx
+1EA1  89 EC       mov sp,bp
+1EA3  5D          pop bp
+1EA4  C3          ret
+1EA5  55          push bp
+1EA6  8B EC       mov bp,sp
+1EA8  53          push bx
+1EA9  51          push cx
+1EAA  52          push dx
+1EAB  56          push si
+1EAC  57          push di
+1EAD  A0 7D 22    mov al,byte ptr [227dh]
+1EB0  3C 00       cmp al,0h
+1EB2  75 42       jne 1ef6h
+1EB4  8B 7E 04    mov di,word ptr [bp+4h]
+1EB7  8B 05       mov ax,word ptr [di]
+1EB9  3D FF FF    cmp ax,0ffffh
+1EBC  74 38       je 1ef6h
+1EBE  89 C3       mov bx,ax
+1EC0  31 C9       xor cx,cx
+1EC2  31 D2       xor dx,dx
+1EC4  B8 01 42    mov ax,4201h
+1EC7  CD 21       int 21h
+1EC9  8B F0       mov si,ax
+1ECB  89 D7       mov di,dx
+1ECD  31 C9       xor cx,cx
+1ECF  31 D2       xor dx,dx
+1ED1  B8 02 42    mov ax,4202h
+1ED4  CD 21       int 21h
+1ED6  39 FA       cmp dx,di
+1ED8  72 08       jb 1ee2h
+1EDA  77 0B       jnbe 1ee7h
+1EDC  39 F0       cmp ax,si
+1EDE  72 02       jb 1ee2h
+1EE0  77 05       jnbe 1ee7h
+1EE2  B8 01 00    mov ax,1h
+1EE5  EB 02       jmp 1ee9h
+1EE7  31 C0       xor ax,ax
+1EE9  50          push ax
+1EEA  89 F9       mov cx,di
+1EEC  89 F2       mov dx,si
+1EEE  B8 00 42    mov ax,4200h
+1EF1  CD 21       int 21h
+1EF3  58          pop ax
+1EF4  EB 03       jmp 1ef9h
+1EF6  B8 01 00    mov ax,1h
+1EF9  5F          pop di
+1EFA  5E          pop si
+1EFB  5A          pop dx
+1EFC  59          pop cx
+1EFD  5B          pop bx
+1EFE  89 EC       mov sp,bp
+1F00  5D          pop bp
+1F01  C3          ret
+1F02  55          push bp
+1F03  8B EC       mov bp,sp
+1F05  53          push bx
+1F06  51          push cx
+1F07  52          push dx
+1F08  56          push si
+1F09  57          push di
+1F0A  8B 7E 06    mov di,word ptr [bp+6h]
+1F0D  C6 05 00    mov byte ptr [di],0h
+1F10  47          inc di
+1F11  31 C9       xor cx,cx
+1F13  8B 76 04    mov si,word ptr [bp+4h]
+1F16  8B 04       mov ax,word ptr [si]
+1F18  89 C3       mov bx,ax
+1F1A  BA 7E 22    mov dx,227eh
+1F1D  B9 01 00    mov cx,1h
+1F20  B4 3F       mov ah,3fh
+1F22  CD 21       int 21h
+1F24  83 F8 00    cmp ax,0h
+1F27  74 1C       je 1f45h
+1F29  A0 7E 22    mov al,byte ptr [227eh]
+1F2C  3C 1A       cmp al,1ah
+1F2E  74 1C       je 1f4ch
+1F30  3C 0D       cmp al,0dh
+1F32  74 E2       je 1f16h
+1F34  3C 0A       cmp al,0ah
+1F36  74 19       je 1f51h
+1F38  8B 46 08    mov ax,word ptr [bp+8h]
+1F3B  39 C8       cmp ax,cx
+1F3D  76 D7       jbe 1f16h
+1F3F  88 05       mov byte ptr [di],al
+1F41  47          inc di
+1F42  41          inc cx
+1F43  EB D1       jmp 1f16h
+1F45  C6 06 7D 22 01 mov byte ptr [227dh],1h
+1F4A  EB 05       jmp 1f51h
+1F4C  C6 06 7D 22 01 mov byte ptr [227dh],1h
+1F51  8B 5E 06    mov bx,word ptr [bp+6h]
+1F54  88 0F       mov byte ptr [bx],cl
+1F56  31 C0       xor ax,ax
+1F58  A3 79 22    mov word ptr [2279h],ax
+1F5B  5F          pop di
+1F5C  5E          pop si
+1F5D  5A          pop dx
+1F5E  59          pop cx
+1F5F  5B          pop bx
+1F60  89 EC       mov sp,bp
+1F62  5D          pop bp
+1F63  C3          ret
+1F64  55          push bp
+1F65  8B EC       mov bp,sp
+1F67  53          push bx
+1F68  51          push cx
+1F69  52          push dx
+1F6A  56          push si
+1F6B  57          push di
+1F6C  8B 7E 04    mov di,word ptr [bp+4h]
+1F6F  C6 05 00    mov byte ptr [di],0h
+1F72  47          inc di
+1F73  8B 46 06    mov ax,word ptr [bp+6h]
+1F76  C6 06 7E 22 00 mov byte ptr [227eh],0h
+1F7B  83 F8 00    cmp ax,0h
+1F7E  7D 07       jnl 1f87h
+1F80  C6 06 7E 22 01 mov byte ptr [227eh],1h
+1F85  F7 D8       neg ax
+1F87  B9 0A 00    mov cx,0ah
+1F8A  BB BE 21    mov bx,21beh
+1F8D  89 DE       mov si,bx
+1F8F  31 D2       xor dx,dx
+1F91  F7 F1       div ax,cx
+1F93  80 C2 30    add dl,30h
+1F96  4E          dec si
+1F97  88 14       mov byte ptr [si],dl
+1F99  83 F8 00    cmp ax,0h
+1F9C  75 F1       jne 1f8fh
+1F9E  A0 7E 22    mov al,byte ptr [227eh]
+1FA1  3C 00       cmp al,0h
+1FA3  74 04       je 1fa9h
+1FA5  C6 05 2D    mov byte ptr [di],2dh
+1FA8  47          inc di
+1FA9  89 D9       mov cx,bx
+1FAB  29 F1       sub cx,si
+1FAD  A0 7E 22    mov al,byte ptr [227eh]
+1FB0  3C 00       cmp al,0h
+1FB2  74 01       je 1fb5h
+1FB4  41          inc cx
+1FB5  8A D1       mov dl,cl
+1FB7  8A 04       mov al,byte ptr [si]
+1FB9  88 05       mov byte ptr [di],al
+1FBB  46          inc si
+1FBC  47          inc di
+1FBD  E2 F8       loop 1fb7h
+1FBF  8B 5E 04    mov bx,word ptr [bp+4h]
+1FC2  88 17       mov byte ptr [bx],dl
+1FC4  5F          pop di
+1FC5  5E          pop si
+1FC6  5A          pop dx
+1FC7  59          pop cx
+1FC8  5B          pop bx
+1FC9  89 EC       mov sp,bp
+1FCB  5D          pop bp
+1FCC  C3          ret
+1FCD  55          push bp
+1FCE  8B EC       mov bp,sp
+1FD0  53          push bx
+1FD1  51          push cx
+1FD2  52          push dx
+1FD3  56          push si
+1FD4  57          push di
+1FD5  8B 7E 04    mov di,word ptr [bp+4h]
+1FD8  8A 05       mov al,byte ptr [di]
+1FDA  88 C1       mov cl,al
+1FDC  30 ED       xor ch,ch
+1FDE  47          inc di
+1FDF  89 FE       mov si,di
+1FE1  31 DB       xor bx,bx
+1FE3  C6 06 7F 22 00 mov byte ptr [227fh],0h
+1FE8  E3 35       jcxz 201fh
+1FEA  8A 05       mov al,byte ptr [di]
+1FEC  3C 2D       cmp al,2dh
+1FEE  74 02       je 1ff2h
+1FF0  EB 09       jmp 1ffbh
+1FF2  C6 06 7F 22 01 mov byte ptr [227fh],1h
+1FF7  47          inc di
+1FF8  49          dec cx
+1FF9  E3 46       jcxz 2041h
+1FFB  8A 05       mov al,byte ptr [di]
+1FFD  3C 30       cmp al,30h
+1FFF  72 40       jb 2041h
+2001  3C 39       cmp al,39h
+2003  77 3C       jnbe 2041h
+2005  2C 30       sub al,30h
+2007  30 E4       xor ah,ah
+2009  A3 80 22    mov word ptr [2280h],ax
+200C  89 D8       mov ax,bx
+200E  BB 0A 00    mov bx,0ah
+2011  F7 E3       mul bx
+2013  03 06 80 22 add ax,word ptr [2280h]
+2017  89 C3       mov bx,ax
+2019  47          inc di
+201A  49          dec cx
+201B  E3 0B       jcxz 2028h
+201D  EB DC       jmp 1ffbh
+201F  8B 5E 08    mov bx,word ptr [bp+8h]
+2022  31 C0       xor ax,ax
+2024  89 07       mov word ptr [bx],ax
+2026  EB 23       jmp 204bh
+2028  A0 7F 22    mov al,byte ptr [227fh]
+202B  3C 00       cmp al,0h
+202D  74 02       je 2031h
+202F  F7 DB       neg bx
+2031  89 D8       mov ax,bx
+2033  8B 5E 06    mov bx,word ptr [bp+6h]
+2036  89 07       mov word ptr [bx],ax
+2038  8B 5E 08    mov bx,word ptr [bp+8h]
+203B  31 C0       xor ax,ax
+203D  89 07       mov word ptr [bx],ax
+203F  EB 0A       jmp 204bh
+2041  8B C7       mov ax,di
+2043  2B C6       sub ax,si
+2045  40          inc ax
+2046  8B 5E 08    mov bx,word ptr [bp+8h]
+2049  89 07       mov word ptr [bx],ax
+204B  5F          pop di
+204C  5E          pop si
+204D  5A          pop dx
+204E  59          pop cx
+204F  5B          pop bx
+2050  89 EC       mov sp,bp
+2052  5D          pop bp
+2053  C3          ret
+2054  55          push bp
+2055  8B EC       mov bp,sp
+2057  53          push bx
+2058  51          push cx
+2059  52          push dx
+205A  56          push si
+205B  57          push di
+205C  8B 76 04    mov si,word ptr [bp+4h]
+205F  8A 04       mov al,byte ptr [si]
+2061  30 E4       xor ah,ah
+2063  89 C1       mov cx,ax
+2065  46          inc si
+2066  BF 82 22    mov di,2282h
+2069  E3 08       jcxz 2073h
+206B  8A 04       mov al,byte ptr [si]
+206D  88 05       mov byte ptr [di],al
+206F  46          inc si
+2070  47          inc di
+2071  E2 F8       loop 206bh
+2073  31 C0       xor ax,ax
+2075  88 05       mov byte ptr [di],al
+2077  BB 82 22    mov bx,2282h
+207A  8B 7E 06    mov di,word ptr [bp+6h]
+207D  89 1E 77 22 mov word ptr [2277h],bx
+2081  E8 56 FA    call 1adah
+2084  72 1F       jb 20a5h
+2086  89 D8       mov ax,bx
+2088  8B 16 77 22 mov dx,word ptr [2277h]
+208C  2B C2       sub ax,dx
+208E  8B 76 04    mov si,word ptr [bp+4h]
+2091  8A 0C       mov cl,byte ptr [si]
+2093  30 ED       xor ch,ch
+2095  39 C8       cmp ax,cx
+2097  74 03       je 209ch
+2099  40          inc ax
+209A  EB 02       jmp 209eh
+209C  31 C0       xor ax,ax
+209E  8B 5E 08    mov bx,word ptr [bp+8h]
+20A1  89 07       mov word ptr [bx],ax
+20A3  EB 08       jmp 20adh
+20A5  B8 01 00    mov ax,1h
+20A8  8B 5E 08    mov bx,word ptr [bp+8h]
+20AB  89 07       mov word ptr [bx],ax
+20AD  5F          pop di
+20AE  5E          pop si
+20AF  5A          pop dx
+20B0  59          pop cx
+20B1  5B          pop bx
+20B2  89 EC       mov sp,bp
+20B4  5D          pop bp
+20B5  C3          ret