{"name": "fsocket", "code": "FILE * __fastcall fsocket ( int @@a1@@ , int @@a2@@ , int @@a3@@ ) { FILE * @@v4@@ ; int @@fd@@ ; @@fd@@ = socket ( @@a1@@ , @@a2@@ , @@a3@@ ) ; if ( @@fd@@ < Number ) return Number L ; @@v4@@ = fdopen ( @@fd@@ , String ) ; if ( ! @@v4@@ ) close ( @@fd@@ ) ; return @@v4@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "v4", "t": {"T": 3, "t": "FILE"}, "location": "s16"}, {"n": "fd", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]}
{"name": "rfc931", "code": "char * __fastcall rfc931 ( __int64 @@a1@@ , __int64 @@a2@@ , char * @@a3@@ ) { __int64 v3 ; __int64 v4 ; int v5 ; int v6 ; unsigned int @@v7@@ ; uint16_t v8 ; uint16_t v9 ; uint16_t v10 ; char * v11 ; char @@s@@ [ Number ] ; char @@v15@@ [ Number ] ; struct sockaddr @@addr@@ ; struct sockaddr @@v17@@ ; int @@v18@@ ; int @@v19@@ ; char * @@v20@@ ; char * @@src@@ ; FILE * @@stream@@ ; @@src@@ = String ; @@stream@@ = fsocket ( Number , Number , Number ) ; if ( @@stream@@ ) { setbuf ( @@stream@@ , Number L ) ; if ( ! setjmp ( timebuf ) ) { signal ( Number , ( __sighandler_t ) timeout ) ; alarm ( Number ) ; v3 = * ( _QWORD * ) ( @@a2@@ + Number ) ; * ( _QWORD * ) & @@addr@@ . sa_family = * ( _QWORD * ) @@a2@@ ; * ( _QWORD * ) & @@addr@@ . sa_data [ Number ] = v3 ; * ( _WORD * ) @@addr@@ . sa_data = htons ( Number ) ; v4 = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) & @@v17@@ . sa_family = * ( _QWORD * ) @@a1@@ ; * ( _QWORD * ) & @@v17@@ . sa_data [ Number ] = v4 ; * ( _WORD * ) @@v17@@ . sa_data = htons ( Number ) ; v5 = fileno ( @@stream@@ ) ; if ( bind ( v5 , & @@addr@@ , Number ) >= Number ) { v6 = fileno ( @@stream@@ ) ; if ( connect ( v6 , & @@v17@@ , Number ) >= Number ) { @@v7@@ = ntohs ( * ( _WORD * ) ( @@a2@@ + Number ) ) ; v8 = ntohs ( * ( _WORD * ) ( @@a1@@ + Number ) ) ; fprintf ( @@stream@@ , String , v8 , @@v7@@ ) ; fflush ( @@stream@@ ) ; if ( fgets ( @@s@@ , Number , @@stream@@ ) ) { if ( ! ferror ( @@stream@@ ) && ! feof ( @@stream@@ ) && ( unsigned int ) _isoc99_sscanf ( @@s@@ , String , & @@v19@@ , & @@v18@@ , @@v15@@ ) == Number ) { v9 = ntohs ( * ( _WORD * ) ( @@a1@@ + Number ) ) ; if ( v9 == @@v19@@ ) { v10 = ntohs ( * ( _WORD * ) ( @@a2@@ + Number ) ) ; if ( v10 == @@v18@@ ) { @@v20@@ = strchr ( @@v15@@ , Number ) ; if ( @@v20@@ ) * @@v20@@ = Number ; @@src@@ = @@v15@@ ; } } } } } } alarm ( Number ) ; } fclose ( @@stream@@ ) ; } strncpy ( @@a3@@ , @@src@@ , Number ) ; @@a3@@ [ Number ] = Number ; if ( ! strcmp ( @@a3@@ , String ) ) * @@a3@@ = Number ; else * ( _WORD * ) & @@a3@@ [ strlen ( @@a3@@ ) ] = Number ; v11 = inet_ntoa ( * ( struct in_addr * ) ( @@a1@@ + Number ) ) ; return strcat ( @@a3@@ , v11 ) ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "char"}, "location": "r16"}, {"n": "v7", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r32"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "stream", "t": {"T": 3, "t": "FILE"}, "location": "s24"}, {"n": "src", "t": {"T": 3, "t": "char"}, "location": "s32"}, {"n": "v15", "t": {"T": 2, "n": 256, "s": 1, "t": "char"}, "location": "s336"}, {"n": "v20", "t": {"T": 3, "t": "char"}, "location": "s40"}, {"n": "v19", "t": {"T": 1, "n": "int", "s": 4}, "location": "s44"}, {"n": "v18", "t": {"T": 1, "n": "int", "s": 4}, "location": "s48"}, {"n": "v17", "t": {"T": 6, "n": "struct sockaddr", "l": [{"T": 4, "n": "sa_family", "t": "sa_family_t", "s": 2}, {"T": 4, "n": "sa_data", "t": "char[14]", "s": 14}]}, "location": "s64"}, {"n": "addr", "t": {"T": 6, "n": "struct sockaddr", "l": [{"T": 4, "n": "sa_family", "t": "sa_family_t", "s": 2}, {"T": 4, "n": "sa_data", "t": "char[14]", "s": 14}]}, "location": "s80"}, {"n": "s", "t": {"T": 2, "n": 512, "s": 1, "t": "char"}, "location": "s848"}]}