{"name": "udp_broadcast_new", "code": "char * __fastcall udp_broadcast_new ( __int16 @@a1@@ , __int64 @@a2@@ ) { __int64 @@v3@@ ; __int16 @@v4@@ ; __int16 @@v5@@ ; __int16 @@v6@@ ; __int16 @@v7@@ ; char * @@v8@@ ; @@v3@@ = Number L ; @@v4@@ = Number ; @@v5@@ = Number ; @@v6@@ = Number ; @@v7@@ = Number ; @@v8@@ = udp_new ( & @@v3@@ , @@a1@@ , @@a2@@ ) ; if ( @@v8@@ ) * ( ( _WORD * ) @@v8@@ + Number ) = @@a1@@ ; return @@v8@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v7", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s18"}, {"n": "v6", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s20"}, {"n": "v5", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s22"}, {"n": "v4", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "s24"}, {"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v8", "t": {"T": 3, "t": "char"}, "location": "s8"}]}
{"name": "udp_new", "code": "char * __fastcall udp_new ( _QWORD * @@a1@@ , __int16 @@a2@@ , __int64 @@a3@@ ) { char * @@v5@@ ; @@v5@@ = uip_udp_new ( @@a1@@ , @@a2@@ ) ; if ( ! @@v5@@ ) return Number L ; * ( ( _QWORD * ) @@v5@@ + Number ) = process_current ; * ( ( _QWORD * ) @@v5@@ + Number ) = @@a3@@ ; return @@v5@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int16", "s": 2}, "location": "r64"}, {"n": "v5", "t": {"T": 3, "t": "char"}, "location": "s8"}]} {"name": "process_thread_servreg_hack_process", "code": "__int64 __fastcall process_thread_servreg_hack_process ( _WORD * @@a1@@ , char @@a2@@ , void * @@a3@@ ) { unsigned __int16 v3 ; unsigned __int16 v4 ; __int64 result ; char @@v7@@ ; @@v7@@ = Number ; if ( ! * @@a1@@ ) { outconn_4485 = ( __int64 ) udp_broadcast_new ( Number , Number L ) ; * ( _WORD * ) ( outconn_4485 + Number ) = Number ; inconn_4486 = ( __int64 ) udp_new ( Number L , Number , Number L ) ; * ( _WORD * ) ( inconn_4486 + Number ) = Number ; etimer_set ( ( __int64 ) & periodic_4484 , Number L ) ; v3 = random_rand ( ) ; etimer_set ( ( __int64 ) & sendtimer , v3 % Number ) ; goto LABEL_5 ; } if ( * @@a1@@ == Number ) { while ( @@v7@@ ) { if ( @@a2@@ == Number && @@a3@@ == & periodic_4484 ) { etimer_reset ( ( __int64 ) & periodic_4484 ) ; v4 = random_rand ( ) ; etimer_set ( ( __int64 ) & sendtimer , v4 % Number ) ; } else if ( @@a2@@ == Number && @@a3@@ == & sendtimer ) { send_udp_packet ( outconn_4485 ) ; } else if ( @@a2@@ == tcpip_event ) { parse_incoming_packet ( ( unsigned __int8 * ) uip_appdata ) ; } LABEL_5 : @@v7@@ = Number ; * @@a1@@ = Number ; } result = Number L ; } else { * @@a1@@ = Number ; result = Number L ; } return result ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "void"}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "_WORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "char", "s": 1}, "location": "r64"}, {"n": "v7", "t": {"T": 1, "n": "char", "s": 1}, "location": "s1"}]}