{"name": "main", "code": "int __cdecl __noreturn main ( int @@argc@@ , const char * * @@argv@@ , const char * * @@envp@@ ) { int * v3 ; char * v4 ; int * v5 ; char * v6 ; __int64 @@v7@@ ; @@v7@@ = minipc_server_create ( String , Number L , @@envp@@ ) ; if ( ! @@v7@@ ) { v3 = __errno_location ( ) ; v4 = strerror ( * v3 ) ; fprintf ( stderr , String , * @@argv@@ , v4 ) ; exit ( Number ) ; } minipc_set_logfile ( @@v7@@ , stderr ) ; minipc_export ( @@v7@@ , & ss_sum_struct ) ; minipc_export ( @@v7@@ , & ss_tod_struct ) ; minipc_export ( @@v7@@ , & ss_sqrt_struct ) ; while ( ( int ) minipc_server_action ( @@v7@@ , Number L ) >= Number ) fprintf ( stdout , String , String ) ; v5 = __errno_location ( ) ; v6 = strerror ( * v5 ) ; fprintf ( stderr , String , * @@argv@@ , v6 ) ; exit ( Number ) ; }", "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": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]}
{"name": ".socket", "code": "int socket ( int @@domain@@ , int @@type@@ , int @@protocol@@ ) { return socket ( @@domain@@ , @@type@@ , @@protocol@@ ) ; }", "source": [{"n": "protocol", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "domain", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "type", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}]} {"name": "_start", "code": "void __fastcall __noreturn start ( __int64 @@a1@@ , __int64 @@a2@@ , void ( * @@a3@@ ) ( void ) ) { __int64 @@v3@@ ; int v4 ; __int64 @@v5@@ ; char * @@retaddr@@ ; v4 = @@v5@@ ; @@v5@@ = @@v3@@ ; _libc_start_main ( ( int ( __fastcall * ) ( int , char * * , char * * ) ) main , v4 , & @@retaddr@@ , _libc_csu_init , _libc_csu_fini , @@a3@@ , & @@v5@@ ) ; __halt ( ) ; }", "source": [{"n": "a3", "t": {"T": 9, "n": "void (*)(void)"}, "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": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "retaddr", "t": {"T": 3, "t": "char"}, "location": "s0"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]} {"name": "minipc_set_logfile", "code": "__int64 __fastcall minipc_set_logfile ( __int64 @@a1@@ , __int64 @@a2@@ ) { __int64 @@result@@ ; __int64 @@v3@@ ; @@v3@@ = mpc_get_link ( @@a1@@ ) ; if ( * ( _DWORD * ) ( @@v3@@ + Number ) == Number ) { * ( _QWORD * ) ( @@v3@@ + Number ) = @@a2@@ ; @@result@@ = Number L ; } else { * __errno_location ( ) = Number ; @@result@@ = Number ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]} {"name": "minipc_server_create", "code": "void * __fastcall minipc_server_create ( const char * @@a1@@ , unsigned __int16 @@a2@@ ) { return _minipc_link_create ( @@a1@@ , @@a2@@ | Number ) ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const char"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned __int16", "s": 2}, "location": "r64"}]} {"name": "minipc_export", "code": "__int64 __fastcall minipc_export ( __int64 @@a1@@ , __int64 @@a2@@ ) { __int64 @@result@@ ; _QWORD * @@v3@@ ; __int64 @@v4@@ ; @@v4@@ = mpc_get_link_0 ( @@a1@@ ) ; if ( * ( _DWORD * ) ( @@v4@@ + Number ) == Number ) { @@v3@@ = calloc ( Number , Number ) ; if ( @@v3@@ ) { * @@v3@@ = @@a2@@ ; @@v3@@ [ Number ] = * ( _QWORD * ) ( @@v4@@ + Number ) ; * ( _QWORD * ) ( @@v4@@ + Number ) = @@v3@@ ; if ( * ( _QWORD * ) ( @@v4@@ + Number ) ) fprintf ( * ( FILE * * ) ( @@v4@@ + Number ) , String , String , @@v3@@ , ( const char * ) ( @@a2@@ + Number ) , ( const void * ) @@a2@@ , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) ) ; @@result@@ = Number L ; } else { @@result@@ = Number ; } } else { * __errno_location ( ) = Number ; @@result@@ = Number ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v3", "t": {"T": 3, "t": "_QWORD"}, "location": "s16"}, {"n": "v4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]} {"name": "minipc_server_action", "code": "__int64 __fastcall minipc_server_action ( int * @@a1@@ , int @@a2@@ ) { __int64 @@result@@ ; __fd_mask v3 ; __fd_mask v4 ; __fd_mask v5 ; __fd_mask v6 ; __fd_mask v7 ; __fd_mask v8 ; __fd_mask v9 ; __fd_mask @@v10@@ ; __int64 @@v11@@ ; fd_set @@readfds@@ ; struct timeval @@timeout@@ ; __int64 @@v14@@ ; int @@i@@ ; @@v14@@ = mpc_get_link_0 ( ( __int64 ) @@a1@@ ) ; if ( * ( _DWORD * ) ( @@v14@@ + Number ) == Number ) { @@timeout@@ . tv_sec = @@a2@@ / Number ; @@timeout@@ . tv_usec = Number * ( @@a2@@ % Number ) ; v3 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v3 ; v4 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v4 ; v5 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v5 ; v6 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v6 ; v7 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v7 ; v8 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v8 ; v9 = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = v9 ; @@v10@@ = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = * ( _QWORD * ) ( @@v14@@ + Number ) ; @@readfds@@ . fds_bits [ Number ] = @@v10@@ ; @@i@@ = select ( Number , & @@readfds@@ , Number L , Number L , & @@timeout@@ ) ; if ( @@i@@ ) { if ( @@i@@ < Number && * __errno_location ( ) == Number ) { @@result@@ = Number L ; } else if ( @@i@@ >= Number ) { if ( @@i@@ ) { if ( * ( _QWORD * ) ( @@v14@@ + Number ) ) { mpc_handle_client ( @@v14@@ , Number , * @@a1@@ ) ; @@result@@ = Number L ; } else { for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { if ( * ( int * ) ( @@v14@@ + Number * ( @@i@@ + Number L ) + Number ) >= Number ) { @@v11@@ = * ( int * ) ( @@v14@@ + Number * ( @@i@@ + Number L ) + Number ) ; if ( ( @@readfds@@ . fds_bits [ * ( _DWORD * ) ( @@v14@@ + Number * ( @@i@@ + Number L ) + Number ) / Number ] & ( Number L << ( ( ( ( HIDWORD ( @@v11@@ ) >> Number ) + @@v11@@ ) & Number ) - ( HIDWORD ( @@v11@@ ) >> Number ) ) ) ) != Number ) mpc_handle_client ( @@v14@@ , @@i@@ , * ( _DWORD * ) ( @@v14@@ + Number * ( @@i@@ + Number L ) + Number ) ) ; } } if ( ( @@readfds@@ . fds_bits [ * @@a1@@ / Number ] & ( Number L << ( * @@a1@@ % Number ) ) ) != Number ) mpc_handle_connection ( @@v14@@ , * @@a1@@ ) ; @@result@@ = Number L ; } } else { * __errno_location ( ) = Number ; @@result@@ = Number ; } } else { @@result@@ = Number ; } } else { @@result@@ = Number L ; } } else { * __errno_location ( ) = Number ; @@result@@ = Number ; } return @@result@@ ; }", "source": [{"n": "v11", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r1280"}, {"n": "v10", "t": {"T": 1, "n": "__fd_mask", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "int"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "readfds", "t": {"T": 6, "n": "fd_set", "l": [{"T": 4, "n": "fds_bits", "t": "__fd_mask[16]", "s": 128}]}, "location": "s176"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "v14", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "timeout", "t": {"T": 6, "n": "struct timeval", "l": [{"T": 4, "n": "tv_sec", "t": "__time_t", "s": 8}, {"T": 4, "n": "tv_usec", "t": "__suseconds_t", "s": 8}]}, "location": "s48"}]}