{"name": "gen_intermediate_code_pc", "code": "unsigned __int64 __fastcall gen_intermediate_code_pc ( __int64 @@a1@@ , __int64 @@a2@@ ) { unsigned __int64 @@v3@@ ; @@v3@@ = __readfsqword ( Number ) ; gen_intermediate_code_internal ( @@a1@@ , @@a2@@ , Number ) ; return __readfsqword ( Number ) ^ @@v3@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v3", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}
{"name": "gen_intermediate_code_internal", "code": "unsigned __int64 __fastcall gen_intermediate_code_internal ( __int64 @@a1@@ , __int64 @@a2@@ , int @@a3@@ ) { _BOOL4 v3 ; int v4 ; int v5 ; const char * v6 ; int v9 ; int j ; int @@v11@@ ; int @@v12@@ ; unsigned int @@v13@@ ; int v14 ; int v15 ; __int64 @@v16@@ ; __int64 @@i@@ ; __int64 @@v18@@ ; __int64 @@v19@@ ; unsigned __int64 @@v20@@ ; char @@v21@@ [ Number ] ; int @@v22@@ ; __int64 @@v23@@ ; int @@v24@@ ; int @@v25@@ ; int @@v26@@ ; int @@v27@@ ; int @@v28@@ ; int @@v29@@ ; int @@v30@@ ; int @@v31@@ ; int @@v32@@ ; int @@v33@@ ; int @@v34@@ ; int @@v35@@ ; int @@v36@@ ; _BOOL4 @@v37@@ ; int @@v38@@ ; unsigned __int64 @@v39@@ ; __int64 @@v40@@ ; int @@v41@@ ; int @@v42@@ ; int @@v43@@ ; int @@v44@@ ; int @@v45@@ ; unsigned __int64 @@v46@@ ; @@v46@@ = __readfsqword ( Number ) ; @@v18@@ = * ( _QWORD * ) @@a2@@ ; @@v19@@ = * ( _QWORD * ) ( @@a2@@ + Number ) ; @@v20@@ = * ( _QWORD * ) ( @@a2@@ + Number ) ; @@v24@@ = ( @@v20@@ >> Number ) & Number ; @@v25@@ = ( @@v20@@ >> Number ) & Number ; @@v28@@ = ( @@v20@@ >> Number ) & Number ; @@v30@@ = ( @@v20@@ >> Number ) & Number ; @@v31@@ = Number ; @@v32@@ = ( @@v20@@ >> Number ) & Number ; @@v33@@ = @@v20@@ & Number ; @@v34@@ = ( @@v20@@ >> Number ) & Number ; @@v35@@ = ( @@v20@@ >> Number ) & Number ; @@v36@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v29@@ = Number ; @@v23@@ = @@v19@@ ; @@v40@@ = @@a2@@ ; @@v41@@ = Number ; @@v38@@ = Number ; if ( ( @@v20@@ & Number ) != Number ) { if ( @@v33@@ == Number ) @@v38@@ = Number ; else @@v38@@ = Number ; } @@v42@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v43@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v44@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v45@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v26@@ = ( @@v20@@ >> Number ) & Number ; @@v27@@ = ( @@v20@@ >> Number ) & Number ; @@v39@@ = @@v20@@ ; v3 = ! @@v35@@ && ! * ( _DWORD * ) ( @@a1@@ + Number ) && ( @@v20@@ & Number ) == Number && ( @@v20@@ & Number ) == Number ; @@v37@@ = v3 ; cpu_T [ Number ] = tcg_temp_new_i64 ( ) ; dword_2E2A4 = tcg_temp_new_i64 ( ) ; cpu_A0 = tcg_temp_new_i64 ( ) ; cpu_T3 = tcg_temp_new_i64 ( ) ; cpu_tmp0 = tcg_temp_new_i64 ( ) ; cpu_tmp1_i64 = tcg_temp_new_i64 ( ) ; cpu_tmp2_i32 = tcg_temp_new_i32 ( ) ; cpu_tmp3_i32 = tcg_temp_new_i32 ( ) ; cpu_tmp4 = tcg_temp_new_i64 ( ) ; cpu_tmp5 = tcg_temp_new_i64 ( ) ; cpu_ptr0 = tcg_temp_new_i64 ( ) ; cpu_ptr1 = tcg_temp_new_i64 ( ) ; @@v22@@ = Number ; @@v16@@ = @@v18@@ ; v9 = Number ; @@v11@@ = Number ; @@v12@@ = * ( _WORD * ) ( @@a2@@ + Number ) & Number ; if ( ( * ( _WORD * ) ( @@a2@@ + Number ) & Number ) == Number ) @@v12@@ = Number ; gen_icount_start ( ) ; while ( Number ) { if ( * ( _QWORD * ) ( @@a1@@ + Number ) ) { for ( @@i@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; @@i@@ ; @@i@@ = * ( _QWORD * ) ( @@i@@ + Number ) ) { if ( @@v16@@ == * ( _QWORD * ) @@i@@ && ( ( * ( _DWORD * ) ( @@i@@ + Number ) & Number ) == Number || ( * ( _QWORD * ) ( @@a2@@ + Number ) & Number ) == Number ) ) { gen_debug ( ( __int64 ) @@v21@@ , @@v16@@ - @@v23@@ ) ; break ; } } } if ( @@a3@@ ) { v14 = ( __int64 ) ( gen_opc_ptr - ( _QWORD ) & gen_opc_buf ) >> Number ; if ( v9 < v14 ) { ++ v9 ; while ( v9 < v14 ) { v4 = v9 ++ ; * ( ( _BYTE * ) & gen_opc_instr_start + v4 ) = Number ; } } * ( ( _QWORD * ) & gen_opc_pc + v9 ) = @@v16@@ ; gen_opc_cc_op [ v9 ] = @@v29@@ ; * ( ( _BYTE * ) & gen_opc_instr_start + v9 ) = Number ; * ( ( _WORD * ) & gen_opc_icount + v9 ) = @@v11@@ ; } if ( @@v12@@ == @@v11@@ + Number && * ( __int16 * ) ( @@a2@@ + Number ) < Number ) gen_io_start ( ) ; @@v16@@ = disas_insn ( ( __int64 ) @@v21@@ , @@v16@@ ) ; ++ @@v11@@ ; if ( @@v22@@ ) break ; if ( @@v35@@ || @@v36@@ || ( @@v20@@ & Number ) != Number || ( unsigned __int64 ) & gen_opc_buf + Number <= gen_opc_ptr || ( unsigned __int64 ) ( @@v16@@ - @@v18@@ ) > Number || @@v11@@ >= @@v12@@ || singlestep ) { gen_jmp_im ( @@v16@@ - @@v23@@ ) ; gen_eob ( ( __int64 ) @@v21@@ ) ; break ; } } if ( * ( __int16 * ) ( @@a2@@ + Number ) < Number ) gen_io_end ( ) ; gen_icount_end ( @@a2@@ , @@v11@@ ) ; * gen_opc_ptr = Number ; if ( @@a3@@ ) { v15 = ( __int64 ) ( gen_opc_ptr - ( _QWORD ) & gen_opc_buf ) >> Number ; for ( j = v9 + Number ; j <= v15 ; ++ j ) { v5 = j ; * ( ( _BYTE * ) & gen_opc_instr_start + v5 ) = Number ; } } if ( ( loglevel & Number ) != Number ) { if ( logfile ) fwrite ( String , Number , Number , logfile ) ; if ( logfile ) { v6 = ( const char * ) lookup_symbol ( @@v18@@ ) ; fprintf ( logfile , String , v6 ) ; } if ( @@v27@@ ) @@v13@@ = Number ; else @@v13@@ = @@v25@@ == Number ; target_disas ( logfile , @@v18@@ , @@v16@@ - @@v18@@ , @@v13@@ ) ; if ( logfile ) fputc ( Number , logfile ) ; } if ( ! @@a3@@ ) { * ( _WORD * ) ( @@a2@@ + Number ) = @@v16@@ - @@v18@@ ; * ( _DWORD * ) ( @@a2@@ + Number ) = @@v11@@ ; } return __readfsqword ( Number ) ^ @@v46@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v27", "t": {"T": 1, "n": "int", "s": 4}, "location": "s108"}, {"n": "v26", "t": {"T": 1, "n": "int", "s": 4}, "location": "s112"}, {"n": "v25", "t": {"T": 1, "n": "int", "s": 4}, "location": "s116"}, {"n": "v45", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v24", "t": {"T": 1, "n": "int", "s": 4}, "location": "s120"}, {"n": "v23", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s128"}, {"n": "v22", "t": {"T": 1, "n": "int", "s": 4}, "location": "s136"}, {"n": "v44", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}, {"n": "v21", "t": {"T": 2, "n": 24, "s": 1, "t": "char"}, "location": "s160"}, {"n": "v20", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s176"}, {"n": "v19", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s184"}, {"n": "v18", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s192"}, {"n": "v43", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "i", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s208"}, {"n": "v16", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s216"}, {"n": "v13", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s224"}, {"n": "v12", "t": {"T": 1, "n": "int", "s": 4}, "location": "s228"}, {"n": "v11", "t": {"T": 1, "n": "int", "s": 4}, "location": "s232"}, {"n": "v42", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}, {"n": "v41", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "v40", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s40"}, {"n": "v39", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s48"}, {"n": "v38", "t": {"T": 1, "n": "int", "s": 4}, "location": "s56"}, {"n": "v37", "t": {"T": 1, "n": "_BOOL4", "s": 4}, "location": "s60"}, {"n": "v36", "t": {"T": 1, "n": "int", "s": 4}, "location": "s64"}, {"n": "v35", "t": {"T": 1, "n": "int", "s": 4}, "location": "s68"}, {"n": "v34", "t": {"T": 1, "n": "int", "s": 4}, "location": "s72"}, {"n": "v33", "t": {"T": 1, "n": "int", "s": 4}, "location": "s76"}, {"n": "v46", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}, {"n": "v32", "t": {"T": 1, "n": "int", "s": 4}, "location": "s80"}, {"n": "v31", "t": {"T": 1, "n": "int", "s": 4}, "location": "s84"}, {"n": "v30", "t": {"T": 1, "n": "int", "s": 4}, "location": "s88"}, {"n": "v29", "t": {"T": 1, "n": "int", "s": 4}, "location": "s92"}, {"n": "v28", "t": {"T": 1, "n": "int", "s": 4}, "location": "s96"}]} {"name": "gen_intermediate_code", "code": "unsigned __int64 __fastcall gen_intermediate_code ( __int64 @@a1@@ , __int64 @@a2@@ ) { unsigned __int64 @@v3@@ ; @@v3@@ = __readfsqword ( Number ) ; gen_intermediate_code_internal ( @@a1@@ , @@a2@@ , Number ) ; return __readfsqword ( Number ) ^ @@v3@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v3", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}