delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2001/01/23/12:54:02

From: Martin Str|mberg <ams AT ludd DOT luth DOT se>
Message-Id: <200101231753.SAA21441@father.ludd.luth.se>
Subject: Re: Debugging on 386 (Loooooong)
In-Reply-To: <2593-Tue23Jan2001193151+0200-eliz@is.elta.co.il> from Eli Zaretskii at "Jan 23, 2001 07:31:51 pm"
To: djgpp-workers AT delorie DOT com
Date: Tue, 23 Jan 2001 18:53:47 +0100 (MET)
X-Mailer: ELM [version 2.4ME+ PL54 (25)]
MIME-Version: 1.0
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

According to Eli Zaretskii:
> Please do.  Given the session transcript you posted, it is quite
> possible that the SIGFPE comes from some address *after* 0x1a64, since
> __crt1_startup doesn't have line info, so GDB cannot step a line.

Ok, as my previous disassembly might have too short here's the lot:
Dump of assembler code for function main:
0x1a58 <main>:  push   %ebp
0x1a59 <main+1>:        mov    %esp,%ebp
0x1a5b <main+3>:        sub    $0x7c,%esp
0x1a5e <main+6>:        push   %edi
0x1a5f <main+7>:        push   %esi
0x1a60 <main+8>:        push   %ebx
0x1a61 <main+9>:        mov    0xc(%ebp),%edx
0x1a64 <main+12>:       cmpl   $0x2,0x8(%ebp)
0x1a68 <main+16>:       je     0x1a84 <main+44>
0x1a6a <main+18>:       mov    (%edx),%eax
0x1a6c <main+20>:       add    $0xfffffff8,%esp
0x1a6f <main+23>:       push   %eax
0x1a70 <main+24>:       push   $0x1810
0x1a75 <main+29>:       call   0x3800 <printf>
0x1a7a <main+34>:       add    $0xfffffff4,%esp
0x1a7d <main+37>:       push   $0x1
0x1a7f <main+39>:       call   0x3850 <exit>
0x1a84 <main+44>:       mov    0x4(%edx),%eax
0x1a87 <main+47>:       movsbl (%eax),%eax
0x1a8a <main+50>:       xor    %ecx,%ecx
0x1a8c <main+52>:       mov    0xc7c1(%eax),%cl
0x1a92 <main+58>:       mov    %ecx,0xffffffb4(%ebp)
0x1a95 <main+61>:       mov    %ecx,%eax
0x1a97 <main+63>:       add    $0xffffffbf,%eax
0x1a9a <main+66>:       cmp    $0x19,%eax
0x1a9d <main+69>:       jbe    0x1ac0 <main+104>
0x1a9f <main+71>:       mov    (%edx),%eax
0x1aa1 <main+73>:       add    $0xfffffff8,%esp
0x1aa4 <main+76>:       push   %eax
0x1aa5 <main+77>:       push   $0x1810
0x1aaa <main+82>:       call   0x3800 <printf>
0x1aaf <main+87>:       add    $0xfffffff4,%esp
0x1ab2 <main+90>:       push   $0x1
0x1ab4 <main+92>:       call   0x3850 <exit>
0x1ab9 <main+97>:       lea    0x0(%esi,1),%esi
0x1ac0 <main+104>:      mov    0xffffffb4(%ebp),%eax
0x1ac3 <main+107>:      add    $0xfffffffc,%esp
0x1ac6 <main+110>:      push   %eax
0x1ac7 <main+111>:      push   $0x1843
0x1acc <main+116>:      lea    0xffffffc4(%ebp),%edx
0x1acf <main+119>:      mov    %edx,0xffffffb0(%ebp)
0x1ad2 <main+122>:      push   %edx
0x1ad3 <main+123>:      call   0x38e0 <sprintf>
0x1ad8 <main+128>:      mov    0xffffffb0(%ebp),%ecx
0x1adb <main+131>:      add    $0xfffffff4,%esp
0x1ade <main+134>:      push   %ecx
0x1adf <main+135>:      call   0x3924 <_put_path>
0x1ae4 <main+140>:      movw   $0x7303,0xffffffe8(%ebp)
0x1aea <main+146>:      mov    0x1012c,%eax
0x1aef <main+151>:      shr    $0x4,%eax
0x1af2 <main+154>:      mov    %ax,0xffffffee(%ebp)
0x1af6 <main+158>:      mov    %ax,0xfffffff0(%ebp)
0x1afa <main+162>:      movw   $0x0,0xffffffcc(%ebp)
0x1b00 <main+168>:      movw   $0x0,0xffffffe0(%ebp)
0x1b06 <main+174>:      movw   $0x100,0xffffffe4(%ebp)
0x1b0c <main+180>:      add    $0x20,%esp
0x1b0f <main+183>:      add    $0xfffffff8,%esp
0x1b12 <main+186>:      lea    0xffffffcc(%ebp),%ebx
0x1b15 <main+189>:      push   %ebx
0x1b16 <main+190>:      push   $0x21
0x1b18 <main+192>:      call   0x3740 <__dpmi_int>
0x1b1d <main+197>:      add    $0x10,%esp
0x1b20 <main+200>:      mov    $0xffffffff,%edi
0x1b25 <main+205>:      testb  $0x1,0xffffffec(%ebp)
0x1b29 <main+209>:      jne    0x1b31 <main+217>
0x1b2b <main+211>:      xor    %edi,%edi
0x1b2d <main+213>:      mov    0xffffffe8(%ebp),%di
0x1b31 <main+217>:      mov    0x1013a,%dx
0x1b38 <main+224>:      mov    0x1012c,%ecx
0x1b3e <main+230>:      lea    0xc(%ecx),%esi
0x1b41 <main+233>:      mov    %edx,%gs
0x1b43 <main+235>:      mov    %gs:(%esi),%esi
0x1b46 <main+238>:      mov    %esi,0xffffffbc(%ebp)
0x1b49 <main+241>:      lea    0x8(%ecx),%ebx
0x1b4c <main+244>:      mov    %edx,%gs
0x1b4e <main+246>:      mov    %gs:(%ebx),%ebx
0x1b51 <main+249>:      lea    0x4(%ecx),%eax
0x1b54 <main+252>:      mov    %edx,%gs
0x1b56 <main+254>:      mov    %gs:(%eax),%eax
0x1b59 <main+257>:      imul   %eax,%ebx
0x1b5c <main+260>:      add    $0x10,%ecx
0x1b5f <main+263>:      mov    %ebx,0xffffffc0(%ebp)
0x1b62 <main+266>:      mov    %edx,%gs
0x1b64 <main+268>:      mov    %gs:(%ecx),%edx
0x1b67 <main+271>:      mov    %edx,0xffffffb8(%ebp)
0x1b6a <main+274>:      add    $0xfffffffc,%esp
0x1b6d <main+277>:      push   %esi
0x1b6e <main+278>:      push   %edx
0x1b6f <main+279>:      push   %ebx
0x1b70 <main+280>:      mov    0x10150,%eax
0x1b75 <main+285>:      push   %eax
0x1b76 <main+286>:      push   %edi
0x1b77 <main+287>:      mov    0xffffffb4(%ebp),%eax
0x1b7a <main+290>:      push   %eax
0x1b7b <main+291>:      push   $0x1850
0x1b80 <main+296>:      call   0x3800 <printf>
0x1b85 <main+301>:      mov    0xffffffb8(%ebp),%esi
0x1b88 <main+304>:      mov    0xffffffc0(%ebp),%edi
0x1b8b <main+307>:      mov    %edi,%eax
0x1b8d <main+309>:      imul   %esi,%eax
0x1b8f <main+311>:      add    $0x20,%esp
0x1b92 <main+314>:      add    $0xfffffffc,%esp
0x1b95 <main+317>:      mov    %eax,0xffffff94(%ebp)
0x1b98 <main+320>:      mov    %edx,0xffffff98(%ebp)
0x1b9b <main+323>:      mov    %eax,%ecx
0x1b9d <main+325>:      mov    %edx,%ebx
0x1b9f <main+327>:      test   %edx,%edx
0x1ba1 <main+329>:      jge    0x1bae <main+342>
0x1ba3 <main+331>:      addl   $0x3ff,0xffffff94(%ebp)
0x1baa <main+338>:      adcl   $0x0,0xffffff98(%ebp)
0x1bae <main+342>:      mov    0xffffff94(%ebp),%eax
0x1bb1 <main+345>:      mov    0xffffff98(%ebp),%edx
0x1bb4 <main+348>:      shrd   $0xa,%edx,%eax
0x1bb8 <main+352>:      sar    $0xa,%edx
0x1bbb <main+355>:      push   %edx
0x1bbc <main+356>:      push   %eax
0x1bbd <main+357>:      push   %esi
0x1bbe <main+358>:      push   %edi
0x1bbf <main+359>:      push   %ebx
0x1bc0 <main+360>:      push   %ecx
0x1bc1 <main+361>:      push   $0x18b0
0x1bc6 <main+366>:      call   0x3800 <printf>
0x1bcb <main+371>:      add    $0x20,%esp
0x1bce <main+374>:      add    $0xfffffff4,%esp
0x1bd1 <main+377>:      push   $0x18de
0x1bd6 <main+382>:      call   0x3800 <printf>
0x1bdb <main+387>:      mov    0xffffffb4(%ebp),%edx
0x1bde <main+390>:      add    $0xfffffffc,%esp
0x1be1 <main+393>:      push   %edx
0x1be2 <main+394>:      push   $0x1843
0x1be7 <main+399>:      mov    0xffffffb0(%ebp),%ecx
0x1bea <main+402>:      push   %ecx
0x1beb <main+403>:      call   0x38e0 <sprintf>
0x1bf0 <main+408>:      mov    0xffffffb0(%ebp),%eax
0x1bf3 <main+411>:      add    $0x20,%esp
0x1bf6 <main+414>:      add    $0xfffffff4,%esp
0x1bf9 <main+417>:      push   %eax
0x1bfa <main+418>:      call   0x3924 <_put_path>
0x1bff <main+423>:      add    $0x10,%esp
0x1c02 <main+426>:      movl   0x1013a,%gs
0x1c08 <main+432>:      mov    0xffffffb4(%ebp),%ecx
0x1c0b <main+435>:      add    $0xffffffbf,%ecx
0x1c0e <main+438>:      mov    %ecx,0xffffff9c(%ebp)
0x1c11 <main+441>:      mov    0xffffffb4(%ebp),%al
0x1c14 <main+444>:      add    $0xc0,%al
0x1c16 <main+446>:      mov    %al,0xffffffaf(%ebp)
0x1c19 <main+449>:      lea    0xffffffc0(%ebp),%ecx
0x1c1c <main+452>:      mov    %ecx,0xffffffa0(%ebp)
0x1c1f <main+455>:      lea    0xffffffbc(%ebp),%eax
0x1c22 <main+458>:      mov    %eax,0xffffffa4(%ebp)
0x1c25 <main+461>:      lea    0xffffffb8(%ebp),%ecx
0x1c28 <main+464>:      mov    %ecx,0xffffffa8(%ebp)
0x1c2b <main+467>:      mov    0x1012c,%ecx
0x1c31 <main+473>:      xor    %edx,%edx
0x1c33 <main+475>:      and    $0xfffffff0,%ecx
0x1c36 <main+478>:      lea    0x400(%edx,%ecx,1),%eax
0x1c3d <main+485>:      movb   $0x0,%gs:(%eax)
0x1c41 <main+489>:      inc    %edx
0x1c42 <main+490>:      cmp    $0xff,%edx
0x1c48 <main+496>:      jle    0x1c36 <main+478>
0x1c4a <main+498>:      movw   $0x7303,0xffffffe8(%ebp)
0x1c50 <main+504>:      mov    0x1012c,%eax
0x1c55 <main+509>:      shr    $0x4,%eax
0x1c58 <main+512>:      mov    %ax,0xffffffee(%ebp)
0x1c5c <main+516>:      mov    %ax,0xfffffff0(%ebp)
0x1c60 <main+520>:      movw   $0x0,0xffffffe0(%ebp)
0x1c66 <main+526>:      movw   $0x400,0xffffffcc(%ebp)
0x1c6c <main+532>:      movw   $0x100,0xffffffe4(%ebp)
0x1c72 <main+538>:      add    $0xfffffff8,%esp
0x1c75 <main+541>:      lea    0xffffffcc(%ebp),%eax
0x1c78 <main+544>:      push   %eax
0x1c79 <main+545>:      push   $0x21
0x1c7b <main+547>:      call   0x3740 <__dpmi_int>
0x1c80 <main+552>:      add    $0x10,%esp
0x1c83 <main+555>:      mov    $0xffffffff,%edi
0x1c88 <main+560>:      testb  $0x1,0xffffffec(%ebp)
0x1c8c <main+564>:      jne    0x1c94 <main+572>
0x1c8e <main+566>:      xor    %edi,%edi
0x1c90 <main+568>:      mov    0xffffffe8(%ebp),%di
0x1c94 <main+572>:      mov    0x1013a,%dx
0x1c9b <main+579>:      mov    0x1012c,%ecx
0x1ca1 <main+585>:      lea    0x40c(%ecx),%esi
0x1ca7 <main+591>:      mov    %edx,%gs
0x1ca9 <main+593>:      mov    %gs:(%esi),%esi
0x1cac <main+596>:      mov    %esi,0xffffffbc(%ebp)
0x1caf <main+599>:      lea    0x408(%ecx),%ebx
0x1cb5 <main+605>:      mov    %edx,%gs
0x1cb7 <main+607>:      mov    %gs:(%ebx),%ebx
0x1cba <main+610>:      lea    0x404(%ecx),%eax
0x1cc0 <main+616>:      mov    %edx,%gs
0x1cc2 <main+618>:      mov    %gs:(%eax),%eax
0x1cc5 <main+621>:      imul   %eax,%ebx
0x1cc8 <main+624>:      add    $0x410,%ecx
0x1cce <main+630>:      mov    %ebx,0xffffffc0(%ebp)
0x1cd1 <main+633>:      mov    %edx,%gs
0x1cd3 <main+635>:      mov    %gs:(%ecx),%edx
0x1cd6 <main+638>:      mov    %edx,0xffffffb8(%ebp)
0x1cd9 <main+641>:      add    $0xfffffffc,%esp
0x1cdc <main+644>:      push   %esi
0x1cdd <main+645>:      push   %edx
0x1cde <main+646>:      push   %ebx
0x1cdf <main+647>:      mov    0x10150,%eax
0x1ce4 <main+652>:      push   %eax
0x1ce5 <main+653>:      push   %edi
0x1ce6 <main+654>:      mov    0xffffffb4(%ebp),%edx
0x1ce9 <main+657>:      push   %edx
0x1cea <main+658>:      push   $0x18f0
0x1cef <main+663>:      call   0x3800 <printf>
0x1cf4 <main+668>:      mov    0xffffffb8(%ebp),%esi
0x1cf7 <main+671>:      mov    0xffffffc0(%ebp),%edi
0x1cfa <main+674>:      mov    %edi,%eax
0x1cfc <main+676>:      imul   %esi,%eax
0x1cfe <main+678>:      add    $0x20,%esp
0x1d01 <main+681>:      add    $0xfffffffc,%esp
0x1d04 <main+684>:      mov    %eax,0xffffff94(%ebp)
0x1d07 <main+687>:      mov    %edx,0xffffff98(%ebp)
0x1d0a <main+690>:      mov    %eax,%ecx
0x1d0c <main+692>:      mov    %edx,%ebx
0x1d0e <main+694>:      test   %edx,%edx
0x1d10 <main+696>:      jge    0x1d1d <main+709>
0x1d12 <main+698>:      addl   $0x3ff,0xffffff94(%ebp)
0x1d19 <main+705>:      adcl   $0x0,0xffffff98(%ebp)
0x1d1d <main+709>:      mov    0xffffff94(%ebp),%eax
0x1d20 <main+712>:      mov    0xffffff98(%ebp),%edx
0x1d23 <main+715>:      shrd   $0xa,%edx,%eax
0x1d27 <main+719>:      sar    $0xa,%edx
0x1d2a <main+722>:      push   %edx
0x1d2b <main+723>:      push   %eax
0x1d2c <main+724>:      push   %esi
0x1d2d <main+725>:      push   %edi
0x1d2e <main+726>:      push   %ebx
0x1d2f <main+727>:      push   %ecx
0x1d30 <main+728>:      push   $0x18b0
0x1d35 <main+733>:      call   0x3800 <printf>
0x1d3a <main+738>:      add    $0x20,%esp
0x1d3d <main+741>:      add    $0xfffffff4,%esp
0x1d40 <main+744>:      push   $0x18de
0x1d45 <main+749>:      call   0x3800 <printf>
0x1d4a <main+754>:      movw   $0x7302,0xffffffe8(%ebp)
0x1d50 <main+760>:      mov    0xffffffaf(%ebp),%dl
0x1d53 <main+763>:      mov    %dl,0xffffffe0(%ebp)
0x1d56 <main+766>:      mov    0x1012c,%eax
0x1d5b <main+771>:      shr    $0x4,%eax
0x1d5e <main+774>:      mov    %ax,0xffffffee(%ebp)
0x1d62 <main+778>:      movw   $0x0,0xffffffcc(%ebp)
0x1d68 <main+784>:      movw   $0x100,0xffffffe4(%ebp)
0x1d6e <main+790>:      add    $0xfffffff8,%esp
0x1d71 <main+793>:      lea    0xffffffcc(%ebp),%ecx
0x1d74 <main+796>:      push   %ecx
0x1d75 <main+797>:      push   $0x21
0x1d77 <main+799>:      call   0x3740 <__dpmi_int>
0x1d7c <main+804>:      add    $0x20,%esp
0x1d7f <main+807>:      mov    $0xffffffff,%edi
0x1d84 <main+812>:      testb  $0x1,0xffffffec(%ebp)
0x1d88 <main+816>:      jne    0x1d90 <main+824>
0x1d8a <main+818>:      xor    %edi,%edi
0x1d8c <main+820>:      mov    0xffffffe8(%ebp),%di
0x1d90 <main+824>:      mov    0xffffffbc(%ebp),%eax
0x1d93 <main+827>:      add    $0xfffffffc,%esp
0x1d96 <main+830>:      push   %eax
0x1d97 <main+831>:      mov    0xffffffb8(%ebp),%eax
0x1d9a <main+834>:      push   %eax
0x1d9b <main+835>:      mov    0xffffffc0(%ebp),%eax
0x1d9e <main+838>:      push   %eax
0x1d9f <main+839>:      mov    0x10150,%eax
0x1da4 <main+844>:      push   %eax
0x1da5 <main+845>:      push   %edi
0x1da6 <main+846>:      mov    0xffffffb4(%ebp),%eax
0x1da9 <main+849>:      push   %eax
0x1daa <main+850>:      push   $0x1950
0x1daf <main+855>:      call   0x3800 <printf>
0x1db4 <main+860>:      mov    0xffffffb8(%ebp),%esi
0x1db7 <main+863>:      mov    0xffffffc0(%ebp),%edi
0x1dba <main+866>:      mov    %edi,%eax
0x1dbc <main+868>:      imul   %esi,%eax
0x1dbe <main+870>:      add    $0x20,%esp
0x1dc1 <main+873>:      add    $0xfffffffc,%esp
0x1dc4 <main+876>:      mov    %eax,0xffffff94(%ebp)
0x1dc7 <main+879>:      mov    %edx,0xffffff98(%ebp)
0x1dca <main+882>:      mov    %eax,%ecx
0x1dcc <main+884>:      mov    %edx,%ebx
0x1dce <main+886>:      test   %edx,%edx
0x1dd0 <main+888>:      jge    0x1ddd <main+901>
0x1dd2 <main+890>:      addl   $0x3ff,0xffffff94(%ebp)
0x1dd9 <main+897>:      adcl   $0x0,0xffffff98(%ebp)
0x1ddd <main+901>:      mov    0xffffff94(%ebp),%eax
0x1de0 <main+904>:      mov    0xffffff98(%ebp),%edx
0x1de3 <main+907>:      shrd   $0xa,%edx,%eax
0x1de7 <main+911>:      sar    $0xa,%edx
0x1dea <main+914>:      push   %edx
0x1deb <main+915>:      push   %eax
0x1dec <main+916>:      push   %esi
0x1ded <main+917>:      push   %edi
0x1dee <main+918>:      push   %ebx
0x1def <main+919>:      push   %ecx
0x1df0 <main+920>:      push   $0x18b0
0x1df5 <main+925>:      call   0x3800 <printf>
0x1dfa <main+930>:      add    $0x20,%esp
0x1dfd <main+933>:      add    $0xfffffff4,%esp
0x1e00 <main+936>:      push   $0x18de
0x1e05 <main+941>:      call   0x3800 <printf>
0x1e0a <main+946>:      mov    0xffffffa0(%ebp),%edx
0x1e0d <main+949>:      add    $0x10,%esp
0x1e10 <main+952>:      push   %edx
0x1e11 <main+953>:      mov    0xffffffa4(%ebp),%ecx
0x1e14 <main+956>:      push   %ecx
0x1e15 <main+957>:      mov    0xffffffa8(%ebp),%eax
0x1e18 <main+960>:      push   %eax
0x1e19 <main+961>:      mov    0xffffff9c(%ebp),%edx
0x1e1c <main+964>:      push   %edx
0x1e1d <main+965>:      call   0x1570 <use_AX0x1510>
0x1e22 <main+970>:      add    $0x10,%esp
0x1e25 <main+973>:      xor    %edi,%edi
0x1e27 <main+975>:      test   %eax,%eax
0x1e29 <main+977>:      jne    0x1e30 <main+984>
0x1e2b <main+979>:      mov    $0xffffffff,%edi
0x1e30 <main+984>:      mov    0xffffffbc(%ebp),%eax
0x1e33 <main+987>:      add    $0xfffffffc,%esp
0x1e36 <main+990>:      push   %eax
0x1e37 <main+991>:      mov    0xffffffb8(%ebp),%eax
0x1e3a <main+994>:      push   %eax
0x1e3b <main+995>:      mov    0xffffffc0(%ebp),%eax
0x1e3e <main+998>:      push   %eax
0x1e3f <main+999>:      mov    0x10150,%eax
0x1e44 <main+1004>:     push   %eax
0x1e45 <main+1005>:     push   %edi
0x1e46 <main+1006>:     mov    0xffffffb4(%ebp),%ecx
0x1e49 <main+1009>:     push   %ecx
0x1e4a <main+1010>:     push   $0x19b0
0x1e4f <main+1015>:     call   0x3800 <printf>
0x1e54 <main+1020>:     mov    0xffffffc0(%ebp),%edi
0x1e57 <main+1023>:     mov    0xffffffb8(%ebp),%esi
0x1e5a <main+1026>:     mov    %edi,%eax
0x1e5c <main+1028>:     imul   %esi,%eax
0x1e5e <main+1030>:     add    $0x20,%esp
0x1e61 <main+1033>:     add    $0xfffffffc,%esp
0x1e64 <main+1036>:     mov    %eax,0xffffff94(%ebp)
0x1e67 <main+1039>:     mov    %edx,0xffffff98(%ebp)
0x1e6a <main+1042>:     mov    %eax,%ecx
0x1e6c <main+1044>:     mov    %edx,%ebx
0x1e6e <main+1046>:     test   %edx,%edx
0x1e70 <main+1048>:     jge    0x1e7d <main+1061>
0x1e72 <main+1050>:     addl   $0x3ff,0xffffff94(%ebp)
0x1e79 <main+1057>:     adcl   $0x0,0xffffff98(%ebp)
0x1e7d <main+1061>:     mov    0xffffff94(%ebp),%eax
0x1e80 <main+1064>:     mov    0xffffff98(%ebp),%edx
0x1e83 <main+1067>:     shrd   $0xa,%edx,%eax
0x1e87 <main+1071>:     sar    $0xa,%edx
0x1e8a <main+1074>:     push   %edx
0x1e8b <main+1075>:     push   %eax
0x1e8c <main+1076>:     push   %esi
0x1e8d <main+1077>:     push   %edi
0x1e8e <main+1078>:     push   %ebx
0x1e8f <main+1079>:     push   %ecx
0x1e90 <main+1080>:     push   $0x18b0
0x1e95 <main+1085>:     call   0x3800 <printf>
0x1e9a <main+1090>:     add    $0x20,%esp
0x1e9d <main+1093>:     add    $0xfffffff4,%esp
0x1ea0 <main+1096>:     push   $0x18de
0x1ea5 <main+1101>:     call   0x3800 <printf>
0x1eaa <main+1106>:     mov    0xffffffa0(%ebp),%edx
0x1ead <main+1109>:     push   %edx
0x1eae <main+1110>:     mov    0xffffffa4(%ebp),%ecx
0x1eb1 <main+1113>:     push   %ecx
0x1eb2 <main+1114>:     mov    0xffffffa8(%ebp),%eax
0x1eb5 <main+1117>:     push   %eax
0x1eb6 <main+1118>:     mov    0xffffff9c(%ebp),%edx
0x1eb9 <main+1121>:     push   %edx
0x1eba <main+1122>:     call   0x1794 <use_AH0x36>
0x1ebf <main+1127>:     mov    %eax,%edi
0x1ec1 <main+1129>:     mov    0xffffffbc(%ebp),%eax
0x1ec4 <main+1132>:     add    $0x20,%esp
0x1ec7 <main+1135>:     add    $0xfffffffc,%esp
0x1eca <main+1138>:     push   %eax
0x1ecb <main+1139>:     mov    0xffffffb8(%ebp),%eax
0x1ece <main+1142>:     push   %eax
0x1ecf <main+1143>:     mov    0xffffffc0(%ebp),%eax
0x1ed2 <main+1146>:     push   %eax
0x1ed3 <main+1147>:     mov    0x10150,%eax
0x1ed8 <main+1152>:     push   %eax
0x1ed9 <main+1153>:     push   %edi
0x1eda <main+1154>:     mov    0xffffffb4(%ebp),%ecx
0x1edd <main+1157>:     push   %ecx
0x1ede <main+1158>:     push   $0x1a10
0x1ee3 <main+1163>:     call   0x3800 <printf>
0x1ee8 <main+1168>:     mov    0xffffffc0(%ebp),%edi
0x1eeb <main+1171>:     mov    0xffffffb8(%ebp),%esi
0x1eee <main+1174>:     mov    %edi,%eax
0x1ef0 <main+1176>:     imul   %esi,%eax
0x1ef2 <main+1178>:     add    $0x20,%esp
0x1ef5 <main+1181>:     add    $0xfffffffc,%esp
0x1ef8 <main+1184>:     mov    %eax,0xffffff94(%ebp)
0x1efb <main+1187>:     mov    %edx,0xffffff98(%ebp)
0x1efe <main+1190>:     mov    %eax,%ecx
0x1f00 <main+1192>:     mov    %edx,%ebx
0x1f02 <main+1194>:     test   %edx,%edx
0x1f04 <main+1196>:     jge    0x1f11 <main+1209>
0x1f06 <main+1198>:     addl   $0x3ff,0xffffff94(%ebp)
0x1f0d <main+1205>:     adcl   $0x0,0xffffff98(%ebp)
0x1f11 <main+1209>:     mov    0xffffff94(%ebp),%eax
0x1f14 <main+1212>:     mov    0xffffff98(%ebp),%edx
0x1f17 <main+1215>:     shrd   $0xa,%edx,%eax
0x1f1b <main+1219>:     sar    $0xa,%edx
0x1f1e <main+1222>:     push   %edx
0x1f1f <main+1223>:     push   %eax
0x1f20 <main+1224>:     push   %esi
0x1f21 <main+1225>:     push   %edi
0x1f22 <main+1226>:     push   %ebx
0x1f23 <main+1227>:     push   %ecx
0x1f24 <main+1228>:     push   $0x18b0
0x1f29 <main+1233>:     call   0x3800 <printf>
0x1f2e <main+1238>:     add    $0x20,%esp
0x1f31 <main+1241>:     add    $0xfffffff4,%esp
0x1f34 <main+1244>:     push   $0x18de
0x1f39 <main+1249>:     call   0x3800 <printf>
0x1f3e <main+1254>:     lea    0xffffff78(%ebp),%esp
0x1f44 <main+1260>:     xor    %eax,%eax
0x1f46 <main+1262>:     pop    %ebx
0x1f47 <main+1263>:     pop    %esi
0x1f48 <main+1264>:     pop    %edi
0x1f49 <main+1265>:     mov    %ebp,%esp
0x1f4b <main+1267>:     pop    %ebp
0x1f4c <main+1268>:     ret
0x1f4d <main+1269>:     nop
0x1f4e <main+1270>:     nop
0x1f4f <main+1271>:     nop
End of assembler dump.


Right,

						MartinS

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019