.486 .model flat extrn __fltused:near extrn __ftol:near _DATA segment public _yyin align 4 _yyin label byte dd __iob public _yyout align 4 _yyout label byte dd __iob+32 public _yylex _DATA ends _TEXT segment _yylex: push ebx push esi push edi push ebp mov ebp,esp sub esp,4 jmp L4 L3: L6: mov edi,dword ptr (-4)[ebp] cmp edi,-1 jl L7 cmp edi,4 jg L7 jmp dword ptr (L18+4)[edi*4] _TEXT ends _TEXT segment align 4 L18 label byte dd L8 dd L9 dd L12 dd L13 dd L8 dd L15 _TEXT ends _TEXT segment L9: call _yywrap add esp,0 cmp eax,0 je L8 mov eax,0 jmp L2 L12: mov eax,257 jmp L2 L13: mov eax,258 jmp L2 L15: movsx eax,byte ptr (_yytext) jmp L2 L7: mov edi,dword ptr (-4)[ebp] push edi lea edi,(L17) push edi mov edi,dword ptr (_yyout) push edi call _fprintf add esp,12 L8: L4: call _yylook add esp,0 mov dword ptr (-4)[ebp],eax cmp eax,0 jge L3 mov eax,0 L2: 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 4 _yycrank label byte db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 1 db 3 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 1 db 4 db 2 dup (0) db 1 db 3 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 1 db 5 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 5 db 7 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 1 db 6 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 6 db 8 db 2 dup (0) db 0 db 0 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 6 db 8 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) db 0 db 0 db 2 dup (0) public _yysvec align 4 _yysvec label byte dd 00H dd 00H dd 00H dd _yycrank-4 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+8 dd 00H dd _yyvstop+24 dd _yycrank+76 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+564 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 L35 lea edi,(_yytext) mov dword ptr (-16)[ebp],edi jmp L36 L35: mov dword ptr (_yymorfg),0 mov edi,dword ptr (_yyleng) lea edi,(_yytext)[edi] mov dword ptr (-16)[ebp],edi L36: L37: 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 L41 mov edi,dword ptr (-4)[ebp] lea edi,(12)[edi] mov dword ptr (-4)[ebp],edi L41: L43: 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 L47 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 L49 jmp L94 L49: mov edi,dword ptr (-28)[ebp] mov edi,dword ptr [edi] lea esi,(_yycrank) cmp edi,esi jne L51 jmp L94 L51: L47: 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 L61 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 L62 L61: 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 L63 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 L64 L63: mov esi,dword ptr (_yyin) push esi call __filbuf add esp,4 mov esi,eax mov dword ptr (-44)[ebp],esi L64: mov esi,dword ptr (-44)[ebp] mov dword ptr (-40)[ebp],esi L62: mov esi,dword ptr (-40)[ebp] mov dword ptr (_yytchar),esi cmp esi,10 jne L59 inc dword ptr (_yylineno) mov esi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],esi jmp L60 L59: mov esi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],esi L60: cmp dword ptr (-36)[ebp],-1 jne L57 mov dword ptr (-32)[ebp],0 jmp L58 L57: mov esi,dword ptr (_yytchar) mov dword ptr (-32)[ebp],esi L58: mov esi,dword ptr (-32)[ebp] mov dword ptr (-20)[ebp],esi mov ebx,esi mov byte ptr [edi],bl L65: mov edi,dword ptr (-12)[ebp] mov dword ptr (-24)[ebp],edi lea esi,(_yycrank) cmp edi,esi jbe L66 mov edi,dword ptr (-20)[ebp] mov esi,dword ptr (-24)[ebp] lea edi,[esi][edi*4] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] mov esi,edi mov ebx,dword ptr (_yytop) cmp esi,ebx ja L67 movsx edi,byte ptr [edi] imul edi,edi,12 lea edi,(_yysvec)[edi] mov esi,dword ptr (-4)[ebp] cmp edi,esi jne L67 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 L70 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 L72 dec dword ptr (_yylineno) L72: 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 L94 L70: 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 L43 L66: mov edi,dword ptr (-12)[ebp] lea esi,(_yycrank) cmp edi,esi jae L75 lea edi,(_yycrank) mov esi,dword ptr (-12)[ebp] sub edi,esi mov eax,edi mov edi,4 cdq idiv edi lea edi,(_yycrank)[eax*4] 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*4] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] mov esi,edi mov ebx,dword ptr (_yytop) cmp esi,ebx ja L77 movsx edi,byte ptr [edi] imul edi,edi,12 lea edi,(_yysvec)[edi] mov esi,dword ptr (-4)[ebp] cmp edi,esi jne L77 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 L79 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 L81 dec dword ptr (_yylineno) L81: 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 L94 L79: 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 L43 L77: mov edi,dword ptr (-20)[ebp] movsx edi,byte ptr (_yymatch)[edi] mov esi,dword ptr (-24)[ebp] lea edi,[esi][edi*4] mov dword ptr (-12)[ebp],edi mov edi,dword ptr (-12)[ebp] mov esi,edi mov ebx,dword ptr (_yytop) cmp esi,ebx ja L83 movsx edi,byte ptr [edi] imul edi,edi,12 lea edi,(_yysvec)[edi] mov esi,dword ptr (-4)[ebp] cmp edi,esi jne L83 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 L85 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 L87 dec dword ptr (_yylineno) L87: 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 L94 L85: 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 L43 L83: L75: L67: mov edi,dword ptr (-4)[ebp] mov edi,dword ptr (4)[edi] mov dword ptr (-4)[ebp],edi cmp edi,0 je L89 mov edi,dword ptr (-4)[ebp] mov edi,dword ptr [edi] mov dword ptr (-12)[ebp],edi lea esi,(_yycrank) cmp edi,esi je L89 jmp L65 L89: 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 L91 dec dword ptr (_yylineno) L91: 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 L94 L93: 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 L96 mov edi,dword ptr (8)[edi] mov dword ptr (_yyfnd),edi cmp edi,0 je L96 mov edi,dword ptr (_yyfnd) cmp dword ptr [edi],0 jle L96 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 L98 jmp L101 L100: 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 L103 dec dword ptr (_yylineno) L103: 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 L101: 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 L105 mov edi,dword ptr (-8)[ebp] lea esi,(_yylstate) cmp edi,esi ja L100 L105: L98: 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 L34 L96: mov edi,dword ptr (-16)[ebp] movsx edi,byte ptr [edi] mov dword ptr (_yytchar),edi cmp dword ptr (_yytchar),10 jne L106 dec dword ptr (_yylineno) L106: 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 L94: mov edi,dword ptr (-8)[ebp] lea esi,(-4)[edi] mov dword ptr (-8)[ebp],esi lea esi,(_yylstate) cmp edi,esi ja L93 movsx edi,byte ptr (_yytext) cmp edi,0 jne L108 lea edi,(_yysbuf) mov dword ptr (_yysptr),edi mov eax,0 jmp L34 L108: mov edi,dword ptr (_yysptr) lea esi,(_yysbuf) cmp edi,esi jbe L118 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 L119 L118: 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 L120 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 L121 L120: mov edi,dword ptr (_yyin) push edi call __filbuf add esp,4 mov edi,eax mov dword ptr (-44)[ebp],edi L121: mov edi,dword ptr (-44)[ebp] mov dword ptr (-40)[ebp],edi L119: mov edi,dword ptr (-40)[ebp] mov dword ptr (_yytchar),edi cmp edi,10 jne L116 inc dword ptr (_yylineno) mov edi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],edi jmp L117 L116: mov edi,dword ptr (_yytchar) mov dword ptr (-36)[ebp],edi L117: cmp dword ptr (-36)[ebp],-1 jne L114 mov dword ptr (-32)[ebp],0 jmp L115 L114: mov edi,dword ptr (_yytchar) mov dword ptr (-32)[ebp],edi L115: 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 L122 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 L125 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 L126 L125: mov edi,dword ptr (_yyout) push edi mov edi,dword ptr (_yyprevious) push edi call __flsbuf add esp,8 L126: L122: lea edi,(_yytext) mov dword ptr (-16)[ebp],edi jmp L37 L34: 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 L131 mov eax,0 jmp L127 L130: 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 L133 mov eax,1 jmp L127 L133: L131: mov edi,dword ptr (20)[ebp] cmp dword ptr [edi],0 jne L130 mov eax,0 L127: 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 L144 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 L145 L144: 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 L146 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 L147 L146: mov edi,dword ptr (_yyin) push edi call __filbuf add esp,4 mov edi,eax mov dword ptr (-16)[ebp],edi L147: mov edi,dword ptr (-16)[ebp] mov dword ptr (-12)[ebp],edi L145: mov edi,dword ptr (-12)[ebp] mov dword ptr (_yytchar),edi cmp edi,10 jne L142 inc dword ptr (_yylineno) mov edi,dword ptr (_yytchar) mov dword ptr (-8)[ebp],edi jmp L143 L142: mov edi,dword ptr (_yytchar) mov dword ptr (-8)[ebp],edi L143: cmp dword ptr (-8)[ebp],-1 jne L140 mov dword ptr (-4)[ebp],0 jmp L141 L140: mov edi,dword ptr (_yytchar) mov dword ptr (-4)[ebp],edi L141: mov eax,dword ptr (-4)[ebp] L135: 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 L150 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 L151 L150: mov edi,dword ptr (_yyout) push edi mov edi,dword ptr (20)[ebp] push edi call __flsbuf add esp,8 L151: mov eax,0 L148: 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 L153 dec dword ptr (_yylineno) L153: 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 L152: 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 call _yyparse add esp,0 mov eax,0 L155: 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,332 mov word ptr (-6)[ebp],0 mov dword ptr (_yychar),-1 mov dword ptr (_yynerrs),0 mov word ptr (_yyerrflag),0 lea edi,(-328)[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,(-26)[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 (-6)[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 (-6)[ebp] mov di,word ptr (_yypact)[edi*2] mov word ptr (-14)[ebp],di movsx edi,word ptr (-14)[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 (-14)[ebp] mov esi,dword ptr (_yychar) lea edi,[esi][edi] mov word ptr (-14)[ebp],di movsx edi,di cmp edi,0 jl L176 movsx edi,word ptr (-14)[ebp] cmp edi,249 jl L174 L176: jmp L169 L174: movsx edi,word ptr (-14)[ebp] mov di,word ptr (_yyact)[edi*2] mov word ptr (-14)[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 (-14)[ebp] mov word ptr (-6)[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 (-6)[ebp] mov di,word ptr (_yydef)[edi*2] mov word ptr (-14)[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 (-6)[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 (-14)[ebp],di movsx edi,di cmp edi,0 jge L196 mov eax,0 jmp L158 L196: L181: movsx edi,word ptr (-14)[ebp] cmp edi,0 jne L198 movsx edi,word ptr (_yyerrflag) mov dword ptr (-332)[ebp],edi mov edi,dword ptr (-332)[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 (-14)[ebp],di movsx edi,word ptr (-14)[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 (-14)[ebp] mov di,word ptr (_yyact)[edi*2] mov word ptr (-6)[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 (-14)[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,(-326)[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 (-14)[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 (-328)[ebp],di mov di,word ptr (_yyr1)[esi] mov word ptr (-14)[ebp],di movsx edi,word ptr (-14)[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 (-26)[ebp],di movsx edi,word ptr (-26)[ebp] cmp edi,249 jge L219 mov di,word ptr (_yyact)[edi*2] mov word ptr (-6)[ebp],di movsx edi,di movsx edi,word ptr (_yychk)[edi*2] movsx esi,word ptr (-14)[ebp] neg esi cmp edi,esi je L217 L219: movsx edi,word ptr (-14)[ebp] movsx edi,word ptr (_yypgo)[edi*2] mov di,word ptr (_yyact)[edi*2] mov word ptr (-6)[ebp],di L217: movsx edi,word ptr (-328)[ebp] mov dword ptr (-332)[ebp],edi mov edi,dword ptr (-332)[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 L17 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