0,0 → 1,5066 |
_nogo: TIMES 1 DD 0 |
_noloc: TIMES 1 DD 0 |
_opindex: TIMES 1 DD 0 |
_opsize: TIMES 1 DD 0 |
_swactive: TIMES 1 DD 0 |
_swdefaul: TIMES 1 DD 0 |
_swnext DD 0 |
_swend DD 0 |
_stage DD 0 |
_wq DD 0 |
_argcs: TIMES 1 DD 0 |
_argvs DD 0 |
_wqptr DD 0 |
_litptr: TIMES 1 DD 0 |
_macptr: TIMES 1 DD 0 |
_pptr: TIMES 1 DD 0 |
_ch: TIMES 1 DD 0 |
_nch: TIMES 1 DD 0 |
_declared: TIMES 1 DD 0 |
_iflevel: TIMES 1 DD 0 |
_skipleve: TIMES 1 DD 0 |
_nxtlab: TIMES 1 DD 0 |
_litlab: TIMES 1 DD 0 |
_csp: TIMES 1 DD 0 |
_argstk: TIMES 1 DD 0 |
_argtop: TIMES 1 DD 0 |
_ncmp: TIMES 1 DD 0 |
_errflag: TIMES 1 DD 0 |
_eof: TIMES 1 DD 0 |
_output: TIMES 1 DD 0 |
_files: TIMES 1 DD 0 |
_filearg DD 0 |
_input DD -1 |
_input2 DD -1 |
_usexpr DD 1 |
_ccode DD 1 |
_snext DD 0 |
_stail DD 0 |
_slast DD 0 |
_listfp: TIMES 1 DD 0 |
_lastst: TIMES 1 DD 0 |
_oldseg: TIMES 1 DD 0 |
_optimize: TIMES 1 DB 0 |
_alarm: TIMES 1 DB 0 |
_monitor: TIMES 1 DB 0 |
_pause: TIMES 1 DB 0 |
_symtab DD 0 |
_litq DD 0 |
_macn DD 0 |
_macq DD 0 |
_pline DD 0 |
_mline DD 0 |
_line DD 0 |
_lptr DD 0 |
_glbptr DD 0 |
_locptr DD 0 |
_quote DB 34 |
TIMES 1 DB 0 |
_cptr DD 0 |
_cptr2 DD 0 |
_cptr3 DD 0 |
_msname: TIMES 9 DB 0 |
_ssname: TIMES 9 DB 0 |
_op DD 57,73,3,20,55,43,22,47,35,7 |
DD 6,1,69,52,16,49 |
_op2 DD 57,73,3,20,55,44,23,48,36,7 |
DD 6,1,69,53,17,50 |
|
_main: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,_1_1+0 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,32 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_1+47 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,32 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_1+95 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,32 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_argcs],EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_argvs],EAX |
MOV EAX,360 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_swnext],EAX |
MOV EAX,[_swnext] |
MOV EBX,1424 |
ADD EAX,EBX |
MOV DWORD [_swend],EAX |
MOV EAX,200 |
PUSH EAX |
MOV EAX,8 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_stage],EAX |
MOV EAX,30 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_wq],EAX |
MOV DWORD [_wqptr],EAX |
MOV EAX,3000 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_litq],EAX |
MOV EAX,3300 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_macn],EAX |
MOV EAX,2100 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_macq],EAX |
MOV EAX,128 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_pline],EAX |
MOV EAX,128 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_mline],EAX |
MOV EAX,[_stage] |
MOV EBX,6400 |
ADD EAX,EBX |
MOV DWORD [_slast],EAX |
MOV EAX,4400 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _OS_callo |
ADD ESP,8 |
MOV DWORD [_symtab],EAX |
MOV EAX,[_symtab] |
MOV DWORD [_locptr],EAX |
MOV EAX,[_symtab] |
MOV EBX,400 |
ADD EAX,EBX |
MOV DWORD [_glbptr],EAX |
XOR CL,CL |
CALL _ask |
XOR CL,CL |
CALL _openfile |
XOR CL,CL |
CALL _preproce |
XOR CL,CL |
CALL _header |
XOR CL,CL |
CALL _setcodes |
XOR CL,CL |
CALL _parse |
XOR CL,CL |
CALL _trailer |
MOV EAX,[_output] |
PUSH EAX |
MOV CL,1 |
CALL _OS_fclos |
ADD ESP,4 |
POP EBP |
RET |
_1_1 DB 83,109,97,108,108,32,67,32,51,56 |
DB 54,47,78,84,44,32,86,101,114,115 |
DB 105,111,110,32,51,46,49,44,32,82 |
DB 101,118,105,115,105,111,110,32,76,101 |
DB 118,101,108,32,49,10,0,67,111,112 |
DB 121,114,105,103,104,116,32,49,57,56 |
DB 50,44,32,49,57,56,51,44,32,49 |
DB 57,56,53,44,32,49,57,56,56,32 |
DB 74,46,32,69,46,32,72,101,110,100 |
DB 114,105,120,10,0,67,111,112,121,114 |
DB 105,103,104,116,32,49,57,57,56,32 |
DB 32,72,32,84,32,87,97,108,104,101 |
DB 105,109,10,10,0 |
|
_parse: |
PUSH EBP |
MOV EBP,ESP |
_1_3: |
MOV EAX,[_eof] |
OR EAX,EAX |
JE _1_5 |
JMP _1_4 |
_1_5: |
MOV EAX,_1_2+0 |
PUSH EAX |
MOV EAX,6 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_7 |
JMP _1_6 |
_1_7: |
MOV EAX,3 |
PUSH EAX |
MOV CL,1 |
CALL _dodeclar |
ADD ESP,4 |
JMP _1_8 |
_1_6: |
MOV EAX,2 |
PUSH EAX |
MOV CL,1 |
CALL _dodeclar |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_10 |
JMP _1_9 |
_1_10: |
JMP _1_11 |
_1_9: |
MOV EAX,_1_2+7 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_13 |
JMP _1_12 |
_1_13: |
XOR CL,CL |
CALL _doasm |
JMP _1_14 |
_1_12: |
MOV EAX,_1_2+12 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_16 |
JMP _1_15 |
_1_16: |
XOR CL,CL |
CALL _doinclud |
JMP _1_17 |
_1_15: |
MOV EAX,_1_2+21 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_19 |
JMP _1_18 |
_1_19: |
XOR CL,CL |
CALL _dodefine |
JMP _1_20 |
_1_18: |
XOR CL,CL |
CALL _dofuncti |
_1_20: |
_1_17: |
_1_14: |
_1_11: |
_1_8: |
XOR CL,CL |
CALL _blanks |
JMP _1_3 |
_1_4: |
POP EBP |
RET |
_1_2 DB 101,120,116,101,114,110,0,35,97,115 |
DB 109,0,35,105,110,99,108,117,100,101 |
DB 0,35,100,101,102,105,110,101,0 |
|
_dodeclar: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,_1_21+0 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_23 |
JMP _1_22 |
_1_23: |
MOV EAX,4 |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _declglb |
ADD ESP,8 |
JMP _1_24 |
_1_22: |
MOV EAX,_1_21+5 |
PUSH EAX |
MOV EAX,8 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_26 |
JMP _1_25 |
_1_26: |
MOV EAX,_1_21+14 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_28 |
JMP _1_27 |
_1_28: |
MOV EAX,5 |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _declglb |
ADD ESP,8 |
JMP _1_29 |
_1_27: |
MOV EAX,_1_21+19 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
MOV EAX,17 |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _declglb |
ADD ESP,8 |
_1_29: |
JMP _1_30 |
_1_25: |
MOV EAX,_1_21+23 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JE _1_34 |
JMP _1_32 |
_1_34: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __eq |
OR EAX,EAX |
JE _1_35 |
JMP _1_32 |
_1_35: |
XOR EAX,EAX |
JMP _1_33 |
_1_32: |
MOV EAX,1 |
_1_33: |
OR EAX,EAX |
JNE _1_36 |
JMP _1_31 |
_1_36: |
MOV EAX,16 |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _declglb |
ADD ESP,8 |
JMP _1_37 |
_1_31: |
XOR EAX,EAX |
POP EBP |
RET |
_1_37: |
_1_30: |
_1_24: |
XOR CL,CL |
CALL _ns |
MOV EAX,1 |
POP EBP |
RET |
_1_21 DB 99,104,97,114,0,117,110,115,105,103 |
DB 110,101,100,0,99,104,97,114,0,105 |
DB 110,116,0,105,110,116,0 |
|
_declglb: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-8 |
_1_39: |
XOR CL,CL |
CALL _endst |
OR EAX,EAX |
JNE _1_42 |
JMP _1_41 |
_1_42: |
MOV ESP,EBP |
POP EBP |
RET |
_1_41: |
MOV EAX,_1_38+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_44 |
JMP _1_43 |
_1_44: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX,3 |
MOV [EBX],EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
JMP _1_45 |
_1_43: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],EAX |
_1_45: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
OR EAX,EAX |
JE _1_47 |
JMP _1_46 |
_1_47: |
XOR CL,CL |
CALL _illname |
_1_46: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _findglb |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_49 |
JMP _1_48 |
_1_49: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _multidef |
ADD ESP,4 |
_1_48: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,1 |
CALL __eq |
OR EAX,EAX |
JNE _1_51 |
JMP _1_50 |
_1_51: |
MOV EAX,_1_38+2 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_53 |
JMP _1_52 |
_1_53: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX,4 |
MOV [EBX],EAX |
MOV EAX,_1_38+4 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
JMP _1_54 |
_1_52: |
MOV EAX,_1_38+6 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_56 |
JMP _1_55 |
_1_56: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX,2 |
MOV [EBX],EAX |
LEA EAX,[EBP-8] |
PUSH EAX |
XOR CL,CL |
CALL _needsub |
POP EBX |
MOV [EBX],EAX |
_1_55: |
_1_54: |
_1_50: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __eq |
OR EAX,EAX |
JNE _1_58 |
JMP _1_57 |
_1_58: |
MOV EAX,_ssname |
PUSH EAX |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,2 |
MOV ECX,EAX |
MOV EAX,EBX |
SAR EAX,CL |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,3 |
CALL _external |
ADD ESP,12 |
JMP _1_59 |
_1_57: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,4 |
CALL __ne |
OR EAX,EAX |
JNE _1_61 |
JMP _1_60 |
_1_61: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,2 |
MOV ECX,EAX |
MOV EAX,EBX |
SAR EAX,CL |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,3 |
CALL _initials |
ADD ESP,12 |
_1_60: |
_1_59: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __eq |
OR EAX,EAX |
JNE _1_63 |
JMP _1_62 |
_1_63: |
MOV EAX,_ssname |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV EAX,_glbptr |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,7 |
CALL _addsym |
ADD ESP,28 |
JMP _1_64 |
_1_62: |
MOV EAX,_ssname |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
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 |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,2 |
MOV ECX,EAX |
MOV EAX,EBX |
SAR EAX,CL |
POP EBX |
IMUL EBX |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV EAX,_glbptr |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,7 |
CALL _addsym |
ADD ESP,28 |
_1_64: |
MOV EAX,_1_38+8 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_66 |
JMP _1_65 |
_1_66: |
MOV ESP,EBP |
POP EBP |
RET |
_1_65: |
JMP _1_39 |
_1_40: |
MOV ESP,EBP |
POP EBP |
RET |
_1_38 DB 42,0,40,0,41,0,91,0,44,0 |
|
_initials: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
XOR EAX,EAX |
MOV DWORD [_litptr],EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JE _1_69 |
JMP _1_68 |
_1_69: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX,-1 |
MOV [EBX],EAX |
_1_68: |
LEA EAX,[EBP-4] |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
MOV [EBX],EAX |
MOV EAX,_1_67+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_71 |
JMP _1_70 |
_1_71: |
MOV EAX,_1_67+2 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_73 |
JMP _1_72 |
_1_73: |
_1_74: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JNE _1_76 |
JMP _1_75 |
_1_76: |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+8] |
PUSH EAX |
MOV CL,3 |
CALL _init |
ADD ESP,12 |
MOV EAX,_1_67+4 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_78 |
JMP _1_77 |
_1_78: |
JMP _1_75 |
_1_77: |
JMP _1_74 |
_1_75: |
MOV EAX,_1_67+6 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
JMP _1_79 |
_1_72: |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+8] |
PUSH EAX |
MOV CL,3 |
CALL _init |
ADD ESP,12 |
_1_79: |
_1_70: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,-1 |
CALL __eq |
OR EAX,EAX |
JNE _1_83 |
JMP _1_81 |
_1_83: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,-1 |
CALL __eq |
OR EAX,EAX |
JNE _1_84 |
JMP _1_81 |
_1_84: |
MOV EAX,1 |
JMP _1_82 |
_1_81: |
XOR EAX,EAX |
_1_82: |
OR EAX,EAX |
JNE _1_85 |
JMP _1_80 |
_1_85: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,2 |
CALL __eq |
OR EAX,EAX |
JNE _1_87 |
JMP _1_86 |
_1_87: |
MOV EAX,_1_67+8 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_86: |
XOR EAX,EAX |
PUSH EAX |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX,4 |
MOV [EBX],EAX |
PUSH EAX |
MOV CL,2 |
CALL _stowlit |
ADD ESP,8 |
_1_80: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _public |
ADD ESP,4 |
MOV EAX,[_litptr] |
OR EAX,EAX |
JG _1_89 |
JMP _1_88 |
_1_89: |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _dumplits |
ADD ESP,4 |
JMP _1_90 |
_1_88: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JG _1_92 |
JMP _1_91 |
_1_92: |
MOV EAX,58 |
PUSH EAX |
MOV EAX,[_output] |
PUSH EAX |
MOV CL,2 |
CALL _OS_fputc |
ADD ESP,8 |
_1_91: |
_1_90: |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _dumpzero |
ADD ESP,8 |
MOV ESP,EBP |
POP EBP |
RET |
_1_67 DB 61,0,123,0,44,0,125,0,110,101 |
DB 101,100,32,97,114,114,97,121,32,115 |
DB 105,122,101,0 |
|
_init: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV CL,1 |
CALL _string |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_95 |
JMP _1_94 |
_1_95: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,1 |
CALL __eq |
OR EAX,EAX |
JE _1_99 |
JMP _1_97 |
_1_99: |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,1 |
CALL __ne |
OR EAX,EAX |
JE _1_100 |
JMP _1_97 |
_1_100: |
XOR EAX,EAX |
JMP _1_98 |
_1_97: |
MOV EAX,1 |
_1_98: |
OR EAX,EAX |
JNE _1_101 |
JMP _1_96 |
_1_101: |
MOV EAX,_1_93+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_96: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,[_litptr] |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
XCHG EAX,EBX |
SUB EAX,EBX |
POP EBX |
XCHG EAX,EBX |
SUB EAX,EBX |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __eq |
OR EAX,EAX |
JNE _1_103 |
JMP _1_102 |
_1_103: |
XOR CL,CL |
CALL _point |
_1_102: |
JMP _1_104 |
_1_94: |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV CL,1 |
CALL _constexp |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_106 |
JMP _1_105 |
_1_106: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __eq |
OR EAX,EAX |
JNE _1_108 |
JMP _1_107 |
_1_108: |
MOV EAX,_1_93+42 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_107: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _stowlit |
ADD ESP,8 |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,1 |
XCHG EAX,EBX |
SUB EAX,EBX |
POP EBX |
MOV [EBX],EAX |
_1_105: |
_1_104: |
MOV ESP,EBP |
POP EBP |
RET |
_1_93 DB 109,117,115,116,32,97,115,115,105,103 |
DB 110,32,116,111,32,99,104,97,114,32 |
DB 112,111,105,110,116,101,114,32,111,114 |
DB 32,99,104,97,114,32,97,114,114,97 |
DB 121,0,99,97,110,110,111,116,32,97 |
DB 115,115,105,103,110,32,116,111,32,112 |
DB 111,105,110,116,101,114,0 |
|
_needsub: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
MOV EAX,_1_109+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_111 |
JMP _1_110 |
_1_111: |
XOR EAX,EAX |
MOV ESP,EBP |
POP EBP |
RET |
_1_110: |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV CL,1 |
CALL _constexp |
ADD ESP,4 |
OR EAX,EAX |
JE _1_113 |
JMP _1_112 |
_1_113: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],EAX |
_1_112: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JL _1_115 |
JMP _1_114 |
_1_115: |
MOV EAX,_1_109+2 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
LEA EAX,[EBP-4] |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
NEG EAX |
POP EBX |
MOV [EBX],EAX |
_1_114: |
MOV EAX,_1_109+24 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV ESP,EBP |
POP EBP |
RET |
_1_109 DB 93,0,110,101,103,97,116,105,118,101 |
DB 32,115,105,122,101,32,105,108,108,101 |
DB 103,97,108,0,93,0 |
|
_doinclud: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-36 |
XOR CL,CL |
CALL _blanks |
MOV EAX,[_lptr] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,34 |
CALL __eq |
OR EAX,EAX |
JE _1_120 |
JMP _1_118 |
_1_120: |
MOV EAX,[_lptr] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,60 |
CALL __eq |
OR EAX,EAX |
JE _1_121 |
JMP _1_118 |
_1_121: |
XOR EAX,EAX |
JMP _1_119 |
_1_118: |
MOV EAX,1 |
_1_119: |
OR EAX,EAX |
JNE _1_122 |
JMP _1_117 |
_1_122: |
MOV EAX,[_lptr] |
INC EAX |
MOV DWORD [_lptr],EAX |
_1_117: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
_1_123: |
MOV EAX,[_lptr] |
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 _1_127 |
JMP _1_125 |
_1_127: |
MOV EAX,[_lptr] |
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,34 |
CALL __ne |
OR EAX,EAX |
JNE _1_128 |
JMP _1_125 |
_1_128: |
MOV EAX,[_lptr] |
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,62 |
CALL __ne |
OR EAX,EAX |
JNE _1_129 |
JMP _1_125 |
_1_129: |
MOV EAX,[_lptr] |
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,10 |
CALL __ne |
OR EAX,EAX |
JNE _1_130 |
JMP _1_125 |
_1_130: |
MOV EAX,1 |
JMP _1_126 |
_1_125: |
XOR EAX,EAX |
_1_126: |
OR EAX,EAX |
JNE _1_131 |
JMP _1_124 |
_1_131: |
LEA EAX,[EBP-36] |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,[_lptr] |
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 |
MOV [EBX],AL |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
MOV [EBX],EAX |
JMP _1_123 |
_1_124: |
LEA EAX,[EBP-36] |
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 |
LEA EAX,[EBP-36] |
PUSH EAX |
MOV EAX,_1_116+0 |
PUSH EAX |
MOV CL,2 |
CALL _OS_fopen |
ADD ESP,8 |
MOV DWORD [_input2],EAX |
OR EAX,EAX |
JE _1_133 |
JMP _1_132 |
_1_133: |
MOV EAX,-1 |
MOV DWORD [_input2],EAX |
MOV EAX,_1_116+2 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_132: |
XOR CL,CL |
CALL _kill |
MOV ESP,EBP |
POP EBP |
RET |
_1_116 DB 114,0,111,112,101,110,32,102,97,105 |
DB 108,117,114,101,32,111,110,32,105,110 |
DB 99,108,117,100,101,32,102,105,108,101 |
DB 0 |
|
_dodefine: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
MOV EAX,_msname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
OR EAX,EAX |
JE _1_136 |
JMP _1_135 |
_1_136: |
XOR CL,CL |
CALL _illname |
XOR CL,CL |
CALL _kill |
MOV ESP,EBP |
POP EBP |
RET |
_1_135: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
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 _1_138 |
JMP _1_137 |
_1_138: |
MOV EAX,[_cptr] |
MOV DWORD [_cptr2],EAX |
OR EAX,EAX |
JNE _1_140 |
JMP _1_139 |
_1_140: |
_1_141: |
MOV EAX,[_cptr2] |
INC EAX |
MOV DWORD [_cptr2],EAX |
DEC EAX |
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 _1_143 |
JMP _1_142 |
_1_143: |
JMP _1_141 |
_1_142: |
JMP _1_144 |
_1_139: |
MOV EAX,_1_134+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
MOV ESP,EBP |
POP EBP |
RET |
_1_144: |
_1_137: |
MOV EAX,[_macptr] |
PUSH EAX |
MOV EAX,[_cptr] |
MOV EBX,9 |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,2 |
PUSH EAX |
MOV CL,3 |
CALL _putint |
ADD ESP,12 |
_1_145: |
XOR CL,CL |
CALL _white |
OR EAX,EAX |
JNE _1_147 |
JMP _1_146 |
_1_147: |
XOR CL,CL |
CALL _gch |
JMP _1_145 |
_1_146: |
_1_148: |
XOR CL,CL |
CALL _gch |
PUSH EAX |
MOV CL,1 |
CALL _putmac |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_150 |
JMP _1_149 |
_1_150: |
JMP _1_148 |
_1_149: |
MOV EAX,[_macptr] |
MOV EBX,EAX |
MOV EAX,2099 |
CALL __ge |
OR EAX,EAX |
JNE _1_152 |
JMP _1_151 |
_1_152: |
MOV EAX,_1_134+22 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
MOV EAX,7 |
PUSH EAX |
MOV CL,1 |
CALL _OS_exit |
ADD ESP,4 |
_1_151: |
MOV ESP,EBP |
POP EBP |
RET |
_1_134 DB 109,97,99,114,111,32,110,97,109,101 |
DB 32,116,97,98,108,101,32,102,117,108 |
DB 108,0,109,97,99,114,111,32,115,116 |
DB 114,105,110,103,32,113,117,101,117,101 |
DB 32,102,117,108,108,0 |
|
_putmac: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,[_macq] |
PUSH EAX |
MOV EAX,[_macptr] |
POP EBX |
ADD EAX,EBX |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
POP EBX |
MOV [EBX],AL |
MOV EAX,[_macptr] |
MOV EBX,EAX |
MOV EAX,2099 |
CALL __lt |
OR EAX,EAX |
JNE _1_155 |
JMP _1_154 |
_1_155: |
MOV EAX,[_macptr] |
INC EAX |
MOV DWORD [_macptr],EAX |
_1_154: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
POP EBP |
RET |
|
_dofuncti: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
XOR EAX,EAX |
MOV DWORD [_litptr],EAX |
MOV DWORD [_lastst],EAX |
MOV DWORD [_noloc],EAX |
MOV DWORD [_nogo],EAX |
XOR CL,CL |
CALL _getlabel |
MOV DWORD [_litlab],EAX |
MOV EAX,[_symtab] |
MOV DWORD [_locptr],EAX |
MOV EAX,_1_156+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_158 |
JMP _1_157 |
_1_158: |
XOR CL,CL |
CALL _blanks |
_1_157: |
MOVSX EAX,BYTE [_monitor] |
OR EAX,EAX |
JNE _1_160 |
JMP _1_159 |
_1_160: |
MOV EAX,[_line] |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _lout |
ADD ESP,8 |
_1_159: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
OR EAX,EAX |
JE _1_162 |
JMP _1_161 |
_1_162: |
MOV EAX,_1_156+5 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
XOR EAX,EAX |
MOV DWORD [_errflag],EAX |
XOR CL,CL |
CALL _kill |
MOV ESP,EBP |
POP EBP |
RET |
_1_161: |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _findglb |
ADD ESP,4 |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JNE _1_164 |
JMP _1_163 |
_1_164: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,2 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,4 |
CALL __eq |
OR EAX,EAX |
JNE _1_166 |
JMP _1_165 |
_1_166: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,2 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX,2 |
MOV [EBX],AL |
JMP _1_167 |
_1_165: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _multidef |
ADD ESP,4 |
_1_167: |
JMP _1_168 |
_1_163: |
MOV EAX,_ssname |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV EAX,16 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV EAX,_glbptr |
PUSH EAX |
MOV EAX,2 |
PUSH EAX |
MOV CL,7 |
CALL _addsym |
ADD ESP,28 |
_1_168: |
MOV EAX,4 |
PUSH EAX |
MOV CL,1 |
CALL _public |
ADD ESP,4 |
XOR EAX,EAX |
MOV DWORD [_argstk],EAX |
MOV EAX,_1_156+37 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_170 |
JMP _1_169 |
_1_170: |
MOV EAX,_1_156+39 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_169: |
_1_171: |
MOV EAX,_1_156+53 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_173 |
JMP _1_172 |
_1_173: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_175 |
JMP _1_174 |
_1_175: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _findloc |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_177 |
JMP _1_176 |
_1_177: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _multidef |
ADD ESP,4 |
JMP _1_178 |
_1_176: |
MOV EAX,_ssname |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV EAX,[_argstk] |
PUSH EAX |
MOV EAX,_locptr |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,7 |
CALL _addsym |
ADD ESP,28 |
MOV EAX,[_argstk] |
MOV EBX,4 |
ADD EAX,EBX |
MOV DWORD [_argstk],EAX |
_1_178: |
JMP _1_179 |
_1_174: |
MOV EAX,_1_156+55 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
XOR CL,CL |
CALL _skip |
_1_179: |
XOR CL,CL |
CALL _blanks |
MOV EAX,[_lptr] |
PUSH EAX |
MOV EAX,_1_156+77 |
PUSH EAX |
MOV CL,2 |
CALL _streq |
ADD ESP,8 |
MOV EBX,EAX |
XOR EAX,EAX |
CALL __eq |
OR EAX,EAX |
JNE _1_183 |
JMP _1_181 |
_1_183: |
MOV EAX,_1_156+79 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
MOV EBX,EAX |
XOR EAX,EAX |
CALL __eq |
OR EAX,EAX |
JNE _1_184 |
JMP _1_181 |
_1_184: |
MOV EAX,1 |
JMP _1_182 |
_1_181: |
XOR EAX,EAX |
_1_182: |
OR EAX,EAX |
JNE _1_185 |
JMP _1_180 |
_1_185: |
MOV EAX,_1_156+81 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_180: |
XOR CL,CL |
CALL _endst |
OR EAX,EAX |
JNE _1_187 |
JMP _1_186 |
_1_187: |
JMP _1_172 |
_1_186: |
JMP _1_171 |
_1_172: |
XOR EAX,EAX |
MOV DWORD [_csp],EAX |
MOV EAX,[_argstk] |
MOV EBX,4 |
ADD EAX,EBX |
MOV DWORD [_argtop],EAX |
_1_188: |
MOV EAX,[_argstk] |
OR EAX,EAX |
JNE _1_190 |
JMP _1_189 |
_1_190: |
MOV EAX,_1_156+90 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_192 |
JMP _1_191 |
_1_192: |
MOV EAX,4 |
PUSH EAX |
MOV CL,1 |
CALL _doargs |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
JMP _1_193 |
_1_191: |
MOV EAX,_1_156+95 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_195 |
JMP _1_194 |
_1_195: |
MOV EAX,16 |
PUSH EAX |
MOV CL,1 |
CALL _doargs |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
JMP _1_196 |
_1_194: |
MOV EAX,_1_156+99 |
PUSH EAX |
MOV EAX,8 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_198 |
JMP _1_197 |
_1_198: |
MOV EAX,_1_156+108 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_200 |
JMP _1_199 |
_1_200: |
MOV EAX,5 |
PUSH EAX |
MOV CL,1 |
CALL _doargs |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
JMP _1_201 |
_1_199: |
MOV EAX,_1_156+113 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
MOV EAX,17 |
PUSH EAX |
MOV CL,1 |
CALL _doargs |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
_1_201: |
JMP _1_202 |
_1_197: |
MOV EAX,_1_156+117 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
JMP _1_189 |
_1_202: |
_1_196: |
_1_193: |
JMP _1_188 |
_1_189: |
MOV EAX,18 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,[_lastst] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __ne |
OR EAX,EAX |
JNE _1_206 |
JMP _1_204 |
_1_206: |
MOV EAX,[_lastst] |
MOV EBX,EAX |
MOV EAX,13 |
CALL __ne |
OR EAX,EAX |
JNE _1_207 |
JMP _1_204 |
_1_207: |
MOV EAX,1 |
JMP _1_205 |
_1_204: |
XOR EAX,EAX |
_1_205: |
OR EAX,EAX |
JNE _1_208 |
JMP _1_203 |
_1_208: |
MOV EAX,67 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
_1_203: |
MOV EAX,[_litptr] |
OR EAX,EAX |
JNE _1_210 |
JMP _1_209 |
_1_210: |
MOV EAX,1 |
PUSH EAX |
MOV CL,1 |
CALL _toseg |
ADD ESP,4 |
MOV EAX,66 |
PUSH EAX |
MOV EAX,[_litlab] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,1 |
PUSH EAX |
MOV CL,1 |
CALL _dumplits |
ADD ESP,4 |
_1_209: |
MOV ESP,EBP |
POP EBP |
RET |
_1_156 DB 118,111,105,100,0,105,108,108,101,103 |
DB 97,108,32,102,117,110,99,116,105,111 |
DB 110,32,111,114,32,100,101,99,108,97 |
DB 114,97,116,105,111,110,0,40,0,110 |
DB 111,32,111,112,101,110,32,112,97,114 |
DB 101,110,0,41,0,105,108,108,101,103 |
DB 97,108,32,97,114,103,117,109,101,110 |
DB 116,32,110,97,109,101,0,41,0,44 |
DB 0,110,111,32,99,111,109,109,97,0 |
DB 99,104,97,114,0,105,110,116,0,117 |
DB 110,115,105,103,110,101,100,0,99,104 |
DB 97,114,0,105,110,116,0,119,114,111 |
DB 110,103,32,110,117,109,98,101,114,32 |
DB 111,102,32,97,114,103,117,109,101,110 |
DB 116,115,0 |
|
_doargs: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-16 |
_1_212: |
MOV EAX,[_argstk] |
OR EAX,EAX |
JE _1_215 |
JMP _1_214 |
_1_215: |
MOV ESP,EBP |
POP EBP |
RET |
_1_214: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
LEA EAX,[EBP-4] |
PUSH EAX |
LEA EAX,[EBP-8] |
PUSH EAX |
MOV CL,4 |
CALL _decl |
ADD ESP,16 |
OR EAX,EAX |
JNE _1_217 |
JMP _1_216 |
_1_217: |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _findloc |
ADD ESP,4 |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JNE _1_219 |
JMP _1_218 |
_1_219: |
LEA EAX,[EBP-16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
MOV [EBX],AL |
LEA EAX,[EBP-16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,1 |
ADD EAX,EBX |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
MOV [EBX],AL |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,3 |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,3 |
CALL _putint |
ADD ESP,12 |
MOV EAX,[_argtop] |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,5 |
ADD EAX,EBX |
MOV EBX,2 |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _getint |
ADD ESP,8 |
POP EBX |
XCHG EAX,EBX |
SUB EAX,EBX |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
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 |
JMP _1_220 |
_1_218: |
MOV EAX,_1_211+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_220: |
_1_216: |
MOV EAX,[_argstk] |
MOV EBX,EAX |
MOV EAX,4 |
XCHG EAX,EBX |
SUB EAX,EBX |
MOV DWORD [_argstk],EAX |
XOR CL,CL |
CALL _endst |
OR EAX,EAX |
JNE _1_222 |
JMP _1_221 |
_1_222: |
MOV ESP,EBP |
POP EBP |
RET |
_1_221: |
MOV EAX,_1_211+16 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_224 |
JMP _1_223 |
_1_224: |
MOV EAX,_1_211+18 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_223: |
JMP _1_212 |
_1_213: |
MOV ESP,EBP |
POP EBP |
RET |
_1_211 DB 110,111,116,32,97,110,32,97,114,103 |
DB 117,109,101,110,116,0,44,0,110,111 |
DB 32,99,111,109,109,97,0 |
|
_decl: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-12 |
MOV EAX,_1_225+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_227 |
JMP _1_226 |
_1_227: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],EAX |
JMP _1_228 |
_1_226: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
_1_228: |
MOV EAX,_1_225+2 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_230 |
JMP _1_229 |
_1_230: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
MOV [EBX],EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,4 |
MOV [EBX],EAX |
JMP _1_231 |
_1_229: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,2 |
MOV ECX,EAX |
MOV EAX,EBX |
SAR EAX,CL |
POP EBX |
MOV [EBX],EAX |
_1_231: |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JE _1_233 |
JMP _1_232 |
_1_233: |
XOR CL,CL |
CALL _illname |
_1_232: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JNE _1_237 |
JMP _1_235 |
_1_237: |
MOV EAX,_1_225+4 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_238 |
JMP _1_235 |
_1_238: |
MOV EAX,1 |
JMP _1_236 |
_1_235: |
XOR EAX,EAX |
_1_236: |
OR EAX,EAX |
JNE _1_239 |
JMP _1_234 |
_1_239: |
_1_234: |
MOV EAX,_1_225+6 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_241 |
JMP _1_240 |
_1_241: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
CALL __lneg |
OR EAX,EAX |
JE _1_245 |
JMP _1_243 |
_1_245: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __ne |
OR EAX,EAX |
JE _1_246 |
JMP _1_243 |
_1_246: |
XOR EAX,EAX |
JMP _1_244 |
_1_243: |
MOV EAX,1 |
_1_244: |
OR EAX,EAX |
JNE _1_247 |
JMP _1_242 |
_1_247: |
MOV EAX,_1_225+8 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_242: |
MOV EAX,_1_225+21 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
JMP _1_248 |
_1_240: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,1 |
CALL __eq |
OR EAX,EAX |
JNE _1_252 |
JMP _1_250 |
_1_252: |
MOV EAX,_1_225+23 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_253 |
JMP _1_250 |
_1_253: |
MOV EAX,1 |
JMP _1_251 |
_1_250: |
XOR EAX,EAX |
_1_251: |
OR EAX,EAX |
JNE _1_254 |
JMP _1_249 |
_1_254: |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
XOR CL,CL |
CALL _needsub |
POP EBX |
IMUL EBX |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JE _1_256 |
JMP _1_255 |
_1_256: |
LEA EAX,[EBP+16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,2 |
CALL __eq |
OR EAX,EAX |
JNE _1_258 |
JMP _1_257 |
_1_258: |
MOV EAX,_1_225+25 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_257: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,4 |
MOV [EBX],EAX |
_1_255: |
_1_249: |
_1_248: |
LEA EAX,[EBP-12] |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,4 |
XCHG EAX,EBX |
CDQ |
IDIV EBX |
MOV EAX,EDX |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP-12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JNE _1_260 |
JMP _1_259 |
_1_260: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP-12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,4 |
XCHG EAX,EBX |
SUB EAX,EBX |
POP EBX |
ADD EAX,EBX |
POP EBX |
MOV [EBX],EAX |
_1_259: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV ESP,EBP |
POP EBP |
RET |
_1_225 DB 40,0,42,0,41,0,40,0,116,114 |
DB 121,32,40,42,46,46,46,41,40,41 |
DB 0,41,0,91,0,110,101,101,100,32 |
DB 97,114,114,97,121,32,115,105,122,101 |
DB 0 |
|
_statemen: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,[_ch] |
MOV EBX,EAX |
XOR EAX,EAX |
CALL __eq |
OR EAX,EAX |
JNE _1_265 |
JMP _1_263 |
_1_265: |
MOV EAX,[_eof] |
OR EAX,EAX |
JNE _1_266 |
JMP _1_263 |
_1_266: |
MOV EAX,1 |
JMP _1_264 |
_1_263: |
XOR EAX,EAX |
_1_264: |
OR EAX,EAX |
JNE _1_267 |
JMP _1_262 |
_1_267: |
POP EBP |
RET |
_1_262: |
MOV EAX,_1_261+0 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_270 |
JMP _1_269 |
_1_270: |
MOV EAX,4 |
PUSH EAX |
MOV CL,1 |
CALL _declloc |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
JMP _1_271 |
_1_269: |
MOV EAX,_1_261+5 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_273 |
JMP _1_272 |
_1_273: |
MOV EAX,16 |
PUSH EAX |
MOV CL,1 |
CALL _declloc |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
JMP _1_274 |
_1_272: |
MOV EAX,_1_261+9 |
PUSH EAX |
MOV EAX,8 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_276 |
JMP _1_275 |
_1_276: |
MOV EAX,_1_261+18 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_278 |
JMP _1_277 |
_1_278: |
MOV EAX,5 |
PUSH EAX |
MOV CL,1 |
CALL _declloc |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
JMP _1_279 |
_1_277: |
MOV EAX,_1_261+23 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
MOV EAX,17 |
PUSH EAX |
MOV CL,1 |
CALL _declloc |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
_1_279: |
JMP _1_280 |
_1_275: |
MOV EAX,[_declared] |
OR EAX,EAX |
JGE _1_282 |
JMP _1_281 |
_1_282: |
MOV EAX,[_ncmp] |
MOV EBX,EAX |
MOV EAX,1 |
CALL __gt |
OR EAX,EAX |
JNE _1_284 |
JMP _1_283 |
_1_284: |
MOV EAX,[_declared] |
MOV DWORD [_nogo],EAX |
_1_283: |
MOV EAX,2 |
PUSH EAX |
MOV EAX,[_csp] |
PUSH EAX |
MOV EAX,[_declared] |
POP EBX |
XCHG EAX,EBX |
SUB EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,-1 |
MOV DWORD [_declared],EAX |
_1_281: |
MOV EAX,_1_261+27 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_286 |
JMP _1_285 |
_1_286: |
XOR CL,CL |
CALL _compound |
JMP _1_287 |
_1_285: |
MOV EAX,_1_261+29 |
PUSH EAX |
MOV EAX,2 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_289 |
JMP _1_288 |
_1_289: |
XOR CL,CL |
CALL _doif |
MOV EAX,1 |
MOV DWORD [_lastst],EAX |
JMP _1_290 |
_1_288: |
MOV EAX,_1_261+32 |
PUSH EAX |
MOV EAX,5 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_292 |
JMP _1_291 |
_1_292: |
XOR CL,CL |
CALL _dowhile |
MOV EAX,2 |
MOV DWORD [_lastst],EAX |
JMP _1_293 |
_1_291: |
MOV EAX,_1_261+38 |
PUSH EAX |
MOV EAX,2 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_295 |
JMP _1_294 |
_1_295: |
XOR CL,CL |
CALL _dodo |
MOV EAX,8 |
MOV DWORD [_lastst],EAX |
JMP _1_296 |
_1_294: |
MOV EAX,_1_261+41 |
PUSH EAX |
MOV EAX,3 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_298 |
JMP _1_297 |
_1_298: |
XOR CL,CL |
CALL _dofor |
MOV EAX,9 |
MOV DWORD [_lastst],EAX |
JMP _1_299 |
_1_297: |
MOV EAX,_1_261+45 |
PUSH EAX |
MOV EAX,6 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_301 |
JMP _1_300 |
_1_301: |
XOR CL,CL |
CALL _doswitch |
MOV EAX,10 |
MOV DWORD [_lastst],EAX |
JMP _1_302 |
_1_300: |
MOV EAX,_1_261+52 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_304 |
JMP _1_303 |
_1_304: |
XOR CL,CL |
CALL _docase |
MOV EAX,11 |
MOV DWORD [_lastst],EAX |
JMP _1_305 |
_1_303: |
MOV EAX,_1_261+57 |
PUSH EAX |
MOV EAX,7 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_307 |
JMP _1_306 |
_1_307: |
XOR CL,CL |
CALL _dodefaul |
MOV EAX,12 |
MOV DWORD [_lastst],EAX |
JMP _1_308 |
_1_306: |
MOV EAX,_1_261+65 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_310 |
JMP _1_309 |
_1_310: |
XOR CL,CL |
CALL _dogoto |
MOV EAX,13 |
MOV DWORD [_lastst],EAX |
JMP _1_311 |
_1_309: |
XOR CL,CL |
CALL _dolabel |
OR EAX,EAX |
JNE _1_313 |
JMP _1_312 |
_1_313: |
MOV EAX,14 |
MOV DWORD [_lastst],EAX |
JMP _1_314 |
_1_312: |
MOV EAX,_1_261+70 |
PUSH EAX |
MOV EAX,6 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_316 |
JMP _1_315 |
_1_316: |
XOR CL,CL |
CALL _doreturn |
XOR CL,CL |
CALL _ns |
MOV EAX,3 |
MOV DWORD [_lastst],EAX |
JMP _1_317 |
_1_315: |
MOV EAX,_1_261+77 |
PUSH EAX |
MOV EAX,5 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_319 |
JMP _1_318 |
_1_319: |
XOR CL,CL |
CALL _dobreak |
XOR CL,CL |
CALL _ns |
MOV EAX,4 |
MOV DWORD [_lastst],EAX |
JMP _1_320 |
_1_318: |
MOV EAX,_1_261+83 |
PUSH EAX |
MOV EAX,8 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JNE _1_322 |
JMP _1_321 |
_1_322: |
XOR CL,CL |
CALL _docont |
XOR CL,CL |
CALL _ns |
MOV EAX,5 |
MOV DWORD [_lastst],EAX |
JMP _1_323 |
_1_321: |
MOV EAX,_1_261+92 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_325 |
JMP _1_324 |
_1_325: |
XOR EAX,EAX |
MOV DWORD [_errflag],EAX |
JMP _1_326 |
_1_324: |
MOV EAX,_1_261+94 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_328 |
JMP _1_327 |
_1_328: |
XOR CL,CL |
CALL _doasm |
MOV EAX,6 |
MOV DWORD [_lastst],EAX |
JMP _1_329 |
_1_327: |
XOR EAX,EAX |
PUSH EAX |
MOV CL,1 |
CALL _doexpr |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
MOV EAX,7 |
MOV DWORD [_lastst],EAX |
_1_329: |
_1_326: |
_1_323: |
_1_320: |
_1_317: |
_1_314: |
_1_311: |
_1_308: |
_1_305: |
_1_302: |
_1_299: |
_1_296: |
_1_293: |
_1_290: |
_1_287: |
_1_280: |
_1_274: |
_1_271: |
_1_268: |
MOV EAX,[_lastst] |
POP EBP |
RET |
_1_261 DB 99,104,97,114,0,105,110,116,0,117 |
DB 110,115,105,103,110,101,100,0,99,104 |
DB 97,114,0,105,110,116,0,123,0,105 |
DB 102,0,119,104,105,108,101,0,100,111 |
DB 0,102,111,114,0,115,119,105,116,99 |
DB 104,0,99,97,115,101,0,100,101,102 |
DB 97,117,108,116,0,103,111,116,111,0 |
DB 114,101,116,117,114,110,0,98,114,101 |
DB 97,107,0,99,111,110,116,105,110,117 |
DB 101,0,59,0,35,97,115,109,0 |
|
_declloc: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-8 |
MOV EAX,[_swactive] |
OR EAX,EAX |
JNE _1_332 |
JMP _1_331 |
_1_332: |
MOV EAX,_1_330+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_331: |
MOV EAX,[_noloc] |
OR EAX,EAX |
JNE _1_334 |
JMP _1_333 |
_1_334: |
MOV EAX,_1_330+22 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_333: |
MOV EAX,[_declared] |
OR EAX,EAX |
JL _1_336 |
JMP _1_335 |
_1_336: |
MOV EAX,_1_330+44 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_335: |
_1_337: |
XOR CL,CL |
CALL _endst |
OR EAX,EAX |
JNE _1_340 |
JMP _1_339 |
_1_340: |
MOV ESP,EBP |
POP EBP |
RET |
_1_339: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,2 |
PUSH EAX |
LEA EAX,[EBP-4] |
PUSH EAX |
LEA EAX,[EBP-8] |
PUSH EAX |
MOV CL,4 |
CALL _decl |
ADD ESP,16 |
MOV EAX,[_declared] |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
MOV DWORD [_declared],EAX |
MOV EAX,_ssname |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,[_csp] |
PUSH EAX |
MOV EAX,[_declared] |
POP EBX |
XCHG EAX,EBX |
SUB EAX,EBX |
PUSH EAX |
MOV EAX,_locptr |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,7 |
CALL _addsym |
ADD ESP,28 |
MOV EAX,_1_330+72 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_342 |
JMP _1_341 |
_1_342: |
MOV ESP,EBP |
POP EBP |
RET |
_1_341: |
JMP _1_337 |
_1_338: |
MOV ESP,EBP |
POP EBP |
RET |
_1_330 DB 110,111,116,32,97,108,108,111,119,101 |
DB 100,32,105,110,32,115,119,105,116,99 |
DB 104,0,110,111,116,32,97,108,108,111 |
DB 119,101,100,32,119,105,116,104,32,103 |
DB 111,116,111,0,109,117,115,116,32,100 |
DB 101,99,108,97,114,101,32,102,105,114 |
DB 115,116,32,105,110,32,98,108,111,99 |
DB 107,0,44,0 |
|
_compound: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-8 |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,[_csp] |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP-8] |
PUSH EAX |
MOV EAX,[_locptr] |
POP EBX |
MOV [EBX],EAX |
XOR EAX,EAX |
MOV DWORD [_declared],EAX |
MOV EAX,[_ncmp] |
INC EAX |
MOV DWORD [_ncmp],EAX |
_1_344: |
MOV EAX,_1_343+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_346 |
JMP _1_345 |
_1_346: |
MOV EAX,[_eof] |
OR EAX,EAX |
JNE _1_348 |
JMP _1_347 |
_1_348: |
MOV EAX,_1_343+2 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
JMP _1_345 |
JMP _1_349 |
_1_347: |
XOR CL,CL |
CALL _statemen |
_1_349: |
JMP _1_344 |
_1_345: |
MOV EAX,[_ncmp] |
DEC EAX |
MOV DWORD [_ncmp],EAX |
OR EAX,EAX |
JNE _1_353 |
JMP _1_351 |
_1_353: |
MOV EAX,[_lastst] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __ne |
OR EAX,EAX |
JNE _1_354 |
JMP _1_351 |
_1_354: |
MOV EAX,[_lastst] |
MOV EBX,EAX |
MOV EAX,13 |
CALL __ne |
OR EAX,EAX |
JNE _1_355 |
JMP _1_351 |
_1_355: |
MOV EAX,1 |
JMP _1_352 |
_1_351: |
XOR EAX,EAX |
_1_352: |
OR EAX,EAX |
JNE _1_356 |
JMP _1_350 |
_1_356: |
MOV EAX,2 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
_1_350: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_cptr],EAX |
_1_357: |
MOV EAX,[_cptr] |
PUSH EAX |
MOV EAX,[_locptr] |
POP EBX |
CALL __ult |
OR EAX,EAX |
JNE _1_359 |
JMP _1_358 |
_1_359: |
MOV EAX,[_cptr] |
PUSH EAX |
MOV CL,1 |
CALL _nextsym |
ADD ESP,4 |
MOV DWORD [_cptr2],EAX |
MOV EAX,[_cptr] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
OR EAX,EAX |
JE _1_361 |
JMP _1_360 |
_1_361: |
_1_362: |
MOV EAX,[_cptr] |
PUSH EAX |
MOV EAX,[_cptr2] |
POP EBX |
CALL __ult |
OR EAX,EAX |
JNE _1_364 |
JMP _1_363 |
_1_364: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
MOV [EBX],EAX |
DEC EAX |
PUSH EAX |
MOV EAX,[_cptr] |
INC EAX |
MOV DWORD [_cptr],EAX |
DEC EAX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
POP EBX |
MOV [EBX],AL |
JMP _1_362 |
_1_363: |
JMP _1_365 |
_1_360: |
MOV EAX,[_cptr2] |
MOV DWORD [_cptr],EAX |
_1_365: |
JMP _1_357 |
_1_358: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_locptr],EAX |
MOV EAX,-1 |
MOV DWORD [_declared],EAX |
MOV ESP,EBP |
POP EBP |
RET |
_1_343 DB 125,0,110,111,32,102,105,110,97,108 |
DB 32,125,0 |
|
_doif: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-8 |
LEA EAX,[EBP-4] |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
POP EBX |
MOV [EBX],EAX |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _test |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,_1_366+0 |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _amatch |
ADD ESP,8 |
OR EAX,EAX |
JE _1_368 |
JMP _1_367 |
_1_368: |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV ESP,EBP |
POP EBP |
RET |
_1_367: |
LEA EAX,[EBP-8] |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
POP EBX |
MOV [EBX],EAX |
MOV EAX,[_lastst] |
MOV EBX,EAX |
MOV EAX,3 |
CALL __ne |
OR EAX,EAX |
JNE _1_372 |
JMP _1_370 |
_1_372: |
MOV EAX,[_lastst] |
MOV EBX,EAX |
MOV EAX,13 |
CALL __ne |
OR EAX,EAX |
JNE _1_373 |
JMP _1_370 |
_1_373: |
MOV EAX,1 |
JMP _1_371 |
_1_370: |
XOR EAX,EAX |
_1_371: |
OR EAX,EAX |
JNE _1_374 |
JMP _1_369 |
_1_374: |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
_1_369: |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV ESP,EBP |
POP EBP |
RET |
_1_366 DB 101,108,115,101,0 |
|
_dowhile: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-16 |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV CL,1 |
CALL _addwhile |
ADD ESP,4 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _test |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _delwhile |
MOV ESP,EBP |
POP EBP |
RET |
|
_dodo: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-16 |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV CL,1 |
CALL _addwhile |
ADD ESP,4 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,_1_376+0 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,2 |
CALL _test |
ADD ESP,8 |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _delwhile |
XOR CL,CL |
CALL _ns |
MOV ESP,EBP |
POP EBP |
RET |
_1_376 DB 119,104,105,108,101,0 |
|
_dofor: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-24 |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV CL,1 |
CALL _addwhile |
ADD ESP,4 |
LEA EAX,[EBP-20] |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP-24] |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
POP EBX |
MOV [EBX],EAX |
MOV EAX,_1_377+0 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
MOV EAX,_1_377+2 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_379 |
JMP _1_378 |
_1_379: |
XOR EAX,EAX |
PUSH EAX |
MOV CL,1 |
CALL _doexpr |
ADD ESP,4 |
XOR CL,CL |
CALL _ns |
_1_378: |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,_1_377+4 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_381 |
JMP _1_380 |
_1_381: |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,2 |
CALL _test |
ADD ESP,8 |
XOR CL,CL |
CALL _ns |
_1_380: |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,_1_377+6 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JE _1_383 |
JMP _1_382 |
_1_383: |
XOR EAX,EAX |
PUSH EAX |
MOV CL,1 |
CALL _doexpr |
ADD ESP,4 |
MOV EAX,_1_377+8 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
_1_382: |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _delwhile |
MOV ESP,EBP |
POP EBP |
RET |
_1_377 DB 40,0,59,0,59,0,41,0,41,0 |
|
_doswitch: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-36 |
LEA EAX,[EBP-24] |
PUSH EAX |
MOV EAX,[_swactive] |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP-28] |
PUSH EAX |
MOV EAX,[_swdefaul] |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP-32] |
PUSH EAX |
LEA EAX,[EBP-36] |
PUSH EAX |
MOV EAX,[_swnext] |
POP EBX |
MOV [EBX],EAX |
POP EBX |
MOV [EBX],EAX |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV CL,1 |
CALL _addwhile |
ADD ESP,4 |
MOV EAX,[_wqptr] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX,12 |
XCHG EAX,EBX |
SUB EAX,EBX |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
MOV EAX,_1_384+0 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
MOV EAX,1 |
PUSH EAX |
MOV CL,1 |
CALL _doexpr |
ADD ESP,4 |
MOV EAX,_1_384+2 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
XOR EAX,EAX |
MOV DWORD [_swdefaul],EAX |
MOV EAX,1 |
MOV DWORD [_swactive],EAX |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-20] |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
POP EBX |
MOV [EBX],EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _statemen |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,72 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
_1_385: |
LEA EAX,[EBP-36] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,[_swnext] |
POP EBX |
CALL __ult |
OR EAX,EAX |
JNE _1_387 |
JMP _1_386 |
_1_387: |
MOV EAX,56 |
PUSH EAX |
LEA EAX,[EBP-36] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
INC EAX |
INC EAX |
INC EAX |
MOV [EBX],EAX |
DEC EAX |
DEC EAX |
DEC EAX |
DEC EAX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,112 |
PUSH EAX |
LEA EAX,[EBP-36] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
INC EAX |
INC EAX |
INC EAX |
MOV [EBX],EAX |
DEC EAX |
DEC EAX |
DEC EAX |
DEC EAX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
JMP _1_385 |
_1_386: |
MOV EAX,112 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,[_swdefaul] |
OR EAX,EAX |
JNE _1_389 |
JMP _1_388 |
_1_389: |
MOV EAX,40 |
PUSH EAX |
MOV EAX,[_swdefaul] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
_1_388: |
MOV EAX,41 |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
XOR CL,CL |
CALL _delwhile |
LEA EAX,[EBP-32] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_swnext],EAX |
LEA EAX,[EBP-28] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_swdefaul],EAX |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_swactive],EAX |
MOV ESP,EBP |
POP EBP |
RET |
_1_384 DB 40,0,41,0 |
|
_docase: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,[_swactive] |
OR EAX,EAX |
JE _1_392 |
JMP _1_391 |
_1_392: |
MOV EAX,_1_390+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_391: |
MOV EAX,[_swnext] |
PUSH EAX |
MOV EAX,[_swend] |
POP EBX |
CALL __ugt |
OR EAX,EAX |
JNE _1_394 |
JMP _1_393 |
_1_394: |
MOV EAX,_1_390+14 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
POP EBP |
RET |
_1_393: |
MOV EAX,41 |
PUSH EAX |
MOV EAX,[_swnext] |
INC EAX |
INC EAX |
INC EAX |
INC EAX |
MOV DWORD [_swnext],EAX |
DEC EAX |
DEC EAX |
DEC EAX |
DEC EAX |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
POP EBX |
MOV [EBX],EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,[_swnext] |
INC EAX |
INC EAX |
INC EAX |
INC EAX |
MOV DWORD [_swnext],EAX |
DEC EAX |
DEC EAX |
DEC EAX |
DEC EAX |
PUSH EAX |
MOV CL,1 |
CALL _constexp |
ADD ESP,4 |
MOV EAX,_1_390+29 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
POP EBP |
RET |
_1_390 DB 110,111,116,32,105,110,32,115,119,105 |
DB 116,99,104,0,116,111,111,32,109,97 |
DB 110,121,32,99,97,115,101,115,0,58 |
DB 0 |
|
_dodefaul: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,[_swactive] |
OR EAX,EAX |
JNE _1_397 |
JMP _1_396 |
_1_397: |
MOV EAX,[_swdefaul] |
OR EAX,EAX |
JNE _1_399 |
JMP _1_398 |
_1_399: |
MOV EAX,_1_395+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_398: |
JMP _1_400 |
_1_396: |
MOV EAX,_1_395+18 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_400: |
MOV EAX,_1_395+32 |
PUSH EAX |
MOV CL,1 |
CALL _need |
ADD ESP,4 |
MOV EAX,41 |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
MOV DWORD [_swdefaul],EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
POP EBP |
RET |
_1_395 DB 109,117,108,116,105,112,108,101,32,100 |
DB 101,102,97,117,108,116,115,0,110,111 |
DB 116,32,105,110,32,115,119,105,116,99 |
DB 104,0,58,0 |
|
_dogoto: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,[_nogo] |
OR EAX,EAX |
JG _1_403 |
JMP _1_402 |
_1_403: |
MOV EAX,_1_401+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
JMP _1_404 |
_1_402: |
MOV EAX,1 |
MOV DWORD [_noloc],EAX |
_1_404: |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_406 |
JMP _1_405 |
_1_406: |
MOV EAX,40 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,1 |
CALL _addlabel |
ADD ESP,4 |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
JMP _1_407 |
_1_405: |
MOV EAX,_1_401+30 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
_1_407: |
XOR CL,CL |
CALL _ns |
POP EBP |
RET |
_1_401 DB 110,111,116,32,97,108,108,111,119,101 |
DB 100,32,119,105,116,104,32,98,108,111 |
DB 99,107,45,108,111,99,97,108,115,0 |
DB 98,97,100,32,108,97,98,101,108,0 |
|
_dolabel: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
XOR CL,CL |
CALL _blanks |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,[_lptr] |
POP EBX |
MOV [EBX],EAX |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _symname |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_410 |
JMP _1_409 |
_1_410: |
XOR CL,CL |
CALL _gch |
MOV EBX,EAX |
MOV EAX,58 |
CALL __eq |
OR EAX,EAX |
JNE _1_412 |
JMP _1_411 |
_1_412: |
MOV EAX,41 |
PUSH EAX |
MOV EAX,1 |
PUSH EAX |
MOV CL,1 |
CALL _addlabel |
ADD ESP,4 |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,1 |
MOV ESP,EBP |
POP EBP |
RET |
_1_411: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,[_lptr] |
POP EBX |
XCHG EAX,EBX |
SUB EAX,EBX |
PUSH EAX |
MOV CL,1 |
CALL _bump |
ADD ESP,4 |
_1_413: |
_1_409: |
XOR EAX,EAX |
MOV ESP,EBP |
POP EBP |
RET |
|
_addlabel: |
PUSH EBP |
MOV EBP,ESP |
MOV EAX,_ssname |
PUSH EAX |
MOV CL,1 |
CALL _findloc |
ADD ESP,4 |
MOV DWORD [_cptr],EAX |
OR EAX,EAX |
JNE _1_416 |
JMP _1_415 |
_1_416: |
MOV EAX,[_cptr] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
OR EAX,EAX |
JNE _1_418 |
JMP _1_417 |
_1_418: |
MOV EAX,_1_414+0 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
JMP _1_419 |
_1_417: |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JNE _1_421 |
JMP _1_420 |
_1_421: |
MOV EAX,[_cptr] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
OR EAX,EAX |
JNE _1_423 |
JMP _1_422 |
_1_423: |
MOV EAX,_1_414+12 |
PUSH EAX |
MOV CL,1 |
CALL _error |
ADD ESP,4 |
JMP _1_424 |
_1_422: |
MOV EAX,[_cptr] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],AL |
_1_424: |
_1_420: |
_1_419: |
JMP _1_425 |
_1_415: |
MOV EAX,_ssname |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
XOR CL,CL |
CALL _getlabel |
PUSH EAX |
MOV EAX,_locptr |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,7 |
CALL _addsym |
ADD ESP,28 |
MOV DWORD [_cptr],EAX |
_1_425: |
MOV EAX,[_cptr] |
MOV EBX,5 |
ADD EAX,EBX |
MOV EBX,2 |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,4 |
PUSH EAX |
MOV CL,2 |
CALL _getint |
ADD ESP,8 |
POP EBP |
RET |
_1_414 DB 110,111,116,32,97,32,108,97,98,101 |
DB 108,0,100,117,112,108,105,99,97,116 |
DB 101,32,108,97,98,101,108,0 |
|
_doreturn: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
XOR CL,CL |
CALL _endst |
OR EAX,EAX |
JE _1_428 |
JMP _1_427 |
_1_428: |
MOV EAX,1 |
PUSH EAX |
MOV CL,1 |
CALL _doexpr |
ADD ESP,4 |
_1_427: |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,[_csp] |
POP EBX |
MOV [EBX],EAX |
MOV EAX,67 |
PUSH EAX |
XOR EAX,EAX |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_csp],EAX |
MOV ESP,EBP |
POP EBP |
RET |
|
_dobreak: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,[_wqptr] |
PUSH EAX |
MOV CL,1 |
CALL _readwhil |
ADD ESP,4 |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JE _1_431 |
JMP _1_430 |
_1_431: |
MOV ESP,EBP |
POP EBP |
RET |
_1_430: |
MOV EAX,2 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,8 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV ESP,EBP |
POP EBP |
RET |
|
_docont: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-4 |
LEA EAX,[EBP-4] |
PUSH EAX |
MOV EAX,[_wqptr] |
POP EBX |
MOV [EBX],EAX |
_1_433: |
LEA EAX,[EBP-4] |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _readwhil |
ADD ESP,4 |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JE _1_436 |
JMP _1_435 |
_1_436: |
MOV ESP,EBP |
POP EBP |
RET |
_1_435: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
OR EAX,EAX |
JNE _1_438 |
JMP _1_437 |
_1_438: |
JMP _1_434 |
_1_437: |
JMP _1_433 |
_1_434: |
MOV EAX,2 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV EAX,40 |
PUSH EAX |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,4 |
ADD EAX,EBX |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _gen |
ADD ESP,8 |
MOV ESP,EBP |
POP EBP |
RET |
|
_doasm: |
PUSH EBP |
MOV EBP,ESP |
XOR EAX,EAX |
MOV DWORD [_ccode],EAX |
_1_440: |
XOR CL,CL |
CALL _inline |
MOV EAX,_1_439+0 |
PUSH EAX |
MOV CL,1 |
CALL _match |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_443 |
JMP _1_442 |
_1_443: |
JMP _1_441 |
_1_442: |
MOV EAX,[_eof] |
OR EAX,EAX |
JNE _1_445 |
JMP _1_444 |
_1_445: |
JMP _1_441 |
_1_444: |
MOV EAX,[_line] |
PUSH EAX |
MOV EAX,[_output] |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
JMP _1_440 |
_1_441: |
XOR CL,CL |
CALL _kill |
MOV EAX,1 |
MOV DWORD [_ccode],EAX |
POP EBP |
RET |
_1_439 DB 35,101,110,100,97,115,109,0 |
|
_doexpr: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-16 |
LEA EAX,[EBP+8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV DWORD [_usexpr],EAX |
_1_447: |
LEA EAX,[EBP-12] |
PUSH EAX |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV CL,2 |
CALL _setstage |
ADD ESP,8 |
LEA EAX,[EBP-4] |
PUSH EAX |
LEA EAX,[EBP-8] |
PUSH EAX |
MOV CL,2 |
CALL _expressi |
ADD ESP,8 |
LEA EAX,[EBP-12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
LEA EAX,[EBP-16] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV CL,2 |
CALL _clearsta |
ADD ESP,8 |
MOV EAX,[_ch] |
MOV EBX,EAX |
MOV EAX,44 |
CALL __ne |
OR EAX,EAX |
JNE _1_450 |
JMP _1_449 |
_1_450: |
JMP _1_448 |
_1_449: |
MOV EAX,1 |
PUSH EAX |
MOV CL,1 |
CALL _bump |
ADD ESP,4 |
JMP _1_447 |
_1_448: |
MOV EAX,1 |
MOV DWORD [_usexpr],EAX |
MOV ESP,EBP |
POP EBP |
RET |
|
_ask: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-8 |
LEA EAX,[EBP-4] |
PUSH EAX |
XOR EAX,EAX |
MOV DWORD [_nxtlab],EAX |
MOV DWORD [_listfp],EAX |
POP EBX |
MOV [EBX],EAX |
MOV EAX,__iob |
MOV EBX,32 |
ADD EAX,EBX |
MOV DWORD [_output],EAX |
XOR EAX,EAX |
MOV BYTE [_optimize],AL |
XOR EAX,EAX |
MOV BYTE [_pause],AL |
MOV BYTE [_monitor],AL |
MOV BYTE [_alarm],AL |
MOV EAX,[_mline] |
MOV DWORD [_line],EAX |
_1_452: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
MOV [EBX],EAX |
PUSH EAX |
MOV EAX,[_line] |
PUSH EAX |
MOV EAX,128 |
PUSH EAX |
MOV EAX,[_argcs] |
PUSH EAX |
MOV EAX,[_argvs] |
PUSH EAX |
MOV CL,5 |
CALL _getarg |
ADD ESP,20 |
MOV EBX,EAX |
MOV EAX,-1 |
CALL __ne |
OR EAX,EAX |
JNE _1_454 |
JMP _1_453 |
_1_454: |
MOV EAX,[_line] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,45 |
CALL __ne |
OR EAX,EAX |
JNE _1_458 |
JMP _1_456 |
_1_458: |
MOV EAX,[_line] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,47 |
CALL __ne |
OR EAX,EAX |
JNE _1_459 |
JMP _1_456 |
_1_459: |
MOV EAX,1 |
JMP _1_457 |
_1_456: |
XOR EAX,EAX |
_1_457: |
OR EAX,EAX |
JNE _1_460 |
JMP _1_455 |
_1_460: |
JMP _1_452 |
_1_455: |
MOV EAX,[_line] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,76 |
CALL __eq |
OR EAX,EAX |
JNE _1_464 |
JMP _1_462 |
_1_464: |
MOV EAX,[_line] |
MOV EBX,2 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _isdigit |
ADD ESP,4 |
OR EAX,EAX |
JNE _1_465 |
JMP _1_462 |
_1_465: |
MOV EAX,[_line] |
MOV EBX,3 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,32 |
CALL __le |
OR EAX,EAX |
JNE _1_466 |
JMP _1_462 |
_1_466: |
MOV EAX,1 |
JMP _1_463 |
_1_462: |
XOR EAX,EAX |
_1_463: |
OR EAX,EAX |
JNE _1_467 |
JMP _1_461 |
_1_467: |
MOV EAX,[_line] |
MOV EBX,2 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,48 |
XCHG EAX,EBX |
SUB EAX,EBX |
MOV DWORD [_listfp],EAX |
JMP _1_452 |
_1_461: |
MOV EAX,[_line] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,78 |
CALL __eq |
OR EAX,EAX |
JNE _1_471 |
JMP _1_469 |
_1_471: |
MOV EAX,[_line] |
MOV EBX,2 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,79 |
CALL __eq |
OR EAX,EAX |
JNE _1_472 |
JMP _1_469 |
_1_472: |
MOV EAX,[_line] |
MOV EBX,3 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,32 |
CALL __le |
OR EAX,EAX |
JNE _1_473 |
JMP _1_469 |
_1_473: |
MOV EAX,1 |
JMP _1_470 |
_1_469: |
XOR EAX,EAX |
_1_470: |
OR EAX,EAX |
JNE _1_474 |
JMP _1_468 |
_1_474: |
XOR EAX,EAX |
MOV BYTE [_optimize],AL |
JMP _1_452 |
_1_468: |
MOV EAX,[_line] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,68 |
CALL __eq |
OR EAX,EAX |
JNE _1_476 |
JMP _1_475 |
_1_476: |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
MOV EAX,[_line] |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,2 |
ADD EAX,EBX |
POP EBX |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV DWORD [_ch],EAX |
MOV EAX,[_line] |
PUSH EAX |
LEA EAX,[EBP-8] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
MOV EBX,2 |
ADD EAX,EBX |
MOV DWORD [_lptr],EAX |
XOR CL,CL |
CALL _dodefine |
JMP _1_452 |
_1_475: |
MOV EAX,[_line] |
MOV EBX,2 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,32 |
CALL __le |
OR EAX,EAX |
JNE _1_478 |
JMP _1_477 |
_1_478: |
MOV EAX,[_line] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,65 |
CALL __eq |
OR EAX,EAX |
JNE _1_480 |
JMP _1_479 |
_1_480: |
MOV EAX,1 |
MOV BYTE [_alarm],AL |
JMP _1_452 |
_1_479: |
MOV EAX,[_line] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,77 |
CALL __eq |
OR EAX,EAX |
JNE _1_482 |
JMP _1_481 |
_1_482: |
MOV EAX,1 |
MOV BYTE [_monitor],AL |
JMP _1_452 |
_1_481: |
MOV EAX,[_line] |
MOV EBX,1 |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
PUSH EAX |
MOV CL,1 |
CALL _toupper |
ADD ESP,4 |
MOV EBX,EAX |
MOV EAX,80 |
CALL __eq |
OR EAX,EAX |
JNE _1_484 |
JMP _1_483 |
_1_484: |
MOV EAX,1 |
MOV BYTE [_pause],AL |
JMP _1_452 |
_1_483: |
_1_477: |
MOV EAX,_1_451+0 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_451+57 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_451+74 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_451+89 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_451+104 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_451+118 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,_1_451+139 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
MOV EAX,7 |
PUSH EAX |
MOV CL,1 |
CALL _OS_exit |
ADD ESP,4 |
JMP _1_452 |
_1_453: |
MOV ESP,EBP |
POP EBP |
RET |
_1_451 DB 117,115,97,103,101,58,32,99,99,32 |
DB 91,102,105,108,101,93,46,46,46,32 |
DB 91,45,109,93,32,91,45,97,93,32 |
DB 91,45,112,93,32,91,45,108,35,93 |
DB 32,91,45,110,111,93,32,91,45,100 |
DB 60,105,100,62,93,10,0,32,45,109 |
DB 32,32,32,32,32,109,111,110,105,116 |
DB 111,114,10,0,32,45,97,32,32,32 |
DB 32,32,97,108,97,114,109,10,0,32 |
DB 45,112,32,32,32,32,32,112,97,117 |
DB 115,101,10,0,32,45,108,35,32,32 |
DB 32,32,108,105,115,116,10,0,32,45 |
DB 110,111,32,32,32,32,110,111,32,111 |
DB 112,116,105,109,105,122,101,10,0,32 |
DB 45,100,60,105,100,62,32,112,114,101 |
DB 45,35,100,101,102,105,110,101,32,105 |
DB 100,10,0 |
|
_openfile: |
PUSH EBP |
MOV EBP,ESP |
ADD ESP,-28 |
MOV EAX,-1 |
MOV DWORD [_input],EAX |
_1_486: |
MOV EAX,[_filearg] |
INC EAX |
MOV DWORD [_filearg],EAX |
PUSH EAX |
MOV EAX,[_pline] |
PUSH EAX |
MOV EAX,128 |
PUSH EAX |
MOV EAX,[_argcs] |
PUSH EAX |
MOV EAX,[_argvs] |
PUSH EAX |
MOV CL,5 |
CALL _getarg |
ADD ESP,20 |
MOV EBX,EAX |
MOV EAX,-1 |
CALL __ne |
OR EAX,EAX |
JNE _1_488 |
JMP _1_487 |
_1_488: |
MOV EAX,[_pline] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,45 |
CALL __eq |
OR EAX,EAX |
JE _1_492 |
JMP _1_490 |
_1_492: |
MOV EAX,[_pline] |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,47 |
CALL __eq |
OR EAX,EAX |
JE _1_493 |
JMP _1_490 |
_1_493: |
XOR EAX,EAX |
JMP _1_491 |
_1_490: |
MOV EAX,1 |
_1_491: |
OR EAX,EAX |
JNE _1_494 |
JMP _1_489 |
_1_494: |
JMP _1_486 |
_1_489: |
LEA EAX,[EBP-28] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX,-1 |
MOV [EBX],EAX |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
XOR EAX,EAX |
MOV [EBX],EAX |
_1_495: |
MOV EAX,[_pline] |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
MOV [EBX],EAX |
POP EBX |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
OR EAX,EAX |
JNE _1_497 |
JMP _1_496 |
_1_497: |
MOV EAX,[_pline] |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
MOV EBX,EAX |
MOV EAX,46 |
CALL __eq |
OR EAX,EAX |
JNE _1_499 |
JMP _1_498 |
_1_499: |
LEA EAX,[EBP-28] |
MOV EBX,EAX |
MOV EAX,1 |
MOV [EBX],EAX |
JMP _1_496 |
_1_498: |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV EBX,EAX |
MOV EAX,10 |
CALL __lt |
OR EAX,EAX |
JNE _1_501 |
JMP _1_500 |
_1_501: |
LEA EAX,[EBP-16] |
PUSH EAX |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
MOV EAX, [EBX] |
INC EAX |
MOV [EBX],EAX |
DEC EAX |
POP EBX |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,[_pline] |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
MOV EBX,EAX |
MOVSX EAX,BYTE [EBX] |
POP EBX |
MOV [EBX],AL |
_1_500: |
JMP _1_495 |
_1_496: |
LEA EAX,[EBP-28] |
MOV EBX,EAX |
MOV EAX, [EBX] |
CALL __lneg |
OR EAX,EAX |
JNE _1_503 |
JMP _1_502 |
_1_503: |
MOV EAX,[_pline] |
PUSH EAX |
LEA EAX,[EBP-20] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,_1_485+0 |
PUSH EAX |
MOV CL,2 |
CALL _strcpy |
ADD ESP,8 |
_1_502: |
MOV EAX,[_pline] |
PUSH EAX |
MOV EAX,_1_485+3 |
PUSH EAX |
MOV CL,2 |
CALL _mustopen |
ADD ESP,8 |
MOV DWORD [_input],EAX |
MOV EAX,[_files] |
CALL __lneg |
OR EAX,EAX |
JNE _1_505 |
JMP _1_504 |
_1_505: |
LEA EAX,[EBP-16] |
PUSH EAX |
LEA EAX,[EBP-24] |
MOV EBX,EAX |
MOV EAX, [EBX] |
POP EBX |
ADD EAX,EBX |
PUSH EAX |
MOV EAX,_1_485+5 |
PUSH EAX |
MOV CL,2 |
CALL _strcpy |
ADD ESP,8 |
LEA EAX,[EBP-16] |
PUSH EAX |
MOV EAX,_1_485+10 |
PUSH EAX |
MOV CL,2 |
CALL _mustopen |
ADD ESP,8 |
MOV DWORD [_output],EAX |
_1_504: |
MOV EAX,1 |
MOV DWORD [_files],EAX |
XOR CL,CL |
CALL _kill |
MOV ESP,EBP |
POP EBP |
RET |
JMP _1_486 |
_1_487: |
MOV EAX,[_files] |
INC EAX |
MOV DWORD [_files],EAX |
DEC EAX |
OR EAX,EAX |
JNE _1_507 |
JMP _1_506 |
_1_507: |
MOV EAX,1 |
MOV DWORD [_eof],EAX |
JMP _1_508 |
_1_506: |
MOV EAX,__iob |
MOV DWORD [_input],EAX |
_1_508: |
XOR CL,CL |
CALL _kill |
MOV ESP,EBP |
POP EBP |
RET |
_1_485 DB 46,67,0,114,0,46,65,83,77,0 |
DB 119,0 |
|
_mustopen: |
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] |
PUSH EAX |
MOV CL,2 |
CALL _OS_fopen |
ADD ESP,8 |
POP EBX |
MOV [EBX],EAX |
OR EAX,EAX |
JNE _1_511 |
JMP _1_510 |
_1_511: |
LEA EAX,[EBP-4] |
MOV EBX,EAX |
MOV EAX, [EBX] |
MOV ESP,EBP |
POP EBP |
RET |
_1_510: |
MOV EAX,_1_509+0 |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _fputs |
ADD ESP,8 |
LEA EAX,[EBP+12] |
MOV EBX,EAX |
MOV EAX, [EBX] |
PUSH EAX |
MOV EAX,__iob |
MOV EBX,64 |
ADD EAX,EBX |
PUSH EAX |
MOV CL,2 |
CALL _lout |
ADD ESP,8 |
MOV EAX,7 |
PUSH EAX |
MOV CL,1 |
CALL _OS_exit |
ADD ESP,4 |
MOV ESP,EBP |
POP EBP |
RET |
_1_509 DB 111,112,101,110,32,101,114,114,111,114 |
DB 32,111,110,32,0 |