| .486 |
| .model flat |
| extrn __fltused:near |
| extrn __ftol:near |
| _DATA segment |
| public _x |
| align 4 |
| _x label byte |
| dd 1 |
| dd 2 |
| dd 3 |
| dd 4 |
| public _main |
| _DATA ends |
| _TEXT segment |
| _main: |
| push ebx |
| push esi |
| push edi |
| push ebp |
| mov ebp,esp |
| sub esp,8 |
| lea edi,(L2) |
| push edi |
| call _print |
| add esp,4 |
| lea edi,(L4) |
| push edi |
| lea edi,(L3) |
| push edi |
| call _print |
| add esp,8 |
| push 10 |
| push 3 |
| lea edi,(L5) |
| push edi |
| call _print |
| add esp,12 |
| push 10 |
| push 4 |
| lea edi,(L8) |
| push edi |
| lea edi,(L7) |
| push edi |
| lea edi,(L6) |
| push edi |
| call _print |
| add esp,20 |
| push 10 |
| fld qword ptr (L10) |
| sub esp,8 |
| fstp qword ptr [esp] |
| lea edi,(L8) |
| push edi |
| lea edi,(L7) |
| push edi |
| lea edi,(L9) |
| push edi |
| call _print |
| add esp,24 |
| lea edi,(_x) |
| mov dword ptr (-8)[ebp],edi |
| mov esi,edi |
| mov dword ptr (-4)[ebp],esi |
| sub esp,16 |
| mov edi,esp |
| mov ecx,16 |
| rep movsb |
| mov edi,dword ptr (-8)[ebp] |
| mov esi,edi |
| sub esp,16 |
| mov edi,esp |
| mov ecx,16 |
| rep movsb |
| mov edi,dword ptr (-8)[ebp] |
| mov esi,edi |
| sub esp,16 |
| mov edi,esp |
| mov ecx,16 |
| rep movsb |
| mov edi,dword ptr (-8)[ebp] |
| mov esi,edi |
| sub esp,16 |
| mov edi,esp |
| mov ecx,16 |
| rep movsb |
| mov edi,dword ptr (-8)[ebp] |
| mov esi,edi |
| sub esp,16 |
| mov edi,esp |
| mov ecx,16 |
| rep movsb |
| mov edi,dword ptr (-8)[ebp] |
| mov esi,edi |
| sub esp,16 |
| mov edi,esp |
| mov ecx,16 |
| rep movsb |
| lea edi,(L11) |
| push edi |
| call _print |
| add esp,100 |
| mov eax,0 |
| L1: |
| mov esp,ebp |
| pop ebp |
| pop edi |
| pop esi |
| pop ebx |
| ret |
| public _print |
| _print: |
| push ebx |
| push esi |
| push edi |
| push ebp |
| mov ebp,esp |
| sub esp,28 |
| lea edi,(24)[ebp] |
| mov dword ptr (-4)[ebp],edi |
| jmp L17 |
| L14: |
| mov edi,dword ptr (20)[ebp] |
| movsx edi,byte ptr [edi] |
| cmp edi,37 |
| jne L18 |
| mov edi,dword ptr (20)[ebp] |
| lea edi,(1)[edi] |
| mov dword ptr (20)[ebp],edi |
| movsx edi,byte ptr [edi] |
| mov dword ptr (-8)[ebp],edi |
| mov edi,dword ptr (-8)[ebp] |
| cmp edi,115 |
| je L34 |
| cmp edi,115 |
| jg L39 |
| L38: |
| mov edi,dword ptr (-8)[ebp] |
| cmp edi,98 |
| jl L20 |
| cmp edi,102 |
| jg L20 |
| jmp dword ptr (L40-392)[edi*4] |
| _TEXT ends |
| _TEXT segment |
| align 4 |
| L40 label byte |
| dd L23 |
| dd L28 |
| dd L30 |
| dd L20 |
| dd L36 |
| _TEXT ends |
| _TEXT segment |
| L39: |
| cmp dword ptr (-8)[ebp],119 |
| je L32 |
| jmp L20 |
| L23: |
| mov edi,dword ptr (-4)[ebp] |
| lea edi,(16)[edi] |
| mov dword ptr (-28)[ebp],edi |
| mov dword ptr (-4)[ebp],edi |
| lea edi,(-24)[ebp] |
| mov esi,dword ptr (-28)[ebp] |
| lea esi,(-16)[esi] |
| mov ecx,16 |
| rep movsb |
| mov edi,dword ptr (-12)[ebp] |
| push edi |
| mov edi,dword ptr (-16)[ebp] |
| push edi |
| mov edi,dword ptr (-20)[ebp] |
| push edi |
| mov edi,dword ptr (-24)[ebp] |
| push edi |
| lea edi,(L24) |
| push edi |
| call _printf |
| add esp,20 |
| jmp L19 |
| L28: |
| mov edi,dword ptr (-4)[ebp] |
| lea edi,(4)[edi] |
| mov dword ptr (-4)[ebp],edi |
| movsx edi,byte ptr (-4)[edi] |
| push edi |
| lea edi,(L29) |
| push edi |
| call _printf |
| add esp,8 |
| jmp L19 |
| L30: |
| mov edi,dword ptr (-4)[ebp] |
| lea edi,(4)[edi] |
| mov dword ptr (-4)[ebp],edi |
| mov edi,dword ptr (-4)[edi] |
| push edi |
| lea edi,(L31) |
| push edi |
| call _printf |
| add esp,8 |
| jmp L19 |
| L32: |
| mov edi,dword ptr (-4)[ebp] |
| lea edi,(4)[edi] |
| mov dword ptr (-4)[ebp],edi |
| movsx edi,word ptr (-4)[edi] |
| push edi |
| lea edi,(L33) |
| push edi |
| call _printf |
| add esp,8 |
| jmp L19 |
| L34: |
| mov edi,dword ptr (-4)[ebp] |
| lea edi,(4)[edi] |
| mov dword ptr (-4)[ebp],edi |
| mov edi,dword ptr (-4)[edi] |
| push edi |
| lea edi,(L35) |
| push edi |
| call _printf |
| add esp,8 |
| jmp L19 |
| L36: |
| mov edi,dword ptr (-4)[ebp] |
| lea edi,(8)[edi] |
| mov dword ptr (-4)[ebp],edi |
| fld qword ptr (-8)[edi] |
| sub esp,8 |
| fstp qword ptr [esp] |
| lea edi,(L37) |
| push edi |
| call _printf |
| add esp,12 |
| jmp L19 |
| L20: |
| mov edi,dword ptr (20)[ebp] |
| movsx edi,byte ptr [edi] |
| push edi |
| lea edi,(L29) |
| push edi |
| call _printf |
| add esp,8 |
| jmp L19 |
| L18: |
| mov edi,dword ptr (20)[ebp] |
| movsx edi,byte ptr [edi] |
| push edi |
| lea edi,(L29) |
| push edi |
| call _printf |
| add esp,8 |
| L19: |
| L15: |
| inc dword ptr (20)[ebp] |
| L17: |
| mov edi,dword ptr (20)[ebp] |
| movsx edi,byte ptr [edi] |
| cmp edi,0 |
| jne L14 |
| mov dword ptr (-4)[ebp],0 |
| mov eax,0 |
| L12: |
| mov esp,ebp |
| pop ebp |
| pop edi |
| pop esi |
| pop ebx |
| ret |
| _TEXT ends |
| extrn _printf:near |
| _TEXT segment |
| _TEXT ends |
| _TEXT segment |
| align 1 |
| L37 label byte |
| db 37 |
| db 102 |
| db 0 |
| align 1 |
| L35 label byte |
| db 37 |
| db 115 |
| db 0 |
| align 1 |
| L33 label byte |
| db 37 |
| db 120 |
| db 0 |
| align 1 |
| L31 label byte |
| db 37 |
| db 100 |
| db 0 |
| align 1 |
| L29 label byte |
| db 37 |
| db 99 |
| db 0 |
| align 1 |
| L24 label byte |
| db 123 |
| db 37 |
| db 100 |
| db 32 |
| db 37 |
| db 100 |
| db 32 |
| db 37 |
| db 100 |
| db 32 |
| db 37 |
| db 100 |
| db 125 |
| db 0 |
| align 1 |
| L11 label byte |
| db 37 |
| db 98 |
| db 32 |
| db 37 |
| db 98 |
| db 32 |
| db 37 |
| db 98 |
| db 32 |
| db 37 |
| db 98 |
| db 32 |
| db 37 |
| db 98 |
| db 32 |
| db 37 |
| db 98 |
| db 10 |
| db 0 |
| align 4 |
| L10 label byte |
| dd 00H |
| dd 040140000H |
| align 1 |
| L9 label byte |
| db 37 |
| db 115 |
| db 37 |
| db 115 |
| db 32 |
| db 37 |
| db 102 |
| db 37 |
| db 99 |
| db 0 |
| align 1 |
| L8 label byte |
| db 115 |
| db 116 |
| db 0 |
| align 1 |
| L7 label byte |
| db 116 |
| db 101 |
| db 0 |
| align 1 |
| L6 label byte |
| db 37 |
| db 115 |
| db 37 |
| db 115 |
| db 32 |
| db 37 |
| db 119 |
| db 37 |
| db 99 |
| db 0 |
| align 1 |
| L5 label byte |
| db 116 |
| db 101 |
| db 115 |
| db 116 |
| db 32 |
| db 37 |
| db 100 |
| db 37 |
| db 99 |
| db 0 |
| align 1 |
| L4 label byte |
| db 50 |
| db 0 |
| align 1 |
| L3 label byte |
| db 116 |
| db 101 |
| db 115 |
| db 116 |
| db 32 |
| db 37 |
| db 115 |
| db 10 |
| db 0 |
| align 1 |
| L2 label byte |
| db 116 |
| db 101 |
| db 115 |
| db 116 |
| db 32 |
| db 49 |
| db 10 |
| db 0 |
| _TEXT ends |
| end |