{"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"}]}
{"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": "mapMenu", "code": "int __fastcall mapMenu ( __int64 @@a1@@ , int @@a2@@ , int @@a3@@ ) { XWindowChanges @@v5@@ ; XWindowChanges @@v6@@ ; Window * @@v7@@ ; int @@v8@@ ; int @@v9@@ ; unsigned int @@v10@@ ; if ( * ( int * ) ( @@a1@@ + Number ) <= Number ) @@v9@@ = Number ; else @@v9@@ = Number ; @@v6@@ . stack_mode = Number ; @@v10@@ = Number ; if ( ! * ( _DWORD * ) ( @@a1@@ + Number ) ) { @@v7@@ = * ( Window * * ) ( @@a1@@ + Number ) ; @@v8@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; while ( @@v7@@ ) { @@v5@@ . y = ( @@v8@@ - Number ) * fontHeight + Number ; @@v5@@ . width = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v5@@ . width += @@v9@@ ; XConfigureWindow ( _glutDisplay , * @@v7@@ , Number , & @@v5@@ ) ; @@v7@@ = ( Window * ) @@v7@@ [ Number ] ; -- @@v8@@ ; } * ( _DWORD * ) ( @@a1@@ + Number ) = * ( _DWORD * ) ( @@a1@@ + Number ) * fontHeight + Number ; @@v6@@ . height = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v6@@ . width = * ( _DWORD * ) ( @@a1@@ + Number ) + Number + @@v9@@ + Number ; @@v10@@ |= Number ; * ( _DWORD * ) ( @@a1@@ + Number ) = Number ; } if ( @@a3@@ + * ( _DWORD * ) ( @@a1@@ + Number ) < _glutScreenHeight ) @@v6@@ . y = @@a3@@ ; else @@v6@@ . y = _glutScreenHeight - * ( _DWORD * ) ( @@a1@@ + Number ) ; if ( @@v9@@ + @@a2@@ + * ( _DWORD * ) ( @@a1@@ + Number ) < _glutScreenWidth ) @@v6@@ . x = @@a2@@ ; else @@v6@@ . x = _glutScreenWidth - * ( _DWORD * ) ( @@a1@@ + Number ) + @@v9@@ ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v6@@ . x ; * ( _DWORD * ) ( @@a1@@ + Number ) = @@v6@@ . y ; XConfigureWindow ( _glutDisplay , * ( _QWORD * ) ( @@a1@@ + Number ) , @@v10@@ , & @@v6@@ ) ; XInstallColormap ( _glutDisplay , menuColormap ) ; XRaiseWindow ( _glutDisplay , * ( _QWORD * ) ( @@a1@@ + Number ) ) ; return XMapWindow ( _glutDisplay , * ( _QWORD * ) ( @@a1@@ + Number ) ) ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "v5", "t": {"T": 6, "n": "XWindowChanges", "l": [{"T": 4, "n": "x", "t": "int", "s": 4}, {"T": 4, "n": "y", "t": "int", "s": 4}, {"T": 4, "n": "width", "t": "int", "s": 4}, {"T": 4, "n": "height", "t": "int", "s": 4}, {"T": 4, "n": "border_width", "t": "int", "s": 4}, {"T": 5, "s": 4}, {"T": 4, "n": "sibling", "t": "Window", "s": 8}, {"T": 4, "n": "stack_mode", "t": "int", "s": 4}, {"T": 5, "s": 4}]}, "location": "s112"}, {"n": "v8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v7", "t": {"T": 3, "t": "Window"}, "location": "s24"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v6", "t": {"T": 6, "n": "XWindowChanges", "l": [{"T": 4, "n": "x", "t": "int", "s": 4}, {"T": 4, "n": "y", "t": "int", "s": 4}, {"T": 4, "n": "width", "t": "int", "s": 4}, {"T": 4, "n": "height", "t": "int", "s": 4}, {"T": 4, "n": "border_width", "t": "int", "s": 4}, {"T": 5, "s": 4}, {"T": 4, "n": "sibling", "t": "Window", "s": 8}, {"T": 4, "n": "stack_mode", "t": "int", "s": 4}, {"T": 5, "s": 4}]}, "location": "s64"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]} {"name": "glutSetMenu", "code": "__int64 __fastcall glutSetMenu ( int @@a1@@ ) { __int64 @@result@@ ; __int64 @@v2@@ ; if ( @@a1@@ > Number && @@a1@@ <= menuListSize && ( @@v2@@ = * ( ( _QWORD * ) menuList + @@a1@@ - Number ) ) != Number ) @@result@@ = _glutSetMenu ( @@v2@@ ) ; else @@result@@ = _glutWarning ( String ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}]}