| .globl addpoint |
| .text |
| .align 16 |
| .type addpoint,@function |
| addpoint: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| movl 32(%ebp),%edi |
| addl %edi,24(%ebp) |
| movl 36(%ebp),%edi |
| addl %edi,28(%ebp) |
| movl 20(%ebp),%edi |
| leal 24(%ebp),%esi |
| movl $8,%ecx |
| rep |
| movsb |
| .LC1: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf5: |
| .size addpoint,.Lf5-addpoint |
| .globl canonrect |
| .align 16 |
| .type canonrect,@function |
| canonrect: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| subl $32,%esp |
| movl 32(%ebp),%edi |
| cmpl %edi,24(%ebp) |
| jge .LC11 |
| movl 24(%ebp),%edi |
| movl %edi,-20(%ebp) |
| jmp .LC12 |
| .LC11: |
| movl 32(%ebp),%edi |
| movl %edi,-20(%ebp) |
| .LC12: |
| movl -20(%ebp),%edi |
| movl %edi,-16(%ebp) |
| movl 36(%ebp),%edi |
| cmpl %edi,28(%ebp) |
| jge .LC21 |
| movl 28(%ebp),%edi |
| movl %edi,-24(%ebp) |
| jmp .LC22 |
| .LC21: |
| movl 36(%ebp),%edi |
| movl %edi,-24(%ebp) |
| .LC22: |
| movl -24(%ebp),%edi |
| movl %edi,-12(%ebp) |
| movl 32(%ebp),%edi |
| cmpl %edi,24(%ebp) |
| jle .LC27 |
| movl 24(%ebp),%edi |
| movl %edi,-28(%ebp) |
| jmp .LC28 |
| .LC27: |
| movl 32(%ebp),%edi |
| movl %edi,-28(%ebp) |
| .LC28: |
| movl -28(%ebp),%edi |
| movl %edi,-8(%ebp) |
| movl 36(%ebp),%edi |
| cmpl %edi,28(%ebp) |
| jle .LC38 |
| movl 28(%ebp),%edi |
| movl %edi,-32(%ebp) |
| jmp .LC39 |
| .LC38: |
| movl 36(%ebp),%edi |
| movl %edi,-32(%ebp) |
| .LC39: |
| movl -32(%ebp),%edi |
| movl %edi,-4(%ebp) |
| movl 20(%ebp),%edi |
| leal -16(%ebp),%esi |
| movl $16,%ecx |
| rep |
| movsb |
| .LC6: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf40: |
| .size canonrect,.Lf40-canonrect |
| .globl makepoint |
| .align 16 |
| .type makepoint,@function |
| makepoint: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| subl $8,%esp |
| movl 24(%ebp),%edi |
| movl %edi,-8(%ebp) |
| movl 28(%ebp),%edi |
| movl %edi,-4(%ebp) |
| movl 20(%ebp),%edi |
| leal -8(%ebp),%esi |
| movl $8,%ecx |
| rep |
| movsb |
| .LC41: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf44: |
| .size makepoint,.Lf44-makepoint |
| .globl makerect |
| .align 16 |
| .type makerect,@function |
| makerect: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| subl $16,%esp |
| leal -16(%ebp),%edi |
| leal 24(%ebp),%esi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -8(%ebp),%edi |
| leal 32(%ebp),%esi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -16(%ebp),%esi |
| subl $16,%esp |
| movl %esp,%edi |
| movl $16,%ecx |
| rep |
| movsb |
| pushl 20(%ebp) |
| call canonrect |
| addl $20,%esp |
| .LC45: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf48: |
| .size makerect,.Lf48-makerect |
| .globl ptinrect |
| .align 16 |
| .type ptinrect,@function |
| ptinrect: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| subl $4,%esp |
| movl 20(%ebp),%edi |
| cmpl 28(%ebp),%edi |
| jl .LC57 |
| cmpl 36(%ebp),%edi |
| jge .LC57 |
| movl 32(%ebp),%edi |
| cmpl %edi,24(%ebp) |
| jl .LC57 |
| movl 40(%ebp),%edi |
| cmpl %edi,24(%ebp) |
| jge .LC57 |
| movl $1,-4(%ebp) |
| jmp .LC58 |
| .LC57: |
| movl $0,-4(%ebp) |
| .LC58: |
| movl -4(%ebp),%eax |
| .LC49: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf59: |
| .size ptinrect,.Lf59-ptinrect |
| .data |
| .globl y |
| .align 1 |
| .type y,@object |
| .size y,3 |
| y: |
| .byte 97 |
| .byte 98 |
| .byte 0 |
| .globl odd |
| .text |
| .align 16 |
| .type odd,@function |
| odd: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| subl $4,%esp |
| leal -4(%ebp),%edi |
| leal 20(%ebp),%esi |
| movl $3,%ecx |
| rep |
| movsb |
| leal -4(%ebp),%edi |
| pushl %edi |
| pushl $.LC61 |
| call printf |
| addl $8,%esp |
| mov $0,%eax |
| .LC60: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf62: |
| .size odd,.Lf62-odd |
| .data |
| .align 4 |
| .LC64: |
| .long 0 |
| .long 0 |
| .align 4 |
| .LC65: |
| .long 320 |
| .long 320 |
| .align 4 |
| .LC66: |
| .long -1 |
| .long -1 |
| .long 1 |
| .long 1 |
| .long 20 |
| .long 300 |
| .long 500 |
| .long 400 |
| .globl main |
| .text |
| .align 16 |
| .type main,@function |
| main: |
| pushl %ebp |
| pushl %ebx |
| pushl %esi |
| pushl %edi |
| movl %esp,%ebp |
| subl $108,%esp |
| leal -68(%ebp),%edi |
| leal .LC64,%esi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -76(%ebp),%edi |
| leal .LC65,%esi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -36(%ebp),%edi |
| leal .LC66,%esi |
| movl $32,%ecx |
| rep |
| movsb |
| pushl $-10 |
| pushl $-10 |
| leal -84(%ebp),%edi |
| pushl %edi |
| call makepoint |
| addl $12,%esp |
| leal -84(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -76(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -92(%ebp),%edi |
| pushl %edi |
| call addpoint |
| addl $20,%esp |
| pushl $10 |
| pushl $10 |
| leal -100(%ebp),%edi |
| pushl %edi |
| call makepoint |
| addl $12,%esp |
| leal -100(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -68(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -108(%ebp),%edi |
| pushl %edi |
| call addpoint |
| addl $20,%esp |
| leal -108(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -92(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| leal -52(%ebp),%edi |
| pushl %edi |
| call makerect |
| addl $20,%esp |
| movl $0,-4(%ebp) |
| jmp .LC70 |
| .LC67: |
| movl -4(%ebp),%edi |
| leal (,%edi,8),%edi |
| leal -32(%ebp),%esi |
| pushl (%esi,%edi) |
| leal -36(%ebp),%esi |
| pushl (%esi,%edi) |
| leal -60(%ebp),%edi |
| pushl %edi |
| call makepoint |
| addl $12,%esp |
| pushl -56(%ebp) |
| movl -4(%ebp),%edi |
| leal -36(%ebp),%esi |
| pushl (%esi,%edi,8) |
| pushl $.LC71 |
| call printf |
| addl $12,%esp |
| leal -52(%ebp),%esi |
| subl $16,%esp |
| movl %esp,%edi |
| movl $16,%ecx |
| rep |
| movsb |
| leal -60(%ebp),%esi |
| subl $8,%esp |
| movl %esp,%edi |
| movl $8,%ecx |
| rep |
| movsb |
| call ptinrect |
| addl $24,%esp |
| cmpl $0,%eax |
| jne .LC74 |
| pushl $.LC76 |
| call printf |
| addl $4,%esp |
| .LC74: |
| pushl -40(%ebp) |
| pushl -44(%ebp) |
| pushl -48(%ebp) |
| pushl -52(%ebp) |
| pushl $.LC77 |
| call printf |
| addl $20,%esp |
| .LC68: |
| incl -4(%ebp) |
| .LC70: |
| movl -4(%ebp),%edi |
| cmpl $4,%edi |
| jb .LC67 |
| leal y,%esi |
| subl $4,%esp |
| movl %esp,%edi |
| movl $3,%ecx |
| rep |
| movsb |
| call odd |
| addl $3,%esp |
| pushl $0 |
| call exit |
| addl $4,%esp |
| mov $0,%eax |
| .LC63: |
| movl %ebp,%esp |
| popl %edi |
| popl %esi |
| popl %ebx |
| popl %ebp |
| ret |
| .Lf82: |
| .size main,.Lf82-main |
| .data |
| .align 1 |
| .LC77: |
| .byte 119 |
| .byte 105 |
| .byte 116 |
| .byte 104 |
| .byte 105 |
| .byte 110 |
| .byte 32 |
| .byte 91 |
| .byte 37 |
| .byte 100 |
| .byte 44 |
| .byte 37 |
| .byte 100 |
| .byte 59 |
| .byte 32 |
| .byte 37 |
| .byte 100 |
| .byte 44 |
| .byte 37 |
| .byte 100 |
| .byte 93 |
| .byte 10 |
| .byte 0 |
| .align 1 |
| .LC76: |
| .byte 110 |
| .byte 111 |
| .byte 116 |
| .byte 32 |
| .byte 0 |
| .align 1 |
| .LC71: |
| .byte 40 |
| .byte 37 |
| .byte 100 |
| .byte 44 |
| .byte 37 |
| .byte 100 |
| .byte 41 |
| .byte 32 |
| .byte 105 |
| .byte 115 |
| .byte 32 |
| .byte 0 |
| .align 1 |
| .LC61: |
| .byte 37 |
| .byte 115 |
| .byte 10 |
| .byte 0 |
| .text |
| .ident "LCC: 4.1" |