{"name": "_read", "code": "ssize_t read ( int @@fd@@ , void * @@buf@@ , size_t @@nbytes@@ ) { size_t @@v3@@ ; int @@v4@@ ; unsigned __int64 @@v5@@ ; size_t @@n@@ ; int @@v9@@ ; struct timeval @@timeout@@ ; fd_set @@readfds@@ ; __int64 @@v12@@ ; int @@v13@@ ; unsigned int @@v14@@ ; int @@v15@@ ; int @@v16@@ ; unsigned int @@v17@@ ; @@n@@ = @@v3@@ ; @@v9@@ = @@v4@@ ; @@v17@@ = Number ; memset ( ( void * ) @@nbytes@@ , Number , @@v3@@ ) ; while ( Number ) { if ( @@n@@ <= ( int ) @@v17@@ ) return Number L ; @@v5@@ = * ( int * ) @@buf@@ ; if ( @@n@@ - ( int ) @@v17@@ <= @@v5@@ ) LODWORD ( @@v5@@ ) = @@n@@ - @@v17@@ ; @@v16@@ = @@v5@@ ; memcpy ( ( void * ) ( @@nbytes@@ + ( int ) @@v17@@ ) , ( char * ) @@buf@@ + Number L - * ( int * ) @@buf@@ + Number , ( int ) @@v5@@ ) ; * ( _DWORD * ) @@buf@@ -= @@v16@@ ; @@v17@@ += @@v16@@ ; if ( @@n@@ <= ( int ) @@v17@@ ) return @@v17@@ ; @@timeout@@ . tv_sec = @@v9@@ ; @@timeout@@ . tv_usec = Number L ; memset ( & @@readfds@@ , Number , sizeof ( @@readfds@@ ) ) ; @@v15@@ = Number ; @@v14@@ = ( unsigned int ) & @@v12@@ ; @@readfds@@ . fds_bits [ @@fd@@ / Number ] |= Number L << ( @@fd@@ % Number ) ; @@v13@@ = select ( @@fd@@ + Number , & @@readfds@@ , Number L , Number L , & @@timeout@@ ) ; if ( @@v13@@ <= Number ) break ; init_iobuffer ( @@buf@@ ) ; * ( _DWORD * ) @@buf@@ = read ( @@fd@@ , ( char * ) @@buf@@ + Number , Number ) ; if ( * ( int * ) @@buf@@ <= Number ) return Number ; memmove ( ( char * ) @@buf@@ + Number - * ( _DWORD * ) @@buf@@ + Number , ( char * ) @@buf@@ + Number , * ( int * ) @@buf@@ ) ; } if ( @@v13@@ < Number ) exit ( Number ) ; return @@v17@@ ; }", "source": [{"n": "nbytes", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r16"}, {"n": "v3", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "r24"}, {"n": "fd", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "buf", "t": {"T": 3, "t": "void"}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r72"}, {"n": "v5", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r8"}, {"n": "v15", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v14", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s16"}, {"n": "readfds", "t": {"T": 6, "n": "fd_set", "l": [{"T": 4, "n": "fds_bits", "t": "__fd_mask[16]", "s": 128}]}, "location": "s160"}, {"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": "s176"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s184"}, {"n": "v13", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "n", "t": {"T": 1, "n": "size_t", "s": 8}, "location": "s208"}, {"n": "v12", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v17", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v16", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}
{"name": "init_iobuffer", "code": "_DWORD * __fastcall init_iobuffer ( _DWORD * @@a1@@ ) { _DWORD * @@result@@ ; memset ( @@a1@@ + Number , Number , Number ) ; @@result@@ = @@a1@@ ; * @@a1@@ = Number ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_DWORD"}, "location": "r56"}, {"n": "result", "t": {"T": 3, "t": "_DWORD"}, "location": "r8"}]}