.486 .model flat extrn __fltused:near extrn __ftol:near _DATA segment public _yyin align 4 _yyin label byte dd 00H public _yyout align 4 _yyout label byte dd 00H public _yylex _DATA ends _TEXT segment _yylex: push ebx push esi push edi push ebp mov ebp,esp sub esp,4 jmp L3 L2: L5: mov edi,dword ptr (-4)[ebp] cmp edi,-1 jl L6 cmp edi,4 jg L6 jmp dword ptr (L17+4)[edi*4] _TEXT ends _TEXT segment align 4 L17 label byte dd L7 dd L8 dd L11 dd L12 dd L7 dd L14 _TEXT ends _TEXT segment L8: call _yywrap add esp,0 cmp eax,0 je L7 mov eax,0 jmp L1 L11: mov eax,257 jmp L1 L12: mov eax,258 jmp L1 L14: movsx eax,byte ptr (_yytext) jmp L1 L6: mov edi,dword ptr (-4)[ebp] push edi lea edi,(L16) push edi mov edi,dword ptr (_yyout) push edi call _fprintf add esp,12 L7: L3: call _yylook add esp,0 mov dword ptr (-4)[ebp],eax cmp eax,0 jge L2 mov eax,0 L1: mov esp,ebp pop ebp pop edi pop esi pop ebx ret _TEXT ends _DATA segment public _yyvstop align 4 _yyvstop label byte dd 0 dd 4 dd 0 dd 3 dd 4 dd 0 dd 2 dd 4 dd 0 dd 1 dd 4 dd 0 dd 2 dd 0 dd 1 dd 0 dd 0 public _yycrank align 1 _yycrank label byte db 0 db 0 db 0 db 0 db 1 db 3 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 1 db 4 db 1 db 3 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 1 db 5 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 5 db 7 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 1 db 6 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 6 db 8 db 0 db 0 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 6 db 8 db 0 db 0 db 0 db 0 db 0 db 0 public _yysvec align 4 _yysvec label byte dd 00H dd 00H dd 00H dd _yycrank-2 dd 00H dd 00H dd _yycrank dd _yysvec+12 dd 00H dd _yycrank dd 00H dd _yyvstop+4 dd _yycrank dd 00H dd _yyvstop+12 dd _yycrank+4 dd 00H dd _yyvstop+24 dd _yycrank+38 dd 00H dd _yyvstop+36 dd _yycrank dd _yysvec+60 dd _yyvstop+48 dd _yycrank dd _yysvec+72 dd _yyvstop+56 dd 00H dd 00H dd 00H public _yytop align 4 _yytop label byte dd _yycrank+282 public _yybgin align 4 _yybgin label byte dd _yysvec+12 public _yymatch align 1 _yymatch label byte db 0 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 9 db 10 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 9 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 48 db 48 db 48 db 48 db 48 db 48 db 48 db 48 db 48 db 48 db 1 db 1 db 1 db 1 db 1 db 1 db 1 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 1 db 1 db 1 db 1 db 65 db 1 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 65 db 1 db 1 db 1 db 1 db 1 db 0 public _yyextra align 1 _yyextra label byte db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 db 0 public _yylineno align 4 _yylineno label byte dd 1 public _yysptr align 4 _yysptr label byte dd _yysbuf public _yyprevious align 4 _yyprevious label byte dd 10 public _yylook _DATA ends _TEXT segment _yylook: push ebx push esi push edi push ebp mov ebp,esp sub esp,44 cmp dword ptr (_yymorfg),0 jne L34 lea edi,(_yytext) mov dword ptr (-16)[ebp],edi jmp L35 L34: mov dword ptr (_yymorfg),0 mov edi,dword ptr (_yyleng) lea edi,(_yytext)[edi] mov dword ptr (-16)[ebp],edi L35: L36: lea edi,(_yylstate) mov dword ptr (-8)[ebp],edi mov edi,dword ptr (_yybgin) mov dword ptr (-4)[ebp],edi mov dword ptr (_yyestate),edi cmp dword ptr (_yyprevious),10 jne L40 mov edi,dword ptr (-4)[ebp] lea edi,(12)[edi] mov dword ptr (-4)[ebp],edi L40: L42: mov edi,dword ptr (-4)[ebp] mov edi,dword ptr [edi] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] lea esi,(_yycrank) cmp edi,esi jne L46 mov edi,dword ptr (-4)[ebp] mov edi,dword ptr (4)[edi] mov dword ptr (-28)[ebp],edi mov edi,dword ptr (-28)[ebp] cmp edi,0 jne L48 jmp L93 L48: mov edi,dword ptr (-28)[ebp] mov edi,dword ptr [edi] lea esi,(_yycrank) cmp edi,esi jne L50 jmp L93 L50: L46: mov edi,dword ptr (-16)[ebp] lea esi,(1)[edi] mov dword ptr (-16)[ebp],esi mov esi,dword ptr (_yysptr) lea ebx,(_yysbuf) cmp esi,ebx jbe L60 mov esi,dword ptr (_yysptr) lea esi,(-1)[esi] mov dword ptr (_yysptr),esi movsx esi,byte ptr [esi] mov dword ptr (-40)[ebp],esi jmp L61 L60: mov esi,dword ptr (_yyin) lea esi,(4)[esi] mov ebx,dword ptr [esi] sub ebx,1 mov dword ptr [esi],ebx cmp ebx,0 jl L62 mov esi,dword ptr (_yyin) mov ebx,dword ptr [esi] lea edx,(1)[ebx] mov dword ptr [esi],edx movsx esi,byte ptr [ebx] and esi,255 mov dword ptr (-44)[ebp],esi jmp L63 L62: mov esi,dword ptr (_yyin) push esi call __filbuf add esp,4 mov esi,eax mov dword ptr (-44)[ebp],esi L63: mov esi,dword ptr (-44)[ebp] mov dword ptr (-40)[ebp],esi L61: mov esi,dword ptr (-40)[ebp] mov dword ptr (_yytchar),esi cmp esi,10 jne L58 inc dword ptr (_yylineno) mov esi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],esi jmp L59 L58: mov esi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],esi L59: cmp dword ptr (-36)[ebp],-1 jne L56 mov dword ptr (-32)[ebp],0 jmp L57 L56: mov esi,dword ptr (_yytchar) mov dword ptr (-32)[ebp],esi L57: mov esi,dword ptr (-32)[ebp] mov dword ptr (-20)[ebp],esi mov ebx,esi mov byte ptr [edi],bl L64: mov edi,dword ptr (-12)[ebp] mov dword ptr (-24)[ebp],edi lea esi,(_yycrank) cmp edi,esi jbe L65 mov edi,dword ptr (-20)[ebp] mov esi,dword ptr (-24)[ebp] lea edi,[esi][edi*2] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] mov esi,edi mov ebx,dword ptr (_yytop) cmp esi,ebx ja L66 movsx edi,byte ptr [edi] imul edi,edi,12 lea edi,(_yysvec)[edi] mov esi,dword ptr (-4)[ebp] cmp edi,esi jne L66 lea edi,(_yysvec) mov esi,dword ptr (-12)[ebp] movsx esi,byte ptr (1)[esi] imul esi,esi,12 lea esi,(_yysvec)[esi] cmp esi,edi jne L69 mov edi,dword ptr (-16)[ebp] lea edi,(-1)[edi] mov dword ptr (-16)[ebp],edi movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L71 dec dword ptr (_yylineno) L71: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl jmp L93 L69: mov edi,dword ptr (-8)[ebp] lea esi,(4)[edi] mov dword ptr (-8)[ebp],esi mov esi,dword ptr (-12)[ebp] movsx esi,byte ptr (1)[esi] imul esi,esi,12 lea esi,(_yysvec)[esi] mov dword ptr (-4)[ebp],esi mov dword ptr [edi],esi jmp L42 L65: mov edi,dword ptr (-12)[ebp] lea esi,(_yycrank) cmp edi,esi jae L74 lea edi,(_yycrank) mov esi,dword ptr (-12)[ebp] sub edi,esi mov eax,edi mov edi,2 cdq idiv edi lea edi,(_yycrank)[eax*2] mov dword ptr (-24)[ebp],edi mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-20)[ebp] mov esi,dword ptr (-12)[ebp] lea edi,[esi][edi*2] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] mov esi,edi mov ebx,dword ptr (_yytop) cmp esi,ebx ja L76 movsx edi,byte ptr [edi] imul edi,edi,12 lea edi,(_yysvec)[edi] mov esi,dword ptr (-4)[ebp] cmp edi,esi jne L76 lea edi,(_yysvec) mov esi,dword ptr (-12)[ebp] movsx esi,byte ptr (1)[esi] imul esi,esi,12 lea esi,(_yysvec)[esi] cmp esi,edi jne L78 mov edi,dword ptr (-16)[ebp] lea edi,(-1)[edi] mov dword ptr (-16)[ebp],edi movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L80 dec dword ptr (_yylineno) L80: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl jmp L93 L78: mov edi,dword ptr (-8)[ebp] lea esi,(4)[edi] mov dword ptr (-8)[ebp],esi mov esi,dword ptr (-12)[ebp] movsx esi,byte ptr (1)[esi] imul esi,esi,12 lea esi,(_yysvec)[esi] mov dword ptr (-4)[ebp],esi mov dword ptr [edi],esi jmp L42 L76: mov edi,dword ptr (-20)[ebp] movsx edi,byte ptr (_yymatch)[edi] mov esi,dword ptr (-24)[ebp] lea edi,[esi][edi*2] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] mov esi,edi mov ebx,dword ptr (_yytop) cmp esi,ebx ja L82 movsx edi,byte ptr [edi] imul edi,edi,12 lea edi,(_yysvec)[edi] mov esi,dword ptr (-4)[ebp] cmp edi,esi jne L82 lea edi,(_yysvec) mov esi,dword ptr (-12)[ebp] movsx esi,byte ptr (1)[esi] imul esi,esi,12 lea esi,(_yysvec)[esi] cmp esi,edi jne L84 mov edi,dword ptr (-16)[ebp] lea edi,(-1)[edi] mov dword ptr (-16)[ebp],edi movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L86 dec dword ptr (_yylineno) L86: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl jmp L93 L84: mov edi,dword ptr (-8)[ebp] lea esi,(4)[edi] mov dword ptr (-8)[ebp],esi mov esi,dword ptr (-12)[ebp] movsx esi,byte ptr (1)[esi] imul esi,esi,12 lea esi,(_yysvec)[esi] mov dword ptr (-4)[ebp],esi mov dword ptr [edi],esi jmp L42 L82: L74: L66: mov edi,dword ptr (-4)[ebp] mov edi,dword ptr (4)[edi] mov dword ptr (-4)[ebp],edi cmp edi,0 je L88 mov edi,dword ptr (-4)[ebp] mov edi,dword ptr [edi] mov dword ptr (-12)[ebp],edi lea esi,(_yycrank) cmp edi,esi je L88 jmp L64 L88: mov edi,dword ptr (-16)[ebp] lea edi,(-1)[edi] mov dword ptr (-16)[ebp],edi movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L90 dec dword ptr (_yylineno) L90: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl jmp L93 L92: mov edi,dword ptr (-16)[ebp] lea esi,(-1)[edi] mov dword ptr (-16)[ebp],esi mov byte ptr [edi],0 mov edi,dword ptr (-8)[ebp] mov edi,dword ptr [edi] mov esi,edi cmp esi,0 je L95 mov edi,dword ptr (8)[edi] mov dword ptr (_yyfnd),edi cmp edi,0 je L95 mov edi,dword ptr (_yyfnd) cmp dword ptr [edi],0 jle L95 mov edi,dword ptr (-8)[ebp] mov dword ptr (_yyolsp),edi mov edi,dword ptr (_yyfnd) mov edi,dword ptr [edi] movsx edi,byte ptr (_yyextra)[edi] cmp edi,0 je L97 jmp L100 L99: mov edi,dword ptr (-8)[ebp] lea edi,(-4)[edi] mov dword ptr (-8)[ebp],edi mov edi,dword ptr (-16)[ebp] lea esi,(-1)[edi] mov dword ptr (-16)[ebp],esi movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L102 dec dword ptr (_yylineno) L102: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl L100: mov edi,dword ptr (_yyfnd) mov edi,dword ptr [edi] neg edi push edi mov edi,dword ptr (-8)[ebp] mov edi,dword ptr [edi] mov edi,dword ptr (8)[edi] push edi call _yyback add esp,8 cmp eax,1 je L104 mov edi,dword ptr (-8)[ebp] lea esi,(_yylstate) cmp edi,esi ja L99 L104: L97: mov edi,dword ptr (-16)[ebp] movsx esi,byte ptr [edi] mov dword ptr (_yyprevious),esi mov esi,dword ptr (-8)[ebp] mov dword ptr (_yylsp),esi lea esi,(_yytext) sub edi,esi lea edi,(1)[edi] mov dword ptr (_yyleng),edi mov edi,dword ptr (_yyleng) mov byte ptr (_yytext)[edi],0 mov edi,dword ptr (_yyfnd) lea esi,(4)[edi] mov dword ptr (_yyfnd),esi mov eax,dword ptr [edi] jmp L33 L95: mov edi,dword ptr (-16)[ebp] movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L105 dec dword ptr (_yylineno) L105: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl L93: mov edi,dword ptr (-8)[ebp] lea esi,(-4)[edi] mov dword ptr (-8)[ebp],esi lea esi,(_yylstate) cmp edi,esi ja L92 movsx edi,byte ptr (_yytext) cmp edi,0 jne L107 lea edi,(_yysbuf) mov dword ptr (_yysptr),edi mov eax,0 jmp L33 L107: mov edi,dword ptr (_yysptr) lea esi,(_yysbuf) cmp edi,esi jbe L117 mov edi,dword ptr (_yysptr) lea edi,(-1)[edi] mov dword ptr (_yysptr),edi movsx edi,byte ptr [edi] mov dword ptr (-40)[ebp],edi jmp L118 L117: mov edi,dword ptr (_yyin) lea edi,(4)[edi] mov esi,dword ptr [edi] sub esi,1 mov dword ptr [edi],esi cmp esi,0 jl L119 mov edi,dword ptr (_yyin) mov esi,dword ptr [edi] lea ebx,(1)[esi] mov dword ptr [edi],ebx movsx edi,byte ptr [esi] and edi,255 mov dword ptr (-44)[ebp],edi jmp L120 L119: mov edi,dword ptr (_yyin) push edi call __filbuf add esp,4 mov edi,eax mov dword ptr (-44)[ebp],edi L120: mov edi,dword ptr (-44)[ebp] mov dword ptr (-40)[ebp],edi L118: mov edi,dword ptr (-40)[ebp] mov dword ptr (_yytchar),edi cmp edi,10 jne L115 inc dword ptr (_yylineno) mov edi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],edi jmp L116 L115: mov edi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],edi L116: cmp dword ptr (-36)[ebp],-1 jne L113 mov dword ptr (-32)[ebp],0 jmp L114 L113: mov edi,dword ptr (_yytchar) mov dword ptr (-32)[ebp],edi L114: mov edi,dword ptr (-32)[ebp] mov ebx,edi mov byte ptr (_yytext),bl movsx edi,bl mov dword ptr (_yyprevious),edi cmp dword ptr (_yyprevious),0 jle L121 mov edi,dword ptr (_yyout) lea edi,(4)[edi] mov esi,dword ptr [edi] sub esi,1 mov dword ptr [edi],esi cmp esi,0 jl L124 mov edi,dword ptr (_yyout) mov esi,dword ptr [edi] lea ebx,(1)[esi] mov dword ptr [edi],ebx mov edi,dword ptr (_yyprevious) mov ebx,edi mov byte ptr [esi],bl jmp L125 L124: mov edi,dword ptr (_yyout) push edi mov edi,dword ptr (_yyprevious) push edi call __flsbuf add esp,8 L125: L121: lea edi,(_yytext) mov dword ptr (-16)[ebp],edi jmp L36 L33: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _yyback _yyback: push ebx push esi push edi push ebp mov ebp,esp mov edi,dword ptr (20)[ebp] cmp edi,0 jne L130 mov eax,0 jmp L126 L129: mov edi,dword ptr (20)[ebp] lea esi,(4)[edi] mov dword ptr (20)[ebp],esi mov esi,dword ptr (24)[ebp] cmp dword ptr [edi],esi jne L132 mov eax,1 jmp L126 L132: L130: mov edi,dword ptr (20)[ebp] cmp dword ptr [edi],0 jne L129 mov eax,0 L126: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _yyinput _yyinput: push ebx push esi push edi push ebp mov ebp,esp sub esp,16 mov edi,dword ptr (_yysptr) lea esi,(_yysbuf) cmp edi,esi jbe L143 mov edi,dword ptr (_yysptr) lea edi,(-1)[edi] mov dword ptr (_yysptr),edi movsx edi,byte ptr [edi] mov dword ptr (-12)[ebp],edi jmp L144 L143: mov edi,dword ptr (_yyin) lea edi,(4)[edi] mov esi,dword ptr [edi] sub esi,1 mov dword ptr [edi],esi cmp esi,0 jl L145 mov edi,dword ptr (_yyin) mov esi,dword ptr [edi] lea ebx,(1)[esi] mov dword ptr [edi],ebx movsx edi,byte ptr [esi] and edi,255 mov dword ptr (-16)[ebp],edi jmp L146 L145: mov edi,dword ptr (_yyin) push edi call __filbuf add esp,4 mov edi,eax mov dword ptr (-16)[ebp],edi L146: mov edi,dword ptr (-16)[ebp] mov dword ptr (-12)[ebp],edi L144: mov edi,dword ptr (-12)[ebp] mov dword ptr (_yytchar),edi cmp edi,10 jne L141 inc dword ptr (_yylineno) mov edi,dword ptr (_yytchar) mov dword ptr (-8)[ebp],edi jmp L142 L141: mov edi,dword ptr (_yytchar) mov dword ptr (-8)[ebp],edi L142: cmp dword ptr (-8)[ebp],-1 jne L139 mov dword ptr (-4)[ebp],0 jmp L140 L139: mov edi,dword ptr (_yytchar) mov dword ptr (-4)[ebp],edi L140: mov eax,dword ptr (-4)[ebp] L134: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _yyoutput _yyoutput: push ebx push esi push edi push ebp mov ebp,esp mov edi,dword ptr (_yyout) lea edi,(4)[edi] mov esi,dword ptr [edi] sub esi,1 mov dword ptr [edi],esi cmp esi,0 jl L149 mov edi,dword ptr (_yyout) mov esi,dword ptr [edi] lea ebx,(1)[esi] mov dword ptr [edi],ebx mov edi,dword ptr (20)[ebp] mov ebx,edi mov byte ptr [esi],bl jmp L150 L149: mov edi,dword ptr (_yyout) push edi mov edi,dword ptr (20)[ebp] push edi call __flsbuf add esp,8 L150: mov eax,0 L147: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _yyunput _yyunput: push ebx push esi push edi push ebp mov ebp,esp mov edi,dword ptr (20)[ebp] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L152 dec dword ptr (_yylineno) L152: mov edi,dword ptr (_yysptr) lea esi,(1)[edi] mov dword ptr (_yysptr),esi mov esi,dword ptr (_yytchar) mov ebx,esi mov byte ptr [edi],bl mov eax,0 L151: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _main _main: push ebx push esi push edi push ebp mov ebp,esp lea edi,(__iob) mov dword ptr (_yyin),edi lea edi,(__iob+32) mov dword ptr (_yyout),edi call _yyparse add esp,0 mov eax,0 L154: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _yyerror _yyerror: push ebx push esi push edi push ebp mov ebp,esp mov edi,dword ptr (20)[ebp] push edi lea edi,(L157) push edi call _printf add esp,8 mov eax,0 L156: mov esp,ebp pop ebp pop edi pop esi pop ebx ret _TEXT ends _DATA segment public _yyexca align 2 _yyexca label byte dw -1 dw 1 dw 0 dw -1 dw -2 dw 0 public _yyact align 2 _yyact label byte dw 12 dw 2 dw 9 dw 8 dw 17 dw 11 dw 25 dw 17 dw 15 dw 18 dw 16 dw 10 dw 18 dw 17 dw 15 dw 7 dw 16 dw 13 dw 18 dw 5 dw 3 dw 1 dw 0 dw 19 dw 20 dw 0 dw 0 dw 21 dw 22 dw 23 dw 24 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 6 dw 14 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 0 dw 4 dw 6 public _yypact align 2 _yypact label byte dw -1000 dw -9 dw -1000 dw 5 dw -7 dw -59 dw -1000 dw -1000 dw -1000 dw -40 dw -29 dw -40 dw -40 dw -1000 dw -1000 dw -40 dw -40 dw -40 dw -40 dw -38 dw -35 dw -38 dw -38 dw -1000 dw -1000 dw -1000 public _yypgo align 2 _yypgo label byte dw 0 dw 21 dw 20 dw 17 dw 11 public _yyr1 align 2 _yyr1 label byte dw 0 dw 1 dw 1 dw 1 dw 1 dw 2 dw 4 dw 4 dw 4 dw 4 dw 4 dw 4 dw 4 dw 4 dw 3 public _yyr2 align 2 _yyr2 label byte dw 0 dw 0 dw 2 dw 3 dw 3 dw 3 dw 3 dw 3 dw 3 dw 3 dw 2 dw 3 dw 1 dw 1 dw 1 public _yychk align 2 _yychk label byte dw -1000 dw -1 dw 10 dw -2 dw 256 dw -3 dw 257 dw 10 dw 10 dw 61 dw -4 dw 45 dw 40 dw -3 dw 258 dw 43 dw 45 dw 42 dw 47 dw -4 dw -4 dw -4 dw -4 dw -4 dw -4 dw 41 public _yydef align 2 _yydef label byte dw 1 dw -2 dw 2 dw 0 dw 0 dw 0 dw 14 dw 3 dw 4 dw 0 dw 5 dw 0 dw 0 dw 12 dw 13 dw 0 dw 0 dw 0 dw 0 dw 10 dw 0 dw 6 dw 7 dw 8 dw 9 dw 11 public _yychar align 4 _yychar label byte dd -1 public _yynerrs align 4 _yynerrs label byte dd 0 public _yyerrflag align 2 _yyerrflag label byte dw 0 public _yyparse _DATA ends _TEXT segment _yyparse: push ebx push esi push edi push ebp mov ebp,esp sub esp,336 mov word ptr (-8)[ebp],0 mov dword ptr (_yychar),-1 mov dword ptr (_yynerrs),0 mov word ptr (_yyerrflag),0 lea edi,(-330)[ebp] mov dword ptr (-12)[ebp],edi lea edi,(_yyv-4) mov dword ptr (-20)[ebp],edi L161: mov edi,dword ptr (-12)[ebp] lea edi,(2)[edi] mov dword ptr (-12)[ebp],edi lea esi,(-30)[ebp] cmp edi,esi jbe L162 lea edi,(L165) push edi call _yyerror add esp,4 mov eax,1 jmp L158 L162: mov edi,dword ptr (-12)[ebp] mov si,word ptr (-8)[ebp] mov word ptr [edi],si mov edi,dword ptr (-20)[ebp] lea edi,(4)[edi] mov dword ptr (-20)[ebp],edi mov edi,dword ptr (-20)[ebp] mov esi,dword ptr (_yyval) mov dword ptr [edi],esi L166: movsx edi,word ptr (-8)[ebp] mov di,word ptr (_yypact)[edi*2] mov word ptr (-16)[ebp],di movsx edi,word ptr (-16)[ebp] cmp edi,-1000 jg L167 jmp L169 L167: cmp dword ptr (_yychar),0 jge L170 call _yylex add esp,0 mov dword ptr (_yychar),eax cmp eax,0 jge L172 mov dword ptr (_yychar),0 L172: L170: movsx edi,word ptr (-16)[ebp] mov esi,dword ptr (_yychar) lea edi,[esi][edi] mov word ptr (-16)[ebp],di movsx edi,di cmp edi,0 jl L176 movsx edi,word ptr (-16)[ebp] cmp edi,249 jl L174 L176: jmp L169 L174: movsx edi,word ptr (-16)[ebp] mov di,word ptr (_yyact)[edi*2] mov word ptr (-16)[ebp],di movsx edi,di movsx edi,word ptr (_yychk)[edi*2] cmp edi,dword ptr (_yychar) jne L177 mov dword ptr (_yychar),-1 mov edi,dword ptr (_yylval) mov dword ptr (_yyval),edi mov di,word ptr (-16)[ebp] mov word ptr (-8)[ebp],di movsx edi,word ptr (_yyerrflag) cmp edi,0 jle L161 movsx edi,word ptr (_yyerrflag) sub edi,1 mov word ptr (_yyerrflag),di jmp L161 L177: L169: movsx edi,word ptr (-8)[ebp] mov di,word ptr (_yydef)[edi*2] mov word ptr (-16)[ebp],di movsx edi,di cmp edi,-2 jne L181 cmp dword ptr (_yychar),0 jge L183 call _yylex add esp,0 mov dword ptr (_yychar),eax cmp eax,0 jge L185 mov dword ptr (_yychar),0 L185: L183: lea edi,(_yyexca) mov dword ptr (-24)[ebp],edi jmp L190 L187: L188: mov edi,dword ptr (-24)[ebp] lea edi,(4)[edi] mov dword ptr (-24)[ebp],edi L190: mov edi,dword ptr (-24)[ebp] movsx esi,word ptr [edi] cmp esi,-1 jne L187 movsx edi,word ptr (2)[edi] movsx esi,word ptr (-8)[ebp] cmp edi,esi jne L187 jmp L192 L191: mov edi,dword ptr (-24)[ebp] movsx edi,word ptr [edi] cmp edi,dword ptr (_yychar) jne L194 jmp L193 L194: L192: mov edi,dword ptr (-24)[ebp] lea edi,(4)[edi] mov dword ptr (-24)[ebp],edi movsx edi,word ptr [edi] cmp edi,0 jge L191 L193: mov edi,dword ptr (-24)[ebp] mov di,word ptr (2)[edi] mov word ptr (-16)[ebp],di movsx edi,di cmp edi,0 jge L196 mov eax,0 jmp L158 L196: L181: movsx edi,word ptr (-16)[ebp] cmp edi,0 jne L198 movsx edi,word ptr (_yyerrflag) mov dword ptr (-336)[ebp],edi mov edi,dword ptr (-336)[ebp] cmp edi,0 jl L200 cmp edi,3 jg L200 jmp dword ptr (L216)[edi*4] _TEXT ends _TEXT segment align 4 L216 label byte dd L203 dd L206 dd L206 dd L213 _TEXT ends _TEXT segment L203: lea edi,(L204) push edi call _yyerror add esp,4 L205: inc dword ptr (_yynerrs) L206: mov word ptr (_yyerrflag),3 jmp L208 L207: mov edi,dword ptr (-12)[ebp] movsx edi,word ptr [edi] movsx edi,word ptr (_yypact)[edi*2] lea edi,(256)[edi] mov word ptr (-16)[ebp],di movsx edi,word ptr (-16)[ebp] cmp edi,0 jl L210 cmp edi,249 jge L210 movsx edi,word ptr (_yyact)[edi*2] movsx edi,word ptr (_yychk)[edi*2] cmp edi,256 jne L210 movsx edi,word ptr (-16)[ebp] mov di,word ptr (_yyact)[edi*2] mov word ptr (-8)[ebp],di jmp L161 L210: mov edi,dword ptr (-12)[ebp] movsx esi,word ptr [edi] mov si,word ptr (_yypact)[esi*2] mov word ptr (-16)[ebp],si lea edi,(-2)[edi] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-20)[ebp] lea edi,(-4)[edi] mov dword ptr (-20)[ebp],edi L208: mov edi,dword ptr (-12)[ebp] lea esi,(-328)[ebp] cmp edi,esi jae L207 L212: mov eax,1 jmp L158 L213: cmp dword ptr (_yychar),0 jne L214 jmp L212 L214: mov dword ptr (_yychar),-1 jmp L166 L200: L198: mov di,word ptr (-16)[ebp] movsx esi,di lea esi,[esi*2] lea ebx,(_yyr2)[esi] mov edx,dword ptr (-12)[ebp] movsx ecx,word ptr [ebx] lea ecx,[ecx*2] sub edx,ecx mov dword ptr (-12)[ebp],edx mov edx,dword ptr (-20)[ebp] mov dword ptr (-4)[ebp],edx movsx ebx,word ptr [ebx] lea ebx,[ebx*4] sub edx,ebx mov dword ptr (-20)[ebp],edx mov ebx,dword ptr (-20)[ebp] mov ebx,dword ptr (4)[ebx] mov dword ptr (_yyval),ebx mov word ptr (-332)[ebp],di mov di,word ptr (_yyr1)[esi] mov word ptr (-16)[ebp],di movsx edi,word ptr (-16)[ebp] movsx edi,word ptr (_yypgo)[edi*2] mov esi,dword ptr (-12)[ebp] movsx esi,word ptr [esi] lea edi,[esi][edi] lea edi,(1)[edi] mov word ptr (-28)[ebp],di movsx edi,word ptr (-28)[ebp] cmp edi,249 jge L219 mov di,word ptr (_yyact)[edi*2] mov word ptr (-8)[ebp],di movsx edi,di movsx edi,word ptr (_yychk)[edi*2] movsx esi,word ptr (-16)[ebp] neg esi cmp edi,esi je L217 L219: movsx edi,word ptr (-16)[ebp] movsx edi,word ptr (_yypgo)[edi*2] mov di,word ptr (_yyact)[edi*2] mov word ptr (-8)[ebp],di L217: movsx edi,word ptr (-332)[ebp] mov dword ptr (-336)[ebp],edi mov edi,dword ptr (-336)[ebp] cmp edi,4 jl L161 cmp edi,14 jg L161 jmp dword ptr (L241-16)[edi*4] _TEXT ends _TEXT segment align 4 L241 label byte dd L223 dd L224 dd L226 dd L228 dd L230 dd L232 dd L234 dd L161 dd L236 dd L238 dd L240 _TEXT ends _TEXT segment L223: mov word ptr (_yyerrflag),0 jmp L161 L224: lea edi,(L225) push edi call _printf add esp,4 jmp L161 L226: lea edi,(L227) push edi call _printf add esp,4 jmp L161 L228: lea edi,(L229) push edi call _printf add esp,4 jmp L161 L230: lea edi,(L231) push edi call _printf add esp,4 jmp L161 L232: lea edi,(L233) push edi call _printf add esp,4 jmp L161 L234: lea edi,(L235) push edi call _printf add esp,4 jmp L161 L236: lea edi,(L237) push edi call _printf add esp,4 jmp L161 L238: lea edi,(_yytext) push edi lea edi,(L239) push edi call _printf add esp,8 jmp L161 L240: lea edi,(_yytext) push edi lea edi,(L157) push edi call _printf add esp,8 jmp L161 L158: mov esp,ebp pop ebp pop edi pop esi pop ebx ret public _yywrap _yywrap: push ebx push esi push edi push ebp mov ebp,esp mov eax,1 L243: mov esp,ebp pop ebp pop edi pop esi pop ebx ret _TEXT ends _DATA segment public _yyv align 4 _yyv label byte db 600 dup (0) public _yyfnd align 4 _yyfnd label byte db 4 dup (0) public _yyolsp align 4 _yyolsp label byte db 4 dup (0) public _yylsp align 4 _yylsp label byte db 4 dup (0) public _yylstate align 4 _yylstate label byte db 800 dup (0) public _yyestate align 4 _yyestate label byte db 4 dup (0) public _yytchar align 4 _yytchar label byte db 4 dup (0) public _yysbuf align 1 _yysbuf label byte db 200 dup (0) public _yymorfg align 4 _yymorfg label byte db 4 dup (0) public _yytext align 1 _yytext label byte db 200 dup (0) public _yyleng align 4 _yyleng label byte db 4 dup (0) _DATA ends extrn _printf:near _DATA segment _DATA ends extrn _fprintf:near _DATA segment _DATA ends extrn __flsbuf:near _DATA segment _DATA ends extrn __filbuf:near _DATA segment _DATA ends extrn __iob:near _DATA segment public _yyval align 4 _yyval label byte db 4 dup (0) public _yylval align 4 _yylval label byte db 4 dup (0) _DATA ends _TEXT segment align 1 L239 label byte db 112 db 117 db 115 db 104 db 32 db 37 db 115 db 10 db 0 align 1 L237 label byte db 108 db 111 db 97 db 100 db 10 db 0 align 1 L235 label byte db 110 db 101 db 103 db 97 db 116 db 101 db 10 db 0 align 1 L233 label byte db 100 db 105 db 118 db 105 db 100 db 101 db 10 db 0 align 1 L231 label byte db 109 db 117 db 108 db 116 db 105 db 112 db 108 db 121 db 10 db 0 align 1 L229 label byte db 110 db 101 db 103 db 97 db 116 db 101 db 10 db 97 db 100 db 100 db 10 db 0 align 1 L227 label byte db 97 db 100 db 100 db 10 db 0 align 1 L225 label byte db 115 db 116 db 111 db 114 db 101 db 10 db 0 align 1 L204 label byte db 115 db 121 db 110 db 116 db 97 db 120 db 32 db 101 db 114 db 114 db 111 db 114 db 0 align 1 L165 label byte db 121 db 97 db 99 db 99 db 32 db 115 db 116 db 97 db 99 db 107 db 32 db 111 db 118 db 101 db 114 db 102 db 108 db 111 db 119 db 0 align 1 L157 label byte db 37 db 115 db 10 db 0 align 1 L16 label byte db 98 db 97 db 100 db 32 db 115 db 119 db 105 db 116 db 99 db 104 db 32 db 121 db 121 db 108 db 111 db 111 db 107 db 32 db 37 db 100 db 0 _TEXT ends end