{"name": "resetstack", "code": "__int64 __fastcall resetstack ( __int64 @@a1@@ , int @@a2@@ ) { __int64 @@result@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * * ( _QWORD * * ) ( @@a1@@ + Number ) ; luaF_close ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) ) ; luaD_seterrorobj ( @@a1@@ , @@a2@@ , * ( _QWORD * ) ( @@a1@@ + Number ) ) ; * ( _WORD * ) ( @@a1@@ + Number ) = * ( _WORD * ) ( @@a1@@ + Number ) ; * ( _BYTE * ) ( @@a1@@ + Number ) = Number ; restore_stack_limit ( @@a1@@ ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; @@result@@ = @@a1@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}
{"name": "luaD_seterrorobj", "code": "__int64 __fastcall luaD_seterrorobj ( __int64 @@a1@@ , int @@a2@@ , __int64 @@a3@@ ) { __int64 v3 ; __int64 result ; if ( @@a2@@ == Number ) { * ( _QWORD * ) @@a3@@ = luaS_newlstr ( @@a1@@ , String , Number L ) ; * ( _DWORD * ) ( @@a3@@ + Number ) = Number ; } else if ( @@a2@@ <= Number ) { if ( @@a2@@ > Number ) { * ( _QWORD * ) @@a3@@ = luaS_newlstr ( @@a1@@ , String , Number L ) ; * ( _DWORD * ) ( @@a3@@ + Number ) = Number ; } else if ( @@a2@@ >= Number ) { v3 = * ( _QWORD * ) ( @@a1@@ + Number ) - Number L ; * ( _QWORD * ) @@a3@@ = * ( _QWORD * ) v3 ; * ( _DWORD * ) ( @@a3@@ + Number ) = * ( _DWORD * ) ( v3 + Number ) ; } } result = @@a1@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@a3@@ + Number ; return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}]} {"name": "restore_stack_limit", "code": "unsigned __int64 __fastcall restore_stack_limit ( __int64 @@a1@@ ) { unsigned __int64 @@result@@ ; __int64 @@v2@@ ; @@result@@ = * ( unsigned int * ) ( @@a1@@ + Number ) ; if ( ( int ) @@result@@ > Number ) { @@v2@@ = ( __int64 ) ( * ( _QWORD * ) ( @@a1@@ + Number ) - * ( _QWORD * ) ( @@a1@@ + Number ) ) >> Number ; @@result@@ = Number * @@v2@@ ; if ( Number * ( int ) @@v2@@ <= Number ) @@result@@ = luaD_reallocCI ( @@a1@@ , Number L ) ; } return @@result@@ ; }", "source": [{"n": "v2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "r8"}]} {"name": "luaD_throw", "code": "void __fastcall __noreturn luaD_throw ( __int64 @@a1@@ , int @@a2@@ ) { if ( * ( _QWORD * ) ( @@a1@@ + Number ) ) { * ( _DWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L ) = @@a2@@ ; longjmp ( ( struct __jmp_buf_tag * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L ) , Number ) ; } * ( _BYTE * ) ( @@a1@@ + Number ) = @@a2@@ ; if ( * ( _QWORD * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L ) ) { resetstack ( @@a1@@ , @@a2@@ ) ; ( * ( void ( __fastcall * * ) ( __int64 ) ) ( * ( _QWORD * ) ( @@a1@@ + Number ) + Number L ) ) ( @@a1@@ ) ; } exit ( Number ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}]}