{"name": "ap_do_options", "code": "__int64 __fastcall ap_do_options ( unsigned int @@a1@@ , __int64 @@a2@@ ) { __int64 result ; int v3 ; while ( Number ) { v3 = acpi_getopt ( @@a1@@ , @@a2@@ , String ) ; if ( v3 == Number ) { if ( current_action || ! ( unsigned int ) ap_insert_action ( Number L , Number ) ) result = Number L ; else result = Number ; } else { switch ( v3 ) { case String : case String : ap_display_usage ( ) ; result = Number L ; break ; case String : if ( ! ( unsigned int ) ap_insert_action ( acpi_gbl_optarg , Number ) ) continue ; result = Number ; break ; case String : gbl_binary_mode = Number ; continue ; case String : gbl_dump_customized_tables = Number ; continue ; case String : if ( ! ( unsigned int ) ap_insert_action ( acpi_gbl_optarg , Number ) ) continue ; result = Number ; break ; case String : if ( ! ( unsigned int ) ap_insert_action ( acpi_gbl_optarg , Number ) ) continue ; result = Number ; break ; case String : if ( ! ( unsigned int ) ap_open_output_file ( acpi_gbl_optarg ) ) continue ; result = Number ; break ; case String : if ( ! ( unsigned int ) acpi_ut_strtoul64 ( acpi_gbl_optarg , Number L , & gbl_rsdp_base ) ) continue ; acpi_log_error ( String , acpi_gbl_optarg ) ; result = Number ; break ; case String : gbl_summary_mode = Number ; continue ; case String : acpi_os_printf ( String , String , String , Number L , String , String , String ) ; result = Number L ; break ; case String : if ( acpi_gbl_do_not_use_xsdt ) gbl_do_not_dump_xsdt = Number ; else acpi_gbl_do_not_use_xsdt = Number ; continue ; case String : gbl_verbose_mode = Number ; acpi_log_error ( String , String , String , Number L , String , String , String ) ; continue ; default : ap_display_usage ( ) ; result = Number ; break ; } } break ; } return result ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}]}
{"name": "ap_insert_action", "code": "__int64 __fastcall ap_insert_action ( __int64 @@a1@@ , int @@a2@@ ) { action_table [ Number * ( unsigned int ) current_action ] = @@a1@@ ; LODWORD ( action_table [ Number * ( unsigned int ) current_action ++ + Number ] ) = @@a2@@ ; if ( ( unsigned int ) current_action <= Number ) return Number L ; acpi_log_error ( String , Number L ) ; return Number ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}]} {"name": "main", "code": "int __cdecl main ( int @@argc@@ , const char * * @@argv@@ , const char * * @@envp@@ ) { unsigned int @@v4@@ ; _QWORD * @@v5@@ ; unsigned int @@v6@@ ; unsigned int @@i@@ ; int @@v8@@ ; acpi_os_initialize ( @@argc@@ , @@argv@@ , @@envp@@ ) ; gbl_output_file = ( __int64 ) stdout ; @@v8@@ = ap_do_options ( @@argc@@ , ( __int64 ) @@argv@@ ) ; if ( @@v8@@ > Number ) return Number ; if ( @@v8@@ < Number ) return @@v8@@ ; for ( @@i@@ = Number ; @@i@@ < current_action ; ++ @@i@@ ) { @@v5@@ = & action_table [ Number * @@i@@ ] ; @@v4@@ = * ( ( _DWORD * ) @@v5@@ + Number ) ; if ( @@v4@@ == Number ) { @@v8@@ = ap_dump_table_from_file ( * @@v5@@ ) ; } else { if ( @@v4@@ > Number ) { acpi_log_error ( String , * ( ( unsigned int * ) @@v5@@ + Number ) ) ; return Number ; } if ( @@v4@@ == Number ) { @@v8@@ = ap_dump_table_by_name ( * @@v5@@ ) ; } else if ( @@v4@@ ) { @@v8@@ = ap_dump_table_by_address ( * @@v5@@ ) ; } else { @@v8@@ = ap_dump_all_tables ( ) ; } } if ( @@v8@@ ) return @@v8@@ ; } if ( gbl_output_filename ) { if ( gbl_verbose_mode ) { @@v6@@ = cm_get_file_size ( gbl_output_file ) ; acpi_log_error ( String , ( const char * ) gbl_output_filename , @@v6@@ , @@v6@@ ) ; } acpi_os_close_file ( gbl_output_file ) ; } return @@v8@@ ; }", "source": [{"n": "envp", "t": {"T": 3, "t": "const char *"}, "location": "r16"}, {"n": "argc", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "argv", "t": {"T": 3, "t": "const char *"}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r8"}, {"n": "v6", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v5", "t": {"T": 3, "t": "_QWORD"}, "location": "s24"}, {"n": "v8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}