; 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 __C017AD33_win32_init@c DB 01H msvcjmc ENDS CONST SEGMENT _glfw_GUID_DEVINTERFACE_HID DD 04d1e55b2H DW 0f16fH DW 011cfH DB 088H DB 0cbH DB 00H DB 011H DB 011H DB 00H DB 00H DB 030H CONST ENDS PUBLIC _glfwConnectWin32 PUBLIC _glfwInitWin32 PUBLIC _glfwTerminateWin32 PUBLIC _glfwCreateWideStringFromUTF8Win32 PUBLIC _glfwCreateUTF8FromWideStringWin32 PUBLIC _glfwIsWindowsVersionOrGreaterWin32 PUBLIC _glfwIsWindows10BuildOrGreaterWin32 PUBLIC _glfwInputErrorWin32 PUBLIC _glfwUpdateKeyNamesWin32 PUBLIC __JustMyCode_Default PUBLIC ??_C@_0CM@IALNOPFK@Win32?3?5Failed?5to?5retrieve?5own?5m@ ; `string' PUBLIC ??_C@_0L@GMPLCCII@user32?4dll@ ; `string' PUBLIC ??_C@_0CB@HHJIGJHK@Win32?3?5Failed?5to?5load?5user32?4dl@ ; `string' PUBLIC ??_C@_0BD@ENICNPLM@SetProcessDPIAware@ ; `string' PUBLIC ??_C@_0BM@OCGPLDNC@ChangeWindowMessageFilterEx@ ; `string' PUBLIC ??_C@_0BK@NKEDGNNN@EnableNonClientDpiScaling@ ; `string' PUBLIC ??_C@_0BO@LHMLBOLK@SetProcessDpiAwarenessContext@ ; `string' PUBLIC ??_C@_0BA@LGGPEDOH@GetDpiForWindow@ ; `string' PUBLIC ??_C@_0BJ@MBAAGFCG@AdjustWindowRectExForDpi@ ; `string' PUBLIC ??_C@_0BH@HPKNFNCE@GetSystemMetricsForDpi@ ; `string' PUBLIC ??_C@_0M@ONOEDIJO@dinput8?4dll@ ; `string' PUBLIC ??_C@_0BD@IJCCAMHG@DirectInput8Create@ ; `string' PUBLIC ??_C@_0O@LNFLKCMF@xinput1_4?4dll@ ; `string' PUBLIC ??_C@_0O@KAFOJCHN@xinput1_3?4dll@ ; `string' PUBLIC ??_C@_0BA@GHGALGFD@xinput9_1_0?4dll@ ; `string' PUBLIC ??_C@_0O@GLACEBNI@xinput1_2?4dll@ ; `string' PUBLIC ??_C@_0O@ONJGDDHG@xinput1_1?4dll@ ; `string' PUBLIC ??_C@_0BG@ELBNFOBA@XInputGetCapabilities@ ; `string' PUBLIC ??_C@_0P@FCCEJHCC@XInputGetState@ ; `string' PUBLIC ??_C@_0L@FACOJKPJ@dwmapi?4dll@ ; `string' PUBLIC ??_C@_0BI@KJPLJBHH@DwmIsCompositionEnabled@ ; `string' PUBLIC ??_C@_08PEMNBIMD@DwmFlush@ ; `string' PUBLIC ??_C@_0BK@HMMKMEOH@DwmEnableBlurBehindWindow@ ; `string' PUBLIC ??_C@_0BI@LDADLCB@DwmGetColorizationColor@ ; `string' PUBLIC ??_C@_0L@DMFDIJCG@shcore?4dll@ ; `string' PUBLIC ??_C@_0BH@DGFLCCMF@SetProcessDpiAwareness@ ; `string' PUBLIC ??_C@_0BB@MAMHPNNC@GetDpiForMonitor@ ; `string' PUBLIC ??_C@_09FLKFJBLM@ntdll?4dll@ ; `string' PUBLIC ??_C@_0BF@LOGLPPDD@RtlVerifyVersionInfo@ ; `string' PUBLIC ??_C@_1BK@OPNBOCAD@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA?5?$AAH?$AAe?$AAl?$AAp?$AAe?$AAr@ ; `string' PUBLIC ??_C@_0CO@CNHHHABN@Win32?3?5Failed?5to?5register?5helpe@ ; `string' PUBLIC ??_C@_1CI@MPNNJFCJ@?$AAG?$AAL?$AAF?$AAW?$AA?5?$AAm?$AAe?$AAs?$AAs?$AAa?$AAg?$AAe?$AA?5?$AAw?$AAi@ ; `string' PUBLIC ??_C@_0CG@LDJIJKNI@Win32?3?5Failed?5to?5create?5helper?5@ ; `string' PUBLIC ??_C@_0CL@JEJIBJNG@Win32?3?5Failed?5to?5convert?5string@ ; `string' PUBLIC ??_C@_0CJ@EFIFNOJC@Win32?3?5Failed?5to?5convert?5string@ ; `string' PUBLIC ??_C@_11LOCGONAA@@ ; `string' PUBLIC ??_C@_00CNPNBAHC@@ ; `string' PUBLIC ??_C@_06DJHOIPC@?$CFs?3?5?$CFs@ ; `string' EXTRN memset:PROC EXTRN __imp_VerSetConditionMask:PROC EXTRN __imp_GetLastError:PROC EXTRN __imp_GetModuleHandleExW:PROC EXTRN __imp_FormatMessageW:PROC EXTRN __imp_TranslateMessage:PROC EXTRN __imp_DispatchMessageW:PROC EXTRN __imp_PeekMessageW:PROC EXTRN __imp_RegisterDeviceNotificationW:PROC EXTRN __imp_UnregisterDeviceNotification:PROC EXTRN __imp_DefWindowProcW:PROC EXTRN __imp_UnregisterClassW:PROC EXTRN __imp_RegisterClassExW:PROC EXTRN __imp_CreateWindowExW:PROC EXTRN __imp_DestroyWindow:PROC EXTRN __imp_ShowWindow:PROC EXTRN __imp_ToUnicode:PROC EXTRN __imp_MapVirtualKeyW:PROC EXTRN __imp_MultiByteToWideChar:PROC EXTRN __imp_WideCharToMultiByte:PROC EXTRN _glfwPollMonitorsWin32:PROC EXTRN _glfwCreateWindowWin32:PROC EXTRN _glfwDestroyWindowWin32:PROC EXTRN _glfwSetWindowTitleWin32:PROC EXTRN _glfwSetWindowIconWin32:PROC EXTRN _glfwGetWindowPosWin32:PROC EXTRN _glfwSetWindowPosWin32:PROC EXTRN _glfwGetWindowSizeWin32:PROC EXTRN _glfwSetWindowSizeWin32:PROC EXTRN _glfwSetWindowSizeLimitsWin32:PROC EXTRN _glfwSetWindowAspectRatioWin32:PROC EXTRN _glfwGetFramebufferSizeWin32:PROC EXTRN _glfwGetWindowFrameSizeWin32:PROC EXTRN _glfwGetWindowContentScaleWin32:PROC EXTRN _glfwIconifyWindowWin32:PROC EXTRN _glfwRestoreWindowWin32:PROC EXTRN _glfwMaximizeWindowWin32:PROC EXTRN _glfwShowWindowWin32:PROC EXTRN _glfwHideWindowWin32:PROC EXTRN _glfwRequestWindowAttentionWin32:PROC EXTRN _glfwFocusWindowWin32:PROC EXTRN _glfwSetWindowMonitorWin32:PROC EXTRN _glfwWindowFocusedWin32:PROC EXTRN _glfwWindowIconifiedWin32:PROC EXTRN _glfwWindowVisibleWin32:PROC EXTRN _glfwWindowMaximizedWin32:PROC EXTRN _glfwWindowHoveredWin32:PROC EXTRN _glfwFramebufferTransparentWin32:PROC EXTRN _glfwSetWindowResizableWin32:PROC EXTRN _glfwSetWindowDecoratedWin32:PROC EXTRN _glfwSetWindowFloatingWin32:PROC EXTRN _glfwSetWindowMousePassthroughWin32:PROC EXTRN _glfwGetWindowOpacityWin32:PROC EXTRN _glfwSetWindowOpacityWin32:PROC EXTRN _glfwSetRawMouseMotionWin32:PROC EXTRN _glfwRawMouseMotionSupportedWin32:PROC EXTRN _glfwPollEventsWin32:PROC EXTRN _glfwWaitEventsWin32:PROC EXTRN _glfwWaitEventsTimeoutWin32:PROC EXTRN _glfwPostEmptyEventWin32:PROC EXTRN _glfwGetCursorPosWin32:PROC EXTRN _glfwSetCursorPosWin32:PROC EXTRN _glfwSetCursorModeWin32:PROC EXTRN _glfwGetScancodeNameWin32:PROC EXTRN _glfwGetKeyScancodeWin32:PROC EXTRN _glfwCreateCursorWin32:PROC EXTRN _glfwCreateStandardCursorWin32:PROC EXTRN _glfwDestroyCursorWin32:PROC EXTRN _glfwSetCursorWin32:PROC EXTRN _glfwSetClipboardStringWin32:PROC EXTRN _glfwGetClipboardStringWin32:PROC EXTRN _glfwGetEGLPlatformWin32:PROC EXTRN _glfwGetEGLNativeDisplayWin32:PROC EXTRN _glfwGetEGLNativeWindowWin32:PROC EXTRN _glfwGetRequiredInstanceExtensionsWin32:PROC EXTRN _glfwGetPhysicalDevicePresentationSupportWin32:PROC EXTRN _glfwCreateWindowSurfaceWin32:PROC EXTRN _glfwFreeMonitorWin32:PROC EXTRN _glfwGetMonitorPosWin32:PROC EXTRN _glfwGetMonitorContentScaleWin32:PROC EXTRN _glfwGetMonitorWorkareaWin32:PROC EXTRN _glfwGetVideoModesWin32:PROC EXTRN _glfwGetVideoModeWin32:PROC EXTRN _glfwGetGammaRampWin32:PROC EXTRN _glfwSetGammaRampWin32:PROC EXTRN _glfwInitJoysticksWin32:PROC EXTRN _glfwTerminateJoysticksWin32:PROC EXTRN _glfwPollJoystickWin32:PROC EXTRN _glfwGetMappingNameWin32:PROC EXTRN _glfwUpdateGamepadGUIDWin32:PROC EXTRN _glfwTerminateWGL:PROC EXTRN _glfwDetectJoystickConnectionWin32:PROC EXTRN _glfwDetectJoystickDisconnectionWin32:PROC EXTRN _glfwPlatformLoadModule:PROC EXTRN _glfwPlatformFreeModule:PROC EXTRN _glfwPlatformGetModuleSymbol:PROC EXTRN _glfwInputError:PROC EXTRN _glfwTerminateEGL:PROC EXTRN _glfwTerminateOSMesa:PROC EXTRN _glfw_calloc:PROC EXTRN _glfw_free:PROC EXTRN _RTC_CheckStackVars:PROC EXTRN _RTC_InitBase:PROC EXTRN _RTC_Shutdown:PROC EXTRN __CheckForDebuggerJustMyCode:PROC EXTRN __GSHandlerCheck:PROC EXTRN __chkstk:PROC EXTRN __security_check_cookie:PROC EXTRN _glfw:BYTE EXTRN __security_cookie:QWORD ; COMDAT pdata pdata SEGMENT $pdata$_glfwConnectWin32 DD imagerel $LN3 DD imagerel $LN3+1079 DD imagerel $unwind$_glfwConnectWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwInitWin32 DD imagerel $LN10 DD imagerel $LN10+168 DD imagerel $unwind$_glfwInitWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwTerminateWin32 DD imagerel $LN7 DD imagerel $LN7+193 DD imagerel $unwind$_glfwTerminateWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwCreateWideStringFromUTF8Win32 DD imagerel $LN5 DD imagerel $LN5+215 DD imagerel $unwind$_glfwCreateWideStringFromUTF8Win32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwCreateUTF8FromWideStringWin32 DD imagerel $LN5 DD imagerel $LN5+251 DD imagerel $unwind$_glfwCreateUTF8FromWideStringWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwIsWindowsVersionOrGreaterWin32 DD imagerel $LN5 DD imagerel $LN5+369 DD imagerel $unwind$_glfwIsWindowsVersionOrGreaterWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwIsWindows10BuildOrGreaterWin32 DD imagerel $LN5 DD imagerel $LN5+309 DD imagerel $unwind$_glfwIsWindows10BuildOrGreaterWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwInputErrorWin32 DD imagerel $LN3 DD imagerel $LN3+334 DD imagerel $unwind$_glfwInputErrorWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwUpdateKeyNamesWin32 DD imagerel $LN11 DD imagerel $LN11+632 DD imagerel $unwind$_glfwUpdateKeyNamesWin32 pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$loadLibraries DD imagerel loadLibraries DD imagerel loadLibraries+872 DD imagerel $unwind$loadLibraries pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$freeLibraries DD imagerel freeLibraries DD imagerel freeLibraries+169 DD imagerel $unwind$freeLibraries pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$createKeyTables DD imagerel createKeyTables DD imagerel createKeyTables+3168 DD imagerel $unwind$createKeyTables pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$helperWindowProc DD imagerel helperWindowProc DD imagerel helperWindowProc+235 DD imagerel $unwind$helperWindowProc pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$createHelperWindow DD imagerel createHelperWindow DD imagerel createHelperWindow+547 DD imagerel $unwind$createHelperWindow pdata 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@_06DJHOIPC@?$CFs?3?5?$CFs@ CONST SEGMENT ??_C@_06DJHOIPC@?$CFs?3?5?$CFs@ DB '%s: %s', 00H ; `string' CONST ENDS ; COMDAT ??_C@_00CNPNBAHC@@ CONST SEGMENT ??_C@_00CNPNBAHC@@ DB 00H ; `string' CONST ENDS ; COMDAT ??_C@_11LOCGONAA@@ CONST SEGMENT ??_C@_11LOCGONAA@@ DB 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CJ@EFIFNOJC@Win32?3?5Failed?5to?5convert?5string@ CONST SEGMENT ??_C@_0CJ@EFIFNOJC@Win32?3?5Failed?5to?5convert?5string@ DB 'Win32: Faile' DB 'd to convert string to UTF-8', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CL@JEJIBJNG@Win32?3?5Failed?5to?5convert?5string@ CONST SEGMENT ??_C@_0CL@JEJIBJNG@Win32?3?5Failed?5to?5convert?5string@ DB 'Win32: Faile' DB 'd to convert string from UTF-8', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CG@LDJIJKNI@Win32?3?5Failed?5to?5create?5helper?5@ CONST SEGMENT ??_C@_0CG@LDJIJKNI@Win32?3?5Failed?5to?5create?5helper?5@ DB 'Win32: Fail' DB 'ed to create helper window', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1CI@MPNNJFCJ@?$AAG?$AAL?$AAF?$AAW?$AA?5?$AAm?$AAe?$AAs?$AAs?$AAa?$AAg?$AAe?$AA?5?$AAw?$AAi@ CONST SEGMENT ??_C@_1CI@MPNNJFCJ@?$AAG?$AAL?$AAF?$AAW?$AA?5?$AAm?$AAe?$AAs?$AAs?$AAa?$AAg?$AAe?$AA?5?$AAw?$AAi@ DB 'G' DB 00H, 'L', 00H, 'F', 00H, 'W', 00H, ' ', 00H, 'm', 00H, 'e', 00H DB 's', 00H, 's', 00H, 'a', 00H, 'g', 00H, 'e', 00H, ' ', 00H, 'w' DB 00H, 'i', 00H, 'n', 00H, 'd', 00H, 'o', 00H, 'w', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CO@CNHHHABN@Win32?3?5Failed?5to?5register?5helpe@ CONST SEGMENT ??_C@_0CO@CNHHHABN@Win32?3?5Failed?5to?5register?5helpe@ DB 'Win32: Faile' DB 'd to register helper window class', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1BK@OPNBOCAD@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA?5?$AAH?$AAe?$AAl?$AAp?$AAe?$AAr@ CONST SEGMENT ??_C@_1BK@OPNBOCAD@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA?5?$AAH?$AAe?$AAl?$AAp?$AAe?$AAr@ DB 'G' DB 00H, 'L', 00H, 'F', 00H, 'W', 00H, '3', 00H, ' ', 00H, 'H', 00H DB 'e', 00H, 'l', 00H, 'p', 00H, 'e', 00H, 'r', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BF@LOGLPPDD@RtlVerifyVersionInfo@ CONST SEGMENT ??_C@_0BF@LOGLPPDD@RtlVerifyVersionInfo@ DB 'RtlVerifyVersionInfo', 00H ; `string' CONST ENDS ; COMDAT ??_C@_09FLKFJBLM@ntdll?4dll@ CONST SEGMENT ??_C@_09FLKFJBLM@ntdll?4dll@ DB 'ntdll.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BB@MAMHPNNC@GetDpiForMonitor@ CONST SEGMENT ??_C@_0BB@MAMHPNNC@GetDpiForMonitor@ DB 'GetDpiForMonitor', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BH@DGFLCCMF@SetProcessDpiAwareness@ CONST SEGMENT ??_C@_0BH@DGFLCCMF@SetProcessDpiAwareness@ DB 'SetProcessDpiAwareness', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0L@DMFDIJCG@shcore?4dll@ CONST SEGMENT ??_C@_0L@DMFDIJCG@shcore?4dll@ DB 'shcore.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BI@LDADLCB@DwmGetColorizationColor@ CONST SEGMENT ??_C@_0BI@LDADLCB@DwmGetColorizationColor@ DB 'DwmGetColorizationColor', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BK@HMMKMEOH@DwmEnableBlurBehindWindow@ CONST SEGMENT ??_C@_0BK@HMMKMEOH@DwmEnableBlurBehindWindow@ DB 'DwmEnableBlurBehindWind' DB 'ow', 00H ; `string' CONST ENDS ; COMDAT ??_C@_08PEMNBIMD@DwmFlush@ CONST SEGMENT ??_C@_08PEMNBIMD@DwmFlush@ DB 'DwmFlush', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BI@KJPLJBHH@DwmIsCompositionEnabled@ CONST SEGMENT ??_C@_0BI@KJPLJBHH@DwmIsCompositionEnabled@ DB 'DwmIsCompositionEnabled', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0L@FACOJKPJ@dwmapi?4dll@ CONST SEGMENT ??_C@_0L@FACOJKPJ@dwmapi?4dll@ DB 'dwmapi.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0P@FCCEJHCC@XInputGetState@ CONST SEGMENT ??_C@_0P@FCCEJHCC@XInputGetState@ DB 'XInputGetState', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BG@ELBNFOBA@XInputGetCapabilities@ CONST SEGMENT ??_C@_0BG@ELBNFOBA@XInputGetCapabilities@ DB 'XInputGetCapabilities', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0O@ONJGDDHG@xinput1_1?4dll@ CONST SEGMENT ??_C@_0O@ONJGDDHG@xinput1_1?4dll@ DB 'xinput1_1.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0O@GLACEBNI@xinput1_2?4dll@ CONST SEGMENT ??_C@_0O@GLACEBNI@xinput1_2?4dll@ DB 'xinput1_2.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BA@GHGALGFD@xinput9_1_0?4dll@ CONST SEGMENT ??_C@_0BA@GHGALGFD@xinput9_1_0?4dll@ DB 'xinput9_1_0.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0O@KAFOJCHN@xinput1_3?4dll@ CONST SEGMENT ??_C@_0O@KAFOJCHN@xinput1_3?4dll@ DB 'xinput1_3.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0O@LNFLKCMF@xinput1_4?4dll@ CONST SEGMENT ??_C@_0O@LNFLKCMF@xinput1_4?4dll@ DB 'xinput1_4.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BD@IJCCAMHG@DirectInput8Create@ CONST SEGMENT ??_C@_0BD@IJCCAMHG@DirectInput8Create@ DB 'DirectInput8Create', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0M@ONOEDIJO@dinput8?4dll@ CONST SEGMENT ??_C@_0M@ONOEDIJO@dinput8?4dll@ DB 'dinput8.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BH@HPKNFNCE@GetSystemMetricsForDpi@ CONST SEGMENT ??_C@_0BH@HPKNFNCE@GetSystemMetricsForDpi@ DB 'GetSystemMetricsForDpi', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BJ@MBAAGFCG@AdjustWindowRectExForDpi@ CONST SEGMENT ??_C@_0BJ@MBAAGFCG@AdjustWindowRectExForDpi@ DB 'AdjustWindowRectExForDpi' DB 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BA@LGGPEDOH@GetDpiForWindow@ CONST SEGMENT ??_C@_0BA@LGGPEDOH@GetDpiForWindow@ DB 'GetDpiForWindow', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BO@LHMLBOLK@SetProcessDpiAwarenessContext@ CONST SEGMENT ??_C@_0BO@LHMLBOLK@SetProcessDpiAwarenessContext@ DB 'SetProcessDpiAwaren' DB 'essContext', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BK@NKEDGNNN@EnableNonClientDpiScaling@ CONST SEGMENT ??_C@_0BK@NKEDGNNN@EnableNonClientDpiScaling@ DB 'EnableNonClientDpiScali' DB 'ng', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BM@OCGPLDNC@ChangeWindowMessageFilterEx@ CONST SEGMENT ??_C@_0BM@OCGPLDNC@ChangeWindowMessageFilterEx@ DB 'ChangeWindowMessageFi' DB 'lterEx', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BD@ENICNPLM@SetProcessDPIAware@ CONST SEGMENT ??_C@_0BD@ENICNPLM@SetProcessDPIAware@ DB 'SetProcessDPIAware', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CB@HHJIGJHK@Win32?3?5Failed?5to?5load?5user32?4dl@ CONST SEGMENT ??_C@_0CB@HHJIGJHK@Win32?3?5Failed?5to?5load?5user32?4dl@ DB 'Win32: Fail' DB 'ed to load user32.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0L@GMPLCCII@user32?4dll@ CONST SEGMENT ??_C@_0L@GMPLCCII@user32?4dll@ DB 'user32.dll', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CM@IALNOPFK@Win32?3?5Failed?5to?5retrieve?5own?5m@ CONST SEGMENT ??_C@_0CM@IALNOPFK@Win32?3?5Failed?5to?5retrieve?5own?5m@ DB 'Win32: Fail' DB 'ed to retrieve own module handle', 00H ; `string' CONST ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 02bH DW 0209H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$createHelperWindow DD 065063219H DD 010b6310H DD 070040044H DD 050026003H DD imagerel __GSHandlerCheck DD 0218H xdata ENDS ; COMDAT CONST CONST SEGMENT createHelperWindow$rtcName$0 DB 06dH DB 073H DB 067H DB 00H createHelperWindow$rtcName$1 DB 077H DB 063H DB 00H ORG $+1 createHelperWindow$rtcName$2 DB 064H DB 062H DB 069H DB 00H ORG $+4 createHelperWindow$rtcVarDesc DD 0128H DD 020H DQ FLAT:createHelperWindow$rtcName$2 DD 0c0H DD 050H DQ FLAT:createHelperWindow$rtcName$1 DD 068H DD 030H DQ FLAT:createHelperWindow$rtcName$0 ORG $+144 createHelperWindow$rtcFrameData DD 03H DD 00H DQ FLAT:createHelperWindow$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$helperWindowProc DD 025052101H DD 011c2321H DD 070150025H DD 05014H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$createKeyTables DD 025050f01H DD 010a230fH DD 070030021H DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$freeLibraries DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$loadLibraries DD 025052001H DD 010a230fH DD 07003002bH DD 05002H xdata ENDS ; COMDAT CONST CONST SEGMENT loadLibraries$rtcName$0 DB 06eH DB 061H DB 06dH DB 065H DB 073H DB 00H ORG $+10 loadLibraries$rtcVarDesc DD 048H DD 030H DQ FLAT:loadLibraries$rtcName$0 ORG $+48 loadLibraries$rtcFrameData DD 01H DD 00H DQ FLAT:loadLibraries$rtcVarDesc CONST ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 02aH DW 025fH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwUpdateKeyNamesWin32 DD 045053119H DD 010a430fH DD 070030081H DD 05002H DD imagerel __GSHandlerCheck DD 03f8H xdata ENDS ; COMDAT CONST CONST SEGMENT _glfwUpdateKeyNamesWin32$rtcName$0 DB 073H DB 074H DB 061H DB 074H DB 065H DB 00H ORG $+2 _glfwUpdateKeyNamesWin32$rtcName$1 DB 063H DB 068H DB 061H DB 072H DB 073H DB 00H ORG $+2 _glfwUpdateKeyNamesWin32$rtcName$2 DB 076H DB 06bH DB 073H DB 00H ORG $+12 _glfwUpdateKeyNamesWin32$rtcVarDesc DD 0228H DD 03cH DQ FLAT:_glfwUpdateKeyNamesWin32$rtcName$2 DD 01e8H DD 020H DQ FLAT:_glfwUpdateKeyNamesWin32$rtcName$1 DD 070H DD 0100H DQ FLAT:_glfwUpdateKeyNamesWin32$rtcName$0 ORG $+144 _glfwUpdateKeyNamesWin32$rtcFrameData DD 03H DD 00H DQ FLAT:_glfwUpdateKeyNamesWin32$rtcVarDesc CONST ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 03fH DW 0135H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwInputErrorWin32 DD 045054619H DD 0118431dH DD 0700b0239H DD 0500aH DD imagerel __GSHandlerCheck DD 011b8H xdata ENDS ; COMDAT CONST CONST SEGMENT _glfwInputErrorWin32$rtcName$0 DB 062H DB 075H DB 066H DB 066H DB 065H DB 072H DB 00H ORG $+1 _glfwInputErrorWin32$rtcName$1 DB 06dH DB 065H DB 073H DB 073H DB 061H DB 067H DB 065H DB 00H _glfwInputErrorWin32$rtcVarDesc DD 0870H DD 0400H DQ FLAT:_glfwInputErrorWin32$rtcName$1 DD 050H DD 0800H DQ FLAT:_glfwInputErrorWin32$rtcName$0 ORG $+96 _glfwInputErrorWin32$rtcFrameData DD 02H DD 00H DQ FLAT:_glfwInputErrorWin32$rtcVarDesc CONST ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 036H DW 011cH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwIsWindows10BuildOrGreaterWin32 DD 025053d19H DD 010e2313H DD 07007004dH DD 05006H DD imagerel __GSHandlerCheck DD 0258H xdata ENDS ; COMDAT CONST CONST SEGMENT _glfwIsWindows10BuildOrGreaterWin32$rtcName$0 DB 06fH DB 073H DB 076H DB 069H DB 00H ORG $+11 _glfwIsWindows10BuildOrGreaterWin32$rtcVarDesc DD 030H DD 011cH DQ FLAT:_glfwIsWindows10BuildOrGreaterWin32$rtcName$0 ORG $+48 _glfwIsWindows10BuildOrGreaterWin32$rtcFrameData DD 01H DD 00H DQ FLAT:_glfwIsWindows10BuildOrGreaterWin32$rtcVarDesc CONST ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 041H DW 0158H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwIsWindowsVersionOrGreaterWin32 DD 025054819H DD 0119231eH DD 07012004dH DD 05011H DD imagerel __GSHandlerCheck DD 0258H xdata ENDS ; COMDAT CONST CONST SEGMENT _glfwIsWindowsVersionOrGreaterWin32$rtcName$0 DB 06fH DB 073H DB 076H DB 069H DB 00H ORG $+11 _glfwIsWindowsVersionOrGreaterWin32$rtcVarDesc DD 030H DD 011cH DQ FLAT:_glfwIsWindowsVersionOrGreaterWin32$rtcName$0 ORG $+48 _glfwIsWindowsVersionOrGreaterWin32$rtcFrameData DD 01H DD 00H DQ FLAT:_glfwIsWindowsVersionOrGreaterWin32$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwCreateUTF8FromWideStringWin32 DD 045051301H DD 010e4313H DD 070070029H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwCreateWideStringFromUTF8Win32 DD 035051301H DD 010e3313H DD 070070027H DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwTerminateWin32 DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwInitWin32 DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwConnectWin32 DD 025063001H DD 01132318H DD 0700c0080H DD 0500a600bH xdata ENDS ; COMDAT CONST CONST SEGMENT _glfwConnectWin32$rtcName$0 DB 077H DB 069H DB 06eH DB 033H DB 032H DB 00H ORG $+10 _glfwConnectWin32$rtcVarDesc DD 030H DD 0240H DQ FLAT:_glfwConnectWin32$rtcName$0 ORG $+48 _glfwConnectWin32$rtcFrameData DD 01H DD 00H DQ FLAT:_glfwConnectWin32$rtcVarDesc CONST 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_init.c ; COMDAT createHelperWindow _TEXT SEGMENT msg$ = 8 wc$ = 96 dbi$6 = 200 __$ArrayPad$ = 440 createHelperWindow PROC ; COMDAT ; 368 : { 00000 40 55 push rbp 00002 56 push rsi 00003 57 push rdi 00004 48 81 ec 20 02 00 00 sub rsp, 544 ; 00000220H 0000b 48 8d 6c 24 60 lea rbp, QWORD PTR [rsp+96] 00010 48 8d 7c 24 60 lea rdi, QWORD PTR [rsp+96] 00015 b9 40 00 00 00 mov ecx, 64 ; 00000040H 0001a b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0001f f3 ab rep stosd 00021 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00028 48 33 c5 xor rax, rbp 0002b 48 89 85 b8 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00032 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 00039 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 369 : MSG msg; ; 370 : WNDCLASSEXW wc = { sizeof(wc) }; 0003e c7 45 60 50 00 00 00 mov DWORD PTR wc$[rbp], 80 ; 00000050H 00045 48 8d 45 64 lea rax, QWORD PTR wc$[rbp+4] 00049 48 8b f8 mov rdi, rax 0004c 33 c0 xor eax, eax 0004e b9 4c 00 00 00 mov ecx, 76 ; 0000004cH 00053 f3 aa rep stosb ; 371 : ; 372 : wc.style = CS_OWNDC; 00055 c7 45 64 20 00 00 00 mov DWORD PTR wc$[rbp+4], 32 ; 00000020H ; 373 : wc.lpfnWndProc = (WNDPROC)helperWindowProc; 0005c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:helperWindowProc 00063 48 89 45 68 mov QWORD PTR wc$[rbp+8], rax ; 374 : wc.hInstance = _glfw.win32.instance; 00067 48 8b 05 78 1b 00 00 mov rax, QWORD PTR _glfw+7032 0006e 48 89 45 78 mov QWORD PTR wc$[rbp+24], rax ; 375 : wc.lpszClassName = L"GLFW3 Helper"; 00072 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_1BK@OPNBOCAD@?$AAG?$AAL?$AAF?$AAW?$AA3?$AA?5?$AAH?$AAe?$AAl?$AAp?$AAe?$AAr@ 00079 48 89 85 a0 00 00 00 mov QWORD PTR wc$[rbp+64], rax ; 376 : ; 377 : _glfw.win32.helperWindowClass = RegisterClassExW(&wc); 00080 48 8d 4d 60 lea rcx, QWORD PTR wc$[rbp] 00084 ff 15 00 00 00 00 call QWORD PTR __imp_RegisterClassExW 0008a 66 89 05 88 1b 00 00 mov WORD PTR _glfw+7048, ax ; 378 : if (!_glfw.win32.helperWindowClass) 00091 0f b7 05 88 1b 00 00 movzx eax, WORD PTR _glfw+7048 00098 85 c0 test eax, eax 0009a 75 18 jne SHORT $LN4@createHelp ; 379 : { ; 380 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 0009c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CO@CNHHHABN@Win32?3?5Failed?5to?5register?5helpe@ 000a3 b9 08 00 01 00 mov ecx, 65544 ; 00010008H 000a8 e8 00 00 00 00 call _glfwInputErrorWin32 ; 381 : "Win32: Failed to register helper window class"); ; 382 : return GLFW_FALSE; 000ad 33 c0 xor eax, eax 000af e9 3f 01 00 00 jmp $LN1@createHelp $LN4@createHelp: ; 383 : } ; 384 : ; 385 : _glfw.win32.helperWindowHandle = 000b4 0f b7 05 88 1b 00 00 movzx eax, WORD PTR _glfw+7048 000bb 48 c7 44 24 58 00 00 00 00 mov QWORD PTR [rsp+88], 0 000c4 48 8b 0d 78 1b 00 00 mov rcx, QWORD PTR _glfw+7032 000cb 48 89 4c 24 50 mov QWORD PTR [rsp+80], rcx 000d0 48 c7 44 24 48 00 00 00 00 mov QWORD PTR [rsp+72], 0 000d9 48 c7 44 24 40 00 00 00 00 mov QWORD PTR [rsp+64], 0 000e2 c7 44 24 38 01 00 00 00 mov DWORD PTR [rsp+56], 1 000ea c7 44 24 30 01 00 00 00 mov DWORD PTR [rsp+48], 1 000f2 c7 44 24 28 00 00 00 00 mov DWORD PTR [rsp+40], 0 000fa c7 44 24 20 00 00 00 00 mov DWORD PTR [rsp+32], 0 00102 41 b9 00 00 00 06 mov r9d, 100663296 ; 06000000H 00108 4c 8d 05 00 00 00 00 lea r8, OFFSET FLAT:??_C@_1CI@MPNNJFCJ@?$AAG?$AAL?$AAF?$AAW?$AA?5?$AAm?$AAe?$AAs?$AAs?$AAa?$AAg?$AAe?$AA?5?$AAw?$AAi@ 0010f 8b d0 mov edx, eax 00111 b9 00 03 00 00 mov ecx, 768 ; 00000300H 00116 ff 15 00 00 00 00 call QWORD PTR __imp_CreateWindowExW 0011c 48 89 05 80 1b 00 00 mov QWORD PTR _glfw+7040, rax ; 386 : CreateWindowExW(WS_EX_OVERLAPPEDWINDOW, ; 387 : MAKEINTATOM(_glfw.win32.helperWindowClass), ; 388 : L"GLFW message window", ; 389 : WS_CLIPSIBLINGS | WS_CLIPCHILDREN, ; 390 : 0, 0, 1, 1, ; 391 : NULL, NULL, ; 392 : _glfw.win32.instance, ; 393 : NULL); ; 394 : ; 395 : if (!_glfw.win32.helperWindowHandle) 00123 48 83 3d 80 1b 00 00 00 cmp QWORD PTR _glfw+7040, 0 0012b 75 18 jne SHORT $LN5@createHelp ; 396 : { ; 397 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 0012d 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CG@LDJIJKNI@Win32?3?5Failed?5to?5create?5helper?5@ 00134 b9 08 00 01 00 mov ecx, 65544 ; 00010008H 00139 e8 00 00 00 00 call _glfwInputErrorWin32 ; 398 : "Win32: Failed to create helper window"); ; 399 : return GLFW_FALSE; 0013e 33 c0 xor eax, eax 00140 e9 ae 00 00 00 jmp $LN1@createHelp $LN5@createHelp: ; 400 : } ; 401 : ; 402 : // HACK: The command to the first ShowWindow call is ignored if the parent ; 403 : // process passed along a STARTUPINFO, so clear that with a no-op call ; 404 : ShowWindow(_glfw.win32.helperWindowHandle, SW_HIDE); 00145 33 d2 xor edx, edx 00147 48 8b 0d 80 1b 00 00 mov rcx, QWORD PTR _glfw+7040 0014e ff 15 00 00 00 00 call QWORD PTR __imp_ShowWindow ; 405 : ; 406 : // Register for HID device notifications ; 407 : { ; 408 : DEV_BROADCAST_DEVICEINTERFACE_W dbi; ; 409 : ZeroMemory(&dbi, sizeof(dbi)); 00154 41 b8 20 00 00 00 mov r8d, 32 ; 00000020H 0015a 33 d2 xor edx, edx 0015c 48 8d 8d c8 00 00 00 lea rcx, QWORD PTR dbi$6[rbp] 00163 e8 00 00 00 00 call memset ; 410 : dbi.dbcc_size = sizeof(dbi); 00168 c7 85 c8 00 00 00 20 00 00 00 mov DWORD PTR dbi$6[rbp], 32 ; 00000020H ; 411 : dbi.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE; 00172 c7 85 cc 00 00 00 05 00 00 00 mov DWORD PTR dbi$6[rbp+4], 5 ; 412 : dbi.dbcc_classguid = GUID_DEVINTERFACE_HID; 0017c 48 8d 85 d4 00 00 00 lea rax, QWORD PTR dbi$6[rbp+12] 00183 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:_glfw_GUID_DEVINTERFACE_HID 0018a 48 8b f8 mov rdi, rax 0018d 48 8b f1 mov rsi, rcx 00190 b9 10 00 00 00 mov ecx, 16 00195 f3 a4 rep movsb ; 413 : ; 414 : _glfw.win32.deviceNotificationHandle = 00197 45 33 c0 xor r8d, r8d 0019a 48 8d 95 c8 00 00 00 lea rdx, QWORD PTR dbi$6[rbp] 001a1 48 8b 0d 80 1b 00 00 mov rcx, QWORD PTR _glfw+7040 001a8 ff 15 00 00 00 00 call QWORD PTR __imp_RegisterDeviceNotificationW 001ae 48 89 05 90 1b 00 00 mov QWORD PTR _glfw+7056, rax $LN2@createHelp: ; 415 : RegisterDeviceNotificationW(_glfw.win32.helperWindowHandle, ; 416 : (DEV_BROADCAST_HDR*)&dbi, ; 417 : DEVICE_NOTIFY_WINDOW_HANDLE); ; 418 : } ; 419 : ; 420 : while (PeekMessageW(&msg, _glfw.win32.helperWindowHandle, 0, 0, PM_REMOVE)) 001b5 c7 44 24 20 01 00 00 00 mov DWORD PTR [rsp+32], 1 001bd 45 33 c9 xor r9d, r9d 001c0 45 33 c0 xor r8d, r8d 001c3 48 8b 15 80 1b 00 00 mov rdx, QWORD PTR _glfw+7040 001ca 48 8d 4d 08 lea rcx, QWORD PTR msg$[rbp] 001ce ff 15 00 00 00 00 call QWORD PTR __imp_PeekMessageW 001d4 85 c0 test eax, eax 001d6 74 16 je SHORT $LN3@createHelp ; 421 : { ; 422 : TranslateMessage(&msg); 001d8 48 8d 4d 08 lea rcx, QWORD PTR msg$[rbp] 001dc ff 15 00 00 00 00 call QWORD PTR __imp_TranslateMessage ; 423 : DispatchMessageW(&msg); 001e2 48 8d 4d 08 lea rcx, QWORD PTR msg$[rbp] 001e6 ff 15 00 00 00 00 call QWORD PTR __imp_DispatchMessageW ; 424 : } 001ec eb c7 jmp SHORT $LN2@createHelp $LN3@createHelp: ; 425 : ; 426 : return GLFW_TRUE; 001ee b8 01 00 00 00 mov eax, 1 $LN1@createHelp: ; 427 : } 001f3 48 8b f8 mov rdi, rax 001f6 48 8d 4d a0 lea rcx, QWORD PTR [rbp-96] 001fa 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:createHelperWindow$rtcFrameData 00201 e8 00 00 00 00 call _RTC_CheckStackVars 00206 48 8b c7 mov rax, rdi 00209 48 8b 8d b8 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00210 48 33 cd xor rcx, rbp 00213 e8 00 00 00 00 call __security_check_cookie 00218 48 8d a5 c0 01 00 00 lea rsp, QWORD PTR [rbp+448] 0021f 5f pop rdi 00220 5e pop rsi 00221 5d pop rbp 00222 c3 ret 0 createHelperWindow ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT helperWindowProc _TEXT SEGMENT dbh$1 = 8 dbh$2 = 40 tv64 = 244 hWnd$ = 288 uMsg$ = 296 wParam$ = 304 lParam$ = 312 helperWindowProc PROC ; COMDAT ; 333 : { 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 28 01 00 00 sub rsp, 296 ; 00000128H 0001c 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00021 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 00028 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 334 : switch (uMsg) 0002d 8b 85 28 01 00 00 mov eax, DWORD PTR uMsg$[rbp] 00033 89 85 f4 00 00 00 mov DWORD PTR tv64[rbp], eax 00039 83 bd f4 00 00 00 7e cmp DWORD PTR tv64[rbp], 126 ; 0000007eH 00040 74 0e je SHORT $LN4@helperWind 00042 81 bd f4 00 00 00 19 02 00 00 cmp DWORD PTR tv64[rbp], 537 ; 00000219H 0004c 74 09 je SHORT $LN5@helperWind 0004e eb 70 jmp SHORT $LN2@helperWind $LN4@helperWind: ; 335 : { ; 336 : case WM_DISPLAYCHANGE: ; 337 : _glfwPollMonitorsWin32(); 00050 e8 00 00 00 00 call _glfwPollMonitorsWin32 ; 338 : break; 00055 eb 69 jmp SHORT $LN2@helperWind $LN5@helperWind: ; 339 : ; 340 : case WM_DEVICECHANGE: ; 341 : { ; 342 : if (!_glfw.joysticksInitialized) 00057 83 3d 8c 07 00 00 00 cmp DWORD PTR _glfw+1932, 0 0005e 75 02 jne SHORT $LN6@helperWind ; 343 : break; 00060 eb 5e jmp SHORT $LN2@helperWind $LN6@helperWind: ; 344 : ; 345 : if (wParam == DBT_DEVICEARRIVAL) 00062 48 81 bd 30 01 00 00 00 80 00 00 cmp QWORD PTR wParam$[rbp], 32768 ; 00008000H 0006d 75 23 jne SHORT $LN7@helperWind ; 346 : { ; 347 : DEV_BROADCAST_HDR* dbh = (DEV_BROADCAST_HDR*)lParam; 0006f 48 8b 85 38 01 00 00 mov rax, QWORD PTR lParam$[rbp] 00076 48 89 45 08 mov QWORD PTR dbh$1[rbp], rax ; 348 : if (dbh && dbh->dbch_devicetype == DBT_DEVTYP_DEVICEINTERFACE) 0007a 48 83 7d 08 00 cmp QWORD PTR dbh$1[rbp], 0 0007f 74 0f je SHORT $LN9@helperWind 00081 48 8b 45 08 mov rax, QWORD PTR dbh$1[rbp] 00085 83 78 04 05 cmp DWORD PTR [rax+4], 5 00089 75 05 jne SHORT $LN9@helperWind ; 349 : _glfwDetectJoystickConnectionWin32(); 0008b e8 00 00 00 00 call _glfwDetectJoystickConnectionWin32 $LN9@helperWind: ; 350 : } 00090 eb 2e jmp SHORT $LN8@helperWind $LN7@helperWind: ; 351 : else if (wParam == DBT_DEVICEREMOVECOMPLETE) 00092 48 81 bd 30 01 00 00 04 80 00 00 cmp QWORD PTR wParam$[rbp], 32772 ; 00008004H 0009d 75 21 jne SHORT $LN10@helperWind ; 352 : { ; 353 : DEV_BROADCAST_HDR* dbh = (DEV_BROADCAST_HDR*)lParam; 0009f 48 8b 85 38 01 00 00 mov rax, QWORD PTR lParam$[rbp] 000a6 48 89 45 28 mov QWORD PTR dbh$2[rbp], rax ; 354 : if (dbh && dbh->dbch_devicetype == DBT_DEVTYP_DEVICEINTERFACE) 000aa 48 83 7d 28 00 cmp QWORD PTR dbh$2[rbp], 0 000af 74 0f je SHORT $LN11@helperWind 000b1 48 8b 45 28 mov rax, QWORD PTR dbh$2[rbp] 000b5 83 78 04 05 cmp DWORD PTR [rax+4], 5 000b9 75 05 jne SHORT $LN11@helperWind ; 355 : _glfwDetectJoystickDisconnectionWin32(); 000bb e8 00 00 00 00 call _glfwDetectJoystickDisconnectionWin32 $LN11@helperWind: $LN10@helperWind: $LN8@helperWind: $LN2@helperWind: ; 356 : } ; 357 : ; 358 : break; ; 359 : } ; 360 : } ; 361 : ; 362 : return DefWindowProcW(hWnd, uMsg, wParam, lParam); 000c0 4c 8b 8d 38 01 00 00 mov r9, QWORD PTR lParam$[rbp] 000c7 4c 8b 85 30 01 00 00 mov r8, QWORD PTR wParam$[rbp] 000ce 8b 95 28 01 00 00 mov edx, DWORD PTR uMsg$[rbp] 000d4 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR hWnd$[rbp] 000db ff 15 00 00 00 00 call QWORD PTR __imp_DefWindowProcW ; 363 : } 000e1 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 000e8 5f pop rdi 000e9 5d pop rbp 000ea c3 ret 0 helperWindowProc ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT createKeyTables _TEXT SEGMENT scancode$ = 4 createKeyTables PROC ; COMDAT ; 195 : { 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:__C017AD33_win32_init@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 196 : int scancode; ; 197 : ; 198 : memset(_glfw.win32.keycodes, -1, sizeof(_glfw.win32.keycodes)); 0001b 41 b8 00 04 00 00 mov r8d, 1024 ; 00000400H 00021 ba ff ff ff ff mov edx, -1 00026 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0002d e8 00 00 00 00 call memset ; 199 : memset(_glfw.win32.scancodes, -1, sizeof(_glfw.win32.scancodes)); 00032 41 b8 ba 02 00 00 mov r8d, 698 ; 000002baH 00038 ba ff ff ff ff mov edx, -1 0003d 48 8d 0d a8 1f 00 00 lea rcx, OFFSET FLAT:_glfw+8104 00044 e8 00 00 00 00 call memset ; 200 : ; 201 : _glfw.win32.keycodes[0x00B] = GLFW_KEY_0; 00049 b8 02 00 00 00 mov eax, 2 0004e 48 6b c0 0b imul rax, rax, 11 00052 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00059 ba 30 00 00 00 mov edx, 48 ; 00000030H 0005e 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 202 : _glfw.win32.keycodes[0x002] = GLFW_KEY_1; 00062 b8 02 00 00 00 mov eax, 2 00067 48 6b c0 02 imul rax, rax, 2 0006b 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00072 ba 31 00 00 00 mov edx, 49 ; 00000031H 00077 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 203 : _glfw.win32.keycodes[0x003] = GLFW_KEY_2; 0007b b8 02 00 00 00 mov eax, 2 00080 48 6b c0 03 imul rax, rax, 3 00084 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0008b ba 32 00 00 00 mov edx, 50 ; 00000032H 00090 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 204 : _glfw.win32.keycodes[0x004] = GLFW_KEY_3; 00094 b8 02 00 00 00 mov eax, 2 00099 48 6b c0 04 imul rax, rax, 4 0009d 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 000a4 ba 33 00 00 00 mov edx, 51 ; 00000033H 000a9 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 205 : _glfw.win32.keycodes[0x005] = GLFW_KEY_4; 000ad b8 02 00 00 00 mov eax, 2 000b2 48 6b c0 05 imul rax, rax, 5 000b6 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 000bd ba 34 00 00 00 mov edx, 52 ; 00000034H 000c2 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 206 : _glfw.win32.keycodes[0x006] = GLFW_KEY_5; 000c6 b8 02 00 00 00 mov eax, 2 000cb 48 6b c0 06 imul rax, rax, 6 000cf 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 000d6 ba 35 00 00 00 mov edx, 53 ; 00000035H 000db 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 207 : _glfw.win32.keycodes[0x007] = GLFW_KEY_6; 000df b8 02 00 00 00 mov eax, 2 000e4 48 6b c0 07 imul rax, rax, 7 000e8 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 000ef ba 36 00 00 00 mov edx, 54 ; 00000036H 000f4 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 208 : _glfw.win32.keycodes[0x008] = GLFW_KEY_7; 000f8 b8 02 00 00 00 mov eax, 2 000fd 48 6b c0 08 imul rax, rax, 8 00101 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00108 ba 37 00 00 00 mov edx, 55 ; 00000037H 0010d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 209 : _glfw.win32.keycodes[0x009] = GLFW_KEY_8; 00111 b8 02 00 00 00 mov eax, 2 00116 48 6b c0 09 imul rax, rax, 9 0011a 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00121 ba 38 00 00 00 mov edx, 56 ; 00000038H 00126 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 210 : _glfw.win32.keycodes[0x00A] = GLFW_KEY_9; 0012a b8 02 00 00 00 mov eax, 2 0012f 48 6b c0 0a imul rax, rax, 10 00133 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0013a ba 39 00 00 00 mov edx, 57 ; 00000039H 0013f 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 211 : _glfw.win32.keycodes[0x01E] = GLFW_KEY_A; 00143 b8 02 00 00 00 mov eax, 2 00148 48 6b c0 1e imul rax, rax, 30 0014c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00153 ba 41 00 00 00 mov edx, 65 ; 00000041H 00158 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 212 : _glfw.win32.keycodes[0x030] = GLFW_KEY_B; 0015c b8 02 00 00 00 mov eax, 2 00161 48 6b c0 30 imul rax, rax, 48 ; 00000030H 00165 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0016c ba 42 00 00 00 mov edx, 66 ; 00000042H 00171 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 213 : _glfw.win32.keycodes[0x02E] = GLFW_KEY_C; 00175 b8 02 00 00 00 mov eax, 2 0017a 48 6b c0 2e imul rax, rax, 46 ; 0000002eH 0017e 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00185 ba 43 00 00 00 mov edx, 67 ; 00000043H 0018a 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 214 : _glfw.win32.keycodes[0x020] = GLFW_KEY_D; 0018e b8 02 00 00 00 mov eax, 2 00193 48 6b c0 20 imul rax, rax, 32 ; 00000020H 00197 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0019e ba 44 00 00 00 mov edx, 68 ; 00000044H 001a3 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 215 : _glfw.win32.keycodes[0x012] = GLFW_KEY_E; 001a7 b8 02 00 00 00 mov eax, 2 001ac 48 6b c0 12 imul rax, rax, 18 001b0 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 001b7 ba 45 00 00 00 mov edx, 69 ; 00000045H 001bc 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 216 : _glfw.win32.keycodes[0x021] = GLFW_KEY_F; 001c0 b8 02 00 00 00 mov eax, 2 001c5 48 6b c0 21 imul rax, rax, 33 ; 00000021H 001c9 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 001d0 ba 46 00 00 00 mov edx, 70 ; 00000046H 001d5 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 217 : _glfw.win32.keycodes[0x022] = GLFW_KEY_G; 001d9 b8 02 00 00 00 mov eax, 2 001de 48 6b c0 22 imul rax, rax, 34 ; 00000022H 001e2 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 001e9 ba 47 00 00 00 mov edx, 71 ; 00000047H 001ee 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 218 : _glfw.win32.keycodes[0x023] = GLFW_KEY_H; 001f2 b8 02 00 00 00 mov eax, 2 001f7 48 6b c0 23 imul rax, rax, 35 ; 00000023H 001fb 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00202 ba 48 00 00 00 mov edx, 72 ; 00000048H 00207 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 219 : _glfw.win32.keycodes[0x017] = GLFW_KEY_I; 0020b b8 02 00 00 00 mov eax, 2 00210 48 6b c0 17 imul rax, rax, 23 00214 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0021b ba 49 00 00 00 mov edx, 73 ; 00000049H 00220 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 220 : _glfw.win32.keycodes[0x024] = GLFW_KEY_J; 00224 b8 02 00 00 00 mov eax, 2 00229 48 6b c0 24 imul rax, rax, 36 ; 00000024H 0022d 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00234 ba 4a 00 00 00 mov edx, 74 ; 0000004aH 00239 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 221 : _glfw.win32.keycodes[0x025] = GLFW_KEY_K; 0023d b8 02 00 00 00 mov eax, 2 00242 48 6b c0 25 imul rax, rax, 37 ; 00000025H 00246 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0024d ba 4b 00 00 00 mov edx, 75 ; 0000004bH 00252 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 222 : _glfw.win32.keycodes[0x026] = GLFW_KEY_L; 00256 b8 02 00 00 00 mov eax, 2 0025b 48 6b c0 26 imul rax, rax, 38 ; 00000026H 0025f 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00266 ba 4c 00 00 00 mov edx, 76 ; 0000004cH 0026b 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 223 : _glfw.win32.keycodes[0x032] = GLFW_KEY_M; 0026f b8 02 00 00 00 mov eax, 2 00274 48 6b c0 32 imul rax, rax, 50 ; 00000032H 00278 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0027f ba 4d 00 00 00 mov edx, 77 ; 0000004dH 00284 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 224 : _glfw.win32.keycodes[0x031] = GLFW_KEY_N; 00288 b8 02 00 00 00 mov eax, 2 0028d 48 6b c0 31 imul rax, rax, 49 ; 00000031H 00291 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00298 ba 4e 00 00 00 mov edx, 78 ; 0000004eH 0029d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 225 : _glfw.win32.keycodes[0x018] = GLFW_KEY_O; 002a1 b8 02 00 00 00 mov eax, 2 002a6 48 6b c0 18 imul rax, rax, 24 002aa 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 002b1 ba 4f 00 00 00 mov edx, 79 ; 0000004fH 002b6 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 226 : _glfw.win32.keycodes[0x019] = GLFW_KEY_P; 002ba b8 02 00 00 00 mov eax, 2 002bf 48 6b c0 19 imul rax, rax, 25 002c3 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 002ca ba 50 00 00 00 mov edx, 80 ; 00000050H 002cf 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 227 : _glfw.win32.keycodes[0x010] = GLFW_KEY_Q; 002d3 b8 02 00 00 00 mov eax, 2 002d8 48 6b c0 10 imul rax, rax, 16 002dc 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 002e3 ba 51 00 00 00 mov edx, 81 ; 00000051H 002e8 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 228 : _glfw.win32.keycodes[0x013] = GLFW_KEY_R; 002ec b8 02 00 00 00 mov eax, 2 002f1 48 6b c0 13 imul rax, rax, 19 002f5 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 002fc ba 52 00 00 00 mov edx, 82 ; 00000052H 00301 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 229 : _glfw.win32.keycodes[0x01F] = GLFW_KEY_S; 00305 b8 02 00 00 00 mov eax, 2 0030a 48 6b c0 1f imul rax, rax, 31 0030e 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00315 ba 53 00 00 00 mov edx, 83 ; 00000053H 0031a 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 230 : _glfw.win32.keycodes[0x014] = GLFW_KEY_T; 0031e b8 02 00 00 00 mov eax, 2 00323 48 6b c0 14 imul rax, rax, 20 00327 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0032e ba 54 00 00 00 mov edx, 84 ; 00000054H 00333 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 231 : _glfw.win32.keycodes[0x016] = GLFW_KEY_U; 00337 b8 02 00 00 00 mov eax, 2 0033c 48 6b c0 16 imul rax, rax, 22 00340 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00347 ba 55 00 00 00 mov edx, 85 ; 00000055H 0034c 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 232 : _glfw.win32.keycodes[0x02F] = GLFW_KEY_V; 00350 b8 02 00 00 00 mov eax, 2 00355 48 6b c0 2f imul rax, rax, 47 ; 0000002fH 00359 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00360 ba 56 00 00 00 mov edx, 86 ; 00000056H 00365 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 233 : _glfw.win32.keycodes[0x011] = GLFW_KEY_W; 00369 b8 02 00 00 00 mov eax, 2 0036e 48 6b c0 11 imul rax, rax, 17 00372 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00379 ba 57 00 00 00 mov edx, 87 ; 00000057H 0037e 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 234 : _glfw.win32.keycodes[0x02D] = GLFW_KEY_X; 00382 b8 02 00 00 00 mov eax, 2 00387 48 6b c0 2d imul rax, rax, 45 ; 0000002dH 0038b 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00392 ba 58 00 00 00 mov edx, 88 ; 00000058H 00397 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 235 : _glfw.win32.keycodes[0x015] = GLFW_KEY_Y; 0039b b8 02 00 00 00 mov eax, 2 003a0 48 6b c0 15 imul rax, rax, 21 003a4 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 003ab ba 59 00 00 00 mov edx, 89 ; 00000059H 003b0 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 236 : _glfw.win32.keycodes[0x02C] = GLFW_KEY_Z; 003b4 b8 02 00 00 00 mov eax, 2 003b9 48 6b c0 2c imul rax, rax, 44 ; 0000002cH 003bd 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 003c4 ba 5a 00 00 00 mov edx, 90 ; 0000005aH 003c9 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 237 : ; 238 : _glfw.win32.keycodes[0x028] = GLFW_KEY_APOSTROPHE; 003cd b8 02 00 00 00 mov eax, 2 003d2 48 6b c0 28 imul rax, rax, 40 ; 00000028H 003d6 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 003dd ba 27 00 00 00 mov edx, 39 ; 00000027H 003e2 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 239 : _glfw.win32.keycodes[0x02B] = GLFW_KEY_BACKSLASH; 003e6 b8 02 00 00 00 mov eax, 2 003eb 48 6b c0 2b imul rax, rax, 43 ; 0000002bH 003ef 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 003f6 ba 5c 00 00 00 mov edx, 92 ; 0000005cH 003fb 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 240 : _glfw.win32.keycodes[0x033] = GLFW_KEY_COMMA; 003ff b8 02 00 00 00 mov eax, 2 00404 48 6b c0 33 imul rax, rax, 51 ; 00000033H 00408 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0040f ba 2c 00 00 00 mov edx, 44 ; 0000002cH 00414 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 241 : _glfw.win32.keycodes[0x00D] = GLFW_KEY_EQUAL; 00418 b8 02 00 00 00 mov eax, 2 0041d 48 6b c0 0d imul rax, rax, 13 00421 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00428 ba 3d 00 00 00 mov edx, 61 ; 0000003dH 0042d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 242 : _glfw.win32.keycodes[0x029] = GLFW_KEY_GRAVE_ACCENT; 00431 b8 02 00 00 00 mov eax, 2 00436 48 6b c0 29 imul rax, rax, 41 ; 00000029H 0043a 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00441 ba 60 00 00 00 mov edx, 96 ; 00000060H 00446 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 243 : _glfw.win32.keycodes[0x01A] = GLFW_KEY_LEFT_BRACKET; 0044a b8 02 00 00 00 mov eax, 2 0044f 48 6b c0 1a imul rax, rax, 26 00453 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0045a ba 5b 00 00 00 mov edx, 91 ; 0000005bH 0045f 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 244 : _glfw.win32.keycodes[0x00C] = GLFW_KEY_MINUS; 00463 b8 02 00 00 00 mov eax, 2 00468 48 6b c0 0c imul rax, rax, 12 0046c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00473 ba 2d 00 00 00 mov edx, 45 ; 0000002dH 00478 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 245 : _glfw.win32.keycodes[0x034] = GLFW_KEY_PERIOD; 0047c b8 02 00 00 00 mov eax, 2 00481 48 6b c0 34 imul rax, rax, 52 ; 00000034H 00485 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0048c ba 2e 00 00 00 mov edx, 46 ; 0000002eH 00491 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 246 : _glfw.win32.keycodes[0x01B] = GLFW_KEY_RIGHT_BRACKET; 00495 b8 02 00 00 00 mov eax, 2 0049a 48 6b c0 1b imul rax, rax, 27 0049e 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 004a5 ba 5d 00 00 00 mov edx, 93 ; 0000005dH 004aa 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 247 : _glfw.win32.keycodes[0x027] = GLFW_KEY_SEMICOLON; 004ae b8 02 00 00 00 mov eax, 2 004b3 48 6b c0 27 imul rax, rax, 39 ; 00000027H 004b7 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 004be ba 3b 00 00 00 mov edx, 59 ; 0000003bH 004c3 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 248 : _glfw.win32.keycodes[0x035] = GLFW_KEY_SLASH; 004c7 b8 02 00 00 00 mov eax, 2 004cc 48 6b c0 35 imul rax, rax, 53 ; 00000035H 004d0 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 004d7 ba 2f 00 00 00 mov edx, 47 ; 0000002fH 004dc 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 249 : _glfw.win32.keycodes[0x056] = GLFW_KEY_WORLD_2; 004e0 b8 02 00 00 00 mov eax, 2 004e5 48 6b c0 56 imul rax, rax, 86 ; 00000056H 004e9 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 004f0 ba a2 00 00 00 mov edx, 162 ; 000000a2H 004f5 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 250 : ; 251 : _glfw.win32.keycodes[0x00E] = GLFW_KEY_BACKSPACE; 004f9 b8 02 00 00 00 mov eax, 2 004fe 48 6b c0 0e imul rax, rax, 14 00502 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00509 ba 03 01 00 00 mov edx, 259 ; 00000103H 0050e 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 252 : _glfw.win32.keycodes[0x153] = GLFW_KEY_DELETE; 00512 b8 02 00 00 00 mov eax, 2 00517 48 69 c0 53 01 00 00 imul rax, rax, 339 ; 00000153H 0051e 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00525 ba 05 01 00 00 mov edx, 261 ; 00000105H 0052a 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 253 : _glfw.win32.keycodes[0x14F] = GLFW_KEY_END; 0052e b8 02 00 00 00 mov eax, 2 00533 48 69 c0 4f 01 00 00 imul rax, rax, 335 ; 0000014fH 0053a 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00541 ba 0d 01 00 00 mov edx, 269 ; 0000010dH 00546 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 254 : _glfw.win32.keycodes[0x01C] = GLFW_KEY_ENTER; 0054a b8 02 00 00 00 mov eax, 2 0054f 48 6b c0 1c imul rax, rax, 28 00553 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0055a ba 01 01 00 00 mov edx, 257 ; 00000101H 0055f 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 255 : _glfw.win32.keycodes[0x001] = GLFW_KEY_ESCAPE; 00563 b8 02 00 00 00 mov eax, 2 00568 48 6b c0 01 imul rax, rax, 1 0056c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00573 ba 00 01 00 00 mov edx, 256 ; 00000100H 00578 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 256 : _glfw.win32.keycodes[0x147] = GLFW_KEY_HOME; 0057c b8 02 00 00 00 mov eax, 2 00581 48 69 c0 47 01 00 00 imul rax, rax, 327 ; 00000147H 00588 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0058f ba 0c 01 00 00 mov edx, 268 ; 0000010cH 00594 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 257 : _glfw.win32.keycodes[0x152] = GLFW_KEY_INSERT; 00598 b8 02 00 00 00 mov eax, 2 0059d 48 69 c0 52 01 00 00 imul rax, rax, 338 ; 00000152H 005a4 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 005ab ba 04 01 00 00 mov edx, 260 ; 00000104H 005b0 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 258 : _glfw.win32.keycodes[0x15D] = GLFW_KEY_MENU; 005b4 b8 02 00 00 00 mov eax, 2 005b9 48 69 c0 5d 01 00 00 imul rax, rax, 349 ; 0000015dH 005c0 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 005c7 ba 5c 01 00 00 mov edx, 348 ; 0000015cH 005cc 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 259 : _glfw.win32.keycodes[0x151] = GLFW_KEY_PAGE_DOWN; 005d0 b8 02 00 00 00 mov eax, 2 005d5 48 69 c0 51 01 00 00 imul rax, rax, 337 ; 00000151H 005dc 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 005e3 ba 0b 01 00 00 mov edx, 267 ; 0000010bH 005e8 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 260 : _glfw.win32.keycodes[0x149] = GLFW_KEY_PAGE_UP; 005ec b8 02 00 00 00 mov eax, 2 005f1 48 69 c0 49 01 00 00 imul rax, rax, 329 ; 00000149H 005f8 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 005ff ba 0a 01 00 00 mov edx, 266 ; 0000010aH 00604 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 261 : _glfw.win32.keycodes[0x045] = GLFW_KEY_PAUSE; 00608 b8 02 00 00 00 mov eax, 2 0060d 48 6b c0 45 imul rax, rax, 69 ; 00000045H 00611 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00618 ba 1c 01 00 00 mov edx, 284 ; 0000011cH 0061d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 262 : _glfw.win32.keycodes[0x039] = GLFW_KEY_SPACE; 00621 b8 02 00 00 00 mov eax, 2 00626 48 6b c0 39 imul rax, rax, 57 ; 00000039H 0062a 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00631 ba 20 00 00 00 mov edx, 32 ; 00000020H 00636 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 263 : _glfw.win32.keycodes[0x00F] = GLFW_KEY_TAB; 0063a b8 02 00 00 00 mov eax, 2 0063f 48 6b c0 0f imul rax, rax, 15 00643 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0064a ba 02 01 00 00 mov edx, 258 ; 00000102H 0064f 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 264 : _glfw.win32.keycodes[0x03A] = GLFW_KEY_CAPS_LOCK; 00653 b8 02 00 00 00 mov eax, 2 00658 48 6b c0 3a imul rax, rax, 58 ; 0000003aH 0065c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00663 ba 18 01 00 00 mov edx, 280 ; 00000118H 00668 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 265 : _glfw.win32.keycodes[0x145] = GLFW_KEY_NUM_LOCK; 0066c b8 02 00 00 00 mov eax, 2 00671 48 69 c0 45 01 00 00 imul rax, rax, 325 ; 00000145H 00678 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0067f ba 1a 01 00 00 mov edx, 282 ; 0000011aH 00684 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 266 : _glfw.win32.keycodes[0x046] = GLFW_KEY_SCROLL_LOCK; 00688 b8 02 00 00 00 mov eax, 2 0068d 48 6b c0 46 imul rax, rax, 70 ; 00000046H 00691 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00698 ba 19 01 00 00 mov edx, 281 ; 00000119H 0069d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 267 : _glfw.win32.keycodes[0x03B] = GLFW_KEY_F1; 006a1 b8 02 00 00 00 mov eax, 2 006a6 48 6b c0 3b imul rax, rax, 59 ; 0000003bH 006aa 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 006b1 ba 22 01 00 00 mov edx, 290 ; 00000122H 006b6 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 268 : _glfw.win32.keycodes[0x03C] = GLFW_KEY_F2; 006ba b8 02 00 00 00 mov eax, 2 006bf 48 6b c0 3c imul rax, rax, 60 ; 0000003cH 006c3 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 006ca ba 23 01 00 00 mov edx, 291 ; 00000123H 006cf 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 269 : _glfw.win32.keycodes[0x03D] = GLFW_KEY_F3; 006d3 b8 02 00 00 00 mov eax, 2 006d8 48 6b c0 3d imul rax, rax, 61 ; 0000003dH 006dc 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 006e3 ba 24 01 00 00 mov edx, 292 ; 00000124H 006e8 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 270 : _glfw.win32.keycodes[0x03E] = GLFW_KEY_F4; 006ec b8 02 00 00 00 mov eax, 2 006f1 48 6b c0 3e imul rax, rax, 62 ; 0000003eH 006f5 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 006fc ba 25 01 00 00 mov edx, 293 ; 00000125H 00701 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 271 : _glfw.win32.keycodes[0x03F] = GLFW_KEY_F5; 00705 b8 02 00 00 00 mov eax, 2 0070a 48 6b c0 3f imul rax, rax, 63 ; 0000003fH 0070e 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00715 ba 26 01 00 00 mov edx, 294 ; 00000126H 0071a 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 272 : _glfw.win32.keycodes[0x040] = GLFW_KEY_F6; 0071e b8 02 00 00 00 mov eax, 2 00723 48 6b c0 40 imul rax, rax, 64 ; 00000040H 00727 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0072e ba 27 01 00 00 mov edx, 295 ; 00000127H 00733 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 273 : _glfw.win32.keycodes[0x041] = GLFW_KEY_F7; 00737 b8 02 00 00 00 mov eax, 2 0073c 48 6b c0 41 imul rax, rax, 65 ; 00000041H 00740 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00747 ba 28 01 00 00 mov edx, 296 ; 00000128H 0074c 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 274 : _glfw.win32.keycodes[0x042] = GLFW_KEY_F8; 00750 b8 02 00 00 00 mov eax, 2 00755 48 6b c0 42 imul rax, rax, 66 ; 00000042H 00759 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00760 ba 29 01 00 00 mov edx, 297 ; 00000129H 00765 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 275 : _glfw.win32.keycodes[0x043] = GLFW_KEY_F9; 00769 b8 02 00 00 00 mov eax, 2 0076e 48 6b c0 43 imul rax, rax, 67 ; 00000043H 00772 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00779 ba 2a 01 00 00 mov edx, 298 ; 0000012aH 0077e 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 276 : _glfw.win32.keycodes[0x044] = GLFW_KEY_F10; 00782 b8 02 00 00 00 mov eax, 2 00787 48 6b c0 44 imul rax, rax, 68 ; 00000044H 0078b 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00792 ba 2b 01 00 00 mov edx, 299 ; 0000012bH 00797 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 277 : _glfw.win32.keycodes[0x057] = GLFW_KEY_F11; 0079b b8 02 00 00 00 mov eax, 2 007a0 48 6b c0 57 imul rax, rax, 87 ; 00000057H 007a4 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 007ab ba 2c 01 00 00 mov edx, 300 ; 0000012cH 007b0 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 278 : _glfw.win32.keycodes[0x058] = GLFW_KEY_F12; 007b4 b8 02 00 00 00 mov eax, 2 007b9 48 6b c0 58 imul rax, rax, 88 ; 00000058H 007bd 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 007c4 ba 2d 01 00 00 mov edx, 301 ; 0000012dH 007c9 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 279 : _glfw.win32.keycodes[0x064] = GLFW_KEY_F13; 007cd b8 02 00 00 00 mov eax, 2 007d2 48 6b c0 64 imul rax, rax, 100 ; 00000064H 007d6 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 007dd ba 2e 01 00 00 mov edx, 302 ; 0000012eH 007e2 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 280 : _glfw.win32.keycodes[0x065] = GLFW_KEY_F14; 007e6 b8 02 00 00 00 mov eax, 2 007eb 48 6b c0 65 imul rax, rax, 101 ; 00000065H 007ef 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 007f6 ba 2f 01 00 00 mov edx, 303 ; 0000012fH 007fb 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 281 : _glfw.win32.keycodes[0x066] = GLFW_KEY_F15; 007ff b8 02 00 00 00 mov eax, 2 00804 48 6b c0 66 imul rax, rax, 102 ; 00000066H 00808 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0080f ba 30 01 00 00 mov edx, 304 ; 00000130H 00814 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 282 : _glfw.win32.keycodes[0x067] = GLFW_KEY_F16; 00818 b8 02 00 00 00 mov eax, 2 0081d 48 6b c0 67 imul rax, rax, 103 ; 00000067H 00821 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00828 ba 31 01 00 00 mov edx, 305 ; 00000131H 0082d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 283 : _glfw.win32.keycodes[0x068] = GLFW_KEY_F17; 00831 b8 02 00 00 00 mov eax, 2 00836 48 6b c0 68 imul rax, rax, 104 ; 00000068H 0083a 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00841 ba 32 01 00 00 mov edx, 306 ; 00000132H 00846 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 284 : _glfw.win32.keycodes[0x069] = GLFW_KEY_F18; 0084a b8 02 00 00 00 mov eax, 2 0084f 48 6b c0 69 imul rax, rax, 105 ; 00000069H 00853 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0085a ba 33 01 00 00 mov edx, 307 ; 00000133H 0085f 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 285 : _glfw.win32.keycodes[0x06A] = GLFW_KEY_F19; 00863 b8 02 00 00 00 mov eax, 2 00868 48 6b c0 6a imul rax, rax, 106 ; 0000006aH 0086c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00873 ba 34 01 00 00 mov edx, 308 ; 00000134H 00878 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 286 : _glfw.win32.keycodes[0x06B] = GLFW_KEY_F20; 0087c b8 02 00 00 00 mov eax, 2 00881 48 6b c0 6b imul rax, rax, 107 ; 0000006bH 00885 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0088c ba 35 01 00 00 mov edx, 309 ; 00000135H 00891 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 287 : _glfw.win32.keycodes[0x06C] = GLFW_KEY_F21; 00895 b8 02 00 00 00 mov eax, 2 0089a 48 6b c0 6c imul rax, rax, 108 ; 0000006cH 0089e 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 008a5 ba 36 01 00 00 mov edx, 310 ; 00000136H 008aa 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 288 : _glfw.win32.keycodes[0x06D] = GLFW_KEY_F22; 008ae b8 02 00 00 00 mov eax, 2 008b3 48 6b c0 6d imul rax, rax, 109 ; 0000006dH 008b7 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 008be ba 37 01 00 00 mov edx, 311 ; 00000137H 008c3 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 289 : _glfw.win32.keycodes[0x06E] = GLFW_KEY_F23; 008c7 b8 02 00 00 00 mov eax, 2 008cc 48 6b c0 6e imul rax, rax, 110 ; 0000006eH 008d0 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 008d7 ba 38 01 00 00 mov edx, 312 ; 00000138H 008dc 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 290 : _glfw.win32.keycodes[0x076] = GLFW_KEY_F24; 008e0 b8 02 00 00 00 mov eax, 2 008e5 48 6b c0 76 imul rax, rax, 118 ; 00000076H 008e9 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 008f0 ba 39 01 00 00 mov edx, 313 ; 00000139H 008f5 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 291 : _glfw.win32.keycodes[0x038] = GLFW_KEY_LEFT_ALT; 008f9 b8 02 00 00 00 mov eax, 2 008fe 48 6b c0 38 imul rax, rax, 56 ; 00000038H 00902 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00909 ba 56 01 00 00 mov edx, 342 ; 00000156H 0090e 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 292 : _glfw.win32.keycodes[0x01D] = GLFW_KEY_LEFT_CONTROL; 00912 b8 02 00 00 00 mov eax, 2 00917 48 6b c0 1d imul rax, rax, 29 0091b 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00922 ba 55 01 00 00 mov edx, 341 ; 00000155H 00927 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 293 : _glfw.win32.keycodes[0x02A] = GLFW_KEY_LEFT_SHIFT; 0092b b8 02 00 00 00 mov eax, 2 00930 48 6b c0 2a imul rax, rax, 42 ; 0000002aH 00934 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0093b ba 54 01 00 00 mov edx, 340 ; 00000154H 00940 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 294 : _glfw.win32.keycodes[0x15B] = GLFW_KEY_LEFT_SUPER; 00944 b8 02 00 00 00 mov eax, 2 00949 48 69 c0 5b 01 00 00 imul rax, rax, 347 ; 0000015bH 00950 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00957 ba 57 01 00 00 mov edx, 343 ; 00000157H 0095c 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 295 : _glfw.win32.keycodes[0x137] = GLFW_KEY_PRINT_SCREEN; 00960 b8 02 00 00 00 mov eax, 2 00965 48 69 c0 37 01 00 00 imul rax, rax, 311 ; 00000137H 0096c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00973 ba 1b 01 00 00 mov edx, 283 ; 0000011bH 00978 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 296 : _glfw.win32.keycodes[0x138] = GLFW_KEY_RIGHT_ALT; 0097c b8 02 00 00 00 mov eax, 2 00981 48 69 c0 38 01 00 00 imul rax, rax, 312 ; 00000138H 00988 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 0098f ba 5a 01 00 00 mov edx, 346 ; 0000015aH 00994 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 297 : _glfw.win32.keycodes[0x11D] = GLFW_KEY_RIGHT_CONTROL; 00998 b8 02 00 00 00 mov eax, 2 0099d 48 69 c0 1d 01 00 00 imul rax, rax, 285 ; 0000011dH 009a4 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 009ab ba 59 01 00 00 mov edx, 345 ; 00000159H 009b0 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 298 : _glfw.win32.keycodes[0x036] = GLFW_KEY_RIGHT_SHIFT; 009b4 b8 02 00 00 00 mov eax, 2 009b9 48 6b c0 36 imul rax, rax, 54 ; 00000036H 009bd 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 009c4 ba 58 01 00 00 mov edx, 344 ; 00000158H 009c9 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 299 : _glfw.win32.keycodes[0x15C] = GLFW_KEY_RIGHT_SUPER; 009cd b8 02 00 00 00 mov eax, 2 009d2 48 69 c0 5c 01 00 00 imul rax, rax, 348 ; 0000015cH 009d9 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 009e0 ba 5b 01 00 00 mov edx, 347 ; 0000015bH 009e5 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 300 : _glfw.win32.keycodes[0x150] = GLFW_KEY_DOWN; 009e9 b8 02 00 00 00 mov eax, 2 009ee 48 69 c0 50 01 00 00 imul rax, rax, 336 ; 00000150H 009f5 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 009fc ba 08 01 00 00 mov edx, 264 ; 00000108H 00a01 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 301 : _glfw.win32.keycodes[0x14B] = GLFW_KEY_LEFT; 00a05 b8 02 00 00 00 mov eax, 2 00a0a 48 69 c0 4b 01 00 00 imul rax, rax, 331 ; 0000014bH 00a11 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00a18 ba 07 01 00 00 mov edx, 263 ; 00000107H 00a1d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 302 : _glfw.win32.keycodes[0x14D] = GLFW_KEY_RIGHT; 00a21 b8 02 00 00 00 mov eax, 2 00a26 48 69 c0 4d 01 00 00 imul rax, rax, 333 ; 0000014dH 00a2d 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00a34 ba 06 01 00 00 mov edx, 262 ; 00000106H 00a39 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 303 : _glfw.win32.keycodes[0x148] = GLFW_KEY_UP; 00a3d b8 02 00 00 00 mov eax, 2 00a42 48 69 c0 48 01 00 00 imul rax, rax, 328 ; 00000148H 00a49 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00a50 ba 09 01 00 00 mov edx, 265 ; 00000109H 00a55 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 304 : ; 305 : _glfw.win32.keycodes[0x052] = GLFW_KEY_KP_0; 00a59 b8 02 00 00 00 mov eax, 2 00a5e 48 6b c0 52 imul rax, rax, 82 ; 00000052H 00a62 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00a69 ba 40 01 00 00 mov edx, 320 ; 00000140H 00a6e 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 306 : _glfw.win32.keycodes[0x04F] = GLFW_KEY_KP_1; 00a72 b8 02 00 00 00 mov eax, 2 00a77 48 6b c0 4f imul rax, rax, 79 ; 0000004fH 00a7b 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00a82 ba 41 01 00 00 mov edx, 321 ; 00000141H 00a87 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 307 : _glfw.win32.keycodes[0x050] = GLFW_KEY_KP_2; 00a8b b8 02 00 00 00 mov eax, 2 00a90 48 6b c0 50 imul rax, rax, 80 ; 00000050H 00a94 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00a9b ba 42 01 00 00 mov edx, 322 ; 00000142H 00aa0 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 308 : _glfw.win32.keycodes[0x051] = GLFW_KEY_KP_3; 00aa4 b8 02 00 00 00 mov eax, 2 00aa9 48 6b c0 51 imul rax, rax, 81 ; 00000051H 00aad 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00ab4 ba 43 01 00 00 mov edx, 323 ; 00000143H 00ab9 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 309 : _glfw.win32.keycodes[0x04B] = GLFW_KEY_KP_4; 00abd b8 02 00 00 00 mov eax, 2 00ac2 48 6b c0 4b imul rax, rax, 75 ; 0000004bH 00ac6 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00acd ba 44 01 00 00 mov edx, 324 ; 00000144H 00ad2 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 310 : _glfw.win32.keycodes[0x04C] = GLFW_KEY_KP_5; 00ad6 b8 02 00 00 00 mov eax, 2 00adb 48 6b c0 4c imul rax, rax, 76 ; 0000004cH 00adf 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00ae6 ba 45 01 00 00 mov edx, 325 ; 00000145H 00aeb 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 311 : _glfw.win32.keycodes[0x04D] = GLFW_KEY_KP_6; 00aef b8 02 00 00 00 mov eax, 2 00af4 48 6b c0 4d imul rax, rax, 77 ; 0000004dH 00af8 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00aff ba 46 01 00 00 mov edx, 326 ; 00000146H 00b04 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 312 : _glfw.win32.keycodes[0x047] = GLFW_KEY_KP_7; 00b08 b8 02 00 00 00 mov eax, 2 00b0d 48 6b c0 47 imul rax, rax, 71 ; 00000047H 00b11 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00b18 ba 47 01 00 00 mov edx, 327 ; 00000147H 00b1d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 313 : _glfw.win32.keycodes[0x048] = GLFW_KEY_KP_8; 00b21 b8 02 00 00 00 mov eax, 2 00b26 48 6b c0 48 imul rax, rax, 72 ; 00000048H 00b2a 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00b31 ba 48 01 00 00 mov edx, 328 ; 00000148H 00b36 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 314 : _glfw.win32.keycodes[0x049] = GLFW_KEY_KP_9; 00b3a b8 02 00 00 00 mov eax, 2 00b3f 48 6b c0 49 imul rax, rax, 73 ; 00000049H 00b43 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00b4a ba 49 01 00 00 mov edx, 329 ; 00000149H 00b4f 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 315 : _glfw.win32.keycodes[0x04E] = GLFW_KEY_KP_ADD; 00b53 b8 02 00 00 00 mov eax, 2 00b58 48 6b c0 4e imul rax, rax, 78 ; 0000004eH 00b5c 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00b63 ba 4e 01 00 00 mov edx, 334 ; 0000014eH 00b68 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 316 : _glfw.win32.keycodes[0x053] = GLFW_KEY_KP_DECIMAL; 00b6c b8 02 00 00 00 mov eax, 2 00b71 48 6b c0 53 imul rax, rax, 83 ; 00000053H 00b75 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00b7c ba 4a 01 00 00 mov edx, 330 ; 0000014aH 00b81 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 317 : _glfw.win32.keycodes[0x135] = GLFW_KEY_KP_DIVIDE; 00b85 b8 02 00 00 00 mov eax, 2 00b8a 48 69 c0 35 01 00 00 imul rax, rax, 309 ; 00000135H 00b91 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00b98 ba 4b 01 00 00 mov edx, 331 ; 0000014bH 00b9d 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 318 : _glfw.win32.keycodes[0x11C] = GLFW_KEY_KP_ENTER; 00ba1 b8 02 00 00 00 mov eax, 2 00ba6 48 69 c0 1c 01 00 00 imul rax, rax, 284 ; 0000011cH 00bad 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00bb4 ba 4f 01 00 00 mov edx, 335 ; 0000014fH 00bb9 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 319 : _glfw.win32.keycodes[0x059] = GLFW_KEY_KP_EQUAL; 00bbd b8 02 00 00 00 mov eax, 2 00bc2 48 6b c0 59 imul rax, rax, 89 ; 00000059H 00bc6 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00bcd ba 50 01 00 00 mov edx, 336 ; 00000150H 00bd2 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 320 : _glfw.win32.keycodes[0x037] = GLFW_KEY_KP_MULTIPLY; 00bd6 b8 02 00 00 00 mov eax, 2 00bdb 48 6b c0 37 imul rax, rax, 55 ; 00000037H 00bdf 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00be6 ba 4c 01 00 00 mov edx, 332 ; 0000014cH 00beb 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 321 : _glfw.win32.keycodes[0x04A] = GLFW_KEY_KP_SUBTRACT; 00bef b8 02 00 00 00 mov eax, 2 00bf4 48 6b c0 4a imul rax, rax, 74 ; 0000004aH 00bf8 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00bff ba 4d 01 00 00 mov edx, 333 ; 0000014dH 00c04 66 89 14 01 mov WORD PTR [rcx+rax], dx ; 322 : ; 323 : for (scancode = 0; scancode < 512; scancode++) 00c08 c7 45 04 00 00 00 00 mov DWORD PTR scancode$[rbp], 0 00c0f eb 08 jmp SHORT $LN4@createKeyT $LN2@createKeyT: 00c11 8b 45 04 mov eax, DWORD PTR scancode$[rbp] 00c14 ff c0 inc eax 00c16 89 45 04 mov DWORD PTR scancode$[rbp], eax $LN4@createKeyT: 00c19 81 7d 04 00 02 00 00 cmp DWORD PTR scancode$[rbp], 512 ; 00000200H 00c20 7d 34 jge SHORT $LN3@createKeyT ; 324 : { ; 325 : if (_glfw.win32.keycodes[scancode] > 0) 00c22 48 63 45 04 movsxd rax, DWORD PTR scancode$[rbp] 00c26 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00c2d 0f bf 04 41 movsx eax, WORD PTR [rcx+rax*2] 00c31 85 c0 test eax, eax 00c33 7e 1f jle SHORT $LN5@createKeyT ; 326 : _glfw.win32.scancodes[_glfw.win32.keycodes[scancode]] = scancode; 00c35 48 63 45 04 movsxd rax, DWORD PTR scancode$[rbp] 00c39 48 8d 0d a8 1b 00 00 lea rcx, OFFSET FLAT:_glfw+7080 00c40 48 0f bf 04 41 movsx rax, WORD PTR [rcx+rax*2] 00c45 48 8d 0d a8 1f 00 00 lea rcx, OFFSET FLAT:_glfw+8104 00c4c 0f b7 55 04 movzx edx, WORD PTR scancode$[rbp] 00c50 66 89 14 41 mov WORD PTR [rcx+rax*2], dx $LN5@createKeyT: ; 327 : } 00c54 eb bb jmp SHORT $LN2@createKeyT $LN3@createKeyT: ; 328 : } 00c56 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00c5d 5f pop rdi 00c5e 5d pop rbp 00c5f c3 ret 0 createKeyTables ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT freeLibraries _TEXT SEGMENT freeLibraries PROC ; COMDAT ; 172 : { 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:__C017AD33_win32_init@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 173 : if (_glfw.win32.xinput.instance) 0001b 48 83 3d 80 29 00 00 00 cmp QWORD PTR _glfw+10624, 0 00023 74 0c je SHORT $LN2@freeLibrar ; 174 : _glfwPlatformFreeModule(_glfw.win32.xinput.instance); 00025 48 8b 0d 80 29 00 00 mov rcx, QWORD PTR _glfw+10624 0002c e8 00 00 00 00 call _glfwPlatformFreeModule $LN2@freeLibrar: ; 175 : ; 176 : if (_glfw.win32.dinput8.instance) 00031 48 83 3d 68 29 00 00 00 cmp QWORD PTR _glfw+10600, 0 00039 74 0c je SHORT $LN3@freeLibrar ; 177 : _glfwPlatformFreeModule(_glfw.win32.dinput8.instance); 0003b 48 8b 0d 68 29 00 00 mov rcx, QWORD PTR _glfw+10600 00042 e8 00 00 00 00 call _glfwPlatformFreeModule $LN3@freeLibrar: ; 178 : ; 179 : if (_glfw.win32.user32.instance) 00047 48 83 3d 98 29 00 00 00 cmp QWORD PTR _glfw+10648, 0 0004f 74 0c je SHORT $LN4@freeLibrar ; 180 : _glfwPlatformFreeModule(_glfw.win32.user32.instance); 00051 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 00058 e8 00 00 00 00 call _glfwPlatformFreeModule $LN4@freeLibrar: ; 181 : ; 182 : if (_glfw.win32.dwmapi.instance) 0005d 48 83 3d d8 29 00 00 00 cmp QWORD PTR _glfw+10712, 0 00065 74 0c je SHORT $LN5@freeLibrar ; 183 : _glfwPlatformFreeModule(_glfw.win32.dwmapi.instance); 00067 48 8b 0d d8 29 00 00 mov rcx, QWORD PTR _glfw+10712 0006e e8 00 00 00 00 call _glfwPlatformFreeModule $LN5@freeLibrar: ; 184 : ; 185 : if (_glfw.win32.shcore.instance) 00073 48 83 3d 00 2a 00 00 00 cmp QWORD PTR _glfw+10752, 0 0007b 74 0c je SHORT $LN6@freeLibrar ; 186 : _glfwPlatformFreeModule(_glfw.win32.shcore.instance); 0007d 48 8b 0d 00 2a 00 00 mov rcx, QWORD PTR _glfw+10752 00084 e8 00 00 00 00 call _glfwPlatformFreeModule $LN6@freeLibrar: ; 187 : ; 188 : if (_glfw.win32.ntdll.instance) 00089 48 83 3d 18 2a 00 00 00 cmp QWORD PTR _glfw+10776, 0 00091 74 0c je SHORT $LN7@freeLibrar ; 189 : _glfwPlatformFreeModule(_glfw.win32.ntdll.instance); 00093 48 8b 0d 18 2a 00 00 mov rcx, QWORD PTR _glfw+10776 0009a e8 00 00 00 00 call _glfwPlatformFreeModule $LN7@freeLibrar: ; 190 : } 0009f 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000a6 5f pop rdi 000a7 5d pop rbp 000a8 c3 ret 0 freeLibraries ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT loadLibraries _TEXT SEGMENT i$4 = 4 names$5 = 40 loadLibraries PROC ; COMDAT ; 69 : { 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec 58 01 00 00 sub rsp, 344 ; 00000158H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00014 b9 1e 00 00 00 mov ecx, 30 00019 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0001e f3 ab rep stosd 00020 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 00027 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 70 : if (!GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS | 0002c 4c 8d 05 78 1b 00 00 lea r8, OFFSET FLAT:_glfw+7032 00033 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfw 0003a b9 06 00 00 00 mov ecx, 6 0003f ff 15 00 00 00 00 call QWORD PTR __imp_GetModuleHandleExW 00045 85 c0 test eax, eax 00047 75 18 jne SHORT $LN5@loadLibrar ; 71 : GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, ; 72 : (const WCHAR*)&_glfw, ; 73 : (HMODULE*)&_glfw.win32.instance)) ; 74 : { ; 75 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 00049 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CM@IALNOPFK@Win32?3?5Failed?5to?5retrieve?5own?5m@ 00050 b9 08 00 01 00 mov ecx, 65544 ; 00010008H 00055 e8 00 00 00 00 call _glfwInputErrorWin32 ; 76 : "Win32: Failed to retrieve own module handle"); ; 77 : return GLFW_FALSE; 0005a 33 c0 xor eax, eax 0005c e9 e7 02 00 00 jmp $LN1@loadLibrar $LN5@loadLibrar: ; 78 : } ; 79 : ; 80 : _glfw.win32.user32.instance = _glfwPlatformLoadModule("user32.dll"); 00061 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@GMPLCCII@user32?4dll@ 00068 e8 00 00 00 00 call _glfwPlatformLoadModule 0006d 48 89 05 98 29 00 00 mov QWORD PTR _glfw+10648, rax ; 81 : if (!_glfw.win32.user32.instance) 00074 48 83 3d 98 29 00 00 00 cmp QWORD PTR _glfw+10648, 0 0007c 75 18 jne SHORT $LN6@loadLibrar ; 82 : { ; 83 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 0007e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CB@HHJIGJHK@Win32?3?5Failed?5to?5load?5user32?4dl@ 00085 b9 08 00 01 00 mov ecx, 65544 ; 00010008H 0008a e8 00 00 00 00 call _glfwInputErrorWin32 ; 84 : "Win32: Failed to load user32.dll"); ; 85 : return GLFW_FALSE; 0008f 33 c0 xor eax, eax 00091 e9 b2 02 00 00 jmp $LN1@loadLibrar $LN6@loadLibrar: ; 86 : } ; 87 : ; 88 : _glfw.win32.user32.SetProcessDPIAware_ = (PFN_SetProcessDPIAware) 00096 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BD@ENICNPLM@SetProcessDPIAware@ 0009d 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 000a4 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 000a9 48 89 05 a0 29 00 00 mov QWORD PTR _glfw+10656, rax ; 89 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "SetProcessDPIAware"); ; 90 : _glfw.win32.user32.ChangeWindowMessageFilterEx_ = (PFN_ChangeWindowMessageFilterEx) 000b0 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BM@OCGPLDNC@ChangeWindowMessageFilterEx@ 000b7 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 000be e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 000c3 48 89 05 a8 29 00 00 mov QWORD PTR _glfw+10664, rax ; 91 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "ChangeWindowMessageFilterEx"); ; 92 : _glfw.win32.user32.EnableNonClientDpiScaling_ = (PFN_EnableNonClientDpiScaling) 000ca 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BK@NKEDGNNN@EnableNonClientDpiScaling@ 000d1 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 000d8 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 000dd 48 89 05 b0 29 00 00 mov QWORD PTR _glfw+10672, rax ; 93 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "EnableNonClientDpiScaling"); ; 94 : _glfw.win32.user32.SetProcessDpiAwarenessContext_ = (PFN_SetProcessDpiAwarenessContext) 000e4 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BO@LHMLBOLK@SetProcessDpiAwarenessContext@ 000eb 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 000f2 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 000f7 48 89 05 b8 29 00 00 mov QWORD PTR _glfw+10680, rax ; 95 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "SetProcessDpiAwarenessContext"); ; 96 : _glfw.win32.user32.GetDpiForWindow_ = (PFN_GetDpiForWindow) 000fe 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BA@LGGPEDOH@GetDpiForWindow@ 00105 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 0010c e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 00111 48 89 05 c0 29 00 00 mov QWORD PTR _glfw+10688, rax ; 97 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "GetDpiForWindow"); ; 98 : _glfw.win32.user32.AdjustWindowRectExForDpi_ = (PFN_AdjustWindowRectExForDpi) 00118 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BJ@MBAAGFCG@AdjustWindowRectExForDpi@ 0011f 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 00126 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 0012b 48 89 05 c8 29 00 00 mov QWORD PTR _glfw+10696, rax ; 99 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "AdjustWindowRectExForDpi"); ; 100 : _glfw.win32.user32.GetSystemMetricsForDpi_ = (PFN_GetSystemMetricsForDpi) 00132 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BH@HPKNFNCE@GetSystemMetricsForDpi@ 00139 48 8b 0d 98 29 00 00 mov rcx, QWORD PTR _glfw+10648 00140 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 00145 48 89 05 d0 29 00 00 mov QWORD PTR _glfw+10704, rax ; 101 : _glfwPlatformGetModuleSymbol(_glfw.win32.user32.instance, "GetSystemMetricsForDpi"); ; 102 : ; 103 : _glfw.win32.dinput8.instance = _glfwPlatformLoadModule("dinput8.dll"); 0014c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0M@ONOEDIJO@dinput8?4dll@ 00153 e8 00 00 00 00 call _glfwPlatformLoadModule 00158 48 89 05 68 29 00 00 mov QWORD PTR _glfw+10600, rax ; 104 : if (_glfw.win32.dinput8.instance) 0015f 48 83 3d 68 29 00 00 00 cmp QWORD PTR _glfw+10600, 0 00167 74 1a je SHORT $LN7@loadLibrar ; 105 : { ; 106 : _glfw.win32.dinput8.Create = (PFN_DirectInput8Create) 00169 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BD@IJCCAMHG@DirectInput8Create@ 00170 48 8b 0d 68 29 00 00 mov rcx, QWORD PTR _glfw+10600 00177 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 0017c 48 89 05 70 29 00 00 mov QWORD PTR _glfw+10608, rax $LN7@loadLibrar: ; 107 : _glfwPlatformGetModuleSymbol(_glfw.win32.dinput8.instance, "DirectInput8Create"); ; 108 : } ; 109 : ; 110 : { ; 111 : int i; ; 112 : const char* names[] = 00183 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0O@LNFLKCMF@xinput1_4?4dll@ 0018a 48 89 45 28 mov QWORD PTR names$5[rbp], rax 0018e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0O@KAFOJCHN@xinput1_3?4dll@ 00195 48 89 45 30 mov QWORD PTR names$5[rbp+8], rax 00199 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BA@GHGALGFD@xinput9_1_0?4dll@ 001a0 48 89 45 38 mov QWORD PTR names$5[rbp+16], rax 001a4 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0O@GLACEBNI@xinput1_2?4dll@ 001ab 48 89 45 40 mov QWORD PTR names$5[rbp+24], rax 001af 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0O@ONJGDDHG@xinput1_1?4dll@ 001b6 48 89 45 48 mov QWORD PTR names$5[rbp+32], rax 001ba 48 c7 45 50 00 00 00 00 mov QWORD PTR names$5[rbp+40], 0 ; 113 : { ; 114 : "xinput1_4.dll", ; 115 : "xinput1_3.dll", ; 116 : "xinput9_1_0.dll", ; 117 : "xinput1_2.dll", ; 118 : "xinput1_1.dll", ; 119 : NULL ; 120 : }; ; 121 : ; 122 : for (i = 0; names[i]; i++) 001c2 c7 45 04 00 00 00 00 mov DWORD PTR i$4[rbp], 0 001c9 eb 08 jmp SHORT $LN4@loadLibrar $LN2@loadLibrar: 001cb 8b 45 04 mov eax, DWORD PTR i$4[rbp] 001ce ff c0 inc eax 001d0 89 45 04 mov DWORD PTR i$4[rbp], eax $LN4@loadLibrar: 001d3 48 63 45 04 movsxd rax, DWORD PTR i$4[rbp] 001d7 48 83 7c c5 28 00 cmp QWORD PTR names$5[rbp+rax*8], 0 001dd 74 57 je SHORT $LN3@loadLibrar ; 123 : { ; 124 : _glfw.win32.xinput.instance = _glfwPlatformLoadModule(names[i]); 001df 48 63 45 04 movsxd rax, DWORD PTR i$4[rbp] 001e3 48 8b 4c c5 28 mov rcx, QWORD PTR names$5[rbp+rax*8] 001e8 e8 00 00 00 00 call _glfwPlatformLoadModule 001ed 48 89 05 80 29 00 00 mov QWORD PTR _glfw+10624, rax ; 125 : if (_glfw.win32.xinput.instance) 001f4 48 83 3d 80 29 00 00 00 cmp QWORD PTR _glfw+10624, 0 001fc 74 36 je SHORT $LN8@loadLibrar ; 126 : { ; 127 : _glfw.win32.xinput.GetCapabilities = (PFN_XInputGetCapabilities) 001fe 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BG@ELBNFOBA@XInputGetCapabilities@ 00205 48 8b 0d 80 29 00 00 mov rcx, QWORD PTR _glfw+10624 0020c e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 00211 48 89 05 88 29 00 00 mov QWORD PTR _glfw+10632, rax ; 128 : _glfwPlatformGetModuleSymbol(_glfw.win32.xinput.instance, "XInputGetCapabilities"); ; 129 : _glfw.win32.xinput.GetState = (PFN_XInputGetState) 00218 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0P@FCCEJHCC@XInputGetState@ 0021f 48 8b 0d 80 29 00 00 mov rcx, QWORD PTR _glfw+10624 00226 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 0022b 48 89 05 90 29 00 00 mov QWORD PTR _glfw+10640, rax ; 130 : _glfwPlatformGetModuleSymbol(_glfw.win32.xinput.instance, "XInputGetState"); ; 131 : ; 132 : break; 00232 eb 02 jmp SHORT $LN3@loadLibrar $LN8@loadLibrar: ; 133 : } ; 134 : } 00234 eb 95 jmp SHORT $LN2@loadLibrar $LN3@loadLibrar: ; 135 : } ; 136 : ; 137 : _glfw.win32.dwmapi.instance = _glfwPlatformLoadModule("dwmapi.dll"); 00236 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@FACOJKPJ@dwmapi?4dll@ 0023d e8 00 00 00 00 call _glfwPlatformLoadModule 00242 48 89 05 d8 29 00 00 mov QWORD PTR _glfw+10712, rax ; 138 : if (_glfw.win32.dwmapi.instance) 00249 48 83 3d d8 29 00 00 00 cmp QWORD PTR _glfw+10712, 0 00251 74 68 je SHORT $LN9@loadLibrar ; 139 : { ; 140 : _glfw.win32.dwmapi.IsCompositionEnabled = (PFN_DwmIsCompositionEnabled) 00253 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BI@KJPLJBHH@DwmIsCompositionEnabled@ 0025a 48 8b 0d d8 29 00 00 mov rcx, QWORD PTR _glfw+10712 00261 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 00266 48 89 05 e0 29 00 00 mov QWORD PTR _glfw+10720, rax ; 141 : _glfwPlatformGetModuleSymbol(_glfw.win32.dwmapi.instance, "DwmIsCompositionEnabled"); ; 142 : _glfw.win32.dwmapi.Flush = (PFN_DwmFlush) 0026d 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_08PEMNBIMD@DwmFlush@ 00274 48 8b 0d d8 29 00 00 mov rcx, QWORD PTR _glfw+10712 0027b e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 00280 48 89 05 e8 29 00 00 mov QWORD PTR _glfw+10728, rax ; 143 : _glfwPlatformGetModuleSymbol(_glfw.win32.dwmapi.instance, "DwmFlush"); ; 144 : _glfw.win32.dwmapi.EnableBlurBehindWindow = (PFN_DwmEnableBlurBehindWindow) 00287 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BK@HMMKMEOH@DwmEnableBlurBehindWindow@ 0028e 48 8b 0d d8 29 00 00 mov rcx, QWORD PTR _glfw+10712 00295 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 0029a 48 89 05 f0 29 00 00 mov QWORD PTR _glfw+10736, rax ; 145 : _glfwPlatformGetModuleSymbol(_glfw.win32.dwmapi.instance, "DwmEnableBlurBehindWindow"); ; 146 : _glfw.win32.dwmapi.GetColorizationColor = (PFN_DwmGetColorizationColor) 002a1 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BI@LDADLCB@DwmGetColorizationColor@ 002a8 48 8b 0d d8 29 00 00 mov rcx, QWORD PTR _glfw+10712 002af e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 002b4 48 89 05 f8 29 00 00 mov QWORD PTR _glfw+10744, rax $LN9@loadLibrar: ; 147 : _glfwPlatformGetModuleSymbol(_glfw.win32.dwmapi.instance, "DwmGetColorizationColor"); ; 148 : } ; 149 : ; 150 : _glfw.win32.shcore.instance = _glfwPlatformLoadModule("shcore.dll"); 002bb 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0L@DMFDIJCG@shcore?4dll@ 002c2 e8 00 00 00 00 call _glfwPlatformLoadModule 002c7 48 89 05 00 2a 00 00 mov QWORD PTR _glfw+10752, rax ; 151 : if (_glfw.win32.shcore.instance) 002ce 48 83 3d 00 2a 00 00 00 cmp QWORD PTR _glfw+10752, 0 002d6 74 34 je SHORT $LN10@loadLibrar ; 152 : { ; 153 : _glfw.win32.shcore.SetProcessDpiAwareness_ = (PFN_SetProcessDpiAwareness) 002d8 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BH@DGFLCCMF@SetProcessDpiAwareness@ 002df 48 8b 0d 00 2a 00 00 mov rcx, QWORD PTR _glfw+10752 002e6 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 002eb 48 89 05 08 2a 00 00 mov QWORD PTR _glfw+10760, rax ; 154 : _glfwPlatformGetModuleSymbol(_glfw.win32.shcore.instance, "SetProcessDpiAwareness"); ; 155 : _glfw.win32.shcore.GetDpiForMonitor_ = (PFN_GetDpiForMonitor) 002f2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BB@MAMHPNNC@GetDpiForMonitor@ 002f9 48 8b 0d 00 2a 00 00 mov rcx, QWORD PTR _glfw+10752 00300 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 00305 48 89 05 10 2a 00 00 mov QWORD PTR _glfw+10768, rax $LN10@loadLibrar: ; 156 : _glfwPlatformGetModuleSymbol(_glfw.win32.shcore.instance, "GetDpiForMonitor"); ; 157 : } ; 158 : ; 159 : _glfw.win32.ntdll.instance = _glfwPlatformLoadModule("ntdll.dll"); 0030c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_09FLKFJBLM@ntdll?4dll@ 00313 e8 00 00 00 00 call _glfwPlatformLoadModule 00318 48 89 05 18 2a 00 00 mov QWORD PTR _glfw+10776, rax ; 160 : if (_glfw.win32.ntdll.instance) 0031f 48 83 3d 18 2a 00 00 00 cmp QWORD PTR _glfw+10776, 0 00327 74 1a je SHORT $LN11@loadLibrar ; 161 : { ; 162 : _glfw.win32.ntdll.RtlVerifyVersionInfo_ = (PFN_RtlVerifyVersionInfo) 00329 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BF@LOGLPPDD@RtlVerifyVersionInfo@ 00330 48 8b 0d 18 2a 00 00 mov rcx, QWORD PTR _glfw+10776 00337 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 0033c 48 89 05 20 2a 00 00 mov QWORD PTR _glfw+10784, rax $LN11@loadLibrar: ; 163 : _glfwPlatformGetModuleSymbol(_glfw.win32.ntdll.instance, "RtlVerifyVersionInfo"); ; 164 : } ; 165 : ; 166 : return GLFW_TRUE; 00343 b8 01 00 00 00 mov eax, 1 $LN1@loadLibrar: ; 167 : } 00348 48 8b f8 mov rdi, rax 0034b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0034f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:loadLibraries$rtcFrameData 00356 e8 00 00 00 00 call _RTC_CheckStackVars 0035b 48 8b c7 mov rax, rdi 0035e 48 8d a5 38 01 00 00 lea rsp, QWORD PTR [rbp+312] 00365 5f pop rdi 00366 5d pop rbp 00367 c3 ret 0 loadLibraries ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwUpdateKeyNamesWin32 _TEXT SEGMENT key$ = 4 state$ = 48 vk$6 = 324 scancode$7 = 356 length$8 = 388 chars$9 = 424 vks$10 = 488 __$ArrayPad$ = 952 _glfwUpdateKeyNamesWin32 PROC ; COMDAT ; 514 : { $LN11: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec 08 04 00 00 sub rsp, 1032 ; 00000408H 0000a 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64] 0000f 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64] 00014 b9 92 00 00 00 mov ecx, 146 ; 00000092H 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 b8 03 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00031 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 00038 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 515 : int key; ; 516 : BYTE state[256] = { 0 }; 0003d 48 8d 45 30 lea rax, QWORD PTR state$[rbp] 00041 48 8b f8 mov rdi, rax 00044 33 c0 xor eax, eax 00046 b9 00 01 00 00 mov ecx, 256 ; 00000100H 0004b f3 aa rep stosb ; 517 : ; 518 : memset(_glfw.win32.keynames, 0, sizeof(_glfw.win32.keynames)); 0004d 41 b8 d1 06 00 00 mov r8d, 1745 ; 000006d1H 00053 33 d2 xor edx, edx 00055 48 8d 0d 62 22 00 00 lea rcx, OFFSET FLAT:_glfw+8802 0005c e8 00 00 00 00 call memset ; 519 : ; 520 : for (key = GLFW_KEY_SPACE; key <= GLFW_KEY_LAST; key++) 00061 c7 45 04 20 00 00 00 mov DWORD PTR key$[rbp], 32 ; 00000020H 00068 eb 08 jmp SHORT $LN4@glfwUpdate $LN2@glfwUpdate: 0006a 8b 45 04 mov eax, DWORD PTR key$[rbp] 0006d ff c0 inc eax 0006f 89 45 04 mov DWORD PTR key$[rbp], eax $LN4@glfwUpdate: 00072 81 7d 04 5c 01 00 00 cmp DWORD PTR key$[rbp], 348 ; 0000015cH 00079 0f 8f d0 01 00 00 jg $LN3@glfwUpdate ; 521 : { ; 522 : UINT vk; ; 523 : int scancode, length; ; 524 : WCHAR chars[16]; ; 525 : ; 526 : scancode = _glfw.win32.scancodes[key]; 0007f 48 63 45 04 movsxd rax, DWORD PTR key$[rbp] 00083 48 8d 0d a8 1f 00 00 lea rcx, OFFSET FLAT:_glfw+8104 0008a 0f bf 04 41 movsx eax, WORD PTR [rcx+rax*2] 0008e 89 85 64 01 00 00 mov DWORD PTR scancode$7[rbp], eax ; 527 : if (scancode == -1) 00094 83 bd 64 01 00 00 ff cmp DWORD PTR scancode$7[rbp], -1 0009b 75 02 jne SHORT $LN5@glfwUpdate ; 528 : continue; 0009d eb cb jmp SHORT $LN2@glfwUpdate $LN5@glfwUpdate: ; 529 : ; 530 : if (key >= GLFW_KEY_KP_0 && key <= GLFW_KEY_KP_ADD) 0009f 81 7d 04 40 01 00 00 cmp DWORD PTR key$[rbp], 320 ; 00000140H 000a6 0f 8c bc 00 00 00 jl $LN6@glfwUpdate 000ac 81 7d 04 4e 01 00 00 cmp DWORD PTR key$[rbp], 334 ; 0000014eH 000b3 0f 8f af 00 00 00 jg $LN6@glfwUpdate ; 531 : { ; 532 : const UINT vks[] = { 000b9 c7 85 e8 01 00 00 60 00 00 00 mov DWORD PTR vks$10[rbp], 96 ; 00000060H 000c3 c7 85 ec 01 00 00 61 00 00 00 mov DWORD PTR vks$10[rbp+4], 97 ; 00000061H 000cd c7 85 f0 01 00 00 62 00 00 00 mov DWORD PTR vks$10[rbp+8], 98 ; 00000062H 000d7 c7 85 f4 01 00 00 63 00 00 00 mov DWORD PTR vks$10[rbp+12], 99 ; 00000063H 000e1 c7 85 f8 01 00 00 64 00 00 00 mov DWORD PTR vks$10[rbp+16], 100 ; 00000064H 000eb c7 85 fc 01 00 00 65 00 00 00 mov DWORD PTR vks$10[rbp+20], 101 ; 00000065H 000f5 c7 85 00 02 00 00 66 00 00 00 mov DWORD PTR vks$10[rbp+24], 102 ; 00000066H 000ff c7 85 04 02 00 00 67 00 00 00 mov DWORD PTR vks$10[rbp+28], 103 ; 00000067H 00109 c7 85 08 02 00 00 68 00 00 00 mov DWORD PTR vks$10[rbp+32], 104 ; 00000068H 00113 c7 85 0c 02 00 00 69 00 00 00 mov DWORD PTR vks$10[rbp+36], 105 ; 00000069H 0011d c7 85 10 02 00 00 6e 00 00 00 mov DWORD PTR vks$10[rbp+40], 110 ; 0000006eH 00127 c7 85 14 02 00 00 6f 00 00 00 mov DWORD PTR vks$10[rbp+44], 111 ; 0000006fH 00131 c7 85 18 02 00 00 6a 00 00 00 mov DWORD PTR vks$10[rbp+48], 106 ; 0000006aH 0013b c7 85 1c 02 00 00 6d 00 00 00 mov DWORD PTR vks$10[rbp+52], 109 ; 0000006dH 00145 c7 85 20 02 00 00 6b 00 00 00 mov DWORD PTR vks$10[rbp+56], 107 ; 0000006bH ; 533 : VK_NUMPAD0, VK_NUMPAD1, VK_NUMPAD2, VK_NUMPAD3, ; 534 : VK_NUMPAD4, VK_NUMPAD5, VK_NUMPAD6, VK_NUMPAD7, ; 535 : VK_NUMPAD8, VK_NUMPAD9, VK_DECIMAL, VK_DIVIDE, ; 536 : VK_MULTIPLY, VK_SUBTRACT, VK_ADD ; 537 : }; ; 538 : ; 539 : vk = vks[key - GLFW_KEY_KP_0]; 0014f 8b 45 04 mov eax, DWORD PTR key$[rbp] 00152 2d 40 01 00 00 sub eax, 320 ; 00000140H 00157 48 98 cdqe 00159 8b 84 85 e8 01 00 00 mov eax, DWORD PTR vks$10[rbp+rax*4] 00160 89 85 44 01 00 00 mov DWORD PTR vk$6[rbp], eax ; 540 : } 00166 eb 17 jmp SHORT $LN7@glfwUpdate $LN6@glfwUpdate: ; 541 : else ; 542 : vk = MapVirtualKeyW(scancode, MAPVK_VSC_TO_VK); 00168 ba 01 00 00 00 mov edx, 1 0016d 8b 8d 64 01 00 00 mov ecx, DWORD PTR scancode$7[rbp] 00173 ff 15 00 00 00 00 call QWORD PTR __imp_MapVirtualKeyW 00179 89 85 44 01 00 00 mov DWORD PTR vk$6[rbp], eax $LN7@glfwUpdate: ; 543 : ; 544 : length = ToUnicode(vk, scancode, state, 0017f c7 44 24 28 00 00 00 00 mov DWORD PTR [rsp+40], 0 00187 c7 44 24 20 10 00 00 00 mov DWORD PTR [rsp+32], 16 0018f 4c 8d 8d a8 01 00 00 lea r9, QWORD PTR chars$9[rbp] 00196 4c 8d 45 30 lea r8, QWORD PTR state$[rbp] 0019a 8b 95 64 01 00 00 mov edx, DWORD PTR scancode$7[rbp] 001a0 8b 8d 44 01 00 00 mov ecx, DWORD PTR vk$6[rbp] 001a6 ff 15 00 00 00 00 call QWORD PTR __imp_ToUnicode 001ac 89 85 84 01 00 00 mov DWORD PTR length$8[rbp], eax ; 545 : chars, sizeof(chars) / sizeof(WCHAR), ; 546 : 0); ; 547 : ; 548 : if (length == -1) 001b2 83 bd 84 01 00 00 ff cmp DWORD PTR length$8[rbp], -1 001b9 75 33 jne SHORT $LN8@glfwUpdate ; 549 : { ; 550 : // This is a dead key, so we need a second simulated key press ; 551 : // to make it output its own character (usually a diacritic) ; 552 : length = ToUnicode(vk, scancode, state, 001bb c7 44 24 28 00 00 00 00 mov DWORD PTR [rsp+40], 0 001c3 c7 44 24 20 10 00 00 00 mov DWORD PTR [rsp+32], 16 001cb 4c 8d 8d a8 01 00 00 lea r9, QWORD PTR chars$9[rbp] 001d2 4c 8d 45 30 lea r8, QWORD PTR state$[rbp] 001d6 8b 95 64 01 00 00 mov edx, DWORD PTR scancode$7[rbp] 001dc 8b 8d 44 01 00 00 mov ecx, DWORD PTR vk$6[rbp] 001e2 ff 15 00 00 00 00 call QWORD PTR __imp_ToUnicode 001e8 89 85 84 01 00 00 mov DWORD PTR length$8[rbp], eax $LN8@glfwUpdate: ; 553 : chars, sizeof(chars) / sizeof(WCHAR), ; 554 : 0); ; 555 : } ; 556 : ; 557 : if (length < 1) 001ee 83 bd 84 01 00 00 01 cmp DWORD PTR length$8[rbp], 1 001f5 7d 05 jge SHORT $LN9@glfwUpdate ; 558 : continue; 001f7 e9 6e fe ff ff jmp $LN2@glfwUpdate $LN9@glfwUpdate: ; 559 : ; 560 : WideCharToMultiByte(CP_UTF8, 0, chars, 1, 001fc 48 63 45 04 movsxd rax, DWORD PTR key$[rbp] 00200 48 6b c0 05 imul rax, rax, 5 00204 48 8d 0d 62 22 00 00 lea rcx, OFFSET FLAT:_glfw+8802 0020b 48 03 c8 add rcx, rax 0020e 48 8b c1 mov rax, rcx 00211 48 c7 44 24 38 00 00 00 00 mov QWORD PTR [rsp+56], 0 0021a 48 c7 44 24 30 00 00 00 00 mov QWORD PTR [rsp+48], 0 00223 c7 44 24 28 05 00 00 00 mov DWORD PTR [rsp+40], 5 0022b 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 00230 41 b9 01 00 00 00 mov r9d, 1 00236 4c 8d 85 a8 01 00 00 lea r8, QWORD PTR chars$9[rbp] 0023d 33 d2 xor edx, edx 0023f b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H 00244 ff 15 00 00 00 00 call QWORD PTR __imp_WideCharToMultiByte ; 561 : _glfw.win32.keynames[key], ; 562 : sizeof(_glfw.win32.keynames[key]), ; 563 : NULL, NULL); ; 564 : } 0024a e9 1b fe ff ff jmp $LN2@glfwUpdate $LN3@glfwUpdate: ; 565 : } 0024f 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64] 00253 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfwUpdateKeyNamesWin32$rtcFrameData 0025a e8 00 00 00 00 call _RTC_CheckStackVars 0025f 48 8b 8d b8 03 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00266 48 33 cd xor rcx, rbp 00269 e8 00 00 00 00 call __security_check_cookie 0026e 48 8d a5 c8 03 00 00 lea rsp, QWORD PTR [rbp+968] 00275 5f pop rdi 00276 5d pop rbp 00277 c3 ret 0 _glfwUpdateKeyNamesWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwInputErrorWin32 _TEXT SEGMENT buffer$ = 16 message$ = 2096 __$ArrayPad$ = 4472 error$ = 4512 description$ = 4520 _glfwInputErrorWin32 PROC ; COMDAT ; 493 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00009 55 push rbp 0000a 57 push rdi 0000b b8 c8 11 00 00 mov eax, 4552 ; 000011c8H 00010 e8 00 00 00 00 call __chkstk 00015 48 2b e0 sub rsp, rax 00018 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64] 0001d 48 8d 7c 24 40 lea rdi, QWORD PTR [rsp+64] 00022 b9 12 03 00 00 mov ecx, 786 ; 00000312H 00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002c f3 ab rep stosd 0002e 8b 8c 24 e8 11 00 00 mov ecx, DWORD PTR [rsp+4584] 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 78 11 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00046 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 0004d e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 494 : WCHAR buffer[_GLFW_MESSAGE_SIZE] = L""; 00052 0f b7 05 00 00 00 00 movzx eax, WORD PTR ??_C@_11LOCGONAA@@ 00059 66 89 45 10 mov WORD PTR buffer$[rbp], ax 0005d 48 8d 45 12 lea rax, QWORD PTR buffer$[rbp+2] 00061 48 8b f8 mov rdi, rax 00064 33 c0 xor eax, eax 00066 b9 fe 07 00 00 mov ecx, 2046 ; 000007feH 0006b f3 aa rep stosb ; 495 : char message[_GLFW_MESSAGE_SIZE] = ""; 0006d 0f b6 05 00 00 00 00 movzx eax, BYTE PTR ??_C@_00CNPNBAHC@@ 00074 88 85 30 08 00 00 mov BYTE PTR message$[rbp], al 0007a 48 8d 85 31 08 00 00 lea rax, QWORD PTR message$[rbp+1] 00081 48 8b f8 mov rdi, rax 00084 33 c0 xor eax, eax 00086 b9 ff 03 00 00 mov ecx, 1023 ; 000003ffH 0008b f3 aa rep stosb ; 496 : ; 497 : FormatMessageW(FORMAT_MESSAGE_FROM_SYSTEM | 0008d ff 15 00 00 00 00 call QWORD PTR __imp_GetLastError 00093 25 ff ff 00 00 and eax, 65535 ; 0000ffffH 00098 48 c7 44 24 30 00 00 00 00 mov QWORD PTR [rsp+48], 0 000a1 c7 44 24 28 00 04 00 00 mov DWORD PTR [rsp+40], 1024 ; 00000400H 000a9 48 8d 4d 10 lea rcx, QWORD PTR buffer$[rbp] 000ad 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx 000b2 41 b9 00 04 00 00 mov r9d, 1024 ; 00000400H 000b8 44 8b c0 mov r8d, eax 000bb 33 d2 xor edx, edx 000bd b9 ff 12 00 00 mov ecx, 4863 ; 000012ffH 000c2 ff 15 00 00 00 00 call QWORD PTR __imp_FormatMessageW ; 498 : FORMAT_MESSAGE_IGNORE_INSERTS | ; 499 : FORMAT_MESSAGE_MAX_WIDTH_MASK, ; 500 : NULL, ; 501 : GetLastError() & 0xffff, ; 502 : MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), ; 503 : buffer, ; 504 : sizeof(buffer) / sizeof(WCHAR), ; 505 : NULL); ; 506 : WideCharToMultiByte(CP_UTF8, 0, buffer, -1, message, sizeof(message), NULL, NULL); 000c8 48 c7 44 24 38 00 00 00 00 mov QWORD PTR [rsp+56], 0 000d1 48 c7 44 24 30 00 00 00 00 mov QWORD PTR [rsp+48], 0 000da c7 44 24 28 00 04 00 00 mov DWORD PTR [rsp+40], 1024 ; 00000400H 000e2 48 8d 85 30 08 00 00 lea rax, QWORD PTR message$[rbp] 000e9 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 000ee 41 b9 ff ff ff ff mov r9d, -1 000f4 4c 8d 45 10 lea r8, QWORD PTR buffer$[rbp] 000f8 33 d2 xor edx, edx 000fa b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H 000ff ff 15 00 00 00 00 call QWORD PTR __imp_WideCharToMultiByte ; 507 : ; 508 : _glfwInputError(error, "%s: %s", description, message); 00105 4c 8d 8d 30 08 00 00 lea r9, QWORD PTR message$[rbp] 0010c 4c 8b 85 a8 11 00 00 mov r8, QWORD PTR description$[rbp] 00113 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_06DJHOIPC@?$CFs?3?5?$CFs@ 0011a 8b 8d a0 11 00 00 mov ecx, DWORD PTR error$[rbp] 00120 e8 00 00 00 00 call _glfwInputError ; 509 : } 00125 48 8d 4d c0 lea rcx, QWORD PTR [rbp-64] 00129 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfwInputErrorWin32$rtcFrameData 00130 e8 00 00 00 00 call _RTC_CheckStackVars 00135 48 8b 8d 78 11 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 0013c 48 33 cd xor rcx, rbp 0013f e8 00 00 00 00 call __security_check_cookie 00144 48 8d a5 88 11 00 00 lea rsp, QWORD PTR [rbp+4488] 0014b 5f pop rdi 0014c 5d pop rbp 0014d c3 ret 0 _glfwInputErrorWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwIsWindows10BuildOrGreaterWin32 _TEXT SEGMENT osvi$ = 16 mask$ = 324 cond$ = 360 tv86 = 564 __$ArrayPad$ = 568 build$ = 608 _glfwIsWindows10BuildOrGreaterWin32 PROC ; COMDAT ; 586 : { $LN5: 00000 66 89 4c 24 08 mov WORD PTR [rsp+8], cx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 68 02 00 00 sub rsp, 616 ; 00000268H 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 62 00 00 00 mov ecx, 98 ; 00000062H 0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00022 f3 ab rep stosd 00024 0f b7 8c 24 88 02 00 00 movzx ecx, WORD PTR [rsp+648] 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 38 02 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 587 : OSVERSIONINFOEXW osvi = { sizeof(osvi), 10, 0, build }; 00049 c7 45 10 1c 01 00 00 mov DWORD PTR osvi$[rbp], 284 ; 0000011cH 00050 c7 45 14 0a 00 00 00 mov DWORD PTR osvi$[rbp+4], 10 00057 c7 45 18 00 00 00 00 mov DWORD PTR osvi$[rbp+8], 0 0005e 0f b7 85 60 02 00 00 movzx eax, WORD PTR build$[rbp] 00065 89 45 1c mov DWORD PTR osvi$[rbp+12], eax 00068 48 8d 45 20 lea rax, QWORD PTR osvi$[rbp+16] 0006c 48 8b f8 mov rdi, rax 0006f 33 c0 xor eax, eax 00071 b9 0c 01 00 00 mov ecx, 268 ; 0000010cH 00076 f3 aa rep stosb ; 588 : DWORD mask = VER_MAJORVERSION | VER_MINORVERSION | VER_BUILDNUMBER; 00078 c7 85 44 01 00 00 07 00 00 00 mov DWORD PTR mask$[rbp], 7 ; 589 : ULONGLONG cond = VerSetConditionMask(0, VER_MAJORVERSION, VER_GREATER_EQUAL); 00082 41 b0 03 mov r8b, 3 00085 ba 02 00 00 00 mov edx, 2 0008a 33 c9 xor ecx, ecx 0008c ff 15 00 00 00 00 call QWORD PTR __imp_VerSetConditionMask 00092 48 89 85 68 01 00 00 mov QWORD PTR cond$[rbp], rax ; 590 : cond = VerSetConditionMask(cond, VER_MINORVERSION, VER_GREATER_EQUAL); 00099 41 b0 03 mov r8b, 3 0009c ba 01 00 00 00 mov edx, 1 000a1 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR cond$[rbp] 000a8 ff 15 00 00 00 00 call QWORD PTR __imp_VerSetConditionMask 000ae 48 89 85 68 01 00 00 mov QWORD PTR cond$[rbp], rax ; 591 : cond = VerSetConditionMask(cond, VER_BUILDNUMBER, VER_GREATER_EQUAL); 000b5 41 b0 03 mov r8b, 3 000b8 ba 04 00 00 00 mov edx, 4 000bd 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR cond$[rbp] 000c4 ff 15 00 00 00 00 call QWORD PTR __imp_VerSetConditionMask 000ca 48 89 85 68 01 00 00 mov QWORD PTR cond$[rbp], rax ; 592 : // HACK: Use RtlVerifyVersionInfo instead of VerifyVersionInfoW as the ; 593 : // latter lies unless the user knew to embed a non-default manifest ; 594 : // announcing support for Windows 10 via supportedOS GUID ; 595 : return RtlVerifyVersionInfo(&osvi, mask, cond) == 0; 000d1 4c 8b 85 68 01 00 00 mov r8, QWORD PTR cond$[rbp] 000d8 8b 95 44 01 00 00 mov edx, DWORD PTR mask$[rbp] 000de 48 8d 4d 10 lea rcx, QWORD PTR osvi$[rbp] 000e2 ff 15 20 2a 00 00 call QWORD PTR _glfw+10784 000e8 85 c0 test eax, eax 000ea 75 0c jne SHORT $LN3@glfwIsWind 000ec c7 85 34 02 00 00 01 00 00 00 mov DWORD PTR tv86[rbp], 1 000f6 eb 0a jmp SHORT $LN4@glfwIsWind $LN3@glfwIsWind: 000f8 c7 85 34 02 00 00 00 00 00 00 mov DWORD PTR tv86[rbp], 0 $LN4@glfwIsWind: 00102 8b 85 34 02 00 00 mov eax, DWORD PTR tv86[rbp] ; 596 : } 00108 8b f8 mov edi, eax 0010a 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0010e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfwIsWindows10BuildOrGreaterWin32$rtcFrameData 00115 e8 00 00 00 00 call _RTC_CheckStackVars 0011a 8b c7 mov eax, edi 0011c 48 8b 8d 38 02 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 00123 48 33 cd xor rcx, rbp 00126 e8 00 00 00 00 call __security_check_cookie 0012b 48 8d a5 48 02 00 00 lea rsp, QWORD PTR [rbp+584] 00132 5f pop rdi 00133 5d pop rbp 00134 c3 ret 0 _glfwIsWindows10BuildOrGreaterWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwIsWindowsVersionOrGreaterWin32 _TEXT SEGMENT osvi$ = 16 mask$ = 324 cond$ = 360 tv91 = 564 __$ArrayPad$ = 568 major$ = 608 minor$ = 616 sp$ = 624 _glfwIsWindowsVersionOrGreaterWin32 PROC ; COMDAT ; 571 : { $LN5: 00000 66 44 89 44 24 18 mov WORD PTR [rsp+24], r8w 00006 66 89 54 24 10 mov WORD PTR [rsp+16], dx 0000b 66 89 4c 24 08 mov WORD PTR [rsp+8], cx 00010 55 push rbp 00011 57 push rdi 00012 48 81 ec 68 02 00 00 sub rsp, 616 ; 00000268H 00019 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001e 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00023 b9 62 00 00 00 mov ecx, 98 ; 00000062H 00028 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 0002d f3 ab rep stosd 0002f 0f b7 8c 24 88 02 00 00 movzx ecx, WORD PTR [rsp+648] 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 38 02 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 00048 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 0004f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 572 : OSVERSIONINFOEXW osvi = { sizeof(osvi), major, minor, 0, 0, {0}, sp }; 00054 c7 45 10 1c 01 00 00 mov DWORD PTR osvi$[rbp], 284 ; 0000011cH 0005b 0f b7 85 60 02 00 00 movzx eax, WORD PTR major$[rbp] 00062 89 45 14 mov DWORD PTR osvi$[rbp+4], eax 00065 0f b7 85 68 02 00 00 movzx eax, WORD PTR minor$[rbp] 0006c 89 45 18 mov DWORD PTR osvi$[rbp+8], eax 0006f c7 45 1c 00 00 00 00 mov DWORD PTR osvi$[rbp+12], 0 00076 c7 45 20 00 00 00 00 mov DWORD PTR osvi$[rbp+16], 0 0007d 33 c0 xor eax, eax 0007f 66 89 45 24 mov WORD PTR osvi$[rbp+20], ax 00083 48 8d 45 26 lea rax, QWORD PTR osvi$[rbp+22] 00087 48 8b f8 mov rdi, rax 0008a 33 c0 xor eax, eax 0008c b9 fe 00 00 00 mov ecx, 254 ; 000000feH 00091 f3 aa rep stosb 00093 0f b7 85 70 02 00 00 movzx eax, WORD PTR sp$[rbp] 0009a 66 89 85 24 01 00 00 mov WORD PTR osvi$[rbp+276], ax 000a1 48 8d 85 26 01 00 00 lea rax, QWORD PTR osvi$[rbp+278] 000a8 48 8b f8 mov rdi, rax 000ab 33 c0 xor eax, eax 000ad b9 06 00 00 00 mov ecx, 6 000b2 f3 aa rep stosb ; 573 : DWORD mask = VER_MAJORVERSION | VER_MINORVERSION | VER_SERVICEPACKMAJOR; 000b4 c7 85 44 01 00 00 23 00 00 00 mov DWORD PTR mask$[rbp], 35 ; 00000023H ; 574 : ULONGLONG cond = VerSetConditionMask(0, VER_MAJORVERSION, VER_GREATER_EQUAL); 000be 41 b0 03 mov r8b, 3 000c1 ba 02 00 00 00 mov edx, 2 000c6 33 c9 xor ecx, ecx 000c8 ff 15 00 00 00 00 call QWORD PTR __imp_VerSetConditionMask 000ce 48 89 85 68 01 00 00 mov QWORD PTR cond$[rbp], rax ; 575 : cond = VerSetConditionMask(cond, VER_MINORVERSION, VER_GREATER_EQUAL); 000d5 41 b0 03 mov r8b, 3 000d8 ba 01 00 00 00 mov edx, 1 000dd 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR cond$[rbp] 000e4 ff 15 00 00 00 00 call QWORD PTR __imp_VerSetConditionMask 000ea 48 89 85 68 01 00 00 mov QWORD PTR cond$[rbp], rax ; 576 : cond = VerSetConditionMask(cond, VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL); 000f1 41 b0 03 mov r8b, 3 000f4 ba 20 00 00 00 mov edx, 32 ; 00000020H 000f9 48 8b 8d 68 01 00 00 mov rcx, QWORD PTR cond$[rbp] 00100 ff 15 00 00 00 00 call QWORD PTR __imp_VerSetConditionMask 00106 48 89 85 68 01 00 00 mov QWORD PTR cond$[rbp], rax ; 577 : // HACK: Use RtlVerifyVersionInfo instead of VerifyVersionInfoW as the ; 578 : // latter lies unless the user knew to embed a non-default manifest ; 579 : // announcing support for Windows 10 via supportedOS GUID ; 580 : return RtlVerifyVersionInfo(&osvi, mask, cond) == 0; 0010d 4c 8b 85 68 01 00 00 mov r8, QWORD PTR cond$[rbp] 00114 8b 95 44 01 00 00 mov edx, DWORD PTR mask$[rbp] 0011a 48 8d 4d 10 lea rcx, QWORD PTR osvi$[rbp] 0011e ff 15 20 2a 00 00 call QWORD PTR _glfw+10784 00124 85 c0 test eax, eax 00126 75 0c jne SHORT $LN3@glfwIsWind 00128 c7 85 34 02 00 00 01 00 00 00 mov DWORD PTR tv91[rbp], 1 00132 eb 0a jmp SHORT $LN4@glfwIsWind $LN3@glfwIsWind: 00134 c7 85 34 02 00 00 00 00 00 00 mov DWORD PTR tv91[rbp], 0 $LN4@glfwIsWind: 0013e 8b 85 34 02 00 00 mov eax, DWORD PTR tv91[rbp] ; 581 : } 00144 8b f8 mov edi, eax 00146 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0014a 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfwIsWindowsVersionOrGreaterWin32$rtcFrameData 00151 e8 00 00 00 00 call _RTC_CheckStackVars 00156 8b c7 mov eax, edi 00158 48 8b 8d 38 02 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 0015f 48 33 cd xor rcx, rbp 00162 e8 00 00 00 00 call __security_check_cookie 00167 48 8d a5 48 02 00 00 lea rsp, QWORD PTR [rbp+584] 0016e 5f pop rdi 0016f 5d pop rbp 00170 c3 ret 0 _glfwIsWindowsVersionOrGreaterWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwCreateUTF8FromWideStringWin32 _TEXT SEGMENT target$ = 8 size$ = 36 source$ = 288 _glfwCreateUTF8FromWideStringWin32 PROC ; COMDAT ; 465 : { $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 48 01 00 00 sub rsp, 328 ; 00000148H 0000e 48 8d 6c 24 40 lea rbp, QWORD PTR [rsp+64] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 466 : char* target; ; 467 : int size; ; 468 : ; 469 : size = WideCharToMultiByte(CP_UTF8, 0, source, -1, NULL, 0, NULL, NULL); 0001f 48 c7 44 24 38 00 00 00 00 mov QWORD PTR [rsp+56], 0 00028 48 c7 44 24 30 00 00 00 00 mov QWORD PTR [rsp+48], 0 00031 c7 44 24 28 00 00 00 00 mov DWORD PTR [rsp+40], 0 00039 48 c7 44 24 20 00 00 00 00 mov QWORD PTR [rsp+32], 0 00042 41 b9 ff ff ff ff mov r9d, -1 00048 4c 8b 85 20 01 00 00 mov r8, QWORD PTR source$[rbp] 0004f 33 d2 xor edx, edx 00051 b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H 00056 ff 15 00 00 00 00 call QWORD PTR __imp_WideCharToMultiByte 0005c 89 45 24 mov DWORD PTR size$[rbp], eax ; 470 : if (!size) 0005f 83 7d 24 00 cmp DWORD PTR size$[rbp], 0 00063 75 15 jne SHORT $LN2@glfwCreate ; 471 : { ; 472 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 00065 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@EFIFNOJC@Win32?3?5Failed?5to?5convert?5string@ 0006c b9 08 00 01 00 mov ecx, 65544 ; 00010008H 00071 e8 00 00 00 00 call _glfwInputErrorWin32 ; 473 : "Win32: Failed to convert string to UTF-8"); ; 474 : return NULL; 00076 33 c0 xor eax, eax 00078 eb 77 jmp SHORT $LN1@glfwCreate $LN2@glfwCreate: ; 475 : } ; 476 : ; 477 : target = _glfw_calloc(size, 1); 0007a 48 63 45 24 movsxd rax, DWORD PTR size$[rbp] 0007e ba 01 00 00 00 mov edx, 1 00083 48 8b c8 mov rcx, rax 00086 e8 00 00 00 00 call _glfw_calloc 0008b 48 89 45 08 mov QWORD PTR target$[rbp], rax ; 478 : ; 479 : if (!WideCharToMultiByte(CP_UTF8, 0, source, -1, target, size, NULL, NULL)) 0008f 48 c7 44 24 38 00 00 00 00 mov QWORD PTR [rsp+56], 0 00098 48 c7 44 24 30 00 00 00 00 mov QWORD PTR [rsp+48], 0 000a1 8b 45 24 mov eax, DWORD PTR size$[rbp] 000a4 89 44 24 28 mov DWORD PTR [rsp+40], eax 000a8 48 8b 45 08 mov rax, QWORD PTR target$[rbp] 000ac 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 000b1 41 b9 ff ff ff ff mov r9d, -1 000b7 4c 8b 85 20 01 00 00 mov r8, QWORD PTR source$[rbp] 000be 33 d2 xor edx, edx 000c0 b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H 000c5 ff 15 00 00 00 00 call QWORD PTR __imp_WideCharToMultiByte 000cb 85 c0 test eax, eax 000cd 75 1e jne SHORT $LN3@glfwCreate ; 480 : { ; 481 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 000cf 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@EFIFNOJC@Win32?3?5Failed?5to?5convert?5string@ 000d6 b9 08 00 01 00 mov ecx, 65544 ; 00010008H 000db e8 00 00 00 00 call _glfwInputErrorWin32 ; 482 : "Win32: Failed to convert string to UTF-8"); ; 483 : _glfw_free(target); 000e0 48 8b 4d 08 mov rcx, QWORD PTR target$[rbp] 000e4 e8 00 00 00 00 call _glfw_free ; 484 : return NULL; 000e9 33 c0 xor eax, eax 000eb eb 04 jmp SHORT $LN1@glfwCreate $LN3@glfwCreate: ; 485 : } ; 486 : ; 487 : return target; 000ed 48 8b 45 08 mov rax, QWORD PTR target$[rbp] $LN1@glfwCreate: ; 488 : } 000f1 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 000f8 5f pop rdi 000f9 5d pop rbp 000fa c3 ret 0 _glfwCreateUTF8FromWideStringWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwCreateWideStringFromUTF8Win32 _TEXT SEGMENT target$ = 8 count$ = 36 source$ = 288 _glfwCreateWideStringFromUTF8Win32 PROC ; COMDAT ; 437 : { $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 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 438 : WCHAR* target; ; 439 : int count; ; 440 : ; 441 : count = MultiByteToWideChar(CP_UTF8, 0, source, -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 20 01 00 00 mov r8, QWORD PTR source$[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 24 mov DWORD PTR count$[rbp], eax ; 442 : if (!count) 0004d 83 7d 24 00 cmp DWORD PTR count$[rbp], 0 00051 75 15 jne SHORT $LN2@glfwCreate ; 443 : { ; 444 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 00053 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CL@JEJIBJNG@Win32?3?5Failed?5to?5convert?5string@ 0005a b9 08 00 01 00 mov ecx, 65544 ; 00010008H 0005f e8 00 00 00 00 call _glfwInputErrorWin32 ; 445 : "Win32: Failed to convert string from UTF-8"); ; 446 : return NULL; 00064 33 c0 xor eax, eax 00066 eb 65 jmp SHORT $LN1@glfwCreate $LN2@glfwCreate: ; 447 : } ; 448 : ; 449 : target = _glfw_calloc(count, sizeof(WCHAR)); 00068 48 63 45 24 movsxd rax, DWORD PTR count$[rbp] 0006c ba 02 00 00 00 mov edx, 2 00071 48 8b c8 mov rcx, rax 00074 e8 00 00 00 00 call _glfw_calloc 00079 48 89 45 08 mov QWORD PTR target$[rbp], rax ; 450 : ; 451 : if (!MultiByteToWideChar(CP_UTF8, 0, source, -1, target, count)) 0007d 8b 45 24 mov eax, DWORD PTR count$[rbp] 00080 89 44 24 28 mov DWORD PTR [rsp+40], eax 00084 48 8b 45 08 mov rax, QWORD PTR target$[rbp] 00088 48 89 44 24 20 mov QWORD PTR [rsp+32], rax 0008d 41 b9 ff ff ff ff mov r9d, -1 00093 4c 8b 85 20 01 00 00 mov r8, QWORD PTR source$[rbp] 0009a 33 d2 xor edx, edx 0009c b9 e9 fd 00 00 mov ecx, 65001 ; 0000fde9H 000a1 ff 15 00 00 00 00 call QWORD PTR __imp_MultiByteToWideChar 000a7 85 c0 test eax, eax 000a9 75 1e jne SHORT $LN3@glfwCreate ; 452 : { ; 453 : _glfwInputErrorWin32(GLFW_PLATFORM_ERROR, 000ab 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CL@JEJIBJNG@Win32?3?5Failed?5to?5convert?5string@ 000b2 b9 08 00 01 00 mov ecx, 65544 ; 00010008H 000b7 e8 00 00 00 00 call _glfwInputErrorWin32 ; 454 : "Win32: Failed to convert string from UTF-8"); ; 455 : _glfw_free(target); 000bc 48 8b 4d 08 mov rcx, QWORD PTR target$[rbp] 000c0 e8 00 00 00 00 call _glfw_free ; 456 : return NULL; 000c5 33 c0 xor eax, eax 000c7 eb 04 jmp SHORT $LN1@glfwCreate $LN3@glfwCreate: ; 457 : } ; 458 : ; 459 : return target; 000c9 48 8b 45 08 mov rax, QWORD PTR target$[rbp] $LN1@glfwCreate: ; 460 : } 000cd 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 000d4 5f pop rdi 000d5 5d pop rbp 000d6 c3 ret 0 _glfwCreateWideStringFromUTF8Win32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwTerminateWin32 _TEXT SEGMENT _glfwTerminateWin32 PROC ; COMDAT ; 703 : { $LN7: 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:__C017AD33_win32_init@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 704 : if (_glfw.win32.deviceNotificationHandle) 0001b 48 83 3d 90 1b 00 00 00 cmp QWORD PTR _glfw+7056, 0 00023 74 0d je SHORT $LN2@glfwTermin ; 705 : UnregisterDeviceNotification(_glfw.win32.deviceNotificationHandle); 00025 48 8b 0d 90 1b 00 00 mov rcx, QWORD PTR _glfw+7056 0002c ff 15 00 00 00 00 call QWORD PTR __imp_UnregisterDeviceNotification $LN2@glfwTermin: ; 706 : ; 707 : if (_glfw.win32.helperWindowHandle) 00032 48 83 3d 80 1b 00 00 00 cmp QWORD PTR _glfw+7040, 0 0003a 74 0d je SHORT $LN3@glfwTermin ; 708 : DestroyWindow(_glfw.win32.helperWindowHandle); 0003c 48 8b 0d 80 1b 00 00 mov rcx, QWORD PTR _glfw+7040 00043 ff 15 00 00 00 00 call QWORD PTR __imp_DestroyWindow $LN3@glfwTermin: ; 709 : if (_glfw.win32.helperWindowClass) 00049 0f b7 05 88 1b 00 00 movzx eax, WORD PTR _glfw+7048 00050 85 c0 test eax, eax 00052 74 16 je SHORT $LN4@glfwTermin ; 710 : UnregisterClassW(MAKEINTATOM(_glfw.win32.helperWindowClass), _glfw.win32.instance); 00054 0f b7 05 88 1b 00 00 movzx eax, WORD PTR _glfw+7048 0005b 48 8b 15 78 1b 00 00 mov rdx, QWORD PTR _glfw+7032 00062 8b c8 mov ecx, eax 00064 ff 15 00 00 00 00 call QWORD PTR __imp_UnregisterClassW $LN4@glfwTermin: ; 711 : if (_glfw.win32.mainWindowClass) 0006a 0f b7 05 8a 1b 00 00 movzx eax, WORD PTR _glfw+7050 00071 85 c0 test eax, eax 00073 74 16 je SHORT $LN5@glfwTermin ; 712 : UnregisterClassW(MAKEINTATOM(_glfw.win32.mainWindowClass), _glfw.win32.instance); 00075 0f b7 05 8a 1b 00 00 movzx eax, WORD PTR _glfw+7050 0007c 48 8b 15 78 1b 00 00 mov rdx, QWORD PTR _glfw+7032 00083 8b c8 mov ecx, eax 00085 ff 15 00 00 00 00 call QWORD PTR __imp_UnregisterClassW $LN5@glfwTermin: ; 713 : ; 714 : _glfw_free(_glfw.win32.clipboardString); 0008b 48 8b 0d a0 1b 00 00 mov rcx, QWORD PTR _glfw+7072 00092 e8 00 00 00 00 call _glfw_free ; 715 : _glfw_free(_glfw.win32.rawInput); 00097 48 8b 0d 58 29 00 00 mov rcx, QWORD PTR _glfw+10584 0009e e8 00 00 00 00 call _glfw_free ; 716 : ; 717 : _glfwTerminateWGL(); 000a3 e8 00 00 00 00 call _glfwTerminateWGL ; 718 : _glfwTerminateEGL(); 000a8 e8 00 00 00 00 call _glfwTerminateEGL ; 719 : _glfwTerminateOSMesa(); 000ad e8 00 00 00 00 call _glfwTerminateOSMesa ; 720 : ; 721 : freeLibraries(); 000b2 e8 00 00 00 00 call freeLibraries ; 722 : } 000b7 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000be 5f pop rdi 000bf 5d pop rbp 000c0 c3 ret 0 _glfwTerminateWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwInitWin32 _TEXT SEGMENT _glfwInitWin32 PROC ; COMDAT ; 681 : { $LN10: 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:__C017AD33_win32_init@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 682 : if (!loadLibraries()) 0001b e8 00 00 00 00 call loadLibraries 00020 85 c0 test eax, eax 00022 75 04 jne SHORT $LN2@glfwInitWi ; 683 : return GLFW_FALSE; 00024 33 c0 xor eax, eax 00026 eb 76 jmp SHORT $LN1@glfwInitWi $LN2@glfwInitWi: ; 684 : ; 685 : createKeyTables(); 00028 e8 00 00 00 00 call createKeyTables ; 686 : _glfwUpdateKeyNamesWin32(); 0002d e8 00 00 00 00 call _glfwUpdateKeyNamesWin32 ; 687 : ; 688 : if (_glfwIsWindows10Version1703OrGreaterWin32()) 00032 66 b9 d7 3a mov cx, 15063 ; 00003ad7H 00036 e8 00 00 00 00 call _glfwIsWindows10BuildOrGreaterWin32 0003b 85 c0 test eax, eax 0003d 74 0f je SHORT $LN3@glfwInitWi ; 689 : SetProcessDpiAwarenessContext(DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2); 0003f 48 c7 c1 fc ff ff ff mov rcx, -4 00046 ff 15 b8 29 00 00 call QWORD PTR _glfw+10680 0004c eb 39 jmp SHORT $LN4@glfwInitWi $LN3@glfwInitWi: ; 690 : else if (IsWindows8Point1OrGreater()) 0004e 45 33 c0 xor r8d, r8d 00051 66 ba 03 00 mov dx, 3 00055 66 b9 06 00 mov cx, 6 00059 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32 0005e 85 c0 test eax, eax 00060 74 0d je SHORT $LN5@glfwInitWi ; 691 : SetProcessDpiAwareness(PROCESS_PER_MONITOR_DPI_AWARE); 00062 b9 02 00 00 00 mov ecx, 2 00067 ff 15 08 2a 00 00 call QWORD PTR _glfw+10760 0006d eb 18 jmp SHORT $LN6@glfwInitWi $LN5@glfwInitWi: ; 692 : else if (IsWindowsVistaOrGreater()) 0006f 45 33 c0 xor r8d, r8d 00072 33 d2 xor edx, edx 00074 66 b9 06 00 mov cx, 6 00078 e8 00 00 00 00 call _glfwIsWindowsVersionOrGreaterWin32 0007d 85 c0 test eax, eax 0007f 74 06 je SHORT $LN7@glfwInitWi ; 693 : SetProcessDPIAware(); 00081 ff 15 a0 29 00 00 call QWORD PTR _glfw+10656 $LN7@glfwInitWi: $LN6@glfwInitWi: $LN4@glfwInitWi: ; 694 : ; 695 : if (!createHelperWindow()) 00087 e8 00 00 00 00 call createHelperWindow 0008c 85 c0 test eax, eax 0008e 75 04 jne SHORT $LN8@glfwInitWi ; 696 : return GLFW_FALSE; 00090 33 c0 xor eax, eax 00092 eb 0a jmp SHORT $LN1@glfwInitWi $LN8@glfwInitWi: ; 697 : ; 698 : _glfwPollMonitorsWin32(); 00094 e8 00 00 00 00 call _glfwPollMonitorsWin32 ; 699 : return GLFW_TRUE; 00099 b8 01 00 00 00 mov eax, 1 $LN1@glfwInitWi: ; 700 : } 0009e 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000a5 5f pop rdi 000a6 5d pop rbp 000a7 c3 ret 0 _glfwInitWin32 ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\win32_init.c ; COMDAT _glfwConnectWin32 _TEXT SEGMENT win32$ = 16 platformID$ = 1024 platform$ = 1032 _glfwConnectWin32 PROC ; COMDAT ; 599 : { $LN3: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00009 55 push rbp 0000a 56 push rsi 0000b 57 push rdi 0000c 48 81 ec 00 04 00 00 sub rsp, 1024 ; 00000400H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 0001d b9 98 00 00 00 mov ecx, 152 ; 00000098H 00022 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00027 f3 ab rep stosd 00029 8b 8c 24 28 04 00 00 mov ecx, DWORD PTR [rsp+1064] 00030 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__C017AD33_win32_init@c 00037 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 600 : const _GLFWplatform win32 = 0003c c7 45 10 01 00 06 00 mov DWORD PTR win32$[rbp], 393217 ; 00060001H 00043 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwInitWin32 0004a 48 89 45 18 mov QWORD PTR win32$[rbp+8], rax 0004e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwTerminateWin32 00055 48 89 45 20 mov QWORD PTR win32$[rbp+16], rax 00059 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetCursorPosWin32 00060 48 89 45 28 mov QWORD PTR win32$[rbp+24], rax 00064 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetCursorPosWin32 0006b 48 89 45 30 mov QWORD PTR win32$[rbp+32], rax 0006f 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetCursorModeWin32 00076 48 89 45 38 mov QWORD PTR win32$[rbp+40], rax 0007a 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetRawMouseMotionWin32 00081 48 89 45 40 mov QWORD PTR win32$[rbp+48], rax 00085 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwRawMouseMotionSupportedWin32 0008c 48 89 45 48 mov QWORD PTR win32$[rbp+56], rax 00090 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwCreateCursorWin32 00097 48 89 45 50 mov QWORD PTR win32$[rbp+64], rax 0009b 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwCreateStandardCursorWin32 000a2 48 89 45 58 mov QWORD PTR win32$[rbp+72], rax 000a6 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwDestroyCursorWin32 000ad 48 89 45 60 mov QWORD PTR win32$[rbp+80], rax 000b1 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetCursorWin32 000b8 48 89 45 68 mov QWORD PTR win32$[rbp+88], rax 000bc 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetScancodeNameWin32 000c3 48 89 45 70 mov QWORD PTR win32$[rbp+96], rax 000c7 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetKeyScancodeWin32 000ce 48 89 45 78 mov QWORD PTR win32$[rbp+104], rax 000d2 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetClipboardStringWin32 000d9 48 89 85 80 00 00 00 mov QWORD PTR win32$[rbp+112], rax 000e0 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetClipboardStringWin32 000e7 48 89 85 88 00 00 00 mov QWORD PTR win32$[rbp+120], rax 000ee 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwInitJoysticksWin32 000f5 48 89 85 90 00 00 00 mov QWORD PTR win32$[rbp+128], rax 000fc 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwTerminateJoysticksWin32 00103 48 89 85 98 00 00 00 mov QWORD PTR win32$[rbp+136], rax 0010a 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwPollJoystickWin32 00111 48 89 85 a0 00 00 00 mov QWORD PTR win32$[rbp+144], rax 00118 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetMappingNameWin32 0011f 48 89 85 a8 00 00 00 mov QWORD PTR win32$[rbp+152], rax 00126 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwUpdateGamepadGUIDWin32 0012d 48 89 85 b0 00 00 00 mov QWORD PTR win32$[rbp+160], rax 00134 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwFreeMonitorWin32 0013b 48 89 85 b8 00 00 00 mov QWORD PTR win32$[rbp+168], rax 00142 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetMonitorPosWin32 00149 48 89 85 c0 00 00 00 mov QWORD PTR win32$[rbp+176], rax 00150 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetMonitorContentScaleWin32 00157 48 89 85 c8 00 00 00 mov QWORD PTR win32$[rbp+184], rax 0015e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetMonitorWorkareaWin32 00165 48 89 85 d0 00 00 00 mov QWORD PTR win32$[rbp+192], rax 0016c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetVideoModesWin32 00173 48 89 85 d8 00 00 00 mov QWORD PTR win32$[rbp+200], rax 0017a 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetVideoModeWin32 00181 48 89 85 e0 00 00 00 mov QWORD PTR win32$[rbp+208], rax 00188 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetGammaRampWin32 0018f 48 89 85 e8 00 00 00 mov QWORD PTR win32$[rbp+216], rax 00196 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetGammaRampWin32 0019d 48 89 85 f0 00 00 00 mov QWORD PTR win32$[rbp+224], rax 001a4 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwCreateWindowWin32 001ab 48 89 85 f8 00 00 00 mov QWORD PTR win32$[rbp+232], rax 001b2 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwDestroyWindowWin32 001b9 48 89 85 00 01 00 00 mov QWORD PTR win32$[rbp+240], rax 001c0 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowTitleWin32 001c7 48 89 85 08 01 00 00 mov QWORD PTR win32$[rbp+248], rax 001ce 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowIconWin32 001d5 48 89 85 10 01 00 00 mov QWORD PTR win32$[rbp+256], rax 001dc 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetWindowPosWin32 001e3 48 89 85 18 01 00 00 mov QWORD PTR win32$[rbp+264], rax 001ea 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowPosWin32 001f1 48 89 85 20 01 00 00 mov QWORD PTR win32$[rbp+272], rax 001f8 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetWindowSizeWin32 001ff 48 89 85 28 01 00 00 mov QWORD PTR win32$[rbp+280], rax 00206 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowSizeWin32 0020d 48 89 85 30 01 00 00 mov QWORD PTR win32$[rbp+288], rax 00214 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowSizeLimitsWin32 0021b 48 89 85 38 01 00 00 mov QWORD PTR win32$[rbp+296], rax 00222 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowAspectRatioWin32 00229 48 89 85 40 01 00 00 mov QWORD PTR win32$[rbp+304], rax 00230 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetFramebufferSizeWin32 00237 48 89 85 48 01 00 00 mov QWORD PTR win32$[rbp+312], rax 0023e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetWindowFrameSizeWin32 00245 48 89 85 50 01 00 00 mov QWORD PTR win32$[rbp+320], rax 0024c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetWindowContentScaleWin32 00253 48 89 85 58 01 00 00 mov QWORD PTR win32$[rbp+328], rax 0025a 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwIconifyWindowWin32 00261 48 89 85 60 01 00 00 mov QWORD PTR win32$[rbp+336], rax 00268 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwRestoreWindowWin32 0026f 48 89 85 68 01 00 00 mov QWORD PTR win32$[rbp+344], rax 00276 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwMaximizeWindowWin32 0027d 48 89 85 70 01 00 00 mov QWORD PTR win32$[rbp+352], rax 00284 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwShowWindowWin32 0028b 48 89 85 78 01 00 00 mov QWORD PTR win32$[rbp+360], rax 00292 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwHideWindowWin32 00299 48 89 85 80 01 00 00 mov QWORD PTR win32$[rbp+368], rax 002a0 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwRequestWindowAttentionWin32 002a7 48 89 85 88 01 00 00 mov QWORD PTR win32$[rbp+376], rax 002ae 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwFocusWindowWin32 002b5 48 89 85 90 01 00 00 mov QWORD PTR win32$[rbp+384], rax 002bc 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowMonitorWin32 002c3 48 89 85 98 01 00 00 mov QWORD PTR win32$[rbp+392], rax 002ca 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWindowFocusedWin32 002d1 48 89 85 a0 01 00 00 mov QWORD PTR win32$[rbp+400], rax 002d8 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWindowIconifiedWin32 002df 48 89 85 a8 01 00 00 mov QWORD PTR win32$[rbp+408], rax 002e6 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWindowVisibleWin32 002ed 48 89 85 b0 01 00 00 mov QWORD PTR win32$[rbp+416], rax 002f4 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWindowMaximizedWin32 002fb 48 89 85 b8 01 00 00 mov QWORD PTR win32$[rbp+424], rax 00302 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWindowHoveredWin32 00309 48 89 85 c0 01 00 00 mov QWORD PTR win32$[rbp+432], rax 00310 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwFramebufferTransparentWin32 00317 48 89 85 c8 01 00 00 mov QWORD PTR win32$[rbp+440], rax 0031e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetWindowOpacityWin32 00325 48 89 85 d0 01 00 00 mov QWORD PTR win32$[rbp+448], rax 0032c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowResizableWin32 00333 48 89 85 d8 01 00 00 mov QWORD PTR win32$[rbp+456], rax 0033a 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowDecoratedWin32 00341 48 89 85 e0 01 00 00 mov QWORD PTR win32$[rbp+464], rax 00348 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowFloatingWin32 0034f 48 89 85 e8 01 00 00 mov QWORD PTR win32$[rbp+472], rax 00356 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowOpacityWin32 0035d 48 89 85 f0 01 00 00 mov QWORD PTR win32$[rbp+480], rax 00364 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwSetWindowMousePassthroughWin32 0036b 48 89 85 f8 01 00 00 mov QWORD PTR win32$[rbp+488], rax 00372 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwPollEventsWin32 00379 48 89 85 00 02 00 00 mov QWORD PTR win32$[rbp+496], rax 00380 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWaitEventsWin32 00387 48 89 85 08 02 00 00 mov QWORD PTR win32$[rbp+504], rax 0038e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwWaitEventsTimeoutWin32 00395 48 89 85 10 02 00 00 mov QWORD PTR win32$[rbp+512], rax 0039c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwPostEmptyEventWin32 003a3 48 89 85 18 02 00 00 mov QWORD PTR win32$[rbp+520], rax 003aa 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetEGLPlatformWin32 003b1 48 89 85 20 02 00 00 mov QWORD PTR win32$[rbp+528], rax 003b8 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetEGLNativeDisplayWin32 003bf 48 89 85 28 02 00 00 mov QWORD PTR win32$[rbp+536], rax 003c6 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetEGLNativeWindowWin32 003cd 48 89 85 30 02 00 00 mov QWORD PTR win32$[rbp+544], rax 003d4 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetRequiredInstanceExtensionsWin32 003db 48 89 85 38 02 00 00 mov QWORD PTR win32$[rbp+552], rax 003e2 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwGetPhysicalDevicePresentationSupportWin32 003e9 48 89 85 40 02 00 00 mov QWORD PTR win32$[rbp+560], rax 003f0 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:_glfwCreateWindowSurfaceWin32 003f7 48 89 85 48 02 00 00 mov QWORD PTR win32$[rbp+568], rax ; 601 : { ; 602 : GLFW_PLATFORM_WIN32, ; 603 : _glfwInitWin32, ; 604 : _glfwTerminateWin32, ; 605 : _glfwGetCursorPosWin32, ; 606 : _glfwSetCursorPosWin32, ; 607 : _glfwSetCursorModeWin32, ; 608 : _glfwSetRawMouseMotionWin32, ; 609 : _glfwRawMouseMotionSupportedWin32, ; 610 : _glfwCreateCursorWin32, ; 611 : _glfwCreateStandardCursorWin32, ; 612 : _glfwDestroyCursorWin32, ; 613 : _glfwSetCursorWin32, ; 614 : _glfwGetScancodeNameWin32, ; 615 : _glfwGetKeyScancodeWin32, ; 616 : _glfwSetClipboardStringWin32, ; 617 : _glfwGetClipboardStringWin32, ; 618 : _glfwInitJoysticksWin32, ; 619 : _glfwTerminateJoysticksWin32, ; 620 : _glfwPollJoystickWin32, ; 621 : _glfwGetMappingNameWin32, ; 622 : _glfwUpdateGamepadGUIDWin32, ; 623 : _glfwFreeMonitorWin32, ; 624 : _glfwGetMonitorPosWin32, ; 625 : _glfwGetMonitorContentScaleWin32, ; 626 : _glfwGetMonitorWorkareaWin32, ; 627 : _glfwGetVideoModesWin32, ; 628 : _glfwGetVideoModeWin32, ; 629 : _glfwGetGammaRampWin32, ; 630 : _glfwSetGammaRampWin32, ; 631 : _glfwCreateWindowWin32, ; 632 : _glfwDestroyWindowWin32, ; 633 : _glfwSetWindowTitleWin32, ; 634 : _glfwSetWindowIconWin32, ; 635 : _glfwGetWindowPosWin32, ; 636 : _glfwSetWindowPosWin32, ; 637 : _glfwGetWindowSizeWin32, ; 638 : _glfwSetWindowSizeWin32, ; 639 : _glfwSetWindowSizeLimitsWin32, ; 640 : _glfwSetWindowAspectRatioWin32, ; 641 : _glfwGetFramebufferSizeWin32, ; 642 : _glfwGetWindowFrameSizeWin32, ; 643 : _glfwGetWindowContentScaleWin32, ; 644 : _glfwIconifyWindowWin32, ; 645 : _glfwRestoreWindowWin32, ; 646 : _glfwMaximizeWindowWin32, ; 647 : _glfwShowWindowWin32, ; 648 : _glfwHideWindowWin32, ; 649 : _glfwRequestWindowAttentionWin32, ; 650 : _glfwFocusWindowWin32, ; 651 : _glfwSetWindowMonitorWin32, ; 652 : _glfwWindowFocusedWin32, ; 653 : _glfwWindowIconifiedWin32, ; 654 : _glfwWindowVisibleWin32, ; 655 : _glfwWindowMaximizedWin32, ; 656 : _glfwWindowHoveredWin32, ; 657 : _glfwFramebufferTransparentWin32, ; 658 : _glfwGetWindowOpacityWin32, ; 659 : _glfwSetWindowResizableWin32, ; 660 : _glfwSetWindowDecoratedWin32, ; 661 : _glfwSetWindowFloatingWin32, ; 662 : _glfwSetWindowOpacityWin32, ; 663 : _glfwSetWindowMousePassthroughWin32, ; 664 : _glfwPollEventsWin32, ; 665 : _glfwWaitEventsWin32, ; 666 : _glfwWaitEventsTimeoutWin32, ; 667 : _glfwPostEmptyEventWin32, ; 668 : _glfwGetEGLPlatformWin32, ; 669 : _glfwGetEGLNativeDisplayWin32, ; 670 : _glfwGetEGLNativeWindowWin32, ; 671 : _glfwGetRequiredInstanceExtensionsWin32, ; 672 : _glfwGetPhysicalDevicePresentationSupportWin32, ; 673 : _glfwCreateWindowSurfaceWin32, ; 674 : }; ; 675 : ; 676 : *platform = win32; 003fe 48 8d 45 10 lea rax, QWORD PTR win32$[rbp] 00402 48 8b bd 08 04 00 00 mov rdi, QWORD PTR platform$[rbp] 00409 48 8b f0 mov rsi, rax 0040c b9 40 02 00 00 mov ecx, 576 ; 00000240H 00411 f3 a4 rep movsb ; 677 : return GLFW_TRUE; 00413 b8 01 00 00 00 mov eax, 1 ; 678 : } 00418 8b f8 mov edi, eax 0041a 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 0041e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfwConnectWin32$rtcFrameData 00425 e8 00 00 00 00 call _RTC_CheckStackVars 0042a 8b c7 mov eax, edi 0042c 48 8d a5 e0 03 00 00 lea rsp, QWORD PTR [rbp+992] 00433 5f pop rdi 00434 5e pop rsi 00435 5d pop rbp 00436 c3 ret 0 _glfwConnectWin32 ENDP _TEXT ENDS END