{"name": "http_parser_parse_url", "code": "__int64 __fastcall http_parser_parse_url ( __int64 @@a1@@ , __int64 @@a2@@ , int @@a3@@ , _WORD * @@a4@@ ) { int @@v4@@ ; unsigned __int64 @@v8@@ ; int @@v9@@ ; int @@v10@@ ; unsigned int @@v11@@ ; unsigned __int8 * @@i@@ ; unsigned int @@v13@@ ; @@v9@@ = Number ; * @@a4@@ = Number ; @@a4@@ [ Number ] = * @@a4@@ ; if ( @@a3@@ ) @@v4@@ = Number ; else @@v4@@ = Number ; @@v13@@ = @@v4@@ ; @@v10@@ = Number ; for ( @@i@@ = ( unsigned __int8 * ) @@a1@@ ; ( unsigned __int64 ) @@i@@ < @@a1@@ + @@a2@@ ; ++ @@i@@ ) { @@v13@@ = parse_url_char ( @@v13@@ , * @@i@@ ) ; switch ( @@v13@@ ) { case Number : return Number L ; case Number : @@v11@@ = Number ; break ; case Number : case Number : case Number : case Number : case Number : continue ; case Number : goto LABEL_9 ; case Number : @@v9@@ = Number ; LABEL_9 : @@v11@@ = Number ; break ; case Number : @@v11@@ = Number ; break ; case Number : @@v11@@ = Number ; break ; case Number : @@v11@@ = Number ; break ; default : __assert_fail ( String , String , Number , String ) ; } if ( @@v11@@ == @@v10@@ ) { ++ @@a4@@ [ Number * @@v11@@ + Number ] ; } else { @@a4@@ [ Number * @@v11@@ + Number ] = ( _WORD ) @@i@@ - @@a1@@ ; @@a4@@ [ Number * @@v11@@ + Number ] = Number ; * @@a4@@ |= Number << @@v11@@ ; @@v10@@ = @@v11@@ ; } } if ( ( * @@a4@@ & Number ) != Number && http_parse_host ( @@a1@@ , @@a4@@ , @@v9@@ ) ) return Number L ; if ( @@a3@@ && * @@a4@@ != Number ) return Number L ; if ( ( * @@a4@@ & Number ) != Number ) { @@v8@@ = strtoul ( ( const char * ) ( ( unsigned __int16 ) @@a4@@ [ Number ] + @@a1@@ ) , Number L , Number ) ; if ( @@v8@@ > Number ) return Number L ; @@a4@@ [ Number ] = @@v8@@ ; } return Number L ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a4", "t": {"T": 3, "t": "_WORD"}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r8"}, {"n": "i", "t": {"T": 3, "t": "unsigned __int8"}, "location": "s16"}, {"n": "v11", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v10", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}, {"n": "v13", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v8", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s40"}]}