{"name": "zap", "code": "__int64 zap ( ) { __int64 @@result@@ ; __int64 @@v1@@ ; while ( Number ) { @@v1@@ = get_token ( Number L ) ; @@result@@ = * ( unsigned int * ) ( @@v1@@ + Number ) ; if ( ! ( _DWORD ) @@result@@ ) break ; @@result@@ = * ( unsigned int * ) ( @@v1@@ + Number ) ; if ( ( _DWORD ) @@result@@ == Number ) break ; skip_token ( Number L ) ; } return @@result@@ ; }", "source": [{"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]}
{"name": "gnu_get_instruction", "code": "__int64 gnu_get_instruction ( ) { __int64 v1 ; __int64 v2 ; __int64 v3 ; __int64 v4 ; unsigned int @@v5@@ ; __int64 @@v6@@ ; __int64 @@v7@@ ; __int64 @@v8@@ ; @@v8@@ = Number L ; while ( Number ) { @@v7@@ = get_token ( Number L ) ; if ( * ( _DWORD * ) ( @@v7@@ + Number ) != Number && * ( _DWORD * ) ( @@v7@@ + Number ) != Number ) break ; zap ( ) ; skip_token ( Number L ) ; } if ( ! * ( _DWORD * ) ( @@v7@@ + Number ) ) return Number L ; if ( * ( _DWORD * ) ( @@v7@@ + Number ) == Number ) { @@v7@@ = get_token ( Number L ) ; if ( * ( _DWORD * ) ( @@v7@@ + Number ) == Number && ( unsigned int ) isanumber ( * ( _QWORD * ) ( @@v7@@ + Number ) ) && * ( _DWORD * ) ( get_token ( Number L ) + Number ) == Number ) { v1 = get_token ( Number L ) ; v2 = strtol ( * ( const char * * ) ( v1 + Number ) , Number L , Number ) - Number ; v3 = get_token ( Number L ) ; set_file ( * ( _QWORD * ) ( v3 + Number ) , v2 ) ; zap ( ) ; } else { parse_err ( Number L , @@v7@@ , String ) ; zap ( ) ; } @@v8@@ = gnu_get_instruction ( ) ; } else if ( * ( _DWORD * ) ( @@v7@@ + Number ) == Number && * ( _DWORD * ) ( get_token ( Number L ) + Number ) == Number ) { @@v8@@ = new_asm86 ( ) ; * ( _QWORD * ) ( @@v8@@ + Number ) = * ( _QWORD * ) ( @@v7@@ + Number ) ; * ( _DWORD * ) @@v8@@ = Number ; * ( _DWORD * ) ( @@v8@@ + Number ) = Number ; @@v6@@ = new_expr ( ) ; * ( _QWORD * ) ( @@v8@@ + Number ) = @@v6@@ ; * ( _DWORD * ) @@v6@@ = Number ; * ( _QWORD * ) ( @@v6@@ + Number ) = copystr ( * ( _QWORD * ) ( @@v7@@ + Number ) ) ; skip_token ( Number L ) ; } else if ( * ( _DWORD * ) ( @@v7@@ + Number ) == Number && * ( _DWORD * ) ( get_token ( Number L ) + Number ) == Number ) { @@v5@@ = Number ; @@v6@@ = gnu_get_C_expression ( & @@v5@@ ) ; if ( @@v6@@ ) { if ( * ( _DWORD * ) ( get_token ( @@v5@@ ) + Number ) == Number ) { @@v8@@ = new_asm86 ( ) ; * ( _QWORD * ) ( @@v8@@ + Number ) = * ( _QWORD * ) ( @@v7@@ + Number ) ; * ( _DWORD * ) @@v8@@ = Number ; * ( _DWORD * ) ( @@v8@@ + Number ) = Number ; * ( _QWORD * ) ( @@v8@@ + Number ) = new_expr ( ) ; * * ( _DWORD * * ) ( @@v8@@ + Number ) = Number ; v4 = * ( _QWORD * ) ( @@v8@@ + Number ) ; * ( _QWORD * ) ( v4 + Number ) = copystr ( * ( _QWORD * ) ( @@v7@@ + Number ) ) ; * ( _QWORD * ) ( * ( _QWORD * ) ( @@v8@@ + Number ) + Number L ) = @@v6@@ ; skip_token ( @@v5@@ + Number ) ; } else { parse_err ( Number L , @@v7@@ , String ) ; zap ( ) ; @@v8@@ = gnu_get_instruction ( ) ; } } else { zap ( ) ; @@v8@@ = gnu_get_instruction ( ) ; } } else if ( * ( _DWORD * ) ( @@v7@@ + Number ) == Number ) { @@v8@@ = gnu_get_statement ( ) ; if ( ! @@v8@@ ) { zap ( ) ; @@v8@@ = gnu_get_instruction ( ) ; } } else { parse_err ( Number L , @@v7@@ , String ) ; zap ( ) ; @@v8@@ = gnu_get_instruction ( ) ; } return @@v8@@ ; }", "source": [{"n": "v8", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s40"}, {"n": "v5", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s44"}]}