{"name": "aux_lines", "code": "__int64 __fastcall aux_lines ( __int64 @@a1@@ , unsigned int @@a2@@ , unsigned int @@a3@@ ) { lua_pushvalue ( @@a1@@ , @@a2@@ ) ; lua_pushboolean ( @@a1@@ , @@a3@@ ) ; return lua_pushcclosure ( @@a1@@ , io_readline , Number L ) ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}]}
{"name": "f_lines", "code": "__int64 __fastcall f_lines ( __int64 @@a1@@ ) { tofile ( @@a1@@ ) ; aux_lines ( @@a1@@ , Number , Number ) ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}]} {"name": "io_lines", "code": "__int64 __fastcall io_lines ( __int64 @@a1@@ ) { __int64 result ; unsigned int v2 ; _QWORD * @@v3@@ ; char * @@filename@@ ; if ( ( int ) lua_type ( @@a1@@ , Number L ) > Number ) { @@filename@@ = ( char * ) luaL_checklstring ( @@a1@@ , Number L , Number L ) ; @@v3@@ = newfile ( @@a1@@ ) ; * @@v3@@ = fopen ( @@filename@@ , String ) ; if ( ! * @@v3@@ ) fileerror ( @@a1@@ , Number , @@filename@@ ) ; v2 = lua_gettop ( @@a1@@ ) ; aux_lines ( @@a1@@ , v2 , Number ) ; result = Number L ; } else { lua_rawgeti ( @@a1@@ , Number L , Number L ) ; result = f_lines ( @@a1@@ ) ; } return result ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v3", "t": {"T": 3, "t": "_QWORD"}, "location": "s16"}, {"n": "filename", "t": {"T": 3, "t": "char"}, "location": "s8"}]} {"name": "io_read", "code": "__int64 __fastcall io_read ( __int64 @@a1@@ ) { FILE * @@v1@@ ; @@v1@@ = ( FILE * ) getiofile ( @@a1@@ , Number ) ; return g_read ( @@a1@@ , @@v1@@ , Number ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v1", "t": {"T": 3, "t": "FILE"}, "location": "r8"}]} {"name": "io_readline", "code": "__int64 __fastcall io_readline ( __int64 @@a1@@ ) { int * v1 ; char * v2 ; __int64 result ; _BOOL4 @@v4@@ ; FILE * @@stream@@ ; @@stream@@ = * ( FILE * * ) lua_touserdata ( @@a1@@ , Number L ) ; if ( ! @@stream@@ ) luaL_error ( @@a1@@ , String ) ; @@v4@@ = read_line ( @@a1@@ , @@stream@@ ) ; if ( ferror ( @@stream@@ ) ) { v1 = _errno_location ( ) ; v2 = strerror ( * v1 ) ; result = luaL_error ( @@a1@@ , String , v2 ) ; } else if ( @@v4@@ ) { result = Number L ; } else { if ( ( unsigned int ) lua_toboolean ( @@a1@@ , Number L ) ) { lua_settop ( @@a1@@ , Number L ) ; lua_pushvalue ( @@a1@@ , Number L ) ; aux_close ( @@a1@@ ) ; } result = Number L ; } return result ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v4", "t": {"T": 1, "n": "_BOOL4", "s": 4}, "location": "s12"}, {"n": "stream", "t": {"T": 3, "t": "FILE"}, "location": "s8"}]}