Files
stgsharp/源代码/StgSharpC/x64/Debug/win32_window.cod
T

16488 lines
460 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.37.32824.0
include listing.inc
INCLUDELIB MSVCRTD
INCLUDELIB OLDNAMES
msvcjmc SEGMENT
__9C03CD75_concurrencysal@h DB 01H
__CA64BAF1_sal@h DB 01H
__95655E73_vadefs@h DB 01H
__1D560A45_vcruntime@h DB 01H
__1B0272D9_corecrt@h DB 01H
__13F5961F_stddef@h DB 01H
__ED683015_stdint@h DB 01H
__89F75FCD_ssgc_internal@h DB 01H
__A5E73FD0_glfw3@h DB 01H
__1D45B1A5_glfw_null_platform@h DB 01H
__74484FB3_corecrt_wctype@h DB 01H
__CBE172F9_wctype@h DB 01H
__0ED14FEE_winpackagefamily@h DB 01H
__F92EF742_winapifamily@h DB 01H
__22E515EB_sdkddkver@h DB 01H
__F214EFBF_excpt@h DB 01H
__D9B78EDA_stdarg@h DB 01H
__29F49F40_specstrings_undef@h DB 01H
__D0F42932_specstrings_strict@h DB 01H
__F00405FD_sdv_driverspecs@h DB 01H
__173E09CA_driverspecs@h DB 01H
__9A452361_specstrings@h DB 01H
__1EC467ED_ctype@h DB 01H
__98517906_kernelspecs@h DB 01H
__D3497022_basetsd@h DB 01H
__61CC25A1_errno@h DB 01H
__7061C667_vcruntime_string@h DB 01H
__E4C945B4_corecrt_memcpy_s@h DB 01H
__8EAFF484_corecrt_memory@h DB 01H
__6490AEC5_corecrt_wstring@h DB 01H
__E8295E1E_string@h DB 01H
__7FCB5136_guiddef@h DB 01H
__FF8A9E11_pshpack4@h DB 01H
__D5438902_poppack@h DB 01H
__FB07E2A3_pshpack2@h DB 01H
__F6906775_pshpack8@h DB 01H
__F9415CFA_pshpack1@h DB 01H
__E58C6F1C_apiset@h DB 01H
__A5C52262_ktmtypes@h DB 01H
__FBBA8F9D_winnt@h DB 01H
__A32D3D2C_minwindef@h DB 01H
__7D798299_windef@h DB 01H
__9AE108E9_apisetcconv@h DB 01H
__9CE53D2C_minwinbase@h DB 01H
__5D0AA210_apiquery2@h DB 01H
__4DD4E726_processenv@h DB 01H
__3575CC96_fileapi@h DB 01H
__8EA220E6_fileapifromapp@h DB 01H
__BF9B31FE_debugapi@h DB 01H
__C3AFE134_utilapiset@h DB 01H
__76F69E51_handleapi@h DB 01H
__7E63D784_errhandlingapi@h DB 01H
__FFA7003C_fibersapi@h DB 01H
__8971CECF_namedpipeapi@h DB 01H
__46C9D8A6_profileapi@h DB 01H
__98D4F0A3_heapapi@h DB 01H
__50EF2A88_ioapiset@h DB 01H
__92EA1464_synchapi@h DB 01H
__A53D8AED_interlockedapi@h DB 01H
__B506CAAF_processthreadsapi@h DB 01H
__FF735694_sysinfoapi@h DB 01H
__29589789_memoryapi@h DB 01H
__E9C7A663_enclaveapi@h DB 01H
__D035F9F7_threadpoollegacyapiset@h DB 01H
__C899130C_threadpoolapiset@h DB 01H
__E0441EE7_jobapi@h DB 01H
__CEF86838_jobapi2@h DB 01H
__35AC6B9A_wow64apiset@h DB 01H
__C8AE41A5_libloaderapi@h DB 01H
__CC9E232D_securitybaseapi@h DB 01H
__C9D0C9B8_namespaceapi@h DB 01H
__30FF9CAD_systemtopologyapi@h DB 01H
__4D358795_processtopologyapi@h DB 01H
__40446D10_securityappcontainer@h DB 01H
__3A952EDF_realtimeapiset@h DB 01H
__F4865F4B_winerror@h DB 01H
__53C1BD93_timezoneapi@h DB 01H
__1FFBEDBF_winbase@h DB 01H
__43D3FA34_wingdi@h DB 01H
__D24A7391_tvout@h DB 01H
__7713A6C8_winuser@h DB 01H
__0B345F71_datetimeapi@h DB 01H
__9AC6960C_winnls@h DB 01H
__973A40A8_stringapiset@h DB 01H
__CC46FEE2_wincontypes@h DB 01H
__97D70BE1_consoleapi@h DB 01H
__27EC5E18_consoleapi2@h DB 01H
__262E342F_consoleapi3@h DB 01H
__641DCD70_wincon@h DB 01H
__5A96C7A7_verrsrc@h DB 01H
__B69C6FF2_winver@h DB 01H
__7AEB8C37_reason@h DB 01H
__59F1A8A9_winreg@h DB 01H
__EE0E2B7F_wnnc@h DB 01H
__DCDB7054_winnetwk@h DB 01H
__81DDEDE3_stralign@h DB 01H
__2134D1B4_winsvc@h DB 01H
__11C07376_mcx@h DB 01H
__577CE3E7_ime_cmodes@h DB 01H
__1E72C31E_imm@h DB 01H
__E15BF856_windows@h DB 01H
__DF8704F0_rpcdcep@h DB 01H
__5C6CA7BB_rpcdce@h DB 01H
__853533C4_rpcnsi@h DB 01H
__2D2406C3_rpcnterr@h DB 01H
__64521D71_rpcasync@h DB 01H
__AADCBA08_rpc@h DB 01H
__1FE431C9_rpcnsip@h DB 01H
__2B741F2D_rpcsal@h DB 01H
__92623256_rpcndr@h DB 01H
__45DED006_corecrt_malloc@h DB 01H
__FD6DBD68_corecrt_search@h DB 01H
__E2E33A61_corecrt_wstdlib@h DB 01H
__531E1E2A_limits@h DB 01H
__6E5ACABA_stdlib@h DB 01H
__9C18532E_wtypesbase@h DB 01H
__30B1AFDA_unknwnbase@h DB 01H
__328C1996_objidlbase@h DB 01H
__C4E06B6A_cguid@h DB 01H
__434718C5_combaseapi@h DB 01H
__EA2E1D6D_wtypes@h DB 01H
__DE6FDEF1_unknwn@h DB 01H
__CCE0BACC_objidl@h DB 01H
__8C7011E5_oaidl@h DB 01H
__2E0B7863_propidlbase@h DB 01H
__BF4CF2EC_coml2api@h DB 01H
__6D897344_oleidl@h DB 01H
__1129FC2C_servprov@h DB 01H
__757952E4_msxml@h DB 01H
__B1191D53_urlmon@h DB 01H
__404D1A47_propidl@h DB 01H
__A1C63593_objbase@h DB 01H
__9F7C87B7_dinput@h DB 01H
__B468A3D3_xinput@h DB 01H
__AD768F06_dbt@h DB 01H
__D83367F8_glfw_win32_platform@h DB 01H
__53CB9229_glfw_null_joystick@h DB 01H
__96BD4474_glfw_win32_joystick@h DB 01H
__7D74CEA8_glfw_win32_thread@h DB 01H
__C7421531_glfw_win32_time@h DB 01H
__43B1F397_glfw_platform@h DB 01H
__A547227D_glfw_internal@h DB 01H
__3201A73B_windowsx@h DB 01H
__19E26CFF_shellapi@h DB 01H
__6A44CDE5_win32_window@c DB 01H
msvcjmc ENDS
PUBLIC _glfwCreateWindowWin32
PUBLIC _glfwDestroyWindowWin32
PUBLIC _glfwSetWindowTitleWin32
PUBLIC _glfwSetWindowIconWin32
PUBLIC _glfwGetWindowPosWin32
PUBLIC _glfwSetWindowPosWin32
PUBLIC _glfwGetWindowSizeWin32
PUBLIC _glfwSetWindowSizeWin32
PUBLIC _glfwSetWindowSizeLimitsWin32
PUBLIC _glfwSetWindowAspectRatioWin32
PUBLIC _glfwGetFramebufferSizeWin32
PUBLIC _glfwGetWindowFrameSizeWin32
PUBLIC _glfwGetWindowContentScaleWin32
PUBLIC _glfwIconifyWindowWin32
PUBLIC _glfwRestoreWindowWin32
PUBLIC _glfwMaximizeWindowWin32
PUBLIC _glfwShowWindowWin32
PUBLIC _glfwHideWindowWin32
PUBLIC _glfwRequestWindowAttentionWin32
PUBLIC _glfwFocusWindowWin32
PUBLIC _glfwSetWindowMonitorWin32
PUBLIC _glfwWindowFocusedWin32
PUBLIC _glfwWindowIconifiedWin32
PUBLIC _glfwWindowVisibleWin32
PUBLIC _glfwWindowMaximizedWin32
PUBLIC _glfwWindowHoveredWin32
PUBLIC _glfwFramebufferTransparentWin32
PUBLIC _glfwSetWindowResizableWin32
PUBLIC _glfwSetWindowDecoratedWin32
PUBLIC _glfwSetWindowFloatingWin32
PUBLIC _glfwSetWindowMousePassthroughWin32
PUBLIC _glfwGetWindowOpacityWin32
PUBLIC _glfwSetWindowOpacityWin32
PUBLIC _glfwSetRawMouseMotionWin32
PUBLIC _glfwRawMouseMotionSupportedWin32
PUBLIC _glfwPollEventsWin32
PUBLIC _glfwWaitEventsWin32
PUBLIC _glfwWaitEventsTimeoutWin32
PUBLIC _glfwPostEmptyEventWin32
PUBLIC _glfwGetCursorPosWin32
PUBLIC _glfwSetCursorPosWin32
PUBLIC _glfwSetCursorModeWin32
PUBLIC _glfwGetScancodeNameWin32
PUBLIC _glfwGetKeyScancodeWin32
PUBLIC _glfwCreateCursorWin32
PUBLIC _glfwCreateStandardCursorWin32
PUBLIC _glfwDestroyCursorWin32
PUBLIC _glfwSetCursorWin32
PUBLIC _glfwSetClipboardStringWin32
PUBLIC _glfwGetClipboardStringWin32
PUBLIC _glfwGetEGLPlatformWin32
PUBLIC _glfwGetEGLNativeDisplayWin32
PUBLIC _glfwGetEGLNativeWindowWin32
PUBLIC _glfwGetRequiredInstanceExtensionsWin32
PUBLIC _glfwGetPhysicalDevicePresentationSupportWin32
PUBLIC _glfwCreateWindowSurfaceWin32
PUBLIC glfwGetWin32Window
PUBLIC __JustMyCode_Default
PUBLIC ??_C@_0CE@GCBEILKL@Win32?3?5Failed?5to?5create?5RGBA?5bi@ ; `string'
PUBLIC ??_C@_0CE@PKGOIGHB@Win32?3?5Failed?5to?5create?5mask?5bi@ ; `string'
PUBLIC ??_C@_0BN@HJHDCKKP@Win32?3?5Failed?5to?5create?5icon@ ; `string'
PUBLIC ??_C@_0BP@OHFKOFFD@Win32?3?5Failed?5to?5create?5cursor@ ; `string'
PUBLIC ??_C@_0CL@GPJNIICL@Win32?3?5Failed?5to?5register?5raw?5i@ ; `string'
PUBLIC ??_C@_0CJ@JFEDIEDE@Win32?3?5Failed?5to?5remove?5raw?5inp@ ; `string'
PUBLIC ??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@ ; `string'
PUBLIC ??_C@_0CJ@GILDAIDE@Win32?3?5Failed?5to?5retrieve?5raw?5i@ ; `string'
PUBLIC ??_C@_1O@IBNLCBOC@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA0@ ; `string'
PUBLIC ??_C@_1BE@LDFMCOHA@?$AAG?$AAL?$AAF?$AAW?$AA_?$AAI?$AAC?$AAO?$AAN@ ; `string'
PUBLIC ??_C@_0CH@GAPNPCHF@Win32?3?5Failed?5to?5register?5windo@ ; `string'
PUBLIC ??_C@_0BP@BFHGHOIO@Win32?3?5Failed?5to?5create?5window@ ; `string'
PUBLIC ??_C@_0BE@IGCIBFAF@Invalid?5scancode?5?$CFi@ ; `string'
PUBLIC ??_C@_0BP@KPGBLOB@Win32?3?5Unknown?5standard?5cursor@ ; `string'
PUBLIC ??_C@_0CI@LDEHPBDB@Win32?3?5Failed?5to?5create?5standar@ ; `string'
PUBLIC ??_C@_0DG@CGDLBFFB@Win32?3?5Failed?5to?5allocate?5globa@ ; `string'
PUBLIC ??_C@_0CE@OHDHEPIL@Win32?3?5Failed?5to?5lock?5global?5ha@ ; `string'
PUBLIC ??_C@_0CA@FNCFBEIG@Win32?3?5Failed?5to?5open?5clipboard@ ; `string'
PUBLIC ??_C@_0CN@FGAGPCCP@Win32?3?5Failed?5to?5convert?5clipbo@ ; `string'
PUBLIC ??_C@_0P@IENCOMCD@VK_KHR_surface@ ; `string'
PUBLIC ??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@ ; `string'
PUBLIC ??_C@_0CP@FOBJNCLA@vkGetPhysicalDeviceWin32Present@ ; `string'
PUBLIC ??_C@_0DO@PGEACBCJ@Win32?3?5Vulkan?5instance?5missing?5@ ; `string'
PUBLIC ??_C@_0BI@INMBJMIJ@vkCreateWin32SurfaceKHR@ ; `string'
PUBLIC ??_C@_0CL@LJNEEKEI@Win32?3?5Failed?5to?5create?5Vulkan?5@ ; `string'
PUBLIC ??_C@_0CA@MHMAANIG@Win32?3?5Platform?5not?5initialized@ ; `string'
PUBLIC __real@00000000
PUBLIC __real@3f800000
PUBLIC __real@405e000000000000
PUBLIC __real@408f400000000000
PUBLIC __real@42c00000
PUBLIC __real@437f0000
PUBLIC __xmm@80000000000000008000000000000000
EXTRN memset:PROC
EXTRN __imp_GetModuleHandleW:PROC
EXTRN __imp_GlobalAlloc:PROC
EXTRN __imp_GlobalUnlock:PROC
EXTRN __imp_GlobalLock:PROC
EXTRN __imp_GlobalFree:PROC
EXTRN __imp_SetThreadExecutionState:PROC
EXTRN __imp_CreateBitmap:PROC
EXTRN __imp_CreateRectRgn:PROC
EXTRN __imp_DeleteObject:PROC
EXTRN __imp_CreateDIBSection:PROC
EXTRN __imp_TrackMouseEvent:PROC
EXTRN __imp_TranslateMessage:PROC
EXTRN __imp_DispatchMessageW:PROC
EXTRN __imp_PeekMessageW:PROC
EXTRN __imp_GetMessageTime:PROC
EXTRN __imp_SendMessageW:PROC
EXTRN __imp_PostMessageW:PROC
EXTRN __imp_WaitMessage:PROC
EXTRN __imp_DefWindowProcW:PROC
EXTRN __imp_RegisterClassExW:PROC
EXTRN __imp_CreateWindowExW:PROC
EXTRN __imp_DestroyWindow:PROC
EXTRN __imp_ShowWindow:PROC
EXTRN __imp_GetLayeredWindowAttributes:PROC
EXTRN __imp_SetLayeredWindowAttributes:PROC
EXTRN __imp_FlashWindow:PROC
EXTRN __imp_MoveWindow:PROC
EXTRN __imp_SetWindowPos:PROC
EXTRN __imp_GetWindowPlacement:PROC
EXTRN __imp_SetWindowPlacement:PROC
EXTRN __imp_IsWindowVisible:PROC
EXTRN __imp_IsIconic:PROC
EXTRN __imp_BringWindowToTop:PROC
EXTRN __imp_IsZoomed:PROC
EXTRN __imp_OpenClipboard:PROC
EXTRN __imp_CloseClipboard:PROC
EXTRN __imp_SetClipboardData:PROC
EXTRN __imp_GetClipboardData:PROC
EXTRN __imp_EmptyClipboard:PROC
EXTRN __imp_SetFocus:PROC
EXTRN __imp_GetActiveWindow:PROC
EXTRN __imp_GetKeyState:PROC
EXTRN __imp_MapVirtualKeyW:PROC
EXTRN __imp_SetCapture:PROC
EXTRN __imp_ReleaseCapture:PROC
EXTRN __imp_MsgWaitForMultipleObjects:PROC
EXTRN __imp_GetSystemMetrics:PROC
EXTRN __imp_SetForegroundWindow:PROC
EXTRN __imp_GetDC:PROC
EXTRN __imp_ReleaseDC:PROC
EXTRN __imp_SetPropW:PROC
EXTRN __imp_GetPropW:PROC
EXTRN __imp_RemovePropW:PROC
EXTRN __imp_SetWindowTextW:PROC
EXTRN __imp_GetClientRect:PROC
EXTRN __imp_GetWindowRect:PROC
EXTRN __imp_AdjustWindowRectEx:PROC
EXTRN __imp_SetCursorPos:PROC
EXTRN __imp_SetCursor:PROC
EXTRN __imp_GetCursorPos:PROC
EXTRN __imp_ClientToScreen:PROC
EXTRN __imp_ScreenToClient:PROC
EXTRN __imp_WindowFromPoint:PROC
EXTRN __imp_ClipCursor:PROC
EXTRN __imp_SetRect:PROC
EXTRN __imp_OffsetRect:PROC
EXTRN __imp_PtInRect:PROC
EXTRN __imp_GetWindowLongW:PROC
EXTRN __imp_SetWindowLongW:PROC
EXTRN __imp_GetClassLongPtrW:PROC
EXTRN __imp_LoadCursorW:PROC
EXTRN __imp_DestroyIcon:PROC
EXTRN __imp_LoadImageW:PROC
EXTRN __imp_CreateIconIndirect:PROC
EXTRN __imp_SystemParametersInfoW:PROC
EXTRN __imp_MonitorFromWindow:PROC
EXTRN __imp_GetMonitorInfoW:PROC
EXTRN __imp_GetRawInputData:PROC
EXTRN __imp_RegisterRawInputDevices:PROC
EXTRN __imp_MultiByteToWideChar:PROC
EXTRN abs:PROC
EXTRN _glfwCreateWideStringFromUTF8Win32:PROC
EXTRN _glfwCreateUTF8FromWideStringWin32:PROC
EXTRN _glfwIsWindowsVersionOrGreaterWin32:PROC
EXTRN _glfwIsWindows10BuildOrGreaterWin32:PROC
EXTRN _glfwInputErrorWin32:PROC
EXTRN _glfwUpdateKeyNamesWin32:PROC
EXTRN _glfwSetVideoModeWin32:PROC
EXTRN _glfwRestoreVideoModeWin32:PROC
EXTRN _glfwGetHMONITORContentScaleWin32:PROC
EXTRN _glfwInitWGL:PROC
EXTRN _glfwCreateContextWGL:PROC
EXTRN _glfwInputWindowFocus:PROC
EXTRN _glfwInputWindowPos:PROC
EXTRN _glfwInputWindowSize:PROC
EXTRN _glfwInputFramebufferSize:PROC
EXTRN _glfwInputWindowContentScale:PROC
EXTRN _glfwInputWindowIconify:PROC
EXTRN _glfwInputWindowMaximize:PROC
EXTRN _glfwInputWindowDamage:PROC
EXTRN _glfwInputWindowCloseRequest:PROC
EXTRN _glfwInputWindowMonitor:PROC
EXTRN _glfwInputKey:PROC
EXTRN _glfwInputChar:PROC
EXTRN _glfwInputScroll:PROC
EXTRN _glfwInputMouseClick:PROC
EXTRN _glfwInputCursorPos:PROC
EXTRN _glfwInputCursorEnter:PROC
EXTRN _glfwInputDrop:PROC
EXTRN _glfwInputMonitorWindow:PROC
EXTRN _glfwInputError:PROC
EXTRN _glfwRefreshContextAttribs:PROC
EXTRN _glfwCenterCursorInContentArea:PROC
EXTRN _glfwInitEGL:PROC
EXTRN _glfwCreateContextEGL:PROC
EXTRN _glfwInitOSMesa:PROC
EXTRN _glfwCreateContextOSMesa:PROC
EXTRN _glfwGetVulkanResultString:PROC
EXTRN _glfw_min:PROC
EXTRN _glfw_calloc:PROC
EXTRN _glfw_free:PROC
EXTRN __imp_DragQueryFileW:PROC
EXTRN __imp_DragQueryPoint:PROC
EXTRN __imp_DragFinish:PROC
EXTRN __imp_DragAcceptFiles:PROC
EXTRN _RTC_CheckStackVars:PROC
EXTRN _RTC_InitBase:PROC
EXTRN _RTC_Shutdown:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN __GSHandlerCheck:PROC
EXTRN __security_check_cookie:PROC
EXTRN _glfw:BYTE
EXTRN __ImageBase:BYTE
EXTRN __security_cookie:QWORD
EXTRN _fltused:DWORD
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwCreateWindowWin32 DD imagerel $LN23
DD imagerel $LN23+527
DD imagerel $unwind$_glfwCreateWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwDestroyWindowWin32 DD imagerel $LN10
DD imagerel $LN10+309
DD imagerel $unwind$_glfwDestroyWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowTitleWin32 DD imagerel $LN4
DD imagerel $LN4+104
DD imagerel $unwind$_glfwSetWindowTitleWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowIconWin32 DD imagerel $LN8
DD imagerel $LN8+497
DD imagerel $unwind$_glfwSetWindowIconWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetWindowPosWin32 DD imagerel $LN5
DD imagerel $LN5+206
DD imagerel $unwind$_glfwGetWindowPosWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowPosWin32 DD imagerel $LN5
DD imagerel $LN5+372
DD imagerel $unwind$_glfwSetWindowPosWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetWindowSizeWin32 DD imagerel $LN5
DD imagerel $LN5+192
DD imagerel $unwind$_glfwGetWindowSizeWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowSizeWin32 DD imagerel $LN8
DD imagerel $LN8+448
DD imagerel $unwind$_glfwSetWindowSizeWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowSizeLimitsWin32 DD imagerel $LN6
DD imagerel $LN6+252
DD imagerel $unwind$_glfwSetWindowSizeLimitsWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowAspectRatioWin32 DD imagerel $LN5
DD imagerel $LN5+250
DD imagerel $unwind$_glfwSetWindowAspectRatioWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetFramebufferSizeWin32 DD imagerel $LN3
DD imagerel $LN3+77
DD imagerel $unwind$_glfwGetFramebufferSizeWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetWindowFrameSizeWin32 DD imagerel $LN9
DD imagerel $LN9+440
DD imagerel $unwind$_glfwGetWindowFrameSizeWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetWindowContentScaleWin32 DD imagerel $LN3
DD imagerel $LN3+103
DD imagerel $unwind$_glfwGetWindowContentScaleWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwIconifyWindowWin32 DD imagerel $LN3
DD imagerel $LN3+66
DD imagerel $unwind$_glfwIconifyWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwRestoreWindowWin32 DD imagerel $LN3
DD imagerel $LN3+66
DD imagerel $unwind$_glfwRestoreWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwMaximizeWindowWin32 DD imagerel $LN5
DD imagerel $LN5+104
DD imagerel $unwind$_glfwMaximizeWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwShowWindowWin32 DD imagerel $LN3
DD imagerel $LN3+66
DD imagerel $unwind$_glfwShowWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwHideWindowWin32 DD imagerel $LN3
DD imagerel $LN3+63
DD imagerel $unwind$_glfwHideWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwRequestWindowAttentionWin32 DD imagerel $LN3
DD imagerel $LN3+66
DD imagerel $unwind$_glfwRequestWindowAttentionWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwFocusWindowWin32 DD imagerel $LN3
DD imagerel $LN3+101
DD imagerel $unwind$_glfwFocusWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowMonitorWin32 DD imagerel $LN18
DD imagerel $LN18+1345
DD imagerel $unwind$_glfwSetWindowMonitorWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWindowFocusedWin32 DD imagerel $LN5
DD imagerel $LN5+91
DD imagerel $unwind$_glfwWindowFocusedWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWindowIconifiedWin32 DD imagerel $LN3
DD imagerel $LN3+61
DD imagerel $unwind$_glfwWindowIconifiedWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWindowVisibleWin32 DD imagerel $LN3
DD imagerel $LN3+61
DD imagerel $unwind$_glfwWindowVisibleWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWindowMaximizedWin32 DD imagerel $LN3
DD imagerel $LN3+61
DD imagerel $unwind$_glfwWindowMaximizedWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWindowHoveredWin32 DD imagerel $LN3
DD imagerel $LN3+53
DD imagerel $unwind$_glfwWindowHoveredWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwFramebufferTransparentWin32 DD imagerel $LN10
DD imagerel $LN10+239
DD imagerel $unwind$_glfwFramebufferTransparentWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowResizableWin32 DD imagerel $LN3
DD imagerel $LN3+57
DD imagerel $unwind$_glfwSetWindowResizableWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowDecoratedWin32 DD imagerel $LN3
DD imagerel $LN3+57
DD imagerel $unwind$_glfwSetWindowDecoratedWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowFloatingWin32 DD imagerel $LN5
DD imagerel $LN5+143
DD imagerel $unwind$_glfwSetWindowFloatingWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowMousePassthroughWin32 DD imagerel $LN9
DD imagerel $LN9+341
DD imagerel $unwind$_glfwSetWindowMousePassthroughWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetWindowOpacityWin32 DD imagerel $LN5
DD imagerel $LN5+230
DD imagerel $unwind$_glfwGetWindowOpacityWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetWindowOpacityWin32 DD imagerel $LN8
DD imagerel $LN8+278
DD imagerel $unwind$_glfwSetWindowOpacityWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetRawMouseMotionWin32 DD imagerel $LN6
DD imagerel $LN6+98
DD imagerel $unwind$_glfwSetRawMouseMotionWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwRawMouseMotionSupportedWin32 DD imagerel $LN3
DD imagerel $LN3+42
DD imagerel $unwind$_glfwRawMouseMotionSupportedWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwPollEventsWin32 DD imagerel $LN19
DD imagerel $LN19+688
DD imagerel $unwind$_glfwPollEventsWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWaitEventsWin32 DD imagerel $LN3
DD imagerel $LN3+48
DD imagerel $unwind$_glfwWaitEventsWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwWaitEventsTimeoutWin32 DD imagerel $LN3
DD imagerel $LN3+92
DD imagerel $unwind$_glfwWaitEventsTimeoutWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwPostEmptyEventWin32 DD imagerel $LN3
DD imagerel $LN3+58
DD imagerel $unwind$_glfwPostEmptyEventWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetCursorPosWin32 DD imagerel $LN6
DD imagerel $LN6+214
DD imagerel $unwind$_glfwGetCursorPosWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetCursorPosWin32 DD imagerel $LN3
DD imagerel $LN3+216
DD imagerel $unwind$_glfwSetCursorPosWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetCursorModeWin32 DD imagerel $LN16
DD imagerel $LN16+343
DD imagerel $unwind$_glfwSetCursorModeWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetScancodeNameWin32 DD imagerel $LN5
DD imagerel $LN5+148
DD imagerel $unwind$_glfwGetScancodeNameWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetKeyScancodeWin32 DD imagerel $LN3
DD imagerel $LN3+58
DD imagerel $unwind$_glfwGetKeyScancodeWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwCreateCursorWin32 DD imagerel $LN4
DD imagerel $LN4+118
DD imagerel $unwind$_glfwCreateCursorWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwCreateStandardCursorWin32 DD imagerel $LN18
DD imagerel $LN18+360
DD imagerel $unwind$_glfwCreateStandardCursorWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwDestroyCursorWin32 DD imagerel $LN4
DD imagerel $LN4+72
DD imagerel $unwind$_glfwDestroyCursorWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetCursorWin32 DD imagerel $LN4
DD imagerel $LN4+74
DD imagerel $unwind$_glfwSetCursorWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwSetClipboardStringWin32 DD imagerel $LN7
DD imagerel $LN7+327
DD imagerel $unwind$_glfwSetClipboardStringWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetClipboardStringWin32 DD imagerel $LN6
DD imagerel $LN6+226
DD imagerel $unwind$_glfwGetClipboardStringWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetEGLPlatformWin32 DD imagerel $LN15
DD imagerel $LN15+304
DD imagerel $unwind$_glfwGetEGLPlatformWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetEGLNativeDisplayWin32 DD imagerel $LN3
DD imagerel $LN3+50
DD imagerel $unwind$_glfwGetEGLNativeDisplayWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetEGLNativeWindowWin32 DD imagerel $LN3
DD imagerel $LN3+55
DD imagerel $unwind$_glfwGetEGLNativeWindowWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetRequiredInstanceExtensionsWin32 DD imagerel $LN5
DD imagerel $LN5+115
DD imagerel $unwind$_glfwGetRequiredInstanceExtensionsWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwGetPhysicalDevicePresentationSupportWin32 DD imagerel $LN4
DD imagerel $LN4+119
DD imagerel $unwind$_glfwGetPhysicalDevicePresentationSupportWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwCreateWindowSurfaceWin32 DD imagerel $LN5
DD imagerel $LN5+311
DD imagerel $unwind$_glfwCreateWindowSurfaceWin32
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getWindowStyle DD imagerel getWindowStyle
DD imagerel getWindowStyle+148
DD imagerel $unwind$getWindowStyle
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getWindowExStyle DD imagerel getWindowExStyle
DD imagerel getWindowExStyle+87
DD imagerel $unwind$getWindowExStyle
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$chooseImage DD imagerel chooseImage
DD imagerel chooseImage+207
DD imagerel $unwind$chooseImage
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$createIcon DD imagerel createIcon
DD imagerel createIcon+924
DD imagerel $unwind$createIcon
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$applyAspectRatio DD imagerel applyAspectRatio
DD imagerel applyAspectRatio+606
DD imagerel $unwind$applyAspectRatio
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$updateCursorImage DD imagerel updateCursorImage
DD imagerel updateCursorImage+148
DD imagerel $unwind$updateCursorImage
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$captureCursor DD imagerel captureCursor
DD imagerel captureCursor+210
DD imagerel $unwind$captureCursor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$releaseCursor DD imagerel releaseCursor
DD imagerel releaseCursor+56
DD imagerel $unwind$releaseCursor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$enableRawMouseMotion DD imagerel enableRawMouseMotion
DD imagerel enableRawMouseMotion+199
DD imagerel $unwind$enableRawMouseMotion
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$disableRawMouseMotion DD imagerel disableRawMouseMotion
DD imagerel disableRawMouseMotion+189
DD imagerel $unwind$disableRawMouseMotion
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$disableCursor DD imagerel disableCursor
DD imagerel disableCursor+145
DD imagerel $unwind$disableCursor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$enableCursor DD imagerel enableCursor
DD imagerel enableCursor+125
DD imagerel $unwind$enableCursor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$cursorInContentArea DD imagerel cursorInContentArea
DD imagerel cursorInContentArea+254
DD imagerel $unwind$cursorInContentArea
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$updateWindowStyles DD imagerel updateWindowStyles
DD imagerel updateWindowStyles+455
DD imagerel $unwind$updateWindowStyles
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$updateFramebufferTransparency DD imagerel updateFramebufferTransparency
DD imagerel updateFramebufferTransparency+377
DD imagerel $unwind$updateFramebufferTransparency
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getKeyMods DD imagerel getKeyMods
DD imagerel getKeyMods+251
DD imagerel $unwind$getKeyMods
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$fitToMonitor DD imagerel fitToMonitor
DD imagerel fitToMonitor+236
DD imagerel $unwind$fitToMonitor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$acquireMonitor DD imagerel acquireMonitor
DD imagerel acquireMonitor+191
DD imagerel $unwind$acquireMonitor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$releaseMonitor DD imagerel releaseMonitor
DD imagerel releaseMonitor+161
DD imagerel $unwind$releaseMonitor
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$maximizeWindowManually DD imagerel maximizeWindowManually
DD imagerel maximizeWindowManually+634
DD imagerel $unwind$maximizeWindowManually
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$windowProc DD imagerel windowProc
DD imagerel windowProc+6625
DD imagerel $unwind$windowProc
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$createNativeWindow DD imagerel createNativeWindow
DD imagerel createNativeWindow+2035
DD imagerel $unwind$createNativeWindow
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetWin32Window DD imagerel $LN5
DD imagerel $LN5+121
DD imagerel $unwind$glfwGetWin32Window
pdata ENDS
; COMDAT __xmm@80000000000000008000000000000000
CONST SEGMENT
__xmm@80000000000000008000000000000000 DB 00H, 00H, 00H, 00H, 00H, 00H, 00H
DB 080H, 00H, 00H, 00H, 00H, 00H, 00H, 00H, 080H
CONST ENDS
; COMDAT __real@437f0000
CONST SEGMENT
__real@437f0000 DD 0437f0000r ; 255
CONST ENDS
; COMDAT __real@42c00000
CONST SEGMENT
__real@42c00000 DD 042c00000r ; 96
CONST ENDS
; COMDAT __real@408f400000000000
CONST SEGMENT
__real@408f400000000000 DQ 0408f400000000000r ; 1000
CONST ENDS
; COMDAT __real@405e000000000000
CONST SEGMENT
__real@405e000000000000 DQ 0405e000000000000r ; 120
CONST ENDS
; COMDAT __real@3f800000
CONST SEGMENT
__real@3f800000 DD 03f800000r ; 1
CONST ENDS
; COMDAT __real@00000000
CONST SEGMENT
__real@00000000 DD 000000000r ; 0
CONST ENDS
; COMDAT rtc$TMZ
rtc$TMZ SEGMENT
_RTC_Shutdown.rtc$TMZ DQ FLAT:_RTC_Shutdown
rtc$TMZ ENDS
; COMDAT rtc$IMZ
rtc$IMZ SEGMENT
_RTC_InitBase.rtc$IMZ DQ FLAT:_RTC_InitBase
rtc$IMZ ENDS
; COMDAT ??_C@_0CA@MHMAANIG@Win32?3?5Platform?5not?5initialized@
CONST SEGMENT
??_C@_0CA@MHMAANIG@Win32?3?5Platform?5not?5initialized@ DB 'Win32: Platfo'
DB 'rm not initialized', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CL@LJNEEKEI@Win32?3?5Failed?5to?5create?5Vulkan?5@
CONST SEGMENT
??_C@_0CL@LJNEEKEI@Win32?3?5Failed?5to?5create?5Vulkan?5@ DB 'Win32: Fail'
DB 'ed to create Vulkan surface: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BI@INMBJMIJ@vkCreateWin32SurfaceKHR@
CONST SEGMENT
??_C@_0BI@INMBJMIJ@vkCreateWin32SurfaceKHR@ DB 'vkCreateWin32SurfaceKHR', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0DO@PGEACBCJ@Win32?3?5Vulkan?5instance?5missing?5@
CONST SEGMENT
??_C@_0DO@PGEACBCJ@Win32?3?5Vulkan?5instance?5missing?5@ DB 'Win32: Vulka'
DB 'n instance missing VK_KHR_win32_surface extension', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CP@FOBJNCLA@vkGetPhysicalDeviceWin32Present@
CONST SEGMENT
??_C@_0CP@FOBJNCLA@vkGetPhysicalDeviceWin32Present@ DB 'vkGetPhysicalDevi'
DB 'ceWin32PresentationSupportKHR', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@
CONST SEGMENT
??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@ DB 'VK_KHR_win32_surface', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0P@IENCOMCD@VK_KHR_surface@
CONST SEGMENT
??_C@_0P@IENCOMCD@VK_KHR_surface@ DB 'VK_KHR_surface', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CN@FGAGPCCP@Win32?3?5Failed?5to?5convert?5clipbo@
CONST SEGMENT
??_C@_0CN@FGAGPCCP@Win32?3?5Failed?5to?5convert?5clipbo@ DB 'Win32: Faile'
DB 'd to convert clipboard to string', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CA@FNCFBEIG@Win32?3?5Failed?5to?5open?5clipboard@
CONST SEGMENT
??_C@_0CA@FNCFBEIG@Win32?3?5Failed?5to?5open?5clipboard@ DB 'Win32: Faile'
DB 'd to open clipboard', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CE@OHDHEPIL@Win32?3?5Failed?5to?5lock?5global?5ha@
CONST SEGMENT
??_C@_0CE@OHDHEPIL@Win32?3?5Failed?5to?5lock?5global?5ha@ DB 'Win32: Fail'
DB 'ed to lock global handle', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0DG@CGDLBFFB@Win32?3?5Failed?5to?5allocate?5globa@
CONST SEGMENT
??_C@_0DG@CGDLBFFB@Win32?3?5Failed?5to?5allocate?5globa@ DB 'Win32: Faile'
DB 'd to allocate global handle for clipboard', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CI@LDEHPBDB@Win32?3?5Failed?5to?5create?5standar@
CONST SEGMENT
??_C@_0CI@LDEHPBDB@Win32?3?5Failed?5to?5create?5standar@ DB 'Win32: Faile'
DB 'd to create standard cursor', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BP@KPGBLOB@Win32?3?5Unknown?5standard?5cursor@
CONST SEGMENT
??_C@_0BP@KPGBLOB@Win32?3?5Unknown?5standard?5cursor@ DB 'Win32: Unknown '
DB 'standard cursor', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BE@IGCIBFAF@Invalid?5scancode?5?$CFi@
CONST SEGMENT
??_C@_0BE@IGCIBFAF@Invalid?5scancode?5?$CFi@ DB 'Invalid scancode %i', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BP@BFHGHOIO@Win32?3?5Failed?5to?5create?5window@
CONST SEGMENT
??_C@_0BP@BFHGHOIO@Win32?3?5Failed?5to?5create?5window@ DB 'Win32: Failed'
DB ' to create window', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CH@GAPNPCHF@Win32?3?5Failed?5to?5register?5windo@
CONST SEGMENT
??_C@_0CH@GAPNPCHF@Win32?3?5Failed?5to?5register?5windo@ DB 'Win32: Faile'
DB 'd to register window class', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BE@LDFMCOHA@?$AAG?$AAL?$AAF?$AAW?$AA_?$AAI?$AAC?$AAO?$AAN@
CONST SEGMENT
??_C@_1BE@LDFMCOHA@?$AAG?$AAL?$AAF?$AAW?$AA_?$AAI?$AAC?$AAO?$AAN@ DB 'G', 00H
DB 'L', 00H, 'F', 00H, 'W', 00H, '_', 00H, 'I', 00H, 'C', 00H, 'O'
DB 00H, 'N', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1O@IBNLCBOC@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA0@
CONST SEGMENT
??_C@_1O@IBNLCBOC@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA0@ DB 'G', 00H, 'L', 00H, 'F'
DB 00H, 'W', 00H, '3', 00H, '0', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CJ@GILDAIDE@Win32?3?5Failed?5to?5retrieve?5raw?5i@
CONST SEGMENT
??_C@_0CJ@GILDAIDE@Win32?3?5Failed?5to?5retrieve?5raw?5i@ DB 'Win32: Fail'
DB 'ed to retrieve raw input data', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@
CONST SEGMENT
??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@ DB 'G', 00H, 'L', 00H, 'F', 00H, 'W'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CJ@JFEDIEDE@Win32?3?5Failed?5to?5remove?5raw?5inp@
CONST SEGMENT
??_C@_0CJ@JFEDIEDE@Win32?3?5Failed?5to?5remove?5raw?5inp@ DB 'Win32: Fail'
DB 'ed to remove raw input device', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CL@GPJNIICL@Win32?3?5Failed?5to?5register?5raw?5i@
CONST SEGMENT
??_C@_0CL@GPJNIICL@Win32?3?5Failed?5to?5register?5raw?5i@ DB 'Win32: Fail'
DB 'ed to register raw input device', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BP@OHFKOFFD@Win32?3?5Failed?5to?5create?5cursor@
CONST SEGMENT
??_C@_0BP@OHFKOFFD@Win32?3?5Failed?5to?5create?5cursor@ DB 'Win32: Failed'
DB ' to create cursor', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BN@HJHDCKKP@Win32?3?5Failed?5to?5create?5icon@
CONST SEGMENT
??_C@_0BN@HJHDCKKP@Win32?3?5Failed?5to?5create?5icon@ DB 'Win32: Failed t'
DB 'o create icon', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CE@PKGOIGHB@Win32?3?5Failed?5to?5create?5mask?5bi@
CONST SEGMENT
??_C@_0CE@PKGOIGHB@Win32?3?5Failed?5to?5create?5mask?5bi@ DB 'Win32: Fail'
DB 'ed to create mask bitmap', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CE@GCBEILKL@Win32?3?5Failed?5to?5create?5RGBA?5bi@
CONST SEGMENT
??_C@_0CE@GCBEILKL@Win32?3?5Failed?5to?5create?5RGBA?5bi@ DB 'Win32: Fail'
DB 'ed to create RGBA bitmap', 00H ; `string'
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetWin32Window DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 041H
DW 07d9H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$createNativeWindow DD 065064819H
DD 0119631eH
DD 070120098H
DD 050106011H
DD imagerel __GSHandlerCheck
DD 04b8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
createNativeWindow$rtcName$0 DB 077H
DB 063H
DB 00H
ORG $+1
createNativeWindow$rtcName$1 DB 06dH
DB 069H
DB 00H
ORG $+1
createNativeWindow$rtcName$2 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+3
createNativeWindow$rtcName$3 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+3
createNativeWindow$rtcName$4 DB 077H
DB 070H
DB 00H
ORG $+1
createNativeWindow$rtcName$5 DB 078H
DB 073H
DB 063H
DB 061H
DB 06cH
DB 065H
DB 00H
ORG $+1
createNativeWindow$rtcName$6 DB 079H
DB 073H
DB 063H
DB 061H
DB 06cH
DB 065H
DB 00H
ORG $+1
createNativeWindow$rtcName$7 DB 06dH
DB 069H
DB 00H
ORG $+1
createNativeWindow$rtcVarDesc DD 0308H
DD 028H
DQ FLAT:createNativeWindow$rtcName$7
DD 02e4H
DD 04H
DQ FLAT:createNativeWindow$rtcName$6
DD 02c4H
DD 04H
DQ FLAT:createNativeWindow$rtcName$5
DD 0258H
DD 02cH
DQ FLAT:createNativeWindow$rtcName$4
DD 0228H
DD 010H
DQ FLAT:createNativeWindow$rtcName$3
DD 01f8H
DD 010H
DQ FLAT:createNativeWindow$rtcName$2
DD 01b8H
DD 028H
DQ FLAT:createNativeWindow$rtcName$1
DD 0150H
DD 050H
DQ FLAT:createNativeWindow$rtcName$0
ORG $+384
createNativeWindow$rtcFrameData DD 08H
DD 00H
DQ FLAT:createNativeWindow$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 044H
DW 017a4H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$windowProc DD 045054b19H
DD 011c4321H
DD 070150135H
DD 05014H
DD imagerel __GSHandlerCheck
DD 0990H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
windowProc$rtcName$0 DB 06eH
DB 065H
DB 078H
DB 074H
DB 00H
ORG $+3
windowProc$rtcName$1 DB 074H
DB 06dH
DB 065H
DB 00H
windowProc$rtcName$2 DB 073H
DB 069H
DB 07aH
DB 065H
DB 00H
ORG $+3
windowProc$rtcName$3 DB 066H
DB 072H
DB 061H
DB 06dH
DB 065H
DB 00H
ORG $+2
windowProc$rtcName$4 DB 06dH
DB 069H
DB 00H
ORG $+1
windowProc$rtcName$5 DB 073H
DB 06fH
DB 075H
DB 072H
DB 063H
DB 065H
DB 00H
ORG $+1
windowProc$rtcName$6 DB 074H
DB 061H
DB 072H
DB 067H
DB 065H
DB 074H
DB 00H
ORG $+1
windowProc$rtcName$7 DB 070H
DB 074H
DB 00H
ORG $+13
windowProc$rtcVarDesc DD 05d8H
DD 08H
DQ FLAT:windowProc$rtcName$7
DD 0508H
DD 010H
DQ FLAT:windowProc$rtcName$6
DD 04d8H
DD 010H
DQ FLAT:windowProc$rtcName$5
DD 0478H
DD 028H
DQ FLAT:windowProc$rtcName$4
DD 03e8H
DD 010H
DQ FLAT:windowProc$rtcName$3
DD 02c4H
DD 04H
DQ FLAT:windowProc$rtcName$2
DD 0258H
DD 018H
DQ FLAT:windowProc$rtcName$1
DD 0148H
DD 030H
DQ FLAT:windowProc$rtcName$0
ORG $+384
windowProc$rtcFrameData DD 08H
DD 00H
DQ FLAT:windowProc$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 037H
DW 0260H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$maximizeWindowManually DD 045063e19H
DD 010f4314H
DD 07008003aH
DD 050066007H
DD imagerel __GSHandlerCheck
DD 01c8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
maximizeWindowManually$rtcName$0 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+3
maximizeWindowManually$rtcName$1 DB 06dH
DB 069H
DB 00H
ORG $+5
maximizeWindowManually$rtcVarDesc DD 098H
DD 028H
DQ FLAT:maximizeWindowManually$rtcName$1
DD 048H
DD 010H
DQ FLAT:maximizeWindowManually$rtcName$0
ORG $+96
maximizeWindowManually$rtcFrameData DD 02H
DD 00H
DQ FLAT:maximizeWindowManually$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$releaseMonitor DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$acquireMonitor DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0d3H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$fitToMonitor DD 045053d19H
DD 010e4313H
DD 070070029H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0138H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
fitToMonitor$rtcName$0 DB 06dH
DB 069H
DB 00H
ORG $+13
fitToMonitor$rtcVarDesc DD 048H
DD 028H
DQ FLAT:fitToMonitor$rtcName$0
ORG $+48
fitToMonitor$rtcFrameData DD 01H
DD 00H
DQ FLAT:fitToMonitor$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getKeyMods DD 025050f01H
DD 010a230fH
DD 070030021H
DD 05002H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 036H
DW 0160H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$updateFramebufferTransparency DD 025053d19H
DD 010e2313H
DD 070070039H
DD 05006H
DD imagerel __GSHandlerCheck
DD 01b8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
updateFramebufferTransparency$rtcName$0 DB 063H
DB 06fH
DB 06dH
DB 070H
DB 06fH
DB 073H
DB 069H
DB 074H
DB 069H
DB 06fH
DB 06eH
DB 00H
updateFramebufferTransparency$rtcName$1 DB 06fH
DB 070H
DB 061H
DB 071H
DB 075H
DB 065H
DB 00H
ORG $+1
updateFramebufferTransparency$rtcName$2 DB 063H
DB 06fH
DB 06cH
DB 06fH
DB 072H
DB 00H
ORG $+2
updateFramebufferTransparency$rtcName$3 DB 062H
DB 062H
DB 00H
ORG $+1
updateFramebufferTransparency$rtcName$4 DB 062H
DB 062H
DB 00H
ORG $+13
updateFramebufferTransparency$rtcVarDesc DD 0d8H
DD 018H
DQ FLAT:updateFramebufferTransparency$rtcName$4
DD 0a8H
DD 018H
DQ FLAT:updateFramebufferTransparency$rtcName$3
DD 064H
DD 04H
DQ FLAT:updateFramebufferTransparency$rtcName$2
DD 044H
DD 04H
DQ FLAT:updateFramebufferTransparency$rtcName$1
DD 024H
DD 04H
DQ FLAT:updateFramebufferTransparency$rtcName$0
ORG $+240
updateFramebufferTransparency$rtcFrameData DD 05H
DD 00H
DQ FLAT:updateFramebufferTransparency$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 036H
DW 01aeH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$updateWindowStyles DD 045053d19H
DD 010e4313H
DD 07007002bH
DD 05006H
DD imagerel __GSHandlerCheck
DD 0148H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
updateWindowStyles$rtcName$0 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+11
updateWindowStyles$rtcVarDesc DD 048H
DD 010H
DQ FLAT:updateWindowStyles$rtcName$0
ORG $+48
updateWindowStyles$rtcFrameData DD 01H
DD 00H
DQ FLAT:updateWindowStyles$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0e5H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$cursorInContentArea DD 025053d19H
DD 010e2313H
DD 070070027H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0128H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
cursorInContentArea$rtcName$0 DB 061H
DB 072H
DB 065H
DB 061H
DB 00H
ORG $+3
cursorInContentArea$rtcName$1 DB 070H
DB 06fH
DB 073H
DB 00H
ORG $+4
cursorInContentArea$rtcVarDesc DD 058H
DD 08H
DQ FLAT:cursorInContentArea$rtcName$1
DD 028H
DD 010H
DQ FLAT:cursorInContentArea$rtcName$0
ORG $+96
cursorInContentArea$rtcFrameData DD 02H
DD 00H
DQ FLAT:cursorInContentArea$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$enableCursor DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$disableCursor DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0a4H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$disableRawMouseMotion DD 025053d19H
DD 010e2313H
DD 070070023H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0108H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
disableRawMouseMotion$rtcName$0 DB 072H
DB 069H
DB 064H
DB 00H
ORG $+12
disableRawMouseMotion$rtcVarDesc DD 028H
DD 010H
DQ FLAT:disableRawMouseMotion$rtcName$0
ORG $+48
disableRawMouseMotion$rtcFrameData DD 01H
DD 00H
DQ FLAT:disableRawMouseMotion$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0aeH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$enableRawMouseMotion DD 025053d19H
DD 010e2313H
DD 070070023H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0108H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
enableRawMouseMotion$rtcName$0 DB 072H
DB 069H
DB 064H
DB 00H
ORG $+12
enableRawMouseMotion$rtcVarDesc DD 028H
DD 010H
DQ FLAT:enableRawMouseMotion$rtcName$0
ORG $+48
enableRawMouseMotion$rtcFrameData DD 01H
DD 00H
DQ FLAT:enableRawMouseMotion$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$releaseCursor DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0b9H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$captureCursor DD 025053d19H
DD 010e2313H
DD 070070023H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0108H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
captureCursor$rtcName$0 DB 063H
DB 06cH
DB 069H
DB 070H
DB 052H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+7
captureCursor$rtcVarDesc DD 028H
DD 010H
DQ FLAT:captureCursor$rtcName$0
ORG $+48
captureCursor$rtcFrameData DD 01H
DD 00H
DQ FLAT:captureCursor$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$updateCursorImage DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03fH
DW 0245H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$applyAspectRatio DD 035054619H
DD 0117331cH
DD 070100031H
DD 0500fH
DD imagerel __GSHandlerCheck
DD 0178H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
applyAspectRatio$rtcName$0 DB 066H
DB 072H
DB 061H
DB 06dH
DB 065H
DB 00H
ORG $+10
applyAspectRatio$rtcVarDesc DD 038H
DD 010H
DQ FLAT:applyAspectRatio$rtcName$0
ORG $+48
applyAspectRatio$rtcFrameData DD 01H
DD 00H
DQ FLAT:applyAspectRatio$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 044H
DW 0383H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$createIcon DD 035054b19H
DD 011c3321H
DD 070150057H
DD 05014H
DD imagerel __GSHandlerCheck
DD 02a8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
createIcon$rtcName$0 DB 062H
DB 069H
DB 00H
ORG $+1
createIcon$rtcName$1 DB 069H
DB 069H
DB 00H
ORG $+1
createIcon$rtcName$2 DB 074H
DB 061H
DB 072H
DB 067H
DB 065H
DB 074H
DB 00H
ORG $+1
createIcon$rtcVarDesc DD 01b8H
DD 08H
DQ FLAT:createIcon$rtcName$2
DD 0178H
DD 020H
DQ FLAT:createIcon$rtcName$1
DD 0e0H
DD 07cH
DQ FLAT:createIcon$rtcName$0
ORG $+144
createIcon$rtcFrameData DD 03H
DD 00H
DQ FLAT:createIcon$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$chooseImage DD 025052101H
DD 011c2321H
DD 07015002dH
DD 05014H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getWindowExStyle DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getWindowStyle DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 045H
DW 011eH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwCreateWindowSurfaceWin32 DD 025054c19H
DD 011d2322H
DD 07016002dH
DD 05015H
DD imagerel __GSHandlerCheck
DD 0158H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwCreateWindowSurfaceWin32$rtcName$0 DB 073H
DB 063H
DB 069H
DB 00H
ORG $+12
_glfwCreateWindowSurfaceWin32$rtcVarDesc DD 048H
DD 028H
DQ FLAT:_glfwCreateWindowSurfaceWin32$rtcName$0
ORG $+48
_glfwCreateWindowSurfaceWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwCreateWindowSurfaceWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetPhysicalDevicePresentationSupportWin32 DD 025051d01H
DD 0118231dH
DD 070110021H
DD 05010H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetRequiredInstanceExtensionsWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetEGLNativeWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetEGLNativeDisplayWin32 DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetEGLPlatformWin32 DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetClipboardStringWin32 DD 025050f01H
DD 010a230fH
DD 070030025H
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetClipboardStringWin32 DD 035051301H
DD 010e3313H
DD 07007002bH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetCursorWin32 DD 025051801H
DD 01132318H
DD 0700c001dH
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwDestroyCursorWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwCreateStandardCursorWin32 DD 035051701H
DD 01123317H
DD 0700b0023H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwCreateCursorWin32 DD 025052201H
DD 011d2322H
DD 07016001dH
DD 05015H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetKeyScancodeWin32 DD 025051201H
DD 010d2312H
DD 07006001dH
DD 05005H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetScancodeNameWin32 DD 025051201H
DD 010d2312H
DD 07006001dH
DD 05005H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetCursorModeWin32 DD 025051701H
DD 01122317H
DD 0700b001dH
DD 0500aH
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 042H
DB 0bfH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetCursorPosWin32 DD 025054919H
DD 011a231fH
DD 070130021H
DD 05012H
DD imagerel __GSHandlerCheck
DD 0f8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetCursorPosWin32$rtcName$0 DB 070H
DB 06fH
DB 073H
DB 00H
ORG $+12
_glfwSetCursorPosWin32$rtcVarDesc DD 028H
DD 08H
DQ FLAT:_glfwSetCursorPosWin32$rtcName$0
ORG $+48
_glfwSetCursorPosWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwSetCursorPosWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 040H
DB 0bdH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetCursorPosWin32 DD 025054719H
DD 0118231dH
DD 070110021H
DD 05010H
DD imagerel __GSHandlerCheck
DD 0f8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwGetCursorPosWin32$rtcName$0 DB 070H
DB 06fH
DB 073H
DB 00H
ORG $+12
_glfwGetCursorPosWin32$rtcVarDesc DD 028H
DD 08H
DQ FLAT:_glfwGetCursorPosWin32$rtcName$0
ORG $+48
_glfwGetCursorPosWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwGetCursorPosWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwPostEmptyEventWin32 DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWaitEventsTimeoutWin32 DD 035051401H
DD 010f3314H
DD 07008001fH
DD 05007H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWaitEventsWin32 DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 02aH
DW 0297H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwPollEventsWin32 DD 035053119H
DD 010a330fH
DD 070030051H
DD 05002H
DD imagerel __GSHandlerCheck
DD 0278H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwPollEventsWin32$rtcName$0 DB 06dH
DB 073H
DB 067H
DB 00H
_glfwPollEventsWin32$rtcName$1 DB 06bH
DB 065H
DB 079H
DB 073H
DB 00H
ORG $+3
_glfwPollEventsWin32$rtcName$2 DB 077H
DB 069H
DB 064H
DB 074H
DB 068H
DB 00H
ORG $+2
_glfwPollEventsWin32$rtcName$3 DB 068H
DB 065H
DB 069H
DB 067H
DB 068H
DB 074H
DB 00H
ORG $+5
_glfwPollEventsWin32$rtcVarDesc DD 01a4H
DD 04H
DQ FLAT:_glfwPollEventsWin32$rtcName$3
DD 0184H
DD 04H
DQ FLAT:_glfwPollEventsWin32$rtcName$2
DD 0e8H
DD 020H
DQ FLAT:_glfwPollEventsWin32$rtcName$1
DD 038H
DD 030H
DQ FLAT:_glfwPollEventsWin32$rtcName$0
ORG $+192
_glfwPollEventsWin32$rtcFrameData DD 04H
DD 00H
DQ FLAT:_glfwPollEventsWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwRawMouseMotionSupportedWin32 DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetRawMouseMotionWin32 DD 025051701H
DD 01122317H
DD 0700b001dH
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowOpacityWin32 DD 025051901H
DD 01142319H
DD 0700d0025H
DD 0500cH
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0cdH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetWindowOpacityWin32 DD 035053d19H
DD 010e3313H
DD 070070027H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0128H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwGetWindowOpacityWin32$rtcName$0 DB 061H
DB 06cH
DB 070H
DB 068H
DB 061H
DB 00H
ORG $+2
_glfwGetWindowOpacityWin32$rtcName$1 DB 066H
DB 06cH
DB 061H
DB 067H
DB 073H
DB 00H
ORG $+2
_glfwGetWindowOpacityWin32$rtcVarDesc DD 054H
DD 04H
DQ FLAT:_glfwGetWindowOpacityWin32$rtcName$1
DD 034H
DD 01H
DQ FLAT:_glfwGetWindowOpacityWin32$rtcName$0
ORG $+96
_glfwGetWindowOpacityWin32$rtcFrameData DD 02H
DD 00H
DQ FLAT:_glfwGetWindowOpacityWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03aH
DW 013cH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowMousePassthroughWin32 DD 025054119H
DD 01122317H
DD 0700b002dH
DD 0500aH
DD imagerel __GSHandlerCheck
DD 0158H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetWindowMousePassthroughWin32$rtcName$0 DB 06bH
DB 065H
DB 079H
DB 00H
_glfwSetWindowMousePassthroughWin32$rtcName$1 DB 061H
DB 06cH
DB 070H
DB 068H
DB 061H
DB 00H
ORG $+2
_glfwSetWindowMousePassthroughWin32$rtcName$2 DB 066H
DB 06cH
DB 061H
DB 067H
DB 073H
DB 00H
ORG $+14
_glfwSetWindowMousePassthroughWin32$rtcVarDesc DD 064H
DD 04H
DQ FLAT:_glfwSetWindowMousePassthroughWin32$rtcName$2
DD 044H
DD 01H
DQ FLAT:_glfwSetWindowMousePassthroughWin32$rtcName$1
DD 024H
DD 04H
DQ FLAT:_glfwSetWindowMousePassthroughWin32$rtcName$0
ORG $+144
_glfwSetWindowMousePassthroughWin32$rtcFrameData DD 03H
DD 00H
DQ FLAT:_glfwSetWindowMousePassthroughWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowFloatingWin32 DD 045051701H
DD 01124317H
DD 0700b0025H
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowDecoratedWin32 DD 025051701H
DD 01122317H
DD 0700b001dH
DD 0500aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowResizableWin32 DD 025051701H
DD 01122317H
DD 0700b001dH
DD 0500aH
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 036H
DB 0d6H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwFramebufferTransparentWin32 DD 025053d19H
DD 010e2313H
DD 070070029H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0138H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwFramebufferTransparentWin32$rtcName$0 DB 063H
DB 06fH
DB 06dH
DB 070H
DB 06fH
DB 073H
DB 069H
DB 074H
DB 069H
DB 06fH
DB 06eH
DB 00H
_glfwFramebufferTransparentWin32$rtcName$1 DB 06fH
DB 070H
DB 061H
DB 071H
DB 075H
DB 065H
DB 00H
ORG $+1
_glfwFramebufferTransparentWin32$rtcName$2 DB 063H
DB 06fH
DB 06cH
DB 06fH
DB 072H
DB 00H
ORG $+6
_glfwFramebufferTransparentWin32$rtcVarDesc DD 064H
DD 04H
DQ FLAT:_glfwFramebufferTransparentWin32$rtcName$2
DD 044H
DD 04H
DQ FLAT:_glfwFramebufferTransparentWin32$rtcName$1
DD 024H
DD 04H
DQ FLAT:_glfwFramebufferTransparentWin32$rtcName$0
ORG $+144
_glfwFramebufferTransparentWin32$rtcFrameData DD 03H
DD 00H
DQ FLAT:_glfwFramebufferTransparentWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWindowHoveredWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWindowMaximizedWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWindowVisibleWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWindowIconifiedWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwWindowFocusedWin32 DD 025051301H
DD 010e2313H
DD 07007001fH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 045H
DW 0528H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowMonitorWin32 DD 045054c19H
DD 011d4322H
DD 07016004bH
DD 05015H
DD imagerel __GSHandlerCheck
DD 0240H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetWindowMonitorWin32$rtcName$0 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+3
_glfwSetWindowMonitorWin32$rtcName$1 DB 06dH
DB 069H
DB 00H
ORG $+1
_glfwSetWindowMonitorWin32$rtcName$2 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+15
_glfwSetWindowMonitorWin32$rtcVarDesc DD 0118H
DD 010H
DQ FLAT:_glfwSetWindowMonitorWin32$rtcName$2
DD 078H
DD 028H
DQ FLAT:_glfwSetWindowMonitorWin32$rtcName$1
DD 048H
DD 010H
DQ FLAT:_glfwSetWindowMonitorWin32$rtcName$0
ORG $+144
_glfwSetWindowMonitorWin32$rtcFrameData DD 03H
DD 00H
DQ FLAT:_glfwSetWindowMonitorWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwFocusWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwRequestWindowAttentionWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwHideWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwShowWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwMaximizeWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwRestoreWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwIconifyWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetWindowContentScaleWin32 DD 025051d01H
DD 0118231dH
DD 070110021H
DD 05010H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 045H
DW 019fH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetWindowFrameSizeWin32 DD 035054c19H
DD 011d3322H
DD 07016002fH
DD 05015H
DD imagerel __GSHandlerCheck
DD 0160H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwGetWindowFrameSizeWin32$rtcName$0 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+3
_glfwGetWindowFrameSizeWin32$rtcName$1 DB 077H
DB 069H
DB 064H
DB 074H
DB 068H
DB 00H
ORG $+2
_glfwGetWindowFrameSizeWin32$rtcName$2 DB 068H
DB 065H
DB 069H
DB 067H
DB 068H
DB 074H
DB 00H
ORG $+9
_glfwGetWindowFrameSizeWin32$rtcVarDesc DD 084H
DD 04H
DQ FLAT:_glfwGetWindowFrameSizeWin32$rtcName$2
DD 064H
DD 04H
DQ FLAT:_glfwGetWindowFrameSizeWin32$rtcName$1
DD 038H
DD 010H
DQ FLAT:_glfwGetWindowFrameSizeWin32$rtcName$0
ORG $+144
_glfwGetWindowFrameSizeWin32$rtcFrameData DD 03H
DD 00H
DQ FLAT:_glfwGetWindowFrameSizeWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetFramebufferSizeWin32 DD 025051d01H
DD 0118231dH
DD 07011001dH
DD 05010H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 03fH
DB 0e1H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowAspectRatioWin32 DD 035054619H
DD 0117331cH
DD 070100025H
DD 0500fH
DD imagerel __GSHandlerCheck
DD 0118H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetWindowAspectRatioWin32$rtcName$0 DB 061H
DB 072H
DB 065H
DB 061H
DB 00H
ORG $+11
_glfwSetWindowAspectRatioWin32$rtcVarDesc DD 038H
DD 010H
DQ FLAT:_glfwSetWindowAspectRatioWin32$rtcName$0
ORG $+48
_glfwSetWindowAspectRatioWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwSetWindowAspectRatioWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 044H
DB 0e3H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowSizeLimitsWin32 DD 035054b19H
DD 011c3321H
DD 070150025H
DD 05014H
DD imagerel __GSHandlerCheck
DD 0118H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetWindowSizeLimitsWin32$rtcName$0 DB 061H
DB 072H
DB 065H
DB 061H
DB 00H
ORG $+11
_glfwSetWindowSizeLimitsWin32$rtcVarDesc DD 038H
DD 010H
DQ FLAT:_glfwSetWindowSizeLimitsWin32$rtcName$0
ORG $+48
_glfwSetWindowSizeLimitsWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwSetWindowSizeLimitsWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03fH
DW 01a7H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowSizeWin32 DD 045054619H
DD 0117431cH
DD 070100029H
DD 0500fH
DD imagerel __GSHandlerCheck
DD 0130H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetWindowSizeWin32$rtcName$0 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+11
_glfwSetWindowSizeWin32$rtcVarDesc DD 048H
DD 010H
DQ FLAT:_glfwSetWindowSizeWin32$rtcName$0
ORG $+48
_glfwSetWindowSizeWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwSetWindowSizeWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 040H
DB 0a7H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetWindowSizeWin32 DD 025054719H
DD 0118231dH
DD 070110023H
DD 05010H
DD imagerel __GSHandlerCheck
DD 0108H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwGetWindowSizeWin32$rtcName$0 DB 061H
DB 072H
DB 065H
DB 061H
DB 00H
ORG $+11
_glfwGetWindowSizeWin32$rtcVarDesc DD 028H
DD 010H
DQ FLAT:_glfwGetWindowSizeWin32$rtcName$0
ORG $+48
_glfwGetWindowSizeWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwGetWindowSizeWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 03fH
DW 015bH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowPosWin32 DD 045054619H
DD 0117431cH
DD 070100029H
DD 0500fH
DD imagerel __GSHandlerCheck
DD 0130H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwSetWindowPosWin32$rtcName$0 DB 072H
DB 065H
DB 063H
DB 074H
DB 00H
ORG $+11
_glfwSetWindowPosWin32$rtcVarDesc DD 048H
DD 010H
DQ FLAT:_glfwSetWindowPosWin32$rtcName$0
ORG $+48
_glfwSetWindowPosWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwSetWindowPosWin32$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 040H
DB 0b5H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwGetWindowPosWin32 DD 025054719H
DD 0118231dH
DD 070110021H
DD 05010H
DD imagerel __GSHandlerCheck
DD 0f8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwGetWindowPosWin32$rtcName$0 DB 070H
DB 06fH
DB 073H
DB 00H
ORG $+12
_glfwGetWindowPosWin32$rtcVarDesc DD 028H
DD 08H
DQ FLAT:_glfwGetWindowPosWin32$rtcName$0
ORG $+48
_glfwGetWindowPosWin32$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwGetWindowPosWin32$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowIconWin32 DD 025051c01H
DD 0117231cH
DD 07010002dH
DD 0500fH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwSetWindowTitleWin32 DD 025051801H
DD 01132318H
DD 0700c0021H
DD 0500bH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwDestroyWindowWin32 DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwCreateWindowWin32 DD 025052201H
DD 011d2322H
DD 07016001dH
DD 05015H
xdata ENDS
; Function compile flags: /Odt
; COMDAT __JustMyCode_Default
_TEXT SEGMENT
__JustMyCode_Default PROC ; COMDAT
00000 c2 00 00 ret 0
__JustMyCode_Default ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT glfwGetWin32Window
_TEXT SEGMENT
window$ = 8
handle$ = 256
glfwGetWin32Window PROC ; COMDAT
; 2489 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2490 : _GLFWwindow* window = (_GLFWwindow*) handle;
0001f 48 8b 85 00 01
00 00 mov rax, QWORD PTR handle$[rbp]
00026 48 89 45 08 mov QWORD PTR window$[rbp], rax
; 2491 : _GLFW_REQUIRE_INIT_OR_RETURN(NULL);
0002a 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00031 75 10 jne SHORT $LN2@glfwGetWin
00033 33 d2 xor edx, edx
00035 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0003a e8 00 00 00 00 call _glfwInputError
0003f 33 c0 xor eax, eax
00041 eb 2c jmp SHORT $LN1@glfwGetWin
$LN2@glfwGetWin:
; 2492 :
; 2493 : if (_glfw.platform.platformID != GLFW_PLATFORM_WIN32)
00043 81 3d 28 00 00
00 01 00 06 00 cmp DWORD PTR _glfw+40, 393217 ; 00060001H
0004d 74 15 je SHORT $LN3@glfwGetWin
; 2494 : {
; 2495 : _glfwInputError(GLFW_PLATFORM_UNAVAILABLE,
0004f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CA@MHMAANIG@Win32?3?5Platform?5not?5initialized@
00056 b9 0e 00 01 00 mov ecx, 65550 ; 0001000eH
0005b e8 00 00 00 00 call _glfwInputError
; 2496 : "Win32: Platform not initialized");
; 2497 : return NULL;
00060 33 c0 xor eax, eax
00062 eb 0b jmp SHORT $LN1@glfwGetWin
$LN3@glfwGetWin:
; 2498 : }
; 2499 :
; 2500 : return window->win32.handle;
00064 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00068 48 8b 80 58 03
00 00 mov rax, QWORD PTR [rax+856]
$LN1@glfwGetWin:
; 2501 : }
0006f 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00076 5f pop rdi
00077 5d pop rbp
00078 c3 ret 0
glfwGetWin32Window ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT createNativeWindow
_TEXT SEGMENT
frameX$ = 4
frameY$ = 36
frameWidth$ = 68
frameHeight$ = 100
wideTitle$ = 136
style$ = 164
exStyle$ = 196
wc$11 = 240
mi$12 = 344
rect$13 = 408
rect$14 = 456
wp$15 = 504
mh$16 = 584
xscale$17 = 612
yscale$18 = 644
mi$19 = 680
__$ArrayPad$ = 1112
window$ = 1152
wndconfig$ = 1160
fbconfig$ = 1168
createNativeWindow PROC ; COMDAT
; 1255 : {
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 56 push rsi
00011 57 push rdi
00012 48 81 ec c0 04
00 00 sub rsp, 1216 ; 000004c0H
00019 48 8d 6c 24 60 lea rbp, QWORD PTR [rsp+96]
0001e 48 8d 7c 24 60 lea rdi, QWORD PTR [rsp+96]
00023 b9 b8 00 00 00 mov ecx, 184 ; 000000b8H
00028 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002d f3 ab rep stosd
0002f 48 8b 8c 24 e8
04 00 00 mov rcx, QWORD PTR [rsp+1256]
00037 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003e 48 33 c5 xor rax, rbp
00041 48 89 85 58 04
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00048 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1256 : int frameX, frameY, frameWidth, frameHeight;
; 1257 : WCHAR* wideTitle;
; 1258 : DWORD style = getWindowStyle(window);
00054 48 8b 8d 80 04
00 00 mov rcx, QWORD PTR window$[rbp]
0005b e8 00 00 00 00 call getWindowStyle
00060 89 85 a4 00 00
00 mov DWORD PTR style$[rbp], eax
; 1259 : DWORD exStyle = getWindowExStyle(window);
00066 48 8b 8d 80 04
00 00 mov rcx, QWORD PTR window$[rbp]
0006d e8 00 00 00 00 call getWindowExStyle
00072 89 85 c4 00 00
00 mov DWORD PTR exStyle$[rbp], eax
; 1260 :
; 1261 : if (!_glfw.win32.mainWindowClass)
00078 0f b7 05 8a 1b
00 00 movzx eax, WORD PTR _glfw+7050
0007f 85 c0 test eax, eax
00081 0f 85 0b 01 00
00 jne $LN2@createNati
; 1262 : {
; 1263 : WNDCLASSEXW wc = { sizeof(wc) };
00087 c7 85 f0 00 00
00 50 00 00 00 mov DWORD PTR wc$11[rbp], 80 ; 00000050H
00091 48 8d 85 f4 00
00 00 lea rax, QWORD PTR wc$11[rbp+4]
00098 48 8b f8 mov rdi, rax
0009b 33 c0 xor eax, eax
0009d b9 4c 00 00 00 mov ecx, 76 ; 0000004cH
000a2 f3 aa rep stosb
; 1264 : wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
000a4 c7 85 f4 00 00
00 23 00 00 00 mov DWORD PTR wc$11[rbp+4], 35 ; 00000023H
; 1265 : wc.lpfnWndProc = windowProc;
000ae 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:windowProc
000b5 48 89 85 f8 00
00 00 mov QWORD PTR wc$11[rbp+8], rax
; 1266 : wc.hInstance = _glfw.win32.instance;
000bc 48 8b 05 78 1b
00 00 mov rax, QWORD PTR _glfw+7032
000c3 48 89 85 08 01
00 00 mov QWORD PTR wc$11[rbp+24], rax
; 1267 : wc.hCursor = LoadCursorW(NULL, IDC_ARROW);
000ca ba 00 7f 00 00 mov edx, 32512 ; 00007f00H
000cf 33 c9 xor ecx, ecx
000d1 ff 15 00 00 00
00 call QWORD PTR __imp_LoadCursorW
000d7 48 89 85 18 01
00 00 mov QWORD PTR wc$11[rbp+40], rax
; 1268 : #if defined(_GLFW_WNDCLASSNAME)
; 1269 : wc.lpszClassName = _GLFW_WNDCLASSNAME;
; 1270 : #else
; 1271 : wc.lpszClassName = L"GLFW30";
000de 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_1O@IBNLCBOC@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA0@
000e5 48 89 85 30 01
00 00 mov QWORD PTR wc$11[rbp+64], rax
; 1272 : #endif
; 1273 : // Load user-provided icon if available
; 1274 : wc.hIcon = LoadImageW(GetModuleHandleW(NULL),
000ec 33 c9 xor ecx, ecx
000ee ff 15 00 00 00
00 call QWORD PTR __imp_GetModuleHandleW
000f4 c7 44 24 28 40
80 00 00 mov DWORD PTR [rsp+40], 32832 ; 00008040H
000fc c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
00104 45 33 c9 xor r9d, r9d
00107 41 b8 01 00 00
00 mov r8d, 1
0010d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1BE@LDFMCOHA@?$AAG?$AAL?$AAF?$AAW?$AA_?$AAI?$AAC?$AAO?$AAN@
00114 48 8b c8 mov rcx, rax
00117 ff 15 00 00 00
00 call QWORD PTR __imp_LoadImageW
0011d 48 89 85 10 01
00 00 mov QWORD PTR wc$11[rbp+32], rax
; 1275 : L"GLFW_ICON", IMAGE_ICON,
; 1276 : 0, 0, LR_DEFAULTSIZE | LR_SHARED);
; 1277 : if (!wc.hIcon)
00124 48 83 bd 10 01
00 00 00 cmp QWORD PTR wc$11[rbp+32], 0
0012c 75 2d jne SHORT $LN3@createNati
; 1278 : {
; 1279 : // No user-provided icon found, load default icon
; 1280 : wc.hIcon = LoadImageW(NULL,
0012e c7 44 24 28 40
80 00 00 mov DWORD PTR [rsp+40], 32832 ; 00008040H
00136 c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
0013e 45 33 c9 xor r9d, r9d
00141 41 b8 01 00 00
00 mov r8d, 1
00147 ba 00 7f 00 00 mov edx, 32512 ; 00007f00H
0014c 33 c9 xor ecx, ecx
0014e ff 15 00 00 00
00 call QWORD PTR __imp_LoadImageW
00154 48 89 85 10 01
00 00 mov QWORD PTR wc$11[rbp+32], rax
$LN3@createNati:
; 1281 : IDI_APPLICATION, IMAGE_ICON,
; 1282 : 0, 0, LR_DEFAULTSIZE | LR_SHARED);
; 1283 : }
; 1284 :
; 1285 : _glfw.win32.mainWindowClass = RegisterClassExW(&wc);
0015b 48 8d 8d f0 00
00 00 lea rcx, QWORD PTR wc$11[rbp]
00162 ff 15 00 00 00
00 call QWORD PTR __imp_RegisterClassExW
00168 66 89 05 8a 1b
00 00 mov WORD PTR _glfw+7050, ax
; 1286 : if (!_glfw.win32.mainWindowClass)
0016f 0f b7 05 8a 1b
00 00 movzx eax, WORD PTR _glfw+7050
00176 85 c0 test eax, eax
00178 75 18 jne SHORT $LN4@createNati
; 1287 : {
; 1288 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
0017a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CH@GAPNPCHF@Win32?3?5Failed?5to?5register?5windo@
00181 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00186 e8 00 00 00 00 call _glfwInputErrorWin32
; 1289 : "Win32: Failed to register window class");
; 1290 : return GLFW_FALSE;
0018b 33 c0 xor eax, eax
0018d e9 31 06 00 00 jmp $LN1@createNati
$LN4@createNati:
$LN2@createNati:
; 1291 : }
; 1292 : }
; 1293 :
; 1294 : if (window->monitor)
00192 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00199 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
0019e 74 79 je SHORT $LN5@createNati
; 1295 : {
; 1296 : MONITORINFO mi = { sizeof(mi) };
001a0 c7 85 58 01 00
00 28 00 00 00 mov DWORD PTR mi$12[rbp], 40 ; 00000028H
001aa 48 8d 85 5c 01
00 00 lea rax, QWORD PTR mi$12[rbp+4]
001b1 48 8b f8 mov rdi, rax
001b4 33 c0 xor eax, eax
001b6 b9 24 00 00 00 mov ecx, 36 ; 00000024H
001bb f3 aa rep stosb
; 1297 : GetMonitorInfoW(window->monitor->win32.handle, &mi);
001bd 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
001c4 48 8b 40 50 mov rax, QWORD PTR [rax+80]
001c8 48 8d 95 58 01
00 00 lea rdx, QWORD PTR mi$12[rbp]
001cf 48 8b 88 00 01
00 00 mov rcx, QWORD PTR [rax+256]
001d6 ff 15 00 00 00
00 call QWORD PTR __imp_GetMonitorInfoW
; 1298 :
; 1299 : // NOTE: This window placement is temporary and approximate, as the
; 1300 : // correct position and size cannot be known until the monitor
; 1301 : // video mode has been picked in _glfwSetVideoModeWin32
; 1302 : frameX = mi.rcMonitor.left;
001dc 8b 85 5c 01 00
00 mov eax, DWORD PTR mi$12[rbp+4]
001e2 89 45 04 mov DWORD PTR frameX$[rbp], eax
; 1303 : frameY = mi.rcMonitor.top;
001e5 8b 85 60 01 00
00 mov eax, DWORD PTR mi$12[rbp+8]
001eb 89 45 24 mov DWORD PTR frameY$[rbp], eax
; 1304 : frameWidth = mi.rcMonitor.right - mi.rcMonitor.left;
001ee 8b 85 5c 01 00
00 mov eax, DWORD PTR mi$12[rbp+4]
001f4 8b 8d 64 01 00
00 mov ecx, DWORD PTR mi$12[rbp+12]
001fa 2b c8 sub ecx, eax
001fc 8b c1 mov eax, ecx
001fe 89 45 44 mov DWORD PTR frameWidth$[rbp], eax
; 1305 : frameHeight = mi.rcMonitor.bottom - mi.rcMonitor.top;
00201 8b 85 60 01 00
00 mov eax, DWORD PTR mi$12[rbp+8]
00207 8b 8d 68 01 00
00 mov ecx, DWORD PTR mi$12[rbp+16]
0020d 2b c8 sub ecx, eax
0020f 8b c1 mov eax, ecx
00211 89 45 64 mov DWORD PTR frameHeight$[rbp], eax
; 1306 : }
00214 e9 ff 00 00 00 jmp $LN6@createNati
$LN5@createNati:
; 1307 : else
; 1308 : {
; 1309 : RECT rect = { 0, 0, wndconfig->width, wndconfig->height };
00219 c7 85 98 01 00
00 00 00 00 00 mov DWORD PTR rect$13[rbp], 0
00223 c7 85 9c 01 00
00 00 00 00 00 mov DWORD PTR rect$13[rbp+4], 0
0022d 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
00234 8b 40 08 mov eax, DWORD PTR [rax+8]
00237 89 85 a0 01 00
00 mov DWORD PTR rect$13[rbp+8], eax
0023d 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
00244 8b 40 0c mov eax, DWORD PTR [rax+12]
00247 89 85 a4 01 00
00 mov DWORD PTR rect$13[rbp+12], eax
; 1310 :
; 1311 : window->win32.maximized = wndconfig->maximized;
0024d 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00254 48 8b 8d 88 04
00 00 mov rcx, QWORD PTR wndconfig$[rbp]
0025b 8b 49 30 mov ecx, DWORD PTR [rcx+48]
0025e 89 88 7c 03 00
00 mov DWORD PTR [rax+892], ecx
; 1312 : if (wndconfig->maximized)
00264 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
0026b 83 78 30 00 cmp DWORD PTR [rax+48], 0
0026f 74 10 je SHORT $LN7@createNati
; 1313 : style |= WS_MAXIMIZE;
00271 8b 85 a4 00 00
00 mov eax, DWORD PTR style$[rbp]
00277 0f ba e8 18 bts eax, 24
0027b 89 85 a4 00 00
00 mov DWORD PTR style$[rbp], eax
$LN7@createNati:
; 1314 :
; 1315 : AdjustWindowRectEx(&rect, style, FALSE, exStyle);
00281 44 8b 8d c4 00
00 00 mov r9d, DWORD PTR exStyle$[rbp]
00288 45 33 c0 xor r8d, r8d
0028b 8b 95 a4 00 00
00 mov edx, DWORD PTR style$[rbp]
00291 48 8d 8d 98 01
00 00 lea rcx, QWORD PTR rect$13[rbp]
00298 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
; 1316 :
; 1317 : if (wndconfig->xpos == GLFW_ANY_POSITION && wndconfig->ypos == GLFW_ANY_POSITION)
0029e 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
002a5 81 38 00 00 00
80 cmp DWORD PTR [rax], -2147483648 ; 80000000H
002ab 75 20 jne SHORT $LN8@createNati
002ad 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
002b4 81 78 04 00 00
00 80 cmp DWORD PTR [rax+4], -2147483648 ; 80000000H
002bb 75 10 jne SHORT $LN8@createNati
; 1318 : {
; 1319 : frameX = CW_USEDEFAULT;
002bd c7 45 04 00 00
00 80 mov DWORD PTR frameX$[rbp], -2147483648 ; ffffffff80000000H
; 1320 : frameY = CW_USEDEFAULT;
002c4 c7 45 24 00 00
00 80 mov DWORD PTR frameY$[rbp], -2147483648 ; ffffffff80000000H
; 1321 : }
002cb eb 25 jmp SHORT $LN9@createNati
$LN8@createNati:
; 1322 : else
; 1323 : {
; 1324 : frameX = wndconfig->xpos + rect.left;
002cd 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
002d4 8b 00 mov eax, DWORD PTR [rax]
002d6 03 85 98 01 00
00 add eax, DWORD PTR rect$13[rbp]
002dc 89 45 04 mov DWORD PTR frameX$[rbp], eax
; 1325 : frameY = wndconfig->ypos + rect.top;
002df 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
002e6 8b 40 04 mov eax, DWORD PTR [rax+4]
002e9 03 85 9c 01 00
00 add eax, DWORD PTR rect$13[rbp+4]
002ef 89 45 24 mov DWORD PTR frameY$[rbp], eax
$LN9@createNati:
; 1326 : }
; 1327 :
; 1328 : frameWidth = rect.right - rect.left;
002f2 8b 85 98 01 00
00 mov eax, DWORD PTR rect$13[rbp]
002f8 8b 8d a0 01 00
00 mov ecx, DWORD PTR rect$13[rbp+8]
002fe 2b c8 sub ecx, eax
00300 8b c1 mov eax, ecx
00302 89 45 44 mov DWORD PTR frameWidth$[rbp], eax
; 1329 : frameHeight = rect.bottom - rect.top;
00305 8b 85 9c 01 00
00 mov eax, DWORD PTR rect$13[rbp+4]
0030b 8b 8d a4 01 00
00 mov ecx, DWORD PTR rect$13[rbp+12]
00311 2b c8 sub ecx, eax
00313 8b c1 mov eax, ecx
00315 89 45 64 mov DWORD PTR frameHeight$[rbp], eax
$LN6@createNati:
; 1330 : }
; 1331 :
; 1332 : wideTitle = _glfwCreateWideStringFromUTF8Win32(wndconfig->title);
00318 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
0031f 48 8b 48 10 mov rcx, QWORD PTR [rax+16]
00323 e8 00 00 00 00 call _glfwCreateWideStringFromUTF8Win32
00328 48 89 85 88 00
00 00 mov QWORD PTR wideTitle$[rbp], rax
; 1333 : if (!wideTitle)
0032f 48 83 bd 88 00
00 00 00 cmp QWORD PTR wideTitle$[rbp], 0
00337 75 07 jne SHORT $LN10@createNati
; 1334 : return GLFW_FALSE;
00339 33 c0 xor eax, eax
0033b e9 83 04 00 00 jmp $LN1@createNati
$LN10@createNati:
; 1335 :
; 1336 : window->win32.handle = CreateWindowExW(exStyle,
00340 0f b7 05 8a 1b
00 00 movzx eax, WORD PTR _glfw+7050
00347 48 8b 8d 88 04
00 00 mov rcx, QWORD PTR wndconfig$[rbp]
0034e 48 89 4c 24 58 mov QWORD PTR [rsp+88], rcx
00353 48 8b 0d 78 1b
00 00 mov rcx, QWORD PTR _glfw+7032
0035a 48 89 4c 24 50 mov QWORD PTR [rsp+80], rcx
0035f 48 c7 44 24 48
00 00 00 00 mov QWORD PTR [rsp+72], 0
00368 48 c7 44 24 40
00 00 00 00 mov QWORD PTR [rsp+64], 0
00371 8b 4d 64 mov ecx, DWORD PTR frameHeight$[rbp]
00374 89 4c 24 38 mov DWORD PTR [rsp+56], ecx
00378 8b 4d 44 mov ecx, DWORD PTR frameWidth$[rbp]
0037b 89 4c 24 30 mov DWORD PTR [rsp+48], ecx
0037f 8b 4d 24 mov ecx, DWORD PTR frameY$[rbp]
00382 89 4c 24 28 mov DWORD PTR [rsp+40], ecx
00386 8b 4d 04 mov ecx, DWORD PTR frameX$[rbp]
00389 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
0038d 44 8b 8d a4 00
00 00 mov r9d, DWORD PTR style$[rbp]
00394 4c 8b 85 88 00
00 00 mov r8, QWORD PTR wideTitle$[rbp]
0039b 8b d0 mov edx, eax
0039d 8b 8d c4 00 00
00 mov ecx, DWORD PTR exStyle$[rbp]
003a3 ff 15 00 00 00
00 call QWORD PTR __imp_CreateWindowExW
003a9 48 8b 8d 80 04
00 00 mov rcx, QWORD PTR window$[rbp]
003b0 48 89 81 58 03
00 00 mov QWORD PTR [rcx+856], rax
; 1337 : MAKEINTATOM(_glfw.win32.mainWindowClass),
; 1338 : wideTitle,
; 1339 : style,
; 1340 : frameX, frameY,
; 1341 : frameWidth, frameHeight,
; 1342 : NULL, // No parent window
; 1343 : NULL, // No window menu
; 1344 : _glfw.win32.instance,
; 1345 : (LPVOID) wndconfig);
; 1346 :
; 1347 : _glfw_free(wideTitle);
003b7 48 8b 8d 88 00
00 00 mov rcx, QWORD PTR wideTitle$[rbp]
003be e8 00 00 00 00 call _glfw_free
; 1348 :
; 1349 : if (!window->win32.handle)
003c3 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
003ca 48 83 b8 58 03
00 00 00 cmp QWORD PTR [rax+856], 0
003d2 75 18 jne SHORT $LN11@createNati
; 1350 : {
; 1351 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
003d4 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BP@BFHGHOIO@Win32?3?5Failed?5to?5create?5window@
003db b9 08 00 01 00 mov ecx, 65544 ; 00010008H
003e0 e8 00 00 00 00 call _glfwInputErrorWin32
; 1352 : "Win32: Failed to create window");
; 1353 : return GLFW_FALSE;
003e5 33 c0 xor eax, eax
003e7 e9 d7 03 00 00 jmp $LN1@createNati
$LN11@createNati:
; 1354 : }
; 1355 :
; 1356 : SetPropW(window->win32.handle, L"GLFW", window);
003ec 4c 8b 85 80 04
00 00 mov r8, QWORD PTR window$[rbp]
003f3 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@
003fa 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00401 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00408 ff 15 00 00 00
00 call QWORD PTR __imp_SetPropW
; 1357 :
; 1358 : if (IsWindows7OrGreater())
0040e 45 33 c0 xor r8d, r8d
00411 66 ba 01 00 mov dx, 1
00415 66 b9 06 00 mov cx, 6
00419 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32
0041e 85 c0 test eax, eax
00420 74 66 je SHORT $LN12@createNati
; 1359 : {
; 1360 : ChangeWindowMessageFilterEx(window->win32.handle,
00422 45 33 c9 xor r9d, r9d
00425 41 b8 01 00 00
00 mov r8d, 1
0042b ba 33 02 00 00 mov edx, 563 ; 00000233H
00430 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00437 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0043e ff 15 a8 29 00
00 call QWORD PTR _glfw+10664
; 1361 : WM_DROPFILES, MSGFLT_ALLOW, NULL);
; 1362 : ChangeWindowMessageFilterEx(window->win32.handle,
00444 45 33 c9 xor r9d, r9d
00447 41 b8 01 00 00
00 mov r8d, 1
0044d ba 4a 00 00 00 mov edx, 74 ; 0000004aH
00452 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00459 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00460 ff 15 a8 29 00
00 call QWORD PTR _glfw+10664
; 1363 : WM_COPYDATA, MSGFLT_ALLOW, NULL);
; 1364 : ChangeWindowMessageFilterEx(window->win32.handle,
00466 45 33 c9 xor r9d, r9d
00469 41 b8 01 00 00
00 mov r8d, 1
0046f ba 49 00 00 00 mov edx, 73 ; 00000049H
00474 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
0047b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00482 ff 15 a8 29 00
00 call QWORD PTR _glfw+10664
$LN12@createNati:
; 1365 : WM_COPYGLOBALDATA, MSGFLT_ALLOW, NULL);
; 1366 : }
; 1367 :
; 1368 : window->win32.scaleToMonitor = wndconfig->scaleToMonitor;
00488 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
0048f 48 8b 8d 88 04
00 00 mov rcx, QWORD PTR wndconfig$[rbp]
00496 8b 49 40 mov ecx, DWORD PTR [rcx+64]
00499 89 88 84 03 00
00 mov DWORD PTR [rax+900], ecx
; 1369 : window->win32.keymenu = wndconfig->win32.keymenu;
0049f 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
004a6 48 8b 8d 88 04
00 00 mov rcx, QWORD PTR wndconfig$[rbp]
004ad 8b 89 48 03 00
00 mov ecx, DWORD PTR [rcx+840]
004b3 89 88 88 03 00
00 mov DWORD PTR [rax+904], ecx
; 1370 :
; 1371 : if (!window->monitor)
004b9 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
004c0 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
004c5 0f 85 83 02 00
00 jne $LN13@createNati
; 1372 : {
; 1373 : RECT rect = { 0, 0, wndconfig->width, wndconfig->height };
004cb c7 85 c8 01 00
00 00 00 00 00 mov DWORD PTR rect$14[rbp], 0
004d5 c7 85 cc 01 00
00 00 00 00 00 mov DWORD PTR rect$14[rbp+4], 0
004df 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
004e6 8b 40 08 mov eax, DWORD PTR [rax+8]
004e9 89 85 d0 01 00
00 mov DWORD PTR rect$14[rbp+8], eax
004ef 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
004f6 8b 40 0c mov eax, DWORD PTR [rax+12]
004f9 89 85 d4 01 00
00 mov DWORD PTR rect$14[rbp+12], eax
; 1374 : WINDOWPLACEMENT wp = { sizeof(wp) };
004ff c7 85 f8 01 00
00 2c 00 00 00 mov DWORD PTR wp$15[rbp], 44 ; 0000002cH
00509 48 8d 85 fc 01
00 00 lea rax, QWORD PTR wp$15[rbp+4]
00510 48 8b f8 mov rdi, rax
00513 33 c0 xor eax, eax
00515 b9 28 00 00 00 mov ecx, 40 ; 00000028H
0051a f3 aa rep stosb
; 1375 : const HMONITOR mh = MonitorFromWindow(window->win32.handle,
0051c ba 02 00 00 00 mov edx, 2
00521 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00528 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0052f ff 15 00 00 00
00 call QWORD PTR __imp_MonitorFromWindow
00535 48 89 85 48 02
00 00 mov QWORD PTR mh$16[rbp], rax
; 1376 : MONITOR_DEFAULTTONEAREST);
; 1377 :
; 1378 : // Adjust window rect to account for DPI scaling of the window frame and
; 1379 : // (if enabled) DPI scaling of the content area
; 1380 : // This cannot be done until we know what monitor the window was placed on
; 1381 : // Only update the restored window rect as the window may be maximized
; 1382 :
; 1383 : if (wndconfig->scaleToMonitor)
0053c 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
00543 83 78 40 00 cmp DWORD PTR [rax+64], 0
00547 74 70 je SHORT $LN14@createNati
; 1384 : {
; 1385 : float xscale, yscale;
; 1386 : _glfwGetHMONITORContentScaleWin32(mh, &xscale, &yscale);
00549 4c 8d 85 84 02
00 00 lea r8, QWORD PTR yscale$18[rbp]
00550 48 8d 95 64 02
00 00 lea rdx, QWORD PTR xscale$17[rbp]
00557 48 8b 8d 48 02
00 00 mov rcx, QWORD PTR mh$16[rbp]
0055e e8 00 00 00 00 call _glfwGetHMONITORContentScaleWin32
; 1387 :
; 1388 : if (xscale > 0.f && yscale > 0.f)
00563 f3 0f 10 85 64
02 00 00 movss xmm0, DWORD PTR xscale$17[rbp]
0056b 0f 2f 05 00 00
00 00 comiss xmm0, DWORD PTR __real@00000000
00572 76 45 jbe SHORT $LN15@createNati
00574 f3 0f 10 85 84
02 00 00 movss xmm0, DWORD PTR yscale$18[rbp]
0057c 0f 2f 05 00 00
00 00 comiss xmm0, DWORD PTR __real@00000000
00583 76 34 jbe SHORT $LN15@createNati
; 1389 : {
; 1390 : rect.right = (int) (rect.right * xscale);
00585 f3 0f 2a 85 d0
01 00 00 cvtsi2ss xmm0, DWORD PTR rect$14[rbp+8]
0058d f3 0f 59 85 64
02 00 00 mulss xmm0, DWORD PTR xscale$17[rbp]
00595 f3 0f 2c c0 cvttss2si eax, xmm0
00599 89 85 d0 01 00
00 mov DWORD PTR rect$14[rbp+8], eax
; 1391 : rect.bottom = (int) (rect.bottom * yscale);
0059f f3 0f 2a 85 d4
01 00 00 cvtsi2ss xmm0, DWORD PTR rect$14[rbp+12]
005a7 f3 0f 59 85 84
02 00 00 mulss xmm0, DWORD PTR yscale$18[rbp]
005af f3 0f 2c c0 cvttss2si eax, xmm0
005b3 89 85 d4 01 00
00 mov DWORD PTR rect$14[rbp+12], eax
$LN15@createNati:
$LN14@createNati:
; 1392 : }
; 1393 : }
; 1394 :
; 1395 : if (_glfwIsWindows10Version1607OrGreaterWin32())
005b9 66 b9 39 38 mov cx, 14393 ; 00003839H
005bd e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
005c2 85 c0 test eax, eax
005c4 74 37 je SHORT $LN16@createNati
; 1396 : {
; 1397 : AdjustWindowRectExForDpi(&rect, style, FALSE, exStyle,
005c6 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
005cd 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
005d4 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
005da 89 44 24 20 mov DWORD PTR [rsp+32], eax
005de 44 8b 8d c4 00
00 00 mov r9d, DWORD PTR exStyle$[rbp]
005e5 45 33 c0 xor r8d, r8d
005e8 8b 95 a4 00 00
00 mov edx, DWORD PTR style$[rbp]
005ee 48 8d 8d c8 01
00 00 lea rcx, QWORD PTR rect$14[rbp]
005f5 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1398 : GetDpiForWindow(window->win32.handle));
; 1399 : }
005fb eb 1d jmp SHORT $LN17@createNati
$LN16@createNati:
; 1400 : else
; 1401 : AdjustWindowRectEx(&rect, style, FALSE, exStyle);
005fd 44 8b 8d c4 00
00 00 mov r9d, DWORD PTR exStyle$[rbp]
00604 45 33 c0 xor r8d, r8d
00607 8b 95 a4 00 00
00 mov edx, DWORD PTR style$[rbp]
0060d 48 8d 8d c8 01
00 00 lea rcx, QWORD PTR rect$14[rbp]
00614 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN17@createNati:
; 1402 :
; 1403 : GetWindowPlacement(window->win32.handle, &wp);
0061a 48 8d 95 f8 01
00 00 lea rdx, QWORD PTR wp$15[rbp]
00621 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00628 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0062f ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowPlacement
; 1404 : OffsetRect(&rect,
00635 8b 85 cc 01 00
00 mov eax, DWORD PTR rect$14[rbp+4]
0063b 8b 8d 18 02 00
00 mov ecx, DWORD PTR wp$15[rbp+32]
00641 2b c8 sub ecx, eax
00643 8b c1 mov eax, ecx
00645 8b 8d c8 01 00
00 mov ecx, DWORD PTR rect$14[rbp]
0064b 8b 95 14 02 00
00 mov edx, DWORD PTR wp$15[rbp+28]
00651 2b d1 sub edx, ecx
00653 8b ca mov ecx, edx
00655 44 8b c0 mov r8d, eax
00658 8b d1 mov edx, ecx
0065a 48 8d 8d c8 01
00 00 lea rcx, QWORD PTR rect$14[rbp]
00661 ff 15 00 00 00
00 call QWORD PTR __imp_OffsetRect
; 1405 : wp.rcNormalPosition.left - rect.left,
; 1406 : wp.rcNormalPosition.top - rect.top);
; 1407 :
; 1408 : wp.rcNormalPosition = rect;
00667 48 8d 85 14 02
00 00 lea rax, QWORD PTR wp$15[rbp+28]
0066e 48 8d 8d c8 01
00 00 lea rcx, QWORD PTR rect$14[rbp]
00675 48 8b f8 mov rdi, rax
00678 48 8b f1 mov rsi, rcx
0067b b9 10 00 00 00 mov ecx, 16
00680 f3 a4 rep movsb
; 1409 : wp.showCmd = SW_HIDE;
00682 c7 85 00 02 00
00 00 00 00 00 mov DWORD PTR wp$15[rbp+8], 0
; 1410 : SetWindowPlacement(window->win32.handle, &wp);
0068c 48 8d 95 f8 01
00 00 lea rdx, QWORD PTR wp$15[rbp]
00693 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
0069a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
006a1 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPlacement
; 1411 :
; 1412 : // Adjust rect of maximized undecorated window, because by default Windows will
; 1413 : // make such a window cover the whole monitor instead of its workarea
; 1414 :
; 1415 : if (wndconfig->maximized && !wndconfig->decorated)
006a7 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
006ae 83 78 30 00 cmp DWORD PTR [rax+48], 0
006b2 0f 84 96 00 00
00 je $LN18@createNati
006b8 48 8b 85 88 04
00 00 mov rax, QWORD PTR wndconfig$[rbp]
006bf 83 78 20 00 cmp DWORD PTR [rax+32], 0
006c3 0f 85 85 00 00
00 jne $LN18@createNati
; 1416 : {
; 1417 : MONITORINFO mi = { sizeof(mi) };
006c9 c7 85 a8 02 00
00 28 00 00 00 mov DWORD PTR mi$19[rbp], 40 ; 00000028H
006d3 48 8d 85 ac 02
00 00 lea rax, QWORD PTR mi$19[rbp+4]
006da 48 8b f8 mov rdi, rax
006dd 33 c0 xor eax, eax
006df b9 24 00 00 00 mov ecx, 36 ; 00000024H
006e4 f3 aa rep stosb
; 1418 : GetMonitorInfoW(mh, &mi);
006e6 48 8d 95 a8 02
00 00 lea rdx, QWORD PTR mi$19[rbp]
006ed 48 8b 8d 48 02
00 00 mov rcx, QWORD PTR mh$16[rbp]
006f4 ff 15 00 00 00
00 call QWORD PTR __imp_GetMonitorInfoW
; 1419 :
; 1420 : SetWindowPos(window->win32.handle, HWND_TOP,
006fa 8b 85 c0 02 00
00 mov eax, DWORD PTR mi$19[rbp+24]
00700 8b 8d c8 02 00
00 mov ecx, DWORD PTR mi$19[rbp+32]
00706 2b c8 sub ecx, eax
00708 8b c1 mov eax, ecx
0070a 8b 8d bc 02 00
00 mov ecx, DWORD PTR mi$19[rbp+20]
00710 8b 95 c4 02 00
00 mov edx, DWORD PTR mi$19[rbp+28]
00716 2b d1 sub edx, ecx
00718 8b ca mov ecx, edx
0071a c7 44 24 30 14
00 00 00 mov DWORD PTR [rsp+48], 20
00722 89 44 24 28 mov DWORD PTR [rsp+40], eax
00726 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
0072a 44 8b 8d c0 02
00 00 mov r9d, DWORD PTR mi$19[rbp+24]
00731 44 8b 85 bc 02
00 00 mov r8d, DWORD PTR mi$19[rbp+20]
00738 33 d2 xor edx, edx
0073a 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00741 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00748 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
$LN18@createNati:
$LN13@createNati:
; 1421 : mi.rcWork.left,
; 1422 : mi.rcWork.top,
; 1423 : mi.rcWork.right - mi.rcWork.left,
; 1424 : mi.rcWork.bottom - mi.rcWork.top,
; 1425 : SWP_NOACTIVATE | SWP_NOZORDER);
; 1426 : }
; 1427 : }
; 1428 :
; 1429 : DragAcceptFiles(window->win32.handle, TRUE);
0074e ba 01 00 00 00 mov edx, 1
00753 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
0075a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00761 ff 15 00 00 00
00 call QWORD PTR __imp_DragAcceptFiles
; 1430 :
; 1431 : if (fbconfig->transparent)
00767 48 8b 85 90 04
00 00 mov rax, QWORD PTR fbconfig$[rbp]
0076e 83 78 3c 00 cmp DWORD PTR [rax+60], 0
00772 74 1d je SHORT $LN19@createNati
; 1432 : {
; 1433 : updateFramebufferTransparency(window);
00774 48 8b 8d 80 04
00 00 mov rcx, QWORD PTR window$[rbp]
0077b e8 00 00 00 00 call updateFramebufferTransparency
; 1434 : window->win32.transparent = GLFW_TRUE;
00780 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00787 c7 80 80 03 00
00 01 00 00 00 mov DWORD PTR [rax+896], 1
$LN19@createNati:
; 1435 : }
; 1436 :
; 1437 : _glfwGetWindowSizeWin32(window, &window->win32.width, &window->win32.height);
00791 48 8b 85 80 04
00 00 mov rax, QWORD PTR window$[rbp]
00798 48 05 90 03 00
00 add rax, 912 ; 00000390H
0079e 48 8b 8d 80 04
00 00 mov rcx, QWORD PTR window$[rbp]
007a5 48 81 c1 8c 03
00 00 add rcx, 908 ; 0000038cH
007ac 4c 8b c0 mov r8, rax
007af 48 8b d1 mov rdx, rcx
007b2 48 8b 8d 80 04
00 00 mov rcx, QWORD PTR window$[rbp]
007b9 e8 00 00 00 00 call _glfwGetWindowSizeWin32
; 1438 :
; 1439 : return GLFW_TRUE;
007be b8 01 00 00 00 mov eax, 1
$LN1@createNati:
; 1440 : }
007c3 48 8b f8 mov rdi, rax
007c6 48 8d 4d a0 lea rcx, QWORD PTR [rbp-96]
007ca 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:createNativeWindow$rtcFrameData
007d1 e8 00 00 00 00 call _RTC_CheckStackVars
007d6 48 8b c7 mov rax, rdi
007d9 48 8b 8d 58 04
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
007e0 48 33 cd xor rcx, rbp
007e3 e8 00 00 00 00 call __security_check_cookie
007e8 48 8d a5 60 04
00 00 lea rsp, QWORD PTR [rbp+1120]
007ef 5f pop rdi
007f0 5e pop rsi
007f1 5d pop rbp
007f2 c3 ret 0
createNativeWindow ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT windowProc
_TEXT SEGMENT
window$ = 8
cs$11 = 40
wndconfig$12 = 72
codepoint$13 = 100
key$14 = 132
scancode$15 = 164
action$16 = 196
mods$17 = 228
next$18 = 264
time$19 = 340
i$20 = 372
button$21 = 404
action$22 = 436
x$23 = 468
y$24 = 500
tme$25 = 536
dx$26 = 580
dy$27 = 612
size$28 = 644
ri$29 = 680
data$30 = 712
dx$31 = 740
dy$32 = 772
width$33 = 804
height$34 = 836
iconified$35 = 868
maximized$36 = 900
frame$37 = 936
mmi$38 = 984
style$39 = 1012
exStyle$40 = 1044
mi$41 = 1080
mh$42 = 1144
source$43 = 1176
target$44 = 1224
size$45 = 1272
xscale$46 = 1300
yscale$47 = 1332
suggested$48 = 1368
drop$49 = 1400
pt$50 = 1432
i$51 = 1460
count$52 = 1492
paths$53 = 1528
length$54 = 1556
buffer$55 = 1592
tv684 = 2372
tv638 = 2372
tv498 = 2372
tv493 = 2372
tv208 = 2372
tv187 = 2372
tv82 = 2372
tv686 = 2376
tv674 = 2376
tv158 = 2376
__$ArrayPad$ = 2384
hWnd$ = 2432
uMsg$ = 2440
wParam$ = 2448
lParam$ = 2456
windowProc PROC ; COMDAT
; 531 : {
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx
0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00013 55 push rbp
00014 57 push rdi
00015 48 81 ec a8 09
00 00 sub rsp, 2472 ; 000009a8H
0001c 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
00021 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00026 b9 9a 01 00 00 mov ecx, 410 ; 0000019aH
0002b b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00030 f3 ab rep stosd
00032 48 8b 8c 24 c8
09 00 00 mov rcx, QWORD PTR [rsp+2504]
0003a 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00041 48 33 c5 xor rax, rbp
00044 48 89 85 50 09
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004b 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 532 : _GLFWwindow* window = GetPropW(hWnd, L"GLFW");
00057 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@
0005e 48 8b 8d 80 09
00 00 mov rcx, QWORD PTR hWnd$[rbp]
00065 ff 15 00 00 00
00 call QWORD PTR __imp_GetPropW
0006b 48 89 45 08 mov QWORD PTR window$[rbp], rax
; 533 : if (!window)
0006f 48 83 7d 08 00 cmp QWORD PTR window$[rbp], 0
00074 75 73 jne SHORT $LN18@windowProc
; 534 : {
; 535 : if (uMsg == WM_NCCREATE)
00076 81 bd 88 09 00
00 81 00 00 00 cmp DWORD PTR uMsg$[rbp], 129 ; 00000081H
00080 75 41 jne SHORT $LN19@windowProc
; 536 : {
; 537 : if (_glfwIsWindows10Version1607OrGreaterWin32())
00082 66 b9 39 38 mov cx, 14393 ; 00003839H
00086 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
0008b 85 c0 test eax, eax
0008d 74 34 je SHORT $LN20@windowProc
; 538 : {
; 539 : const CREATESTRUCTW* cs = (const CREATESTRUCTW*) lParam;
0008f 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
00096 48 89 45 28 mov QWORD PTR cs$11[rbp], rax
; 540 : const _GLFWwndconfig* wndconfig = cs->lpCreateParams;
0009a 48 8b 45 28 mov rax, QWORD PTR cs$11[rbp]
0009e 48 8b 00 mov rax, QWORD PTR [rax]
000a1 48 89 45 48 mov QWORD PTR wndconfig$12[rbp], rax
; 541 :
; 542 : // On per-monitor DPI aware V1 systems, only enable
; 543 : // non-client scaling for windows that scale the client area
; 544 : // We need WM_GETDPISCALEDSIZE from V2 to keep the client
; 545 : // area static when the non-client area is scaled
; 546 : if (wndconfig && wndconfig->scaleToMonitor)
000a5 48 83 7d 48 00 cmp QWORD PTR wndconfig$12[rbp], 0
000aa 74 17 je SHORT $LN21@windowProc
000ac 48 8b 45 48 mov rax, QWORD PTR wndconfig$12[rbp]
000b0 83 78 40 00 cmp DWORD PTR [rax+64], 0
000b4 74 0d je SHORT $LN21@windowProc
; 547 : EnableNonClientDpiScaling(hWnd);
000b6 48 8b 8d 80 09
00 00 mov rcx, QWORD PTR hWnd$[rbp]
000bd ff 15 b0 29 00
00 call QWORD PTR _glfw+10672
$LN21@windowProc:
$LN20@windowProc:
$LN19@windowProc:
; 548 : }
; 549 : }
; 550 :
; 551 : return DefWindowProcW(hWnd, uMsg, wParam, lParam);
000c3 4c 8b 8d 98 09
00 00 mov r9, QWORD PTR lParam$[rbp]
000ca 4c 8b 85 90 09
00 00 mov r8, QWORD PTR wParam$[rbp]
000d1 8b 95 88 09 00
00 mov edx, DWORD PTR uMsg$[rbp]
000d7 48 8b 8d 80 09
00 00 mov rcx, QWORD PTR hWnd$[rbp]
000de ff 15 00 00 00
00 call QWORD PTR __imp_DefWindowProcW
000e4 e9 a5 16 00 00 jmp $LN1@windowProc
$LN18@windowProc:
; 552 : }
; 553 :
; 554 : switch (uMsg)
000e9 8b 85 88 09 00
00 mov eax, DWORD PTR uMsg$[rbp]
000ef 89 85 44 09 00
00 mov DWORD PTR tv82[rbp], eax
000f5 81 bd 44 09 00
00 ff 00 00 00 cmp DWORD PTR tv82[rbp], 255 ; 000000ffH
000ff 77 50 ja SHORT $LN184@windowProc
00101 81 bd 44 09 00
00 ff 00 00 00 cmp DWORD PTR tv82[rbp], 255 ; 000000ffH
0010b 0f 84 43 0a 00
00 je $LN114@windowProc
00111 8b 85 44 09 00
00 mov eax, DWORD PTR tv82[rbp]
00117 83 e8 03 sub eax, 3
0011a 89 85 44 09 00
00 mov DWORD PTR tv82[rbp], eax
00120 81 bd 44 09 00
00 83 00 00 00 cmp DWORD PTR tv82[rbp], 131 ; 00000083H
0012a 0f 87 3d 16 00
00 ja $LN2@windowProc
00130 8b 85 44 09 00
00 mov eax, DWORD PTR tv82[rbp]
00136 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__ImageBase
0013d 0f b6 84 01 00
00 00 00 movzx eax, BYTE PTR $LN190@windowProc[rcx+rax]
00145 8b 84 81 00 00
00 00 mov eax, DWORD PTR $LN191@windowProc[rcx+rax*4]
0014c 48 03 c1 add rax, rcx
0014f ff e0 jmp rax
$LN184@windowProc:
00151 81 bd 44 09 00
00 12 01 00 00 cmp DWORD PTR tv82[rbp], 274 ; 00000112H
0015b 77 47 ja SHORT $LN185@windowProc
0015d 81 bd 44 09 00
00 12 01 00 00 cmp DWORD PTR tv82[rbp], 274 ; 00000112H
00167 0f 84 06 02 00
00 je $LN40@windowProc
0016d 8b 85 44 09 00
00 mov eax, DWORD PTR tv82[rbp]
00173 2d 00 01 00 00 sub eax, 256 ; 00000100H
00178 89 85 44 09 00
00 mov DWORD PTR tv82[rbp], eax
0017e 83 bd 44 09 00
00 09 cmp DWORD PTR tv82[rbp], 9
00185 0f 87 e2 15 00
00 ja $LN2@windowProc
0018b 8b 85 44 09 00
00 mov eax, DWORD PTR tv82[rbp]
00191 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__ImageBase
00198 8b 84 81 00 00
00 00 mov eax, DWORD PTR $LN189@windowProc[rcx+rax*4]
0019f 48 03 c1 add rax, rcx
001a2 ff e0 jmp rax
$LN185@windowProc:
001a4 81 bd 44 09 00
00 1e 03 00 00 cmp DWORD PTR tv82[rbp], 798 ; 0000031eH
001ae 77 52 ja SHORT $LN186@windowProc
001b0 81 bd 44 09 00
00 1e 03 00 00 cmp DWORD PTR tv82[rbp], 798 ; 0000031eH
001ba 0f 84 41 11 00
00 je $LN162@windowProc
001c0 8b 85 44 09 00
00 mov eax, DWORD PTR tv82[rbp]
001c6 2d 00 02 00 00 sub eax, 512 ; 00000200H
001cb 89 85 44 09 00
00 mov DWORD PTR tv82[rbp], eax
001d1 81 bd 44 09 00
00 e4 00 00 00 cmp DWORD PTR tv82[rbp], 228 ; 000000e4H
001db 0f 87 8c 15 00
00 ja $LN2@windowProc
001e1 8b 85 44 09 00
00 mov eax, DWORD PTR tv82[rbp]
001e7 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__ImageBase
001ee 0f b6 84 01 00
00 00 00 movzx eax, BYTE PTR $LN187@windowProc[rcx+rax]
001f6 8b 84 81 00 00
00 00 mov eax, DWORD PTR $LN188@windowProc[rcx+rax*4]
001fd 48 03 c1 add rax, rcx
00200 ff e0 jmp rax
$LN186@windowProc:
00202 81 bd 44 09 00
00 20 03 00 00 cmp DWORD PTR tv82[rbp], 800 ; 00000320H
0020c 0f 84 ef 10 00
00 je $LN163@windowProc
00212 e9 56 15 00 00 jmp $LN2@windowProc
$LN22@windowProc:
; 555 : {
; 556 : case WM_MOUSEACTIVATE:
; 557 : {
; 558 : // HACK: Postpone cursor disabling when the window was activated by
; 559 : // clicking a caption button
; 560 : if (HIWORD(lParam) == WM_LBUTTONDOWN)
00217 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
0021e 48 c1 e8 10 shr rax, 16
00222 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00228 0f b7 c0 movzx eax, ax
0022b 3d 01 02 00 00 cmp eax, 513 ; 00000201H
00230 75 23 jne SHORT $LN23@windowProc
; 561 : {
; 562 : if (LOWORD(lParam) != HTCLIENT)
00232 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
00239 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
0023f 0f b7 c0 movzx eax, ax
00242 83 f8 01 cmp eax, 1
00245 74 0e je SHORT $LN24@windowProc
; 563 : window->win32.frameAction = GLFW_TRUE;
00247 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0024b c7 80 74 03 00
00 01 00 00 00 mov DWORD PTR [rax+884], 1
$LN24@windowProc:
$LN23@windowProc:
; 564 : }
; 565 :
; 566 : break;
00255 e9 13 15 00 00 jmp $LN2@windowProc
$LN25@windowProc:
; 567 : }
; 568 :
; 569 : case WM_CAPTURECHANGED:
; 570 : {
; 571 : // HACK: Disable the cursor once the caption button action has been
; 572 : // completed or cancelled
; 573 : if (lParam == 0 && window->win32.frameAction)
0025a 48 83 bd 98 09
00 00 00 cmp QWORD PTR lParam$[rbp], 0
00262 75 4f jne SHORT $LN26@windowProc
00264 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00268 83 b8 74 03 00
00 00 cmp DWORD PTR [rax+884], 0
0026f 74 42 je SHORT $LN26@windowProc
; 574 : {
; 575 : if (window->cursorMode == GLFW_CURSOR_DISABLED)
00271 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00275 81 b8 84 00 00
00 03 40 03 00 cmp DWORD PTR [rax+132], 212995 ; 00034003H
0027f 75 0b jne SHORT $LN27@windowProc
; 576 : disableCursor(window);
00281 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00285 e8 00 00 00 00 call disableCursor
0028a eb 19 jmp SHORT $LN28@windowProc
$LN27@windowProc:
; 577 : else if (window->cursorMode == GLFW_CURSOR_CAPTURED)
0028c 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00290 81 b8 84 00 00
00 04 40 03 00 cmp DWORD PTR [rax+132], 212996 ; 00034004H
0029a 75 09 jne SHORT $LN29@windowProc
; 578 : captureCursor(window);
0029c 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
002a0 e8 00 00 00 00 call captureCursor
$LN29@windowProc:
$LN28@windowProc:
; 579 :
; 580 : window->win32.frameAction = GLFW_FALSE;
002a5 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
002a9 c7 80 74 03 00
00 00 00 00 00 mov DWORD PTR [rax+884], 0
$LN26@windowProc:
; 581 : }
; 582 :
; 583 : break;
002b3 e9 b5 14 00 00 jmp $LN2@windowProc
$LN30@windowProc:
; 584 : }
; 585 :
; 586 : case WM_SETFOCUS:
; 587 : {
; 588 : _glfwInputWindowFocus(window, GLFW_TRUE);
002b8 ba 01 00 00 00 mov edx, 1
002bd 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
002c1 e8 00 00 00 00 call _glfwInputWindowFocus
; 589 :
; 590 : // HACK: Do not disable cursor while the user is interacting with
; 591 : // a caption button
; 592 : if (window->win32.frameAction)
002c6 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
002ca 83 b8 74 03 00
00 00 cmp DWORD PTR [rax+884], 0
002d1 74 05 je SHORT $LN31@windowProc
; 593 : break;
002d3 e9 95 14 00 00 jmp $LN2@windowProc
$LN31@windowProc:
; 594 :
; 595 : if (window->cursorMode == GLFW_CURSOR_DISABLED)
002d8 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
002dc 81 b8 84 00 00
00 03 40 03 00 cmp DWORD PTR [rax+132], 212995 ; 00034003H
002e6 75 0b jne SHORT $LN32@windowProc
; 596 : disableCursor(window);
002e8 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
002ec e8 00 00 00 00 call disableCursor
002f1 eb 19 jmp SHORT $LN33@windowProc
$LN32@windowProc:
; 597 : else if (window->cursorMode == GLFW_CURSOR_CAPTURED)
002f3 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
002f7 81 b8 84 00 00
00 04 40 03 00 cmp DWORD PTR [rax+132], 212996 ; 00034004H
00301 75 09 jne SHORT $LN34@windowProc
; 598 : captureCursor(window);
00303 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00307 e8 00 00 00 00 call captureCursor
$LN34@windowProc:
$LN33@windowProc:
; 599 :
; 600 : return 0;
0030c 33 c0 xor eax, eax
0030e e9 7b 14 00 00 jmp $LN1@windowProc
$LN35@windowProc:
; 601 : }
; 602 :
; 603 : case WM_KILLFOCUS:
; 604 : {
; 605 : if (window->cursorMode == GLFW_CURSOR_DISABLED)
00313 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00317 81 b8 84 00 00
00 03 40 03 00 cmp DWORD PTR [rax+132], 212995 ; 00034003H
00321 75 0b jne SHORT $LN36@windowProc
; 606 : enableCursor(window);
00323 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00327 e8 00 00 00 00 call enableCursor
0032c eb 15 jmp SHORT $LN37@windowProc
$LN36@windowProc:
; 607 : else if (window->cursorMode == GLFW_CURSOR_CAPTURED)
0032e 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00332 81 b8 84 00 00
00 04 40 03 00 cmp DWORD PTR [rax+132], 212996 ; 00034004H
0033c 75 05 jne SHORT $LN38@windowProc
; 608 : releaseCursor();
0033e e8 00 00 00 00 call releaseCursor
$LN38@windowProc:
$LN37@windowProc:
; 609 :
; 610 : if (window->monitor && window->autoIconify)
00343 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00347 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
0034c 74 13 je SHORT $LN39@windowProc
0034e 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00352 83 78 10 00 cmp DWORD PTR [rax+16], 0
00356 74 09 je SHORT $LN39@windowProc
; 611 : _glfwIconifyWindowWin32(window);
00358 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
0035c e8 00 00 00 00 call _glfwIconifyWindowWin32
$LN39@windowProc:
; 612 :
; 613 : _glfwInputWindowFocus(window, GLFW_FALSE);
00361 33 d2 xor edx, edx
00363 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00367 e8 00 00 00 00 call _glfwInputWindowFocus
; 614 : return 0;
0036c 33 c0 xor eax, eax
0036e e9 1b 14 00 00 jmp $LN1@windowProc
$LN40@windowProc:
; 615 : }
; 616 :
; 617 : case WM_SYSCOMMAND:
; 618 : {
; 619 : switch (wParam & 0xfff0)
00373 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
0037a 48 25 f0 ff 00
00 and rax, 65520 ; 0000fff0H
00380 48 89 85 48 09
00 00 mov QWORD PTR tv158[rbp], rax
00387 48 81 bd 48 09
00 00 00 f1 00
00 cmp QWORD PTR tv158[rbp], 61696 ; 0000f100H
00392 74 32 je SHORT $LN45@windowProc
00394 48 81 bd 48 09
00 00 40 f1 00
00 cmp QWORD PTR tv158[rbp], 61760 ; 0000f140H
0039f 74 0f je SHORT $LN41@windowProc
003a1 48 81 bd 48 09
00 00 70 f1 00
00 cmp QWORD PTR tv158[rbp], 61808 ; 0000f170H
003ac 74 02 je SHORT $LN42@windowProc
003ae eb 2a jmp SHORT $LN4@windowProc
$LN41@windowProc:
$LN42@windowProc:
; 620 : {
; 621 : case SC_SCREENSAVE:
; 622 : case SC_MONITORPOWER:
; 623 : {
; 624 : if (window->monitor)
003b0 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
003b4 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
003b9 74 09 je SHORT $LN43@windowProc
; 625 : {
; 626 : // We are running in full screen mode, so disallow
; 627 : // screen saver and screen blanking
; 628 : return 0;
003bb 33 c0 xor eax, eax
003bd e9 cc 13 00 00 jmp $LN1@windowProc
; 629 : }
003c2 eb 02 jmp SHORT $LN44@windowProc
$LN43@windowProc:
; 630 : else
; 631 : break;
003c4 eb 14 jmp SHORT $LN4@windowProc
$LN44@windowProc:
$LN45@windowProc:
; 632 : }
; 633 :
; 634 : // User trying to access application menu using ALT?
; 635 : case SC_KEYMENU:
; 636 : {
; 637 : if (!window->win32.keymenu)
003c6 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
003ca 83 b8 88 03 00
00 00 cmp DWORD PTR [rax+904], 0
003d1 75 07 jne SHORT $LN46@windowProc
; 638 : return 0;
003d3 33 c0 xor eax, eax
003d5 e9 b4 13 00 00 jmp $LN1@windowProc
$LN46@windowProc:
$LN4@windowProc:
; 639 :
; 640 : break;
; 641 : }
; 642 : }
; 643 : break;
003da e9 8e 13 00 00 jmp $LN2@windowProc
$LN47@windowProc:
; 644 : }
; 645 :
; 646 : case WM_CLOSE:
; 647 : {
; 648 : _glfwInputWindowCloseRequest(window);
003df 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
003e3 e8 00 00 00 00 call _glfwInputWindowCloseRequest
; 649 : return 0;
003e8 33 c0 xor eax, eax
003ea e9 9f 13 00 00 jmp $LN1@windowProc
$LN48@windowProc:
; 650 : }
; 651 :
; 652 : case WM_INPUTLANGCHANGE:
; 653 : {
; 654 : _glfwUpdateKeyNamesWin32();
003ef e8 00 00 00 00 call _glfwUpdateKeyNamesWin32
; 655 : break;
003f4 e9 74 13 00 00 jmp $LN2@windowProc
$LN49@windowProc:
$LN50@windowProc:
; 656 : }
; 657 :
; 658 : case WM_CHAR:
; 659 : case WM_SYSCHAR:
; 660 : {
; 661 : if (wParam >= 0xd800 && wParam <= 0xdbff)
003f9 48 81 bd 90 09
00 00 00 d8 00
00 cmp QWORD PTR wParam$[rbp], 55296 ; 0000d800H
00404 72 24 jb SHORT $LN51@windowProc
00406 48 81 bd 90 09
00 00 ff db 00
00 cmp QWORD PTR wParam$[rbp], 56319 ; 0000dbffH
00411 77 17 ja SHORT $LN51@windowProc
; 662 : window->win32.highSurrogate = (WCHAR) wParam;
00413 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00417 0f b7 8d 90 09
00 00 movzx ecx, WORD PTR wParam$[rbp]
0041e 66 89 88 9c 03
00 00 mov WORD PTR [rax+924], cx
00425 e9 c2 00 00 00 jmp $LN52@windowProc
$LN51@windowProc:
; 663 : else
; 664 : {
; 665 : uint32_t codepoint = 0;
0042a c7 45 64 00 00
00 00 mov DWORD PTR codepoint$13[rbp], 0
; 666 :
; 667 : if (wParam >= 0xdc00 && wParam <= 0xdfff)
00431 48 81 bd 90 09
00 00 00 dc 00
00 cmp QWORD PTR wParam$[rbp], 56320 ; 0000dc00H
0043c 72 5a jb SHORT $LN53@windowProc
0043e 48 81 bd 90 09
00 00 ff df 00
00 cmp QWORD PTR wParam$[rbp], 57343 ; 0000dfffH
00449 77 4d ja SHORT $LN53@windowProc
; 668 : {
; 669 : if (window->win32.highSurrogate)
0044b 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0044f 0f b7 80 9c 03
00 00 movzx eax, WORD PTR [rax+924]
00456 85 c0 test eax, eax
00458 74 3c je SHORT $LN55@windowProc
; 670 : {
; 671 : codepoint += (window->win32.highSurrogate - 0xd800) << 10;
0045a 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0045e 0f b7 80 9c 03
00 00 movzx eax, WORD PTR [rax+924]
00465 2d 00 d8 00 00 sub eax, 55296 ; 0000d800H
0046a c1 e0 0a shl eax, 10
0046d 8b 4d 64 mov ecx, DWORD PTR codepoint$13[rbp]
00470 03 c8 add ecx, eax
00472 8b c1 mov eax, ecx
00474 89 45 64 mov DWORD PTR codepoint$13[rbp], eax
; 672 : codepoint += (WCHAR) wParam - 0xdc00;
00477 0f b7 85 90 09
00 00 movzx eax, WORD PTR wParam$[rbp]
0047e 8b 4d 64 mov ecx, DWORD PTR codepoint$13[rbp]
00481 8d 84 01 00 24
ff ff lea eax, DWORD PTR [rcx+rax-56320]
00488 89 45 64 mov DWORD PTR codepoint$13[rbp], eax
; 673 : codepoint += 0x10000;
0048b 8b 45 64 mov eax, DWORD PTR codepoint$13[rbp]
0048e 05 00 00 01 00 add eax, 65536 ; 00010000H
00493 89 45 64 mov DWORD PTR codepoint$13[rbp], eax
$LN55@windowProc:
; 674 : }
; 675 : }
00496 eb 0a jmp SHORT $LN54@windowProc
$LN53@windowProc:
; 676 : else
; 677 : codepoint = (WCHAR) wParam;
00498 0f b7 85 90 09
00 00 movzx eax, WORD PTR wParam$[rbp]
0049f 89 45 64 mov DWORD PTR codepoint$13[rbp], eax
$LN54@windowProc:
; 678 :
; 679 : window->win32.highSurrogate = 0;
004a2 33 c0 xor eax, eax
004a4 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
004a8 66 89 81 9c 03
00 00 mov WORD PTR [rcx+924], ax
; 680 : _glfwInputChar(window, codepoint, getKeyMods(), uMsg != WM_SYSCHAR);
004af 81 bd 88 09 00
00 06 01 00 00 cmp DWORD PTR uMsg$[rbp], 262 ; 00000106H
004b9 74 0c je SHORT $LN175@windowProc
004bb c7 85 44 09 00
00 01 00 00 00 mov DWORD PTR tv187[rbp], 1
004c5 eb 0a jmp SHORT $LN176@windowProc
$LN175@windowProc:
004c7 c7 85 44 09 00
00 00 00 00 00 mov DWORD PTR tv187[rbp], 0
$LN176@windowProc:
004d1 e8 00 00 00 00 call getKeyMods
004d6 44 8b 8d 44 09
00 00 mov r9d, DWORD PTR tv187[rbp]
004dd 44 8b c0 mov r8d, eax
004e0 8b 55 64 mov edx, DWORD PTR codepoint$13[rbp]
004e3 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
004e7 e8 00 00 00 00 call _glfwInputChar
$LN52@windowProc:
; 681 : }
; 682 :
; 683 : if (uMsg == WM_SYSCHAR && window->win32.keymenu)
004ec 81 bd 88 09 00
00 06 01 00 00 cmp DWORD PTR uMsg$[rbp], 262 ; 00000106H
004f6 75 12 jne SHORT $LN56@windowProc
004f8 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
004fc 83 b8 88 03 00
00 00 cmp DWORD PTR [rax+904], 0
00503 74 05 je SHORT $LN56@windowProc
; 684 : break;
00505 e9 63 12 00 00 jmp $LN2@windowProc
$LN56@windowProc:
; 685 :
; 686 : return 0;
0050a 33 c0 xor eax, eax
0050c e9 7d 12 00 00 jmp $LN1@windowProc
$LN57@windowProc:
; 687 : }
; 688 :
; 689 : case WM_UNICHAR:
; 690 : {
; 691 : if (wParam == UNICODE_NOCHAR)
00511 48 81 bd 90 09
00 00 ff ff 00
00 cmp QWORD PTR wParam$[rbp], 65535 ; 0000ffffH
0051c 75 0a jne SHORT $LN58@windowProc
; 692 : {
; 693 : // WM_UNICHAR is not sent by Windows, but is sent by some
; 694 : // third-party input method engine
; 695 : // Returning TRUE here announces support for this message
; 696 : return TRUE;
0051e b8 01 00 00 00 mov eax, 1
00523 e9 66 12 00 00 jmp $LN1@windowProc
$LN58@windowProc:
; 697 : }
; 698 :
; 699 : _glfwInputChar(window, (uint32_t) wParam, getKeyMods(), GLFW_TRUE);
00528 e8 00 00 00 00 call getKeyMods
0052d 41 b9 01 00 00
00 mov r9d, 1
00533 44 8b c0 mov r8d, eax
00536 8b 95 90 09 00
00 mov edx, DWORD PTR wParam$[rbp]
0053c 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00540 e8 00 00 00 00 call _glfwInputChar
; 700 : return 0;
00545 33 c0 xor eax, eax
00547 e9 42 12 00 00 jmp $LN1@windowProc
$LN59@windowProc:
$LN60@windowProc:
$LN61@windowProc:
$LN62@windowProc:
; 701 : }
; 702 :
; 703 : case WM_KEYDOWN:
; 704 : case WM_SYSKEYDOWN:
; 705 : case WM_KEYUP:
; 706 : case WM_SYSKEYUP:
; 707 : {
; 708 : int key, scancode;
; 709 : const int action = (HIWORD(lParam) & KF_UP) ? GLFW_RELEASE : GLFW_PRESS;
0054c 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
00553 48 c1 e8 10 shr rax, 16
00557 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
0055d 0f b7 c0 movzx eax, ax
00560 25 00 80 00 00 and eax, 32768 ; 00008000H
00565 85 c0 test eax, eax
00567 74 0c je SHORT $LN177@windowProc
00569 c7 85 44 09 00
00 00 00 00 00 mov DWORD PTR tv208[rbp], 0
00573 eb 0a jmp SHORT $LN178@windowProc
$LN177@windowProc:
00575 c7 85 44 09 00
00 01 00 00 00 mov DWORD PTR tv208[rbp], 1
$LN178@windowProc:
0057f 8b 85 44 09 00
00 mov eax, DWORD PTR tv208[rbp]
00585 89 85 c4 00 00
00 mov DWORD PTR action$16[rbp], eax
; 710 : const int mods = getKeyMods();
0058b e8 00 00 00 00 call getKeyMods
00590 89 85 e4 00 00
00 mov DWORD PTR mods$17[rbp], eax
; 711 :
; 712 : scancode = (HIWORD(lParam) & (KF_EXTENDED | 0xff));
00596 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
0059d 48 c1 e8 10 shr rax, 16
005a1 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
005a7 0f b7 c0 movzx eax, ax
005aa 25 ff 01 00 00 and eax, 511 ; 000001ffH
005af 89 85 a4 00 00
00 mov DWORD PTR scancode$15[rbp], eax
; 713 : if (!scancode)
005b5 83 bd a4 00 00
00 00 cmp DWORD PTR scancode$15[rbp], 0
005bc 75 14 jne SHORT $LN63@windowProc
; 714 : {
; 715 : // NOTE: Some synthetic key messages have a scancode of zero
; 716 : // HACK: Map the virtual key back to a usable scancode
; 717 : scancode = MapVirtualKeyW((UINT) wParam, MAPVK_VK_TO_VSC);
005be 33 d2 xor edx, edx
005c0 8b 8d 90 09 00
00 mov ecx, DWORD PTR wParam$[rbp]
005c6 ff 15 00 00 00
00 call QWORD PTR __imp_MapVirtualKeyW
005cc 89 85 a4 00 00
00 mov DWORD PTR scancode$15[rbp], eax
$LN63@windowProc:
; 718 : }
; 719 :
; 720 : // HACK: Alt+PrtSc has a different scancode than just PrtSc
; 721 : if (scancode == 0x54)
005d2 83 bd a4 00 00
00 54 cmp DWORD PTR scancode$15[rbp], 84 ; 00000054H
005d9 75 0a jne SHORT $LN64@windowProc
; 722 : scancode = 0x137;
005db c7 85 a4 00 00
00 37 01 00 00 mov DWORD PTR scancode$15[rbp], 311 ; 00000137H
$LN64@windowProc:
; 723 :
; 724 : // HACK: Ctrl+Pause has a different scancode than just Pause
; 725 : if (scancode == 0x146)
005e5 81 bd a4 00 00
00 46 01 00 00 cmp DWORD PTR scancode$15[rbp], 326 ; 00000146H
005ef 75 0a jne SHORT $LN65@windowProc
; 726 : scancode = 0x45;
005f1 c7 85 a4 00 00
00 45 00 00 00 mov DWORD PTR scancode$15[rbp], 69 ; 00000045H
$LN65@windowProc:
; 727 :
; 728 : // HACK: CJK IME sets the extended bit for right Shift
; 729 : if (scancode == 0x136)
005fb 81 bd a4 00 00
00 36 01 00 00 cmp DWORD PTR scancode$15[rbp], 310 ; 00000136H
00605 75 0a jne SHORT $LN66@windowProc
; 730 : scancode = 0x36;
00607 c7 85 a4 00 00
00 36 00 00 00 mov DWORD PTR scancode$15[rbp], 54 ; 00000036H
$LN66@windowProc:
; 731 :
; 732 : key = _glfw.win32.keycodes[scancode];
00611 48 63 85 a4 00
00 00 movsxd rax, DWORD PTR scancode$15[rbp]
00618 48 8d 0d a8 1b
00 00 lea rcx, OFFSET FLAT:_glfw+7080
0061f 0f bf 04 41 movsx eax, WORD PTR [rcx+rax*2]
00623 89 85 84 00 00
00 mov DWORD PTR key$14[rbp], eax
; 733 :
; 734 : // The Ctrl keys require special handling
; 735 : if (wParam == VK_CONTROL)
00629 48 83 bd 90 09
00 00 11 cmp QWORD PTR wParam$[rbp], 17
00631 0f 85 cf 00 00
00 jne $LN67@windowProc
; 736 : {
; 737 : if (HIWORD(lParam) & KF_EXTENDED)
00637 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
0063e 48 c1 e8 10 shr rax, 16
00642 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00648 0f b7 c0 movzx eax, ax
0064b 25 00 01 00 00 and eax, 256 ; 00000100H
00650 85 c0 test eax, eax
00652 74 0f je SHORT $LN69@windowProc
; 738 : {
; 739 : // Right side keys have the extended key bit set
; 740 : key = GLFW_KEY_RIGHT_CONTROL;
00654 c7 85 84 00 00
00 59 01 00 00 mov DWORD PTR key$14[rbp], 345 ; 00000159H
; 741 : }
0065e e9 a1 00 00 00 jmp $LN70@windowProc
$LN69@windowProc:
; 742 : else
; 743 : {
; 744 : // NOTE: Alt Gr sends Left Ctrl followed by Right Alt
; 745 : // HACK: We only want one event for Alt Gr, so if we detect
; 746 : // this sequence we discard this Left Ctrl message now
; 747 : // and later report Right Alt normally
; 748 : MSG next;
; 749 : const DWORD time = GetMessageTime();
00663 ff 15 00 00 00
00 call QWORD PTR __imp_GetMessageTime
00669 89 85 54 01 00
00 mov DWORD PTR time$19[rbp], eax
; 750 :
; 751 : if (PeekMessageW(&next, NULL, 0, 0, PM_NOREMOVE))
0066f c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
00677 45 33 c9 xor r9d, r9d
0067a 45 33 c0 xor r8d, r8d
0067d 33 d2 xor edx, edx
0067f 48 8d 8d 08 01
00 00 lea rcx, QWORD PTR next$18[rbp]
00686 ff 15 00 00 00
00 call QWORD PTR __imp_PeekMessageW
0068c 85 c0 test eax, eax
0068e 74 6a je SHORT $LN71@windowProc
; 752 : {
; 753 : if (next.message == WM_KEYDOWN ||
; 754 : next.message == WM_SYSKEYDOWN ||
; 755 : next.message == WM_KEYUP ||
00690 81 bd 10 01 00
00 00 01 00 00 cmp DWORD PTR next$18[rbp+8], 256 ; 00000100H
0069a 74 24 je SHORT $LN73@windowProc
0069c 81 bd 10 01 00
00 04 01 00 00 cmp DWORD PTR next$18[rbp+8], 260 ; 00000104H
006a6 74 18 je SHORT $LN73@windowProc
006a8 81 bd 10 01 00
00 01 01 00 00 cmp DWORD PTR next$18[rbp+8], 257 ; 00000101H
006b2 74 0c je SHORT $LN73@windowProc
006b4 81 bd 10 01 00
00 05 01 00 00 cmp DWORD PTR next$18[rbp+8], 261 ; 00000105H
006be 75 3a jne SHORT $LN72@windowProc
$LN73@windowProc:
; 756 : next.message == WM_SYSKEYUP)
; 757 : {
; 758 : if (next.wParam == VK_MENU &&
; 759 : (HIWORD(next.lParam) & KF_EXTENDED) &&
006c0 48 83 bd 18 01
00 00 12 cmp QWORD PTR next$18[rbp+16], 18
006c8 75 30 jne SHORT $LN74@windowProc
006ca 48 8b 85 20 01
00 00 mov rax, QWORD PTR next$18[rbp+24]
006d1 48 c1 e8 10 shr rax, 16
006d5 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
006db 0f b7 c0 movzx eax, ax
006de 25 00 01 00 00 and eax, 256 ; 00000100H
006e3 85 c0 test eax, eax
006e5 74 13 je SHORT $LN74@windowProc
006e7 8b 85 54 01 00
00 mov eax, DWORD PTR time$19[rbp]
006ed 39 85 28 01 00
00 cmp DWORD PTR next$18[rbp+32], eax
006f3 75 05 jne SHORT $LN74@windowProc
; 760 : next.time == time)
; 761 : {
; 762 : // Next message is Right Alt down so discard this
; 763 : break;
006f5 e9 73 10 00 00 jmp $LN2@windowProc
$LN74@windowProc:
$LN72@windowProc:
$LN71@windowProc:
; 764 : }
; 765 : }
; 766 : }
; 767 :
; 768 : // This is a regular Left Ctrl message
; 769 : key = GLFW_KEY_LEFT_CONTROL;
006fa c7 85 84 00 00
00 55 01 00 00 mov DWORD PTR key$14[rbp], 341 ; 00000155H
$LN70@windowProc:
; 770 : }
; 771 : }
00704 eb 12 jmp SHORT $LN68@windowProc
$LN67@windowProc:
; 772 : else if (wParam == VK_PROCESSKEY)
00706 48 81 bd 90 09
00 00 e5 00 00
00 cmp QWORD PTR wParam$[rbp], 229 ; 000000e5H
00711 75 05 jne SHORT $LN75@windowProc
; 773 : {
; 774 : // IME notifies that keys have been filtered by setting the
; 775 : // virtual key-code to VK_PROCESSKEY
; 776 : break;
00713 e9 55 10 00 00 jmp $LN2@windowProc
$LN75@windowProc:
$LN68@windowProc:
; 777 : }
; 778 :
; 779 : if (action == GLFW_RELEASE && wParam == VK_SHIFT)
00718 83 bd c4 00 00
00 00 cmp DWORD PTR action$16[rbp], 0
0071f 75 58 jne SHORT $LN76@windowProc
00721 48 83 bd 90 09
00 00 10 cmp QWORD PTR wParam$[rbp], 16
00729 75 4e jne SHORT $LN76@windowProc
; 780 : {
; 781 : // HACK: Release both Shift keys on Shift up event, as when both
; 782 : // are pressed the first release does not emit any event
; 783 : // NOTE: The other half of this is in _glfwPollEventsWin32
; 784 : _glfwInputKey(window, GLFW_KEY_LEFT_SHIFT, scancode, action, mods);
0072b 8b 85 e4 00 00
00 mov eax, DWORD PTR mods$17[rbp]
00731 89 44 24 20 mov DWORD PTR [rsp+32], eax
00735 44 8b 8d c4 00
00 00 mov r9d, DWORD PTR action$16[rbp]
0073c 44 8b 85 a4 00
00 00 mov r8d, DWORD PTR scancode$15[rbp]
00743 ba 54 01 00 00 mov edx, 340 ; 00000154H
00748 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
0074c e8 00 00 00 00 call _glfwInputKey
; 785 : _glfwInputKey(window, GLFW_KEY_RIGHT_SHIFT, scancode, action, mods);
00751 8b 85 e4 00 00
00 mov eax, DWORD PTR mods$17[rbp]
00757 89 44 24 20 mov DWORD PTR [rsp+32], eax
0075b 44 8b 8d c4 00
00 00 mov r9d, DWORD PTR action$16[rbp]
00762 44 8b 85 a4 00
00 00 mov r8d, DWORD PTR scancode$15[rbp]
00769 ba 58 01 00 00 mov edx, 344 ; 00000158H
0076e 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00772 e8 00 00 00 00 call _glfwInputKey
; 786 : }
00777 eb 7c jmp SHORT $LN77@windowProc
$LN76@windowProc:
; 787 : else if (wParam == VK_SNAPSHOT)
00779 48 83 bd 90 09
00 00 2c cmp QWORD PTR wParam$[rbp], 44 ; 0000002cH
00781 75 4b jne SHORT $LN78@windowProc
; 788 : {
; 789 : // HACK: Key down is not reported for the Print Screen key
; 790 : _glfwInputKey(window, key, scancode, GLFW_PRESS, mods);
00783 8b 85 e4 00 00
00 mov eax, DWORD PTR mods$17[rbp]
00789 89 44 24 20 mov DWORD PTR [rsp+32], eax
0078d 41 b9 01 00 00
00 mov r9d, 1
00793 44 8b 85 a4 00
00 00 mov r8d, DWORD PTR scancode$15[rbp]
0079a 8b 95 84 00 00
00 mov edx, DWORD PTR key$14[rbp]
007a0 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
007a4 e8 00 00 00 00 call _glfwInputKey
; 791 : _glfwInputKey(window, key, scancode, GLFW_RELEASE, mods);
007a9 8b 85 e4 00 00
00 mov eax, DWORD PTR mods$17[rbp]
007af 89 44 24 20 mov DWORD PTR [rsp+32], eax
007b3 45 33 c9 xor r9d, r9d
007b6 44 8b 85 a4 00
00 00 mov r8d, DWORD PTR scancode$15[rbp]
007bd 8b 95 84 00 00
00 mov edx, DWORD PTR key$14[rbp]
007c3 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
007c7 e8 00 00 00 00 call _glfwInputKey
; 792 : }
007cc eb 27 jmp SHORT $LN79@windowProc
$LN78@windowProc:
; 793 : else
; 794 : _glfwInputKey(window, key, scancode, action, mods);
007ce 8b 85 e4 00 00
00 mov eax, DWORD PTR mods$17[rbp]
007d4 89 44 24 20 mov DWORD PTR [rsp+32], eax
007d8 44 8b 8d c4 00
00 00 mov r9d, DWORD PTR action$16[rbp]
007df 44 8b 85 a4 00
00 00 mov r8d, DWORD PTR scancode$15[rbp]
007e6 8b 95 84 00 00
00 mov edx, DWORD PTR key$14[rbp]
007ec 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
007f0 e8 00 00 00 00 call _glfwInputKey
$LN79@windowProc:
$LN77@windowProc:
; 795 :
; 796 : break;
007f5 e9 73 0f 00 00 jmp $LN2@windowProc
$LN80@windowProc:
$LN81@windowProc:
$LN82@windowProc:
$LN83@windowProc:
$LN84@windowProc:
$LN85@windowProc:
$LN86@windowProc:
$LN87@windowProc:
; 797 : }
; 798 :
; 799 : case WM_LBUTTONDOWN:
; 800 : case WM_RBUTTONDOWN:
; 801 : case WM_MBUTTONDOWN:
; 802 : case WM_XBUTTONDOWN:
; 803 : case WM_LBUTTONUP:
; 804 : case WM_RBUTTONUP:
; 805 : case WM_MBUTTONUP:
; 806 : case WM_XBUTTONUP:
; 807 : {
; 808 : int i, button, action;
; 809 :
; 810 : if (uMsg == WM_LBUTTONDOWN || uMsg == WM_LBUTTONUP)
007fa 81 bd 88 09 00
00 01 02 00 00 cmp DWORD PTR uMsg$[rbp], 513 ; 00000201H
00804 74 0c je SHORT $LN90@windowProc
00806 81 bd 88 09 00
00 02 02 00 00 cmp DWORD PTR uMsg$[rbp], 514 ; 00000202H
00810 75 0c jne SHORT $LN88@windowProc
$LN90@windowProc:
; 811 : button = GLFW_MOUSE_BUTTON_LEFT;
00812 c7 85 94 01 00
00 00 00 00 00 mov DWORD PTR button$21[rbp], 0
0081c eb 77 jmp SHORT $LN89@windowProc
$LN88@windowProc:
; 812 : else if (uMsg == WM_RBUTTONDOWN || uMsg == WM_RBUTTONUP)
0081e 81 bd 88 09 00
00 04 02 00 00 cmp DWORD PTR uMsg$[rbp], 516 ; 00000204H
00828 74 0c je SHORT $LN93@windowProc
0082a 81 bd 88 09 00
00 05 02 00 00 cmp DWORD PTR uMsg$[rbp], 517 ; 00000205H
00834 75 0c jne SHORT $LN91@windowProc
$LN93@windowProc:
; 813 : button = GLFW_MOUSE_BUTTON_RIGHT;
00836 c7 85 94 01 00
00 01 00 00 00 mov DWORD PTR button$21[rbp], 1
00840 eb 53 jmp SHORT $LN92@windowProc
$LN91@windowProc:
; 814 : else if (uMsg == WM_MBUTTONDOWN || uMsg == WM_MBUTTONUP)
00842 81 bd 88 09 00
00 07 02 00 00 cmp DWORD PTR uMsg$[rbp], 519 ; 00000207H
0084c 74 0c je SHORT $LN96@windowProc
0084e 81 bd 88 09 00
00 08 02 00 00 cmp DWORD PTR uMsg$[rbp], 520 ; 00000208H
00858 75 0c jne SHORT $LN94@windowProc
$LN96@windowProc:
; 815 : button = GLFW_MOUSE_BUTTON_MIDDLE;
0085a c7 85 94 01 00
00 02 00 00 00 mov DWORD PTR button$21[rbp], 2
00864 eb 2f jmp SHORT $LN95@windowProc
$LN94@windowProc:
; 816 : else if (GET_XBUTTON_WPARAM(wParam) == XBUTTON1)
00866 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
0086d 48 c1 e8 10 shr rax, 16
00871 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00877 0f b7 c0 movzx eax, ax
0087a 83 f8 01 cmp eax, 1
0087d 75 0c jne SHORT $LN97@windowProc
; 817 : button = GLFW_MOUSE_BUTTON_4;
0087f c7 85 94 01 00
00 03 00 00 00 mov DWORD PTR button$21[rbp], 3
00889 eb 0a jmp SHORT $LN98@windowProc
$LN97@windowProc:
; 818 : else
; 819 : button = GLFW_MOUSE_BUTTON_5;
0088b c7 85 94 01 00
00 04 00 00 00 mov DWORD PTR button$21[rbp], 4
$LN98@windowProc:
$LN95@windowProc:
$LN92@windowProc:
$LN89@windowProc:
; 820 :
; 821 : if (uMsg == WM_LBUTTONDOWN || uMsg == WM_RBUTTONDOWN ||
; 822 : uMsg == WM_MBUTTONDOWN || uMsg == WM_XBUTTONDOWN)
00895 81 bd 88 09 00
00 01 02 00 00 cmp DWORD PTR uMsg$[rbp], 513 ; 00000201H
0089f 74 24 je SHORT $LN101@windowProc
008a1 81 bd 88 09 00
00 04 02 00 00 cmp DWORD PTR uMsg$[rbp], 516 ; 00000204H
008ab 74 18 je SHORT $LN101@windowProc
008ad 81 bd 88 09 00
00 07 02 00 00 cmp DWORD PTR uMsg$[rbp], 519 ; 00000207H
008b7 74 0c je SHORT $LN101@windowProc
008b9 81 bd 88 09 00
00 0b 02 00 00 cmp DWORD PTR uMsg$[rbp], 523 ; 0000020bH
008c3 75 0c jne SHORT $LN99@windowProc
$LN101@windowProc:
; 823 : {
; 824 : action = GLFW_PRESS;
008c5 c7 85 b4 01 00
00 01 00 00 00 mov DWORD PTR action$22[rbp], 1
; 825 : }
008cf eb 0a jmp SHORT $LN100@windowProc
$LN99@windowProc:
; 826 : else
; 827 : action = GLFW_RELEASE;
008d1 c7 85 b4 01 00
00 00 00 00 00 mov DWORD PTR action$22[rbp], 0
$LN100@windowProc:
; 828 :
; 829 : for (i = 0; i <= GLFW_MOUSE_BUTTON_LAST; i++)
008db c7 85 74 01 00
00 00 00 00 00 mov DWORD PTR i$20[rbp], 0
008e5 eb 0e jmp SHORT $LN8@windowProc
$LN6@windowProc:
008e7 8b 85 74 01 00
00 mov eax, DWORD PTR i$20[rbp]
008ed ff c0 inc eax
008ef 89 85 74 01 00
00 mov DWORD PTR i$20[rbp], eax
$LN8@windowProc:
008f5 83 bd 74 01 00
00 07 cmp DWORD PTR i$20[rbp], 7
008fc 7f 1c jg SHORT $LN7@windowProc
; 830 : {
; 831 : if (window->mouseButtons[i] == GLFW_PRESS)
008fe 48 63 85 74 01
00 00 movsxd rax, DWORD PTR i$20[rbp]
00905 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00909 0f be 84 01 88
00 00 00 movsx eax, BYTE PTR [rcx+rax+136]
00911 83 f8 01 cmp eax, 1
00914 75 02 jne SHORT $LN102@windowProc
; 832 : break;
00916 eb 02 jmp SHORT $LN7@windowProc
$LN102@windowProc:
; 833 : }
00918 eb cd jmp SHORT $LN6@windowProc
$LN7@windowProc:
; 834 :
; 835 : if (i > GLFW_MOUSE_BUTTON_LAST)
0091a 83 bd 74 01 00
00 07 cmp DWORD PTR i$20[rbp], 7
00921 7e 0d jle SHORT $LN103@windowProc
; 836 : SetCapture(hWnd);
00923 48 8b 8d 80 09
00 00 mov rcx, QWORD PTR hWnd$[rbp]
0092a ff 15 00 00 00
00 call QWORD PTR __imp_SetCapture
$LN103@windowProc:
; 837 :
; 838 : _glfwInputMouseClick(window, button, action, getKeyMods());
00930 e8 00 00 00 00 call getKeyMods
00935 44 8b c8 mov r9d, eax
00938 44 8b 85 b4 01
00 00 mov r8d, DWORD PTR action$22[rbp]
0093f 8b 95 94 01 00
00 mov edx, DWORD PTR button$21[rbp]
00945 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00949 e8 00 00 00 00 call _glfwInputMouseClick
; 839 :
; 840 : for (i = 0; i <= GLFW_MOUSE_BUTTON_LAST; i++)
0094e c7 85 74 01 00
00 00 00 00 00 mov DWORD PTR i$20[rbp], 0
00958 eb 0e jmp SHORT $LN11@windowProc
$LN9@windowProc:
0095a 8b 85 74 01 00
00 mov eax, DWORD PTR i$20[rbp]
00960 ff c0 inc eax
00962 89 85 74 01 00
00 mov DWORD PTR i$20[rbp], eax
$LN11@windowProc:
00968 83 bd 74 01 00
00 07 cmp DWORD PTR i$20[rbp], 7
0096f 7f 1c jg SHORT $LN10@windowProc
; 841 : {
; 842 : if (window->mouseButtons[i] == GLFW_PRESS)
00971 48 63 85 74 01
00 00 movsxd rax, DWORD PTR i$20[rbp]
00978 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
0097c 0f be 84 01 88
00 00 00 movsx eax, BYTE PTR [rcx+rax+136]
00984 83 f8 01 cmp eax, 1
00987 75 02 jne SHORT $LN104@windowProc
; 843 : break;
00989 eb 02 jmp SHORT $LN10@windowProc
$LN104@windowProc:
; 844 : }
0098b eb cd jmp SHORT $LN9@windowProc
$LN10@windowProc:
; 845 :
; 846 : if (i > GLFW_MOUSE_BUTTON_LAST)
0098d 83 bd 74 01 00
00 07 cmp DWORD PTR i$20[rbp], 7
00994 7e 06 jle SHORT $LN105@windowProc
; 847 : ReleaseCapture();
00996 ff 15 00 00 00
00 call QWORD PTR __imp_ReleaseCapture
$LN105@windowProc:
; 848 :
; 849 : if (uMsg == WM_XBUTTONDOWN || uMsg == WM_XBUTTONUP)
0099c 81 bd 88 09 00
00 0b 02 00 00 cmp DWORD PTR uMsg$[rbp], 523 ; 0000020bH
009a6 74 0c je SHORT $LN107@windowProc
009a8 81 bd 88 09 00
00 0c 02 00 00 cmp DWORD PTR uMsg$[rbp], 524 ; 0000020cH
009b2 75 0a jne SHORT $LN106@windowProc
$LN107@windowProc:
; 850 : return TRUE;
009b4 b8 01 00 00 00 mov eax, 1
009b9 e9 d0 0d 00 00 jmp $LN1@windowProc
$LN106@windowProc:
; 851 :
; 852 : return 0;
009be 33 c0 xor eax, eax
009c0 e9 c9 0d 00 00 jmp $LN1@windowProc
$LN108@windowProc:
; 853 : }
; 854 :
; 855 : case WM_MOUSEMOVE:
; 856 : {
; 857 : const int x = GET_X_LPARAM(lParam);
009c5 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
009cc 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
009d2 98 cwde
009d3 89 85 d4 01 00
00 mov DWORD PTR x$23[rbp], eax
; 858 : const int y = GET_Y_LPARAM(lParam);
009d9 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
009e0 48 c1 e8 10 shr rax, 16
009e4 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
009ea 98 cwde
009eb 89 85 f4 01 00
00 mov DWORD PTR y$24[rbp], eax
; 859 :
; 860 : if (!window->win32.cursorTracked)
009f1 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
009f5 83 b8 70 03 00
00 00 cmp DWORD PTR [rax+880], 0
009fc 75 63 jne SHORT $LN109@windowProc
; 861 : {
; 862 : TRACKMOUSEEVENT tme;
; 863 : ZeroMemory(&tme, sizeof(tme));
009fe 41 b8 18 00 00
00 mov r8d, 24
00a04 33 d2 xor edx, edx
00a06 48 8d 8d 18 02
00 00 lea rcx, QWORD PTR tme$25[rbp]
00a0d e8 00 00 00 00 call memset
; 864 : tme.cbSize = sizeof(tme);
00a12 c7 85 18 02 00
00 18 00 00 00 mov DWORD PTR tme$25[rbp], 24
; 865 : tme.dwFlags = TME_LEAVE;
00a1c c7 85 1c 02 00
00 02 00 00 00 mov DWORD PTR tme$25[rbp+4], 2
; 866 : tme.hwndTrack = window->win32.handle;
00a26 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00a2a 48 8b 80 58 03
00 00 mov rax, QWORD PTR [rax+856]
00a31 48 89 85 20 02
00 00 mov QWORD PTR tme$25[rbp+8], rax
; 867 : TrackMouseEvent(&tme);
00a38 48 8d 8d 18 02
00 00 lea rcx, QWORD PTR tme$25[rbp]
00a3f ff 15 00 00 00
00 call QWORD PTR __imp_TrackMouseEvent
; 868 :
; 869 : window->win32.cursorTracked = GLFW_TRUE;
00a45 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00a49 c7 80 70 03 00
00 01 00 00 00 mov DWORD PTR [rax+880], 1
; 870 : _glfwInputCursorEnter(window, GLFW_TRUE);
00a53 ba 01 00 00 00 mov edx, 1
00a58 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00a5c e8 00 00 00 00 call _glfwInputCursorEnter
$LN109@windowProc:
; 871 : }
; 872 :
; 873 : if (window->cursorMode == GLFW_CURSOR_DISABLED)
00a61 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00a65 81 b8 84 00 00
00 03 40 03 00 cmp DWORD PTR [rax+132], 212995 ; 00034003H
00a6f 0f 85 9c 00 00
00 jne $LN110@windowProc
; 874 : {
; 875 : const int dx = x - window->win32.lastCursorPosX;
00a75 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00a79 8b 80 94 03 00
00 mov eax, DWORD PTR [rax+916]
00a7f 8b 8d d4 01 00
00 mov ecx, DWORD PTR x$23[rbp]
00a85 2b c8 sub ecx, eax
00a87 8b c1 mov eax, ecx
00a89 89 85 44 02 00
00 mov DWORD PTR dx$26[rbp], eax
; 876 : const int dy = y - window->win32.lastCursorPosY;
00a8f 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00a93 8b 80 98 03 00
00 mov eax, DWORD PTR [rax+920]
00a99 8b 8d f4 01 00
00 mov ecx, DWORD PTR y$24[rbp]
00a9f 2b c8 sub ecx, eax
00aa1 8b c1 mov eax, ecx
00aa3 89 85 64 02 00
00 mov DWORD PTR dy$27[rbp], eax
; 877 :
; 878 : if (_glfw.win32.disabledCursorWindow != window)
00aa9 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00aad 48 39 05 48 29
00 00 cmp QWORD PTR _glfw+10568, rax
00ab4 74 05 je SHORT $LN112@windowProc
; 879 : break;
00ab6 e9 b2 0c 00 00 jmp $LN2@windowProc
$LN112@windowProc:
; 880 : if (window->rawMouseMotion)
00abb 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00abf 83 b8 00 02 00
00 00 cmp DWORD PTR [rax+512], 0
00ac6 74 05 je SHORT $LN113@windowProc
; 881 : break;
00ac8 e9 a0 0c 00 00 jmp $LN2@windowProc
$LN113@windowProc:
; 882 :
; 883 : _glfwInputCursorPos(window,
00acd f2 0f 2a 85 64
02 00 00 cvtsi2sd xmm0, DWORD PTR dy$27[rbp]
00ad5 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00ad9 f2 0f 10 88 f8
01 00 00 movsd xmm1, QWORD PTR [rax+504]
00ae1 f2 0f 58 c8 addsd xmm1, xmm0
00ae5 0f 28 c1 movaps xmm0, xmm1
00ae8 f2 0f 2a 8d 44
02 00 00 cvtsi2sd xmm1, DWORD PTR dx$26[rbp]
00af0 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00af4 f2 0f 10 90 f0
01 00 00 movsd xmm2, QWORD PTR [rax+496]
00afc f2 0f 58 d1 addsd xmm2, xmm1
00b00 0f 28 ca movaps xmm1, xmm2
00b03 0f 28 d0 movaps xmm2, xmm0
00b06 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00b0a e8 00 00 00 00 call _glfwInputCursorPos
; 884 : window->virtualCursorPosX + dx,
; 885 : window->virtualCursorPosY + dy);
; 886 : }
00b0f eb 1c jmp SHORT $LN111@windowProc
$LN110@windowProc:
; 887 : else
; 888 : _glfwInputCursorPos(window, x, y);
00b11 f2 0f 2a 85 f4
01 00 00 cvtsi2sd xmm0, DWORD PTR y$24[rbp]
00b19 f2 0f 2a 8d d4
01 00 00 cvtsi2sd xmm1, DWORD PTR x$23[rbp]
00b21 0f 28 d0 movaps xmm2, xmm0
00b24 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00b28 e8 00 00 00 00 call _glfwInputCursorPos
$LN111@windowProc:
; 889 :
; 890 : window->win32.lastCursorPosX = x;
00b2d 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00b31 8b 8d d4 01 00
00 mov ecx, DWORD PTR x$23[rbp]
00b37 89 88 94 03 00
00 mov DWORD PTR [rax+916], ecx
; 891 : window->win32.lastCursorPosY = y;
00b3d 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00b41 8b 8d f4 01 00
00 mov ecx, DWORD PTR y$24[rbp]
00b47 89 88 98 03 00
00 mov DWORD PTR [rax+920], ecx
; 892 :
; 893 : return 0;
00b4d 33 c0 xor eax, eax
00b4f e9 3a 0c 00 00 jmp $LN1@windowProc
$LN114@windowProc:
; 894 : }
; 895 :
; 896 : case WM_INPUT:
; 897 : {
; 898 : UINT size = 0;
00b54 c7 85 84 02 00
00 00 00 00 00 mov DWORD PTR size$28[rbp], 0
; 899 : HRAWINPUT ri = (HRAWINPUT) lParam;
00b5e 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
00b65 48 89 85 a8 02
00 00 mov QWORD PTR ri$29[rbp], rax
; 900 : RAWINPUT* data = NULL;
00b6c 48 c7 85 c8 02
00 00 00 00 00
00 mov QWORD PTR data$30[rbp], 0
; 901 : int dx, dy;
; 902 :
; 903 : if (_glfw.win32.disabledCursorWindow != window)
00b77 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00b7b 48 39 05 48 29
00 00 cmp QWORD PTR _glfw+10568, rax
00b82 74 05 je SHORT $LN115@windowProc
; 904 : break;
00b84 e9 e4 0b 00 00 jmp $LN2@windowProc
$LN115@windowProc:
; 905 : if (!window->rawMouseMotion)
00b89 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00b8d 83 b8 00 02 00
00 00 cmp DWORD PTR [rax+512], 0
00b94 75 05 jne SHORT $LN116@windowProc
; 906 : break;
00b96 e9 d2 0b 00 00 jmp $LN2@windowProc
$LN116@windowProc:
; 907 :
; 908 : GetRawInputData(ri, RID_INPUT, NULL, &size, sizeof(RAWINPUTHEADER));
00b9b c7 44 24 20 18
00 00 00 mov DWORD PTR [rsp+32], 24
00ba3 4c 8d 8d 84 02
00 00 lea r9, QWORD PTR size$28[rbp]
00baa 45 33 c0 xor r8d, r8d
00bad ba 03 00 00 10 mov edx, 268435459 ; 10000003H
00bb2 48 8b 8d a8 02
00 00 mov rcx, QWORD PTR ri$29[rbp]
00bb9 ff 15 00 00 00
00 call QWORD PTR __imp_GetRawInputData
; 909 : if (size > (UINT) _glfw.win32.rawInputSize)
00bbf 8b 05 60 29 00
00 mov eax, DWORD PTR _glfw+10592
00bc5 39 85 84 02 00
00 cmp DWORD PTR size$28[rbp], eax
00bcb 76 31 jbe SHORT $LN117@windowProc
; 910 : {
; 911 : _glfw_free(_glfw.win32.rawInput);
00bcd 48 8b 0d 58 29
00 00 mov rcx, QWORD PTR _glfw+10584
00bd4 e8 00 00 00 00 call _glfw_free
; 912 : _glfw.win32.rawInput = _glfw_calloc(size, 1);
00bd9 8b 85 84 02 00
00 mov eax, DWORD PTR size$28[rbp]
00bdf ba 01 00 00 00 mov edx, 1
00be4 8b c8 mov ecx, eax
00be6 e8 00 00 00 00 call _glfw_calloc
00beb 48 89 05 58 29
00 00 mov QWORD PTR _glfw+10584, rax
; 913 : _glfw.win32.rawInputSize = size;
00bf2 8b 85 84 02 00
00 mov eax, DWORD PTR size$28[rbp]
00bf8 89 05 60 29 00
00 mov DWORD PTR _glfw+10592, eax
$LN117@windowProc:
; 914 : }
; 915 :
; 916 : size = _glfw.win32.rawInputSize;
00bfe 8b 05 60 29 00
00 mov eax, DWORD PTR _glfw+10592
00c04 89 85 84 02 00
00 mov DWORD PTR size$28[rbp], eax
; 917 : if (GetRawInputData(ri, RID_INPUT,
; 918 : _glfw.win32.rawInput, &size,
; 919 : sizeof(RAWINPUTHEADER)) == (UINT) -1)
00c0a c7 44 24 20 18
00 00 00 mov DWORD PTR [rsp+32], 24
00c12 4c 8d 8d 84 02
00 00 lea r9, QWORD PTR size$28[rbp]
00c19 4c 8b 05 58 29
00 00 mov r8, QWORD PTR _glfw+10584
00c20 ba 03 00 00 10 mov edx, 268435459 ; 10000003H
00c25 48 8b 8d a8 02
00 00 mov rcx, QWORD PTR ri$29[rbp]
00c2c ff 15 00 00 00
00 call QWORD PTR __imp_GetRawInputData
00c32 83 f8 ff cmp eax, -1 ; ffffffffH
00c35 75 16 jne SHORT $LN118@windowProc
; 920 : {
; 921 : _glfwInputError(GLFW_PLATFORM_ERROR,
00c37 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@GILDAIDE@Win32?3?5Failed?5to?5retrieve?5raw?5i@
00c3e b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00c43 e8 00 00 00 00 call _glfwInputError
; 922 : "Win32: Failed to retrieve raw input data");
; 923 : break;
00c48 e9 20 0b 00 00 jmp $LN2@windowProc
$LN118@windowProc:
; 924 : }
; 925 :
; 926 : data = _glfw.win32.rawInput;
00c4d 48 8b 05 58 29
00 00 mov rax, QWORD PTR _glfw+10584
00c54 48 89 85 c8 02
00 00 mov QWORD PTR data$30[rbp], rax
; 927 : if (data->data.mouse.usFlags & MOUSE_MOVE_ABSOLUTE)
00c5b 48 8b 85 c8 02
00 00 mov rax, QWORD PTR data$30[rbp]
00c62 0f b7 40 18 movzx eax, WORD PTR [rax+24]
00c66 83 e0 01 and eax, 1
00c69 85 c0 test eax, eax
00c6b 74 3a je SHORT $LN119@windowProc
; 928 : {
; 929 : dx = data->data.mouse.lLastX - window->win32.lastCursorPosX;
00c6d 48 8b 85 c8 02
00 00 mov rax, QWORD PTR data$30[rbp]
00c74 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00c78 8b 89 94 03 00
00 mov ecx, DWORD PTR [rcx+916]
00c7e 8b 40 24 mov eax, DWORD PTR [rax+36]
00c81 2b c1 sub eax, ecx
00c83 89 85 e4 02 00
00 mov DWORD PTR dx$31[rbp], eax
; 930 : dy = data->data.mouse.lLastY - window->win32.lastCursorPosY;
00c89 48 8b 85 c8 02
00 00 mov rax, QWORD PTR data$30[rbp]
00c90 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00c94 8b 89 98 03 00
00 mov ecx, DWORD PTR [rcx+920]
00c9a 8b 40 28 mov eax, DWORD PTR [rax+40]
00c9d 2b c1 sub eax, ecx
00c9f 89 85 04 03 00
00 mov DWORD PTR dy$32[rbp], eax
; 931 : }
00ca5 eb 20 jmp SHORT $LN120@windowProc
$LN119@windowProc:
; 932 : else
; 933 : {
; 934 : dx = data->data.mouse.lLastX;
00ca7 48 8b 85 c8 02
00 00 mov rax, QWORD PTR data$30[rbp]
00cae 8b 40 24 mov eax, DWORD PTR [rax+36]
00cb1 89 85 e4 02 00
00 mov DWORD PTR dx$31[rbp], eax
; 935 : dy = data->data.mouse.lLastY;
00cb7 48 8b 85 c8 02
00 00 mov rax, QWORD PTR data$30[rbp]
00cbe 8b 40 28 mov eax, DWORD PTR [rax+40]
00cc1 89 85 04 03 00
00 mov DWORD PTR dy$32[rbp], eax
$LN120@windowProc:
; 936 : }
; 937 :
; 938 : _glfwInputCursorPos(window,
00cc7 f2 0f 2a 85 04
03 00 00 cvtsi2sd xmm0, DWORD PTR dy$32[rbp]
00ccf 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00cd3 f2 0f 10 88 f8
01 00 00 movsd xmm1, QWORD PTR [rax+504]
00cdb f2 0f 58 c8 addsd xmm1, xmm0
00cdf 0f 28 c1 movaps xmm0, xmm1
00ce2 f2 0f 2a 8d e4
02 00 00 cvtsi2sd xmm1, DWORD PTR dx$31[rbp]
00cea 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00cee f2 0f 10 90 f0
01 00 00 movsd xmm2, QWORD PTR [rax+496]
00cf6 f2 0f 58 d1 addsd xmm2, xmm1
00cfa 0f 28 ca movaps xmm1, xmm2
00cfd 0f 28 d0 movaps xmm2, xmm0
00d00 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00d04 e8 00 00 00 00 call _glfwInputCursorPos
; 939 : window->virtualCursorPosX + dx,
; 940 : window->virtualCursorPosY + dy);
; 941 :
; 942 : window->win32.lastCursorPosX += dx;
00d09 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00d0d 8b 80 94 03 00
00 mov eax, DWORD PTR [rax+916]
00d13 03 85 e4 02 00
00 add eax, DWORD PTR dx$31[rbp]
00d19 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00d1d 89 81 94 03 00
00 mov DWORD PTR [rcx+916], eax
; 943 : window->win32.lastCursorPosY += dy;
00d23 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00d27 8b 80 98 03 00
00 mov eax, DWORD PTR [rax+920]
00d2d 03 85 04 03 00
00 add eax, DWORD PTR dy$32[rbp]
00d33 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00d37 89 81 98 03 00
00 mov DWORD PTR [rcx+920], eax
; 944 : break;
00d3d e9 2b 0a 00 00 jmp $LN2@windowProc
$LN121@windowProc:
; 945 : }
; 946 :
; 947 : case WM_MOUSELEAVE:
; 948 : {
; 949 : window->win32.cursorTracked = GLFW_FALSE;
00d42 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00d46 c7 80 70 03 00
00 00 00 00 00 mov DWORD PTR [rax+880], 0
; 950 : _glfwInputCursorEnter(window, GLFW_FALSE);
00d50 33 d2 xor edx, edx
00d52 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00d56 e8 00 00 00 00 call _glfwInputCursorEnter
; 951 : return 0;
00d5b 33 c0 xor eax, eax
00d5d e9 2c 0a 00 00 jmp $LN1@windowProc
$LN122@windowProc:
; 952 : }
; 953 :
; 954 : case WM_MOUSEWHEEL:
; 955 : {
; 956 : _glfwInputScroll(window, 0.0, (SHORT) HIWORD(wParam) / (double) WHEEL_DELTA);
00d62 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
00d69 48 c1 e8 10 shr rax, 16
00d6d 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00d73 98 cwde
00d74 f2 0f 2a c0 cvtsi2sd xmm0, eax
00d78 f2 0f 5e 05 00
00 00 00 divsd xmm0, QWORD PTR __real@405e000000000000
00d80 0f 28 d0 movaps xmm2, xmm0
00d83 0f 57 c9 xorps xmm1, xmm1
00d86 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00d8a e8 00 00 00 00 call _glfwInputScroll
; 957 : return 0;
00d8f 33 c0 xor eax, eax
00d91 e9 f8 09 00 00 jmp $LN1@windowProc
$LN123@windowProc:
; 958 : }
; 959 :
; 960 : case WM_MOUSEHWHEEL:
; 961 : {
; 962 : // This message is only sent on Windows Vista and later
; 963 : // NOTE: The X-axis is inverted for consistency with macOS and X11
; 964 : _glfwInputScroll(window, -((SHORT) HIWORD(wParam) / (double) WHEEL_DELTA), 0.0);
00d96 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
00d9d 48 c1 e8 10 shr rax, 16
00da1 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00da7 98 cwde
00da8 f2 0f 2a c0 cvtsi2sd xmm0, eax
00dac f2 0f 5e 05 00
00 00 00 divsd xmm0, QWORD PTR __real@405e000000000000
00db4 0f 57 05 00 00
00 00 xorps xmm0, QWORD PTR __xmm@80000000000000008000000000000000
00dbb 0f 57 d2 xorps xmm2, xmm2
00dbe 0f 28 c8 movaps xmm1, xmm0
00dc1 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00dc5 e8 00 00 00 00 call _glfwInputScroll
; 965 : return 0;
00dca 33 c0 xor eax, eax
00dcc e9 bd 09 00 00 jmp $LN1@windowProc
$LN124@windowProc:
$LN125@windowProc:
; 966 : }
; 967 :
; 968 : case WM_ENTERSIZEMOVE:
; 969 : case WM_ENTERMENULOOP:
; 970 : {
; 971 : if (window->win32.frameAction)
00dd1 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00dd5 83 b8 74 03 00
00 00 cmp DWORD PTR [rax+884], 0
00ddc 74 05 je SHORT $LN126@windowProc
; 972 : break;
00dde e9 8a 09 00 00 jmp $LN2@windowProc
$LN126@windowProc:
; 973 :
; 974 : // HACK: Enable the cursor while the user is moving or
; 975 : // resizing the window or using the window menu
; 976 : if (window->cursorMode == GLFW_CURSOR_DISABLED)
00de3 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00de7 81 b8 84 00 00
00 03 40 03 00 cmp DWORD PTR [rax+132], 212995 ; 00034003H
00df1 75 0b jne SHORT $LN127@windowProc
; 977 : enableCursor(window);
00df3 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00df7 e8 00 00 00 00 call enableCursor
00dfc eb 15 jmp SHORT $LN128@windowProc
$LN127@windowProc:
; 978 : else if (window->cursorMode == GLFW_CURSOR_CAPTURED)
00dfe 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00e02 81 b8 84 00 00
00 04 40 03 00 cmp DWORD PTR [rax+132], 212996 ; 00034004H
00e0c 75 05 jne SHORT $LN129@windowProc
; 979 : releaseCursor();
00e0e e8 00 00 00 00 call releaseCursor
$LN129@windowProc:
$LN128@windowProc:
; 980 :
; 981 : break;
00e13 e9 55 09 00 00 jmp $LN2@windowProc
$LN130@windowProc:
$LN131@windowProc:
; 982 : }
; 983 :
; 984 : case WM_EXITSIZEMOVE:
; 985 : case WM_EXITMENULOOP:
; 986 : {
; 987 : if (window->win32.frameAction)
00e18 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00e1c 83 b8 74 03 00
00 00 cmp DWORD PTR [rax+884], 0
00e23 74 05 je SHORT $LN132@windowProc
; 988 : break;
00e25 e9 43 09 00 00 jmp $LN2@windowProc
$LN132@windowProc:
; 989 :
; 990 : // HACK: Disable the cursor once the user is done moving or
; 991 : // resizing the window or using the menu
; 992 : if (window->cursorMode == GLFW_CURSOR_DISABLED)
00e2a 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00e2e 81 b8 84 00 00
00 03 40 03 00 cmp DWORD PTR [rax+132], 212995 ; 00034003H
00e38 75 0b jne SHORT $LN133@windowProc
; 993 : disableCursor(window);
00e3a 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00e3e e8 00 00 00 00 call disableCursor
00e43 eb 19 jmp SHORT $LN134@windowProc
$LN133@windowProc:
; 994 : else if (window->cursorMode == GLFW_CURSOR_CAPTURED)
00e45 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00e49 81 b8 84 00 00
00 04 40 03 00 cmp DWORD PTR [rax+132], 212996 ; 00034004H
00e53 75 09 jne SHORT $LN135@windowProc
; 995 : captureCursor(window);
00e55 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00e59 e8 00 00 00 00 call captureCursor
$LN135@windowProc:
$LN134@windowProc:
; 996 :
; 997 : break;
00e5e e9 0a 09 00 00 jmp $LN2@windowProc
$LN136@windowProc:
; 998 : }
; 999 :
; 1000 : case WM_SIZE:
; 1001 : {
; 1002 : const int width = LOWORD(lParam);
00e63 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
00e6a 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00e70 0f b7 c0 movzx eax, ax
00e73 89 85 24 03 00
00 mov DWORD PTR width$33[rbp], eax
; 1003 : const int height = HIWORD(lParam);
00e79 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
00e80 48 c1 e8 10 shr rax, 16
00e84 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
00e8a 0f b7 c0 movzx eax, ax
00e8d 89 85 44 03 00
00 mov DWORD PTR height$34[rbp], eax
; 1004 : const GLFWbool iconified = wParam == SIZE_MINIMIZED;
00e93 48 83 bd 90 09
00 00 01 cmp QWORD PTR wParam$[rbp], 1
00e9b 75 0c jne SHORT $LN179@windowProc
00e9d c7 85 44 09 00
00 01 00 00 00 mov DWORD PTR tv493[rbp], 1
00ea7 eb 0a jmp SHORT $LN180@windowProc
$LN179@windowProc:
00ea9 c7 85 44 09 00
00 00 00 00 00 mov DWORD PTR tv493[rbp], 0
$LN180@windowProc:
00eb3 8b 85 44 09 00
00 mov eax, DWORD PTR tv493[rbp]
00eb9 89 85 64 03 00
00 mov DWORD PTR iconified$35[rbp], eax
; 1005 : const GLFWbool maximized = wParam == SIZE_MAXIMIZED ||
00ebf 48 83 bd 90 09
00 00 02 cmp QWORD PTR wParam$[rbp], 2
00ec7 74 23 je SHORT $LN182@windowProc
00ec9 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00ecd 83 b8 7c 03 00
00 00 cmp DWORD PTR [rax+892], 0
00ed4 74 0a je SHORT $LN181@windowProc
00ed6 48 83 bd 90 09
00 00 00 cmp QWORD PTR wParam$[rbp], 0
00ede 75 0c jne SHORT $LN182@windowProc
$LN181@windowProc:
00ee0 c7 85 44 09 00
00 00 00 00 00 mov DWORD PTR tv498[rbp], 0
00eea eb 0a jmp SHORT $LN183@windowProc
$LN182@windowProc:
00eec c7 85 44 09 00
00 01 00 00 00 mov DWORD PTR tv498[rbp], 1
$LN183@windowProc:
00ef6 8b 85 44 09 00
00 mov eax, DWORD PTR tv498[rbp]
00efc 89 85 84 03 00
00 mov DWORD PTR maximized$36[rbp], eax
; 1006 : (window->win32.maximized &&
; 1007 : wParam != SIZE_RESTORED);
; 1008 :
; 1009 : if (_glfw.win32.capturedCursorWindow == window)
00f02 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f06 48 39 05 50 29
00 00 cmp QWORD PTR _glfw+10576, rax
00f0d 75 09 jne SHORT $LN137@windowProc
; 1010 : captureCursor(window);
00f0f 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00f13 e8 00 00 00 00 call captureCursor
$LN137@windowProc:
; 1011 :
; 1012 : if (window->win32.iconified != iconified)
00f18 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f1c 8b 8d 64 03 00
00 mov ecx, DWORD PTR iconified$35[rbp]
00f22 39 88 78 03 00
00 cmp DWORD PTR [rax+888], ecx
00f28 74 0f je SHORT $LN138@windowProc
; 1013 : _glfwInputWindowIconify(window, iconified);
00f2a 8b 95 64 03 00
00 mov edx, DWORD PTR iconified$35[rbp]
00f30 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00f34 e8 00 00 00 00 call _glfwInputWindowIconify
$LN138@windowProc:
; 1014 :
; 1015 : if (window->win32.maximized != maximized)
00f39 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f3d 8b 8d 84 03 00
00 mov ecx, DWORD PTR maximized$36[rbp]
00f43 39 88 7c 03 00
00 cmp DWORD PTR [rax+892], ecx
00f49 74 0f je SHORT $LN139@windowProc
; 1016 : _glfwInputWindowMaximize(window, maximized);
00f4b 8b 95 84 03 00
00 mov edx, DWORD PTR maximized$36[rbp]
00f51 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00f55 e8 00 00 00 00 call _glfwInputWindowMaximize
$LN139@windowProc:
; 1017 :
; 1018 : if (width != window->win32.width || height != window->win32.height)
00f5a 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f5e 8b 80 8c 03 00
00 mov eax, DWORD PTR [rax+908]
00f64 39 85 24 03 00
00 cmp DWORD PTR width$33[rbp], eax
00f6a 75 12 jne SHORT $LN141@windowProc
00f6c 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f70 8b 80 90 03 00
00 mov eax, DWORD PTR [rax+912]
00f76 39 85 44 03 00
00 cmp DWORD PTR height$34[rbp], eax
00f7c 74 4c je SHORT $LN140@windowProc
$LN141@windowProc:
; 1019 : {
; 1020 : window->win32.width = width;
00f7e 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f82 8b 8d 24 03 00
00 mov ecx, DWORD PTR width$33[rbp]
00f88 89 88 8c 03 00
00 mov DWORD PTR [rax+908], ecx
; 1021 : window->win32.height = height;
00f8e 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00f92 8b 8d 44 03 00
00 mov ecx, DWORD PTR height$34[rbp]
00f98 89 88 90 03 00
00 mov DWORD PTR [rax+912], ecx
; 1022 :
; 1023 : _glfwInputFramebufferSize(window, width, height);
00f9e 44 8b 85 44 03
00 00 mov r8d, DWORD PTR height$34[rbp]
00fa5 8b 95 24 03 00
00 mov edx, DWORD PTR width$33[rbp]
00fab 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00faf e8 00 00 00 00 call _glfwInputFramebufferSize
; 1024 : _glfwInputWindowSize(window, width, height);
00fb4 44 8b 85 44 03
00 00 mov r8d, DWORD PTR height$34[rbp]
00fbb 8b 95 24 03 00
00 mov edx, DWORD PTR width$33[rbp]
00fc1 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00fc5 e8 00 00 00 00 call _glfwInputWindowSize
$LN140@windowProc:
; 1025 : }
; 1026 :
; 1027 : if (window->monitor && window->win32.iconified != iconified)
00fca 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00fce 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
00fd3 74 38 je SHORT $LN142@windowProc
00fd5 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00fd9 8b 8d 64 03 00
00 mov ecx, DWORD PTR iconified$35[rbp]
00fdf 39 88 78 03 00
00 cmp DWORD PTR [rax+888], ecx
00fe5 74 26 je SHORT $LN142@windowProc
; 1028 : {
; 1029 : if (iconified)
00fe7 83 bd 64 03 00
00 00 cmp DWORD PTR iconified$35[rbp], 0
00fee 74 0b je SHORT $LN143@windowProc
; 1030 : releaseMonitor(window);
00ff0 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00ff4 e8 00 00 00 00 call releaseMonitor
00ff9 eb 12 jmp SHORT $LN144@windowProc
$LN143@windowProc:
; 1031 : else
; 1032 : {
; 1033 : acquireMonitor(window);
00ffb 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
00fff e8 00 00 00 00 call acquireMonitor
; 1034 : fitToMonitor(window);
01004 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
01008 e8 00 00 00 00 call fitToMonitor
$LN144@windowProc:
$LN142@windowProc:
; 1035 : }
; 1036 : }
; 1037 :
; 1038 : window->win32.iconified = iconified;
0100d 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01011 8b 8d 64 03 00
00 mov ecx, DWORD PTR iconified$35[rbp]
01017 89 88 78 03 00
00 mov DWORD PTR [rax+888], ecx
; 1039 : window->win32.maximized = maximized;
0101d 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01021 8b 8d 84 03 00
00 mov ecx, DWORD PTR maximized$36[rbp]
01027 89 88 7c 03 00
00 mov DWORD PTR [rax+892], ecx
; 1040 : return 0;
0102d 33 c0 xor eax, eax
0102f e9 5a 07 00 00 jmp $LN1@windowProc
$LN145@windowProc:
; 1041 : }
; 1042 :
; 1043 : case WM_MOVE:
; 1044 : {
; 1045 : if (_glfw.win32.capturedCursorWindow == window)
01034 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01038 48 39 05 50 29
00 00 cmp QWORD PTR _glfw+10576, rax
0103f 75 09 jne SHORT $LN146@windowProc
; 1046 : captureCursor(window);
01041 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
01045 e8 00 00 00 00 call captureCursor
$LN146@windowProc:
; 1047 :
; 1048 : // NOTE: This cannot use LOWORD/HIWORD recommended by MSDN, as
; 1049 : // those macros do not handle negative window positions correctly
; 1050 : _glfwInputWindowPos(window,
0104a 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
01051 48 c1 e8 10 shr rax, 16
01055 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
0105b 98 cwde
0105c 48 8b 8d 98 09
00 00 mov rcx, QWORD PTR lParam$[rbp]
01063 48 81 e1 ff ff
00 00 and rcx, 65535 ; 0000ffffH
0106a 0f bf c9 movsx ecx, cx
0106d 44 8b c0 mov r8d, eax
01070 8b d1 mov edx, ecx
01072 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
01076 e8 00 00 00 00 call _glfwInputWindowPos
; 1051 : GET_X_LPARAM(lParam),
; 1052 : GET_Y_LPARAM(lParam));
; 1053 : return 0;
0107b 33 c0 xor eax, eax
0107d e9 0c 07 00 00 jmp $LN1@windowProc
$LN147@windowProc:
; 1054 : }
; 1055 :
; 1056 : case WM_SIZING:
; 1057 : {
; 1058 : if (window->numer == GLFW_DONT_CARE ||
01082 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01086 83 78 70 ff cmp DWORD PTR [rax+112], -1
0108a 74 0a je SHORT $LN149@windowProc
0108c 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01090 83 78 74 ff cmp DWORD PTR [rax+116], -1
01094 75 05 jne SHORT $LN148@windowProc
$LN149@windowProc:
; 1059 : window->denom == GLFW_DONT_CARE)
; 1060 : {
; 1061 : break;
01096 e9 d2 06 00 00 jmp $LN2@windowProc
$LN148@windowProc:
; 1062 : }
; 1063 :
; 1064 : applyAspectRatio(window, (int) wParam, (RECT*) lParam);
0109b 4c 8b 85 98 09
00 00 mov r8, QWORD PTR lParam$[rbp]
010a2 8b 95 90 09 00
00 mov edx, DWORD PTR wParam$[rbp]
010a8 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
010ac e8 00 00 00 00 call applyAspectRatio
; 1065 : return TRUE;
010b1 b8 01 00 00 00 mov eax, 1
010b6 e9 d3 06 00 00 jmp $LN1@windowProc
$LN150@windowProc:
; 1066 : }
; 1067 :
; 1068 : case WM_GETMINMAXINFO:
; 1069 : {
; 1070 : RECT frame = {0};
010bb 48 8d 85 a8 03
00 00 lea rax, QWORD PTR frame$37[rbp]
010c2 48 8b f8 mov rdi, rax
010c5 33 c0 xor eax, eax
010c7 b9 10 00 00 00 mov ecx, 16
010cc f3 aa rep stosb
; 1071 : MINMAXINFO* mmi = (MINMAXINFO*) lParam;
010ce 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
010d5 48 89 85 d8 03
00 00 mov QWORD PTR mmi$38[rbp], rax
; 1072 : const DWORD style = getWindowStyle(window);
010dc 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
010e0 e8 00 00 00 00 call getWindowStyle
010e5 89 85 f4 03 00
00 mov DWORD PTR style$39[rbp], eax
; 1073 : const DWORD exStyle = getWindowExStyle(window);
010eb 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
010ef e8 00 00 00 00 call getWindowExStyle
010f4 89 85 14 04 00
00 mov DWORD PTR exStyle$40[rbp], eax
; 1074 :
; 1075 : if (window->monitor)
010fa 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
010fe 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
01103 74 05 je SHORT $LN151@windowProc
; 1076 : break;
01105 e9 63 06 00 00 jmp $LN2@windowProc
$LN151@windowProc:
; 1077 :
; 1078 : if (_glfwIsWindows10Version1607OrGreaterWin32())
0110a 66 b9 39 38 mov cx, 14393 ; 00003839H
0110e e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
01113 85 c0 test eax, eax
01115 74 34 je SHORT $LN152@windowProc
; 1079 : {
; 1080 : AdjustWindowRectExForDpi(&frame, style, FALSE, exStyle,
01117 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0111b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
01122 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
01128 89 44 24 20 mov DWORD PTR [rsp+32], eax
0112c 44 8b 8d 14 04
00 00 mov r9d, DWORD PTR exStyle$40[rbp]
01133 45 33 c0 xor r8d, r8d
01136 8b 95 f4 03 00
00 mov edx, DWORD PTR style$39[rbp]
0113c 48 8d 8d a8 03
00 00 lea rcx, QWORD PTR frame$37[rbp]
01143 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1081 : GetDpiForWindow(window->win32.handle));
; 1082 : }
01149 eb 1d jmp SHORT $LN153@windowProc
$LN152@windowProc:
; 1083 : else
; 1084 : AdjustWindowRectEx(&frame, style, FALSE, exStyle);
0114b 44 8b 8d 14 04
00 00 mov r9d, DWORD PTR exStyle$40[rbp]
01152 45 33 c0 xor r8d, r8d
01155 8b 95 f4 03 00
00 mov edx, DWORD PTR style$39[rbp]
0115b 48 8d 8d a8 03
00 00 lea rcx, QWORD PTR frame$37[rbp]
01162 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN153@windowProc:
; 1085 :
; 1086 : if (window->minwidth != GLFW_DONT_CARE &&
01168 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0116c 83 78 60 ff cmp DWORD PTR [rax+96], -1
01170 74 44 je SHORT $LN154@windowProc
01172 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01176 83 78 64 ff cmp DWORD PTR [rax+100], -1
0117a 74 3a je SHORT $LN154@windowProc
; 1087 : window->minheight != GLFW_DONT_CARE)
; 1088 : {
; 1089 : mmi->ptMinTrackSize.x = window->minwidth + frame.right - frame.left;
0117c 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01180 8b 40 60 mov eax, DWORD PTR [rax+96]
01183 03 85 b0 03 00
00 add eax, DWORD PTR frame$37[rbp+8]
01189 2b 85 a8 03 00
00 sub eax, DWORD PTR frame$37[rbp]
0118f 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
01196 89 41 18 mov DWORD PTR [rcx+24], eax
; 1090 : mmi->ptMinTrackSize.y = window->minheight + frame.bottom - frame.top;
01199 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0119d 8b 40 64 mov eax, DWORD PTR [rax+100]
011a0 03 85 b4 03 00
00 add eax, DWORD PTR frame$37[rbp+12]
011a6 2b 85 ac 03 00
00 sub eax, DWORD PTR frame$37[rbp+4]
011ac 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
011b3 89 41 1c mov DWORD PTR [rcx+28], eax
$LN154@windowProc:
; 1091 : }
; 1092 :
; 1093 : if (window->maxwidth != GLFW_DONT_CARE &&
011b6 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
011ba 83 78 68 ff cmp DWORD PTR [rax+104], -1
011be 74 44 je SHORT $LN155@windowProc
011c0 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
011c4 83 78 6c ff cmp DWORD PTR [rax+108], -1
011c8 74 3a je SHORT $LN155@windowProc
; 1094 : window->maxheight != GLFW_DONT_CARE)
; 1095 : {
; 1096 : mmi->ptMaxTrackSize.x = window->maxwidth + frame.right - frame.left;
011ca 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
011ce 8b 40 68 mov eax, DWORD PTR [rax+104]
011d1 03 85 b0 03 00
00 add eax, DWORD PTR frame$37[rbp+8]
011d7 2b 85 a8 03 00
00 sub eax, DWORD PTR frame$37[rbp]
011dd 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
011e4 89 41 20 mov DWORD PTR [rcx+32], eax
; 1097 : mmi->ptMaxTrackSize.y = window->maxheight + frame.bottom - frame.top;
011e7 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
011eb 8b 40 6c mov eax, DWORD PTR [rax+108]
011ee 03 85 b4 03 00
00 add eax, DWORD PTR frame$37[rbp+12]
011f4 2b 85 ac 03 00
00 sub eax, DWORD PTR frame$37[rbp+4]
011fa 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
01201 89 41 24 mov DWORD PTR [rcx+36], eax
$LN155@windowProc:
; 1098 : }
; 1099 :
; 1100 : if (!window->decorated)
01204 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01208 83 78 0c 00 cmp DWORD PTR [rax+12], 0
0120c 0f 85 b7 00 00
00 jne $LN156@windowProc
; 1101 : {
; 1102 : MONITORINFO mi;
; 1103 : const HMONITOR mh = MonitorFromWindow(window->win32.handle,
01212 ba 02 00 00 00 mov edx, 2
01217 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0121b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
01222 ff 15 00 00 00
00 call QWORD PTR __imp_MonitorFromWindow
01228 48 89 85 78 04
00 00 mov QWORD PTR mh$42[rbp], rax
; 1104 : MONITOR_DEFAULTTONEAREST);
; 1105 :
; 1106 : ZeroMemory(&mi, sizeof(mi));
0122f 41 b8 28 00 00
00 mov r8d, 40 ; 00000028H
01235 33 d2 xor edx, edx
01237 48 8d 8d 38 04
00 00 lea rcx, QWORD PTR mi$41[rbp]
0123e e8 00 00 00 00 call memset
; 1107 : mi.cbSize = sizeof(mi);
01243 c7 85 38 04 00
00 28 00 00 00 mov DWORD PTR mi$41[rbp], 40 ; 00000028H
; 1108 : GetMonitorInfoW(mh, &mi);
0124d 48 8d 95 38 04
00 00 lea rdx, QWORD PTR mi$41[rbp]
01254 48 8b 8d 78 04
00 00 mov rcx, QWORD PTR mh$42[rbp]
0125b ff 15 00 00 00
00 call QWORD PTR __imp_GetMonitorInfoW
; 1109 :
; 1110 : mmi->ptMaxPosition.x = mi.rcWork.left - mi.rcMonitor.left;
01261 8b 85 3c 04 00
00 mov eax, DWORD PTR mi$41[rbp+4]
01267 8b 8d 4c 04 00
00 mov ecx, DWORD PTR mi$41[rbp+20]
0126d 2b c8 sub ecx, eax
0126f 8b c1 mov eax, ecx
01271 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
01278 89 41 10 mov DWORD PTR [rcx+16], eax
; 1111 : mmi->ptMaxPosition.y = mi.rcWork.top - mi.rcMonitor.top;
0127b 8b 85 40 04 00
00 mov eax, DWORD PTR mi$41[rbp+8]
01281 8b 8d 50 04 00
00 mov ecx, DWORD PTR mi$41[rbp+24]
01287 2b c8 sub ecx, eax
01289 8b c1 mov eax, ecx
0128b 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
01292 89 41 14 mov DWORD PTR [rcx+20], eax
; 1112 : mmi->ptMaxSize.x = mi.rcWork.right - mi.rcWork.left;
01295 8b 85 4c 04 00
00 mov eax, DWORD PTR mi$41[rbp+20]
0129b 8b 8d 54 04 00
00 mov ecx, DWORD PTR mi$41[rbp+28]
012a1 2b c8 sub ecx, eax
012a3 8b c1 mov eax, ecx
012a5 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
012ac 89 41 08 mov DWORD PTR [rcx+8], eax
; 1113 : mmi->ptMaxSize.y = mi.rcWork.bottom - mi.rcWork.top;
012af 8b 85 50 04 00
00 mov eax, DWORD PTR mi$41[rbp+24]
012b5 8b 8d 58 04 00
00 mov ecx, DWORD PTR mi$41[rbp+32]
012bb 2b c8 sub ecx, eax
012bd 8b c1 mov eax, ecx
012bf 48 8b 8d d8 03
00 00 mov rcx, QWORD PTR mmi$38[rbp]
012c6 89 41 0c mov DWORD PTR [rcx+12], eax
$LN156@windowProc:
; 1114 : }
; 1115 :
; 1116 : return 0;
012c9 33 c0 xor eax, eax
012cb e9 be 04 00 00 jmp $LN1@windowProc
$LN157@windowProc:
; 1117 : }
; 1118 :
; 1119 : case WM_PAINT:
; 1120 : {
; 1121 : _glfwInputWindowDamage(window);
012d0 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
012d4 e8 00 00 00 00 call _glfwInputWindowDamage
; 1122 : break;
012d9 e9 8f 04 00 00 jmp $LN2@windowProc
$LN158@windowProc:
; 1123 : }
; 1124 :
; 1125 : case WM_ERASEBKGND:
; 1126 : {
; 1127 : return TRUE;
012de b8 01 00 00 00 mov eax, 1
012e3 e9 a6 04 00 00 jmp $LN1@windowProc
$LN159@windowProc:
$LN160@windowProc:
; 1128 : }
; 1129 :
; 1130 : case WM_NCACTIVATE:
; 1131 : case WM_NCPAINT:
; 1132 : {
; 1133 : // Prevent title bar from being drawn after restoring a minimized
; 1134 : // undecorated window
; 1135 : if (!window->decorated)
012e8 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
012ec 83 78 0c 00 cmp DWORD PTR [rax+12], 0
012f0 75 0a jne SHORT $LN161@windowProc
; 1136 : return TRUE;
012f2 b8 01 00 00 00 mov eax, 1
012f7 e9 92 04 00 00 jmp $LN1@windowProc
$LN161@windowProc:
; 1137 :
; 1138 : break;
012fc e9 6c 04 00 00 jmp $LN2@windowProc
$LN162@windowProc:
$LN163@windowProc:
; 1139 : }
; 1140 :
; 1141 : case WM_DWMCOMPOSITIONCHANGED:
; 1142 : case WM_DWMCOLORIZATIONCOLORCHANGED:
; 1143 : {
; 1144 : if (window->win32.transparent)
01301 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01305 83 b8 80 03 00
00 00 cmp DWORD PTR [rax+896], 0
0130c 74 09 je SHORT $LN164@windowProc
; 1145 : updateFramebufferTransparency(window);
0130e 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
01312 e8 00 00 00 00 call updateFramebufferTransparency
$LN164@windowProc:
; 1146 : return 0;
01317 33 c0 xor eax, eax
01319 e9 70 04 00 00 jmp $LN1@windowProc
$LN165@windowProc:
; 1147 : }
; 1148 :
; 1149 : case WM_GETDPISCALEDSIZE:
; 1150 : {
; 1151 : if (window->win32.scaleToMonitor)
0131e 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01322 83 b8 84 03 00
00 00 cmp DWORD PTR [rax+900], 0
01329 74 05 je SHORT $LN166@windowProc
; 1152 : break;
0132b e9 3d 04 00 00 jmp $LN2@windowProc
$LN166@windowProc:
; 1153 :
; 1154 : // Adjust the window size to keep the content area size constant
; 1155 : if (_glfwIsWindows10Version1703OrGreaterWin32())
01330 66 b9 d7 3a mov cx, 15063 ; 00003ad7H
01334 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
01339 85 c0 test eax, eax
0133b 0f 84 4f 01 00
00 je $LN167@windowProc
; 1156 : {
; 1157 : RECT source = {0}, target = {0};
01341 48 8d 85 98 04
00 00 lea rax, QWORD PTR source$43[rbp]
01348 48 8b f8 mov rdi, rax
0134b 33 c0 xor eax, eax
0134d b9 10 00 00 00 mov ecx, 16
01352 f3 aa rep stosb
01354 48 8d 85 c8 04
00 00 lea rax, QWORD PTR target$44[rbp]
0135b 48 8b f8 mov rdi, rax
0135e 33 c0 xor eax, eax
01360 b9 10 00 00 00 mov ecx, 16
01365 f3 aa rep stosb
; 1158 : SIZE* size = (SIZE*) lParam;
01367 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
0136e 48 89 85 f8 04
00 00 mov QWORD PTR size$45[rbp], rax
; 1159 :
; 1160 : AdjustWindowRectExForDpi(&source, getWindowStyle(window),
01375 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
01379 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
01380 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
01386 89 85 44 09 00
00 mov DWORD PTR tv638[rbp], eax
0138c 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
01390 e8 00 00 00 00 call getWindowExStyle
01395 89 85 48 09 00
00 mov DWORD PTR tv674[rbp], eax
0139b 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
0139f e8 00 00 00 00 call getWindowStyle
013a4 8b 8d 44 09 00
00 mov ecx, DWORD PTR tv638[rbp]
013aa 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
013ae 8b 8d 48 09 00
00 mov ecx, DWORD PTR tv674[rbp]
013b4 44 8b c9 mov r9d, ecx
013b7 45 33 c0 xor r8d, r8d
013ba 8b d0 mov edx, eax
013bc 48 8d 8d 98 04
00 00 lea rcx, QWORD PTR source$43[rbp]
013c3 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1161 : FALSE, getWindowExStyle(window),
; 1162 : GetDpiForWindow(window->win32.handle));
; 1163 : AdjustWindowRectExForDpi(&target, getWindowStyle(window),
013c9 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
013d0 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
013d6 0f b7 c0 movzx eax, ax
013d9 89 85 44 09 00
00 mov DWORD PTR tv684[rbp], eax
013df 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
013e3 e8 00 00 00 00 call getWindowExStyle
013e8 89 85 48 09 00
00 mov DWORD PTR tv686[rbp], eax
013ee 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
013f2 e8 00 00 00 00 call getWindowStyle
013f7 8b 8d 44 09 00
00 mov ecx, DWORD PTR tv684[rbp]
013fd 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
01401 8b 8d 48 09 00
00 mov ecx, DWORD PTR tv686[rbp]
01407 44 8b c9 mov r9d, ecx
0140a 45 33 c0 xor r8d, r8d
0140d 8b d0 mov edx, eax
0140f 48 8d 8d c8 04
00 00 lea rcx, QWORD PTR target$44[rbp]
01416 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1164 : FALSE, getWindowExStyle(window),
; 1165 : LOWORD(wParam));
; 1166 :
; 1167 : size->cx += (target.right - target.left) -
0141c 8b 85 c8 04 00
00 mov eax, DWORD PTR target$44[rbp]
01422 8b 8d d0 04 00
00 mov ecx, DWORD PTR target$44[rbp+8]
01428 2b c8 sub ecx, eax
0142a 8b c1 mov eax, ecx
0142c 8b 8d 98 04 00
00 mov ecx, DWORD PTR source$43[rbp]
01432 8b 95 a0 04 00
00 mov edx, DWORD PTR source$43[rbp+8]
01438 2b d1 sub edx, ecx
0143a 8b ca mov ecx, edx
0143c 2b c1 sub eax, ecx
0143e 48 8b 8d f8 04
00 00 mov rcx, QWORD PTR size$45[rbp]
01445 03 01 add eax, DWORD PTR [rcx]
01447 48 8b 8d f8 04
00 00 mov rcx, QWORD PTR size$45[rbp]
0144e 89 01 mov DWORD PTR [rcx], eax
; 1168 : (source.right - source.left);
; 1169 : size->cy += (target.bottom - target.top) -
01450 8b 85 cc 04 00
00 mov eax, DWORD PTR target$44[rbp+4]
01456 8b 8d d4 04 00
00 mov ecx, DWORD PTR target$44[rbp+12]
0145c 2b c8 sub ecx, eax
0145e 8b c1 mov eax, ecx
01460 8b 8d 9c 04 00
00 mov ecx, DWORD PTR source$43[rbp+4]
01466 8b 95 a4 04 00
00 mov edx, DWORD PTR source$43[rbp+12]
0146c 2b d1 sub edx, ecx
0146e 8b ca mov ecx, edx
01470 2b c1 sub eax, ecx
01472 48 8b 8d f8 04
00 00 mov rcx, QWORD PTR size$45[rbp]
01479 03 41 04 add eax, DWORD PTR [rcx+4]
0147c 48 8b 8d f8 04
00 00 mov rcx, QWORD PTR size$45[rbp]
01483 89 41 04 mov DWORD PTR [rcx+4], eax
; 1170 : (source.bottom - source.top);
; 1171 : return TRUE;
01486 b8 01 00 00 00 mov eax, 1
0148b e9 fe 02 00 00 jmp $LN1@windowProc
$LN167@windowProc:
; 1172 : }
; 1173 :
; 1174 : break;
01490 e9 d8 02 00 00 jmp $LN2@windowProc
$LN168@windowProc:
; 1175 : }
; 1176 :
; 1177 : case WM_DPICHANGED:
; 1178 : {
; 1179 : const float xscale = HIWORD(wParam) / (float) USER_DEFAULT_SCREEN_DPI;
01495 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
0149c 48 c1 e8 10 shr rax, 16
014a0 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
014a6 0f b7 c0 movzx eax, ax
014a9 f3 0f 2a c0 cvtsi2ss xmm0, eax
014ad f3 0f 5e 05 00
00 00 00 divss xmm0, DWORD PTR __real@42c00000
014b5 f3 0f 11 85 14
05 00 00 movss DWORD PTR xscale$46[rbp], xmm0
; 1180 : const float yscale = LOWORD(wParam) / (float) USER_DEFAULT_SCREEN_DPI;
014bd 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
014c4 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
014ca 0f b7 c0 movzx eax, ax
014cd f3 0f 2a c0 cvtsi2ss xmm0, eax
014d1 f3 0f 5e 05 00
00 00 00 divss xmm0, DWORD PTR __real@42c00000
014d9 f3 0f 11 85 34
05 00 00 movss DWORD PTR yscale$47[rbp], xmm0
; 1181 :
; 1182 : // Resize windowed mode windows that either permit rescaling or that
; 1183 : // need it to compensate for non-client area scaling
; 1184 : if (!window->monitor &&
014e1 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
014e5 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
014ea 0f 85 8b 00 00
00 jne $LN169@windowProc
014f0 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
014f4 83 b8 84 03 00
00 00 cmp DWORD PTR [rax+900], 0
014fb 75 0d jne SHORT $LN170@windowProc
014fd 66 b9 d7 3a mov cx, 15063 ; 00003ad7H
01501 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
01506 85 c0 test eax, eax
01508 74 71 je SHORT $LN169@windowProc
$LN170@windowProc:
; 1185 : (window->win32.scaleToMonitor ||
; 1186 : _glfwIsWindows10Version1703OrGreaterWin32()))
; 1187 : {
; 1188 : RECT* suggested = (RECT*) lParam;
0150a 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
01511 48 89 85 58 05
00 00 mov QWORD PTR suggested$48[rbp], rax
; 1189 : SetWindowPos(window->win32.handle, HWND_TOP,
01518 48 8b 85 58 05
00 00 mov rax, QWORD PTR suggested$48[rbp]
0151f 48 8b 8d 58 05
00 00 mov rcx, QWORD PTR suggested$48[rbp]
01526 8b 49 04 mov ecx, DWORD PTR [rcx+4]
01529 8b 40 0c mov eax, DWORD PTR [rax+12]
0152c 2b c1 sub eax, ecx
0152e 48 8b 8d 58 05
00 00 mov rcx, QWORD PTR suggested$48[rbp]
01535 48 8b 95 58 05
00 00 mov rdx, QWORD PTR suggested$48[rbp]
0153c 8b 12 mov edx, DWORD PTR [rdx]
0153e 8b 49 08 mov ecx, DWORD PTR [rcx+8]
01541 2b ca sub ecx, edx
01543 c7 44 24 30 14
00 00 00 mov DWORD PTR [rsp+48], 20
0154b 89 44 24 28 mov DWORD PTR [rsp+40], eax
0154f 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
01553 48 8b 85 58 05
00 00 mov rax, QWORD PTR suggested$48[rbp]
0155a 44 8b 48 04 mov r9d, DWORD PTR [rax+4]
0155e 48 8b 85 58 05
00 00 mov rax, QWORD PTR suggested$48[rbp]
01565 44 8b 00 mov r8d, DWORD PTR [rax]
01568 33 d2 xor edx, edx
0156a 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
0156e 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
01575 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
$LN169@windowProc:
; 1190 : suggested->left,
; 1191 : suggested->top,
; 1192 : suggested->right - suggested->left,
; 1193 : suggested->bottom - suggested->top,
; 1194 : SWP_NOACTIVATE | SWP_NOZORDER);
; 1195 : }
; 1196 :
; 1197 : _glfwInputWindowContentScale(window, xscale, yscale);
0157b f3 0f 10 95 34
05 00 00 movss xmm2, DWORD PTR yscale$47[rbp]
01583 f3 0f 10 8d 14
05 00 00 movss xmm1, DWORD PTR xscale$46[rbp]
0158b 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
0158f e8 00 00 00 00 call _glfwInputWindowContentScale
; 1198 : break;
01594 e9 d4 01 00 00 jmp $LN2@windowProc
$LN171@windowProc:
; 1199 : }
; 1200 :
; 1201 : case WM_SETCURSOR:
; 1202 : {
; 1203 : if (LOWORD(lParam) == HTCLIENT)
01599 48 8b 85 98 09
00 00 mov rax, QWORD PTR lParam$[rbp]
015a0 48 25 ff ff 00
00 and rax, 65535 ; 0000ffffH
015a6 0f b7 c0 movzx eax, ax
015a9 83 f8 01 cmp eax, 1
015ac 75 13 jne SHORT $LN172@windowProc
; 1204 : {
; 1205 : updateCursorImage(window);
015ae 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
015b2 e8 00 00 00 00 call updateCursorImage
; 1206 : return TRUE;
015b7 b8 01 00 00 00 mov eax, 1
015bc e9 cd 01 00 00 jmp $LN1@windowProc
$LN172@windowProc:
; 1207 : }
; 1208 :
; 1209 : break;
015c1 e9 a7 01 00 00 jmp $LN2@windowProc
$LN173@windowProc:
; 1210 : }
; 1211 :
; 1212 : case WM_DROPFILES:
; 1213 : {
; 1214 : HDROP drop = (HDROP) wParam;
015c6 48 8b 85 90 09
00 00 mov rax, QWORD PTR wParam$[rbp]
015cd 48 89 85 78 05
00 00 mov QWORD PTR drop$49[rbp], rax
; 1215 : POINT pt;
; 1216 : int i;
; 1217 :
; 1218 : const int count = DragQueryFileW(drop, 0xffffffff, NULL, 0);
015d4 45 33 c9 xor r9d, r9d
015d7 45 33 c0 xor r8d, r8d
015da ba ff ff ff ff mov edx, -1 ; ffffffffH
015df 48 8b 8d 78 05
00 00 mov rcx, QWORD PTR drop$49[rbp]
015e6 ff 15 00 00 00
00 call QWORD PTR __imp_DragQueryFileW
015ec 89 85 d4 05 00
00 mov DWORD PTR count$52[rbp], eax
; 1219 : char** paths = _glfw_calloc(count, sizeof(char*));
015f2 48 63 85 d4 05
00 00 movsxd rax, DWORD PTR count$52[rbp]
015f9 ba 08 00 00 00 mov edx, 8
015fe 48 8b c8 mov rcx, rax
01601 e8 00 00 00 00 call _glfw_calloc
01606 48 89 85 f8 05
00 00 mov QWORD PTR paths$53[rbp], rax
; 1220 :
; 1221 : // Move the mouse to the position of the drop
; 1222 : DragQueryPoint(drop, &pt);
0160d 48 8d 95 98 05
00 00 lea rdx, QWORD PTR pt$50[rbp]
01614 48 8b 8d 78 05
00 00 mov rcx, QWORD PTR drop$49[rbp]
0161b ff 15 00 00 00
00 call QWORD PTR __imp_DragQueryPoint
; 1223 : _glfwInputCursorPos(window, pt.x, pt.y);
01621 f2 0f 2a 85 9c
05 00 00 cvtsi2sd xmm0, DWORD PTR pt$50[rbp+4]
01629 f2 0f 2a 8d 98
05 00 00 cvtsi2sd xmm1, DWORD PTR pt$50[rbp]
01631 0f 28 d0 movaps xmm2, xmm0
01634 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
01638 e8 00 00 00 00 call _glfwInputCursorPos
; 1224 :
; 1225 : for (i = 0; i < count; i++)
0163d c7 85 b4 05 00
00 00 00 00 00 mov DWORD PTR i$51[rbp], 0
01647 eb 0e jmp SHORT $LN14@windowProc
$LN12@windowProc:
01649 8b 85 b4 05 00
00 mov eax, DWORD PTR i$51[rbp]
0164f ff c0 inc eax
01651 89 85 b4 05 00
00 mov DWORD PTR i$51[rbp], eax
$LN14@windowProc:
01657 8b 85 d4 05 00
00 mov eax, DWORD PTR count$52[rbp]
0165d 39 85 b4 05 00
00 cmp DWORD PTR i$51[rbp], eax
01663 0f 8d 90 00 00
00 jge $LN13@windowProc
; 1226 : {
; 1227 : const UINT length = DragQueryFileW(drop, i, NULL, 0);
01669 45 33 c9 xor r9d, r9d
0166c 45 33 c0 xor r8d, r8d
0166f 8b 95 b4 05 00
00 mov edx, DWORD PTR i$51[rbp]
01675 48 8b 8d 78 05
00 00 mov rcx, QWORD PTR drop$49[rbp]
0167c ff 15 00 00 00
00 call QWORD PTR __imp_DragQueryFileW
01682 89 85 14 06 00
00 mov DWORD PTR length$54[rbp], eax
; 1228 : WCHAR* buffer = _glfw_calloc((size_t) length + 1, sizeof(WCHAR));
01688 8b 85 14 06 00
00 mov eax, DWORD PTR length$54[rbp]
0168e 48 ff c0 inc rax
01691 ba 02 00 00 00 mov edx, 2
01696 48 8b c8 mov rcx, rax
01699 e8 00 00 00 00 call _glfw_calloc
0169e 48 89 85 38 06
00 00 mov QWORD PTR buffer$55[rbp], rax
; 1229 :
; 1230 : DragQueryFileW(drop, i, buffer, length + 1);
016a5 8b 85 14 06 00
00 mov eax, DWORD PTR length$54[rbp]
016ab ff c0 inc eax
016ad 44 8b c8 mov r9d, eax
016b0 4c 8b 85 38 06
00 00 mov r8, QWORD PTR buffer$55[rbp]
016b7 8b 95 b4 05 00
00 mov edx, DWORD PTR i$51[rbp]
016bd 48 8b 8d 78 05
00 00 mov rcx, QWORD PTR drop$49[rbp]
016c4 ff 15 00 00 00
00 call QWORD PTR __imp_DragQueryFileW
; 1231 : paths[i] = _glfwCreateUTF8FromWideStringWin32(buffer);
016ca 48 8b 8d 38 06
00 00 mov rcx, QWORD PTR buffer$55[rbp]
016d1 e8 00 00 00 00 call _glfwCreateUTF8FromWideStringWin32
016d6 48 63 8d b4 05
00 00 movsxd rcx, DWORD PTR i$51[rbp]
016dd 48 8b 95 f8 05
00 00 mov rdx, QWORD PTR paths$53[rbp]
016e4 48 89 04 ca mov QWORD PTR [rdx+rcx*8], rax
; 1232 :
; 1233 : _glfw_free(buffer);
016e8 48 8b 8d 38 06
00 00 mov rcx, QWORD PTR buffer$55[rbp]
016ef e8 00 00 00 00 call _glfw_free
; 1234 : }
016f4 e9 50 ff ff ff jmp $LN12@windowProc
$LN13@windowProc:
; 1235 :
; 1236 : _glfwInputDrop(window, count, (const char**) paths);
016f9 4c 8b 85 f8 05
00 00 mov r8, QWORD PTR paths$53[rbp]
01700 8b 95 d4 05 00
00 mov edx, DWORD PTR count$52[rbp]
01706 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
0170a e8 00 00 00 00 call _glfwInputDrop
; 1237 :
; 1238 : for (i = 0; i < count; i++)
0170f c7 85 b4 05 00
00 00 00 00 00 mov DWORD PTR i$51[rbp], 0
01719 eb 0e jmp SHORT $LN17@windowProc
$LN15@windowProc:
0171b 8b 85 b4 05 00
00 mov eax, DWORD PTR i$51[rbp]
01721 ff c0 inc eax
01723 89 85 b4 05 00
00 mov DWORD PTR i$51[rbp], eax
$LN17@windowProc:
01729 8b 85 d4 05 00
00 mov eax, DWORD PTR count$52[rbp]
0172f 39 85 b4 05 00
00 cmp DWORD PTR i$51[rbp], eax
01735 7d 19 jge SHORT $LN16@windowProc
; 1239 : _glfw_free(paths[i]);
01737 48 63 85 b4 05
00 00 movsxd rax, DWORD PTR i$51[rbp]
0173e 48 8b 8d f8 05
00 00 mov rcx, QWORD PTR paths$53[rbp]
01745 48 8b 0c c1 mov rcx, QWORD PTR [rcx+rax*8]
01749 e8 00 00 00 00 call _glfw_free
0174e eb cb jmp SHORT $LN15@windowProc
$LN16@windowProc:
; 1240 : _glfw_free(paths);
01750 48 8b 8d f8 05
00 00 mov rcx, QWORD PTR paths$53[rbp]
01757 e8 00 00 00 00 call _glfw_free
; 1241 :
; 1242 : DragFinish(drop);
0175c 48 8b 8d 78 05
00 00 mov rcx, QWORD PTR drop$49[rbp]
01763 ff 15 00 00 00
00 call QWORD PTR __imp_DragFinish
; 1243 : return 0;
01769 33 c0 xor eax, eax
0176b eb 21 jmp SHORT $LN1@windowProc
$LN2@windowProc:
; 1244 : }
; 1245 : }
; 1246 :
; 1247 : return DefWindowProcW(hWnd, uMsg, wParam, lParam);
0176d 4c 8b 8d 98 09
00 00 mov r9, QWORD PTR lParam$[rbp]
01774 4c 8b 85 90 09
00 00 mov r8, QWORD PTR wParam$[rbp]
0177b 8b 95 88 09 00
00 mov edx, DWORD PTR uMsg$[rbp]
01781 48 8b 8d 80 09
00 00 mov rcx, QWORD PTR hWnd$[rbp]
01788 ff 15 00 00 00
00 call QWORD PTR __imp_DefWindowProcW
$LN1@windowProc:
; 1248 : }
0178e 48 8b f8 mov rdi, rax
01791 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
01795 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:windowProc$rtcFrameData
0179c e8 00 00 00 00 call _RTC_CheckStackVars
017a1 48 8b c7 mov rax, rdi
017a4 48 8b 8d 50 09
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
017ab 48 33 cd xor rcx, rbp
017ae e8 00 00 00 00 call __security_check_cookie
017b3 48 8d a5 68 09
00 00 lea rsp, QWORD PTR [rbp+2408]
017ba 5f pop rdi
017bb 5d pop rbp
017bc c3 ret 0
017bd 0f 1f 00 npad 3
$LN191@windowProc:
017c0 00 00 00 00 DD $LN145@windowProc
017c4 00 00 00 00 DD $LN136@windowProc
017c8 00 00 00 00 DD $LN30@windowProc
017cc 00 00 00 00 DD $LN35@windowProc
017d0 00 00 00 00 DD $LN157@windowProc
017d4 00 00 00 00 DD $LN47@windowProc
017d8 00 00 00 00 DD $LN158@windowProc
017dc 00 00 00 00 DD $LN171@windowProc
017e0 00 00 00 00 DD $LN22@windowProc
017e4 00 00 00 00 DD $LN150@windowProc
017e8 00 00 00 00 DD $LN48@windowProc
017ec 00 00 00 00 DD $LN160@windowProc
017f0 00 00 00 00 DD $LN159@windowProc
017f4 00 00 00 00 DD $LN2@windowProc
$LN190@windowProc:
017f8 00 DB 0
017f9 0d DB 13
017fa 01 DB 1
017fb 0d DB 13
017fc 02 DB 2
017fd 03 DB 3
017fe 0d DB 13
017ff 0d DB 13
01800 0d DB 13
01801 0d DB 13
01802 0d DB 13
01803 0d DB 13
01804 04 DB 4
01805 05 DB 5
01806 0d DB 13
01807 0d DB 13
01808 0d DB 13
01809 06 DB 6
0180a 0d DB 13
0180b 0d DB 13
0180c 0d DB 13
0180d 0d DB 13
0180e 0d DB 13
0180f 0d DB 13
01810 0d DB 13
01811 0d DB 13
01812 0d DB 13
01813 0d DB 13
01814 0d DB 13
01815 07 DB 7
01816 08 DB 8
01817 0d DB 13
01818 0d DB 13
01819 09 DB 9
0181a 0d DB 13
0181b 0d DB 13
0181c 0d DB 13
0181d 0d DB 13
0181e 0d DB 13
0181f 0d DB 13
01820 0d DB 13
01821 0d DB 13
01822 0d DB 13
01823 0d DB 13
01824 0d DB 13
01825 0d DB 13
01826 0d DB 13
01827 0d DB 13
01828 0d DB 13
01829 0d DB 13
0182a 0d DB 13
0182b 0d DB 13
0182c 0d DB 13
0182d 0d DB 13
0182e 0d DB 13
0182f 0d DB 13
01830 0d DB 13
01831 0d DB 13
01832 0d DB 13
01833 0d DB 13
01834 0d DB 13
01835 0d DB 13
01836 0d DB 13
01837 0d DB 13
01838 0d DB 13
01839 0d DB 13
0183a 0d DB 13
0183b 0d DB 13
0183c 0d DB 13
0183d 0d DB 13
0183e 0d DB 13
0183f 0d DB 13
01840 0d DB 13
01841 0d DB 13
01842 0d DB 13
01843 0d DB 13
01844 0d DB 13
01845 0d DB 13
01846 0a DB 10
01847 0d DB 13
01848 0d DB 13
01849 0d DB 13
0184a 0d DB 13
0184b 0d DB 13
0184c 0d DB 13
0184d 0d DB 13
0184e 0d DB 13
0184f 0d DB 13
01850 0d DB 13
01851 0d DB 13
01852 0d DB 13
01853 0d DB 13
01854 0d DB 13
01855 0d DB 13
01856 0d DB 13
01857 0d DB 13
01858 0d DB 13
01859 0d DB 13
0185a 0d DB 13
0185b 0d DB 13
0185c 0d DB 13
0185d 0d DB 13
0185e 0d DB 13
0185f 0d DB 13
01860 0d DB 13
01861 0d DB 13
01862 0d DB 13
01863 0d DB 13
01864 0d DB 13
01865 0d DB 13
01866 0d DB 13
01867 0d DB 13
01868 0d DB 13
01869 0d DB 13
0186a 0d DB 13
0186b 0d DB 13
0186c 0d DB 13
0186d 0d DB 13
0186e 0d DB 13
0186f 0d DB 13
01870 0d DB 13
01871 0d DB 13
01872 0d DB 13
01873 0d DB 13
01874 0d DB 13
01875 0d DB 13
01876 0d DB 13
01877 0d DB 13
01878 0d DB 13
01879 0d DB 13
0187a 0b DB 11
0187b 0c DB 12
$LN189@windowProc:
0187c 00 00 00 00 DD $LN59@windowProc
01880 00 00 00 00 DD $LN61@windowProc
01884 00 00 00 00 DD $LN49@windowProc
01888 00 00 00 00 DD $LN2@windowProc
0188c 00 00 00 00 DD $LN60@windowProc
01890 00 00 00 00 DD $LN62@windowProc
01894 00 00 00 00 DD $LN50@windowProc
01898 00 00 00 00 DD $LN2@windowProc
0189c 00 00 00 00 DD $LN2@windowProc
018a0 00 00 00 00 DD $LN57@windowProc
$LN188@windowProc:
018a4 00 00 00 00 DD $LN108@windowProc
018a8 00 00 00 00 DD $LN80@windowProc
018ac 00 00 00 00 DD $LN84@windowProc
018b0 00 00 00 00 DD $LN81@windowProc
018b4 00 00 00 00 DD $LN85@windowProc
018b8 00 00 00 00 DD $LN82@windowProc
018bc 00 00 00 00 DD $LN86@windowProc
018c0 00 00 00 00 DD $LN122@windowProc
018c4 00 00 00 00 DD $LN83@windowProc
018c8 00 00 00 00 DD $LN87@windowProc
018cc 00 00 00 00 DD $LN123@windowProc
018d0 00 00 00 00 DD $LN125@windowProc
018d4 00 00 00 00 DD $LN131@windowProc
018d8 00 00 00 00 DD $LN147@windowProc
018dc 00 00 00 00 DD $LN25@windowProc
018e0 00 00 00 00 DD $LN124@windowProc
018e4 00 00 00 00 DD $LN130@windowProc
018e8 00 00 00 00 DD $LN173@windowProc
018ec 00 00 00 00 DD $LN121@windowProc
018f0 00 00 00 00 DD $LN168@windowProc
018f4 00 00 00 00 DD $LN165@windowProc
018f8 00 00 00 00 DD $LN2@windowProc
$LN187@windowProc:
018fc 00 DB 0
018fd 01 DB 1
018fe 02 DB 2
018ff 15 DB 21
01900 03 DB 3
01901 04 DB 4
01902 15 DB 21
01903 05 DB 5
01904 06 DB 6
01905 15 DB 21
01906 07 DB 7
01907 08 DB 8
01908 09 DB 9
01909 15 DB 21
0190a 0a DB 10
0190b 15 DB 21
0190c 15 DB 21
0190d 0b DB 11
0190e 0c DB 12
0190f 15 DB 21
01910 0d DB 13
01911 0e DB 14
01912 15 DB 21
01913 15 DB 21
01914 15 DB 21
01915 15 DB 21
01916 15 DB 21
01917 15 DB 21
01918 15 DB 21
01919 15 DB 21
0191a 15 DB 21
0191b 15 DB 21
0191c 15 DB 21
0191d 15 DB 21
0191e 15 DB 21
0191f 15 DB 21
01920 15 DB 21
01921 15 DB 21
01922 15 DB 21
01923 15 DB 21
01924 15 DB 21
01925 15 DB 21
01926 15 DB 21
01927 15 DB 21
01928 15 DB 21
01929 15 DB 21
0192a 15 DB 21
0192b 15 DB 21
0192c 15 DB 21
0192d 0f DB 15
0192e 10 DB 16
0192f 11 DB 17
01930 15 DB 21
01931 15 DB 21
01932 15 DB 21
01933 15 DB 21
01934 15 DB 21
01935 15 DB 21
01936 15 DB 21
01937 15 DB 21
01938 15 DB 21
01939 15 DB 21
0193a 15 DB 21
0193b 15 DB 21
0193c 15 DB 21
0193d 15 DB 21
0193e 15 DB 21
0193f 15 DB 21
01940 15 DB 21
01941 15 DB 21
01942 15 DB 21
01943 15 DB 21
01944 15 DB 21
01945 15 DB 21
01946 15 DB 21
01947 15 DB 21
01948 15 DB 21
01949 15 DB 21
0194a 15 DB 21
0194b 15 DB 21
0194c 15 DB 21
0194d 15 DB 21
0194e 15 DB 21
0194f 15 DB 21
01950 15 DB 21
01951 15 DB 21
01952 15 DB 21
01953 15 DB 21
01954 15 DB 21
01955 15 DB 21
01956 15 DB 21
01957 15 DB 21
01958 15 DB 21
01959 15 DB 21
0195a 15 DB 21
0195b 15 DB 21
0195c 15 DB 21
0195d 15 DB 21
0195e 15 DB 21
0195f 15 DB 21
01960 15 DB 21
01961 15 DB 21
01962 15 DB 21
01963 15 DB 21
01964 15 DB 21
01965 15 DB 21
01966 15 DB 21
01967 15 DB 21
01968 15 DB 21
01969 15 DB 21
0196a 15 DB 21
0196b 15 DB 21
0196c 15 DB 21
0196d 15 DB 21
0196e 15 DB 21
0196f 15 DB 21
01970 15 DB 21
01971 15 DB 21
01972 15 DB 21
01973 15 DB 21
01974 15 DB 21
01975 15 DB 21
01976 15 DB 21
01977 15 DB 21
01978 15 DB 21
01979 15 DB 21
0197a 15 DB 21
0197b 15 DB 21
0197c 15 DB 21
0197d 15 DB 21
0197e 15 DB 21
0197f 15 DB 21
01980 15 DB 21
01981 15 DB 21
01982 15 DB 21
01983 15 DB 21
01984 15 DB 21
01985 15 DB 21
01986 15 DB 21
01987 15 DB 21
01988 15 DB 21
01989 15 DB 21
0198a 15 DB 21
0198b 15 DB 21
0198c 15 DB 21
0198d 15 DB 21
0198e 15 DB 21
0198f 15 DB 21
01990 15 DB 21
01991 15 DB 21
01992 15 DB 21
01993 15 DB 21
01994 15 DB 21
01995 15 DB 21
01996 15 DB 21
01997 15 DB 21
01998 15 DB 21
01999 15 DB 21
0199a 15 DB 21
0199b 15 DB 21
0199c 15 DB 21
0199d 15 DB 21
0199e 15 DB 21
0199f 12 DB 18
019a0 15 DB 21
019a1 15 DB 21
019a2 15 DB 21
019a3 15 DB 21
019a4 15 DB 21
019a5 15 DB 21
019a6 15 DB 21
019a7 15 DB 21
019a8 15 DB 21
019a9 15 DB 21
019aa 15 DB 21
019ab 15 DB 21
019ac 15 DB 21
019ad 15 DB 21
019ae 15 DB 21
019af 15 DB 21
019b0 15 DB 21
019b1 15 DB 21
019b2 15 DB 21
019b3 15 DB 21
019b4 15 DB 21
019b5 15 DB 21
019b6 15 DB 21
019b7 15 DB 21
019b8 15 DB 21
019b9 15 DB 21
019ba 15 DB 21
019bb 15 DB 21
019bc 15 DB 21
019bd 15 DB 21
019be 15 DB 21
019bf 15 DB 21
019c0 15 DB 21
019c1 15 DB 21
019c2 15 DB 21
019c3 15 DB 21
019c4 15 DB 21
019c5 15 DB 21
019c6 15 DB 21
019c7 15 DB 21
019c8 15 DB 21
019c9 15 DB 21
019ca 15 DB 21
019cb 15 DB 21
019cc 15 DB 21
019cd 15 DB 21
019ce 15 DB 21
019cf 15 DB 21
019d0 15 DB 21
019d1 15 DB 21
019d2 15 DB 21
019d3 15 DB 21
019d4 15 DB 21
019d5 15 DB 21
019d6 15 DB 21
019d7 15 DB 21
019d8 15 DB 21
019d9 15 DB 21
019da 15 DB 21
019db 15 DB 21
019dc 13 DB 19
019dd 15 DB 21
019de 15 DB 21
019df 15 DB 21
019e0 14 DB 20
windowProc ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT maximizeWindowManually
_TEXT SEGMENT
rect$ = 8
style$ = 52
mi$ = 88
exStyle$5 = 148
dpi$6 = 180
__$ArrayPad$ = 392
window$ = 432
maximizeWindowManually PROC ; COMDAT
; 481 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 56 push rsi
00007 57 push rdi
00008 48 81 ec d0 01
00 00 sub rsp, 464 ; 000001d0H
0000f 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
00014 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00019 b9 34 00 00 00 mov ecx, 52 ; 00000034H
0001e b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00023 f3 ab rep stosd
00025 48 8b 8c 24 f8
01 00 00 mov rcx, QWORD PTR [rsp+504]
0002d 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00034 48 33 c5 xor rax, rbp
00037 48 89 85 88 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003e 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00045 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 482 : RECT rect;
; 483 : DWORD style;
; 484 : MONITORINFO mi = { sizeof(mi) };
0004a c7 45 58 28 00
00 00 mov DWORD PTR mi$[rbp], 40 ; 00000028H
00051 48 8d 45 5c lea rax, QWORD PTR mi$[rbp+4]
00055 48 8b f8 mov rdi, rax
00058 33 c0 xor eax, eax
0005a b9 24 00 00 00 mov ecx, 36 ; 00000024H
0005f f3 aa rep stosb
; 485 :
; 486 : GetMonitorInfoW(MonitorFromWindow(window->win32.handle,
00061 ba 02 00 00 00 mov edx, 2
00066 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
0006d 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00074 ff 15 00 00 00
00 call QWORD PTR __imp_MonitorFromWindow
0007a 48 8d 55 58 lea rdx, QWORD PTR mi$[rbp]
0007e 48 8b c8 mov rcx, rax
00081 ff 15 00 00 00
00 call QWORD PTR __imp_GetMonitorInfoW
; 487 : MONITOR_DEFAULTTONEAREST), &mi);
; 488 :
; 489 : rect = mi.rcWork;
00087 48 8d 45 08 lea rax, QWORD PTR rect$[rbp]
0008b 48 8d 4d 6c lea rcx, QWORD PTR mi$[rbp+20]
0008f 48 8b f8 mov rdi, rax
00092 48 8b f1 mov rsi, rcx
00095 b9 10 00 00 00 mov ecx, 16
0009a f3 a4 rep movsb
; 490 :
; 491 : if (window->maxwidth != GLFW_DONT_CARE && window->maxheight != GLFW_DONT_CARE)
0009c 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
000a3 83 78 68 ff cmp DWORD PTR [rax+104], -1
000a7 74 49 je SHORT $LN2@maximizeWi
000a9 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
000b0 83 78 6c ff cmp DWORD PTR [rax+108], -1
000b4 74 3c je SHORT $LN2@maximizeWi
; 492 : {
; 493 : rect.right = _glfw_min(rect.right, rect.left + window->maxwidth);
000b6 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
000bd 8b 40 68 mov eax, DWORD PTR [rax+104]
000c0 8b 4d 08 mov ecx, DWORD PTR rect$[rbp]
000c3 03 c8 add ecx, eax
000c5 8b c1 mov eax, ecx
000c7 8b d0 mov edx, eax
000c9 8b 4d 10 mov ecx, DWORD PTR rect$[rbp+8]
000cc e8 00 00 00 00 call _glfw_min
000d1 89 45 10 mov DWORD PTR rect$[rbp+8], eax
; 494 : rect.bottom = _glfw_min(rect.bottom, rect.top + window->maxheight);
000d4 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
000db 8b 40 6c mov eax, DWORD PTR [rax+108]
000de 8b 4d 0c mov ecx, DWORD PTR rect$[rbp+4]
000e1 03 c8 add ecx, eax
000e3 8b c1 mov eax, ecx
000e5 8b d0 mov edx, eax
000e7 8b 4d 14 mov ecx, DWORD PTR rect$[rbp+12]
000ea e8 00 00 00 00 call _glfw_min
000ef 89 45 14 mov DWORD PTR rect$[rbp+12], eax
$LN2@maximizeWi:
; 495 : }
; 496 :
; 497 : style = GetWindowLongW(window->win32.handle, GWL_STYLE);
000f2 ba f0 ff ff ff mov edx, -16
000f7 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
000fe 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00105 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
0010b 89 45 34 mov DWORD PTR style$[rbp], eax
; 498 : style |= WS_MAXIMIZE;
0010e 8b 45 34 mov eax, DWORD PTR style$[rbp]
00111 0f ba e8 18 bts eax, 24
00115 89 45 34 mov DWORD PTR style$[rbp], eax
; 499 : SetWindowLongW(window->win32.handle, GWL_STYLE, style);
00118 44 8b 45 34 mov r8d, DWORD PTR style$[rbp]
0011c ba f0 ff ff ff mov edx, -16
00121 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
00128 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0012f ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
; 500 :
; 501 : if (window->decorated)
00135 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
0013c 83 78 0c 00 cmp DWORD PTR [rax+12], 0
00140 0f 84 c8 00 00
00 je $LN3@maximizeWi
; 502 : {
; 503 : const DWORD exStyle = GetWindowLongW(window->win32.handle, GWL_EXSTYLE);
00146 ba ec ff ff ff mov edx, -20
0014b 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
00152 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00159 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
0015f 89 85 94 00 00
00 mov DWORD PTR exStyle$5[rbp], eax
; 504 :
; 505 : if (_glfwIsWindows10Version1607OrGreaterWin32())
00165 66 b9 39 38 mov cx, 14393 ; 00003839H
00169 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
0016e 85 c0 test eax, eax
00170 74 5d je SHORT $LN4@maximizeWi
; 506 : {
; 507 : const UINT dpi = GetDpiForWindow(window->win32.handle);
00172 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
00179 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00180 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
00186 89 85 b4 00 00
00 mov DWORD PTR dpi$6[rbp], eax
; 508 : AdjustWindowRectExForDpi(&rect, style, FALSE, exStyle, dpi);
0018c 8b 85 b4 00 00
00 mov eax, DWORD PTR dpi$6[rbp]
00192 89 44 24 20 mov DWORD PTR [rsp+32], eax
00196 44 8b 8d 94 00
00 00 mov r9d, DWORD PTR exStyle$5[rbp]
0019d 45 33 c0 xor r8d, r8d
001a0 8b 55 34 mov edx, DWORD PTR style$[rbp]
001a3 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
001a7 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 509 : OffsetRect(&rect, 0, GetSystemMetricsForDpi(SM_CYCAPTION, dpi));
001ad 8b 95 b4 00 00
00 mov edx, DWORD PTR dpi$6[rbp]
001b3 b9 04 00 00 00 mov ecx, 4
001b8 ff 15 d0 29 00
00 call QWORD PTR _glfw+10704
001be 44 8b c0 mov r8d, eax
001c1 33 d2 xor edx, edx
001c3 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
001c7 ff 15 00 00 00
00 call QWORD PTR __imp_OffsetRect
; 510 : }
001cd eb 31 jmp SHORT $LN5@maximizeWi
$LN4@maximizeWi:
; 511 : else
; 512 : {
; 513 : AdjustWindowRectEx(&rect, style, FALSE, exStyle);
001cf 44 8b 8d 94 00
00 00 mov r9d, DWORD PTR exStyle$5[rbp]
001d6 45 33 c0 xor r8d, r8d
001d9 8b 55 34 mov edx, DWORD PTR style$[rbp]
001dc 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
001e0 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
; 514 : OffsetRect(&rect, 0, GetSystemMetrics(SM_CYCAPTION));
001e6 b9 04 00 00 00 mov ecx, 4
001eb ff 15 00 00 00
00 call QWORD PTR __imp_GetSystemMetrics
001f1 44 8b c0 mov r8d, eax
001f4 33 d2 xor edx, edx
001f6 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
001fa ff 15 00 00 00
00 call QWORD PTR __imp_OffsetRect
$LN5@maximizeWi:
; 515 : }
; 516 :
; 517 : rect.bottom = _glfw_min(rect.bottom, mi.rcWork.bottom);
00200 8b 55 78 mov edx, DWORD PTR mi$[rbp+32]
00203 8b 4d 14 mov ecx, DWORD PTR rect$[rbp+12]
00206 e8 00 00 00 00 call _glfw_min
0020b 89 45 14 mov DWORD PTR rect$[rbp+12], eax
$LN3@maximizeWi:
; 518 : }
; 519 :
; 520 : SetWindowPos(window->win32.handle, HWND_TOP,
0020e 8b 45 0c mov eax, DWORD PTR rect$[rbp+4]
00211 8b 4d 14 mov ecx, DWORD PTR rect$[rbp+12]
00214 2b c8 sub ecx, eax
00216 8b c1 mov eax, ecx
00218 8b 4d 08 mov ecx, DWORD PTR rect$[rbp]
0021b 8b 55 10 mov edx, DWORD PTR rect$[rbp+8]
0021e 2b d1 sub edx, ecx
00220 8b ca mov ecx, edx
00222 c7 44 24 30 34
00 00 00 mov DWORD PTR [rsp+48], 52 ; 00000034H
0022a 89 44 24 28 mov DWORD PTR [rsp+40], eax
0022e 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
00232 44 8b 4d 0c mov r9d, DWORD PTR rect$[rbp+4]
00236 44 8b 45 08 mov r8d, DWORD PTR rect$[rbp]
0023a 33 d2 xor edx, edx
0023c 48 8b 85 b0 01
00 00 mov rax, QWORD PTR window$[rbp]
00243 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0024a ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
; 521 : rect.left,
; 522 : rect.top,
; 523 : rect.right - rect.left,
; 524 : rect.bottom - rect.top,
; 525 : SWP_NOACTIVATE | SWP_NOZORDER | SWP_FRAMECHANGED);
; 526 : }
00250 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
00254 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:maximizeWindowManually$rtcFrameData
0025b e8 00 00 00 00 call _RTC_CheckStackVars
00260 48 8b 8d 88 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00267 48 33 cd xor rcx, rbp
0026a e8 00 00 00 00 call __security_check_cookie
0026f 48 8d a5 90 01
00 00 lea rsp, QWORD PTR [rbp+400]
00276 5f pop rdi
00277 5e pop rsi
00278 5d pop rbp
00279 c3 ret 0
maximizeWindowManually ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT releaseMonitor
_TEXT SEGMENT
window$ = 224
releaseMonitor PROC ; COMDAT
; 461 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 462 : if (window->monitor->window != window)
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 40 50 mov rax, QWORD PTR [rax+80]
0002a 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00031 48 39 88 90 00
00 00 cmp QWORD PTR [rax+144], rcx
00038 74 02 je SHORT $LN2@releaseMon
; 463 : return;
0003a eb 5b jmp SHORT $LN1@releaseMon
$LN2@releaseMon:
; 464 :
; 465 : _glfw.win32.acquiredMonitorCount--;
0003c 8b 05 98 1b 00
00 mov eax, DWORD PTR _glfw+7064
00042 ff c8 dec eax
00044 89 05 98 1b 00
00 mov DWORD PTR _glfw+7064, eax
; 466 : if (!_glfw.win32.acquiredMonitorCount)
0004a 83 3d 98 1b 00
00 00 cmp DWORD PTR _glfw+7064, 0
00051 75 22 jne SHORT $LN3@releaseMon
; 467 : {
; 468 : SetThreadExecutionState(ES_CONTINUOUS);
00053 b9 00 00 00 80 mov ecx, -2147483648 ; 80000000H
00058 ff 15 00 00 00
00 call QWORD PTR __imp_SetThreadExecutionState
; 469 :
; 470 : // HACK: Restore mouse trail length saved in acquireMonitor
; 471 : SystemParametersInfoW(SPI_SETMOUSETRAILS, _glfw.win32.mouseTrailSize, 0, 0);
0005e 45 33 c9 xor r9d, r9d
00061 45 33 c0 xor r8d, r8d
00064 8b 15 64 29 00
00 mov edx, DWORD PTR _glfw+10596
0006a b9 5d 00 00 00 mov ecx, 93 ; 0000005dH
0006f ff 15 00 00 00
00 call QWORD PTR __imp_SystemParametersInfoW
$LN3@releaseMon:
; 472 : }
; 473 :
; 474 : _glfwInputMonitorWindow(window->monitor, NULL);
00075 33 d2 xor edx, edx
00077 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0007e 48 8b 48 50 mov rcx, QWORD PTR [rax+80]
00082 e8 00 00 00 00 call _glfwInputMonitorWindow
; 475 : _glfwRestoreVideoModeWin32(window->monitor);
00087 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0008e 48 8b 48 50 mov rcx, QWORD PTR [rax+80]
00092 e8 00 00 00 00 call _glfwRestoreVideoModeWin32
$LN1@releaseMon:
; 476 : }
00097 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0009e 5f pop rdi
0009f 5d pop rbp
000a0 c3 ret 0
releaseMonitor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT acquireMonitor
_TEXT SEGMENT
window$ = 224
acquireMonitor PROC ; COMDAT
; 440 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 441 : if (!_glfw.win32.acquiredMonitorCount)
0001f 83 3d 98 1b 00
00 00 cmp DWORD PTR _glfw+7064, 0
00026 75 35 jne SHORT $LN2@acquireMon
; 442 : {
; 443 : SetThreadExecutionState(ES_CONTINUOUS | ES_DISPLAY_REQUIRED);
00028 b9 02 00 00 80 mov ecx, -2147483646 ; 80000002H
0002d ff 15 00 00 00
00 call QWORD PTR __imp_SetThreadExecutionState
; 444 :
; 445 : // HACK: When mouse trails are enabled the cursor becomes invisible when
; 446 : // the OpenGL ICD switches to page flipping
; 447 : SystemParametersInfoW(SPI_GETMOUSETRAILS, 0, &_glfw.win32.mouseTrailSize, 0);
00033 45 33 c9 xor r9d, r9d
00036 4c 8d 05 64 29
00 00 lea r8, OFFSET FLAT:_glfw+10596
0003d 33 d2 xor edx, edx
0003f b9 5e 00 00 00 mov ecx, 94 ; 0000005eH
00044 ff 15 00 00 00
00 call QWORD PTR __imp_SystemParametersInfoW
; 448 : SystemParametersInfoW(SPI_SETMOUSETRAILS, 0, 0, 0);
0004a 45 33 c9 xor r9d, r9d
0004d 45 33 c0 xor r8d, r8d
00050 33 d2 xor edx, edx
00052 b9 5d 00 00 00 mov ecx, 93 ; 0000005dH
00057 ff 15 00 00 00
00 call QWORD PTR __imp_SystemParametersInfoW
$LN2@acquireMon:
; 449 : }
; 450 :
; 451 : if (!window->monitor->window)
0005d 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00064 48 8b 40 50 mov rax, QWORD PTR [rax+80]
00068 48 83 b8 90 00
00 00 00 cmp QWORD PTR [rax+144], 0
00070 75 0e jne SHORT $LN3@acquireMon
; 452 : _glfw.win32.acquiredMonitorCount++;
00072 8b 05 98 1b 00
00 mov eax, DWORD PTR _glfw+7064
00078 ff c0 inc eax
0007a 89 05 98 1b 00
00 mov DWORD PTR _glfw+7064, eax
$LN3@acquireMon:
; 453 :
; 454 : _glfwSetVideoModeWin32(window->monitor, &window->videoMode);
00080 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00087 48 83 c0 34 add rax, 52 ; 00000034H
0008b 48 8b d0 mov rdx, rax
0008e 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00095 48 8b 48 50 mov rcx, QWORD PTR [rax+80]
00099 e8 00 00 00 00 call _glfwSetVideoModeWin32
; 455 : _glfwInputMonitorWindow(window->monitor, window);
0009e 48 8b 95 e0 00
00 00 mov rdx, QWORD PTR window$[rbp]
000a5 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000ac 48 8b 48 50 mov rcx, QWORD PTR [rax+80]
000b0 e8 00 00 00 00 call _glfwInputMonitorWindow
; 456 : }
000b5 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
000bc 5f pop rdi
000bd 5d pop rbp
000be c3 ret 0
acquireMonitor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT fitToMonitor
_TEXT SEGMENT
mi$ = 8
__$ArrayPad$ = 248
window$ = 288
fitToMonitor PROC ; COMDAT
; 426 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 48 01
00 00 sub rsp, 328 ; 00000148H
0000e 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
00013 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00018 b9 12 00 00 00 mov ecx, 18
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 68
01 00 00 mov rcx, QWORD PTR [rsp+360]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 f8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 427 : MONITORINFO mi = { sizeof(mi) };
00049 c7 45 08 28 00
00 00 mov DWORD PTR mi$[rbp], 40 ; 00000028H
00050 48 8d 45 0c lea rax, QWORD PTR mi$[rbp+4]
00054 48 8b f8 mov rdi, rax
00057 33 c0 xor eax, eax
00059 b9 24 00 00 00 mov ecx, 36 ; 00000024H
0005e f3 aa rep stosb
; 428 : GetMonitorInfoW(window->monitor->win32.handle, &mi);
00060 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00067 48 8b 40 50 mov rax, QWORD PTR [rax+80]
0006b 48 8d 55 08 lea rdx, QWORD PTR mi$[rbp]
0006f 48 8b 88 00 01
00 00 mov rcx, QWORD PTR [rax+256]
00076 ff 15 00 00 00
00 call QWORD PTR __imp_GetMonitorInfoW
; 429 : SetWindowPos(window->win32.handle, HWND_TOPMOST,
0007c 8b 45 10 mov eax, DWORD PTR mi$[rbp+8]
0007f 8b 4d 18 mov ecx, DWORD PTR mi$[rbp+16]
00082 2b c8 sub ecx, eax
00084 8b c1 mov eax, ecx
00086 8b 4d 0c mov ecx, DWORD PTR mi$[rbp+4]
00089 8b 55 14 mov edx, DWORD PTR mi$[rbp+12]
0008c 2b d1 sub edx, ecx
0008e 8b ca mov ecx, edx
00090 c7 44 24 30 14
01 00 00 mov DWORD PTR [rsp+48], 276 ; 00000114H
00098 89 44 24 28 mov DWORD PTR [rsp+40], eax
0009c 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
000a0 44 8b 4d 10 mov r9d, DWORD PTR mi$[rbp+8]
000a4 44 8b 45 0c mov r8d, DWORD PTR mi$[rbp+4]
000a8 48 c7 c2 ff ff
ff ff mov rdx, -1
000af 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000b6 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000bd ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
; 430 : mi.rcMonitor.left,
; 431 : mi.rcMonitor.top,
; 432 : mi.rcMonitor.right - mi.rcMonitor.left,
; 433 : mi.rcMonitor.bottom - mi.rcMonitor.top,
; 434 : SWP_NOZORDER | SWP_NOACTIVATE | SWP_NOCOPYBITS);
; 435 : }
000c3 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
000c7 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:fitToMonitor$rtcFrameData
000ce e8 00 00 00 00 call _RTC_CheckStackVars
000d3 48 8b 8d f8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000da 48 33 cd xor rcx, rbp
000dd e8 00 00 00 00 call __security_check_cookie
000e2 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
000e9 5f pop rdi
000ea 5d pop rbp
000eb c3 ret 0
fitToMonitor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT getKeyMods
_TEXT SEGMENT
mods$ = 4
tv84 = 212
getKeyMods PROC ; COMDAT
; 406 : {
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 407 : int mods = 0;
0001b c7 45 04 00 00
00 00 mov DWORD PTR mods$[rbp], 0
; 408 :
; 409 : if (GetKeyState(VK_SHIFT) & 0x8000)
00022 b9 10 00 00 00 mov ecx, 16
00027 ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
0002d 98 cwde
0002e 25 00 80 00 00 and eax, 32768 ; 00008000H
00033 85 c0 test eax, eax
00035 74 09 je SHORT $LN2@getKeyMods
; 410 : mods |= GLFW_MOD_SHIFT;
00037 8b 45 04 mov eax, DWORD PTR mods$[rbp]
0003a 83 c8 01 or eax, 1
0003d 89 45 04 mov DWORD PTR mods$[rbp], eax
$LN2@getKeyMods:
; 411 : if (GetKeyState(VK_CONTROL) & 0x8000)
00040 b9 11 00 00 00 mov ecx, 17
00045 ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
0004b 98 cwde
0004c 25 00 80 00 00 and eax, 32768 ; 00008000H
00051 85 c0 test eax, eax
00053 74 09 je SHORT $LN3@getKeyMods
; 412 : mods |= GLFW_MOD_CONTROL;
00055 8b 45 04 mov eax, DWORD PTR mods$[rbp]
00058 83 c8 02 or eax, 2
0005b 89 45 04 mov DWORD PTR mods$[rbp], eax
$LN3@getKeyMods:
; 413 : if (GetKeyState(VK_MENU) & 0x8000)
0005e b9 12 00 00 00 mov ecx, 18
00063 ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
00069 98 cwde
0006a 25 00 80 00 00 and eax, 32768 ; 00008000H
0006f 85 c0 test eax, eax
00071 74 09 je SHORT $LN4@getKeyMods
; 414 : mods |= GLFW_MOD_ALT;
00073 8b 45 04 mov eax, DWORD PTR mods$[rbp]
00076 83 c8 04 or eax, 4
00079 89 45 04 mov DWORD PTR mods$[rbp], eax
$LN4@getKeyMods:
; 415 : if ((GetKeyState(VK_LWIN) | GetKeyState(VK_RWIN)) & 0x8000)
0007c b9 5b 00 00 00 mov ecx, 91 ; 0000005bH
00081 ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
00087 98 cwde
00088 89 85 d4 00 00
00 mov DWORD PTR tv84[rbp], eax
0008e b9 5c 00 00 00 mov ecx, 92 ; 0000005cH
00093 ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
00099 98 cwde
0009a 8b 8d d4 00 00
00 mov ecx, DWORD PTR tv84[rbp]
000a0 0b c8 or ecx, eax
000a2 8b c1 mov eax, ecx
000a4 25 00 80 00 00 and eax, 32768 ; 00008000H
000a9 85 c0 test eax, eax
000ab 74 09 je SHORT $LN5@getKeyMods
; 416 : mods |= GLFW_MOD_SUPER;
000ad 8b 45 04 mov eax, DWORD PTR mods$[rbp]
000b0 83 c8 08 or eax, 8
000b3 89 45 04 mov DWORD PTR mods$[rbp], eax
$LN5@getKeyMods:
; 417 : if (GetKeyState(VK_CAPITAL) & 1)
000b6 b9 14 00 00 00 mov ecx, 20
000bb ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
000c1 98 cwde
000c2 83 e0 01 and eax, 1
000c5 85 c0 test eax, eax
000c7 74 09 je SHORT $LN6@getKeyMods
; 418 : mods |= GLFW_MOD_CAPS_LOCK;
000c9 8b 45 04 mov eax, DWORD PTR mods$[rbp]
000cc 83 c8 10 or eax, 16
000cf 89 45 04 mov DWORD PTR mods$[rbp], eax
$LN6@getKeyMods:
; 419 : if (GetKeyState(VK_NUMLOCK) & 1)
000d2 b9 90 00 00 00 mov ecx, 144 ; 00000090H
000d7 ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
000dd 98 cwde
000de 83 e0 01 and eax, 1
000e1 85 c0 test eax, eax
000e3 74 09 je SHORT $LN7@getKeyMods
; 420 : mods |= GLFW_MOD_NUM_LOCK;
000e5 8b 45 04 mov eax, DWORD PTR mods$[rbp]
000e8 83 c8 20 or eax, 32 ; 00000020H
000eb 89 45 04 mov DWORD PTR mods$[rbp], eax
$LN7@getKeyMods:
; 421 :
; 422 : return mods;
000ee 8b 45 04 mov eax, DWORD PTR mods$[rbp]
; 423 : }
000f1 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
000f8 5f pop rdi
000f9 5d pop rbp
000fa c3 ret 0
getKeyMods ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT updateFramebufferTransparency
_TEXT SEGMENT
composition$ = 4
opaque$ = 36
color$ = 68
region$8 = 104
bb$9 = 136
bb$10 = 184
__$ArrayPad$ = 408
window$ = 448
updateFramebufferTransparency PROC ; COMDAT
; 369 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec c8 01
00 00 sub rsp, 456 ; 000001c8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00018 b9 3a 00 00 00 mov ecx, 58 ; 0000003aH
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 e8
01 00 00 mov rcx, QWORD PTR [rsp+488]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 98 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 370 : BOOL composition, opaque;
; 371 : DWORD color;
; 372 :
; 373 : if (!IsWindowsVistaOrGreater())
00049 45 33 c0 xor r8d, r8d
0004c 33 d2 xor edx, edx
0004e 66 b9 06 00 mov cx, 6
00052 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32
00057 85 c0 test eax, eax
00059 75 05 jne SHORT $LN2@updateFram
; 374 : return;
0005b e9 f0 00 00 00 jmp $LN1@updateFram
$LN2@updateFram:
; 375 :
; 376 : if (FAILED(DwmIsCompositionEnabled(&composition)) || !composition)
00060 48 8d 4d 04 lea rcx, QWORD PTR composition$[rbp]
00064 ff 15 e0 29 00
00 call QWORD PTR _glfw+10720
0006a 85 c0 test eax, eax
0006c 7c 06 jl SHORT $LN4@updateFram
0006e 83 7d 04 00 cmp DWORD PTR composition$[rbp], 0
00072 75 05 jne SHORT $LN3@updateFram
$LN4@updateFram:
; 377 : return;
00074 e9 d7 00 00 00 jmp $LN1@updateFram
$LN3@updateFram:
; 378 :
; 379 : if (IsWindows8OrGreater() ||
00079 45 33 c0 xor r8d, r8d
0007c 66 ba 02 00 mov dx, 2
00080 66 b9 06 00 mov cx, 6
00084 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32
00089 85 c0 test eax, eax
0008b 75 18 jne SHORT $LN7@updateFram
0008d 48 8d 55 24 lea rdx, QWORD PTR opaque$[rbp]
00091 48 8d 4d 44 lea rcx, QWORD PTR color$[rbp]
00095 ff 15 f8 29 00
00 call QWORD PTR _glfw+10744
0009b 85 c0 test eax, eax
0009d 7c 79 jl SHORT $LN5@updateFram
0009f 83 7d 24 00 cmp DWORD PTR opaque$[rbp], 0
000a3 75 73 jne SHORT $LN5@updateFram
$LN7@updateFram:
; 380 : (SUCCEEDED(DwmGetColorizationColor(&color, &opaque)) && !opaque))
; 381 : {
; 382 : HRGN region = CreateRectRgn(0, 0, -1, -1);
000a5 41 b9 ff ff ff
ff mov r9d, -1
000ab 41 b8 ff ff ff
ff mov r8d, -1
000b1 33 d2 xor edx, edx
000b3 33 c9 xor ecx, ecx
000b5 ff 15 00 00 00
00 call QWORD PTR __imp_CreateRectRgn
000bb 48 89 45 68 mov QWORD PTR region$8[rbp], rax
; 383 : DWM_BLURBEHIND bb = {0};
000bf 48 8d 85 88 00
00 00 lea rax, QWORD PTR bb$9[rbp]
000c6 48 8b f8 mov rdi, rax
000c9 33 c0 xor eax, eax
000cb b9 18 00 00 00 mov ecx, 24
000d0 f3 aa rep stosb
; 384 : bb.dwFlags = DWM_BB_ENABLE | DWM_BB_BLURREGION;
000d2 c7 85 88 00 00
00 03 00 00 00 mov DWORD PTR bb$9[rbp], 3
; 385 : bb.hRgnBlur = region;
000dc 48 8b 45 68 mov rax, QWORD PTR region$8[rbp]
000e0 48 89 85 90 00
00 00 mov QWORD PTR bb$9[rbp+8], rax
; 386 : bb.fEnable = TRUE;
000e7 c7 85 8c 00 00
00 01 00 00 00 mov DWORD PTR bb$9[rbp+4], 1
; 387 :
; 388 : DwmEnableBlurBehindWindow(window->win32.handle, &bb);
000f1 48 8d 95 88 00
00 00 lea rdx, QWORD PTR bb$9[rbp]
000f8 48 8b 85 c0 01
00 00 mov rax, QWORD PTR window$[rbp]
000ff 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00106 ff 15 f0 29 00
00 call QWORD PTR _glfw+10736
; 389 : DeleteObject(region);
0010c 48 8b 4d 68 mov rcx, QWORD PTR region$8[rbp]
00110 ff 15 00 00 00
00 call QWORD PTR __imp_DeleteObject
; 390 : }
00116 eb 38 jmp SHORT $LN6@updateFram
$LN5@updateFram:
; 391 : else
; 392 : {
; 393 : // HACK: Disable framebuffer transparency on Windows 7 when the
; 394 : // colorization color is opaque, because otherwise the window
; 395 : // contents is blended additively with the previous frame instead
; 396 : // of replacing it
; 397 : DWM_BLURBEHIND bb = {0};
00118 48 8d 85 b8 00
00 00 lea rax, QWORD PTR bb$10[rbp]
0011f 48 8b f8 mov rdi, rax
00122 33 c0 xor eax, eax
00124 b9 18 00 00 00 mov ecx, 24
00129 f3 aa rep stosb
; 398 : bb.dwFlags = DWM_BB_ENABLE;
0012b c7 85 b8 00 00
00 01 00 00 00 mov DWORD PTR bb$10[rbp], 1
; 399 : DwmEnableBlurBehindWindow(window->win32.handle, &bb);
00135 48 8d 95 b8 00
00 00 lea rdx, QWORD PTR bb$10[rbp]
0013c 48 8b 85 c0 01
00 00 mov rax, QWORD PTR window$[rbp]
00143 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0014a ff 15 f0 29 00
00 call QWORD PTR _glfw+10736
$LN6@updateFram:
$LN1@updateFram:
; 400 : }
; 401 : }
00150 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
00154 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:updateFramebufferTransparency$rtcFrameData
0015b e8 00 00 00 00 call _RTC_CheckStackVars
00160 48 8b 8d 98 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00167 48 33 cd xor rcx, rbp
0016a e8 00 00 00 00 call __security_check_cookie
0016f 48 8d a5 a8 01
00 00 lea rsp, QWORD PTR [rbp+424]
00176 5f pop rdi
00177 5d pop rbp
00178 c3 ret 0
updateFramebufferTransparency ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT updateWindowStyles
_TEXT SEGMENT
rect$ = 8
style$ = 52
tv79 = 260
__$ArrayPad$ = 264
window$ = 304
updateWindowStyles PROC ; COMDAT
; 340 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 58 01
00 00 sub rsp, 344 ; 00000158H
0000e 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
00013 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00018 b9 16 00 00 00 mov ecx, 22
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 78
01 00 00 mov rcx, QWORD PTR [rsp+376]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 08 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 341 : RECT rect;
; 342 : DWORD style = GetWindowLongW(window->win32.handle, GWL_STYLE);
00049 ba f0 ff ff ff mov edx, -16
0004e 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
00055 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0005c ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
00062 89 45 34 mov DWORD PTR style$[rbp], eax
; 343 : style &= ~(WS_OVERLAPPEDWINDOW | WS_POPUP);
00065 8b 45 34 mov eax, DWORD PTR style$[rbp]
00068 25 ff ff 30 7f and eax, 2133917695 ; 7f30ffffH
0006d 89 45 34 mov DWORD PTR style$[rbp], eax
; 344 : style |= getWindowStyle(window);
00070 48 8b 8d 30 01
00 00 mov rcx, QWORD PTR window$[rbp]
00077 e8 00 00 00 00 call getWindowStyle
0007c 8b 4d 34 mov ecx, DWORD PTR style$[rbp]
0007f 0b c8 or ecx, eax
00081 8b c1 mov eax, ecx
00083 89 45 34 mov DWORD PTR style$[rbp], eax
; 345 :
; 346 : GetClientRect(window->win32.handle, &rect);
00086 48 8d 55 08 lea rdx, QWORD PTR rect$[rbp]
0008a 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
00091 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00098 ff 15 00 00 00
00 call QWORD PTR __imp_GetClientRect
; 347 :
; 348 : if (_glfwIsWindows10Version1607OrGreaterWin32())
0009e 66 b9 39 38 mov cx, 14393 ; 00003839H
000a2 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
000a7 85 c0 test eax, eax
000a9 74 45 je SHORT $LN2@updateWind
; 349 : {
; 350 : AdjustWindowRectExForDpi(&rect, style, FALSE,
000ab 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
000b2 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000b9 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
000bf 89 85 04 01 00
00 mov DWORD PTR tv79[rbp], eax
000c5 48 8b 8d 30 01
00 00 mov rcx, QWORD PTR window$[rbp]
000cc e8 00 00 00 00 call getWindowExStyle
000d1 8b 8d 04 01 00
00 mov ecx, DWORD PTR tv79[rbp]
000d7 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
000db 44 8b c8 mov r9d, eax
000de 45 33 c0 xor r8d, r8d
000e1 8b 55 34 mov edx, DWORD PTR style$[rbp]
000e4 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
000e8 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 351 : getWindowExStyle(window),
; 352 : GetDpiForWindow(window->win32.handle));
; 353 : }
000ee eb 1f jmp SHORT $LN3@updateWind
$LN2@updateWind:
; 354 : else
; 355 : AdjustWindowRectEx(&rect, style, FALSE, getWindowExStyle(window));
000f0 48 8b 8d 30 01
00 00 mov rcx, QWORD PTR window$[rbp]
000f7 e8 00 00 00 00 call getWindowExStyle
000fc 44 8b c8 mov r9d, eax
000ff 45 33 c0 xor r8d, r8d
00102 8b 55 34 mov edx, DWORD PTR style$[rbp]
00105 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
00109 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN3@updateWind:
; 356 :
; 357 : ClientToScreen(window->win32.handle, (POINT*) &rect.left);
0010f 48 8d 55 08 lea rdx, QWORD PTR rect$[rbp]
00113 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
0011a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00121 ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 358 : ClientToScreen(window->win32.handle, (POINT*) &rect.right);
00127 48 8d 55 10 lea rdx, QWORD PTR rect$[rbp+8]
0012b 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
00132 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00139 ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 359 : SetWindowLongW(window->win32.handle, GWL_STYLE, style);
0013f 44 8b 45 34 mov r8d, DWORD PTR style$[rbp]
00143 ba f0 ff ff ff mov edx, -16
00148 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
0014f 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00156 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
; 360 : SetWindowPos(window->win32.handle, HWND_TOP,
0015c 8b 45 0c mov eax, DWORD PTR rect$[rbp+4]
0015f 8b 4d 14 mov ecx, DWORD PTR rect$[rbp+12]
00162 2b c8 sub ecx, eax
00164 8b c1 mov eax, ecx
00166 8b 4d 08 mov ecx, DWORD PTR rect$[rbp]
00169 8b 55 10 mov edx, DWORD PTR rect$[rbp+8]
0016c 2b d1 sub edx, ecx
0016e 8b ca mov ecx, edx
00170 c7 44 24 30 34
00 00 00 mov DWORD PTR [rsp+48], 52 ; 00000034H
00178 89 44 24 28 mov DWORD PTR [rsp+40], eax
0017c 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
00180 44 8b 4d 0c mov r9d, DWORD PTR rect$[rbp+4]
00184 44 8b 45 08 mov r8d, DWORD PTR rect$[rbp]
00188 33 d2 xor edx, edx
0018a 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
00191 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00198 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
; 361 : rect.left, rect.top,
; 362 : rect.right - rect.left, rect.bottom - rect.top,
; 363 : SWP_FRAMECHANGED | SWP_NOACTIVATE | SWP_NOZORDER);
; 364 : }
0019e 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
001a2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:updateWindowStyles$rtcFrameData
001a9 e8 00 00 00 00 call _RTC_CheckStackVars
001ae 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
001b5 48 33 cd xor rcx, rbp
001b8 e8 00 00 00 00 call __security_check_cookie
001bd 48 8d a5 18 01
00 00 lea rsp, QWORD PTR [rbp+280]
001c4 5f pop rdi
001c5 5d pop rbp
001c6 c3 ret 0
updateWindowStyles ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT cursorInContentArea
_TEXT SEGMENT
area$ = 8
pos$ = 56
__$ArrayPad$ = 264
window$ = 304
cursorInContentArea PROC ; COMDAT
; 320 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 38 01
00 00 sub rsp, 312 ; 00000138H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00018 b9 16 00 00 00 mov ecx, 22
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 58
01 00 00 mov rcx, QWORD PTR [rsp+344]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 08 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 321 : RECT area;
; 322 : POINT pos;
; 323 :
; 324 : if (!GetCursorPos(&pos))
00049 48 8d 4d 38 lea rcx, QWORD PTR pos$[rbp]
0004d ff 15 00 00 00
00 call QWORD PTR __imp_GetCursorPos
00053 85 c0 test eax, eax
00055 75 04 jne SHORT $LN2@cursorInCo
; 325 : return GLFW_FALSE;
00057 33 c0 xor eax, eax
00059 eb 74 jmp SHORT $LN1@cursorInCo
$LN2@cursorInCo:
; 326 :
; 327 : if (WindowFromPoint(pos) != window->win32.handle)
0005b 48 8b 4d 38 mov rcx, QWORD PTR pos$[rbp]
0005f ff 15 00 00 00
00 call QWORD PTR __imp_WindowFromPoint
00065 48 8b 8d 30 01
00 00 mov rcx, QWORD PTR window$[rbp]
0006c 48 3b 81 58 03
00 00 cmp rax, QWORD PTR [rcx+856]
00073 74 04 je SHORT $LN3@cursorInCo
; 328 : return GLFW_FALSE;
00075 33 c0 xor eax, eax
00077 eb 56 jmp SHORT $LN1@cursorInCo
$LN3@cursorInCo:
; 329 :
; 330 : GetClientRect(window->win32.handle, &area);
00079 48 8d 55 08 lea rdx, QWORD PTR area$[rbp]
0007d 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
00084 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0008b ff 15 00 00 00
00 call QWORD PTR __imp_GetClientRect
; 331 : ClientToScreen(window->win32.handle, (POINT*) &area.left);
00091 48 8d 55 08 lea rdx, QWORD PTR area$[rbp]
00095 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
0009c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000a3 ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 332 : ClientToScreen(window->win32.handle, (POINT*) &area.right);
000a9 48 8d 55 10 lea rdx, QWORD PTR area$[rbp+8]
000ad 48 8b 85 30 01
00 00 mov rax, QWORD PTR window$[rbp]
000b4 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000bb ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 333 :
; 334 : return PtInRect(&area, pos);
000c1 48 8b 55 38 mov rdx, QWORD PTR pos$[rbp]
000c5 48 8d 4d 08 lea rcx, QWORD PTR area$[rbp]
000c9 ff 15 00 00 00
00 call QWORD PTR __imp_PtInRect
$LN1@cursorInCo:
; 335 : }
000cf 48 8b f8 mov rdi, rax
000d2 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000d6 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:cursorInContentArea$rtcFrameData
000dd e8 00 00 00 00 call _RTC_CheckStackVars
000e2 48 8b c7 mov rax, rdi
000e5 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000ec 48 33 cd xor rcx, rbp
000ef e8 00 00 00 00 call __security_check_cookie
000f4 48 8d a5 18 01
00 00 lea rsp, QWORD PTR [rbp+280]
000fb 5f pop rdi
000fc 5d pop rbp
000fd c3 ret 0
cursorInContentArea ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT enableCursor
_TEXT SEGMENT
window$ = 224
enableCursor PROC ; COMDAT
; 305 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 306 : if (window->rawMouseMotion)
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 83 b8 00 02 00
00 00 cmp DWORD PTR [rax+512], 0
0002d 74 0c je SHORT $LN2@enableCurs
; 307 : disableRawMouseMotion(window);
0002f 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00036 e8 00 00 00 00 call disableRawMouseMotion
$LN2@enableCurs:
; 308 :
; 309 : _glfw.win32.disabledCursorWindow = NULL;
0003b 48 c7 05 48 29
00 00 00 00 00
00 mov QWORD PTR _glfw+10568, 0
; 310 : releaseCursor();
00046 e8 00 00 00 00 call releaseCursor
; 311 : _glfwSetCursorPosWin32(window,
0004b f2 0f 10 15 40
29 00 00 movsd xmm2, QWORD PTR _glfw+10560
00053 f2 0f 10 0d 38
29 00 00 movsd xmm1, QWORD PTR _glfw+10552
0005b 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00062 e8 00 00 00 00 call _glfwSetCursorPosWin32
; 312 : _glfw.win32.restoreCursorPosX,
; 313 : _glfw.win32.restoreCursorPosY);
; 314 : updateCursorImage(window);
00067 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0006e e8 00 00 00 00 call updateCursorImage
; 315 : }
00073 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0007a 5f pop rdi
0007b 5d pop rbp
0007c c3 ret 0
enableCursor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT disableCursor
_TEXT SEGMENT
window$ = 224
disableCursor PROC ; COMDAT
; 289 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 290 : _glfw.win32.disabledCursorWindow = window;
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 89 05 48 29
00 00 mov QWORD PTR _glfw+10568, rax
; 291 : _glfwGetCursorPosWin32(window,
0002d 4c 8d 05 40 29
00 00 lea r8, OFFSET FLAT:_glfw+10560
00034 48 8d 15 38 29
00 00 lea rdx, OFFSET FLAT:_glfw+10552
0003b 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00042 e8 00 00 00 00 call _glfwGetCursorPosWin32
; 292 : &_glfw.win32.restoreCursorPosX,
; 293 : &_glfw.win32.restoreCursorPosY);
; 294 : updateCursorImage(window);
00047 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0004e e8 00 00 00 00 call updateCursorImage
; 295 : _glfwCenterCursorInContentArea(window);
00053 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0005a e8 00 00 00 00 call _glfwCenterCursorInContentArea
; 296 : captureCursor(window);
0005f 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00066 e8 00 00 00 00 call captureCursor
; 297 :
; 298 : if (window->rawMouseMotion)
0006b 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00072 83 b8 00 02 00
00 00 cmp DWORD PTR [rax+512], 0
00079 74 0c je SHORT $LN2@disableCur
; 299 : enableRawMouseMotion(window);
0007b 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00082 e8 00 00 00 00 call enableRawMouseMotion
$LN2@disableCur:
; 300 : }
00087 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0008e 5f pop rdi
0008f 5d pop rbp
00090 c3 ret 0
disableCursor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT disableRawMouseMotion
_TEXT SEGMENT
rid$ = 8
__$ArrayPad$ = 232
window$ = 272
disableRawMouseMotion PROC ; COMDAT
; 276 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 18 01
00 00 sub rsp, 280 ; 00000118H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00018 b9 0e 00 00 00 mov ecx, 14
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 38
01 00 00 mov rcx, QWORD PTR [rsp+312]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 e8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 277 : const RAWINPUTDEVICE rid = { 0x01, 0x02, RIDEV_REMOVE, NULL };
00049 b8 01 00 00 00 mov eax, 1
0004e 66 89 45 08 mov WORD PTR rid$[rbp], ax
00052 b8 02 00 00 00 mov eax, 2
00057 66 89 45 0a mov WORD PTR rid$[rbp+2], ax
0005b c7 45 0c 01 00
00 00 mov DWORD PTR rid$[rbp+4], 1
00062 48 c7 45 10 00
00 00 00 mov QWORD PTR rid$[rbp+8], 0
; 278 :
; 279 : if (!RegisterRawInputDevices(&rid, 1, sizeof(rid)))
0006a 41 b8 10 00 00
00 mov r8d, 16
00070 ba 01 00 00 00 mov edx, 1
00075 48 8d 4d 08 lea rcx, QWORD PTR rid$[rbp]
00079 ff 15 00 00 00
00 call QWORD PTR __imp_RegisterRawInputDevices
0007f 85 c0 test eax, eax
00081 75 11 jne SHORT $LN2@disableRaw
; 280 : {
; 281 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
00083 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@JFEDIEDE@Win32?3?5Failed?5to?5remove?5raw?5inp@
0008a b9 08 00 01 00 mov ecx, 65544 ; 00010008H
0008f e8 00 00 00 00 call _glfwInputErrorWin32
$LN2@disableRaw:
; 282 : "Win32: Failed to remove raw input device");
; 283 : }
; 284 : }
00094 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
00098 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:disableRawMouseMotion$rtcFrameData
0009f e8 00 00 00 00 call _RTC_CheckStackVars
000a4 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000ab 48 33 cd xor rcx, rbp
000ae e8 00 00 00 00 call __security_check_cookie
000b3 48 8d a5 f8 00
00 00 lea rsp, QWORD PTR [rbp+248]
000ba 5f pop rdi
000bb 5d pop rbp
000bc c3 ret 0
disableRawMouseMotion ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT enableRawMouseMotion
_TEXT SEGMENT
rid$ = 8
__$ArrayPad$ = 232
window$ = 272
enableRawMouseMotion PROC ; COMDAT
; 263 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 18 01
00 00 sub rsp, 280 ; 00000118H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00018 b9 0e 00 00 00 mov ecx, 14
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 38
01 00 00 mov rcx, QWORD PTR [rsp+312]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 e8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 264 : const RAWINPUTDEVICE rid = { 0x01, 0x02, 0, window->win32.handle };
00049 b8 01 00 00 00 mov eax, 1
0004e 66 89 45 08 mov WORD PTR rid$[rbp], ax
00052 b8 02 00 00 00 mov eax, 2
00057 66 89 45 0a mov WORD PTR rid$[rbp+2], ax
0005b c7 45 0c 00 00
00 00 mov DWORD PTR rid$[rbp+4], 0
00062 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
00069 48 8b 80 58 03
00 00 mov rax, QWORD PTR [rax+856]
00070 48 89 45 10 mov QWORD PTR rid$[rbp+8], rax
; 265 :
; 266 : if (!RegisterRawInputDevices(&rid, 1, sizeof(rid)))
00074 41 b8 10 00 00
00 mov r8d, 16
0007a ba 01 00 00 00 mov edx, 1
0007f 48 8d 4d 08 lea rcx, QWORD PTR rid$[rbp]
00083 ff 15 00 00 00
00 call QWORD PTR __imp_RegisterRawInputDevices
00089 85 c0 test eax, eax
0008b 75 11 jne SHORT $LN2@enableRawM
; 267 : {
; 268 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
0008d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CL@GPJNIICL@Win32?3?5Failed?5to?5register?5raw?5i@
00094 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00099 e8 00 00 00 00 call _glfwInputErrorWin32
$LN2@enableRawM:
; 269 : "Win32: Failed to register raw input device");
; 270 : }
; 271 : }
0009e 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000a2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:enableRawMouseMotion$rtcFrameData
000a9 e8 00 00 00 00 call _RTC_CheckStackVars
000ae 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000b5 48 33 cd xor rcx, rbp
000b8 e8 00 00 00 00 call __security_check_cookie
000bd 48 8d a5 f8 00
00 00 lea rsp, QWORD PTR [rbp+248]
000c4 5f pop rdi
000c5 5d pop rbp
000c6 c3 ret 0
enableRawMouseMotion ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT releaseCursor
_TEXT SEGMENT
releaseCursor PROC ; COMDAT
; 255 : {
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 256 : ClipCursor(NULL);
0001b 33 c9 xor ecx, ecx
0001d ff 15 00 00 00
00 call QWORD PTR __imp_ClipCursor
; 257 : _glfw.win32.capturedCursorWindow = NULL;
00023 48 c7 05 50 29
00 00 00 00 00
00 mov QWORD PTR _glfw+10576, 0
; 258 : }
0002e 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00035 5f pop rdi
00036 5d pop rbp
00037 c3 ret 0
releaseCursor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT captureCursor
_TEXT SEGMENT
clipRect$ = 8
__$ArrayPad$ = 232
window$ = 272
captureCursor PROC ; COMDAT
; 243 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 18 01
00 00 sub rsp, 280 ; 00000118H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00018 b9 0e 00 00 00 mov ecx, 14
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 38
01 00 00 mov rcx, QWORD PTR [rsp+312]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 e8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 244 : RECT clipRect;
; 245 : GetClientRect(window->win32.handle, &clipRect);
00049 48 8d 55 08 lea rdx, QWORD PTR clipRect$[rbp]
0004d 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
00054 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0005b ff 15 00 00 00
00 call QWORD PTR __imp_GetClientRect
; 246 : ClientToScreen(window->win32.handle, (POINT*) &clipRect.left);
00061 48 8d 55 08 lea rdx, QWORD PTR clipRect$[rbp]
00065 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
0006c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00073 ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 247 : ClientToScreen(window->win32.handle, (POINT*) &clipRect.right);
00079 48 8d 55 10 lea rdx, QWORD PTR clipRect$[rbp+8]
0007d 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
00084 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0008b ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 248 : ClipCursor(&clipRect);
00091 48 8d 4d 08 lea rcx, QWORD PTR clipRect$[rbp]
00095 ff 15 00 00 00
00 call QWORD PTR __imp_ClipCursor
; 249 : _glfw.win32.capturedCursorWindow = window;
0009b 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
000a2 48 89 05 50 29
00 00 mov QWORD PTR _glfw+10576, rax
; 250 : }
000a9 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000ad 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:captureCursor$rtcFrameData
000b4 e8 00 00 00 00 call _RTC_CheckStackVars
000b9 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000c0 48 33 cd xor rcx, rbp
000c3 e8 00 00 00 00 call __security_check_cookie
000c8 48 8d a5 f8 00
00 00 lea rsp, QWORD PTR [rbp+248]
000cf 5f pop rdi
000d0 5d pop rbp
000d1 c3 ret 0
captureCursor ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT updateCursorImage
_TEXT SEGMENT
window$ = 224
updateCursorImage PROC ; COMDAT
; 227 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 228 : if (window->cursorMode == GLFW_CURSOR_NORMAL ||
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 81 b8 84 00 00
00 01 40 03 00 cmp DWORD PTR [rax+132], 212993 ; 00034001H
00030 74 13 je SHORT $LN4@updateCurs
00032 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00039 81 b8 84 00 00
00 04 40 03 00 cmp DWORD PTR [rax+132], 212996 ; 00034004H
00043 75 3d jne SHORT $LN2@updateCurs
$LN4@updateCurs:
; 229 : window->cursorMode == GLFW_CURSOR_CAPTURED)
; 230 : {
; 231 : if (window->cursor)
00045 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0004c 48 83 78 58 00 cmp QWORD PTR [rax+88], 0
00051 74 17 je SHORT $LN5@updateCurs
; 232 : SetCursor(window->cursor->win32.handle);
00053 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0005a 48 8b 40 58 mov rax, QWORD PTR [rax+88]
0005e 48 8b 48 08 mov rcx, QWORD PTR [rax+8]
00062 ff 15 00 00 00
00 call QWORD PTR __imp_SetCursor
00068 eb 16 jmp SHORT $LN6@updateCurs
$LN5@updateCurs:
; 233 : else
; 234 : SetCursor(LoadCursorW(NULL, IDC_ARROW));
0006a ba 00 7f 00 00 mov edx, 32512 ; 00007f00H
0006f 33 c9 xor ecx, ecx
00071 ff 15 00 00 00
00 call QWORD PTR __imp_LoadCursorW
00077 48 8b c8 mov rcx, rax
0007a ff 15 00 00 00
00 call QWORD PTR __imp_SetCursor
$LN6@updateCurs:
; 235 : }
00080 eb 08 jmp SHORT $LN3@updateCurs
$LN2@updateCurs:
; 236 : else
; 237 : SetCursor(NULL);
00082 33 c9 xor ecx, ecx
00084 ff 15 00 00 00
00 call QWORD PTR __imp_SetCursor
$LN3@updateCurs:
; 238 : }
0008a 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00091 5f pop rdi
00092 5d pop rbp
00093 c3 ret 0
updateCursorImage ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT applyAspectRatio
_TEXT SEGMENT
frame$ = 8
ratio$ = 52
style$ = 84
exStyle$ = 116
__$ArrayPad$ = 328
window$ = 368
edge$ = 376
area$ = 384
applyAspectRatio PROC ; COMDAT
; 192 : {
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 89 54 24 10 mov DWORD PTR [rsp+16], edx
00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000e 55 push rbp
0000f 57 push rdi
00010 48 81 ec 88 01
00 00 sub rsp, 392 ; 00000188H
00017 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001c 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00021 b9 26 00 00 00 mov ecx, 38 ; 00000026H
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 a8
01 00 00 mov rcx, QWORD PTR [rsp+424]
00035 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 48 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 193 : RECT frame = {0};
00052 48 8d 45 08 lea rax, QWORD PTR frame$[rbp]
00056 48 8b f8 mov rdi, rax
00059 33 c0 xor eax, eax
0005b b9 10 00 00 00 mov ecx, 16
00060 f3 aa rep stosb
; 194 : const float ratio = (float) window->numer / (float) window->denom;
00062 48 8b 85 70 01
00 00 mov rax, QWORD PTR window$[rbp]
00069 f3 0f 2a 40 70 cvtsi2ss xmm0, DWORD PTR [rax+112]
0006e 48 8b 85 70 01
00 00 mov rax, QWORD PTR window$[rbp]
00075 f3 0f 2a 48 74 cvtsi2ss xmm1, DWORD PTR [rax+116]
0007a f3 0f 5e c1 divss xmm0, xmm1
0007e f3 0f 11 45 34 movss DWORD PTR ratio$[rbp], xmm0
; 195 : const DWORD style = getWindowStyle(window);
00083 48 8b 8d 70 01
00 00 mov rcx, QWORD PTR window$[rbp]
0008a e8 00 00 00 00 call getWindowStyle
0008f 89 45 54 mov DWORD PTR style$[rbp], eax
; 196 : const DWORD exStyle = getWindowExStyle(window);
00092 48 8b 8d 70 01
00 00 mov rcx, QWORD PTR window$[rbp]
00099 e8 00 00 00 00 call getWindowExStyle
0009e 89 45 74 mov DWORD PTR exStyle$[rbp], eax
; 197 :
; 198 : if (_glfwIsWindows10Version1607OrGreaterWin32())
000a1 66 b9 39 38 mov cx, 14393 ; 00003839H
000a5 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
000aa 85 c0 test eax, eax
000ac 74 2e je SHORT $LN2@applyAspec
; 199 : {
; 200 : AdjustWindowRectExForDpi(&frame, style, FALSE, exStyle,
000ae 48 8b 85 70 01
00 00 mov rax, QWORD PTR window$[rbp]
000b5 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000bc ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
000c2 89 44 24 20 mov DWORD PTR [rsp+32], eax
000c6 44 8b 4d 74 mov r9d, DWORD PTR exStyle$[rbp]
000ca 45 33 c0 xor r8d, r8d
000cd 8b 55 54 mov edx, DWORD PTR style$[rbp]
000d0 48 8d 4d 08 lea rcx, QWORD PTR frame$[rbp]
000d4 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 201 : GetDpiForWindow(window->win32.handle));
; 202 : }
000da eb 14 jmp SHORT $LN3@applyAspec
$LN2@applyAspec:
; 203 : else
; 204 : AdjustWindowRectEx(&frame, style, FALSE, exStyle);
000dc 44 8b 4d 74 mov r9d, DWORD PTR exStyle$[rbp]
000e0 45 33 c0 xor r8d, r8d
000e3 8b 55 54 mov edx, DWORD PTR style$[rbp]
000e6 48 8d 4d 08 lea rcx, QWORD PTR frame$[rbp]
000ea ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN3@applyAspec:
; 205 :
; 206 : if (edge == WMSZ_LEFT || edge == WMSZ_BOTTOMLEFT ||
; 207 : edge == WMSZ_RIGHT || edge == WMSZ_BOTTOMRIGHT)
000f0 83 bd 78 01 00
00 01 cmp DWORD PTR edge$[rbp], 1
000f7 74 1b je SHORT $LN6@applyAspec
000f9 83 bd 78 01 00
00 07 cmp DWORD PTR edge$[rbp], 7
00100 74 12 je SHORT $LN6@applyAspec
00102 83 bd 78 01 00
00 02 cmp DWORD PTR edge$[rbp], 2
00109 74 09 je SHORT $LN6@applyAspec
0010b 83 bd 78 01 00
00 08 cmp DWORD PTR edge$[rbp], 8
00112 75 57 jne SHORT $LN4@applyAspec
$LN6@applyAspec:
; 208 : {
; 209 : area->bottom = area->top + (frame.bottom - frame.top) +
00114 8b 45 0c mov eax, DWORD PTR frame$[rbp+4]
00117 8b 4d 14 mov ecx, DWORD PTR frame$[rbp+12]
0011a 2b c8 sub ecx, eax
0011c 8b c1 mov eax, ecx
0011e 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
00125 8b 49 04 mov ecx, DWORD PTR [rcx+4]
00128 03 c8 add ecx, eax
0012a 8b c1 mov eax, ecx
0012c 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
00133 48 8b 95 80 01
00 00 mov rdx, QWORD PTR area$[rbp]
0013a 8b 12 mov edx, DWORD PTR [rdx]
0013c 8b 49 08 mov ecx, DWORD PTR [rcx+8]
0013f 2b ca sub ecx, edx
00141 8b 55 08 mov edx, DWORD PTR frame$[rbp]
00144 8b 7d 10 mov edi, DWORD PTR frame$[rbp+8]
00147 2b fa sub edi, edx
00149 8b d7 mov edx, edi
0014b 2b ca sub ecx, edx
0014d f3 0f 2a c1 cvtsi2ss xmm0, ecx
00151 f3 0f 5e 45 34 divss xmm0, DWORD PTR ratio$[rbp]
00156 f3 0f 2c c8 cvttss2si ecx, xmm0
0015a 03 c1 add eax, ecx
0015c 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
00163 89 41 0c mov DWORD PTR [rcx+12], eax
; 210 : (int) (((area->right - area->left) - (frame.right - frame.left)) / ratio);
; 211 : }
00166 e9 ca 00 00 00 jmp $LN5@applyAspec
$LN4@applyAspec:
; 212 : else if (edge == WMSZ_TOPLEFT || edge == WMSZ_TOPRIGHT)
0016b 83 bd 78 01 00
00 04 cmp DWORD PTR edge$[rbp], 4
00172 74 09 je SHORT $LN9@applyAspec
00174 83 bd 78 01 00
00 05 cmp DWORD PTR edge$[rbp], 5
0017b 75 54 jne SHORT $LN7@applyAspec
$LN9@applyAspec:
; 213 : {
; 214 : area->top = area->bottom - (frame.bottom - frame.top) -
0017d 8b 45 0c mov eax, DWORD PTR frame$[rbp+4]
00180 8b 4d 14 mov ecx, DWORD PTR frame$[rbp+12]
00183 2b c8 sub ecx, eax
00185 8b c1 mov eax, ecx
00187 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
0018e 8b 49 0c mov ecx, DWORD PTR [rcx+12]
00191 2b c8 sub ecx, eax
00193 8b c1 mov eax, ecx
00195 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
0019c 48 8b 95 80 01
00 00 mov rdx, QWORD PTR area$[rbp]
001a3 8b 12 mov edx, DWORD PTR [rdx]
001a5 8b 49 08 mov ecx, DWORD PTR [rcx+8]
001a8 2b ca sub ecx, edx
001aa 8b 55 08 mov edx, DWORD PTR frame$[rbp]
001ad 8b 7d 10 mov edi, DWORD PTR frame$[rbp+8]
001b0 2b fa sub edi, edx
001b2 8b d7 mov edx, edi
001b4 2b ca sub ecx, edx
001b6 f3 0f 2a c1 cvtsi2ss xmm0, ecx
001ba f3 0f 5e 45 34 divss xmm0, DWORD PTR ratio$[rbp]
001bf f3 0f 2c c8 cvttss2si ecx, xmm0
001c3 2b c1 sub eax, ecx
001c5 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
001cc 89 41 04 mov DWORD PTR [rcx+4], eax
; 215 : (int) (((area->right - area->left) - (frame.right - frame.left)) / ratio);
; 216 : }
001cf eb 64 jmp SHORT $LN8@applyAspec
$LN7@applyAspec:
; 217 : else if (edge == WMSZ_TOP || edge == WMSZ_BOTTOM)
001d1 83 bd 78 01 00
00 03 cmp DWORD PTR edge$[rbp], 3
001d8 74 09 je SHORT $LN11@applyAspec
001da 83 bd 78 01 00
00 06 cmp DWORD PTR edge$[rbp], 6
001e1 75 52 jne SHORT $LN10@applyAspec
$LN11@applyAspec:
; 218 : {
; 219 : area->right = area->left + (frame.right - frame.left) +
001e3 8b 45 08 mov eax, DWORD PTR frame$[rbp]
001e6 8b 4d 10 mov ecx, DWORD PTR frame$[rbp+8]
001e9 2b c8 sub ecx, eax
001eb 8b c1 mov eax, ecx
001ed 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
001f4 8b 09 mov ecx, DWORD PTR [rcx]
001f6 03 c8 add ecx, eax
001f8 8b c1 mov eax, ecx
001fa 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
00201 48 8b 95 80 01
00 00 mov rdx, QWORD PTR area$[rbp]
00208 8b 52 04 mov edx, DWORD PTR [rdx+4]
0020b 8b 49 0c mov ecx, DWORD PTR [rcx+12]
0020e 2b ca sub ecx, edx
00210 8b 55 0c mov edx, DWORD PTR frame$[rbp+4]
00213 8b 7d 14 mov edi, DWORD PTR frame$[rbp+12]
00216 2b fa sub edi, edx
00218 8b d7 mov edx, edi
0021a 2b ca sub ecx, edx
0021c f3 0f 2a c1 cvtsi2ss xmm0, ecx
00220 f3 0f 59 45 34 mulss xmm0, DWORD PTR ratio$[rbp]
00225 f3 0f 2c c8 cvttss2si ecx, xmm0
00229 03 c1 add eax, ecx
0022b 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR area$[rbp]
00232 89 41 08 mov DWORD PTR [rcx+8], eax
$LN10@applyAspec:
$LN8@applyAspec:
$LN5@applyAspec:
; 220 : (int) (((area->bottom - area->top) - (frame.bottom - frame.top)) * ratio);
; 221 : }
; 222 : }
00235 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00239 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:applyAspectRatio$rtcFrameData
00240 e8 00 00 00 00 call _RTC_CheckStackVars
00245 48 8b 8d 48 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0024c 48 33 cd xor rcx, rbp
0024f e8 00 00 00 00 call __security_check_cookie
00254 48 8d a5 58 01
00 00 lea rsp, QWORD PTR [rbp+344]
0025b 5f pop rdi
0025c 5d pop rbp
0025d c3 ret 0
applyAspectRatio ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT createIcon
_TEXT SEGMENT
i$ = 4
dc$ = 40
handle$ = 72
color$ = 104
mask$ = 136
bi$ = 176
ii$ = 328
target$ = 392
source$ = 424
__$ArrayPad$ = 632
image$ = 672
xhot$ = 680
yhot$ = 688
icon$ = 696
createIcon PROC ; COMDAT
; 103 : {
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx
0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00013 55 push rbp
00014 57 push rdi
00015 48 81 ec b8 02
00 00 sub rsp, 696 ; 000002b8H
0001c 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00021 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00026 b9 72 00 00 00 mov ecx, 114 ; 00000072H
0002b b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00030 f3 ab rep stosd
00032 48 8b 8c 24 d8
02 00 00 mov rcx, QWORD PTR [rsp+728]
0003a 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00041 48 33 c5 xor rax, rbp
00044 48 89 85 78 02
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004b 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 104 : int i;
; 105 : HDC dc;
; 106 : HICON handle;
; 107 : HBITMAP color, mask;
; 108 : BITMAPV5HEADER bi;
; 109 : ICONINFO ii;
; 110 : unsigned char* target = NULL;
00057 48 c7 85 88 01
00 00 00 00 00
00 mov QWORD PTR target$[rbp], 0
; 111 : unsigned char* source = image->pixels;
00062 48 8b 85 a0 02
00 00 mov rax, QWORD PTR image$[rbp]
00069 48 8b 40 08 mov rax, QWORD PTR [rax+8]
0006d 48 89 85 a8 01
00 00 mov QWORD PTR source$[rbp], rax
; 112 :
; 113 : ZeroMemory(&bi, sizeof(bi));
00074 41 b8 7c 00 00
00 mov r8d, 124 ; 0000007cH
0007a 33 d2 xor edx, edx
0007c 48 8d 8d b0 00
00 00 lea rcx, QWORD PTR bi$[rbp]
00083 e8 00 00 00 00 call memset
; 114 : bi.bV5Size = sizeof(bi);
00088 c7 85 b0 00 00
00 7c 00 00 00 mov DWORD PTR bi$[rbp], 124 ; 0000007cH
; 115 : bi.bV5Width = image->width;
00092 48 8b 85 a0 02
00 00 mov rax, QWORD PTR image$[rbp]
00099 8b 00 mov eax, DWORD PTR [rax]
0009b 89 85 b4 00 00
00 mov DWORD PTR bi$[rbp+4], eax
; 116 : bi.bV5Height = -image->height;
000a1 48 8b 85 a0 02
00 00 mov rax, QWORD PTR image$[rbp]
000a8 8b 40 04 mov eax, DWORD PTR [rax+4]
000ab f7 d8 neg eax
000ad 89 85 b8 00 00
00 mov DWORD PTR bi$[rbp+8], eax
; 117 : bi.bV5Planes = 1;
000b3 b8 01 00 00 00 mov eax, 1
000b8 66 89 85 bc 00
00 00 mov WORD PTR bi$[rbp+12], ax
; 118 : bi.bV5BitCount = 32;
000bf b8 20 00 00 00 mov eax, 32 ; 00000020H
000c4 66 89 85 be 00
00 00 mov WORD PTR bi$[rbp+14], ax
; 119 : bi.bV5Compression = BI_BITFIELDS;
000cb c7 85 c0 00 00
00 03 00 00 00 mov DWORD PTR bi$[rbp+16], 3
; 120 : bi.bV5RedMask = 0x00ff0000;
000d5 c7 85 d8 00 00
00 00 00 ff 00 mov DWORD PTR bi$[rbp+40], 16711680 ; 00ff0000H
; 121 : bi.bV5GreenMask = 0x0000ff00;
000df c7 85 dc 00 00
00 00 ff 00 00 mov DWORD PTR bi$[rbp+44], 65280 ; 0000ff00H
; 122 : bi.bV5BlueMask = 0x000000ff;
000e9 c7 85 e0 00 00
00 ff 00 00 00 mov DWORD PTR bi$[rbp+48], 255 ; 000000ffH
; 123 : bi.bV5AlphaMask = 0xff000000;
000f3 c7 85 e4 00 00
00 00 00 00 ff mov DWORD PTR bi$[rbp+52], -16777216 ; ff000000H
; 124 :
; 125 : dc = GetDC(NULL);
000fd 33 c9 xor ecx, ecx
000ff ff 15 00 00 00
00 call QWORD PTR __imp_GetDC
00105 48 89 45 28 mov QWORD PTR dc$[rbp], rax
; 126 : color = CreateDIBSection(dc,
00109 c7 44 24 28 00
00 00 00 mov DWORD PTR [rsp+40], 0
00111 48 c7 44 24 20
00 00 00 00 mov QWORD PTR [rsp+32], 0
0011a 4c 8d 8d 88 01
00 00 lea r9, QWORD PTR target$[rbp]
00121 45 33 c0 xor r8d, r8d
00124 48 8d 95 b0 00
00 00 lea rdx, QWORD PTR bi$[rbp]
0012b 48 8b 4d 28 mov rcx, QWORD PTR dc$[rbp]
0012f ff 15 00 00 00
00 call QWORD PTR __imp_CreateDIBSection
00135 48 89 45 68 mov QWORD PTR color$[rbp], rax
; 127 : (BITMAPINFO*) &bi,
; 128 : DIB_RGB_COLORS,
; 129 : (void**) &target,
; 130 : NULL,
; 131 : (DWORD) 0);
; 132 : ReleaseDC(NULL, dc);
00139 48 8b 55 28 mov rdx, QWORD PTR dc$[rbp]
0013d 33 c9 xor ecx, ecx
0013f ff 15 00 00 00
00 call QWORD PTR __imp_ReleaseDC
; 133 :
; 134 : if (!color)
00145 48 83 7d 68 00 cmp QWORD PTR color$[rbp], 0
0014a 75 18 jne SHORT $LN5@createIcon
; 135 : {
; 136 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
0014c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CE@GCBEILKL@Win32?3?5Failed?5to?5create?5RGBA?5bi@
00153 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00158 e8 00 00 00 00 call _glfwInputErrorWin32
; 137 : "Win32: Failed to create RGBA bitmap");
; 138 : return NULL;
0015d 33 c0 xor eax, eax
0015f e9 09 02 00 00 jmp $LN1@createIcon
$LN5@createIcon:
; 139 : }
; 140 :
; 141 : mask = CreateBitmap(image->width, image->height, 1, 1, NULL);
00164 48 c7 44 24 20
00 00 00 00 mov QWORD PTR [rsp+32], 0
0016d 41 b9 01 00 00
00 mov r9d, 1
00173 41 b8 01 00 00
00 mov r8d, 1
00179 48 8b 85 a0 02
00 00 mov rax, QWORD PTR image$[rbp]
00180 8b 50 04 mov edx, DWORD PTR [rax+4]
00183 48 8b 85 a0 02
00 00 mov rax, QWORD PTR image$[rbp]
0018a 8b 08 mov ecx, DWORD PTR [rax]
0018c ff 15 00 00 00
00 call QWORD PTR __imp_CreateBitmap
00192 48 89 85 88 00
00 00 mov QWORD PTR mask$[rbp], rax
; 142 : if (!mask)
00199 48 83 bd 88 00
00 00 00 cmp QWORD PTR mask$[rbp], 0
001a1 75 22 jne SHORT $LN6@createIcon
; 143 : {
; 144 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
001a3 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CE@PKGOIGHB@Win32?3?5Failed?5to?5create?5mask?5bi@
001aa b9 08 00 01 00 mov ecx, 65544 ; 00010008H
001af e8 00 00 00 00 call _glfwInputErrorWin32
; 145 : "Win32: Failed to create mask bitmap");
; 146 : DeleteObject(color);
001b4 48 8b 4d 68 mov rcx, QWORD PTR color$[rbp]
001b8 ff 15 00 00 00
00 call QWORD PTR __imp_DeleteObject
; 147 : return NULL;
001be 33 c0 xor eax, eax
001c0 e9 a8 01 00 00 jmp $LN1@createIcon
$LN6@createIcon:
; 148 : }
; 149 :
; 150 : for (i = 0; i < image->width * image->height; i++)
001c5 c7 45 04 00 00
00 00 mov DWORD PTR i$[rbp], 0
001cc eb 08 jmp SHORT $LN4@createIcon
$LN2@createIcon:
001ce 8b 45 04 mov eax, DWORD PTR i$[rbp]
001d1 ff c0 inc eax
001d3 89 45 04 mov DWORD PTR i$[rbp], eax
$LN4@createIcon:
001d6 48 8b 85 a0 02
00 00 mov rax, QWORD PTR image$[rbp]
001dd 48 8b 8d a0 02
00 00 mov rcx, QWORD PTR image$[rbp]
001e4 8b 00 mov eax, DWORD PTR [rax]
001e6 0f af 41 04 imul eax, DWORD PTR [rcx+4]
001ea 39 45 04 cmp DWORD PTR i$[rbp], eax
001ed 0f 8d c9 00 00
00 jge $LN3@createIcon
; 151 : {
; 152 : target[0] = source[2];
001f3 b8 01 00 00 00 mov eax, 1
001f8 48 6b c0 02 imul rax, rax, 2
001fc b9 01 00 00 00 mov ecx, 1
00201 48 6b c9 00 imul rcx, rcx, 0
00205 48 8b 95 88 01
00 00 mov rdx, QWORD PTR target$[rbp]
0020c 4c 8b 85 a8 01
00 00 mov r8, QWORD PTR source$[rbp]
00213 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax]
00218 88 04 0a mov BYTE PTR [rdx+rcx], al
; 153 : target[1] = source[1];
0021b b8 01 00 00 00 mov eax, 1
00220 48 6b c0 01 imul rax, rax, 1
00224 b9 01 00 00 00 mov ecx, 1
00229 48 6b c9 01 imul rcx, rcx, 1
0022d 48 8b 95 88 01
00 00 mov rdx, QWORD PTR target$[rbp]
00234 4c 8b 85 a8 01
00 00 mov r8, QWORD PTR source$[rbp]
0023b 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax]
00240 88 04 0a mov BYTE PTR [rdx+rcx], al
; 154 : target[2] = source[0];
00243 b8 01 00 00 00 mov eax, 1
00248 48 6b c0 00 imul rax, rax, 0
0024c b9 01 00 00 00 mov ecx, 1
00251 48 6b c9 02 imul rcx, rcx, 2
00255 48 8b 95 88 01
00 00 mov rdx, QWORD PTR target$[rbp]
0025c 4c 8b 85 a8 01
00 00 mov r8, QWORD PTR source$[rbp]
00263 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax]
00268 88 04 0a mov BYTE PTR [rdx+rcx], al
; 155 : target[3] = source[3];
0026b b8 01 00 00 00 mov eax, 1
00270 48 6b c0 03 imul rax, rax, 3
00274 b9 01 00 00 00 mov ecx, 1
00279 48 6b c9 03 imul rcx, rcx, 3
0027d 48 8b 95 88 01
00 00 mov rdx, QWORD PTR target$[rbp]
00284 4c 8b 85 a8 01
00 00 mov r8, QWORD PTR source$[rbp]
0028b 41 0f b6 04 00 movzx eax, BYTE PTR [r8+rax]
00290 88 04 0a mov BYTE PTR [rdx+rcx], al
; 156 : target += 4;
00293 48 8b 85 88 01
00 00 mov rax, QWORD PTR target$[rbp]
0029a 48 83 c0 04 add rax, 4
0029e 48 89 85 88 01
00 00 mov QWORD PTR target$[rbp], rax
; 157 : source += 4;
002a5 48 8b 85 a8 01
00 00 mov rax, QWORD PTR source$[rbp]
002ac 48 83 c0 04 add rax, 4
002b0 48 89 85 a8 01
00 00 mov QWORD PTR source$[rbp], rax
; 158 : }
002b7 e9 12 ff ff ff jmp $LN2@createIcon
$LN3@createIcon:
; 159 :
; 160 : ZeroMemory(&ii, sizeof(ii));
002bc 41 b8 20 00 00
00 mov r8d, 32 ; 00000020H
002c2 33 d2 xor edx, edx
002c4 48 8d 8d 48 01
00 00 lea rcx, QWORD PTR ii$[rbp]
002cb e8 00 00 00 00 call memset
; 161 : ii.fIcon = icon;
002d0 8b 85 b8 02 00
00 mov eax, DWORD PTR icon$[rbp]
002d6 89 85 48 01 00
00 mov DWORD PTR ii$[rbp], eax
; 162 : ii.xHotspot = xhot;
002dc 8b 85 a8 02 00
00 mov eax, DWORD PTR xhot$[rbp]
002e2 89 85 4c 01 00
00 mov DWORD PTR ii$[rbp+4], eax
; 163 : ii.yHotspot = yhot;
002e8 8b 85 b0 02 00
00 mov eax, DWORD PTR yhot$[rbp]
002ee 89 85 50 01 00
00 mov DWORD PTR ii$[rbp+8], eax
; 164 : ii.hbmMask = mask;
002f4 48 8b 85 88 00
00 00 mov rax, QWORD PTR mask$[rbp]
002fb 48 89 85 58 01
00 00 mov QWORD PTR ii$[rbp+16], rax
; 165 : ii.hbmColor = color;
00302 48 8b 45 68 mov rax, QWORD PTR color$[rbp]
00306 48 89 85 60 01
00 00 mov QWORD PTR ii$[rbp+24], rax
; 166 :
; 167 : handle = CreateIconIndirect(&ii);
0030d 48 8d 8d 48 01
00 00 lea rcx, QWORD PTR ii$[rbp]
00314 ff 15 00 00 00
00 call QWORD PTR __imp_CreateIconIndirect
0031a 48 89 45 48 mov QWORD PTR handle$[rbp], rax
; 168 :
; 169 : DeleteObject(color);
0031e 48 8b 4d 68 mov rcx, QWORD PTR color$[rbp]
00322 ff 15 00 00 00
00 call QWORD PTR __imp_DeleteObject
; 170 : DeleteObject(mask);
00328 48 8b 8d 88 00
00 00 mov rcx, QWORD PTR mask$[rbp]
0032f ff 15 00 00 00
00 call QWORD PTR __imp_DeleteObject
; 171 :
; 172 : if (!handle)
00335 48 83 7d 48 00 cmp QWORD PTR handle$[rbp], 0
0033a 75 2d jne SHORT $LN7@createIcon
; 173 : {
; 174 : if (icon)
0033c 83 bd b8 02 00
00 00 cmp DWORD PTR icon$[rbp], 0
00343 74 13 je SHORT $LN8@createIcon
; 175 : {
; 176 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
00345 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BN@HJHDCKKP@Win32?3?5Failed?5to?5create?5icon@
0034c b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00351 e8 00 00 00 00 call _glfwInputErrorWin32
; 177 : "Win32: Failed to create icon");
; 178 : }
00356 eb 11 jmp SHORT $LN9@createIcon
$LN8@createIcon:
; 179 : else
; 180 : {
; 181 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
00358 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BP@OHFKOFFD@Win32?3?5Failed?5to?5create?5cursor@
0035f b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00364 e8 00 00 00 00 call _glfwInputErrorWin32
$LN9@createIcon:
$LN7@createIcon:
; 182 : "Win32: Failed to create cursor");
; 183 : }
; 184 : }
; 185 :
; 186 : return handle;
00369 48 8b 45 48 mov rax, QWORD PTR handle$[rbp]
$LN1@createIcon:
; 187 : }
0036d 48 8b f8 mov rdi, rax
00370 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00374 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:createIcon$rtcFrameData
0037b e8 00 00 00 00 call _RTC_CheckStackVars
00380 48 8b c7 mov rax, rdi
00383 48 8b 8d 78 02
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0038a 48 33 cd xor rcx, rbp
0038d e8 00 00 00 00 call __security_check_cookie
00392 48 8d a5 88 02
00 00 lea rsp, QWORD PTR [rbp+648]
00399 5f pop rdi
0039a 5d pop rbp
0039b c3 ret 0
createIcon ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT chooseImage
_TEXT SEGMENT
i$ = 4
leastDiff$ = 36
closest$ = 72
currDiff$1 = 100
count$ = 352
images$ = 360
width$ = 368
height$ = 376
chooseImage PROC ; COMDAT
; 82 : {
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00013 55 push rbp
00014 57 push rdi
00015 48 81 ec 68 01
00 00 sub rsp, 360 ; 00000168H
0001c 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00021 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 83 : int i, leastDiff = INT_MAX;
0002d c7 45 24 ff ff
ff 7f mov DWORD PTR leastDiff$[rbp], 2147483647 ; 7fffffffH
; 84 : const GLFWimage* closest = NULL;
00034 48 c7 45 48 00
00 00 00 mov QWORD PTR closest$[rbp], 0
; 85 :
; 86 : for (i = 0; i < count; i++)
0003c c7 45 04 00 00
00 00 mov DWORD PTR i$[rbp], 0
00043 eb 08 jmp SHORT $LN4@chooseImag
$LN2@chooseImag:
00045 8b 45 04 mov eax, DWORD PTR i$[rbp]
00048 ff c0 inc eax
0004a 89 45 04 mov DWORD PTR i$[rbp], eax
$LN4@chooseImag:
0004d 8b 85 60 01 00
00 mov eax, DWORD PTR count$[rbp]
00053 39 45 04 cmp DWORD PTR i$[rbp], eax
00056 7d 69 jge SHORT $LN3@chooseImag
; 87 : {
; 88 : const int currDiff = abs(images[i].width * images[i].height -
00058 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
0005c 48 6b c0 10 imul rax, rax, 16
00060 48 63 4d 04 movsxd rcx, DWORD PTR i$[rbp]
00064 48 6b c9 10 imul rcx, rcx, 16
00068 48 8b 95 68 01
00 00 mov rdx, QWORD PTR images$[rbp]
0006f 4c 8b 85 68 01
00 00 mov r8, QWORD PTR images$[rbp]
00076 8b 04 02 mov eax, DWORD PTR [rdx+rax]
00079 41 0f af 44 08
04 imul eax, DWORD PTR [r8+rcx+4]
0007f 8b 8d 70 01 00
00 mov ecx, DWORD PTR width$[rbp]
00085 0f af 8d 78 01
00 00 imul ecx, DWORD PTR height$[rbp]
0008c 2b c1 sub eax, ecx
0008e 8b c8 mov ecx, eax
00090 e8 00 00 00 00 call abs
00095 89 45 64 mov DWORD PTR currDiff$1[rbp], eax
; 89 : width * height);
; 90 : if (currDiff < leastDiff)
00098 8b 45 24 mov eax, DWORD PTR leastDiff$[rbp]
0009b 39 45 64 cmp DWORD PTR currDiff$1[rbp], eax
0009e 7d 1f jge SHORT $LN5@chooseImag
; 91 : {
; 92 : closest = images + i;
000a0 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
000a4 48 6b c0 10 imul rax, rax, 16
000a8 48 8b 8d 68 01
00 00 mov rcx, QWORD PTR images$[rbp]
000af 48 03 c8 add rcx, rax
000b2 48 8b c1 mov rax, rcx
000b5 48 89 45 48 mov QWORD PTR closest$[rbp], rax
; 93 : leastDiff = currDiff;
000b9 8b 45 64 mov eax, DWORD PTR currDiff$1[rbp]
000bc 89 45 24 mov DWORD PTR leastDiff$[rbp], eax
$LN5@chooseImag:
; 94 : }
; 95 : }
000bf eb 84 jmp SHORT $LN2@chooseImag
$LN3@chooseImag:
; 96 :
; 97 : return closest;
000c1 48 8b 45 48 mov rax, QWORD PTR closest$[rbp]
; 98 : }
000c5 48 8d a5 48 01
00 00 lea rsp, QWORD PTR [rbp+328]
000cc 5f pop rdi
000cd 5d pop rbp
000ce c3 ret 0
chooseImage ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT getWindowExStyle
_TEXT SEGMENT
style$ = 4
window$ = 256
getWindowExStyle PROC ; COMDAT
; 69 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 70 : DWORD style = WS_EX_APPWINDOW;
0001f c7 45 04 00 00
04 00 mov DWORD PTR style$[rbp], 262144 ; 00040000H
; 71 :
; 72 : if (window->monitor || window->floating)
00026 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
0002d 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
00032 75 0d jne SHORT $LN3@getWindowE
00034 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
0003b 83 78 14 00 cmp DWORD PTR [rax+20], 0
0003f 74 09 je SHORT $LN2@getWindowE
$LN3@getWindowE:
; 73 : style |= WS_EX_TOPMOST;
00041 8b 45 04 mov eax, DWORD PTR style$[rbp]
00044 83 c8 08 or eax, 8
00047 89 45 04 mov DWORD PTR style$[rbp], eax
$LN2@getWindowE:
; 74 :
; 75 : return style;
0004a 8b 45 04 mov eax, DWORD PTR style$[rbp]
; 76 : }
0004d 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00054 5f pop rdi
00055 5d pop rbp
00056 c3 ret 0
getWindowExStyle ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT getWindowStyle
_TEXT SEGMENT
style$ = 4
window$ = 256
getWindowStyle PROC ; COMDAT
; 43 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 44 : DWORD style = WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
0001f c7 45 04 00 00
00 06 mov DWORD PTR style$[rbp], 100663296 ; 06000000H
; 45 :
; 46 : if (window->monitor)
00026 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
0002d 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
00032 74 0c je SHORT $LN2@getWindowS
; 47 : style |= WS_POPUP;
00034 8b 45 04 mov eax, DWORD PTR style$[rbp]
00037 0f ba e8 1f bts eax, 31
0003b 89 45 04 mov DWORD PTR style$[rbp], eax
0003e eb 47 jmp SHORT $LN3@getWindowS
$LN2@getWindowS:
; 48 : else
; 49 : {
; 50 : style |= WS_SYSMENU | WS_MINIMIZEBOX;
00040 8b 45 04 mov eax, DWORD PTR style$[rbp]
00043 0d 00 00 0a 00 or eax, 655360 ; 000a0000H
00048 89 45 04 mov DWORD PTR style$[rbp], eax
; 51 :
; 52 : if (window->decorated)
0004b 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00052 83 78 0c 00 cmp DWORD PTR [rax+12], 0
00056 74 25 je SHORT $LN4@getWindowS
; 53 : {
; 54 : style |= WS_CAPTION;
00058 8b 45 04 mov eax, DWORD PTR style$[rbp]
0005b 0d 00 00 c0 00 or eax, 12582912 ; 00c00000H
00060 89 45 04 mov DWORD PTR style$[rbp], eax
; 55 :
; 56 : if (window->resizable)
00063 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
0006a 83 78 08 00 cmp DWORD PTR [rax+8], 0
0006e 74 0b je SHORT $LN6@getWindowS
; 57 : style |= WS_MAXIMIZEBOX | WS_THICKFRAME;
00070 8b 45 04 mov eax, DWORD PTR style$[rbp]
00073 0d 00 00 05 00 or eax, 327680 ; 00050000H
00078 89 45 04 mov DWORD PTR style$[rbp], eax
$LN6@getWindowS:
; 58 : }
0007b eb 0a jmp SHORT $LN5@getWindowS
$LN4@getWindowS:
; 59 : else
; 60 : style |= WS_POPUP;
0007d 8b 45 04 mov eax, DWORD PTR style$[rbp]
00080 0f ba e8 1f bts eax, 31
00084 89 45 04 mov DWORD PTR style$[rbp], eax
$LN5@getWindowS:
$LN3@getWindowS:
; 61 : }
; 62 :
; 63 : return style;
00087 8b 45 04 mov eax, DWORD PTR style$[rbp]
; 64 : }
0008a 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00091 5f pop rdi
00092 5d pop rbp
00093 c3 ret 0
getWindowStyle ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwCreateWindowSurfaceWin32
_TEXT SEGMENT
err$ = 4
sci$ = 40
vkCreateWin32SurfaceKHR$ = 104
__$ArrayPad$ = 312
instance$ = 352
window$ = 360
allocator$ = 368
surface$ = 376
_glfwCreateWindowSurfaceWin32 PROC ; COMDAT
; 2458 : {
$LN5:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec 68 01
00 00 sub rsp, 360 ; 00000168H
0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00022 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00027 b9 22 00 00 00 mov ecx, 34 ; 00000022H
0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00031 f3 ab rep stosd
00033 48 8b 8c 24 88
01 00 00 mov rcx, QWORD PTR [rsp+392]
0003b 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00042 48 33 c5 xor rax, rbp
00045 48 89 85 38 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2459 : VkResult err;
; 2460 : VkWin32SurfaceCreateInfoKHR sci;
; 2461 : PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
; 2462 :
; 2463 : vkCreateWin32SurfaceKHR = (PFN_vkCreateWin32SurfaceKHR)
00058 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BI@INMBJMIJ@vkCreateWin32SurfaceKHR@
0005f 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR instance$[rbp]
00066 ff 15 40 1b 00
00 call QWORD PTR _glfw+6976
0006c 48 89 45 68 mov QWORD PTR vkCreateWin32SurfaceKHR$[rbp], rax
; 2464 : vkGetInstanceProcAddr(instance, "vkCreateWin32SurfaceKHR");
; 2465 : if (!vkCreateWin32SurfaceKHR)
00070 48 83 7d 68 00 cmp QWORD PTR vkCreateWin32SurfaceKHR$[rbp], 0
00075 75 18 jne SHORT $LN2@glfwCreate
; 2466 : {
; 2467 : _glfwInputError(GLFW_API_UNAVAILABLE,
00077 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DO@PGEACBCJ@Win32?3?5Vulkan?5instance?5missing?5@
0007e b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00083 e8 00 00 00 00 call _glfwInputError
; 2468 : "Win32: Vulkan instance missing VK_KHR_win32_surface extension");
; 2469 : return VK_ERROR_EXTENSION_NOT_PRESENT;
00088 b8 f9 ff ff ff mov eax, -7
0008d eb 79 jmp SHORT $LN1@glfwCreate
$LN2@glfwCreate:
; 2470 : }
; 2471 :
; 2472 : memset(&sci, 0, sizeof(sci));
0008f 41 b8 28 00 00
00 mov r8d, 40 ; 00000028H
00095 33 d2 xor edx, edx
00097 48 8d 4d 28 lea rcx, QWORD PTR sci$[rbp]
0009b e8 00 00 00 00 call memset
; 2473 : sci.sType = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR;
000a0 c7 45 28 28 ed
9a 3b mov DWORD PTR sci$[rbp], 1000009000 ; 3b9aed28H
; 2474 : sci.hinstance = _glfw.win32.instance;
000a7 48 8b 05 78 1b
00 00 mov rax, QWORD PTR _glfw+7032
000ae 48 89 45 40 mov QWORD PTR sci$[rbp+24], rax
; 2475 : sci.hwnd = window->win32.handle;
000b2 48 8b 85 68 01
00 00 mov rax, QWORD PTR window$[rbp]
000b9 48 8b 80 58 03
00 00 mov rax, QWORD PTR [rax+856]
000c0 48 89 45 48 mov QWORD PTR sci$[rbp+32], rax
; 2476 :
; 2477 : err = vkCreateWin32SurfaceKHR(instance, &sci, allocator, surface);
000c4 4c 8b 8d 78 01
00 00 mov r9, QWORD PTR surface$[rbp]
000cb 4c 8b 85 70 01
00 00 mov r8, QWORD PTR allocator$[rbp]
000d2 48 8d 55 28 lea rdx, QWORD PTR sci$[rbp]
000d6 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR instance$[rbp]
000dd ff 55 68 call QWORD PTR vkCreateWin32SurfaceKHR$[rbp]
000e0 89 45 04 mov DWORD PTR err$[rbp], eax
; 2478 : if (err)
000e3 83 7d 04 00 cmp DWORD PTR err$[rbp], 0
000e7 74 1c je SHORT $LN3@glfwCreate
; 2479 : {
; 2480 : _glfwInputError(GLFW_PLATFORM_ERROR,
000e9 8b 4d 04 mov ecx, DWORD PTR err$[rbp]
000ec e8 00 00 00 00 call _glfwGetVulkanResultString
000f1 4c 8b c0 mov r8, rax
000f4 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CL@LJNEEKEI@Win32?3?5Failed?5to?5create?5Vulkan?5@
000fb b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00100 e8 00 00 00 00 call _glfwInputError
$LN3@glfwCreate:
; 2481 : "Win32: Failed to create Vulkan surface: %s",
; 2482 : _glfwGetVulkanResultString(err));
; 2483 : }
; 2484 :
; 2485 : return err;
00105 8b 45 04 mov eax, DWORD PTR err$[rbp]
$LN1@glfwCreate:
; 2486 : }
00108 48 8b f8 mov rdi, rax
0010b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
0010f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwCreateWindowSurfaceWin32$rtcFrameData
00116 e8 00 00 00 00 call _RTC_CheckStackVars
0011b 48 8b c7 mov rax, rdi
0011e 48 8b 8d 38 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00125 48 33 cd xor rcx, rbp
00128 e8 00 00 00 00 call __security_check_cookie
0012d 48 8d a5 48 01
00 00 lea rsp, QWORD PTR [rbp+328]
00134 5f pop rdi
00135 5d pop rbp
00136 c3 ret 0
_glfwCreateWindowSurfaceWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetPhysicalDevicePresentationSupportWin32
_TEXT SEGMENT
vkGetPhysicalDeviceWin32PresentationSupportKHR$ = 8
instance$ = 256
device$ = 264
queuefamily$ = 272
_glfwGetPhysicalDevicePresentationSupportWin32 PROC ; COMDAT
; 2439 : {
$LN4:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2440 : PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR
; 2441 : vkGetPhysicalDeviceWin32PresentationSupportKHR =
00029 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CP@FOBJNCLA@vkGetPhysicalDeviceWin32Present@
00030 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR instance$[rbp]
00037 ff 15 40 1b 00
00 call QWORD PTR _glfw+6976
0003d 48 89 45 08 mov QWORD PTR vkGetPhysicalDeviceWin32PresentationSupportKHR$[rbp], rax
; 2442 : (PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR)
; 2443 : vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceWin32PresentationSupportKHR");
; 2444 : if (!vkGetPhysicalDeviceWin32PresentationSupportKHR)
00041 48 83 7d 08 00 cmp QWORD PTR vkGetPhysicalDeviceWin32PresentationSupportKHR$[rbp], 0
00046 75 15 jne SHORT $LN2@glfwGetPhy
; 2445 : {
; 2446 : _glfwInputError(GLFW_API_UNAVAILABLE,
00048 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DO@PGEACBCJ@Win32?3?5Vulkan?5instance?5missing?5@
0004f b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00054 e8 00 00 00 00 call _glfwInputError
; 2447 : "Win32: Vulkan instance missing VK_KHR_win32_surface extension");
; 2448 : return GLFW_FALSE;
00059 33 c0 xor eax, eax
0005b eb 10 jmp SHORT $LN1@glfwGetPhy
$LN2@glfwGetPhy:
; 2449 : }
; 2450 :
; 2451 : return vkGetPhysicalDeviceWin32PresentationSupportKHR(device, queuefamily);
0005d 8b 95 10 01 00
00 mov edx, DWORD PTR queuefamily$[rbp]
00063 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR device$[rbp]
0006a ff 55 08 call QWORD PTR vkGetPhysicalDeviceWin32PresentationSupportKHR$[rbp]
$LN1@glfwGetPhy:
; 2452 : }
0006d 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00074 5f pop rdi
00075 5d pop rbp
00076 c3 ret 0
_glfwGetPhysicalDevicePresentationSupportWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetRequiredInstanceExtensionsWin32
_TEXT SEGMENT
extensions$ = 224
_glfwGetRequiredInstanceExtensionsWin32 PROC ; COMDAT
; 2428 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2429 : if (!_glfw.vk.KHR_surface || !_glfw.vk.KHR_win32_surface)
0001f 83 3d 48 1b 00
00 00 cmp DWORD PTR _glfw+6984, 0
00026 74 09 je SHORT $LN3@glfwGetReq
00028 83 3d 4c 1b 00
00 00 cmp DWORD PTR _glfw+6988, 0
0002f 75 02 jne SHORT $LN2@glfwGetReq
$LN3@glfwGetReq:
; 2430 : return;
00031 eb 36 jmp SHORT $LN1@glfwGetReq
$LN2@glfwGetReq:
; 2431 :
; 2432 : extensions[0] = "VK_KHR_surface";
00033 b8 08 00 00 00 mov eax, 8
00038 48 6b c0 00 imul rax, rax, 0
0003c 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR extensions$[rbp]
00043 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0P@IENCOMCD@VK_KHR_surface@
0004a 48 89 14 01 mov QWORD PTR [rcx+rax], rdx
; 2433 : extensions[1] = "VK_KHR_win32_surface";
0004e b8 08 00 00 00 mov eax, 8
00053 48 6b c0 01 imul rax, rax, 1
00057 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR extensions$[rbp]
0005e 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@
00065 48 89 14 01 mov QWORD PTR [rcx+rax], rdx
$LN1@glfwGetReq:
; 2434 : }
00069 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00070 5f pop rdi
00071 5d pop rbp
00072 c3 ret 0
_glfwGetRequiredInstanceExtensionsWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetEGLNativeWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwGetEGLNativeWindowWin32 PROC ; COMDAT
; 2423 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2424 : return window->win32.handle;
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 80 58 03
00 00 mov rax, QWORD PTR [rax+856]
; 2425 : }
0002d 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00034 5f pop rdi
00035 5d pop rbp
00036 c3 ret 0
_glfwGetEGLNativeWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetEGLNativeDisplayWin32
_TEXT SEGMENT
_glfwGetEGLNativeDisplayWin32 PROC ; COMDAT
; 2418 : {
$LN3:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2419 : return GetDC(_glfw.win32.helperWindowHandle);
0001b 48 8b 0d 80 1b
00 00 mov rcx, QWORD PTR _glfw+7040
00022 ff 15 00 00 00
00 call QWORD PTR __imp_GetDC
; 2420 : }
00028 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0002f 5f pop rdi
00030 5d pop rbp
00031 c3 ret 0
_glfwGetEGLNativeDisplayWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetEGLPlatformWin32
_TEXT SEGMENT
type$1 = 4
attribs$ = 256
_glfwGetEGLPlatformWin32 PROC ; COMDAT
; 2377 : {
$LN15:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2378 : if (_glfw.egl.ANGLE_platform_angle)
0001f 83 3d 34 1a 00
00 00 cmp DWORD PTR _glfw+6708, 0
00026 0f 84 f8 00 00
00 je $LN2@glfwGetEGL
; 2379 : {
; 2380 : int type = 0;
0002c c7 45 04 00 00
00 00 mov DWORD PTR type$1[rbp], 0
; 2381 :
; 2382 : if (_glfw.egl.ANGLE_platform_angle_opengl)
00033 83 3d 38 1a 00
00 00 cmp DWORD PTR _glfw+6712, 0
0003a 74 28 je SHORT $LN3@glfwGetEGL
; 2383 : {
; 2384 : if (_glfw.hints.init.angleType == GLFW_ANGLE_PLATFORM_TYPE_OPENGL)
0003c 81 3d 6c 02 00
00 02 70 03 00 cmp DWORD PTR _glfw+620, 225282 ; 00037002H
00046 75 09 jne SHORT $LN4@glfwGetEGL
; 2385 : type = EGL_PLATFORM_ANGLE_TYPE_OPENGL_ANGLE;
00048 c7 45 04 0d 32
00 00 mov DWORD PTR type$1[rbp], 12813 ; 0000320dH
0004f eb 13 jmp SHORT $LN5@glfwGetEGL
$LN4@glfwGetEGL:
; 2386 : else if (_glfw.hints.init.angleType == GLFW_ANGLE_PLATFORM_TYPE_OPENGLES)
00051 81 3d 6c 02 00
00 03 70 03 00 cmp DWORD PTR _glfw+620, 225283 ; 00037003H
0005b 75 07 jne SHORT $LN6@glfwGetEGL
; 2387 : type = EGL_PLATFORM_ANGLE_TYPE_OPENGLES_ANGLE;
0005d c7 45 04 0e 32
00 00 mov DWORD PTR type$1[rbp], 12814 ; 0000320eH
$LN6@glfwGetEGL:
$LN5@glfwGetEGL:
$LN3@glfwGetEGL:
; 2388 : }
; 2389 :
; 2390 : if (_glfw.egl.ANGLE_platform_angle_d3d)
00064 83 3d 3c 1a 00
00 00 cmp DWORD PTR _glfw+6716, 0
0006b 74 28 je SHORT $LN7@glfwGetEGL
; 2391 : {
; 2392 : if (_glfw.hints.init.angleType == GLFW_ANGLE_PLATFORM_TYPE_D3D9)
0006d 81 3d 6c 02 00
00 04 70 03 00 cmp DWORD PTR _glfw+620, 225284 ; 00037004H
00077 75 09 jne SHORT $LN8@glfwGetEGL
; 2393 : type = EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE;
00079 c7 45 04 07 32
00 00 mov DWORD PTR type$1[rbp], 12807 ; 00003207H
00080 eb 13 jmp SHORT $LN9@glfwGetEGL
$LN8@glfwGetEGL:
; 2394 : else if (_glfw.hints.init.angleType == GLFW_ANGLE_PLATFORM_TYPE_D3D11)
00082 81 3d 6c 02 00
00 05 70 03 00 cmp DWORD PTR _glfw+620, 225285 ; 00037005H
0008c 75 07 jne SHORT $LN10@glfwGetEGL
; 2395 : type = EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE;
0008e c7 45 04 08 32
00 00 mov DWORD PTR type$1[rbp], 12808 ; 00003208H
$LN10@glfwGetEGL:
$LN9@glfwGetEGL:
$LN7@glfwGetEGL:
; 2396 : }
; 2397 :
; 2398 : if (_glfw.egl.ANGLE_platform_angle_vulkan)
00095 83 3d 40 1a 00
00 00 cmp DWORD PTR _glfw+6720, 0
0009c 74 13 je SHORT $LN11@glfwGetEGL
; 2399 : {
; 2400 : if (_glfw.hints.init.angleType == GLFW_ANGLE_PLATFORM_TYPE_VULKAN)
0009e 81 3d 6c 02 00
00 07 70 03 00 cmp DWORD PTR _glfw+620, 225287 ; 00037007H
000a8 75 07 jne SHORT $LN12@glfwGetEGL
; 2401 : type = EGL_PLATFORM_ANGLE_TYPE_VULKAN_ANGLE;
000aa c7 45 04 50 34
00 00 mov DWORD PTR type$1[rbp], 13392 ; 00003450H
$LN12@glfwGetEGL:
$LN11@glfwGetEGL:
; 2402 : }
; 2403 :
; 2404 : if (type)
000b1 83 7d 04 00 cmp DWORD PTR type$1[rbp], 0
000b5 74 6d je SHORT $LN13@glfwGetEGL
; 2405 : {
; 2406 : *attribs = _glfw_calloc(3, sizeof(EGLint));
000b7 ba 04 00 00 00 mov edx, 4
000bc b9 03 00 00 00 mov ecx, 3
000c1 e8 00 00 00 00 call _glfw_calloc
000c6 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR attribs$[rbp]
000cd 48 89 01 mov QWORD PTR [rcx], rax
; 2407 : (*attribs)[0] = EGL_PLATFORM_ANGLE_TYPE_ANGLE;
000d0 b8 04 00 00 00 mov eax, 4
000d5 48 6b c0 00 imul rax, rax, 0
000d9 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR attribs$[rbp]
000e0 48 8b 09 mov rcx, QWORD PTR [rcx]
000e3 c7 04 08 03 32
00 00 mov DWORD PTR [rax+rcx], 12803 ; 00003203H
; 2408 : (*attribs)[1] = type;
000ea b8 04 00 00 00 mov eax, 4
000ef 48 6b c0 01 imul rax, rax, 1
000f3 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR attribs$[rbp]
000fa 48 8b 09 mov rcx, QWORD PTR [rcx]
000fd 8b 55 04 mov edx, DWORD PTR type$1[rbp]
00100 89 14 08 mov DWORD PTR [rax+rcx], edx
; 2409 : (*attribs)[2] = EGL_NONE;
00103 b8 04 00 00 00 mov eax, 4
00108 48 6b c0 02 imul rax, rax, 2
0010c 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR attribs$[rbp]
00113 48 8b 09 mov rcx, QWORD PTR [rcx]
00116 c7 04 08 38 30
00 00 mov DWORD PTR [rax+rcx], 12344 ; 00003038H
; 2410 : return EGL_PLATFORM_ANGLE_ANGLE;
0011d b8 02 32 00 00 mov eax, 12802 ; 00003202H
00122 eb 02 jmp SHORT $LN1@glfwGetEGL
$LN13@glfwGetEGL:
$LN2@glfwGetEGL:
; 2411 : }
; 2412 : }
; 2413 :
; 2414 : return 0;
00124 33 c0 xor eax, eax
$LN1@glfwGetEGL:
; 2415 : }
00126 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
0012d 5f pop rdi
0012e 5d pop rbp
0012f c3 ret 0
_glfwGetEGLPlatformWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetClipboardStringWin32
_TEXT SEGMENT
object$ = 8
buffer$ = 40
_glfwGetClipboardStringWin32 PROC ; COMDAT
; 2338 : {
$LN6:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec 28 01
00 00 sub rsp, 296 ; 00000128H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2339 : HANDLE object;
; 2340 : WCHAR* buffer;
; 2341 :
; 2342 : if (!OpenClipboard(_glfw.win32.helperWindowHandle))
0001b 48 8b 0d 80 1b
00 00 mov rcx, QWORD PTR _glfw+7040
00022 ff 15 00 00 00
00 call QWORD PTR __imp_OpenClipboard
00028 85 c0 test eax, eax
0002a 75 18 jne SHORT $LN2@glfwGetCli
; 2343 : {
; 2344 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
0002c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CA@FNCFBEIG@Win32?3?5Failed?5to?5open?5clipboard@
00033 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00038 e8 00 00 00 00 call _glfwInputErrorWin32
; 2345 : "Win32: Failed to open clipboard");
; 2346 : return NULL;
0003d 33 c0 xor eax, eax
0003f e9 94 00 00 00 jmp $LN1@glfwGetCli
$LN2@glfwGetCli:
; 2347 : }
; 2348 :
; 2349 : object = GetClipboardData(CF_UNICODETEXT);
00044 b9 0d 00 00 00 mov ecx, 13
00049 ff 15 00 00 00
00 call QWORD PTR __imp_GetClipboardData
0004f 48 89 45 08 mov QWORD PTR object$[rbp], rax
; 2350 : if (!object)
00053 48 83 7d 08 00 cmp QWORD PTR object$[rbp], 0
00058 75 1b jne SHORT $LN3@glfwGetCli
; 2351 : {
; 2352 : _glfwInputErrorWin32(GLFW_FORMAT_UNAVAILABLE,
0005a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CN@FGAGPCCP@Win32?3?5Failed?5to?5convert?5clipbo@
00061 b9 09 00 01 00 mov ecx, 65545 ; 00010009H
00066 e8 00 00 00 00 call _glfwInputErrorWin32
; 2353 : "Win32: Failed to convert clipboard to string");
; 2354 : CloseClipboard();
0006b ff 15 00 00 00
00 call QWORD PTR __imp_CloseClipboard
; 2355 : return NULL;
00071 33 c0 xor eax, eax
00073 eb 63 jmp SHORT $LN1@glfwGetCli
$LN3@glfwGetCli:
; 2356 : }
; 2357 :
; 2358 : buffer = GlobalLock(object);
00075 48 8b 4d 08 mov rcx, QWORD PTR object$[rbp]
00079 ff 15 00 00 00
00 call QWORD PTR __imp_GlobalLock
0007f 48 89 45 28 mov QWORD PTR buffer$[rbp], rax
; 2359 : if (!buffer)
00083 48 83 7d 28 00 cmp QWORD PTR buffer$[rbp], 0
00088 75 1b jne SHORT $LN4@glfwGetCli
; 2360 : {
; 2361 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
0008a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CE@OHDHEPIL@Win32?3?5Failed?5to?5lock?5global?5ha@
00091 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00096 e8 00 00 00 00 call _glfwInputErrorWin32
; 2362 : "Win32: Failed to lock global handle");
; 2363 : CloseClipboard();
0009b ff 15 00 00 00
00 call QWORD PTR __imp_CloseClipboard
; 2364 : return NULL;
000a1 33 c0 xor eax, eax
000a3 eb 33 jmp SHORT $LN1@glfwGetCli
$LN4@glfwGetCli:
; 2365 : }
; 2366 :
; 2367 : _glfw_free(_glfw.win32.clipboardString);
000a5 48 8b 0d a0 1b
00 00 mov rcx, QWORD PTR _glfw+7072
000ac e8 00 00 00 00 call _glfw_free
; 2368 : _glfw.win32.clipboardString = _glfwCreateUTF8FromWideStringWin32(buffer);
000b1 48 8b 4d 28 mov rcx, QWORD PTR buffer$[rbp]
000b5 e8 00 00 00 00 call _glfwCreateUTF8FromWideStringWin32
000ba 48 89 05 a0 1b
00 00 mov QWORD PTR _glfw+7072, rax
; 2369 :
; 2370 : GlobalUnlock(object);
000c1 48 8b 4d 08 mov rcx, QWORD PTR object$[rbp]
000c5 ff 15 00 00 00
00 call QWORD PTR __imp_GlobalUnlock
; 2371 : CloseClipboard();
000cb ff 15 00 00 00
00 call QWORD PTR __imp_CloseClipboard
; 2372 :
; 2373 : return _glfw.win32.clipboardString;
000d1 48 8b 05 a0 1b
00 00 mov rax, QWORD PTR _glfw+7072
$LN1@glfwGetCli:
; 2374 : }
000d8 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
000df 5f pop rdi
000e0 5d pop rbp
000e1 c3 ret 0
_glfwGetClipboardStringWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetClipboardStringWin32
_TEXT SEGMENT
characterCount$ = 4
object$ = 40
buffer$ = 72
string$ = 320
_glfwSetClipboardStringWin32 PROC ; COMDAT
; 2295 : {
$LN7:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 58 01
00 00 sub rsp, 344 ; 00000158H
0000e 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2296 : int characterCount;
; 2297 : HANDLE object;
; 2298 : WCHAR* buffer;
; 2299 :
; 2300 : characterCount = MultiByteToWideChar(CP_UTF8, 0, string, -1, NULL, 0);
0001f c7 44 24 28 00
00 00 00 mov DWORD PTR [rsp+40], 0
00027 48 c7 44 24 20
00 00 00 00 mov QWORD PTR [rsp+32], 0
00030 41 b9 ff ff ff
ff mov r9d, -1
00036 4c 8b 85 40 01
00 00 mov r8, QWORD PTR string$[rbp]
0003d 33 d2 xor edx, edx
0003f b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H
00044 ff 15 00 00 00
00 call QWORD PTR __imp_MultiByteToWideChar
0004a 89 45 04 mov DWORD PTR characterCount$[rbp], eax
; 2301 : if (!characterCount)
0004d 83 7d 04 00 cmp DWORD PTR characterCount$[rbp], 0
00051 75 05 jne SHORT $LN2@glfwSetCli
; 2302 : return;
00053 e9 e5 00 00 00 jmp $LN1@glfwSetCli
$LN2@glfwSetCli:
; 2303 :
; 2304 : object = GlobalAlloc(GMEM_MOVEABLE, characterCount * sizeof(WCHAR));
00058 48 63 45 04 movsxd rax, DWORD PTR characterCount$[rbp]
0005c 48 d1 e0 shl rax, 1
0005f 48 8b d0 mov rdx, rax
00062 b9 02 00 00 00 mov ecx, 2
00067 ff 15 00 00 00
00 call QWORD PTR __imp_GlobalAlloc
0006d 48 89 45 28 mov QWORD PTR object$[rbp], rax
; 2305 : if (!object)
00071 48 83 7d 28 00 cmp QWORD PTR object$[rbp], 0
00076 75 16 jne SHORT $LN3@glfwSetCli
; 2306 : {
; 2307 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
00078 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DG@CGDLBFFB@Win32?3?5Failed?5to?5allocate?5globa@
0007f b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00084 e8 00 00 00 00 call _glfwInputErrorWin32
; 2308 : "Win32: Failed to allocate global handle for clipboard");
; 2309 : return;
00089 e9 af 00 00 00 jmp $LN1@glfwSetCli
$LN3@glfwSetCli:
; 2310 : }
; 2311 :
; 2312 : buffer = GlobalLock(object);
0008e 48 8b 4d 28 mov rcx, QWORD PTR object$[rbp]
00092 ff 15 00 00 00
00 call QWORD PTR __imp_GlobalLock
00098 48 89 45 48 mov QWORD PTR buffer$[rbp], rax
; 2313 : if (!buffer)
0009c 48 83 7d 48 00 cmp QWORD PTR buffer$[rbp], 0
000a1 75 1d jne SHORT $LN4@glfwSetCli
; 2314 : {
; 2315 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
000a3 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CE@OHDHEPIL@Win32?3?5Failed?5to?5lock?5global?5ha@
000aa b9 08 00 01 00 mov ecx, 65544 ; 00010008H
000af e8 00 00 00 00 call _glfwInputErrorWin32
; 2316 : "Win32: Failed to lock global handle");
; 2317 : GlobalFree(object);
000b4 48 8b 4d 28 mov rcx, QWORD PTR object$[rbp]
000b8 ff 15 00 00 00
00 call QWORD PTR __imp_GlobalFree
; 2318 : return;
000be eb 7d jmp SHORT $LN1@glfwSetCli
$LN4@glfwSetCli:
; 2319 : }
; 2320 :
; 2321 : MultiByteToWideChar(CP_UTF8, 0, string, -1, buffer, characterCount);
000c0 8b 45 04 mov eax, DWORD PTR characterCount$[rbp]
000c3 89 44 24 28 mov DWORD PTR [rsp+40], eax
000c7 48 8b 45 48 mov rax, QWORD PTR buffer$[rbp]
000cb 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
000d0 41 b9 ff ff ff
ff mov r9d, -1
000d6 4c 8b 85 40 01
00 00 mov r8, QWORD PTR string$[rbp]
000dd 33 d2 xor edx, edx
000df b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H
000e4 ff 15 00 00 00
00 call QWORD PTR __imp_MultiByteToWideChar
; 2322 : GlobalUnlock(object);
000ea 48 8b 4d 28 mov rcx, QWORD PTR object$[rbp]
000ee ff 15 00 00 00
00 call QWORD PTR __imp_GlobalUnlock
; 2323 :
; 2324 : if (!OpenClipboard(_glfw.win32.helperWindowHandle))
000f4 48 8b 0d 80 1b
00 00 mov rcx, QWORD PTR _glfw+7040
000fb ff 15 00 00 00
00 call QWORD PTR __imp_OpenClipboard
00101 85 c0 test eax, eax
00103 75 1d jne SHORT $LN5@glfwSetCli
; 2325 : {
; 2326 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
00105 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CA@FNCFBEIG@Win32?3?5Failed?5to?5open?5clipboard@
0010c b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00111 e8 00 00 00 00 call _glfwInputErrorWin32
; 2327 : "Win32: Failed to open clipboard");
; 2328 : GlobalFree(object);
00116 48 8b 4d 28 mov rcx, QWORD PTR object$[rbp]
0011a ff 15 00 00 00
00 call QWORD PTR __imp_GlobalFree
; 2329 : return;
00120 eb 1b jmp SHORT $LN1@glfwSetCli
$LN5@glfwSetCli:
; 2330 : }
; 2331 :
; 2332 : EmptyClipboard();
00122 ff 15 00 00 00
00 call QWORD PTR __imp_EmptyClipboard
; 2333 : SetClipboardData(CF_UNICODETEXT, object);
00128 48 8b 55 28 mov rdx, QWORD PTR object$[rbp]
0012c b9 0d 00 00 00 mov ecx, 13
00131 ff 15 00 00 00
00 call QWORD PTR __imp_SetClipboardData
; 2334 : CloseClipboard();
00137 ff 15 00 00 00
00 call QWORD PTR __imp_CloseClipboard
$LN1@glfwSetCli:
; 2335 : }
0013d 48 8d a5 28 01
00 00 lea rsp, QWORD PTR [rbp+296]
00144 5f pop rdi
00145 5d pop rbp
00146 c3 ret 0
_glfwSetClipboardStringWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetCursorWin32
_TEXT SEGMENT
window$ = 224
cursor$ = 232
_glfwSetCursorWin32 PROC ; COMDAT
; 2289 : {
$LN4:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 57 push rdi
0000c 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00018 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2290 : if (cursorInContentArea(window))
00024 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0002b e8 00 00 00 00 call cursorInContentArea
00030 85 c0 test eax, eax
00032 74 0c je SHORT $LN2@glfwSetCur
; 2291 : updateCursorImage(window);
00034 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0003b e8 00 00 00 00 call updateCursorImage
$LN2@glfwSetCur:
; 2292 : }
00040 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00047 5f pop rdi
00048 5d pop rbp
00049 c3 ret 0
_glfwSetCursorWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwDestroyCursorWin32
_TEXT SEGMENT
cursor$ = 224
_glfwDestroyCursorWin32 PROC ; COMDAT
; 2283 : {
$LN4:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2284 : if (cursor->win32.handle)
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR cursor$[rbp]
00026 48 83 78 08 00 cmp QWORD PTR [rax+8], 0
0002b 74 11 je SHORT $LN2@glfwDestro
; 2285 : DestroyIcon((HICON) cursor->win32.handle);
0002d 48 8b 85 e0 00
00 00 mov rax, QWORD PTR cursor$[rbp]
00034 48 8b 48 08 mov rcx, QWORD PTR [rax+8]
00038 ff 15 00 00 00
00 call QWORD PTR __imp_DestroyIcon
$LN2@glfwDestro:
; 2286 : }
0003e 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00045 5f pop rdi
00046 5d pop rbp
00047 c3 ret 0
_glfwDestroyCursorWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwCreateStandardCursorWin32
_TEXT SEGMENT
id$ = 4
tv64 = 212
cursor$ = 256
shape$ = 264
_glfwCreateStandardCursorWin32 PROC ; COMDAT
; 2229 : {
$LN18:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec 18 01
00 00 sub rsp, 280 ; 00000118H
00012 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2230 : int id = 0;
00023 c7 45 04 00 00
00 00 mov DWORD PTR id$[rbp], 0
; 2231 :
; 2232 : switch (shape)
0002a 8b 85 08 01 00
00 mov eax, DWORD PTR shape$[rbp]
00030 89 85 d4 00 00
00 mov DWORD PTR tv64[rbp], eax
00036 8b 85 d4 00 00
00 mov eax, DWORD PTR tv64[rbp]
0003c 2d 01 60 03 00 sub eax, 221185 ; 00036001H
00041 89 85 d4 00 00
00 mov DWORD PTR tv64[rbp], eax
00047 83 bd d4 00 00
00 09 cmp DWORD PTR tv64[rbp], 9
0004e 77 74 ja SHORT $LN14@glfwCreate
00050 48 63 85 d4 00
00 00 movsxd rax, DWORD PTR tv64[rbp]
00057 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__ImageBase
0005e 8b 84 81 00 00
00 00 mov eax, DWORD PTR $LN17@glfwCreate[rcx+rax*4]
00065 48 03 c1 add rax, rcx
00068 ff e0 jmp rax
$LN4@glfwCreate:
; 2233 : {
; 2234 : case GLFW_ARROW_CURSOR:
; 2235 : id = OCR_NORMAL;
0006a c7 45 04 00 7f
00 00 mov DWORD PTR id$[rbp], 32512 ; 00007f00H
; 2236 : break;
00071 eb 66 jmp SHORT $LN2@glfwCreate
$LN5@glfwCreate:
; 2237 : case GLFW_IBEAM_CURSOR:
; 2238 : id = OCR_IBEAM;
00073 c7 45 04 01 7f
00 00 mov DWORD PTR id$[rbp], 32513 ; 00007f01H
; 2239 : break;
0007a eb 5d jmp SHORT $LN2@glfwCreate
$LN6@glfwCreate:
; 2240 : case GLFW_CROSSHAIR_CURSOR:
; 2241 : id = OCR_CROSS;
0007c c7 45 04 03 7f
00 00 mov DWORD PTR id$[rbp], 32515 ; 00007f03H
; 2242 : break;
00083 eb 54 jmp SHORT $LN2@glfwCreate
$LN7@glfwCreate:
; 2243 : case GLFW_POINTING_HAND_CURSOR:
; 2244 : id = OCR_HAND;
00085 c7 45 04 89 7f
00 00 mov DWORD PTR id$[rbp], 32649 ; 00007f89H
; 2245 : break;
0008c eb 4b jmp SHORT $LN2@glfwCreate
$LN8@glfwCreate:
; 2246 : case GLFW_RESIZE_EW_CURSOR:
; 2247 : id = OCR_SIZEWE;
0008e c7 45 04 84 7f
00 00 mov DWORD PTR id$[rbp], 32644 ; 00007f84H
; 2248 : break;
00095 eb 42 jmp SHORT $LN2@glfwCreate
$LN9@glfwCreate:
; 2249 : case GLFW_RESIZE_NS_CURSOR:
; 2250 : id = OCR_SIZENS;
00097 c7 45 04 85 7f
00 00 mov DWORD PTR id$[rbp], 32645 ; 00007f85H
; 2251 : break;
0009e eb 39 jmp SHORT $LN2@glfwCreate
$LN10@glfwCreate:
; 2252 : case GLFW_RESIZE_NWSE_CURSOR:
; 2253 : id = OCR_SIZENWSE;
000a0 c7 45 04 82 7f
00 00 mov DWORD PTR id$[rbp], 32642 ; 00007f82H
; 2254 : break;
000a7 eb 30 jmp SHORT $LN2@glfwCreate
$LN11@glfwCreate:
; 2255 : case GLFW_RESIZE_NESW_CURSOR:
; 2256 : id = OCR_SIZENESW;
000a9 c7 45 04 83 7f
00 00 mov DWORD PTR id$[rbp], 32643 ; 00007f83H
; 2257 : break;
000b0 eb 27 jmp SHORT $LN2@glfwCreate
$LN12@glfwCreate:
; 2258 : case GLFW_RESIZE_ALL_CURSOR:
; 2259 : id = OCR_SIZEALL;
000b2 c7 45 04 86 7f
00 00 mov DWORD PTR id$[rbp], 32646 ; 00007f86H
; 2260 : break;
000b9 eb 1e jmp SHORT $LN2@glfwCreate
$LN13@glfwCreate:
; 2261 : case GLFW_NOT_ALLOWED_CURSOR:
; 2262 : id = OCR_NO;
000bb c7 45 04 88 7f
00 00 mov DWORD PTR id$[rbp], 32648 ; 00007f88H
; 2263 : break;
000c2 eb 15 jmp SHORT $LN2@glfwCreate
$LN14@glfwCreate:
; 2264 : default:
; 2265 : _glfwInputError(GLFW_PLATFORM_ERROR, "Win32: Unknown standard cursor");
000c4 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BP@KPGBLOB@Win32?3?5Unknown?5standard?5cursor@
000cb b9 08 00 01 00 mov ecx, 65544 ; 00010008H
000d0 e8 00 00 00 00 call _glfwInputError
; 2266 : return GLFW_FALSE;
000d5 33 c0 xor eax, eax
000d7 eb 5a jmp SHORT $LN1@glfwCreate
$LN2@glfwCreate:
; 2267 : }
; 2268 :
; 2269 : cursor->win32.handle = LoadImageW(NULL,
000d9 0f b7 45 04 movzx eax, WORD PTR id$[rbp]
000dd c7 44 24 28 40
80 00 00 mov DWORD PTR [rsp+40], 32832 ; 00008040H
000e5 c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
000ed 45 33 c9 xor r9d, r9d
000f0 41 b8 02 00 00
00 mov r8d, 2
000f6 8b d0 mov edx, eax
000f8 33 c9 xor ecx, ecx
000fa ff 15 00 00 00
00 call QWORD PTR __imp_LoadImageW
00100 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR cursor$[rbp]
00107 48 89 41 08 mov QWORD PTR [rcx+8], rax
; 2270 : MAKEINTRESOURCEW(id), IMAGE_CURSOR, 0, 0,
; 2271 : LR_DEFAULTSIZE | LR_SHARED);
; 2272 : if (!cursor->win32.handle)
0010b 48 8b 85 00 01
00 00 mov rax, QWORD PTR cursor$[rbp]
00112 48 83 78 08 00 cmp QWORD PTR [rax+8], 0
00117 75 15 jne SHORT $LN15@glfwCreate
; 2273 : {
; 2274 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR,
00119 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CI@LDEHPBDB@Win32?3?5Failed?5to?5create?5standar@
00120 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00125 e8 00 00 00 00 call _glfwInputErrorWin32
; 2275 : "Win32: Failed to create standard cursor");
; 2276 : return GLFW_FALSE;
0012a 33 c0 xor eax, eax
0012c eb 05 jmp SHORT $LN1@glfwCreate
$LN15@glfwCreate:
; 2277 : }
; 2278 :
; 2279 : return GLFW_TRUE;
0012e b8 01 00 00 00 mov eax, 1
$LN1@glfwCreate:
; 2280 : }
00133 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
0013a 5f pop rdi
0013b 5d pop rbp
0013c c3 ret 0
0013d 0f 1f 00 npad 3
$LN17@glfwCreate:
00140 00 00 00 00 DD $LN4@glfwCreate
00144 00 00 00 00 DD $LN5@glfwCreate
00148 00 00 00 00 DD $LN6@glfwCreate
0014c 00 00 00 00 DD $LN7@glfwCreate
00150 00 00 00 00 DD $LN8@glfwCreate
00154 00 00 00 00 DD $LN9@glfwCreate
00158 00 00 00 00 DD $LN10@glfwCreate
0015c 00 00 00 00 DD $LN11@glfwCreate
00160 00 00 00 00 DD $LN12@glfwCreate
00164 00 00 00 00 DD $LN13@glfwCreate
_glfwCreateStandardCursorWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwCreateCursorWin32
_TEXT SEGMENT
cursor$ = 224
image$ = 232
xhot$ = 240
yhot$ = 248
_glfwCreateCursorWin32 PROC ; COMDAT
; 2220 : {
$LN4:
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00022 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2221 : cursor->win32.handle = (HCURSOR) createIcon(image, xhot, yhot, GLFW_FALSE);
0002e 45 33 c9 xor r9d, r9d
00031 44 8b 85 f8 00
00 00 mov r8d, DWORD PTR yhot$[rbp]
00038 8b 95 f0 00 00
00 mov edx, DWORD PTR xhot$[rbp]
0003e 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR image$[rbp]
00045 e8 00 00 00 00 call createIcon
0004a 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR cursor$[rbp]
00051 48 89 41 08 mov QWORD PTR [rcx+8], rax
; 2222 : if (!cursor->win32.handle)
00055 48 8b 85 e0 00
00 00 mov rax, QWORD PTR cursor$[rbp]
0005c 48 83 78 08 00 cmp QWORD PTR [rax+8], 0
00061 75 04 jne SHORT $LN2@glfwCreate
; 2223 : return GLFW_FALSE;
00063 33 c0 xor eax, eax
00065 eb 05 jmp SHORT $LN1@glfwCreate
$LN2@glfwCreate:
; 2224 :
; 2225 : return GLFW_TRUE;
00067 b8 01 00 00 00 mov eax, 1
$LN1@glfwCreate:
; 2226 : }
0006c 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00073 5f pop rdi
00074 5d pop rbp
00075 c3 ret 0
_glfwCreateCursorWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetKeyScancodeWin32
_TEXT SEGMENT
key$ = 224
_glfwGetKeyScancodeWin32 PROC ; COMDAT
; 2213 : {
$LN3:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 57 push rdi
00006 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00012 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2214 : return _glfw.win32.scancodes[key];
0001e 48 63 85 e0 00
00 00 movsxd rax, DWORD PTR key$[rbp]
00025 48 8d 0d a8 1f
00 00 lea rcx, OFFSET FLAT:_glfw+8104
0002c 0f bf 04 41 movsx eax, WORD PTR [rcx+rax*2]
; 2215 : }
00030 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00037 5f pop rdi
00038 5d pop rbp
00039 c3 ret 0
_glfwGetKeyScancodeWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetScancodeNameWin32
_TEXT SEGMENT
scancode$ = 224
_glfwGetScancodeNameWin32 PROC ; COMDAT
; 2201 : {
$LN5:
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 57 push rdi
00006 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00012 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2202 : if (scancode < 0 || scancode > (KF_EXTENDED | 0xff) ||
0001e 83 bd e0 00 00
00 00 cmp DWORD PTR scancode$[rbp], 0
00025 7c 23 jl SHORT $LN3@glfwGetSca
00027 81 bd e0 00 00
00 ff 01 00 00 cmp DWORD PTR scancode$[rbp], 511 ; 000001ffH
00031 7f 17 jg SHORT $LN3@glfwGetSca
00033 48 63 85 e0 00
00 00 movsxd rax, DWORD PTR scancode$[rbp]
0003a 48 8d 0d a8 1b
00 00 lea rcx, OFFSET FLAT:_glfw+7080
00041 0f bf 04 41 movsx eax, WORD PTR [rcx+rax*2]
00045 83 f8 ff cmp eax, -1
00048 75 1c jne SHORT $LN2@glfwGetSca
$LN3@glfwGetSca:
; 2203 : _glfw.win32.keycodes[scancode] == GLFW_KEY_UNKNOWN)
; 2204 : {
; 2205 : _glfwInputError(GLFW_INVALID_VALUE, "Invalid scancode %i", scancode);
0004a 44 8b 85 e0 00
00 00 mov r8d, DWORD PTR scancode$[rbp]
00051 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BE@IGCIBFAF@Invalid?5scancode?5?$CFi@
00058 b9 04 00 01 00 mov ecx, 65540 ; 00010004H
0005d e8 00 00 00 00 call _glfwInputError
; 2206 : return NULL;
00062 33 c0 xor eax, eax
00064 eb 24 jmp SHORT $LN1@glfwGetSca
$LN2@glfwGetSca:
; 2207 : }
; 2208 :
; 2209 : return _glfw.win32.keynames[_glfw.win32.keycodes[scancode]];
00066 48 63 85 e0 00
00 00 movsxd rax, DWORD PTR scancode$[rbp]
0006d 48 8d 0d a8 1b
00 00 lea rcx, OFFSET FLAT:_glfw+7080
00074 48 0f bf 04 41 movsx rax, WORD PTR [rcx+rax*2]
00079 48 6b c0 05 imul rax, rax, 5
0007d 48 8d 0d 62 22
00 00 lea rcx, OFFSET FLAT:_glfw+8802
00084 48 03 c8 add rcx, rax
00087 48 8b c1 mov rax, rcx
$LN1@glfwGetSca:
; 2210 : }
0008a 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00091 5f pop rdi
00092 5d pop rbp
00093 c3 ret 0
_glfwGetScancodeNameWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetCursorModeWin32
_TEXT SEGMENT
window$ = 224
mode$ = 232
_glfwSetCursorModeWin32 PROC ; COMDAT
; 2162 : {
$LN16:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2163 : if (_glfwWindowFocusedWin32(window))
00023 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0002a e8 00 00 00 00 call _glfwWindowFocusedWin32
0002f 85 c0 test eax, eax
00031 0f 84 fa 00 00
00 je $LN2@glfwSetCur
; 2164 : {
; 2165 : if (mode == GLFW_CURSOR_DISABLED)
00037 81 bd e8 00 00
00 03 40 03 00 cmp DWORD PTR mode$[rbp], 212995 ; 00034003H
00041 75 44 jne SHORT $LN3@glfwSetCur
; 2166 : {
; 2167 : _glfwGetCursorPosWin32(window,
00043 4c 8d 05 40 29
00 00 lea r8, OFFSET FLAT:_glfw+10560
0004a 48 8d 15 38 29
00 00 lea rdx, OFFSET FLAT:_glfw+10552
00051 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00058 e8 00 00 00 00 call _glfwGetCursorPosWin32
; 2168 : &_glfw.win32.restoreCursorPosX,
; 2169 : &_glfw.win32.restoreCursorPosY);
; 2170 : _glfwCenterCursorInContentArea(window);
0005d 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00064 e8 00 00 00 00 call _glfwCenterCursorInContentArea
; 2171 : if (window->rawMouseMotion)
00069 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00070 83 b8 00 02 00
00 00 cmp DWORD PTR [rax+512], 0
00077 74 0c je SHORT $LN5@glfwSetCur
; 2172 : enableRawMouseMotion(window);
00079 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00080 e8 00 00 00 00 call enableRawMouseMotion
$LN5@glfwSetCur:
; 2173 : }
00085 eb 2c jmp SHORT $LN4@glfwSetCur
$LN3@glfwSetCur:
; 2174 : else if (_glfw.win32.disabledCursorWindow == window)
00087 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0008e 48 39 05 48 29
00 00 cmp QWORD PTR _glfw+10568, rax
00095 75 1c jne SHORT $LN6@glfwSetCur
; 2175 : {
; 2176 : if (window->rawMouseMotion)
00097 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0009e 83 b8 00 02 00
00 00 cmp DWORD PTR [rax+512], 0
000a5 74 0c je SHORT $LN7@glfwSetCur
; 2177 : disableRawMouseMotion(window);
000a7 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
000ae e8 00 00 00 00 call disableRawMouseMotion
$LN7@glfwSetCur:
$LN6@glfwSetCur:
$LN4@glfwSetCur:
; 2178 : }
; 2179 :
; 2180 : if (mode == GLFW_CURSOR_DISABLED || mode == GLFW_CURSOR_CAPTURED)
000b3 81 bd e8 00 00
00 03 40 03 00 cmp DWORD PTR mode$[rbp], 212995 ; 00034003H
000bd 74 0c je SHORT $LN10@glfwSetCur
000bf 81 bd e8 00 00
00 04 40 03 00 cmp DWORD PTR mode$[rbp], 212996 ; 00034004H
000c9 75 0e jne SHORT $LN8@glfwSetCur
$LN10@glfwSetCur:
; 2181 : captureCursor(window);
000cb 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
000d2 e8 00 00 00 00 call captureCursor
000d7 eb 05 jmp SHORT $LN9@glfwSetCur
$LN8@glfwSetCur:
; 2182 : else
; 2183 : releaseCursor();
000d9 e8 00 00 00 00 call releaseCursor
$LN9@glfwSetCur:
; 2184 :
; 2185 : if (mode == GLFW_CURSOR_DISABLED)
000de 81 bd e8 00 00
00 03 40 03 00 cmp DWORD PTR mode$[rbp], 212995 ; 00034003H
000e8 75 10 jne SHORT $LN11@glfwSetCur
; 2186 : _glfw.win32.disabledCursorWindow = window;
000ea 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000f1 48 89 05 48 29
00 00 mov QWORD PTR _glfw+10568, rax
000f8 eb 37 jmp SHORT $LN12@glfwSetCur
$LN11@glfwSetCur:
; 2187 : else if (_glfw.win32.disabledCursorWindow == window)
000fa 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00101 48 39 05 48 29
00 00 cmp QWORD PTR _glfw+10568, rax
00108 75 27 jne SHORT $LN13@glfwSetCur
; 2188 : {
; 2189 : _glfw.win32.disabledCursorWindow = NULL;
0010a 48 c7 05 48 29
00 00 00 00 00
00 mov QWORD PTR _glfw+10568, 0
; 2190 : _glfwSetCursorPosWin32(window,
00115 f2 0f 10 15 40
29 00 00 movsd xmm2, QWORD PTR _glfw+10560
0011d f2 0f 10 0d 38
29 00 00 movsd xmm1, QWORD PTR _glfw+10552
00125 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0012c e8 00 00 00 00 call _glfwSetCursorPosWin32
$LN13@glfwSetCur:
$LN12@glfwSetCur:
$LN2@glfwSetCur:
; 2191 : _glfw.win32.restoreCursorPosX,
; 2192 : _glfw.win32.restoreCursorPosY);
; 2193 : }
; 2194 : }
; 2195 :
; 2196 : if (cursorInContentArea(window))
00131 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00138 e8 00 00 00 00 call cursorInContentArea
0013d 85 c0 test eax, eax
0013f 74 0c je SHORT $LN14@glfwSetCur
; 2197 : updateCursorImage(window);
00141 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00148 e8 00 00 00 00 call updateCursorImage
$LN14@glfwSetCur:
; 2198 : }
0014d 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00154 5f pop rdi
00155 5d pop rbp
00156 c3 ret 0
_glfwSetCursorModeWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetCursorPosWin32
_TEXT SEGMENT
pos$ = 8
__$ArrayPad$ = 216
window$ = 256
xpos$ = 264
ypos$ = 272
_glfwSetCursorPosWin32 PROC ; COMDAT
; 2150 : {
$LN3:
00000 f2 0f 11 54 24
18 movsd QWORD PTR [rsp+24], xmm2
00006 f2 0f 11 4c 24
10 movsd QWORD PTR [rsp+16], xmm1
0000c 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00011 55 push rbp
00012 57 push rdi
00013 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0001a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001f 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00024 b9 0a 00 00 00 mov ecx, 10
00029 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002e f3 ab rep stosd
00030 48 8b 8c 24 28
01 00 00 mov rcx, QWORD PTR [rsp+296]
00038 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003f 48 33 c5 xor rax, rbp
00042 48 89 85 d8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00049 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00050 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2151 : POINT pos = { (int) xpos, (int) ypos };
00055 f2 0f 2c 85 08
01 00 00 cvttsd2si eax, QWORD PTR xpos$[rbp]
0005d 89 45 08 mov DWORD PTR pos$[rbp], eax
00060 f2 0f 2c 85 10
01 00 00 cvttsd2si eax, QWORD PTR ypos$[rbp]
00068 89 45 0c mov DWORD PTR pos$[rbp+4], eax
; 2152 :
; 2153 : // Store the new position so it can be recognized later
; 2154 : window->win32.lastCursorPosX = pos.x;
0006b 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00072 8b 4d 08 mov ecx, DWORD PTR pos$[rbp]
00075 89 88 94 03 00
00 mov DWORD PTR [rax+916], ecx
; 2155 : window->win32.lastCursorPosY = pos.y;
0007b 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00082 8b 4d 0c mov ecx, DWORD PTR pos$[rbp+4]
00085 89 88 98 03 00
00 mov DWORD PTR [rax+920], ecx
; 2156 :
; 2157 : ClientToScreen(window->win32.handle, &pos);
0008b 48 8d 55 08 lea rdx, QWORD PTR pos$[rbp]
0008f 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00096 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0009d ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 2158 : SetCursorPos(pos.x, pos.y);
000a3 8b 55 0c mov edx, DWORD PTR pos$[rbp+4]
000a6 8b 4d 08 mov ecx, DWORD PTR pos$[rbp]
000a9 ff 15 00 00 00
00 call QWORD PTR __imp_SetCursorPos
; 2159 : }
000af 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000b3 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetCursorPosWin32$rtcFrameData
000ba e8 00 00 00 00 call _RTC_CheckStackVars
000bf 48 8b 8d d8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000c6 48 33 cd xor rcx, rbp
000c9 e8 00 00 00 00 call __security_check_cookie
000ce 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
000d5 5f pop rdi
000d6 5d pop rbp
000d7 c3 ret 0
_glfwSetCursorPosWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetCursorPosWin32
_TEXT SEGMENT
pos$ = 8
__$ArrayPad$ = 216
window$ = 256
xpos$ = 264
ypos$ = 272
_glfwGetCursorPosWin32 PROC ; COMDAT
; 2135 : {
$LN6:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00022 b9 0a 00 00 00 mov ecx, 10
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002c f3 ab rep stosd
0002e 48 8b 8c 24 28
01 00 00 mov rcx, QWORD PTR [rsp+296]
00036 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 d8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00047 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2136 : POINT pos;
; 2137 :
; 2138 : if (GetCursorPos(&pos))
00053 48 8d 4d 08 lea rcx, QWORD PTR pos$[rbp]
00057 ff 15 00 00 00
00 call QWORD PTR __imp_GetCursorPos
0005d 85 c0 test eax, eax
0005f 74 4c je SHORT $LN2@glfwGetCur
; 2139 : {
; 2140 : ScreenToClient(window->win32.handle, &pos);
00061 48 8d 55 08 lea rdx, QWORD PTR pos$[rbp]
00065 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
0006c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00073 ff 15 00 00 00
00 call QWORD PTR __imp_ScreenToClient
; 2141 :
; 2142 : if (xpos)
00079 48 83 bd 08 01
00 00 00 cmp QWORD PTR xpos$[rbp], 0
00081 74 10 je SHORT $LN3@glfwGetCur
; 2143 : *xpos = pos.x;
00083 f2 0f 2a 45 08 cvtsi2sd xmm0, DWORD PTR pos$[rbp]
00088 48 8b 85 08 01
00 00 mov rax, QWORD PTR xpos$[rbp]
0008f f2 0f 11 00 movsd QWORD PTR [rax], xmm0
$LN3@glfwGetCur:
; 2144 : if (ypos)
00093 48 83 bd 10 01
00 00 00 cmp QWORD PTR ypos$[rbp], 0
0009b 74 10 je SHORT $LN4@glfwGetCur
; 2145 : *ypos = pos.y;
0009d f2 0f 2a 45 0c cvtsi2sd xmm0, DWORD PTR pos$[rbp+4]
000a2 48 8b 85 10 01
00 00 mov rax, QWORD PTR ypos$[rbp]
000a9 f2 0f 11 00 movsd QWORD PTR [rax], xmm0
$LN4@glfwGetCur:
$LN2@glfwGetCur:
; 2146 : }
; 2147 : }
000ad 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000b1 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwGetCursorPosWin32$rtcFrameData
000b8 e8 00 00 00 00 call _RTC_CheckStackVars
000bd 48 8b 8d d8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000c4 48 33 cd xor rcx, rbp
000c7 e8 00 00 00 00 call __security_check_cookie
000cc 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
000d3 5f pop rdi
000d4 5d pop rbp
000d5 c3 ret 0
_glfwGetCursorPosWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwPostEmptyEventWin32
_TEXT SEGMENT
_glfwPostEmptyEventWin32 PROC ; COMDAT
; 2130 : {
$LN3:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2131 : PostMessageW(_glfw.win32.helperWindowHandle, WM_NULL, 0, 0);
0001b 45 33 c9 xor r9d, r9d
0001e 45 33 c0 xor r8d, r8d
00021 33 d2 xor edx, edx
00023 48 8b 0d 80 1b
00 00 mov rcx, QWORD PTR _glfw+7040
0002a ff 15 00 00 00
00 call QWORD PTR __imp_PostMessageW
; 2132 : }
00030 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00037 5f pop rdi
00038 5d pop rbp
00039 c3 ret 0
_glfwPostEmptyEventWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWaitEventsTimeoutWin32
_TEXT SEGMENT
timeout$ = 224
_glfwWaitEventsTimeoutWin32 PROC ; COMDAT
; 2123 : {
$LN3:
00000 f2 0f 11 44 24
08 movsd QWORD PTR [rsp+8], xmm0
00006 55 push rbp
00007 57 push rdi
00008 48 81 ec f8 00
00 00 sub rsp, 248 ; 000000f8H
0000f 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00014 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001b e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2124 : MsgWaitForMultipleObjects(0, NULL, FALSE, (DWORD) (timeout * 1e3), QS_ALLEVENTS);
00020 f2 0f 10 85 e0
00 00 00 movsd xmm0, QWORD PTR timeout$[rbp]
00028 f2 0f 59 05 00
00 00 00 mulsd xmm0, QWORD PTR __real@408f400000000000
00030 f2 48 0f 2c c0 cvttsd2si rax, xmm0
00035 c7 44 24 20 bf
04 00 00 mov DWORD PTR [rsp+32], 1215 ; 000004bfH
0003d 44 8b c8 mov r9d, eax
00040 45 33 c0 xor r8d, r8d
00043 33 d2 xor edx, edx
00045 33 c9 xor ecx, ecx
00047 ff 15 00 00 00
00 call QWORD PTR __imp_MsgWaitForMultipleObjects
; 2125 :
; 2126 : _glfwPollEventsWin32();
0004d e8 00 00 00 00 call _glfwPollEventsWin32
; 2127 : }
00052 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00059 5f pop rdi
0005a 5d pop rbp
0005b c3 ret 0
_glfwWaitEventsTimeoutWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWaitEventsWin32
_TEXT SEGMENT
_glfwWaitEventsWin32 PROC ; COMDAT
; 2116 : {
$LN3:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2117 : WaitMessage();
0001b ff 15 00 00 00
00 call QWORD PTR __imp_WaitMessage
; 2118 :
; 2119 : _glfwPollEventsWin32();
00021 e8 00 00 00 00 call _glfwPollEventsWin32
; 2120 : }
00026 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0002d 5f pop rdi
0002e 5d pop rbp
0002f c3 ret 0
_glfwWaitEventsWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwPollEventsWin32
_TEXT SEGMENT
msg$ = 8
handle$ = 88
window$ = 120
i$7 = 148
keys$8 = 184
vk$9 = 244
key$10 = 276
scancode$11 = 308
width$12 = 340
height$13 = 372
__$ArrayPad$ = 584
_glfwPollEventsWin32 PROC ; COMDAT
; 2034 : {
$LN19:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec 88 02
00 00 sub rsp, 648 ; 00000288H
0000a 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0000f 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00014 b9 66 00 00 00 mov ecx, 102 ; 00000066H
00019 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0001e f3 ab rep stosd
00020 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00027 48 33 c5 xor rax, rbp
0002a 48 89 85 48 02
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00031 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00038 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
$LN2@glfwPollEv:
; 2035 : MSG msg;
; 2036 : HWND handle;
; 2037 : _GLFWwindow* window;
; 2038 :
; 2039 : while (PeekMessageW(&msg, NULL, 0, 0, PM_REMOVE))
0003d c7 44 24 20 01
00 00 00 mov DWORD PTR [rsp+32], 1
00045 45 33 c9 xor r9d, r9d
00048 45 33 c0 xor r8d, r8d
0004b 33 d2 xor edx, edx
0004d 48 8d 4d 08 lea rcx, QWORD PTR msg$[rbp]
00051 ff 15 00 00 00
00 call QWORD PTR __imp_PeekMessageW
00057 85 c0 test eax, eax
00059 74 46 je SHORT $LN3@glfwPollEv
; 2040 : {
; 2041 : if (msg.message == WM_QUIT)
0005b 83 7d 10 12 cmp DWORD PTR msg$[rbp+8], 18
0005f 75 2a jne SHORT $LN9@glfwPollEv
; 2042 : {
; 2043 : // NOTE: While GLFW does not itself post WM_QUIT, other processes
; 2044 : // may post it to this one, for example Task Manager
; 2045 : // HACK: Treat WM_QUIT as a close on all windows
; 2046 :
; 2047 : window = _glfw.windowListHead;
00061 48 8b 05 78 07
00 00 mov rax, QWORD PTR _glfw+1912
00068 48 89 45 78 mov QWORD PTR window$[rbp], rax
$LN4@glfwPollEv:
; 2048 : while (window)
0006c 48 83 7d 78 00 cmp QWORD PTR window$[rbp], 0
00071 74 16 je SHORT $LN5@glfwPollEv
; 2049 : {
; 2050 : _glfwInputWindowCloseRequest(window);
00073 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
00077 e8 00 00 00 00 call _glfwInputWindowCloseRequest
; 2051 : window = window->next;
0007c 48 8b 45 78 mov rax, QWORD PTR window$[rbp]
00080 48 8b 00 mov rax, QWORD PTR [rax]
00083 48 89 45 78 mov QWORD PTR window$[rbp], rax
; 2052 : }
00087 eb e3 jmp SHORT $LN4@glfwPollEv
$LN5@glfwPollEv:
; 2053 : }
00089 eb 14 jmp SHORT $LN10@glfwPollEv
$LN9@glfwPollEv:
; 2054 : else
; 2055 : {
; 2056 : TranslateMessage(&msg);
0008b 48 8d 4d 08 lea rcx, QWORD PTR msg$[rbp]
0008f ff 15 00 00 00
00 call QWORD PTR __imp_TranslateMessage
; 2057 : DispatchMessageW(&msg);
00095 48 8d 4d 08 lea rcx, QWORD PTR msg$[rbp]
00099 ff 15 00 00 00
00 call QWORD PTR __imp_DispatchMessageW
$LN10@glfwPollEv:
; 2058 : }
; 2059 : }
0009f eb 9c jmp SHORT $LN2@glfwPollEv
$LN3@glfwPollEv:
; 2060 :
; 2061 : // HACK: Release modifier keys that the system did not emit KEYUP for
; 2062 : // NOTE: Shift keys on Windows tend to "stick" when both are pressed as
; 2063 : // no key up message is generated by the first key release
; 2064 : // NOTE: Windows key is not reported as released by the Win+V hotkey
; 2065 : // Other Win hotkeys are handled implicitly by _glfwInputWindowFocus
; 2066 : // because they change the input focus
; 2067 : // NOTE: The other half of this is in the WM_*KEY* handler in windowProc
; 2068 : handle = GetActiveWindow();
000a1 ff 15 00 00 00
00 call QWORD PTR __imp_GetActiveWindow
000a7 48 89 45 58 mov QWORD PTR handle$[rbp], rax
; 2069 : if (handle)
000ab 48 83 7d 58 00 cmp QWORD PTR handle$[rbp], 0
000b0 0f 84 50 01 00
00 je $LN11@glfwPollEv
; 2070 : {
; 2071 : window = GetPropW(handle, L"GLFW");
000b6 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@
000bd 48 8b 4d 58 mov rcx, QWORD PTR handle$[rbp]
000c1 ff 15 00 00 00
00 call QWORD PTR __imp_GetPropW
000c7 48 89 45 78 mov QWORD PTR window$[rbp], rax
; 2072 : if (window)
000cb 48 83 7d 78 00 cmp QWORD PTR window$[rbp], 0
000d0 0f 84 30 01 00
00 je $LN12@glfwPollEv
; 2073 : {
; 2074 : int i;
; 2075 : const int keys[4][2] =
000d6 c7 85 b8 00 00
00 a0 00 00 00 mov DWORD PTR keys$8[rbp], 160 ; 000000a0H
000e0 c7 85 bc 00 00
00 54 01 00 00 mov DWORD PTR keys$8[rbp+4], 340 ; 00000154H
000ea c7 85 c0 00 00
00 a1 00 00 00 mov DWORD PTR keys$8[rbp+8], 161 ; 000000a1H
000f4 c7 85 c4 00 00
00 58 01 00 00 mov DWORD PTR keys$8[rbp+12], 344 ; 00000158H
000fe c7 85 c8 00 00
00 5b 00 00 00 mov DWORD PTR keys$8[rbp+16], 91 ; 0000005bH
00108 c7 85 cc 00 00
00 57 01 00 00 mov DWORD PTR keys$8[rbp+20], 343 ; 00000157H
00112 c7 85 d0 00 00
00 5c 00 00 00 mov DWORD PTR keys$8[rbp+24], 92 ; 0000005cH
0011c c7 85 d4 00 00
00 5b 01 00 00 mov DWORD PTR keys$8[rbp+28], 347 ; 0000015bH
; 2076 : {
; 2077 : { VK_LSHIFT, GLFW_KEY_LEFT_SHIFT },
; 2078 : { VK_RSHIFT, GLFW_KEY_RIGHT_SHIFT },
; 2079 : { VK_LWIN, GLFW_KEY_LEFT_SUPER },
; 2080 : { VK_RWIN, GLFW_KEY_RIGHT_SUPER }
; 2081 : };
; 2082 :
; 2083 : for (i = 0; i < 4; i++)
00126 c7 85 94 00 00
00 00 00 00 00 mov DWORD PTR i$7[rbp], 0
00130 eb 0e jmp SHORT $LN8@glfwPollEv
$LN6@glfwPollEv:
00132 8b 85 94 00 00
00 mov eax, DWORD PTR i$7[rbp]
00138 ff c0 inc eax
0013a 89 85 94 00 00
00 mov DWORD PTR i$7[rbp], eax
$LN8@glfwPollEv:
00140 83 bd 94 00 00
00 04 cmp DWORD PTR i$7[rbp], 4
00147 0f 8d b9 00 00
00 jge $LN7@glfwPollEv
; 2084 : {
; 2085 : const int vk = keys[i][0];
0014d 48 63 85 94 00
00 00 movsxd rax, DWORD PTR i$7[rbp]
00154 48 8d 84 c5 b8
00 00 00 lea rax, QWORD PTR keys$8[rbp+rax*8]
0015c b9 04 00 00 00 mov ecx, 4
00161 48 6b c9 00 imul rcx, rcx, 0
00165 8b 04 08 mov eax, DWORD PTR [rax+rcx]
00168 89 85 f4 00 00
00 mov DWORD PTR vk$9[rbp], eax
; 2086 : const int key = keys[i][1];
0016e 48 63 85 94 00
00 00 movsxd rax, DWORD PTR i$7[rbp]
00175 48 8d 84 c5 b8
00 00 00 lea rax, QWORD PTR keys$8[rbp+rax*8]
0017d b9 04 00 00 00 mov ecx, 4
00182 48 6b c9 01 imul rcx, rcx, 1
00186 8b 04 08 mov eax, DWORD PTR [rax+rcx]
00189 89 85 14 01 00
00 mov DWORD PTR key$10[rbp], eax
; 2087 : const int scancode = _glfw.win32.scancodes[key];
0018f 48 63 85 14 01
00 00 movsxd rax, DWORD PTR key$10[rbp]
00196 48 8d 0d a8 1f
00 00 lea rcx, OFFSET FLAT:_glfw+8104
0019d 0f bf 04 41 movsx eax, WORD PTR [rcx+rax*2]
001a1 89 85 34 01 00
00 mov DWORD PTR scancode$11[rbp], eax
; 2088 :
; 2089 : if ((GetKeyState(vk) & 0x8000))
001a7 8b 8d f4 00 00
00 mov ecx, DWORD PTR vk$9[rbp]
001ad ff 15 00 00 00
00 call QWORD PTR __imp_GetKeyState
001b3 98 cwde
001b4 25 00 80 00 00 and eax, 32768 ; 00008000H
001b9 85 c0 test eax, eax
001bb 74 05 je SHORT $LN13@glfwPollEv
; 2090 : continue;
001bd e9 70 ff ff ff jmp $LN6@glfwPollEv
$LN13@glfwPollEv:
; 2091 : if (window->keys[key] != GLFW_PRESS)
001c2 48 63 85 14 01
00 00 movsxd rax, DWORD PTR key$10[rbp]
001c9 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
001cd 0f be 84 01 90
00 00 00 movsx eax, BYTE PTR [rcx+rax+144]
001d5 83 f8 01 cmp eax, 1
001d8 74 05 je SHORT $LN14@glfwPollEv
; 2092 : continue;
001da e9 53 ff ff ff jmp $LN6@glfwPollEv
$LN14@glfwPollEv:
; 2093 :
; 2094 : _glfwInputKey(window, key, scancode, GLFW_RELEASE, getKeyMods());
001df e8 00 00 00 00 call getKeyMods
001e4 89 44 24 20 mov DWORD PTR [rsp+32], eax
001e8 45 33 c9 xor r9d, r9d
001eb 44 8b 85 34 01
00 00 mov r8d, DWORD PTR scancode$11[rbp]
001f2 8b 95 14 01 00
00 mov edx, DWORD PTR key$10[rbp]
001f8 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
001fc e8 00 00 00 00 call _glfwInputKey
; 2095 : }
00201 e9 2c ff ff ff jmp $LN6@glfwPollEv
$LN7@glfwPollEv:
$LN12@glfwPollEv:
$LN11@glfwPollEv:
; 2096 : }
; 2097 : }
; 2098 :
; 2099 : window = _glfw.win32.disabledCursorWindow;
00206 48 8b 05 48 29
00 00 mov rax, QWORD PTR _glfw+10568
0020d 48 89 45 78 mov QWORD PTR window$[rbp], rax
; 2100 : if (window)
00211 48 83 7d 78 00 cmp QWORD PTR window$[rbp], 0
00216 74 6f je SHORT $LN15@glfwPollEv
; 2101 : {
; 2102 : int width, height;
; 2103 : _glfwGetWindowSizeWin32(window, &width, &height);
00218 4c 8d 85 74 01
00 00 lea r8, QWORD PTR height$13[rbp]
0021f 48 8d 95 54 01
00 00 lea rdx, QWORD PTR width$12[rbp]
00226 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
0022a e8 00 00 00 00 call _glfwGetWindowSizeWin32
; 2104 :
; 2105 : // NOTE: Re-center the cursor only if it has moved since the last call,
; 2106 : // to avoid breaking glfwWaitEvents with WM_MOUSEMOVE
; 2107 : if (window->win32.lastCursorPosX != width / 2 ||
0022f 8b 85 54 01 00
00 mov eax, DWORD PTR width$12[rbp]
00235 99 cdq
00236 2b c2 sub eax, edx
00238 d1 f8 sar eax, 1
0023a 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
0023e 39 81 94 03 00
00 cmp DWORD PTR [rcx+916], eax
00244 75 17 jne SHORT $LN17@glfwPollEv
00246 8b 85 74 01 00
00 mov eax, DWORD PTR height$13[rbp]
0024c 99 cdq
0024d 2b c2 sub eax, edx
0024f d1 f8 sar eax, 1
00251 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
00255 39 81 98 03 00
00 cmp DWORD PTR [rcx+920], eax
0025b 74 2a je SHORT $LN16@glfwPollEv
$LN17@glfwPollEv:
; 2108 : window->win32.lastCursorPosY != height / 2)
; 2109 : {
; 2110 : _glfwSetCursorPosWin32(window, width / 2, height / 2);
0025d 8b 85 74 01 00
00 mov eax, DWORD PTR height$13[rbp]
00263 99 cdq
00264 2b c2 sub eax, edx
00266 d1 f8 sar eax, 1
00268 f2 0f 2a c0 cvtsi2sd xmm0, eax
0026c 8b 85 54 01 00
00 mov eax, DWORD PTR width$12[rbp]
00272 99 cdq
00273 2b c2 sub eax, edx
00275 d1 f8 sar eax, 1
00277 f2 0f 2a c8 cvtsi2sd xmm1, eax
0027b 0f 28 d0 movaps xmm2, xmm0
0027e 48 8b 4d 78 mov rcx, QWORD PTR window$[rbp]
00282 e8 00 00 00 00 call _glfwSetCursorPosWin32
$LN16@glfwPollEv:
$LN15@glfwPollEv:
; 2111 : }
; 2112 : }
; 2113 : }
00287 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
0028b 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwPollEventsWin32$rtcFrameData
00292 e8 00 00 00 00 call _RTC_CheckStackVars
00297 48 8b 8d 48 02
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0029e 48 33 cd xor rcx, rbp
002a1 e8 00 00 00 00 call __security_check_cookie
002a6 48 8d a5 58 02
00 00 lea rsp, QWORD PTR [rbp+600]
002ad 5f pop rdi
002ae 5d pop rbp
002af c3 ret 0
_glfwPollEventsWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwRawMouseMotionSupportedWin32
_TEXT SEGMENT
_glfwRawMouseMotionSupportedWin32 PROC ; COMDAT
; 2029 : {
$LN3:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0000f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2030 : return GLFW_TRUE;
0001b b8 01 00 00 00 mov eax, 1
; 2031 : }
00020 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00027 5f pop rdi
00028 5d pop rbp
00029 c3 ret 0
_glfwRawMouseMotionSupportedWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetRawMouseMotionWin32
_TEXT SEGMENT
window$ = 224
enabled$ = 232
_glfwSetRawMouseMotionWin32 PROC ; COMDAT
; 2018 : {
$LN6:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 2019 : if (_glfw.win32.disabledCursorWindow != window)
00023 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0002a 48 39 05 48 29
00 00 cmp QWORD PTR _glfw+10568, rax
00031 74 02 je SHORT $LN2@glfwSetRaw
; 2020 : return;
00033 eb 23 jmp SHORT $LN1@glfwSetRaw
$LN2@glfwSetRaw:
; 2021 :
; 2022 : if (enabled)
00035 83 bd e8 00 00
00 00 cmp DWORD PTR enabled$[rbp], 0
0003c 74 0e je SHORT $LN3@glfwSetRaw
; 2023 : enableRawMouseMotion(window);
0003e 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00045 e8 00 00 00 00 call enableRawMouseMotion
0004a eb 0c jmp SHORT $LN4@glfwSetRaw
$LN3@glfwSetRaw:
; 2024 : else
; 2025 : disableRawMouseMotion(window);
0004c 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00053 e8 00 00 00 00 call disableRawMouseMotion
$LN4@glfwSetRaw:
$LN1@glfwSetRaw:
; 2026 : }
00058 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0005f 5f pop rdi
00060 5d pop rbp
00061 c3 ret 0
_glfwSetRawMouseMotionWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowOpacityWin32
_TEXT SEGMENT
exStyle$ = 4
alpha$1 = 36
window$ = 288
opacity$ = 296
_glfwSetWindowOpacityWin32 PROC ; COMDAT
; 1997 : {
$LN8:
00000 f3 0f 11 4c 24
10 movss DWORD PTR [rsp+16], xmm1
00006 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000b 55 push rbp
0000c 57 push rdi
0000d 48 81 ec 28 01
00 00 sub rsp, 296 ; 00000128H
00014 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00019 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00020 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1998 : LONG exStyle = GetWindowLongW(window->win32.handle, GWL_EXSTYLE);
00025 ba ec ff ff ff mov edx, -20
0002a 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00031 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00038 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
0003e 89 45 04 mov DWORD PTR exStyle$[rbp], eax
; 1999 : if (opacity < 1.f || (exStyle & WS_EX_TRANSPARENT))
00041 f3 0f 10 05 00
00 00 00 movss xmm0, DWORD PTR __real@3f800000
00049 0f 2f 85 28 01
00 00 comiss xmm0, DWORD PTR opacity$[rbp]
00050 77 0a ja SHORT $LN4@glfwSetWin
00052 8b 45 04 mov eax, DWORD PTR exStyle$[rbp]
00055 83 e0 20 and eax, 32 ; 00000020H
00058 85 c0 test eax, eax
0005a 74 61 je SHORT $LN2@glfwSetWin
$LN4@glfwSetWin:
; 2000 : {
; 2001 : const BYTE alpha = (BYTE) (255 * opacity);
0005c f3 0f 10 05 00
00 00 00 movss xmm0, DWORD PTR __real@437f0000
00064 f3 0f 59 85 28
01 00 00 mulss xmm0, DWORD PTR opacity$[rbp]
0006c f3 0f 2c c0 cvttss2si eax, xmm0
00070 88 45 24 mov BYTE PTR alpha$1[rbp], al
; 2002 : exStyle |= WS_EX_LAYERED;
00073 8b 45 04 mov eax, DWORD PTR exStyle$[rbp]
00076 0f ba e8 13 bts eax, 19
0007a 89 45 04 mov DWORD PTR exStyle$[rbp], eax
; 2003 : SetWindowLongW(window->win32.handle, GWL_EXSTYLE, exStyle);
0007d 44 8b 45 04 mov r8d, DWORD PTR exStyle$[rbp]
00081 ba ec ff ff ff mov edx, -20
00086 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
0008d 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00094 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
; 2004 : SetLayeredWindowAttributes(window->win32.handle, 0, alpha, LWA_ALPHA);
0009a 41 b9 02 00 00
00 mov r9d, 2
000a0 44 0f b6 45 24 movzx r8d, BYTE PTR alpha$1[rbp]
000a5 33 d2 xor edx, edx
000a7 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000ae 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000b5 ff 15 00 00 00
00 call QWORD PTR __imp_SetLayeredWindowAttributes
; 2005 : }
000bb eb 4f jmp SHORT $LN3@glfwSetWin
$LN2@glfwSetWin:
; 2006 : else if (exStyle & WS_EX_TRANSPARENT)
000bd 8b 45 04 mov eax, DWORD PTR exStyle$[rbp]
000c0 83 e0 20 and eax, 32 ; 00000020H
000c3 85 c0 test eax, eax
000c5 74 1e je SHORT $LN5@glfwSetWin
; 2007 : {
; 2008 : SetLayeredWindowAttributes(window->win32.handle, 0, 0, 0);
000c7 45 33 c9 xor r9d, r9d
000ca 45 33 c0 xor r8d, r8d
000cd 33 d2 xor edx, edx
000cf 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000d6 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000dd ff 15 00 00 00
00 call QWORD PTR __imp_SetLayeredWindowAttributes
; 2009 : }
000e3 eb 27 jmp SHORT $LN6@glfwSetWin
$LN5@glfwSetWin:
; 2010 : else
; 2011 : {
; 2012 : exStyle &= ~WS_EX_LAYERED;
000e5 8b 45 04 mov eax, DWORD PTR exStyle$[rbp]
000e8 0f ba f0 13 btr eax, 19
000ec 89 45 04 mov DWORD PTR exStyle$[rbp], eax
; 2013 : SetWindowLongW(window->win32.handle, GWL_EXSTYLE, exStyle);
000ef 44 8b 45 04 mov r8d, DWORD PTR exStyle$[rbp]
000f3 ba ec ff ff ff mov edx, -20
000f8 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000ff 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00106 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
$LN6@glfwSetWin:
$LN3@glfwSetWin:
; 2014 : }
; 2015 : }
0010c 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
00113 5f pop rdi
00114 5d pop rbp
00115 c3 ret 0
_glfwSetWindowOpacityWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetWindowOpacityWin32
_TEXT SEGMENT
alpha$ = 4
flags$ = 36
__$ArrayPad$ = 248
window$ = 288
_glfwGetWindowOpacityWin32 PROC ; COMDAT
; 1982 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 38 01
00 00 sub rsp, 312 ; 00000138H
0000e 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00013 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00018 b9 12 00 00 00 mov ecx, 18
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 58
01 00 00 mov rcx, QWORD PTR [rsp+344]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 f8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1983 : BYTE alpha;
; 1984 : DWORD flags;
; 1985 :
; 1986 : if ((GetWindowLongW(window->win32.handle, GWL_EXSTYLE) & WS_EX_LAYERED) &&
00049 ba ec ff ff ff mov edx, -20
0004e 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00055 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0005c ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
00062 25 00 00 08 00 and eax, 524288 ; 00080000H
00067 85 c0 test eax, eax
00069 74 3e je SHORT $LN2@glfwGetWin
0006b 4c 8d 4d 24 lea r9, QWORD PTR flags$[rbp]
0006f 4c 8d 45 04 lea r8, QWORD PTR alpha$[rbp]
00073 33 d2 xor edx, edx
00075 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
0007c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00083 ff 15 00 00 00
00 call QWORD PTR __imp_GetLayeredWindowAttributes
00089 85 c0 test eax, eax
0008b 74 1c je SHORT $LN2@glfwGetWin
; 1987 : GetLayeredWindowAttributes(window->win32.handle, NULL, &alpha, &flags))
; 1988 : {
; 1989 : if (flags & LWA_ALPHA)
0008d 8b 45 24 mov eax, DWORD PTR flags$[rbp]
00090 83 e0 02 and eax, 2
00093 85 c0 test eax, eax
00095 74 12 je SHORT $LN3@glfwGetWin
; 1990 : return alpha / 255.f;
00097 0f b6 45 04 movzx eax, BYTE PTR alpha$[rbp]
0009b f3 0f 2a c0 cvtsi2ss xmm0, eax
0009f f3 0f 5e 05 00
00 00 00 divss xmm0, DWORD PTR __real@437f0000
000a7 eb 08 jmp SHORT $LN1@glfwGetWin
$LN3@glfwGetWin:
$LN2@glfwGetWin:
; 1991 : }
; 1992 :
; 1993 : return 1.f;
000a9 f3 0f 10 05 00
00 00 00 movss xmm0, DWORD PTR __real@3f800000
$LN1@glfwGetWin:
; 1994 : }
000b1 f3 0f 7f 44 24
20 movdqu XMMWORD PTR [rsp+32], xmm0
000b7 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
000bb 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwGetWindowOpacityWin32$rtcFrameData
000c2 e8 00 00 00 00 call _RTC_CheckStackVars
000c7 f3 0f 6f 44 24
20 movdqu xmm0, XMMWORD PTR [rsp+32]
000cd 48 8b 8d f8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000d4 48 33 cd xor rcx, rbp
000d7 e8 00 00 00 00 call __security_check_cookie
000dc 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
000e3 5f pop rdi
000e4 5d pop rbp
000e5 c3 ret 0
_glfwGetWindowOpacityWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowMousePassthroughWin32
_TEXT SEGMENT
key$ = 4
alpha$ = 36
flags$ = 68
exStyle$ = 100
__$ArrayPad$ = 312
window$ = 352
enabled$ = 360
_glfwSetWindowMousePassthroughWin32 PROC ; COMDAT
; 1952 : {
$LN9:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec 68 01
00 00 sub rsp, 360 ; 00000168H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
0001c b9 22 00 00 00 mov ecx, 34 ; 00000022H
00021 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00026 f3 ab rep stosd
00028 48 8b 8c 24 88
01 00 00 mov rcx, QWORD PTR [rsp+392]
00030 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00037 48 33 c5 xor rax, rbp
0003a 48 89 85 38 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00041 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1953 : COLORREF key = 0;
0004d c7 45 04 00 00
00 00 mov DWORD PTR key$[rbp], 0
; 1954 : BYTE alpha = 0;
00054 c6 45 24 00 mov BYTE PTR alpha$[rbp], 0
; 1955 : DWORD flags = 0;
00058 c7 45 44 00 00
00 00 mov DWORD PTR flags$[rbp], 0
; 1956 : DWORD exStyle = GetWindowLongW(window->win32.handle, GWL_EXSTYLE);
0005f ba ec ff ff ff mov edx, -20
00064 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
0006b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00072 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
00078 89 45 64 mov DWORD PTR exStyle$[rbp], eax
; 1957 :
; 1958 : if (exStyle & WS_EX_LAYERED)
0007b 8b 45 64 mov eax, DWORD PTR exStyle$[rbp]
0007e 25 00 00 08 00 and eax, 524288 ; 00080000H
00083 85 c0 test eax, eax
00085 74 20 je SHORT $LN2@glfwSetWin
; 1959 : GetLayeredWindowAttributes(window->win32.handle, &key, &alpha, &flags);
00087 4c 8d 4d 44 lea r9, QWORD PTR flags$[rbp]
0008b 4c 8d 45 24 lea r8, QWORD PTR alpha$[rbp]
0008f 48 8d 55 04 lea rdx, QWORD PTR key$[rbp]
00093 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
0009a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000a1 ff 15 00 00 00
00 call QWORD PTR __imp_GetLayeredWindowAttributes
$LN2@glfwSetWin:
; 1960 :
; 1961 : if (enabled)
000a7 83 bd 68 01 00
00 00 cmp DWORD PTR enabled$[rbp], 0
000ae 74 0d je SHORT $LN3@glfwSetWin
; 1962 : exStyle |= (WS_EX_TRANSPARENT | WS_EX_LAYERED);
000b0 8b 45 64 mov eax, DWORD PTR exStyle$[rbp]
000b3 0d 20 00 08 00 or eax, 524320 ; 00080020H
000b8 89 45 64 mov DWORD PTR exStyle$[rbp], eax
000bb eb 29 jmp SHORT $LN4@glfwSetWin
$LN3@glfwSetWin:
; 1963 : else
; 1964 : {
; 1965 : exStyle &= ~WS_EX_TRANSPARENT;
000bd 8b 45 64 mov eax, DWORD PTR exStyle$[rbp]
000c0 83 e0 df and eax, -33 ; ffffffdfH
000c3 89 45 64 mov DWORD PTR exStyle$[rbp], eax
; 1966 : // NOTE: Window opacity also needs the layered window style so do not
; 1967 : // remove it if the window is alpha blended
; 1968 : if (exStyle & WS_EX_LAYERED)
000c6 8b 45 64 mov eax, DWORD PTR exStyle$[rbp]
000c9 25 00 00 08 00 and eax, 524288 ; 00080000H
000ce 85 c0 test eax, eax
000d0 74 14 je SHORT $LN5@glfwSetWin
; 1969 : {
; 1970 : if (!(flags & LWA_ALPHA))
000d2 8b 45 44 mov eax, DWORD PTR flags$[rbp]
000d5 83 e0 02 and eax, 2
000d8 85 c0 test eax, eax
000da 75 0a jne SHORT $LN6@glfwSetWin
; 1971 : exStyle &= ~WS_EX_LAYERED;
000dc 8b 45 64 mov eax, DWORD PTR exStyle$[rbp]
000df 0f ba f0 13 btr eax, 19
000e3 89 45 64 mov DWORD PTR exStyle$[rbp], eax
$LN6@glfwSetWin:
$LN5@glfwSetWin:
$LN4@glfwSetWin:
; 1972 : }
; 1973 : }
; 1974 :
; 1975 : SetWindowLongW(window->win32.handle, GWL_EXSTYLE, exStyle);
000e6 44 8b 45 64 mov r8d, DWORD PTR exStyle$[rbp]
000ea ba ec ff ff ff mov edx, -20
000ef 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
000f6 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000fd ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
; 1976 :
; 1977 : if (enabled)
00103 83 bd 68 01 00
00 00 cmp DWORD PTR enabled$[rbp], 0
0010a 74 20 je SHORT $LN7@glfwSetWin
; 1978 : SetLayeredWindowAttributes(window->win32.handle, key, alpha, flags);
0010c 44 8b 4d 44 mov r9d, DWORD PTR flags$[rbp]
00110 44 0f b6 45 24 movzx r8d, BYTE PTR alpha$[rbp]
00115 8b 55 04 mov edx, DWORD PTR key$[rbp]
00118 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
0011f 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00126 ff 15 00 00 00
00 call QWORD PTR __imp_SetLayeredWindowAttributes
$LN7@glfwSetWin:
; 1979 : }
0012c 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
00130 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetWindowMousePassthroughWin32$rtcFrameData
00137 e8 00 00 00 00 call _RTC_CheckStackVars
0013c 48 8b 8d 38 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00143 48 33 cd xor rcx, rbp
00146 e8 00 00 00 00 call __security_check_cookie
0014b 48 8d a5 48 01
00 00 lea rsp, QWORD PTR [rbp+328]
00152 5f pop rdi
00153 5d pop rbp
00154 c3 ret 0
_glfwSetWindowMousePassthroughWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowFloatingWin32
_TEXT SEGMENT
after$ = 8
tv65 = 216
window$ = 256
enabled$ = 264
_glfwSetWindowFloatingWin32 PROC ; COMDAT
; 1945 : {
$LN5:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec 28 01
00 00 sub rsp, 296 ; 00000128H
00012 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1946 : const HWND after = enabled ? HWND_TOPMOST : HWND_NOTOPMOST;
00023 83 bd 08 01 00
00 00 cmp DWORD PTR enabled$[rbp], 0
0002a 74 0d je SHORT $LN3@glfwSetWin
0002c 48 c7 85 d8 00
00 00 ff ff ff
ff mov QWORD PTR tv65[rbp], -1
00037 eb 0b jmp SHORT $LN4@glfwSetWin
$LN3@glfwSetWin:
00039 48 c7 85 d8 00
00 00 fe ff ff
ff mov QWORD PTR tv65[rbp], -2
$LN4@glfwSetWin:
00044 48 8b 85 d8 00
00 00 mov rax, QWORD PTR tv65[rbp]
0004b 48 89 45 08 mov QWORD PTR after$[rbp], rax
; 1947 : SetWindowPos(window->win32.handle, after, 0, 0, 0, 0,
0004f c7 44 24 30 13
00 00 00 mov DWORD PTR [rsp+48], 19
00057 c7 44 24 28 00
00 00 00 mov DWORD PTR [rsp+40], 0
0005f c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
00067 45 33 c9 xor r9d, r9d
0006a 45 33 c0 xor r8d, r8d
0006d 48 8b 55 08 mov rdx, QWORD PTR after$[rbp]
00071 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00078 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0007f ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
; 1948 : SWP_NOACTIVATE | SWP_NOMOVE | SWP_NOSIZE);
; 1949 : }
00085 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
0008c 5f pop rdi
0008d 5d pop rbp
0008e c3 ret 0
_glfwSetWindowFloatingWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowDecoratedWin32
_TEXT SEGMENT
window$ = 224
enabled$ = 232
_glfwSetWindowDecoratedWin32 PROC ; COMDAT
; 1940 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1941 : updateWindowStyles(window);
00023 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0002a e8 00 00 00 00 call updateWindowStyles
; 1942 : }
0002f 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00036 5f pop rdi
00037 5d pop rbp
00038 c3 ret 0
_glfwSetWindowDecoratedWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowResizableWin32
_TEXT SEGMENT
window$ = 224
enabled$ = 232
_glfwSetWindowResizableWin32 PROC ; COMDAT
; 1935 : {
$LN3:
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1936 : updateWindowStyles(window);
00023 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0002a e8 00 00 00 00 call updateWindowStyles
; 1937 : }
0002f 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00036 5f pop rdi
00037 5d pop rbp
00038 c3 ret 0
_glfwSetWindowResizableWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwFramebufferTransparentWin32
_TEXT SEGMENT
composition$ = 4
opaque$ = 36
color$ = 68
__$ArrayPad$ = 280
window$ = 320
_glfwFramebufferTransparentWin32 PROC ; COMDAT
; 1908 : {
$LN10:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 48 01
00 00 sub rsp, 328 ; 00000148H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00018 b9 1a 00 00 00 mov ecx, 26
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 68
01 00 00 mov rcx, QWORD PTR [rsp+360]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 18 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1909 : BOOL composition, opaque;
; 1910 : DWORD color;
; 1911 :
; 1912 : if (!window->win32.transparent)
00049 48 8b 85 40 01
00 00 mov rax, QWORD PTR window$[rbp]
00050 83 b8 80 03 00
00 00 cmp DWORD PTR [rax+896], 0
00057 75 04 jne SHORT $LN2@glfwFrameb
; 1913 : return GLFW_FALSE;
00059 33 c0 xor eax, eax
0005b eb 63 jmp SHORT $LN1@glfwFrameb
$LN2@glfwFrameb:
; 1914 :
; 1915 : if (!IsWindowsVistaOrGreater())
0005d 45 33 c0 xor r8d, r8d
00060 33 d2 xor edx, edx
00062 66 b9 06 00 mov cx, 6
00066 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32
0006b 85 c0 test eax, eax
0006d 75 04 jne SHORT $LN3@glfwFrameb
; 1916 : return GLFW_FALSE;
0006f 33 c0 xor eax, eax
00071 eb 4d jmp SHORT $LN1@glfwFrameb
$LN3@glfwFrameb:
; 1917 :
; 1918 : if (FAILED(DwmIsCompositionEnabled(&composition)) || !composition)
00073 48 8d 4d 04 lea rcx, QWORD PTR composition$[rbp]
00077 ff 15 e0 29 00
00 call QWORD PTR _glfw+10720
0007d 85 c0 test eax, eax
0007f 7c 06 jl SHORT $LN5@glfwFrameb
00081 83 7d 04 00 cmp DWORD PTR composition$[rbp], 0
00085 75 04 jne SHORT $LN4@glfwFrameb
$LN5@glfwFrameb:
; 1919 : return GLFW_FALSE;
00087 33 c0 xor eax, eax
00089 eb 35 jmp SHORT $LN1@glfwFrameb
$LN4@glfwFrameb:
; 1920 :
; 1921 : if (!IsWindows8OrGreater())
0008b 45 33 c0 xor r8d, r8d
0008e 66 ba 02 00 mov dx, 2
00092 66 b9 06 00 mov cx, 6
00096 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32
0009b 85 c0 test eax, eax
0009d 75 1c jne SHORT $LN6@glfwFrameb
; 1922 : {
; 1923 : // HACK: Disable framebuffer transparency on Windows 7 when the
; 1924 : // colorization color is opaque, because otherwise the window
; 1925 : // contents is blended additively with the previous frame instead
; 1926 : // of replacing it
; 1927 : if (FAILED(DwmGetColorizationColor(&color, &opaque)) || opaque)
0009f 48 8d 55 24 lea rdx, QWORD PTR opaque$[rbp]
000a3 48 8d 4d 44 lea rcx, QWORD PTR color$[rbp]
000a7 ff 15 f8 29 00
00 call QWORD PTR _glfw+10744
000ad 85 c0 test eax, eax
000af 7c 06 jl SHORT $LN8@glfwFrameb
000b1 83 7d 24 00 cmp DWORD PTR opaque$[rbp], 0
000b5 74 04 je SHORT $LN7@glfwFrameb
$LN8@glfwFrameb:
; 1928 : return GLFW_FALSE;
000b7 33 c0 xor eax, eax
000b9 eb 05 jmp SHORT $LN1@glfwFrameb
$LN7@glfwFrameb:
$LN6@glfwFrameb:
; 1929 : }
; 1930 :
; 1931 : return GLFW_TRUE;
000bb b8 01 00 00 00 mov eax, 1
$LN1@glfwFrameb:
; 1932 : }
000c0 48 8b f8 mov rdi, rax
000c3 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000c7 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwFramebufferTransparentWin32$rtcFrameData
000ce e8 00 00 00 00 call _RTC_CheckStackVars
000d3 48 8b c7 mov rax, rdi
000d6 48 8b 8d 18 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000dd 48 33 cd xor rcx, rbp
000e0 e8 00 00 00 00 call __security_check_cookie
000e5 48 8d a5 28 01
00 00 lea rsp, QWORD PTR [rbp+296]
000ec 5f pop rdi
000ed 5d pop rbp
000ee c3 ret 0
_glfwFramebufferTransparentWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWindowHoveredWin32
_TEXT SEGMENT
window$ = 224
_glfwWindowHoveredWin32 PROC ; COMDAT
; 1903 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1904 : return cursorInContentArea(window);
0001f 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00026 e8 00 00 00 00 call cursorInContentArea
; 1905 : }
0002b 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00032 5f pop rdi
00033 5d pop rbp
00034 c3 ret 0
_glfwWindowHoveredWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWindowMaximizedWin32
_TEXT SEGMENT
window$ = 224
_glfwWindowMaximizedWin32 PROC ; COMDAT
; 1898 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1899 : return IsZoomed(window->win32.handle);
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0002d ff 15 00 00 00
00 call QWORD PTR __imp_IsZoomed
; 1900 : }
00033 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003a 5f pop rdi
0003b 5d pop rbp
0003c c3 ret 0
_glfwWindowMaximizedWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWindowVisibleWin32
_TEXT SEGMENT
window$ = 224
_glfwWindowVisibleWin32 PROC ; COMDAT
; 1893 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1894 : return IsWindowVisible(window->win32.handle);
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0002d ff 15 00 00 00
00 call QWORD PTR __imp_IsWindowVisible
; 1895 : }
00033 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003a 5f pop rdi
0003b 5d pop rbp
0003c c3 ret 0
_glfwWindowVisibleWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWindowIconifiedWin32
_TEXT SEGMENT
window$ = 224
_glfwWindowIconifiedWin32 PROC ; COMDAT
; 1888 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1889 : return IsIconic(window->win32.handle);
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0002d ff 15 00 00 00
00 call QWORD PTR __imp_IsIconic
; 1890 : }
00033 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003a 5f pop rdi
0003b 5d pop rbp
0003c c3 ret 0
_glfwWindowIconifiedWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwWindowFocusedWin32
_TEXT SEGMENT
tv67 = 192
window$ = 240
_glfwWindowFocusedWin32 PROC ; COMDAT
; 1883 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec f8 00
00 00 sub rsp, 248 ; 000000f8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1884 : return window->win32.handle == GetActiveWindow();
0001f ff 15 00 00 00
00 call QWORD PTR __imp_GetActiveWindow
00025 48 8b 8d f0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0002c 48 39 81 58 03
00 00 cmp QWORD PTR [rcx+856], rax
00033 75 0c jne SHORT $LN3@glfwWindow
00035 c7 85 c0 00 00
00 01 00 00 00 mov DWORD PTR tv67[rbp], 1
0003f eb 0a jmp SHORT $LN4@glfwWindow
$LN3@glfwWindow:
00041 c7 85 c0 00 00
00 00 00 00 00 mov DWORD PTR tv67[rbp], 0
$LN4@glfwWindow:
0004b 8b 85 c0 00 00
00 mov eax, DWORD PTR tv67[rbp]
; 1885 : }
00051 48 8d a5 d8 00
00 00 lea rsp, QWORD PTR [rbp+216]
00058 5f pop rdi
00059 5d pop rbp
0005a c3 ret 0
_glfwWindowFocusedWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowMonitorWin32
_TEXT SEGMENT
rect$6 = 8
mi$7 = 56
flags$8 = 116
style$9 = 148
after$10 = 184
rect$11 = 216
style$12 = 260
flags$13 = 292
tv246 = 500
tv234 = 500
tv89 = 500
tv77 = 500
tv238 = 504
tv81 = 504
__$ArrayPad$ = 512
window$ = 560
monitor$ = 568
xpos$ = 576
ypos$ = 584
width$ = 592
height$ = 600
refreshRate$ = 608
_glfwSetWindowMonitorWin32 PROC ; COMDAT
; 1777 : {
$LN18:
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec 58 02
00 00 sub rsp, 600 ; 00000258H
0001d 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
00022 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00027 b9 56 00 00 00 mov ecx, 86 ; 00000056H
0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00031 f3 ab rep stosd
00033 48 8b 8c 24 78
02 00 00 mov rcx, QWORD PTR [rsp+632]
0003b 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00042 48 33 c5 xor rax, rbp
00045 48 89 85 00 02
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1778 : if (window->monitor == monitor)
00058 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
0005f 48 8b 8d 38 02
00 00 mov rcx, QWORD PTR monitor$[rbp]
00066 48 39 48 50 cmp QWORD PTR [rax+80], rcx
0006a 0f 85 5c 01 00
00 jne $LN2@glfwSetWin
; 1779 : {
; 1780 : if (monitor)
00070 48 83 bd 38 02
00 00 00 cmp QWORD PTR monitor$[rbp], 0
00078 74 34 je SHORT $LN3@glfwSetWin
; 1781 : {
; 1782 : if (monitor->window == window)
0007a 48 8b 85 38 02
00 00 mov rax, QWORD PTR monitor$[rbp]
00081 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00088 48 39 88 90 00
00 00 cmp QWORD PTR [rax+144], rcx
0008f 75 18 jne SHORT $LN5@glfwSetWin
; 1783 : {
; 1784 : acquireMonitor(window);
00091 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00098 e8 00 00 00 00 call acquireMonitor
; 1785 : fitToMonitor(window);
0009d 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
000a4 e8 00 00 00 00 call fitToMonitor
$LN5@glfwSetWin:
; 1786 : }
; 1787 : }
000a9 e9 19 01 00 00 jmp $LN4@glfwSetWin
$LN3@glfwSetWin:
; 1788 : else
; 1789 : {
; 1790 : RECT rect = { xpos, ypos, xpos + width, ypos + height };
000ae 8b 85 40 02 00
00 mov eax, DWORD PTR xpos$[rbp]
000b4 89 45 08 mov DWORD PTR rect$6[rbp], eax
000b7 8b 85 48 02 00
00 mov eax, DWORD PTR ypos$[rbp]
000bd 89 45 0c mov DWORD PTR rect$6[rbp+4], eax
000c0 8b 85 50 02 00
00 mov eax, DWORD PTR width$[rbp]
000c6 8b 8d 40 02 00
00 mov ecx, DWORD PTR xpos$[rbp]
000cc 03 c8 add ecx, eax
000ce 8b c1 mov eax, ecx
000d0 89 45 10 mov DWORD PTR rect$6[rbp+8], eax
000d3 8b 85 58 02 00
00 mov eax, DWORD PTR height$[rbp]
000d9 8b 8d 48 02 00
00 mov ecx, DWORD PTR ypos$[rbp]
000df 03 c8 add ecx, eax
000e1 8b c1 mov eax, ecx
000e3 89 45 14 mov DWORD PTR rect$6[rbp+12], eax
; 1791 :
; 1792 : if (_glfwIsWindows10Version1607OrGreaterWin32())
000e6 66 b9 39 38 mov cx, 14393 ; 00003839H
000ea e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
000ef 85 c0 test eax, eax
000f1 74 5c je SHORT $LN6@glfwSetWin
; 1793 : {
; 1794 : AdjustWindowRectExForDpi(&rect, getWindowStyle(window),
000f3 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
000fa 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00101 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
00107 89 85 f4 01 00
00 mov DWORD PTR tv77[rbp], eax
0010d 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00114 e8 00 00 00 00 call getWindowExStyle
00119 89 85 f8 01 00
00 mov DWORD PTR tv81[rbp], eax
0011f 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00126 e8 00 00 00 00 call getWindowStyle
0012b 8b 8d f4 01 00
00 mov ecx, DWORD PTR tv77[rbp]
00131 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
00135 8b 8d f8 01 00
00 mov ecx, DWORD PTR tv81[rbp]
0013b 44 8b c9 mov r9d, ecx
0013e 45 33 c0 xor r8d, r8d
00141 8b d0 mov edx, eax
00143 48 8d 4d 08 lea rcx, QWORD PTR rect$6[rbp]
00147 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1795 : FALSE, getWindowExStyle(window),
; 1796 : GetDpiForWindow(window->win32.handle));
; 1797 : }
0014d eb 36 jmp SHORT $LN7@glfwSetWin
$LN6@glfwSetWin:
; 1798 : else
; 1799 : {
; 1800 : AdjustWindowRectEx(&rect, getWindowStyle(window),
0014f 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00156 e8 00 00 00 00 call getWindowExStyle
0015b 89 85 f4 01 00
00 mov DWORD PTR tv89[rbp], eax
00161 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00168 e8 00 00 00 00 call getWindowStyle
0016d 8b 8d f4 01 00
00 mov ecx, DWORD PTR tv89[rbp]
00173 44 8b c9 mov r9d, ecx
00176 45 33 c0 xor r8d, r8d
00179 8b d0 mov edx, eax
0017b 48 8d 4d 08 lea rcx, QWORD PTR rect$6[rbp]
0017f ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN7@glfwSetWin:
; 1801 : FALSE, getWindowExStyle(window));
; 1802 : }
; 1803 :
; 1804 : SetWindowPos(window->win32.handle, HWND_TOP,
00185 8b 45 0c mov eax, DWORD PTR rect$6[rbp+4]
00188 8b 4d 14 mov ecx, DWORD PTR rect$6[rbp+12]
0018b 2b c8 sub ecx, eax
0018d 8b c1 mov eax, ecx
0018f 8b 4d 08 mov ecx, DWORD PTR rect$6[rbp]
00192 8b 55 10 mov edx, DWORD PTR rect$6[rbp+8]
00195 2b d1 sub edx, ecx
00197 8b ca mov ecx, edx
00199 c7 44 24 30 14
01 00 00 mov DWORD PTR [rsp+48], 276 ; 00000114H
001a1 89 44 24 28 mov DWORD PTR [rsp+40], eax
001a5 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
001a9 44 8b 4d 0c mov r9d, DWORD PTR rect$6[rbp+4]
001ad 44 8b 45 08 mov r8d, DWORD PTR rect$6[rbp]
001b1 33 d2 xor edx, edx
001b3 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
001ba 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
001c1 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
$LN4@glfwSetWin:
; 1805 : rect.left, rect.top,
; 1806 : rect.right - rect.left, rect.bottom - rect.top,
; 1807 : SWP_NOCOPYBITS | SWP_NOACTIVATE | SWP_NOZORDER);
; 1808 : }
; 1809 :
; 1810 : return;
001c7 e9 4c 03 00 00 jmp $LN1@glfwSetWin
$LN2@glfwSetWin:
; 1811 : }
; 1812 :
; 1813 : if (window->monitor)
001cc 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
001d3 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
001d8 74 0c je SHORT $LN8@glfwSetWin
; 1814 : releaseMonitor(window);
001da 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
001e1 e8 00 00 00 00 call releaseMonitor
$LN8@glfwSetWin:
; 1815 :
; 1816 : _glfwInputWindowMonitor(window, monitor);
001e6 48 8b 95 38 02
00 00 mov rdx, QWORD PTR monitor$[rbp]
001ed 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
001f4 e8 00 00 00 00 call _glfwInputWindowMonitor
; 1817 :
; 1818 : if (window->monitor)
001f9 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
00200 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
00205 0f 84 13 01 00
00 je $LN9@glfwSetWin
; 1819 : {
; 1820 : MONITORINFO mi = { sizeof(mi) };
0020b c7 45 38 28 00
00 00 mov DWORD PTR mi$7[rbp], 40 ; 00000028H
00212 48 8d 45 3c lea rax, QWORD PTR mi$7[rbp+4]
00216 48 8b f8 mov rdi, rax
00219 33 c0 xor eax, eax
0021b b9 24 00 00 00 mov ecx, 36 ; 00000024H
00220 f3 aa rep stosb
; 1821 : UINT flags = SWP_SHOWWINDOW | SWP_NOACTIVATE | SWP_NOCOPYBITS;
00222 c7 45 74 50 01
00 00 mov DWORD PTR flags$8[rbp], 336 ; 00000150H
; 1822 :
; 1823 : if (window->decorated)
00229 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
00230 83 78 0c 00 cmp DWORD PTR [rax+12], 0
00234 74 75 je SHORT $LN11@glfwSetWin
; 1824 : {
; 1825 : DWORD style = GetWindowLongW(window->win32.handle, GWL_STYLE);
00236 ba f0 ff ff ff mov edx, -16
0023b 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
00242 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00249 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
0024f 89 85 94 00 00
00 mov DWORD PTR style$9[rbp], eax
; 1826 : style &= ~WS_OVERLAPPEDWINDOW;
00255 8b 85 94 00 00
00 mov eax, DWORD PTR style$9[rbp]
0025b 25 ff ff 30 ff and eax, -13565953 ; ff30ffffH
00260 89 85 94 00 00
00 mov DWORD PTR style$9[rbp], eax
; 1827 : style |= getWindowStyle(window);
00266 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
0026d e8 00 00 00 00 call getWindowStyle
00272 8b 8d 94 00 00
00 mov ecx, DWORD PTR style$9[rbp]
00278 0b c8 or ecx, eax
0027a 8b c1 mov eax, ecx
0027c 89 85 94 00 00
00 mov DWORD PTR style$9[rbp], eax
; 1828 : SetWindowLongW(window->win32.handle, GWL_STYLE, style);
00282 44 8b 85 94 00
00 00 mov r8d, DWORD PTR style$9[rbp]
00289 ba f0 ff ff ff mov edx, -16
0028e 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
00295 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0029c ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
; 1829 : flags |= SWP_FRAMECHANGED;
002a2 8b 45 74 mov eax, DWORD PTR flags$8[rbp]
002a5 83 c8 20 or eax, 32 ; 00000020H
002a8 89 45 74 mov DWORD PTR flags$8[rbp], eax
$LN11@glfwSetWin:
; 1830 : }
; 1831 :
; 1832 : acquireMonitor(window);
002ab 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
002b2 e8 00 00 00 00 call acquireMonitor
; 1833 :
; 1834 : GetMonitorInfoW(window->monitor->win32.handle, &mi);
002b7 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
002be 48 8b 40 50 mov rax, QWORD PTR [rax+80]
002c2 48 8d 55 38 lea rdx, QWORD PTR mi$7[rbp]
002c6 48 8b 88 00 01
00 00 mov rcx, QWORD PTR [rax+256]
002cd ff 15 00 00 00
00 call QWORD PTR __imp_GetMonitorInfoW
; 1835 : SetWindowPos(window->win32.handle, HWND_TOPMOST,
002d3 8b 45 40 mov eax, DWORD PTR mi$7[rbp+8]
002d6 8b 4d 48 mov ecx, DWORD PTR mi$7[rbp+16]
002d9 2b c8 sub ecx, eax
002db 8b c1 mov eax, ecx
002dd 8b 4d 3c mov ecx, DWORD PTR mi$7[rbp+4]
002e0 8b 55 44 mov edx, DWORD PTR mi$7[rbp+12]
002e3 2b d1 sub edx, ecx
002e5 8b ca mov ecx, edx
002e7 8b 55 74 mov edx, DWORD PTR flags$8[rbp]
002ea 89 54 24 30 mov DWORD PTR [rsp+48], edx
002ee 89 44 24 28 mov DWORD PTR [rsp+40], eax
002f2 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
002f6 44 8b 4d 40 mov r9d, DWORD PTR mi$7[rbp+8]
002fa 44 8b 45 3c mov r8d, DWORD PTR mi$7[rbp+4]
002fe 48 c7 c2 ff ff
ff ff mov rdx, -1
00305 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
0030c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00313 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
; 1836 : mi.rcMonitor.left,
; 1837 : mi.rcMonitor.top,
; 1838 : mi.rcMonitor.right - mi.rcMonitor.left,
; 1839 : mi.rcMonitor.bottom - mi.rcMonitor.top,
; 1840 : flags);
; 1841 : }
00319 e9 fa 01 00 00 jmp $LN10@glfwSetWin
$LN9@glfwSetWin:
; 1842 : else
; 1843 : {
; 1844 : HWND after;
; 1845 : RECT rect = { xpos, ypos, xpos + width, ypos + height };
0031e 8b 85 40 02 00
00 mov eax, DWORD PTR xpos$[rbp]
00324 89 85 d8 00 00
00 mov DWORD PTR rect$11[rbp], eax
0032a 8b 85 48 02 00
00 mov eax, DWORD PTR ypos$[rbp]
00330 89 85 dc 00 00
00 mov DWORD PTR rect$11[rbp+4], eax
00336 8b 85 50 02 00
00 mov eax, DWORD PTR width$[rbp]
0033c 8b 8d 40 02 00
00 mov ecx, DWORD PTR xpos$[rbp]
00342 03 c8 add ecx, eax
00344 8b c1 mov eax, ecx
00346 89 85 e0 00 00
00 mov DWORD PTR rect$11[rbp+8], eax
0034c 8b 85 58 02 00
00 mov eax, DWORD PTR height$[rbp]
00352 8b 8d 48 02 00
00 mov ecx, DWORD PTR ypos$[rbp]
00358 03 c8 add ecx, eax
0035a 8b c1 mov eax, ecx
0035c 89 85 e4 00 00
00 mov DWORD PTR rect$11[rbp+12], eax
; 1846 : DWORD style = GetWindowLongW(window->win32.handle, GWL_STYLE);
00362 ba f0 ff ff ff mov edx, -16
00367 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
0036e 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00375 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowLongW
0037b 89 85 04 01 00
00 mov DWORD PTR style$12[rbp], eax
; 1847 : UINT flags = SWP_NOACTIVATE | SWP_NOCOPYBITS;
00381 c7 85 24 01 00
00 10 01 00 00 mov DWORD PTR flags$13[rbp], 272 ; 00000110H
; 1848 :
; 1849 : if (window->decorated)
0038b 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
00392 83 78 0c 00 cmp DWORD PTR [rax+12], 0
00396 74 5b je SHORT $LN12@glfwSetWin
; 1850 : {
; 1851 : style &= ~WS_POPUP;
00398 8b 85 04 01 00
00 mov eax, DWORD PTR style$12[rbp]
0039e 0f ba f0 1f btr eax, 31
003a2 89 85 04 01 00
00 mov DWORD PTR style$12[rbp], eax
; 1852 : style |= getWindowStyle(window);
003a8 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
003af e8 00 00 00 00 call getWindowStyle
003b4 8b 8d 04 01 00
00 mov ecx, DWORD PTR style$12[rbp]
003ba 0b c8 or ecx, eax
003bc 8b c1 mov eax, ecx
003be 89 85 04 01 00
00 mov DWORD PTR style$12[rbp], eax
; 1853 : SetWindowLongW(window->win32.handle, GWL_STYLE, style);
003c4 44 8b 85 04 01
00 00 mov r8d, DWORD PTR style$12[rbp]
003cb ba f0 ff ff ff mov edx, -16
003d0 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
003d7 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
003de ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowLongW
; 1854 :
; 1855 : flags |= SWP_FRAMECHANGED;
003e4 8b 85 24 01 00
00 mov eax, DWORD PTR flags$13[rbp]
003ea 83 c8 20 or eax, 32 ; 00000020H
003ed 89 85 24 01 00
00 mov DWORD PTR flags$13[rbp], eax
$LN12@glfwSetWin:
; 1856 : }
; 1857 :
; 1858 : if (window->floating)
003f3 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
003fa 83 78 14 00 cmp DWORD PTR [rax+20], 0
003fe 74 0d je SHORT $LN13@glfwSetWin
; 1859 : after = HWND_TOPMOST;
00400 48 c7 85 b8 00
00 00 ff ff ff
ff mov QWORD PTR after$10[rbp], -1
0040b eb 0b jmp SHORT $LN14@glfwSetWin
$LN13@glfwSetWin:
; 1860 : else
; 1861 : after = HWND_NOTOPMOST;
0040d 48 c7 85 b8 00
00 00 fe ff ff
ff mov QWORD PTR after$10[rbp], -2
$LN14@glfwSetWin:
; 1862 :
; 1863 : if (_glfwIsWindows10Version1607OrGreaterWin32())
00418 66 b9 39 38 mov cx, 14393 ; 00003839H
0041c e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
00421 85 c0 test eax, eax
00423 74 5f je SHORT $LN15@glfwSetWin
; 1864 : {
; 1865 : AdjustWindowRectExForDpi(&rect, getWindowStyle(window),
00425 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
0042c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00433 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
00439 89 85 f4 01 00
00 mov DWORD PTR tv234[rbp], eax
0043f 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00446 e8 00 00 00 00 call getWindowExStyle
0044b 89 85 f8 01 00
00 mov DWORD PTR tv238[rbp], eax
00451 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
00458 e8 00 00 00 00 call getWindowStyle
0045d 8b 8d f4 01 00
00 mov ecx, DWORD PTR tv234[rbp]
00463 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
00467 8b 8d f8 01 00
00 mov ecx, DWORD PTR tv238[rbp]
0046d 44 8b c9 mov r9d, ecx
00470 45 33 c0 xor r8d, r8d
00473 8b d0 mov edx, eax
00475 48 8d 8d d8 00
00 00 lea rcx, QWORD PTR rect$11[rbp]
0047c ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1866 : FALSE, getWindowExStyle(window),
; 1867 : GetDpiForWindow(window->win32.handle));
; 1868 : }
00482 eb 39 jmp SHORT $LN16@glfwSetWin
$LN15@glfwSetWin:
; 1869 : else
; 1870 : {
; 1871 : AdjustWindowRectEx(&rect, getWindowStyle(window),
00484 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
0048b e8 00 00 00 00 call getWindowExStyle
00490 89 85 f4 01 00
00 mov DWORD PTR tv246[rbp], eax
00496 48 8b 8d 30 02
00 00 mov rcx, QWORD PTR window$[rbp]
0049d e8 00 00 00 00 call getWindowStyle
004a2 8b 8d f4 01 00
00 mov ecx, DWORD PTR tv246[rbp]
004a8 44 8b c9 mov r9d, ecx
004ab 45 33 c0 xor r8d, r8d
004ae 8b d0 mov edx, eax
004b0 48 8d 8d d8 00
00 00 lea rcx, QWORD PTR rect$11[rbp]
004b7 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN16@glfwSetWin:
; 1872 : FALSE, getWindowExStyle(window));
; 1873 : }
; 1874 :
; 1875 : SetWindowPos(window->win32.handle, after,
004bd 8b 85 dc 00 00
00 mov eax, DWORD PTR rect$11[rbp+4]
004c3 8b 8d e4 00 00
00 mov ecx, DWORD PTR rect$11[rbp+12]
004c9 2b c8 sub ecx, eax
004cb 8b c1 mov eax, ecx
004cd 8b 8d d8 00 00
00 mov ecx, DWORD PTR rect$11[rbp]
004d3 8b 95 e0 00 00
00 mov edx, DWORD PTR rect$11[rbp+8]
004d9 2b d1 sub edx, ecx
004db 8b ca mov ecx, edx
004dd 8b 95 24 01 00
00 mov edx, DWORD PTR flags$13[rbp]
004e3 89 54 24 30 mov DWORD PTR [rsp+48], edx
004e7 89 44 24 28 mov DWORD PTR [rsp+40], eax
004eb 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
004ef 44 8b 8d dc 00
00 00 mov r9d, DWORD PTR rect$11[rbp+4]
004f6 44 8b 85 d8 00
00 00 mov r8d, DWORD PTR rect$11[rbp]
004fd 48 8b 95 b8 00
00 00 mov rdx, QWORD PTR after$10[rbp]
00504 48 8b 85 30 02
00 00 mov rax, QWORD PTR window$[rbp]
0050b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00512 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
$LN10@glfwSetWin:
$LN1@glfwSetWin:
; 1876 : rect.left, rect.top,
; 1877 : rect.right - rect.left, rect.bottom - rect.top,
; 1878 : flags);
; 1879 : }
; 1880 : }
00518 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
0051c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetWindowMonitorWin32$rtcFrameData
00523 e8 00 00 00 00 call _RTC_CheckStackVars
00528 48 8b 8d 00 02
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0052f 48 33 cd xor rcx, rbp
00532 e8 00 00 00 00 call __security_check_cookie
00537 48 8d a5 18 02
00 00 lea rsp, QWORD PTR [rbp+536]
0053e 5f pop rdi
0053f 5d pop rbp
00540 c3 ret 0
_glfwSetWindowMonitorWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwFocusWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwFocusWindowWin32 PROC ; COMDAT
; 1766 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1767 : BringWindowToTop(window->win32.handle);
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0002d ff 15 00 00 00
00 call QWORD PTR __imp_BringWindowToTop
; 1768 : SetForegroundWindow(window->win32.handle);
00033 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0003a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00041 ff 15 00 00 00
00 call QWORD PTR __imp_SetForegroundWindow
; 1769 : SetFocus(window->win32.handle);
00047 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0004e 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00055 ff 15 00 00 00
00 call QWORD PTR __imp_SetFocus
; 1770 : }
0005b 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00062 5f pop rdi
00063 5d pop rbp
00064 c3 ret 0
_glfwFocusWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwRequestWindowAttentionWin32
_TEXT SEGMENT
window$ = 224
_glfwRequestWindowAttentionWin32 PROC ; COMDAT
; 1761 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1762 : FlashWindow(window->win32.handle, TRUE);
0001f ba 01 00 00 00 mov edx, 1
00024 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0002b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00032 ff 15 00 00 00
00 call QWORD PTR __imp_FlashWindow
; 1763 : }
00038 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003f 5f pop rdi
00040 5d pop rbp
00041 c3 ret 0
_glfwRequestWindowAttentionWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwHideWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwHideWindowWin32 PROC ; COMDAT
; 1756 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1757 : ShowWindow(window->win32.handle, SW_HIDE);
0001f 33 d2 xor edx, edx
00021 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00028 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0002f ff 15 00 00 00
00 call QWORD PTR __imp_ShowWindow
; 1758 : }
00035 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003c 5f pop rdi
0003d 5d pop rbp
0003e c3 ret 0
_glfwHideWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwShowWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwShowWindowWin32 PROC ; COMDAT
; 1751 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1752 : ShowWindow(window->win32.handle, SW_SHOWNA);
0001f ba 08 00 00 00 mov edx, 8
00024 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0002b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00032 ff 15 00 00 00
00 call QWORD PTR __imp_ShowWindow
; 1753 : }
00038 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003f 5f pop rdi
00040 5d pop rbp
00041 c3 ret 0
_glfwShowWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwMaximizeWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwMaximizeWindowWin32 PROC ; COMDAT
; 1743 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1744 : if (IsWindowVisible(window->win32.handle))
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0002d ff 15 00 00 00
00 call QWORD PTR __imp_IsWindowVisible
00033 85 c0 test eax, eax
00035 74 1b je SHORT $LN2@glfwMaximi
; 1745 : ShowWindow(window->win32.handle, SW_MAXIMIZE);
00037 ba 03 00 00 00 mov edx, 3
0003c 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00043 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0004a ff 15 00 00 00
00 call QWORD PTR __imp_ShowWindow
00050 eb 0c jmp SHORT $LN3@glfwMaximi
$LN2@glfwMaximi:
; 1746 : else
; 1747 : maximizeWindowManually(window);
00052 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00059 e8 00 00 00 00 call maximizeWindowManually
$LN3@glfwMaximi:
; 1748 : }
0005e 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00065 5f pop rdi
00066 5d pop rbp
00067 c3 ret 0
_glfwMaximizeWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwRestoreWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwRestoreWindowWin32 PROC ; COMDAT
; 1738 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1739 : ShowWindow(window->win32.handle, SW_RESTORE);
0001f ba 09 00 00 00 mov edx, 9
00024 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0002b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00032 ff 15 00 00 00
00 call QWORD PTR __imp_ShowWindow
; 1740 : }
00038 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003f 5f pop rdi
00040 5d pop rbp
00041 c3 ret 0
_glfwRestoreWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwIconifyWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwIconifyWindowWin32 PROC ; COMDAT
; 1733 : {
$LN3:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1734 : ShowWindow(window->win32.handle, SW_MINIMIZE);
0001f ba 06 00 00 00 mov edx, 6
00024 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0002b 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00032 ff 15 00 00 00
00 call QWORD PTR __imp_ShowWindow
; 1735 : }
00038 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0003f 5f pop rdi
00040 5d pop rbp
00041 c3 ret 0
_glfwIconifyWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetWindowContentScaleWin32
_TEXT SEGMENT
handle$ = 8
window$ = 256
xscale$ = 264
yscale$ = 272
_glfwGetWindowContentScaleWin32 PROC ; COMDAT
; 1726 : {
$LN3:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1727 : const HANDLE handle = MonitorFromWindow(window->win32.handle,
00029 ba 02 00 00 00 mov edx, 2
0002e 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00035 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0003c ff 15 00 00 00
00 call QWORD PTR __imp_MonitorFromWindow
00042 48 89 45 08 mov QWORD PTR handle$[rbp], rax
; 1728 : MONITOR_DEFAULTTONEAREST);
; 1729 : _glfwGetHMONITORContentScaleWin32(handle, xscale, yscale);
00046 4c 8b 85 10 01
00 00 mov r8, QWORD PTR yscale$[rbp]
0004d 48 8b 95 08 01
00 00 mov rdx, QWORD PTR xscale$[rbp]
00054 48 8b 4d 08 mov rcx, QWORD PTR handle$[rbp]
00058 e8 00 00 00 00 call _glfwGetHMONITORContentScaleWin32
; 1730 : }
0005d 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00064 5f pop rdi
00065 5d pop rbp
00066 c3 ret 0
_glfwGetWindowContentScaleWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetWindowFrameSizeWin32
_TEXT SEGMENT
rect$ = 8
width$ = 52
height$ = 84
tv88 = 292
tv76 = 292
tv80 = 296
__$ArrayPad$ = 304
window$ = 352
left$ = 360
top$ = 368
right$ = 376
bottom$ = 384
_glfwGetWindowFrameSizeWin32 PROC ; COMDAT
; 1696 : {
$LN9:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec 78 01
00 00 sub rsp, 376 ; 00000178H
0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00022 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00027 b9 22 00 00 00 mov ecx, 34 ; 00000022H
0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00031 f3 ab rep stosd
00033 48 8b 8c 24 98
01 00 00 mov rcx, QWORD PTR [rsp+408]
0003b 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00042 48 33 c5 xor rax, rbp
00045 48 89 85 30 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1697 : RECT rect;
; 1698 : int width, height;
; 1699 :
; 1700 : _glfwGetWindowSizeWin32(window, &width, &height);
00058 4c 8d 45 54 lea r8, QWORD PTR height$[rbp]
0005c 48 8d 55 34 lea rdx, QWORD PTR width$[rbp]
00060 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR window$[rbp]
00067 e8 00 00 00 00 call _glfwGetWindowSizeWin32
; 1701 : SetRect(&rect, 0, 0, width, height);
0006c 8b 45 54 mov eax, DWORD PTR height$[rbp]
0006f 89 44 24 20 mov DWORD PTR [rsp+32], eax
00073 44 8b 4d 34 mov r9d, DWORD PTR width$[rbp]
00077 45 33 c0 xor r8d, r8d
0007a 33 d2 xor edx, edx
0007c 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
00080 ff 15 00 00 00
00 call QWORD PTR __imp_SetRect
; 1702 :
; 1703 : if (_glfwIsWindows10Version1607OrGreaterWin32())
00086 66 b9 39 38 mov cx, 14393 ; 00003839H
0008a e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
0008f 85 c0 test eax, eax
00091 74 5c je SHORT $LN2@glfwGetWin
; 1704 : {
; 1705 : AdjustWindowRectExForDpi(&rect, getWindowStyle(window),
00093 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
0009a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000a1 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
000a7 89 85 24 01 00
00 mov DWORD PTR tv76[rbp], eax
000ad 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR window$[rbp]
000b4 e8 00 00 00 00 call getWindowExStyle
000b9 89 85 28 01 00
00 mov DWORD PTR tv80[rbp], eax
000bf 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR window$[rbp]
000c6 e8 00 00 00 00 call getWindowStyle
000cb 8b 8d 24 01 00
00 mov ecx, DWORD PTR tv76[rbp]
000d1 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
000d5 8b 8d 28 01 00
00 mov ecx, DWORD PTR tv80[rbp]
000db 44 8b c9 mov r9d, ecx
000de 45 33 c0 xor r8d, r8d
000e1 8b d0 mov edx, eax
000e3 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
000e7 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1706 : FALSE, getWindowExStyle(window),
; 1707 : GetDpiForWindow(window->win32.handle));
; 1708 : }
000ed eb 36 jmp SHORT $LN3@glfwGetWin
$LN2@glfwGetWin:
; 1709 : else
; 1710 : {
; 1711 : AdjustWindowRectEx(&rect, getWindowStyle(window),
000ef 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR window$[rbp]
000f6 e8 00 00 00 00 call getWindowExStyle
000fb 89 85 24 01 00
00 mov DWORD PTR tv88[rbp], eax
00101 48 8b 8d 60 01
00 00 mov rcx, QWORD PTR window$[rbp]
00108 e8 00 00 00 00 call getWindowStyle
0010d 8b 8d 24 01 00
00 mov ecx, DWORD PTR tv88[rbp]
00113 44 8b c9 mov r9d, ecx
00116 45 33 c0 xor r8d, r8d
00119 8b d0 mov edx, eax
0011b 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
0011f ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN3@glfwGetWin:
; 1712 : FALSE, getWindowExStyle(window));
; 1713 : }
; 1714 :
; 1715 : if (left)
00125 48 83 bd 68 01
00 00 00 cmp QWORD PTR left$[rbp], 0
0012d 74 0e je SHORT $LN4@glfwGetWin
; 1716 : *left = -rect.left;
0012f 8b 45 08 mov eax, DWORD PTR rect$[rbp]
00132 f7 d8 neg eax
00134 48 8b 8d 68 01
00 00 mov rcx, QWORD PTR left$[rbp]
0013b 89 01 mov DWORD PTR [rcx], eax
$LN4@glfwGetWin:
; 1717 : if (top)
0013d 48 83 bd 70 01
00 00 00 cmp QWORD PTR top$[rbp], 0
00145 74 0e je SHORT $LN5@glfwGetWin
; 1718 : *top = -rect.top;
00147 8b 45 0c mov eax, DWORD PTR rect$[rbp+4]
0014a f7 d8 neg eax
0014c 48 8b 8d 70 01
00 00 mov rcx, QWORD PTR top$[rbp]
00153 89 01 mov DWORD PTR [rcx], eax
$LN5@glfwGetWin:
; 1719 : if (right)
00155 48 83 bd 78 01
00 00 00 cmp QWORD PTR right$[rbp], 0
0015d 74 13 je SHORT $LN6@glfwGetWin
; 1720 : *right = rect.right - width;
0015f 8b 45 34 mov eax, DWORD PTR width$[rbp]
00162 8b 4d 10 mov ecx, DWORD PTR rect$[rbp+8]
00165 2b c8 sub ecx, eax
00167 8b c1 mov eax, ecx
00169 48 8b 8d 78 01
00 00 mov rcx, QWORD PTR right$[rbp]
00170 89 01 mov DWORD PTR [rcx], eax
$LN6@glfwGetWin:
; 1721 : if (bottom)
00172 48 83 bd 80 01
00 00 00 cmp QWORD PTR bottom$[rbp], 0
0017a 74 13 je SHORT $LN7@glfwGetWin
; 1722 : *bottom = rect.bottom - height;
0017c 8b 45 54 mov eax, DWORD PTR height$[rbp]
0017f 8b 4d 14 mov ecx, DWORD PTR rect$[rbp+12]
00182 2b c8 sub ecx, eax
00184 8b c1 mov eax, ecx
00186 48 8b 8d 80 01
00 00 mov rcx, QWORD PTR bottom$[rbp]
0018d 89 01 mov DWORD PTR [rcx], eax
$LN7@glfwGetWin:
; 1723 : }
0018f 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00193 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwGetWindowFrameSizeWin32$rtcFrameData
0019a e8 00 00 00 00 call _RTC_CheckStackVars
0019f 48 8b 8d 30 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
001a6 48 33 cd xor rcx, rbp
001a9 e8 00 00 00 00 call __security_check_cookie
001ae 48 8d a5 48 01
00 00 lea rsp, QWORD PTR [rbp+328]
001b5 5f pop rdi
001b6 5d pop rbp
001b7 c3 ret 0
_glfwGetWindowFrameSizeWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetFramebufferSizeWin32
_TEXT SEGMENT
window$ = 224
width$ = 232
height$ = 240
_glfwGetFramebufferSizeWin32 PROC ; COMDAT
; 1689 : {
$LN3:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1690 : _glfwGetWindowSizeWin32(window, width, height);
00029 4c 8b 85 f0 00
00 00 mov r8, QWORD PTR height$[rbp]
00030 48 8b 95 e8 00
00 00 mov rdx, QWORD PTR width$[rbp]
00037 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0003e e8 00 00 00 00 call _glfwGetWindowSizeWin32
; 1691 : }
00043 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0004a 5f pop rdi
0004b 5d pop rbp
0004c c3 ret 0
_glfwGetFramebufferSizeWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowAspectRatioWin32
_TEXT SEGMENT
area$ = 8
__$ArrayPad$ = 232
window$ = 272
numer$ = 280
denom$ = 288
_glfwSetWindowAspectRatioWin32 PROC ; COMDAT
; 1674 : {
$LN5:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 89 54 24 10 mov DWORD PTR [rsp+16], edx
00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000e 55 push rbp
0000f 57 push rdi
00010 48 81 ec 28 01
00 00 sub rsp, 296 ; 00000128H
00017 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001c 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00021 b9 0e 00 00 00 mov ecx, 14
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 48
01 00 00 mov rcx, QWORD PTR [rsp+328]
00035 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 e8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1675 : RECT area;
; 1676 :
; 1677 : if (numer == GLFW_DONT_CARE || denom == GLFW_DONT_CARE)
00052 83 bd 18 01 00
00 ff cmp DWORD PTR numer$[rbp], -1
00059 74 09 je SHORT $LN3@glfwSetWin
0005b 83 bd 20 01 00
00 ff cmp DWORD PTR denom$[rbp], -1
00062 75 02 jne SHORT $LN2@glfwSetWin
$LN3@glfwSetWin:
; 1678 : return;
00064 eb 6b jmp SHORT $LN1@glfwSetWin
$LN2@glfwSetWin:
; 1679 :
; 1680 : GetWindowRect(window->win32.handle, &area);
00066 48 8d 55 08 lea rdx, QWORD PTR area$[rbp]
0006a 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
00071 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00078 ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowRect
; 1681 : applyAspectRatio(window, WMSZ_BOTTOMRIGHT, &area);
0007e 4c 8d 45 08 lea r8, QWORD PTR area$[rbp]
00082 ba 08 00 00 00 mov edx, 8
00087 48 8b 8d 10 01
00 00 mov rcx, QWORD PTR window$[rbp]
0008e e8 00 00 00 00 call applyAspectRatio
; 1682 : MoveWindow(window->win32.handle,
00093 8b 45 0c mov eax, DWORD PTR area$[rbp+4]
00096 8b 4d 14 mov ecx, DWORD PTR area$[rbp+12]
00099 2b c8 sub ecx, eax
0009b 8b c1 mov eax, ecx
0009d 8b 4d 08 mov ecx, DWORD PTR area$[rbp]
000a0 8b 55 10 mov edx, DWORD PTR area$[rbp+8]
000a3 2b d1 sub edx, ecx
000a5 8b ca mov ecx, edx
000a7 c7 44 24 28 01
00 00 00 mov DWORD PTR [rsp+40], 1
000af 89 44 24 20 mov DWORD PTR [rsp+32], eax
000b3 44 8b c9 mov r9d, ecx
000b6 44 8b 45 0c mov r8d, DWORD PTR area$[rbp+4]
000ba 8b 55 08 mov edx, DWORD PTR area$[rbp]
000bd 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
000c4 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000cb ff 15 00 00 00
00 call QWORD PTR __imp_MoveWindow
$LN1@glfwSetWin:
; 1683 : area.left, area.top,
; 1684 : area.right - area.left,
; 1685 : area.bottom - area.top, TRUE);
; 1686 : }
000d1 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
000d5 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetWindowAspectRatioWin32$rtcFrameData
000dc e8 00 00 00 00 call _RTC_CheckStackVars
000e1 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000e8 48 33 cd xor rcx, rbp
000eb e8 00 00 00 00 call __security_check_cookie
000f0 48 8d a5 f8 00
00 00 lea rsp, QWORD PTR [rbp+248]
000f7 5f pop rdi
000f8 5d pop rbp
000f9 c3 ret 0
_glfwSetWindowAspectRatioWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowSizeLimitsWin32
_TEXT SEGMENT
area$ = 8
__$ArrayPad$ = 232
window$ = 272
minwidth$ = 280
minheight$ = 288
maxwidth$ = 296
maxheight$ = 304
_glfwSetWindowSizeLimitsWin32 PROC ; COMDAT
; 1657 : {
$LN6:
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx
0000e 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00013 55 push rbp
00014 57 push rdi
00015 48 81 ec 28 01
00 00 sub rsp, 296 ; 00000128H
0001c 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00021 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00026 b9 0e 00 00 00 mov ecx, 14
0002b b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00030 f3 ab rep stosd
00032 48 8b 8c 24 48
01 00 00 mov rcx, QWORD PTR [rsp+328]
0003a 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00041 48 33 c5 xor rax, rbp
00044 48 89 85 e8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004b 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00052 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1658 : RECT area;
; 1659 :
; 1660 : if ((minwidth == GLFW_DONT_CARE || minheight == GLFW_DONT_CARE) &&
00057 83 bd 18 01 00
00 ff cmp DWORD PTR minwidth$[rbp], -1
0005e 74 09 je SHORT $LN3@glfwSetWin
00060 83 bd 20 01 00
00 ff cmp DWORD PTR minheight$[rbp], -1
00067 75 14 jne SHORT $LN2@glfwSetWin
$LN3@glfwSetWin:
00069 83 bd 28 01 00
00 ff cmp DWORD PTR maxwidth$[rbp], -1
00070 74 09 je SHORT $LN4@glfwSetWin
00072 83 bd 30 01 00
00 ff cmp DWORD PTR maxheight$[rbp], -1
00079 75 02 jne SHORT $LN2@glfwSetWin
$LN4@glfwSetWin:
; 1661 : (maxwidth == GLFW_DONT_CARE || maxheight == GLFW_DONT_CARE))
; 1662 : {
; 1663 : return;
0007b eb 56 jmp SHORT $LN1@glfwSetWin
$LN2@glfwSetWin:
; 1664 : }
; 1665 :
; 1666 : GetWindowRect(window->win32.handle, &area);
0007d 48 8d 55 08 lea rdx, QWORD PTR area$[rbp]
00081 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
00088 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0008f ff 15 00 00 00
00 call QWORD PTR __imp_GetWindowRect
; 1667 : MoveWindow(window->win32.handle,
00095 8b 45 0c mov eax, DWORD PTR area$[rbp+4]
00098 8b 4d 14 mov ecx, DWORD PTR area$[rbp+12]
0009b 2b c8 sub ecx, eax
0009d 8b c1 mov eax, ecx
0009f 8b 4d 08 mov ecx, DWORD PTR area$[rbp]
000a2 8b 55 10 mov edx, DWORD PTR area$[rbp+8]
000a5 2b d1 sub edx, ecx
000a7 8b ca mov ecx, edx
000a9 c7 44 24 28 01
00 00 00 mov DWORD PTR [rsp+40], 1
000b1 89 44 24 20 mov DWORD PTR [rsp+32], eax
000b5 44 8b c9 mov r9d, ecx
000b8 44 8b 45 0c mov r8d, DWORD PTR area$[rbp+4]
000bc 8b 55 08 mov edx, DWORD PTR area$[rbp]
000bf 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
000c6 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000cd ff 15 00 00 00
00 call QWORD PTR __imp_MoveWindow
$LN1@glfwSetWin:
; 1668 : area.left, area.top,
; 1669 : area.right - area.left,
; 1670 : area.bottom - area.top, TRUE);
; 1671 : }
000d3 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
000d7 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetWindowSizeLimitsWin32$rtcFrameData
000de e8 00 00 00 00 call _RTC_CheckStackVars
000e3 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000ea 48 33 cd xor rcx, rbp
000ed e8 00 00 00 00 call __security_check_cookie
000f2 48 8d a5 f8 00
00 00 lea rsp, QWORD PTR [rbp+248]
000f9 5f pop rdi
000fa 5d pop rbp
000fb c3 ret 0
_glfwSetWindowSizeLimitsWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowSizeWin32
_TEXT SEGMENT
rect$4 = 8
tv87 = 228
tv75 = 228
tv79 = 232
__$ArrayPad$ = 240
window$ = 288
width$ = 296
height$ = 304
_glfwSetWindowSizeWin32 PROC ; COMDAT
; 1623 : {
$LN8:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 89 54 24 10 mov DWORD PTR [rsp+16], edx
00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000e 55 push rbp
0000f 57 push rdi
00010 48 81 ec 48 01
00 00 sub rsp, 328 ; 00000148H
00017 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
0001c 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00021 b9 12 00 00 00 mov ecx, 18
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 68
01 00 00 mov rcx, QWORD PTR [rsp+360]
00035 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 f0 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1624 : if (window->monitor)
00052 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00059 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
0005e 74 38 je SHORT $LN2@glfwSetWin
; 1625 : {
; 1626 : if (window->monitor->window == window)
00060 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00067 48 8b 40 50 mov rax, QWORD PTR [rax+80]
0006b 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
00072 48 39 88 90 00
00 00 cmp QWORD PTR [rax+144], rcx
00079 75 18 jne SHORT $LN4@glfwSetWin
; 1627 : {
; 1628 : acquireMonitor(window);
0007b 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
00082 e8 00 00 00 00 call acquireMonitor
; 1629 : fitToMonitor(window);
00087 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
0008e e8 00 00 00 00 call fitToMonitor
$LN4@glfwSetWin:
; 1630 : }
; 1631 : }
00093 e9 ff 00 00 00 jmp $LN3@glfwSetWin
$LN2@glfwSetWin:
; 1632 : else
; 1633 : {
; 1634 : RECT rect = { 0, 0, width, height };
00098 c7 45 08 00 00
00 00 mov DWORD PTR rect$4[rbp], 0
0009f c7 45 0c 00 00
00 00 mov DWORD PTR rect$4[rbp+4], 0
000a6 8b 85 28 01 00
00 mov eax, DWORD PTR width$[rbp]
000ac 89 45 10 mov DWORD PTR rect$4[rbp+8], eax
000af 8b 85 30 01 00
00 mov eax, DWORD PTR height$[rbp]
000b5 89 45 14 mov DWORD PTR rect$4[rbp+12], eax
; 1635 :
; 1636 : if (_glfwIsWindows10Version1607OrGreaterWin32())
000b8 66 b9 39 38 mov cx, 14393 ; 00003839H
000bc e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
000c1 85 c0 test eax, eax
000c3 74 5c je SHORT $LN5@glfwSetWin
; 1637 : {
; 1638 : AdjustWindowRectExForDpi(&rect, getWindowStyle(window),
000c5 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000cc 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000d3 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
000d9 89 85 e4 00 00
00 mov DWORD PTR tv75[rbp], eax
000df 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000e6 e8 00 00 00 00 call getWindowExStyle
000eb 89 85 e8 00 00
00 mov DWORD PTR tv79[rbp], eax
000f1 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000f8 e8 00 00 00 00 call getWindowStyle
000fd 8b 8d e4 00 00
00 mov ecx, DWORD PTR tv75[rbp]
00103 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
00107 8b 8d e8 00 00
00 mov ecx, DWORD PTR tv79[rbp]
0010d 44 8b c9 mov r9d, ecx
00110 45 33 c0 xor r8d, r8d
00113 8b d0 mov edx, eax
00115 48 8d 4d 08 lea rcx, QWORD PTR rect$4[rbp]
00119 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1639 : FALSE, getWindowExStyle(window),
; 1640 : GetDpiForWindow(window->win32.handle));
; 1641 : }
0011f eb 36 jmp SHORT $LN6@glfwSetWin
$LN5@glfwSetWin:
; 1642 : else
; 1643 : {
; 1644 : AdjustWindowRectEx(&rect, getWindowStyle(window),
00121 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
00128 e8 00 00 00 00 call getWindowExStyle
0012d 89 85 e4 00 00
00 mov DWORD PTR tv87[rbp], eax
00133 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
0013a e8 00 00 00 00 call getWindowStyle
0013f 8b 8d e4 00 00
00 mov ecx, DWORD PTR tv87[rbp]
00145 44 8b c9 mov r9d, ecx
00148 45 33 c0 xor r8d, r8d
0014b 8b d0 mov edx, eax
0014d 48 8d 4d 08 lea rcx, QWORD PTR rect$4[rbp]
00151 ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN6@glfwSetWin:
; 1645 : FALSE, getWindowExStyle(window));
; 1646 : }
; 1647 :
; 1648 : SetWindowPos(window->win32.handle, HWND_TOP,
00157 8b 45 0c mov eax, DWORD PTR rect$4[rbp+4]
0015a 8b 4d 14 mov ecx, DWORD PTR rect$4[rbp+12]
0015d 2b c8 sub ecx, eax
0015f 8b c1 mov eax, ecx
00161 8b 4d 08 mov ecx, DWORD PTR rect$4[rbp]
00164 8b 55 10 mov edx, DWORD PTR rect$4[rbp+8]
00167 2b d1 sub edx, ecx
00169 8b ca mov ecx, edx
0016b c7 44 24 30 16
02 00 00 mov DWORD PTR [rsp+48], 534 ; 00000216H
00173 89 44 24 28 mov DWORD PTR [rsp+40], eax
00177 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
0017b 45 33 c9 xor r9d, r9d
0017e 45 33 c0 xor r8d, r8d
00181 33 d2 xor edx, edx
00183 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
0018a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00191 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
$LN3@glfwSetWin:
; 1649 : 0, 0, rect.right - rect.left, rect.bottom - rect.top,
; 1650 : SWP_NOACTIVATE | SWP_NOOWNERZORDER | SWP_NOMOVE | SWP_NOZORDER);
; 1651 : }
; 1652 : }
00197 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
0019b 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetWindowSizeWin32$rtcFrameData
001a2 e8 00 00 00 00 call _RTC_CheckStackVars
001a7 48 8b 8d f0 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
001ae 48 33 cd xor rcx, rbp
001b1 e8 00 00 00 00 call __security_check_cookie
001b6 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
001bd 5f pop rdi
001be 5d pop rbp
001bf c3 ret 0
_glfwSetWindowSizeWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetWindowSizeWin32
_TEXT SEGMENT
area$ = 8
__$ArrayPad$ = 232
window$ = 272
width$ = 280
height$ = 288
_glfwGetWindowSizeWin32 PROC ; COMDAT
; 1612 : {
$LN5:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 18 01
00 00 sub rsp, 280 ; 00000118H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00022 b9 0e 00 00 00 mov ecx, 14
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002c f3 ab rep stosd
0002e 48 8b 8c 24 38
01 00 00 mov rcx, QWORD PTR [rsp+312]
00036 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 e8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00047 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1613 : RECT area;
; 1614 : GetClientRect(window->win32.handle, &area);
00053 48 8d 55 08 lea rdx, QWORD PTR area$[rbp]
00057 48 8b 85 10 01
00 00 mov rax, QWORD PTR window$[rbp]
0005e 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00065 ff 15 00 00 00
00 call QWORD PTR __imp_GetClientRect
; 1615 :
; 1616 : if (width)
0006b 48 83 bd 18 01
00 00 00 cmp QWORD PTR width$[rbp], 0
00073 74 0c je SHORT $LN2@glfwGetWin
; 1617 : *width = area.right;
00075 48 8b 85 18 01
00 00 mov rax, QWORD PTR width$[rbp]
0007c 8b 4d 10 mov ecx, DWORD PTR area$[rbp+8]
0007f 89 08 mov DWORD PTR [rax], ecx
$LN2@glfwGetWin:
; 1618 : if (height)
00081 48 83 bd 20 01
00 00 00 cmp QWORD PTR height$[rbp], 0
00089 74 0c je SHORT $LN3@glfwGetWin
; 1619 : *height = area.bottom;
0008b 48 8b 85 20 01
00 00 mov rax, QWORD PTR height$[rbp]
00092 8b 4d 14 mov ecx, DWORD PTR area$[rbp+12]
00095 89 08 mov DWORD PTR [rax], ecx
$LN3@glfwGetWin:
; 1620 : }
00097 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
0009b 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwGetWindowSizeWin32$rtcFrameData
000a2 e8 00 00 00 00 call _RTC_CheckStackVars
000a7 48 8b 8d e8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000ae 48 33 cd xor rcx, rbp
000b1 e8 00 00 00 00 call __security_check_cookie
000b6 48 8d a5 f8 00
00 00 lea rsp, QWORD PTR [rbp+248]
000bd 5f pop rdi
000be 5d pop rbp
000bf c3 ret 0
_glfwGetWindowSizeWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowPosWin32
_TEXT SEGMENT
rect$ = 8
tv80 = 228
tv68 = 228
tv72 = 232
__$ArrayPad$ = 240
window$ = 288
xpos$ = 296
ypos$ = 304
_glfwSetWindowPosWin32 PROC ; COMDAT
; 1592 : {
$LN5:
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
00005 89 54 24 10 mov DWORD PTR [rsp+16], edx
00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000e 55 push rbp
0000f 57 push rdi
00010 48 81 ec 48 01
00 00 sub rsp, 328 ; 00000148H
00017 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64]
0001c 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64]
00021 b9 12 00 00 00 mov ecx, 18
00026 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002b f3 ab rep stosd
0002d 48 8b 8c 24 68
01 00 00 mov rcx, QWORD PTR [rsp+360]
00035 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003c 48 33 c5 xor rax, rbp
0003f 48 89 85 f0 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00046 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1593 : RECT rect = { xpos, ypos, xpos, ypos };
00052 8b 85 28 01 00
00 mov eax, DWORD PTR xpos$[rbp]
00058 89 45 08 mov DWORD PTR rect$[rbp], eax
0005b 8b 85 30 01 00
00 mov eax, DWORD PTR ypos$[rbp]
00061 89 45 0c mov DWORD PTR rect$[rbp+4], eax
00064 8b 85 28 01 00
00 mov eax, DWORD PTR xpos$[rbp]
0006a 89 45 10 mov DWORD PTR rect$[rbp+8], eax
0006d 8b 85 30 01 00
00 mov eax, DWORD PTR ypos$[rbp]
00073 89 45 14 mov DWORD PTR rect$[rbp+12], eax
; 1594 :
; 1595 : if (_glfwIsWindows10Version1607OrGreaterWin32())
00076 66 b9 39 38 mov cx, 14393 ; 00003839H
0007a e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32
0007f 85 c0 test eax, eax
00081 74 5c je SHORT $LN2@glfwSetWin
; 1596 : {
; 1597 : AdjustWindowRectExForDpi(&rect, getWindowStyle(window),
00083 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
0008a 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00091 ff 15 c0 29 00
00 call QWORD PTR _glfw+10688
00097 89 85 e4 00 00
00 mov DWORD PTR tv68[rbp], eax
0009d 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000a4 e8 00 00 00 00 call getWindowExStyle
000a9 89 85 e8 00 00
00 mov DWORD PTR tv72[rbp], eax
000af 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000b6 e8 00 00 00 00 call getWindowStyle
000bb 8b 8d e4 00 00
00 mov ecx, DWORD PTR tv68[rbp]
000c1 89 4c 24 20 mov DWORD PTR [rsp+32], ecx
000c5 8b 8d e8 00 00
00 mov ecx, DWORD PTR tv72[rbp]
000cb 44 8b c9 mov r9d, ecx
000ce 45 33 c0 xor r8d, r8d
000d1 8b d0 mov edx, eax
000d3 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
000d7 ff 15 c8 29 00
00 call QWORD PTR _glfw+10696
; 1598 : FALSE, getWindowExStyle(window),
; 1599 : GetDpiForWindow(window->win32.handle));
; 1600 : }
000dd eb 36 jmp SHORT $LN3@glfwSetWin
$LN2@glfwSetWin:
; 1601 : else
; 1602 : {
; 1603 : AdjustWindowRectEx(&rect, getWindowStyle(window),
000df 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000e6 e8 00 00 00 00 call getWindowExStyle
000eb 89 85 e4 00 00
00 mov DWORD PTR tv80[rbp], eax
000f1 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000f8 e8 00 00 00 00 call getWindowStyle
000fd 8b 8d e4 00 00
00 mov ecx, DWORD PTR tv80[rbp]
00103 44 8b c9 mov r9d, ecx
00106 45 33 c0 xor r8d, r8d
00109 8b d0 mov edx, eax
0010b 48 8d 4d 08 lea rcx, QWORD PTR rect$[rbp]
0010f ff 15 00 00 00
00 call QWORD PTR __imp_AdjustWindowRectEx
$LN3@glfwSetWin:
; 1604 : FALSE, getWindowExStyle(window));
; 1605 : }
; 1606 :
; 1607 : SetWindowPos(window->win32.handle, NULL, rect.left, rect.top, 0, 0,
00115 c7 44 24 30 15
00 00 00 mov DWORD PTR [rsp+48], 21
0011d c7 44 24 28 00
00 00 00 mov DWORD PTR [rsp+40], 0
00125 c7 44 24 20 00
00 00 00 mov DWORD PTR [rsp+32], 0
0012d 44 8b 4d 0c mov r9d, DWORD PTR rect$[rbp+4]
00131 44 8b 45 08 mov r8d, DWORD PTR rect$[rbp]
00135 33 d2 xor edx, edx
00137 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
0013e 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00145 ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowPos
; 1608 : SWP_NOACTIVATE | SWP_NOZORDER | SWP_NOSIZE);
; 1609 : }
0014b 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64]
0014f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwSetWindowPosWin32$rtcFrameData
00156 e8 00 00 00 00 call _RTC_CheckStackVars
0015b 48 8b 8d f0 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00162 48 33 cd xor rcx, rbp
00165 e8 00 00 00 00 call __security_check_cookie
0016a 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
00171 5f pop rdi
00172 5d pop rbp
00173 c3 ret 0
_glfwSetWindowPosWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwGetWindowPosWin32
_TEXT SEGMENT
pos$ = 8
__$ArrayPad$ = 216
window$ = 256
xpos$ = 264
ypos$ = 272
_glfwGetWindowPosWin32 PROC ; COMDAT
; 1581 : {
$LN5:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00022 b9 0a 00 00 00 mov ecx, 10
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002c f3 ab rep stosd
0002e 48 8b 8c 24 28
01 00 00 mov rcx, QWORD PTR [rsp+296]
00036 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 d8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00047 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1582 : POINT pos = { 0, 0 };
00053 c7 45 08 00 00
00 00 mov DWORD PTR pos$[rbp], 0
0005a c7 45 0c 00 00
00 00 mov DWORD PTR pos$[rbp+4], 0
; 1583 : ClientToScreen(window->win32.handle, &pos);
00061 48 8d 55 08 lea rdx, QWORD PTR pos$[rbp]
00065 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
0006c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00073 ff 15 00 00 00
00 call QWORD PTR __imp_ClientToScreen
; 1584 :
; 1585 : if (xpos)
00079 48 83 bd 08 01
00 00 00 cmp QWORD PTR xpos$[rbp], 0
00081 74 0c je SHORT $LN2@glfwGetWin
; 1586 : *xpos = pos.x;
00083 48 8b 85 08 01
00 00 mov rax, QWORD PTR xpos$[rbp]
0008a 8b 4d 08 mov ecx, DWORD PTR pos$[rbp]
0008d 89 08 mov DWORD PTR [rax], ecx
$LN2@glfwGetWin:
; 1587 : if (ypos)
0008f 48 83 bd 10 01
00 00 00 cmp QWORD PTR ypos$[rbp], 0
00097 74 0c je SHORT $LN3@glfwGetWin
; 1588 : *ypos = pos.y;
00099 48 8b 85 10 01
00 00 mov rax, QWORD PTR ypos$[rbp]
000a0 8b 4d 0c mov ecx, DWORD PTR pos$[rbp+4]
000a3 89 08 mov DWORD PTR [rax], ecx
$LN3@glfwGetWin:
; 1589 : }
000a5 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
000a9 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwGetWindowPosWin32$rtcFrameData
000b0 e8 00 00 00 00 call _RTC_CheckStackVars
000b5 48 8b 8d d8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
000bc 48 33 cd xor rcx, rbp
000bf e8 00 00 00 00 call __security_check_cookie
000c4 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
000cb 5f pop rdi
000cc 5d pop rbp
000cd c3 ret 0
_glfwGetWindowPosWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowIconWin32
_TEXT SEGMENT
bigIcon$ = 8
smallIcon$ = 40
bigImage$1 = 72
smallImage$2 = 104
tv75 = 308
tv66 = 308
window$ = 352
count$ = 360
images$ = 368
_glfwSetWindowIconWin32 PROC ; COMDAT
; 1543 : {
$LN8:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 89 54 24 10 mov DWORD PTR [rsp+16], edx
00009 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000e 55 push rbp
0000f 57 push rdi
00010 48 81 ec 68 01
00 00 sub rsp, 360 ; 00000168H
00017 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00023 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1544 : HICON bigIcon = NULL, smallIcon = NULL;
00028 48 c7 45 08 00
00 00 00 mov QWORD PTR bigIcon$[rbp], 0
00030 48 c7 45 28 00
00 00 00 mov QWORD PTR smallIcon$[rbp], 0
; 1545 :
; 1546 : if (count)
00038 83 bd 68 01 00
00 00 cmp DWORD PTR count$[rbp], 0
0003f 0f 84 ae 00 00
00 je $LN2@glfwSetWin
; 1547 : {
; 1548 : const GLFWimage* bigImage = chooseImage(count, images,
00045 b9 0c 00 00 00 mov ecx, 12
0004a ff 15 00 00 00
00 call QWORD PTR __imp_GetSystemMetrics
00050 89 85 34 01 00
00 mov DWORD PTR tv66[rbp], eax
00056 b9 0b 00 00 00 mov ecx, 11
0005b ff 15 00 00 00
00 call QWORD PTR __imp_GetSystemMetrics
00061 8b 8d 34 01 00
00 mov ecx, DWORD PTR tv66[rbp]
00067 44 8b c9 mov r9d, ecx
0006a 44 8b c0 mov r8d, eax
0006d 48 8b 95 70 01
00 00 mov rdx, QWORD PTR images$[rbp]
00074 8b 8d 68 01 00
00 mov ecx, DWORD PTR count$[rbp]
0007a e8 00 00 00 00 call chooseImage
0007f 48 89 45 48 mov QWORD PTR bigImage$1[rbp], rax
; 1549 : GetSystemMetrics(SM_CXICON),
; 1550 : GetSystemMetrics(SM_CYICON));
; 1551 : const GLFWimage* smallImage = chooseImage(count, images,
00083 b9 32 00 00 00 mov ecx, 50 ; 00000032H
00088 ff 15 00 00 00
00 call QWORD PTR __imp_GetSystemMetrics
0008e 89 85 34 01 00
00 mov DWORD PTR tv75[rbp], eax
00094 b9 31 00 00 00 mov ecx, 49 ; 00000031H
00099 ff 15 00 00 00
00 call QWORD PTR __imp_GetSystemMetrics
0009f 8b 8d 34 01 00
00 mov ecx, DWORD PTR tv75[rbp]
000a5 44 8b c9 mov r9d, ecx
000a8 44 8b c0 mov r8d, eax
000ab 48 8b 95 70 01
00 00 mov rdx, QWORD PTR images$[rbp]
000b2 8b 8d 68 01 00
00 mov ecx, DWORD PTR count$[rbp]
000b8 e8 00 00 00 00 call chooseImage
000bd 48 89 45 68 mov QWORD PTR smallImage$2[rbp], rax
; 1552 : GetSystemMetrics(SM_CXSMICON),
; 1553 : GetSystemMetrics(SM_CYSMICON));
; 1554 :
; 1555 : bigIcon = createIcon(bigImage, 0, 0, GLFW_TRUE);
000c1 41 b9 01 00 00
00 mov r9d, 1
000c7 45 33 c0 xor r8d, r8d
000ca 33 d2 xor edx, edx
000cc 48 8b 4d 48 mov rcx, QWORD PTR bigImage$1[rbp]
000d0 e8 00 00 00 00 call createIcon
000d5 48 89 45 08 mov QWORD PTR bigIcon$[rbp], rax
; 1556 : smallIcon = createIcon(smallImage, 0, 0, GLFW_TRUE);
000d9 41 b9 01 00 00
00 mov r9d, 1
000df 45 33 c0 xor r8d, r8d
000e2 33 d2 xor edx, edx
000e4 48 8b 4d 68 mov rcx, QWORD PTR smallImage$2[rbp]
000e8 e8 00 00 00 00 call createIcon
000ed 48 89 45 28 mov QWORD PTR smallIcon$[rbp], rax
; 1557 : }
000f1 eb 3a jmp SHORT $LN3@glfwSetWin
$LN2@glfwSetWin:
; 1558 : else
; 1559 : {
; 1560 : bigIcon = (HICON) GetClassLongPtrW(window->win32.handle, GCLP_HICON);
000f3 ba f2 ff ff ff mov edx, -14
000f8 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
000ff 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00106 ff 15 00 00 00
00 call QWORD PTR __imp_GetClassLongPtrW
0010c 48 89 45 08 mov QWORD PTR bigIcon$[rbp], rax
; 1561 : smallIcon = (HICON) GetClassLongPtrW(window->win32.handle, GCLP_HICONSM);
00110 ba de ff ff ff mov edx, -34 ; ffffffffffffffdeH
00115 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
0011c 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
00123 ff 15 00 00 00
00 call QWORD PTR __imp_GetClassLongPtrW
00129 48 89 45 28 mov QWORD PTR smallIcon$[rbp], rax
$LN3@glfwSetWin:
; 1562 : }
; 1563 :
; 1564 : SendMessageW(window->win32.handle, WM_SETICON, ICON_BIG, (LPARAM) bigIcon);
0012d 4c 8b 4d 08 mov r9, QWORD PTR bigIcon$[rbp]
00131 41 b8 01 00 00
00 mov r8d, 1
00137 ba 80 00 00 00 mov edx, 128 ; 00000080H
0013c 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
00143 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0014a ff 15 00 00 00
00 call QWORD PTR __imp_SendMessageW
; 1565 : SendMessageW(window->win32.handle, WM_SETICON, ICON_SMALL, (LPARAM) smallIcon);
00150 4c 8b 4d 28 mov r9, QWORD PTR smallIcon$[rbp]
00154 45 33 c0 xor r8d, r8d
00157 ba 80 00 00 00 mov edx, 128 ; 00000080H
0015c 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
00163 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0016a ff 15 00 00 00
00 call QWORD PTR __imp_SendMessageW
; 1566 :
; 1567 : if (window->win32.bigIcon)
00170 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
00177 48 83 b8 60 03
00 00 00 cmp QWORD PTR [rax+864], 0
0017f 74 14 je SHORT $LN4@glfwSetWin
; 1568 : DestroyIcon(window->win32.bigIcon);
00181 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
00188 48 8b 88 60 03
00 00 mov rcx, QWORD PTR [rax+864]
0018f ff 15 00 00 00
00 call QWORD PTR __imp_DestroyIcon
$LN4@glfwSetWin:
; 1569 :
; 1570 : if (window->win32.smallIcon)
00195 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
0019c 48 83 b8 68 03
00 00 00 cmp QWORD PTR [rax+872], 0
001a4 74 14 je SHORT $LN5@glfwSetWin
; 1571 : DestroyIcon(window->win32.smallIcon);
001a6 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
001ad 48 8b 88 68 03
00 00 mov rcx, QWORD PTR [rax+872]
001b4 ff 15 00 00 00
00 call QWORD PTR __imp_DestroyIcon
$LN5@glfwSetWin:
; 1572 :
; 1573 : if (count)
001ba 83 bd 68 01 00
00 00 cmp DWORD PTR count$[rbp], 0
001c1 74 24 je SHORT $LN6@glfwSetWin
; 1574 : {
; 1575 : window->win32.bigIcon = bigIcon;
001c3 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
001ca 48 8b 4d 08 mov rcx, QWORD PTR bigIcon$[rbp]
001ce 48 89 88 60 03
00 00 mov QWORD PTR [rax+864], rcx
; 1576 : window->win32.smallIcon = smallIcon;
001d5 48 8b 85 60 01
00 00 mov rax, QWORD PTR window$[rbp]
001dc 48 8b 4d 28 mov rcx, QWORD PTR smallIcon$[rbp]
001e0 48 89 88 68 03
00 00 mov QWORD PTR [rax+872], rcx
$LN6@glfwSetWin:
; 1577 : }
; 1578 : }
001e7 48 8d a5 48 01
00 00 lea rsp, QWORD PTR [rbp+328]
001ee 5f pop rdi
001ef 5d pop rbp
001f0 c3 ret 0
_glfwSetWindowIconWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwSetWindowTitleWin32
_TEXT SEGMENT
wideTitle$ = 8
window$ = 256
title$ = 264
_glfwSetWindowTitleWin32 PROC ; COMDAT
; 1533 : {
$LN4:
00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000a 55 push rbp
0000b 57 push rdi
0000c 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00018 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1534 : WCHAR* wideTitle = _glfwCreateWideStringFromUTF8Win32(title);
00024 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR title$[rbp]
0002b e8 00 00 00 00 call _glfwCreateWideStringFromUTF8Win32
00030 48 89 45 08 mov QWORD PTR wideTitle$[rbp], rax
; 1535 : if (!wideTitle)
00034 48 83 7d 08 00 cmp QWORD PTR wideTitle$[rbp], 0
00039 75 02 jne SHORT $LN2@glfwSetWin
; 1536 : return;
0003b eb 21 jmp SHORT $LN1@glfwSetWin
$LN2@glfwSetWin:
; 1537 :
; 1538 : SetWindowTextW(window->win32.handle, wideTitle);
0003d 48 8b 55 08 mov rdx, QWORD PTR wideTitle$[rbp]
00041 48 8b 85 00 01
00 00 mov rax, QWORD PTR window$[rbp]
00048 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
0004f ff 15 00 00 00
00 call QWORD PTR __imp_SetWindowTextW
; 1539 : _glfw_free(wideTitle);
00055 48 8b 4d 08 mov rcx, QWORD PTR wideTitle$[rbp]
00059 e8 00 00 00 00 call _glfw_free
$LN1@glfwSetWin:
; 1540 : }
0005e 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00065 5f pop rdi
00066 5d pop rbp
00067 c3 ret 0
_glfwSetWindowTitleWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwDestroyWindowWin32
_TEXT SEGMENT
window$ = 224
_glfwDestroyWindowWin32 PROC ; COMDAT
; 1505 : {
$LN10:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1506 : if (window->monitor)
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
0002b 74 0c je SHORT $LN2@glfwDestro
; 1507 : releaseMonitor(window);
0002d 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00034 e8 00 00 00 00 call releaseMonitor
$LN2@glfwDestro:
; 1508 :
; 1509 : if (window->context.destroy)
00039 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00040 48 83 b8 78 02
00 00 00 cmp QWORD PTR [rax+632], 0
00048 74 14 je SHORT $LN3@glfwDestro
; 1510 : window->context.destroy(window);
0004a 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00051 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00058 ff 90 78 02 00
00 call QWORD PTR [rax+632]
$LN3@glfwDestro:
; 1511 :
; 1512 : if (_glfw.win32.disabledCursorWindow == window)
0005e 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00065 48 39 05 48 29
00 00 cmp QWORD PTR _glfw+10568, rax
0006c 75 0c jne SHORT $LN4@glfwDestro
; 1513 : enableCursor(window);
0006e 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00075 e8 00 00 00 00 call enableCursor
$LN4@glfwDestro:
; 1514 :
; 1515 : if (_glfw.win32.capturedCursorWindow == window)
0007a 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00081 48 39 05 50 29
00 00 cmp QWORD PTR _glfw+10576, rax
00088 75 05 jne SHORT $LN5@glfwDestro
; 1516 : releaseCursor();
0008a e8 00 00 00 00 call releaseCursor
$LN5@glfwDestro:
; 1517 :
; 1518 : if (window->win32.handle)
0008f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00096 48 83 b8 58 03
00 00 00 cmp QWORD PTR [rax+856], 0
0009e 74 41 je SHORT $LN6@glfwDestro
; 1519 : {
; 1520 : RemovePropW(window->win32.handle, L"GLFW");
000a0 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_19JBPKICJI@?$AAG?$AAL?$AAF?$AAW@
000a7 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000ae 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000b5 ff 15 00 00 00
00 call QWORD PTR __imp_RemovePropW
; 1521 : DestroyWindow(window->win32.handle);
000bb 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000c2 48 8b 88 58 03
00 00 mov rcx, QWORD PTR [rax+856]
000c9 ff 15 00 00 00
00 call QWORD PTR __imp_DestroyWindow
; 1522 : window->win32.handle = NULL;
000cf 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000d6 48 c7 80 58 03
00 00 00 00 00
00 mov QWORD PTR [rax+856], 0
$LN6@glfwDestro:
; 1523 : }
; 1524 :
; 1525 : if (window->win32.bigIcon)
000e1 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000e8 48 83 b8 60 03
00 00 00 cmp QWORD PTR [rax+864], 0
000f0 74 14 je SHORT $LN7@glfwDestro
; 1526 : DestroyIcon(window->win32.bigIcon);
000f2 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000f9 48 8b 88 60 03
00 00 mov rcx, QWORD PTR [rax+864]
00100 ff 15 00 00 00
00 call QWORD PTR __imp_DestroyIcon
$LN7@glfwDestro:
; 1527 :
; 1528 : if (window->win32.smallIcon)
00106 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0010d 48 83 b8 68 03
00 00 00 cmp QWORD PTR [rax+872], 0
00115 74 14 je SHORT $LN8@glfwDestro
; 1529 : DestroyIcon(window->win32.smallIcon);
00117 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0011e 48 8b 88 68 03
00 00 mov rcx, QWORD PTR [rax+872]
00125 ff 15 00 00 00
00 call QWORD PTR __imp_DestroyIcon
$LN8@glfwDestro:
; 1530 : }
0012b 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00132 5f pop rdi
00133 5d pop rbp
00134 c3 ret 0
_glfwDestroyWindowWin32 ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\win32_window.c
; COMDAT _glfwCreateWindowWin32
_TEXT SEGMENT
window$ = 224
wndconfig$ = 232
ctxconfig$ = 240
fbconfig$ = 248
_glfwCreateWindowWin32 PROC ; COMDAT
; 1446 : {
$LN23:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00022 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__6A44CDE5_win32_window@c
00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 1447 : if (!createNativeWindow(window, wndconfig, fbconfig))
0002e 4c 8b 85 f8 00
00 00 mov r8, QWORD PTR fbconfig$[rbp]
00035 48 8b 95 e8 00
00 00 mov rdx, QWORD PTR wndconfig$[rbp]
0003c 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00043 e8 00 00 00 00 call createNativeWindow
00048 85 c0 test eax, eax
0004a 75 07 jne SHORT $LN2@glfwCreate
; 1448 : return GLFW_FALSE;
0004c 33 c0 xor eax, eax
0004e e9 b2 01 00 00 jmp $LN1@glfwCreate
$LN2@glfwCreate:
; 1449 :
; 1450 : if (ctxconfig->client != GLFW_NO_API)
00053 48 8b 85 f0 00
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0005a 83 38 00 cmp DWORD PTR [rax], 0
0005d 0f 84 f4 00 00
00 je $LN3@glfwCreate
; 1451 : {
; 1452 : if (ctxconfig->source == GLFW_NATIVE_CONTEXT_API)
00063 48 8b 85 f0 00
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0006a 81 78 04 01 60
03 00 cmp DWORD PTR [rax+4], 221185 ; 00036001H
00071 75 3a jne SHORT $LN4@glfwCreate
; 1453 : {
; 1454 : if (!_glfwInitWGL())
00073 e8 00 00 00 00 call _glfwInitWGL
00078 85 c0 test eax, eax
0007a 75 07 jne SHORT $LN6@glfwCreate
; 1455 : return GLFW_FALSE;
0007c 33 c0 xor eax, eax
0007e e9 82 01 00 00 jmp $LN1@glfwCreate
$LN6@glfwCreate:
; 1456 : if (!_glfwCreateContextWGL(window, ctxconfig, fbconfig))
00083 4c 8b 85 f8 00
00 00 mov r8, QWORD PTR fbconfig$[rbp]
0008a 48 8b 95 f0 00
00 00 mov rdx, QWORD PTR ctxconfig$[rbp]
00091 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00098 e8 00 00 00 00 call _glfwCreateContextWGL
0009d 85 c0 test eax, eax
0009f 75 07 jne SHORT $LN7@glfwCreate
; 1457 : return GLFW_FALSE;
000a1 33 c0 xor eax, eax
000a3 e9 5d 01 00 00 jmp $LN1@glfwCreate
$LN7@glfwCreate:
; 1458 : }
000a8 e9 8c 00 00 00 jmp $LN5@glfwCreate
$LN4@glfwCreate:
; 1459 : else if (ctxconfig->source == GLFW_EGL_CONTEXT_API)
000ad 48 8b 85 f0 00
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
000b4 81 78 04 02 60
03 00 cmp DWORD PTR [rax+4], 221186 ; 00036002H
000bb 75 37 jne SHORT $LN8@glfwCreate
; 1460 : {
; 1461 : if (!_glfwInitEGL())
000bd e8 00 00 00 00 call _glfwInitEGL
000c2 85 c0 test eax, eax
000c4 75 07 jne SHORT $LN10@glfwCreate
; 1462 : return GLFW_FALSE;
000c6 33 c0 xor eax, eax
000c8 e9 38 01 00 00 jmp $LN1@glfwCreate
$LN10@glfwCreate:
; 1463 : if (!_glfwCreateContextEGL(window, ctxconfig, fbconfig))
000cd 4c 8b 85 f8 00
00 00 mov r8, QWORD PTR fbconfig$[rbp]
000d4 48 8b 95 f0 00
00 00 mov rdx, QWORD PTR ctxconfig$[rbp]
000db 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
000e2 e8 00 00 00 00 call _glfwCreateContextEGL
000e7 85 c0 test eax, eax
000e9 75 07 jne SHORT $LN11@glfwCreate
; 1464 : return GLFW_FALSE;
000eb 33 c0 xor eax, eax
000ed e9 13 01 00 00 jmp $LN1@glfwCreate
$LN11@glfwCreate:
; 1465 : }
000f2 eb 45 jmp SHORT $LN9@glfwCreate
$LN8@glfwCreate:
; 1466 : else if (ctxconfig->source == GLFW_OSMESA_CONTEXT_API)
000f4 48 8b 85 f0 00
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
000fb 81 78 04 03 60
03 00 cmp DWORD PTR [rax+4], 221187 ; 00036003H
00102 75 35 jne SHORT $LN12@glfwCreate
; 1467 : {
; 1468 : if (!_glfwInitOSMesa())
00104 e8 00 00 00 00 call _glfwInitOSMesa
00109 85 c0 test eax, eax
0010b 75 07 jne SHORT $LN13@glfwCreate
; 1469 : return GLFW_FALSE;
0010d 33 c0 xor eax, eax
0010f e9 f1 00 00 00 jmp $LN1@glfwCreate
$LN13@glfwCreate:
; 1470 : if (!_glfwCreateContextOSMesa(window, ctxconfig, fbconfig))
00114 4c 8b 85 f8 00
00 00 mov r8, QWORD PTR fbconfig$[rbp]
0011b 48 8b 95 f0 00
00 00 mov rdx, QWORD PTR ctxconfig$[rbp]
00122 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00129 e8 00 00 00 00 call _glfwCreateContextOSMesa
0012e 85 c0 test eax, eax
00130 75 07 jne SHORT $LN14@glfwCreate
; 1471 : return GLFW_FALSE;
00132 33 c0 xor eax, eax
00134 e9 cc 00 00 00 jmp $LN1@glfwCreate
$LN14@glfwCreate:
$LN12@glfwCreate:
$LN9@glfwCreate:
$LN5@glfwCreate:
; 1472 : }
; 1473 :
; 1474 : if (!_glfwRefreshContextAttribs(window, ctxconfig))
00139 48 8b 95 f0 00
00 00 mov rdx, QWORD PTR ctxconfig$[rbp]
00140 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00147 e8 00 00 00 00 call _glfwRefreshContextAttribs
0014c 85 c0 test eax, eax
0014e 75 07 jne SHORT $LN15@glfwCreate
; 1475 : return GLFW_FALSE;
00150 33 c0 xor eax, eax
00152 e9 ae 00 00 00 jmp $LN1@glfwCreate
$LN15@glfwCreate:
$LN3@glfwCreate:
; 1476 : }
; 1477 :
; 1478 : if (wndconfig->mousePassthrough)
00157 48 8b 85 e8 00
00 00 mov rax, QWORD PTR wndconfig$[rbp]
0015e 83 78 3c 00 cmp DWORD PTR [rax+60], 0
00162 74 11 je SHORT $LN16@glfwCreate
; 1479 : _glfwSetWindowMousePassthroughWin32(window, GLFW_TRUE);
00164 ba 01 00 00 00 mov edx, 1
00169 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00170 e8 00 00 00 00 call _glfwSetWindowMousePassthroughWin32
$LN16@glfwCreate:
; 1480 :
; 1481 : if (window->monitor)
00175 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0017c 48 83 78 50 00 cmp QWORD PTR [rax+80], 0
00181 74 4b je SHORT $LN17@glfwCreate
; 1482 : {
; 1483 : _glfwShowWindowWin32(window);
00183 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
0018a e8 00 00 00 00 call _glfwShowWindowWin32
; 1484 : _glfwFocusWindowWin32(window);
0018f 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
00196 e8 00 00 00 00 call _glfwFocusWindowWin32
; 1485 : acquireMonitor(window);
0019b 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
001a2 e8 00 00 00 00 call acquireMonitor
; 1486 : fitToMonitor(window);
001a7 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
001ae e8 00 00 00 00 call fitToMonitor
; 1487 :
; 1488 : if (wndconfig->centerCursor)
001b3 48 8b 85 e8 00
00 00 mov rax, QWORD PTR wndconfig$[rbp]
001ba 83 78 34 00 cmp DWORD PTR [rax+52], 0
001be 74 0c je SHORT $LN19@glfwCreate
; 1489 : _glfwCenterCursorInContentArea(window);
001c0 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
001c7 e8 00 00 00 00 call _glfwCenterCursorInContentArea
$LN19@glfwCreate:
; 1490 : }
001cc eb 32 jmp SHORT $LN18@glfwCreate
$LN17@glfwCreate:
; 1491 : else
; 1492 : {
; 1493 : if (wndconfig->visible)
001ce 48 8b 85 e8 00
00 00 mov rax, QWORD PTR wndconfig$[rbp]
001d5 83 78 1c 00 cmp DWORD PTR [rax+28], 0
001d9 74 25 je SHORT $LN20@glfwCreate
; 1494 : {
; 1495 : _glfwShowWindowWin32(window);
001db 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
001e2 e8 00 00 00 00 call _glfwShowWindowWin32
; 1496 : if (wndconfig->focused)
001e7 48 8b 85 e8 00
00 00 mov rax, QWORD PTR wndconfig$[rbp]
001ee 83 78 24 00 cmp DWORD PTR [rax+36], 0
001f2 74 0c je SHORT $LN21@glfwCreate
; 1497 : _glfwFocusWindowWin32(window);
001f4 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR window$[rbp]
001fb e8 00 00 00 00 call _glfwFocusWindowWin32
$LN21@glfwCreate:
$LN20@glfwCreate:
$LN18@glfwCreate:
; 1498 : }
; 1499 : }
; 1500 :
; 1501 : return GLFW_TRUE;
00200 b8 01 00 00 00 mov eax, 1
$LN1@glfwCreate:
; 1502 : }
00205 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
0020c 5f pop rdi
0020d 5d pop rbp
0020e c3 ret 0
_glfwCreateWindowWin32 ENDP
_TEXT ENDS
END