{"name": "glutMenuStatusFunc", "code": "__int64 __fastcall glutMenuStatusFunc ( __int64 @@a1@@ ) { __int64 @@result@@ ; @@result@@ = @@a1@@ ; _glutMenuStatusFunc = @@a1@@ ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}
{"name": "glutMenuStateFunc", "code": "__int64 __fastcall glutMenuStateFunc ( __int64 @@a1@@ ) { __int64 @@result@@ ; @@result@@ = @@a1@@ ; _glutMenuStatusFunc = @@a1@@ ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]} {"name": "__glutFinishMenu", "code": "__int64 __fastcall _glutFinishMenu ( Window @@a1@@ , int @@a2@@ , int @@a3@@ ) { __int64 @@result@@ ; int @@v4@@ ; int @@v5@@ ; Window @@v6@@ ; Window @@v7@@ ; @@v6@@ = @@a1@@ ; @@v5@@ = @@a2@@ ; @@v4@@ = @@a3@@ ; unmapMenu ( ( Window * ) _glutMappedMenu ) ; XUngrabPointer ( _glutDisplay , Number L ) ; XFlush ( _glutDisplay ) ; if ( _glutMenuStatusFunc ) { if ( @@v6@@ != * ( _QWORD * ) ( _glutMenuWindow + Number ) && ! XTranslateCoordinates ( _glutDisplay , @@v6@@ , * ( _QWORD * ) ( _glutMenuWindow + Number ) , @@v5@@ , @@v4@@ , & @@v5@@ , & @@v4@@ , & @@v7@@ ) ) { _assert_fail ( String , String , Number , String ) ; } _glutSetWindow ( _glutMenuWindow ) ; _glutSetMenu ( _glutMappedMenu ) ; _glutMappedMenu = Number L ; _glutMenuStatusFunc ( Number L , ( unsigned int ) @@v5@@ , ( unsigned int ) @@v4@@ ) ; } _glutMappedMenu = Number L ; @@result@@ = _glutItemSelected ; if ( _glutItemSelected ) { @@result@@ = * ( unsigned int * ) ( _glutItemSelected + Number ) ; if ( ! ( _DWORD ) @@result@@ ) { _glutSetWindow ( _glutMenuWindow ) ; _glutSetMenu ( * ( _QWORD * ) ( _glutItemSelected + Number ) ) ; @@result@@ = ( * ( __int64 ( __fastcall * * ) ( _QWORD ) ) ( * ( _QWORD * ) ( _glutItemSelected + Number ) + Number L ) ) ( * ( unsigned int * ) ( _glutItemSelected + Number ) ) ; } } _glutMenuWindow = Number L ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "Window", "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"}, {"n": "v7", "t": {"T": 1, "n": "Window", "s": 8}, "location": "s16"}, {"n": "v6", "t": {"T": 1, "n": "Window", "s": 8}, "location": "s24"}, {"n": "v5", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}, {"n": "v4", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}]} {"name": "__glutStartMenu", "code": "int __fastcall _glutStartMenu ( __int64 @@a1@@ , __int64 @@a2@@ , int @@a3@@ , int @@a4@@ , unsigned int @@a5@@ , unsigned int @@a6@@ ) { int @@result@@ ; if ( _glutMappedMenu ) _assert_fail ( String , String , Number , String ) ; @@result@@ = XGrabPointer ( _glutDisplay , _glutRoot , Number , Number , Number , Number , _glutRoot , menuCursor , Number L ) ; if ( ! @@result@@ ) { _glutMappedMenu = @@a1@@ ; _glutMenuWindow = @@a2@@ ; _glutItemSelected = Number L ; if ( _glutMenuStatusFunc ) { _glutSetMenu ( @@a1@@ ) ; _glutSetWindow ( @@a2@@ ) ; _glutMenuStatusFunc ( Number L , @@a5@@ , @@a6@@ ) ; } @@result@@ = mapMenu ( @@a1@@ , @@a3@@ , @@a4@@ ) ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "int", "s": 4}, "location": "r8"}, {"n": "a6", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r80"}]}