_preproce: PUSH EBP MOV EBP,ESP ADD ESP,-8 MOV EAX,[_ccode] OR EAX,EAX JNE _2_3 JMP _2_2 _2_3: MOV EAX,[_mline] MOV DWORD [_line],EAX XOR CL,CL CALL _ifline MOV EAX,[_eof] OR EAX,EAX JNE _2_5 JMP _2_4 _2_5: MOV ESP,EBP POP EBP RET _2_4: JMP _2_6 _2_2: XOR CL,CL CALL _inline MOV ESP,EBP POP EBP RET _2_6: MOV EAX,-1 MOV DWORD [_pptr],EAX _2_7: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,10 CALL __ne OR EAX,EAX JNE _2_11 JMP _2_9 _2_11: MOV EAX,[_ch] OR EAX,EAX JNE _2_12 JMP _2_9 _2_12: MOV EAX,1 JMP _2_10 _2_9: XOR EAX,EAX _2_10: OR EAX,EAX JNE _2_13 JMP _2_8 _2_13: XOR CL,CL CALL _white OR EAX,EAX JNE _2_15 JMP _2_14 _2_15: MOV EAX,32 PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 _2_16: XOR CL,CL CALL _white OR EAX,EAX JNE _2_18 JMP _2_17 _2_18: XOR CL,CL CALL _gch JMP _2_16 _2_17: JMP _2_19 _2_14: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,34 CALL __eq OR EAX,EAX JNE _2_21 JMP _2_20 _2_21: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 XOR CL,CL CALL _gch _2_22: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,34 CALL __ne OR EAX,EAX JE _2_28 JMP _2_24 _2_28: MOV EAX,[_lptr] MOV EBX,EAX MOV EAX,1 XCHG EAX,EBX SUB EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,92 CALL __eq OR EAX,EAX JNE _2_29 JMP _2_25 _2_29: MOV EAX,[_lptr] MOV EBX,EAX MOV EAX,2 XCHG EAX,EBX SUB EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,92 CALL __ne OR EAX,EAX JNE _2_30 JMP _2_25 _2_30: MOV EAX,1 JMP _2_26 _2_25: XOR EAX,EAX _2_26: OR EAX,EAX JE _2_31 JMP _2_24 _2_31: XOR EAX,EAX JMP _2_27 _2_24: MOV EAX,1 _2_27: OR EAX,EAX JNE _2_32 JMP _2_23 _2_32: MOV EAX,[_ch] OR EAX,EAX JE _2_34 JMP _2_33 _2_34: MOV EAX,_2_1+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 JMP _2_23 _2_33: XOR CL,CL CALL _gch PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 JMP _2_22 _2_23: XOR CL,CL CALL _gch MOV EAX,34 PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 JMP _2_35 _2_20: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,39 CALL __eq OR EAX,EAX JNE _2_37 JMP _2_36 _2_37: MOV EAX,39 PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 XOR CL,CL CALL _gch _2_38: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,39 CALL __ne OR EAX,EAX JE _2_44 JMP _2_40 _2_44: MOV EAX,[_lptr] MOV EBX,EAX MOV EAX,1 XCHG EAX,EBX SUB EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,92 CALL __eq OR EAX,EAX JNE _2_45 JMP _2_41 _2_45: MOV EAX,[_lptr] MOV EBX,EAX MOV EAX,2 XCHG EAX,EBX SUB EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,92 CALL __ne OR EAX,EAX JNE _2_46 JMP _2_41 _2_46: MOV EAX,1 JMP _2_42 _2_41: XOR EAX,EAX _2_42: OR EAX,EAX JE _2_47 JMP _2_40 _2_47: XOR EAX,EAX JMP _2_43 _2_40: MOV EAX,1 _2_43: OR EAX,EAX JNE _2_48 JMP _2_39 _2_48: MOV EAX,[_ch] OR EAX,EAX JE _2_50 JMP _2_49 _2_50: MOV EAX,_2_1+9 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 JMP _2_39 _2_49: XOR CL,CL CALL _gch PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 JMP _2_38 _2_39: XOR CL,CL CALL _gch MOV EAX,39 PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 JMP _2_51 _2_36: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,47 CALL __eq OR EAX,EAX JNE _2_55 JMP _2_53 _2_55: MOV EAX,[_nch] MOV EBX,EAX MOV EAX,42 CALL __eq OR EAX,EAX JNE _2_56 JMP _2_53 _2_56: MOV EAX,1 JMP _2_54 _2_53: XOR EAX,EAX _2_54: OR EAX,EAX JNE _2_57 JMP _2_52 _2_57: MOV EAX,2 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 _2_58: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,42 CALL __eq OR EAX,EAX JNE _2_62 JMP _2_60 _2_62: MOV EAX,[_nch] MOV EBX,EAX MOV EAX,47 CALL __eq OR EAX,EAX JNE _2_63 JMP _2_60 _2_63: MOV EAX,1 JMP _2_61 _2_60: XOR EAX,EAX _2_61: OR EAX,EAX JE _2_64 JMP _2_59 _2_64: MOV EAX,[_ch] OR EAX,EAX JNE _2_66 JMP _2_65 _2_66: MOV EAX,1 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 JMP _2_67 _2_65: XOR CL,CL CALL _ifline MOV EAX,[_eof] OR EAX,EAX JNE _2_69 JMP _2_68 _2_69: JMP _2_59 _2_68: _2_67: JMP _2_58 _2_59: MOV EAX,2 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 JMP _2_70 _2_52: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,47 CALL __eq OR EAX,EAX JNE _2_74 JMP _2_72 _2_74: MOV EAX,[_nch] MOV EBX,EAX MOV EAX,47 CALL __eq OR EAX,EAX JNE _2_75 JMP _2_72 _2_75: MOV EAX,1 JMP _2_73 _2_72: XOR EAX,EAX _2_73: OR EAX,EAX JNE _2_76 JMP _2_71 _2_76: MOV EAX,2 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 _2_77: MOV EAX,[_ch] MOV EBX,EAX MOV EAX,10 CALL __ne OR EAX,EAX JNE _2_79 JMP _2_78 _2_79: MOV EAX,[_ch] OR EAX,EAX JNE _2_81 JMP _2_80 _2_81: MOV EAX,1 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 JMP _2_82 _2_80: MOV EAX,[_eof] OR EAX,EAX JNE _2_84 JMP _2_83 _2_84: JMP _2_78 _2_83: _2_82: JMP _2_77 _2_78: MOV EAX,1 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 JMP _2_85 _2_71: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_87 JMP _2_86 _2_87: LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_88: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_92 JMP _2_90 _2_92: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,8 CALL __lt OR EAX,EAX JNE _2_93 JMP _2_90 _2_93: MOV EAX,1 JMP _2_91 _2_90: XOR EAX,EAX _2_91: OR EAX,EAX JNE _2_94 JMP _2_89 _2_94: MOV EAX,_msname PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX POP EBX ADD EAX,EBX PUSH EAX MOV EAX,[_ch] POP EBX MOV [EBX],AL XOR CL,CL CALL _gch JMP _2_88 _2_89: MOV EAX,_msname PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX XOR EAX,EAX MOV [EBX],AL MOV EAX,_msname PUSH EAX MOV EAX,[_macn] PUSH EAX MOV EAX,11 PUSH EAX MOV EAX,[_macn] MOV EBX,3300 ADD EAX,EBX PUSH EAX MOV EAX,300 PUSH EAX XOR EAX,EAX PUSH EAX MOV CL,6 CALL _search ADD ESP,24 OR EAX,EAX JNE _2_96 JMP _2_95 _2_96: LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_cptr] MOV EBX,9 ADD EAX,EBX PUSH EAX MOV EAX,2 PUSH EAX MOV CL,2 CALL _getint ADD ESP,8 POP EBX MOV [EBX],EAX _2_97: LEA EAX,[EBP-8] PUSH EAX MOV EAX,[_macq] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL OR EAX,EAX JNE _2_99 JMP _2_98 _2_99: LEA EAX,[EBP-8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 JMP _2_97 _2_98: _2_100: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_102 JMP _2_101 _2_102: XOR CL,CL CALL _gch JMP _2_100 _2_101: JMP _2_103 _2_95: LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_104: LEA EAX,[EBP-8] PUSH EAX MOV EAX,_msname PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL OR EAX,EAX JNE _2_106 JMP _2_105 _2_106: LEA EAX,[EBP-8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 JMP _2_104 _2_105: _2_103: JMP _2_107 _2_86: XOR CL,CL CALL _gch PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 _2_107: _2_85: _2_70: _2_51: _2_35: _2_19: JMP _2_7 _2_8: MOV EAX,[_pptr] MOV EBX,EAX MOV EAX,127 CALL __ge OR EAX,EAX JNE _2_109 JMP _2_108 _2_109: MOV EAX,_2_1+23 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 _2_108: XOR EAX,EAX PUSH EAX MOV CL,1 CALL _keepch ADD ESP,4 MOV EAX,[_pline] MOV DWORD [_line],EAX XOR EAX,EAX PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 MOV ESP,EBP POP EBP RET _2_1 DB 110,111,32,113,117,111,116,101,0,110 DB 111,32,97,112,111,115,116,114,111,112 DB 104,101,0,108,105,110,101,32,116,111 DB 111,32,108,111,110,103,0 _keepch: PUSH EBP MOV EBP,ESP MOV EAX,[_pptr] MOV EBX,EAX MOV EAX,127 CALL __lt OR EAX,EAX JNE _2_112 JMP _2_111 _2_112: MOV EAX,[_pline] PUSH EAX MOV EAX,[_pptr] INC EAX MOV DWORD [_pptr],EAX POP EBX ADD EAX,EBX PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL _2_111: POP EBP RET _ifline: PUSH EBP MOV EBP,ESP _2_114: XOR CL,CL CALL _inline MOV EAX,[_eof] OR EAX,EAX JNE _2_117 JMP _2_116 _2_117: POP EBP RET _2_116: MOV EAX,_2_113+0 PUSH EAX MOV CL,1 CALL _match ADD ESP,4 OR EAX,EAX JNE _2_119 JMP _2_118 _2_119: MOV EAX,[_iflevel] INC EAX MOV DWORD [_iflevel],EAX MOV EAX,[_skipleve] OR EAX,EAX JNE _2_121 JMP _2_120 _2_121: JMP _2_114 _2_120: MOV EAX,_msname PUSH EAX MOV CL,1 CALL _symname ADD ESP,4 MOV EAX,_msname PUSH EAX MOV EAX,[_macn] PUSH EAX MOV EAX,11 PUSH EAX MOV EAX,[_macn] MOV EBX,3300 ADD EAX,EBX PUSH EAX MOV EAX,300 PUSH EAX XOR EAX,EAX PUSH EAX MOV CL,6 CALL _search ADD ESP,24 OR EAX,EAX JE _2_123 JMP _2_122 _2_123: MOV EAX,[_iflevel] MOV DWORD [_skipleve],EAX _2_122: JMP _2_114 _2_118: MOV EAX,_2_113+7 PUSH EAX MOV CL,1 CALL _match ADD ESP,4 OR EAX,EAX JNE _2_125 JMP _2_124 _2_125: MOV EAX,[_iflevel] INC EAX MOV DWORD [_iflevel],EAX MOV EAX,[_skipleve] OR EAX,EAX JNE _2_127 JMP _2_126 _2_127: JMP _2_114 _2_126: MOV EAX,_msname PUSH EAX MOV CL,1 CALL _symname ADD ESP,4 MOV EAX,_msname PUSH EAX MOV EAX,[_macn] PUSH EAX MOV EAX,11 PUSH EAX MOV EAX,[_macn] MOV EBX,3300 ADD EAX,EBX PUSH EAX MOV EAX,300 PUSH EAX XOR EAX,EAX PUSH EAX MOV CL,6 CALL _search ADD ESP,24 OR EAX,EAX JNE _2_129 JMP _2_128 _2_129: MOV EAX,[_iflevel] MOV DWORD [_skipleve],EAX _2_128: JMP _2_114 _2_124: MOV EAX,_2_113+15 PUSH EAX MOV CL,1 CALL _match ADD ESP,4 OR EAX,EAX JNE _2_131 JMP _2_130 _2_131: MOV EAX,[_iflevel] OR EAX,EAX JNE _2_133 JMP _2_132 _2_133: MOV EAX,[_skipleve] PUSH EAX MOV EAX,[_iflevel] POP EBX CALL __eq OR EAX,EAX JNE _2_135 JMP _2_134 _2_135: XOR EAX,EAX MOV DWORD [_skipleve],EAX JMP _2_136 _2_134: MOV EAX,[_skipleve] OR EAX,EAX JE _2_138 JMP _2_137 _2_138: MOV EAX,[_iflevel] MOV DWORD [_skipleve],EAX _2_137: _2_136: JMP _2_139 _2_132: XOR CL,CL CALL _noiferr _2_139: JMP _2_114 _2_130: MOV EAX,_2_113+21 PUSH EAX MOV CL,1 CALL _match ADD ESP,4 OR EAX,EAX JNE _2_141 JMP _2_140 _2_141: MOV EAX,[_iflevel] OR EAX,EAX JNE _2_143 JMP _2_142 _2_143: MOV EAX,[_skipleve] PUSH EAX MOV EAX,[_iflevel] POP EBX CALL __eq OR EAX,EAX JNE _2_145 JMP _2_144 _2_145: XOR EAX,EAX MOV DWORD [_skipleve],EAX _2_144: MOV EAX,[_iflevel] DEC EAX MOV DWORD [_iflevel],EAX JMP _2_146 _2_142: XOR CL,CL CALL _noiferr _2_146: JMP _2_114 _2_140: MOV EAX,[_skipleve] OR EAX,EAX JNE _2_148 JMP _2_147 _2_148: JMP _2_114 _2_147: MOV EAX,[_ch] OR EAX,EAX JE _2_150 JMP _2_149 _2_150: JMP _2_114 _2_149: JMP _2_115 JMP _2_114 _2_115: POP EBP RET _2_113 DB 35,105,102,100,101,102,0,35,105,102 DB 110,100,101,102,0,35,101,108,115,101 DB 0,35,101,110,100,105,102,0 _inline: PUSH EBP MOV EBP,ESP ADD ESP,-8 MOV EAX,[_input] MOV EBX,EAX MOV EAX,-1 CALL __eq OR EAX,EAX JNE _2_153 JMP _2_152 _2_153: XOR CL,CL CALL _openfile _2_152: MOV EAX,[_eof] OR EAX,EAX JNE _2_155 JMP _2_154 _2_155: MOV ESP,EBP POP EBP RET _2_154: LEA EAX,[EBP-8] PUSH EAX MOV EAX,[_input2] POP EBX MOV [EBX],EAX MOV EBX,EAX MOV EAX,-1 CALL __eq OR EAX,EAX JNE _2_157 JMP _2_156 _2_157: LEA EAX,[EBP-8] PUSH EAX MOV EAX,[_input] POP EBX MOV [EBX],EAX _2_156: MOV EAX,[_line] PUSH EAX MOV EAX,127 PUSH EAX LEA EAX,[EBP-8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,3 CALL _fgets ADD ESP,12 OR EAX,EAX JE _2_159 JMP _2_158 _2_159: LEA EAX,[EBP-8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,1 CALL _OS_fclos ADD ESP,4 MOV EAX,[_input2] MOV EBX,EAX MOV EAX,-1 CALL __ne OR EAX,EAX JNE _2_161 JMP _2_160 _2_161: MOV EAX,-1 MOV DWORD [_input2],EAX JMP _2_162 _2_160: MOV EAX,-1 MOV DWORD [_input],EAX _2_162: MOV EAX,[_line] MOV EBX,EAX XOR EAX,EAX MOV [EBX],AL JMP _2_163 _2_158: MOV EAX,[_listfp] OR EAX,EAX JNE _2_165 JMP _2_164 _2_165: MOV EAX,[_listfp] PUSH EAX MOV EAX,[_output] POP EBX CALL __eq OR EAX,EAX JNE _2_167 JMP _2_166 _2_167: MOV EAX,59 PUSH EAX MOV EAX,[_output] PUSH EAX MOV CL,2 CALL _OS_fputc ADD ESP,8 _2_166: MOV EAX,[_line] PUSH EAX MOV EAX,[_listfp] PUSH EAX MOV CL,2 CALL _fputs ADD ESP,8 _2_164: _2_163: XOR EAX,EAX PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 MOV ESP,EBP POP EBP RET _inbyte: PUSH EBP MOV EBP,ESP _2_169: MOV EAX,[_ch] OR EAX,EAX JE _2_171 JMP _2_170 _2_171: MOV EAX,[_eof] OR EAX,EAX JNE _2_173 JMP _2_172 _2_173: XOR EAX,EAX POP EBP RET _2_172: XOR CL,CL CALL _preproce JMP _2_169 _2_170: XOR CL,CL CALL _gch POP EBP RET _symname: PUSH EBP MOV EBP,ESP ADD ESP,-8 XOR CL,CL CALL _blanks MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _alpha ADD ESP,4 OR EAX,EAX JE _2_176 JMP _2_175 _2_176: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX XOR EAX,EAX MOV [EBX],AL MOV ESP,EBP POP EBP RET _2_175: LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_177: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_179 JMP _2_178 _2_179: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX PUSH EAX XOR CL,CL CALL _gch POP EBX MOV [EBX],AL LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,8 CALL __lt OR EAX,EAX JNE _2_181 JMP _2_180 _2_181: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX _2_180: JMP _2_177 _2_178: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX XOR EAX,EAX MOV [EBX],AL MOV EAX,1 MOV ESP,EBP POP EBP RET _need: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,1 CALL _match ADD ESP,4 OR EAX,EAX JE _2_184 JMP _2_183 _2_184: MOV EAX,_2_182+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 _2_183: POP EBP RET _2_182 DB 109,105,115,115,105,110,103,32,116,111 DB 107,101,110,0 _ns: PUSH EBP MOV EBP,ESP MOV EAX,_2_185+0 PUSH EAX MOV CL,1 CALL _match ADD ESP,4 OR EAX,EAX JE _2_187 JMP _2_186 _2_187: MOV EAX,_2_185+2 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 JMP _2_188 _2_186: XOR EAX,EAX MOV DWORD [_errflag],EAX _2_188: POP EBP RET _2_185 DB 59,0,110,111,32,115,101,109,105,99 DB 111,108,111,110,0 _match: PUSH EBP MOV EBP,ESP ADD ESP,-4 XOR CL,CL CALL _blanks LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_lptr] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _streq ADD ESP,8 POP EBX MOV [EBX],EAX OR EAX,EAX JNE _2_191 JMP _2_190 _2_191: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 MOV EAX,1 MOV ESP,EBP POP EBP RET _2_190: XOR EAX,EAX MOV ESP,EBP POP EBP RET _streq: PUSH EBP MOV EBP,ESP ADD ESP,-4 LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_193: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] OR EAX,EAX JNE _2_195 JMP _2_194 _2_195: LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX CALL __ne OR EAX,EAX JNE _2_197 JMP _2_196 _2_197: XOR EAX,EAX MOV ESP,EBP POP EBP RET _2_196: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX JMP _2_193 _2_194: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV ESP,EBP POP EBP RET _amatch: PUSH EBP MOV EBP,ESP ADD ESP,-4 XOR CL,CL CALL _blanks LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_lptr] PUSH EAX LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,3 CALL _astreq ADD ESP,12 POP EBX MOV [EBX],EAX OR EAX,EAX JNE _2_200 JMP _2_199 _2_200: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 MOV EAX,1 MOV ESP,EBP POP EBP RET _2_199: XOR EAX,EAX MOV ESP,EBP POP EBP RET _astreq: PUSH EBP MOV EBP,ESP ADD ESP,-4 LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_202: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] POP EBX CALL __lt OR EAX,EAX JNE _2_204 JMP _2_203 _2_204: LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX CALL __ne OR EAX,EAX JNE _2_206 JMP _2_205 _2_206: JMP _2_203 _2_205: LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,32 CALL __lt OR EAX,EAX JNE _2_208 JMP _2_207 _2_208: JMP _2_203 _2_207: LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,32 CALL __lt OR EAX,EAX JNE _2_210 JMP _2_209 _2_210: JMP _2_203 _2_209: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX JMP _2_202 _2_203: LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JE _2_214 JMP _2_212 _2_214: LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JE _2_215 JMP _2_212 _2_215: XOR EAX,EAX JMP _2_213 _2_212: MOV EAX,1 _2_213: OR EAX,EAX JNE _2_216 JMP _2_211 _2_216: XOR EAX,EAX MOV ESP,EBP POP EBP RET _2_211: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV ESP,EBP POP EBP RET _nextop: PUSH EBP MOV EBP,ESP ADD ESP,-4 XOR EAX,EAX MOV DWORD [_opindex],EAX XOR CL,CL CALL _blanks _2_218: XOR EAX,EAX MOV DWORD [_opsize],EAX _2_220: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,32 CALL __gt OR EAX,EAX JNE _2_222 JMP _2_221 _2_222: LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_opsize] INC EAX MOV DWORD [_opsize],EAX DEC EAX POP EBX ADD EAX,EBX PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL JMP _2_220 _2_221: LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_opsize] POP EBX ADD EAX,EBX MOV EBX,EAX XOR EAX,EAX MOV [EBX],AL MOV EAX,[_lptr] PUSH EAX LEA EAX,[EBP-4] PUSH EAX MOV CL,2 CALL _streq ADD ESP,8 MOV DWORD [_opsize],EAX OR EAX,EAX JNE _2_224 JMP _2_223 _2_224: MOV EAX,[_lptr] PUSH EAX MOV EAX,[_opsize] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,61 CALL __ne OR EAX,EAX JNE _2_228 JMP _2_226 _2_228: MOV EAX,[_lptr] PUSH EAX MOV EAX,[_opsize] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV EAX,[_lptr] PUSH EAX MOV EAX,[_opsize] POP EBX ADD EAX,EBX MOV EBX,EAX MOV EAX,1 XCHG EAX,EBX SUB EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX CALL __ne OR EAX,EAX JNE _2_229 JMP _2_226 _2_229: MOV EAX,1 JMP _2_227 _2_226: XOR EAX,EAX _2_227: OR EAX,EAX JNE _2_230 JMP _2_225 _2_230: MOV EAX,1 MOV ESP,EBP POP EBP RET _2_225: _2_223: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOVSX EAX,BYTE [EBX] OR EAX,EAX JNE _2_232 JMP _2_231 _2_232: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX MOV EAX,[_opindex] INC EAX MOV DWORD [_opindex],EAX JMP _2_233 _2_231: XOR EAX,EAX MOV ESP,EBP POP EBP RET _2_233: JMP _2_218 _2_219: MOV ESP,EBP POP EBP RET _blanks: PUSH EBP MOV EBP,ESP _2_235: _2_237: MOV EAX,[_ch] OR EAX,EAX JNE _2_239 JMP _2_238 _2_239: XOR CL,CL CALL _white OR EAX,EAX JNE _2_241 JMP _2_240 _2_241: XOR CL,CL CALL _gch JMP _2_242 _2_240: POP EBP RET _2_242: JMP _2_237 _2_238: MOV EAX,[_line] PUSH EAX MOV EAX,[_mline] POP EBX CALL __eq OR EAX,EAX JNE _2_244 JMP _2_243 _2_244: POP EBP RET _2_243: XOR CL,CL CALL _preproce MOV EAX,[_eof] OR EAX,EAX JNE _2_246 JMP _2_245 _2_246: JMP _2_236 _2_245: JMP _2_235 _2_236: POP EBP RET _white: PUSH EBP MOV EBP,ESP MOV EAX,[_lptr] MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,32 CALL __le OR EAX,EAX JNE _2_250 JMP _2_248 _2_250: MOV EAX,[_lptr] MOV EBX,EAX MOVSX EAX,BYTE [EBX] OR EAX,EAX JNE _2_251 JMP _2_248 _2_251: MOV EAX,1 JMP _2_249 _2_248: XOR EAX,EAX _2_249: POP EBP RET _gch: PUSH EBP MOV EBP,ESP ADD ESP,-4 LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_ch] POP EBX MOV [EBX],EAX OR EAX,EAX JNE _2_254 JMP _2_253 _2_254: MOV EAX,1 PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 _2_253: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV ESP,EBP POP EBP RET _bump: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] OR EAX,EAX JNE _2_257 JMP _2_256 _2_257: MOV EAX,[_lptr] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV DWORD [_lptr],EAX JMP _2_258 _2_256: MOV EAX,[_line] MOV DWORD [_lptr],EAX _2_258: MOV EAX,[_lptr] MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV DWORD [_nch],EAX MOV DWORD [_ch],EAX OR EAX,EAX JNE _2_260 JMP _2_259 _2_260: MOV EAX,[_lptr] MOV EBX,1 ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV DWORD [_nch],EAX _2_259: POP EBP RET _kill: PUSH EBP MOV EBP,ESP MOV EAX,[_line] MOV EBX,EAX XOR EAX,EAX MOV [EBX],AL XOR EAX,EAX PUSH EAX MOV CL,1 CALL _bump ADD ESP,4 POP EBP RET _skip: PUSH EBP MOV EBP,ESP XOR CL,CL CALL _inbyte PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_264 JMP _2_263 _2_264: _2_265: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_267 JMP _2_266 _2_267: XOR CL,CL CALL _gch JMP _2_265 _2_266: JMP _2_268 _2_263: _2_269: MOV EAX,[_ch] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JE _2_271 JMP _2_270 _2_271: MOV EAX,[_ch] OR EAX,EAX JE _2_273 JMP _2_272 _2_273: JMP _2_270 _2_272: XOR CL,CL CALL _gch JMP _2_269 _2_270: _2_268: XOR CL,CL CALL _blanks POP EBP RET _endst: PUSH EBP MOV EBP,ESP XOR CL,CL CALL _blanks MOV EAX,[_lptr] PUSH EAX MOV EAX,_2_274+0 PUSH EAX MOV CL,2 CALL _streq ADD ESP,8 OR EAX,EAX JE _2_277 JMP _2_275 _2_277: MOV EAX,[_ch] MOV EBX,EAX XOR EAX,EAX CALL __eq OR EAX,EAX JE _2_278 JMP _2_275 _2_278: XOR EAX,EAX JMP _2_276 _2_275: MOV EAX,1 _2_276: POP EBP RET _2_274 DB 59,0 _addsym: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,_glbptr POP EBX CALL __eq OR EAX,EAX JNE _2_281 JMP _2_280 _2_281: LEA EAX,[EBP+32] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,1 CALL _findglb ADD ESP,4 MOV DWORD [_cptr2],EAX OR EAX,EAX JNE _2_283 JMP _2_282 _2_283: MOV EAX,[_cptr2] POP EBP RET _2_282: MOV EAX,[_cptr] OR EAX,EAX JE _2_285 JMP _2_284 _2_285: MOV EAX,_2_279+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 XOR EAX,EAX POP EBP RET _2_284: JMP _2_286 _2_280: MOV EAX,[_locptr] PUSH EAX MOV EAX,[_symtab] MOV EBX,400 ADD EAX,EBX MOV EBX,EAX MOV EAX,20 XCHG EAX,EBX SUB EAX,EBX POP EBX CALL __ugt OR EAX,EAX JNE _2_288 JMP _2_287 _2_288: MOV EAX,_2_279+29 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 MOV EAX,7 PUSH EAX MOV CL,1 CALL _OS_exit ADD ESP,4 _2_287: LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX, [EBX] MOV DWORD [_cptr],EAX _2_286: MOV EAX,[_cptr] PUSH EAX LEA EAX,[EBP+28] MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL MOV EAX,[_cptr] MOV EBX,1 ADD EAX,EBX PUSH EAX LEA EAX,[EBP+24] MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL MOV EAX,[_cptr] MOV EBX,2 ADD EAX,EBX PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] POP EBX MOV [EBX],AL LEA EAX,[EBP+20] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_cptr] MOV EBX,3 ADD EAX,EBX PUSH EAX MOV EAX,4 PUSH EAX MOV CL,3 CALL _putint ADD ESP,12 LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_cptr] MOV EBX,5 ADD EAX,EBX MOV EBX,2 ADD EAX,EBX PUSH EAX MOV EAX,4 PUSH EAX MOV CL,3 CALL _putint ADD ESP,12 MOV EAX,[_cptr] MOV EBX,11 ADD EAX,EBX MOV DWORD [_cptr2],EAX MOV DWORD [_cptr3],EAX _2_289: LEA EAX,[EBP+32] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _an ADD ESP,4 OR EAX,EAX JNE _2_291 JMP _2_290 _2_291: MOV EAX,[_cptr2] INC EAX MOV DWORD [_cptr2],EAX DEC EAX PUSH EAX LEA EAX,[EBP+32] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],AL JMP _2_289 _2_290: LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,_locptr POP EBX CALL __eq OR EAX,EAX JNE _2_293 JMP _2_292 _2_293: MOV EAX,[_cptr2] PUSH EAX MOV EAX,[_cptr2] PUSH EAX MOV EAX,[_cptr3] POP EBX XCHG EAX,EBX SUB EAX,EBX POP EBX MOV [EBX],AL LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_cptr2] INC EAX MOV DWORD [_cptr2],EAX POP EBX MOV [EBX],EAX _2_292: MOV EAX,[_cptr] POP EBP RET _2_279 DB 103,108,111,98,97,108,32,115,121,109 DB 98,111,108,32,116,97,98,108,101,32 DB 111,118,101,114,102,108,111,119,0,108 DB 111,99,97,108,32,115,121,109,98,111 DB 108,32,116,97,98,108,101,32,111,118 DB 101,114,102,108,111,119,0 _search: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+24] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+28] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,1 CALL _hash ADD ESP,4 PUSH EAX LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,1 XCHG EAX,EBX SUB EAX,EBX POP EBX XCHG EAX,EBX CDQ IDIV EBX MOV EAX,EDX PUSH EAX LEA EAX,[EBP+20] MOV EBX,EAX MOV EAX, [EBX] POP EBX IMUL EBX POP EBX ADD EAX,EBX MOV DWORD [_cptr2],EAX MOV DWORD [_cptr],EAX _2_295: MOV EAX,[_cptr] MOV EBX,EAX MOVSX EAX,BYTE [EBX] OR EAX,EAX JNE _2_297 JMP _2_296 _2_297: LEA EAX,[EBP+28] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_cptr] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX PUSH EAX MOV EAX,8 PUSH EAX MOV CL,3 CALL _astreq ADD ESP,12 OR EAX,EAX JNE _2_299 JMP _2_298 _2_299: MOV EAX,1 POP EBP RET _2_298: MOV EAX,[_cptr] PUSH EAX LEA EAX,[EBP+20] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV DWORD [_cptr],EAX PUSH EAX LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] POP EBX CALL __uge OR EAX,EAX JNE _2_301 JMP _2_300 _2_301: LEA EAX,[EBP+24] MOV EBX,EAX MOV EAX, [EBX] MOV DWORD [_cptr],EAX _2_300: MOV EAX,[_cptr] PUSH EAX MOV EAX,[_cptr2] POP EBX CALL __eq OR EAX,EAX JNE _2_303 JMP _2_302 _2_303: XOR EAX,EAX MOV DWORD [_cptr],EAX POP EBP RET _2_302: JMP _2_295 _2_296: XOR EAX,EAX POP EBP RET _hash: PUSH EBP MOV EBP,ESP ADD ESP,-8 LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_305: LEA EAX,[EBP-8] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],EAX OR EAX,EAX JNE _2_307 JMP _2_306 _2_307: LEA EAX,[EBP-4] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,1 MOV ECX,EAX MOV EAX,EBX SAL EAX,CL PUSH EAX LEA EAX,[EBP-8] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX POP EBX MOV [EBX],EAX JMP _2_305 _2_306: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV ESP,EBP POP EBP RET _findglb: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_symtab] MOV EBX,400 ADD EAX,EBX PUSH EAX MOV EAX,20 PUSH EAX MOV EAX,[_symtab] MOV EBX,400 ADD EAX,EBX MOV EBX,3980 ADD EAX,EBX PUSH EAX MOV EAX,200 PUSH EAX MOV EAX,11 PUSH EAX MOV CL,6 CALL _search ADD ESP,24 OR EAX,EAX JNE _2_310 JMP _2_309 _2_310: MOV EAX,[_cptr] POP EBP RET _2_309: XOR EAX,EAX POP EBP RET _findloc: PUSH EBP MOV EBP,ESP MOV EAX,[_locptr] MOV EBX,EAX MOV EAX,1 XCHG EAX,EBX SUB EAX,EBX MOV DWORD [_cptr],EAX _2_312: MOV EAX,[_cptr] PUSH EAX MOV EAX,[_symtab] POP EBX CALL __ugt OR EAX,EAX JNE _2_314 JMP _2_313 _2_314: MOV EAX,[_cptr] PUSH EAX MOV EAX,[_cptr] MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX XCHG EAX,EBX SUB EAX,EBX MOV DWORD [_cptr],EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_cptr] PUSH EAX MOV EAX,8 PUSH EAX MOV CL,3 CALL _astreq ADD ESP,12 OR EAX,EAX JNE _2_316 JMP _2_315 _2_316: MOV EAX,[_cptr] MOV EBX,EAX MOV EAX,11 XCHG EAX,EBX SUB EAX,EBX POP EBP RET _2_315: MOV EAX,[_cptr] MOV EBX,EAX MOV EAX,11 XCHG EAX,EBX SUB EAX,EBX MOV EBX,EAX MOV EAX,1 XCHG EAX,EBX SUB EAX,EBX MOV DWORD [_cptr],EAX JMP _2_312 _2_313: XOR EAX,EAX POP EBP RET _nextsym: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,11 ADD EAX,EBX POP EBX MOV [EBX],EAX _2_318: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,32 CALL __ge OR EAX,EAX JNE _2_320 JMP _2_319 _2_320: JMP _2_318 _2_319: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] POP EBP RET _addwhile: PUSH EBP MOV EBP,ESP ADD ESP,-4 LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_csp] POP EBX MOV [EBX],EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,4 ADD EAX,EBX PUSH EAX XOR CL,CL CALL _getlabel POP EBX MOV [EBX],EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,8 ADD EAX,EBX PUSH EAX XOR CL,CL CALL _getlabel POP EBX MOV [EBX],EAX MOV EAX,[_wqptr] PUSH EAX MOV EAX,[_wq] MOV EBX,120 ADD EAX,EBX MOV EBX,EAX MOV EAX,12 XCHG EAX,EBX SUB EAX,EBX POP EBX CALL __eq OR EAX,EAX JNE _2_323 JMP _2_322 _2_323: MOV EAX,_2_321+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 MOV EAX,7 PUSH EAX MOV CL,1 CALL _OS_exit ADD ESP,4 _2_322: LEA EAX,[EBP-4] MOV EBX,EAX XOR EAX,EAX MOV [EBX],EAX _2_324: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,3 CALL __lt OR EAX,EAX JNE _2_326 JMP _2_325 _2_326: MOV EAX,[_wqptr] INC EAX INC EAX INC EAX INC EAX MOV DWORD [_wqptr],EAX DEC EAX DEC EAX DEC EAX DEC EAX PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX POP EBX SHL EAX,1 SHL EAX,1 ADD EAX,EBX MOV EBX,EAX MOV EAX, [EBX] POP EBX MOV [EBX],EAX JMP _2_324 _2_325: MOV ESP,EBP POP EBP RET _2_321 DB 99,111,110,116,114,111,108,32,115,116 DB 97,116,101,109,101,110,116,32,110,101 DB 115,116,105,110,103,32,108,105,109,105 DB 116,0 _readwhil: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_wq] POP EBX CALL __ule OR EAX,EAX JNE _2_329 JMP _2_328 _2_329: MOV EAX,_2_327+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 XOR EAX,EAX POP EBP RET _2_328: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,12 XCHG EAX,EBX SUB EAX,EBX POP EBP RET _2_330: POP EBP RET _2_327 DB 111,117,116,32,111,102,32,99,111,110 DB 116,101,120,116,0 _delwhile: PUSH EBP MOV EBP,ESP MOV EAX,[_wqptr] PUSH EAX MOV EAX,[_wq] POP EBX CALL __ugt OR EAX,EAX JNE _2_333 JMP _2_332 _2_333: MOV EAX,[_wqptr] MOV EBX,EAX MOV EAX,12 XCHG EAX,EBX SUB EAX,EBX MOV DWORD [_wqptr],EAX _2_332: POP EBP RET _alpha: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _isalpha ADD ESP,4 OR EAX,EAX JE _2_337 JMP _2_335 _2_337: LEA EAX,[EBP+8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,95 CALL __eq OR EAX,EAX JE _2_338 JMP _2_335 _2_338: XOR EAX,EAX JMP _2_336 _2_335: MOV EAX,1 _2_336: POP EBP RET _an: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _alpha ADD ESP,4 OR EAX,EAX JE _2_342 JMP _2_340 _2_342: LEA EAX,[EBP+8] MOV EBX,EAX MOVSX EAX,BYTE [EBX] PUSH EAX MOV CL,1 CALL _isdigit ADD ESP,4 OR EAX,EAX JE _2_343 JMP _2_340 _2_343: XOR EAX,EAX JMP _2_341 _2_340: MOV EAX,1 _2_341: POP EBP RET _getlabel: PUSH EBP MOV EBP,ESP MOV EAX,[_nxtlab] INC EAX MOV DWORD [_nxtlab],EAX POP EBP RET _getint: PUSH EBP MOV EBP,ESP ADD ESP,-4 LEA EAX,[EBP-4] PUSH EAX LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] DEC EAX MOV [EBX],EAX POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] POP EBX MOV [EBX],EAX _2_346: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] DEC EAX MOV [EBX],EAX INC EAX OR EAX,EAX JNE _2_348 JMP _2_347 _2_348: LEA EAX,[EBP-4] PUSH EAX LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,8 MOV ECX,EAX MOV EAX,EBX SAL EAX,CL PUSH EAX LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] POP EBX ADD EAX,EBX MOV EBX,EAX MOVSX EAX,BYTE [EBX] MOV EBX,EAX MOV EAX,255 AND EAX,EBX POP EBX OR EAX,EBX POP EBX MOV [EBX],EAX JMP _2_346 _2_347: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] MOV ESP,EBP POP EBP RET _putint: PUSH EBP MOV EBP,ESP _2_350: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] DEC EAX MOV [EBX],EAX INC EAX OR EAX,EAX JNE _2_352 JMP _2_351 _2_352: LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX PUSH EAX LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] POP EBX MOV [EBX],AL LEA EAX,[EBP+16] PUSH EAX LEA EAX,[EBP+16] MOV EBX,EAX MOV EAX, [EBX] MOV EBX,EAX MOV EAX,8 MOV ECX,EAX MOV EAX,EBX SAR EAX,CL POP EBX MOV [EBX],EAX JMP _2_350 _2_351: POP EBP RET _lout: PUSH EBP MOV EBP,ESP LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _fputs ADD ESP,8 MOV EAX,10 PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _OS_fputc ADD ESP,8 POP EBP RET _illname: PUSH EBP MOV EBP,ESP MOV EAX,_2_354+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 XOR CL,CL CALL _skip POP EBP RET _2_354 DB 105,108,108,101,103,97,108,32,115,121 DB 109,98,111,108,0 _multidef: PUSH EBP MOV EBP,ESP MOV EAX,_2_355+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 POP EBP RET _2_355 DB 97,108,114,101,97,100,121,32,100,101 DB 102,105,110,101,100,0 _needlval: PUSH EBP MOV EBP,ESP MOV EAX,_2_356+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 POP EBP RET _2_356 DB 109,117,115,116,32,98,101,32,108,118 DB 97,108,117,101,0 _noiferr: PUSH EBP MOV EBP,ESP MOV EAX,_2_357+0 PUSH EAX MOV CL,1 CALL _error ADD ESP,4 XOR EAX,EAX MOV DWORD [_errflag],EAX POP EBP RET _2_357 DB 110,111,32,109,97,116,99,104,105,110 DB 103,32,35,105,102,46,46,46,0 _error: PUSH EBP MOV EBP,ESP MOV EAX,[_errflag] OR EAX,EAX JNE _2_360 JMP _2_359 _2_360: POP EBP RET _2_359: MOV EAX,1 MOV DWORD [_errflag],EAX _2_361: MOV EAX,[_line] PUSH EAX MOV EAX,__iob MOV EBX,64 ADD EAX,EBX PUSH EAX MOV CL,2 CALL _lout ADD ESP,8 LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,__iob MOV EBX,64 ADD EAX,EBX PUSH EAX MOV CL,2 CALL _errout ADD ESP,8 MOVSX EAX,BYTE [_alarm] OR EAX,EAX JNE _2_363 JMP _2_362 _2_363: MOV EAX,7 PUSH EAX MOV EAX,__iob MOV EBX,64 ADD EAX,EBX PUSH EAX MOV CL,2 CALL _OS_fputc ADD ESP,8 _2_362: MOVSX EAX,BYTE [_pause] OR EAX,EAX JNE _2_365 JMP _2_364 _2_365: _2_366: MOV EAX,__iob MOV EBX,64 ADD EAX,EBX PUSH EAX MOV CL,1 CALL _OS_fgetc ADD ESP,4 MOV EBX,EAX MOV EAX,10 CALL __ne OR EAX,EAX JNE _2_368 JMP _2_367 _2_368: JMP _2_366 _2_367: _2_364: MOV EAX,[_listfp] OR EAX,EAX JG _2_370 JMP _2_369 _2_370: LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV EAX,[_listfp] PUSH EAX MOV CL,2 CALL _errout ADD ESP,8 _2_369: POP EBP RET _errout: PUSH EBP MOV EBP,ESP ADD ESP,-4 LEA EAX,[EBP-4] PUSH EAX MOV EAX,[_line] MOV EBX,2 ADD EAX,EBX POP EBX MOV [EBX],EAX _2_372: LEA EAX,[EBP-4] MOV EBX,EAX MOV EAX, [EBX] INC EAX MOV [EBX],EAX DEC EAX PUSH EAX MOV EAX,[_lptr] POP EBX CALL __ule OR EAX,EAX JNE _2_374 JMP _2_373 _2_374: MOV EAX,32 PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _OS_fputc ADD ESP,8 JMP _2_372 _2_373: MOV EAX,_2_371+0 PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _lout ADD ESP,8 MOV EAX,_2_371+3 PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _fputs ADD ESP,8 LEA EAX,[EBP+12] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX LEA EAX,[EBP+8] MOV EBX,EAX MOV EAX, [EBX] PUSH EAX MOV CL,2 CALL _lout ADD ESP,8 MOV ESP,EBP POP EBP RET _2_371 DB 47,92,0,42,42,42,42,32,0