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

5025 lines
155 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.37.32824.0
include listing.inc
INCLUDELIB MSVCRTD
INCLUDELIB OLDNAMES
msvcjmc SEGMENT
__9C03CD75_concurrencysal@h DB 01H
__CA64BAF1_sal@h DB 01H
__95655E73_vadefs@h DB 01H
__1D560A45_vcruntime@h DB 01H
__1B0272D9_corecrt@h DB 01H
__13F5961F_stddef@h DB 01H
__ED683015_stdint@h DB 01H
__89F75FCD_ssgc_internal@h DB 01H
__A5E73FD0_glfw3@h DB 01H
__1D45B1A5_glfw_null_platform@h DB 01H
__74484FB3_corecrt_wctype@h DB 01H
__CBE172F9_wctype@h DB 01H
__0ED14FEE_winpackagefamily@h DB 01H
__F92EF742_winapifamily@h DB 01H
__22E515EB_sdkddkver@h DB 01H
__F214EFBF_excpt@h DB 01H
__D9B78EDA_stdarg@h DB 01H
__29F49F40_specstrings_undef@h DB 01H
__D0F42932_specstrings_strict@h DB 01H
__F00405FD_sdv_driverspecs@h DB 01H
__173E09CA_driverspecs@h DB 01H
__9A452361_specstrings@h DB 01H
__1EC467ED_ctype@h DB 01H
__98517906_kernelspecs@h DB 01H
__D3497022_basetsd@h DB 01H
__61CC25A1_errno@h DB 01H
__7061C667_vcruntime_string@h DB 01H
__E4C945B4_corecrt_memcpy_s@h DB 01H
__8EAFF484_corecrt_memory@h DB 01H
__6490AEC5_corecrt_wstring@h DB 01H
__E8295E1E_string@h DB 01H
__7FCB5136_guiddef@h DB 01H
__FF8A9E11_pshpack4@h DB 01H
__D5438902_poppack@h DB 01H
__FB07E2A3_pshpack2@h DB 01H
__F6906775_pshpack8@h DB 01H
__F9415CFA_pshpack1@h DB 01H
__E58C6F1C_apiset@h DB 01H
__A5C52262_ktmtypes@h DB 01H
__FBBA8F9D_winnt@h DB 01H
__A32D3D2C_minwindef@h DB 01H
__7D798299_windef@h DB 01H
__9AE108E9_apisetcconv@h DB 01H
__9CE53D2C_minwinbase@h DB 01H
__5D0AA210_apiquery2@h DB 01H
__4DD4E726_processenv@h DB 01H
__3575CC96_fileapi@h DB 01H
__8EA220E6_fileapifromapp@h DB 01H
__BF9B31FE_debugapi@h DB 01H
__C3AFE134_utilapiset@h DB 01H
__76F69E51_handleapi@h DB 01H
__7E63D784_errhandlingapi@h DB 01H
__FFA7003C_fibersapi@h DB 01H
__8971CECF_namedpipeapi@h DB 01H
__46C9D8A6_profileapi@h DB 01H
__98D4F0A3_heapapi@h DB 01H
__50EF2A88_ioapiset@h DB 01H
__92EA1464_synchapi@h DB 01H
__A53D8AED_interlockedapi@h DB 01H
__B506CAAF_processthreadsapi@h DB 01H
__FF735694_sysinfoapi@h DB 01H
__29589789_memoryapi@h DB 01H
__E9C7A663_enclaveapi@h DB 01H
__D035F9F7_threadpoollegacyapiset@h DB 01H
__C899130C_threadpoolapiset@h DB 01H
__E0441EE7_jobapi@h DB 01H
__CEF86838_jobapi2@h DB 01H
__35AC6B9A_wow64apiset@h DB 01H
__C8AE41A5_libloaderapi@h DB 01H
__CC9E232D_securitybaseapi@h DB 01H
__C9D0C9B8_namespaceapi@h DB 01H
__30FF9CAD_systemtopologyapi@h DB 01H
__4D358795_processtopologyapi@h DB 01H
__40446D10_securityappcontainer@h DB 01H
__3A952EDF_realtimeapiset@h DB 01H
__F4865F4B_winerror@h DB 01H
__53C1BD93_timezoneapi@h DB 01H
__1FFBEDBF_winbase@h DB 01H
__43D3FA34_wingdi@h DB 01H
__D24A7391_tvout@h DB 01H
__7713A6C8_winuser@h DB 01H
__0B345F71_datetimeapi@h DB 01H
__9AC6960C_winnls@h DB 01H
__973A40A8_stringapiset@h DB 01H
__CC46FEE2_wincontypes@h DB 01H
__97D70BE1_consoleapi@h DB 01H
__27EC5E18_consoleapi2@h DB 01H
__262E342F_consoleapi3@h DB 01H
__641DCD70_wincon@h DB 01H
__5A96C7A7_verrsrc@h DB 01H
__B69C6FF2_winver@h DB 01H
__7AEB8C37_reason@h DB 01H
__59F1A8A9_winreg@h DB 01H
__EE0E2B7F_wnnc@h DB 01H
__DCDB7054_winnetwk@h DB 01H
__81DDEDE3_stralign@h DB 01H
__2134D1B4_winsvc@h DB 01H
__11C07376_mcx@h DB 01H
__577CE3E7_ime_cmodes@h DB 01H
__1E72C31E_imm@h DB 01H
__E15BF856_windows@h DB 01H
__DF8704F0_rpcdcep@h DB 01H
__5C6CA7BB_rpcdce@h DB 01H
__853533C4_rpcnsi@h DB 01H
__2D2406C3_rpcnterr@h DB 01H
__64521D71_rpcasync@h DB 01H
__AADCBA08_rpc@h DB 01H
__1FE431C9_rpcnsip@h DB 01H
__2B741F2D_rpcsal@h DB 01H
__92623256_rpcndr@h DB 01H
__45DED006_corecrt_malloc@h DB 01H
__FD6DBD68_corecrt_search@h DB 01H
__E2E33A61_corecrt_wstdlib@h DB 01H
__531E1E2A_limits@h DB 01H
__6E5ACABA_stdlib@h DB 01H
__9C18532E_wtypesbase@h DB 01H
__30B1AFDA_unknwnbase@h DB 01H
__328C1996_objidlbase@h DB 01H
__C4E06B6A_cguid@h DB 01H
__434718C5_combaseapi@h DB 01H
__EA2E1D6D_wtypes@h DB 01H
__DE6FDEF1_unknwn@h DB 01H
__CCE0BACC_objidl@h DB 01H
__8C7011E5_oaidl@h DB 01H
__2E0B7863_propidlbase@h DB 01H
__BF4CF2EC_coml2api@h DB 01H
__6D897344_oleidl@h DB 01H
__1129FC2C_servprov@h DB 01H
__757952E4_msxml@h DB 01H
__B1191D53_urlmon@h DB 01H
__404D1A47_propidl@h DB 01H
__A1C63593_objbase@h DB 01H
__9F7C87B7_dinput@h DB 01H
__B468A3D3_xinput@h DB 01H
__AD768F06_dbt@h DB 01H
__D83367F8_glfw_win32_platform@h DB 01H
__53CB9229_glfw_null_joystick@h DB 01H
__96BD4474_glfw_win32_joystick@h DB 01H
__7D74CEA8_glfw_win32_thread@h DB 01H
__C7421531_glfw_win32_time@h DB 01H
__43B1F397_glfw_platform@h DB 01H
__A547227D_glfw_internal@h DB 01H
__44420885_corecrt_stdio_config@h DB 01H
__AB601D8D_corecrt_wstdio@h DB 01H
__C1EC35D3_stdio@h DB 01H
__19139D6C_assert@h DB 01H
__E9A20A45_egl_context@c DB 01H
msvcjmc ENDS
PUBLIC _glfwInitEGL
PUBLIC _glfwTerminateEGL
PUBLIC _glfwCreateContextEGL
PUBLIC glfwGetEGLDisplay
PUBLIC glfwGetEGLContext
PUBLIC glfwGetEGLSurface
PUBLIC __JustMyCode_Default
PUBLIC ??_C@_07PBILKAFL@Success@ ; `string'
PUBLIC ??_C@_0CH@KLCPDMM@EGL?5is?5not?5or?5could?5not?5be?5init@ ; `string'
PUBLIC ??_C@_0CH@MMCOKIKC@EGL?5cannot?5access?5a?5requested?5r@ ; `string'
PUBLIC ??_C@_0DN@GNDEENDO@EGL?5failed?5to?5allocate?5resource@ ; `string'
PUBLIC ??_C@_0EO@EKFIJHGG@An?5unrecognized?5attribute?5or?5at@ ; `string'
PUBLIC ??_C@_0ED@GAJEHCGA@An?5EGLContext?5argument?5does?5not@ ; `string'
PUBLIC ??_C@_0EL@BBAGGFOK@An?5EGLConfig?5argument?5does?5not?5@ ; `string'
PUBLIC ??_C@_0GG@ODICGIHF@The?5current?5surface?5of?5the?5call@ ; `string'
PUBLIC ??_C@_0EE@ICKHNPHB@An?5EGLDisplay?5argument?5does?5not@ ; `string'
PUBLIC ??_C@_0FB@EPGEGHDL@An?5EGLSurface?5argument?5does?5not@ ; `string'
PUBLIC ??_C@_0BL@OIILILNJ@Arguments?5are?5inconsistent@ ; `string'
PUBLIC ??_C@_0CI@KAHNKLLC@One?5or?5more?5argument?5values?5are@ ; `string'
PUBLIC ??_C@_0EE@NKCAIGPH@A?5NativePixmapType?5argument?5doe@ ; `string'
PUBLIC ??_C@_0EE@FBMMOIJB@A?5NativeWindowType?5argument?5doe@ ; `string'
PUBLIC ??_C@_0DL@GNLICFMC@The?5application?5must?5destroy?5al@ ; `string'
PUBLIC ??_C@_0BJ@KDFAHDEK@ERROR?3?5UNKNOWN?5EGL?5ERROR@ ; `string'
PUBLIC ??_C@_0CE@CNKFDGDO@EGL?3?5Stereo?5rendering?5not?5suppo@ ; `string'
PUBLIC ??_C@_0BM@KHOPPJNJ@EGL?3?5No?5EGLConfigs?5returned@ ; `string'
PUBLIC ??_C@_0CO@HAIMLOLL@EGL?3?5Failed?5to?5find?5support?5for@ ; `string'
PUBLIC ??_C@_0DF@BPPFPGID@EGL?3?5Failed?5to?5find?5support?5for@ ; `string'
PUBLIC ??_C@_0CH@EMJGILEP@EGL?3?5Failed?5to?5find?5support?5for@ ; `string'
PUBLIC ??_C@_0CJ@JPDPLHCM@EGL?3?5Failed?5to?5find?5a?5suitable?5@ ; `string'
PUBLIC ??_C@_0CI@MPJNGPNP@EGL?3?5Failed?5to?5make?5context?5cur@ ; `string'
PUBLIC ??_C@_0CJ@NBJEEEJD@EGL?3?5Failed?5to?5clear?5current?5co@ ; `string'
PUBLIC ??_C@_0EN@CIIGDABJ@EGL?3?5The?5context?5must?5be?5curren@ ; `string'
PUBLIC ??_C@_0L@ELKKGGMD@libEGL?4dll@ ; `string'
PUBLIC ??_C@_07EAKGIKCB@EGL?4dll@ ; `string'
PUBLIC ??_C@_0BH@NFNALLIN@EGL?3?5Library?5not?5found@ ; `string'
PUBLIC ??_C@_03LPIGJBNC@lib@ ; `string'
PUBLIC ??_C@_0BD@MAEGKKAE@eglGetConfigAttrib@ ; `string'
PUBLIC ??_C@_0O@OMNEJBKO@eglGetConfigs@ ; `string'
PUBLIC ??_C@_0O@BMJFLKOA@eglGetDisplay@ ; `string'
PUBLIC ??_C@_0M@PPADKGOK@eglGetError@ ; `string'
PUBLIC ??_C@_0O@EEJFKEKH@eglInitialize@ ; `string'
PUBLIC ??_C@_0N@IGFNFAOP@eglTerminate@ ; `string'
PUBLIC ??_C@_0L@HJOCIPHF@eglBindAPI@ ; `string'
PUBLIC ??_C@_0BB@KEKMNHDF@eglCreateContext@ ; `string'
PUBLIC ??_C@_0BC@ICHKG@eglDestroySurface@ ; `string'
PUBLIC ??_C@_0BC@BNOBCLNJ@eglDestroyContext@ ; `string'
PUBLIC ??_C@_0BH@MDMCFBDG@eglCreateWindowSurface@ ; `string'
PUBLIC ??_C@_0P@PNPBPNLI@eglMakeCurrent@ ; `string'
PUBLIC ??_C@_0P@DEBOOHKH@eglSwapBuffers@ ; `string'
PUBLIC ??_C@_0BA@BGJPOLDF@eglSwapInterval@ ; `string'
PUBLIC ??_C@_0P@HJKEKLKD@eglQueryString@ ; `string'
PUBLIC ??_C@_0BC@HONLJDPH@eglGetProcAddress@ ; `string'
PUBLIC ??_C@_0CK@DCPJCPHH@EGL?3?5Failed?5to?5load?5required?5en@ ; `string'
PUBLIC ??_C@_0BG@IPJFJLIC@EGL_EXT_platform_base@ ; `string'
PUBLIC ??_C@_0BF@FMIKFMMH@EGL_EXT_platform_x11@ ; `string'
PUBLIC ??_C@_0BJ@KIPDFNMM@EGL_EXT_platform_wayland@ ; `string'
PUBLIC ??_C@_0BJ@MBCLFEBK@EGL_ANGLE_platform_angle@ ; `string'
PUBLIC ??_C@_0CA@NIHAEPLD@EGL_ANGLE_platform_angle_opengl@ ; `string'
PUBLIC ??_C@_0BN@OHLJPDPM@EGL_ANGLE_platform_angle_d3d@ ; `string'
PUBLIC ??_C@_0CA@HGIOILGO@EGL_ANGLE_platform_angle_vulkan@ ; `string'
PUBLIC ??_C@_0BP@NMKFFDCO@EGL_ANGLE_platform_angle_metal@ ; `string'
PUBLIC ??_C@_0BJ@KEAIGPHD@eglGetPlatformDisplayEXT@ ; `string'
PUBLIC ??_C@_0CC@NGDHIGBI@eglCreatePlatformWindowSurfaceE@ ; `string'
PUBLIC ??_C@_0CD@CODEPNKE@EGL?3?5Failed?5to?5get?5EGL?5display?3@ ; `string'
PUBLIC ??_C@_0CC@DOIEFDD@EGL?3?5Failed?5to?5initialize?5EGL?3?5@ ; `string'
PUBLIC ??_C@_0BH@GIBFIFPN@EGL_KHR_create_context@ ; `string'
PUBLIC ??_C@_0CA@OJFEOPKP@EGL_KHR_create_context_no_error@ ; `string'
PUBLIC ??_C@_0BG@GOAKKGGB@EGL_KHR_gl_colorspace@ ; `string'
PUBLIC ??_C@_0BP@CDGGFNNF@EGL_KHR_get_all_proc_addresses@ ; `string'
PUBLIC ??_C@_0BO@IDEEMGNC@EGL_KHR_context_flush_control@ ; `string'
PUBLIC ??_C@_0BH@JADLEPAM@EGL_EXT_present_opaque@ ; `string'
PUBLIC ??_C@_0BH@PDIOJKKP@EGL?3?5API?5not?5available@ ; `string'
PUBLIC ??_C@_0CC@NIBJMOI@EGL?3?5Failed?5to?5bind?5OpenGL?5ES?3?5@ ; `string'
PUBLIC ??_C@_0BP@PHOHHIJJ@EGL?3?5Failed?5to?5bind?5OpenGL?3?5?$CFs@ ; `string'
PUBLIC ??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ ; `string'
PUBLIC ??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@ ; `string'
PUBLIC ??_C@_0CC@GOIKODMM@EGL?3?5Failed?5to?5create?5context?3?5@ ; `string'
PUBLIC ??_C@_0CJ@MHLGDLLP@EGL?3?5Failed?5to?5create?5window?5su@ ; `string'
PUBLIC ??_C@_0O@KOJFNJDA@GLESv1_CM?4dll@ ; `string'
PUBLIC ??_C@_0P@MADFBLIB@libGLES_CM?4dll@ ; `string'
PUBLIC ??_C@_0L@CEBLLDFF@GLESv2?4dll@ ; `string'
PUBLIC ??_C@_0O@HFAAEHFL@libGLESv2?4dll@ ; `string'
PUBLIC ??_C@_0CD@JDEAKJCI@EGL?3?5Failed?5to?5load?5client?5libr@ ; `string'
EXTRN __imp_strncmp:PROC
EXTRN _glfwPlatformGetTls:PROC
EXTRN _glfwPlatformSetTls:PROC
EXTRN _glfwPlatformLoadModule:PROC
EXTRN _glfwPlatformFreeModule:PROC
EXTRN _glfwPlatformGetModuleSymbol:PROC
EXTRN _glfwInputError:PROC
EXTRN _glfwStringInExtensionString:PROC
EXTRN _glfwChooseFBConfig:PROC
EXTRN _glfw_calloc:PROC
EXTRN _glfw_free:PROC
EXTRN __imp__wassert:PROC
EXTRN _RTC_CheckStackVars:PROC
EXTRN _RTC_InitBase:PROC
EXTRN _RTC_Shutdown:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN __GSHandlerCheck:PROC
EXTRN __security_check_cookie:PROC
EXTRN _glfw:BYTE
EXTRN __ImageBase:BYTE
EXTRN __security_cookie:QWORD
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwInitEGL DD imagerel $LN20
DD imagerel $LN20+1563
DD imagerel $unwind$_glfwInitEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwTerminateEGL DD imagerel $LN5
DD imagerel $LN5+104
DD imagerel $unwind$_glfwTerminateEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwCreateContextEGL DD imagerel $LN71
DD imagerel $LN71+3255
DD imagerel $unwind$_glfwCreateContextEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getEGLErrorString DD imagerel getEGLErrorString
DD imagerel getEGLErrorString+316
DD imagerel $unwind$getEGLErrorString
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getEGLConfigAttrib DD imagerel getEGLConfigAttrib
DD imagerel getEGLConfigAttrib+156
DD imagerel $unwind$getEGLConfigAttrib
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$chooseEGLConfig DD imagerel chooseEGLConfig
DD imagerel chooseEGLConfig+1022
DD imagerel $unwind$chooseEGLConfig
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$makeContextCurrentEGL DD imagerel makeContextCurrentEGL
DD imagerel makeContextCurrentEGL+226
DD imagerel $unwind$makeContextCurrentEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$swapBuffersEGL DD imagerel swapBuffersEGL
DD imagerel swapBuffersEGL+108
DD imagerel $unwind$swapBuffersEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$swapIntervalEGL DD imagerel swapIntervalEGL
DD imagerel swapIntervalEGL+59
DD imagerel $unwind$swapIntervalEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$extensionSupportedEGL DD imagerel extensionSupportedEGL
DD imagerel extensionSupportedEGL+99
DD imagerel $unwind$extensionSupportedEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getProcAddressEGL DD imagerel getProcAddressEGL
DD imagerel getProcAddressEGL+124
DD imagerel $unwind$getProcAddressEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$destroyContextEGL DD imagerel destroyContextEGL
DD imagerel destroyContextEGL+250
DD imagerel $unwind$destroyContextEGL
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetEGLDisplay DD imagerel $LN4
DD imagerel $LN4+69
DD imagerel $unwind$glfwGetEGLDisplay
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetEGLContext DD imagerel $LN5
DD imagerel $LN5+120
DD imagerel $unwind$glfwGetEGLContext
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetEGLSurface DD imagerel $LN5
DD imagerel $LN5+120
DD imagerel $unwind$glfwGetEGLSurface
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@_0CD@JDEAKJCI@EGL?3?5Failed?5to?5load?5client?5libr@
CONST SEGMENT
??_C@_0CD@JDEAKJCI@EGL?3?5Failed?5to?5load?5client?5libr@ DB 'EGL: Failed'
DB ' to load client library', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0O@HFAAEHFL@libGLESv2?4dll@
CONST SEGMENT
??_C@_0O@HFAAEHFL@libGLESv2?4dll@ DB 'libGLESv2.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0L@CEBLLDFF@GLESv2?4dll@
CONST SEGMENT
??_C@_0L@CEBLLDFF@GLESv2?4dll@ DB 'GLESv2.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0P@MADFBLIB@libGLES_CM?4dll@
CONST SEGMENT
??_C@_0P@MADFBLIB@libGLES_CM?4dll@ DB 'libGLES_CM.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0O@KOJFNJDA@GLESv1_CM?4dll@
CONST SEGMENT
??_C@_0O@KOJFNJDA@GLESv1_CM?4dll@ DB 'GLESv1_CM.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CJ@MHLGDLLP@EGL?3?5Failed?5to?5create?5window?5su@
CONST SEGMENT
??_C@_0CJ@MHLGDLLP@EGL?3?5Failed?5to?5create?5window?5su@ DB 'EGL: Failed'
DB ' to create window surface: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CC@GOIKODMM@EGL?3?5Failed?5to?5create?5context?3?5@
CONST SEGMENT
??_C@_0CC@GOIKODMM@EGL?3?5Failed?5to?5create?5context?3?5@ DB 'EGL: Faile'
DB 'd to create context: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
CONST SEGMENT
??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@ DB '('
DB 00H, '(', 00H, 's', 00H, 'i', 00H, 'z', 00H, 'e', 00H, '_', 00H
DB 't', 00H, ')', 00H, ' ', 00H, 'i', 00H, 'n', 00H, 'd', 00H, 'e'
DB 00H, 'x', 00H, ' ', 00H, '+', 00H, ' ', 00H, '1', 00H, ')', 00H
DB ' ', 00H, '<', 00H, ' ', 00H, 's', 00H, 'i', 00H, 'z', 00H, 'e'
DB 00H, 'o', 00H, 'f', 00H, '(', 00H, 'a', 00H, 't', 00H, 't', 00H
DB 'r', 00H, 'i', 00H, 'b', 00H, 's', 00H, ')', 00H, ' ', 00H, '/'
DB 00H, ' ', 00H, 's', 00H, 'i', 00H, 'z', 00H, 'e', 00H, 'o', 00H
DB 'f', 00H, '(', 00H, 'a', 00H, 't', 00H, 't', 00H, 'r', 00H, 'i'
DB 00H, 'b', 00H, 's', 00H, '[', 00H, '0', 00H, ']', 00H, ')', 00H
DB 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
CONST SEGMENT
??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ DB 'D'
DB 00H, ':', 00H, '\', 00H, 'N', 00H, 'i', 00H, 't', 00H, 'l', 00H
DB 'o', 00H, 'a', 00H, 'd', 00H, 'I', 00H, 'n', 00H, 'd', 00H, 'u'
DB 00H, 's', 00H, 't', 00H, 'r', 00H, 'y', 00H, '\', 00H, 014H, 'x'
DB 'vzy', 098H, 0eeH, 'v\', 00H, '1', 00H, '-', 00H, 'F', 00H, 'l'
DB 00H, 'a', 00H, 'g', 00H, 's', 00H, 'h', 00H, 'i', 00H, 'p', 00H
DB '\', 00H, 'T', 00H, 'H', 00H, '2', 00H, '0', 00H, '2', 00H, '0'
DB 00H, '\', 00H, 'P', 00H, 'r', 00H, 'o', 00H, 'j', 00H, 'e', 00H
DB 'c', 00H, 't', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 'e', 00H, '\'
DB 00H, 090H, 'n', 0e3H, 'N', 01H, 'x\', 00H, 'S', 00H, 't', 00H, 'g'
DB 00H, 'S', 00H, 'h', 00H, 'a', 00H, 'r', 00H, 'p', 00H, 'G', 00H
DB 'r', 00H, 'a', 00H, 'p', 00H, 'h', 00H, 'i', 00H, 'c', 00H, '\'
DB 00H, 'c', 00H, 'o', 00H, 'd', 00H, 'e', 00H, '\', 00H, 'g', 00H
DB 'l', 00H, 'f', 00H, 'w', 00H, '\', 00H, 'e', 00H, 'g', 00H, 'l'
DB 00H, '_', 00H, 'c', 00H, 'o', 00H, 'n', 00H, 't', 00H, 'e', 00H
DB 'x', 00H, 't', 00H, '.', 00H, 'c', 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BP@PHOHHIJJ@EGL?3?5Failed?5to?5bind?5OpenGL?3?5?$CFs@
CONST SEGMENT
??_C@_0BP@PHOHHIJJ@EGL?3?5Failed?5to?5bind?5OpenGL?3?5?$CFs@ DB 'EGL: Fai'
DB 'led to bind OpenGL: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CC@NIBJMOI@EGL?3?5Failed?5to?5bind?5OpenGL?5ES?3?5@
CONST SEGMENT
??_C@_0CC@NIBJMOI@EGL?3?5Failed?5to?5bind?5OpenGL?5ES?3?5@ DB 'EGL: Faile'
DB 'd to bind OpenGL ES: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BH@PDIOJKKP@EGL?3?5API?5not?5available@
CONST SEGMENT
??_C@_0BH@PDIOJKKP@EGL?3?5API?5not?5available@ DB 'EGL: API not available'
DB 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BH@JADLEPAM@EGL_EXT_present_opaque@
CONST SEGMENT
??_C@_0BH@JADLEPAM@EGL_EXT_present_opaque@ DB 'EGL_EXT_present_opaque', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BO@IDEEMGNC@EGL_KHR_context_flush_control@
CONST SEGMENT
??_C@_0BO@IDEEMGNC@EGL_KHR_context_flush_control@ DB 'EGL_KHR_context_flu'
DB 'sh_control', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BP@CDGGFNNF@EGL_KHR_get_all_proc_addresses@
CONST SEGMENT
??_C@_0BP@CDGGFNNF@EGL_KHR_get_all_proc_addresses@ DB 'EGL_KHR_get_all_pr'
DB 'oc_addresses', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BG@GOAKKGGB@EGL_KHR_gl_colorspace@
CONST SEGMENT
??_C@_0BG@GOAKKGGB@EGL_KHR_gl_colorspace@ DB 'EGL_KHR_gl_colorspace', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CA@OJFEOPKP@EGL_KHR_create_context_no_error@
CONST SEGMENT
??_C@_0CA@OJFEOPKP@EGL_KHR_create_context_no_error@ DB 'EGL_KHR_create_co'
DB 'ntext_no_error', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BH@GIBFIFPN@EGL_KHR_create_context@
CONST SEGMENT
??_C@_0BH@GIBFIFPN@EGL_KHR_create_context@ DB 'EGL_KHR_create_context', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CC@DOIEFDD@EGL?3?5Failed?5to?5initialize?5EGL?3?5@
CONST SEGMENT
??_C@_0CC@DOIEFDD@EGL?3?5Failed?5to?5initialize?5EGL?3?5@ DB 'EGL: Failed'
DB ' to initialize EGL: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CD@CODEPNKE@EGL?3?5Failed?5to?5get?5EGL?5display?3@
CONST SEGMENT
??_C@_0CD@CODEPNKE@EGL?3?5Failed?5to?5get?5EGL?5display?3@ DB 'EGL: Faile'
DB 'd to get EGL display: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CC@NGDHIGBI@eglCreatePlatformWindowSurfaceE@
CONST SEGMENT
??_C@_0CC@NGDHIGBI@eglCreatePlatformWindowSurfaceE@ DB 'eglCreatePlatform'
DB 'WindowSurfaceEXT', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BJ@KEAIGPHD@eglGetPlatformDisplayEXT@
CONST SEGMENT
??_C@_0BJ@KEAIGPHD@eglGetPlatformDisplayEXT@ DB 'eglGetPlatformDisplayEXT'
DB 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BP@NMKFFDCO@EGL_ANGLE_platform_angle_metal@
CONST SEGMENT
??_C@_0BP@NMKFFDCO@EGL_ANGLE_platform_angle_metal@ DB 'EGL_ANGLE_platform'
DB '_angle_metal', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CA@HGIOILGO@EGL_ANGLE_platform_angle_vulkan@
CONST SEGMENT
??_C@_0CA@HGIOILGO@EGL_ANGLE_platform_angle_vulkan@ DB 'EGL_ANGLE_platfor'
DB 'm_angle_vulkan', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BN@OHLJPDPM@EGL_ANGLE_platform_angle_d3d@
CONST SEGMENT
??_C@_0BN@OHLJPDPM@EGL_ANGLE_platform_angle_d3d@ DB 'EGL_ANGLE_platform_a'
DB 'ngle_d3d', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CA@NIHAEPLD@EGL_ANGLE_platform_angle_opengl@
CONST SEGMENT
??_C@_0CA@NIHAEPLD@EGL_ANGLE_platform_angle_opengl@ DB 'EGL_ANGLE_platfor'
DB 'm_angle_opengl', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BJ@MBCLFEBK@EGL_ANGLE_platform_angle@
CONST SEGMENT
??_C@_0BJ@MBCLFEBK@EGL_ANGLE_platform_angle@ DB 'EGL_ANGLE_platform_angle'
DB 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BJ@KIPDFNMM@EGL_EXT_platform_wayland@
CONST SEGMENT
??_C@_0BJ@KIPDFNMM@EGL_EXT_platform_wayland@ DB 'EGL_EXT_platform_wayland'
DB 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BF@FMIKFMMH@EGL_EXT_platform_x11@
CONST SEGMENT
??_C@_0BF@FMIKFMMH@EGL_EXT_platform_x11@ DB 'EGL_EXT_platform_x11', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BG@IPJFJLIC@EGL_EXT_platform_base@
CONST SEGMENT
??_C@_0BG@IPJFJLIC@EGL_EXT_platform_base@ DB 'EGL_EXT_platform_base', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CK@DCPJCPHH@EGL?3?5Failed?5to?5load?5required?5en@
CONST SEGMENT
??_C@_0CK@DCPJCPHH@EGL?3?5Failed?5to?5load?5required?5en@ DB 'EGL: Failed'
DB ' to load required entry points', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BC@HONLJDPH@eglGetProcAddress@
CONST SEGMENT
??_C@_0BC@HONLJDPH@eglGetProcAddress@ DB 'eglGetProcAddress', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0P@HJKEKLKD@eglQueryString@
CONST SEGMENT
??_C@_0P@HJKEKLKD@eglQueryString@ DB 'eglQueryString', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BA@BGJPOLDF@eglSwapInterval@
CONST SEGMENT
??_C@_0BA@BGJPOLDF@eglSwapInterval@ DB 'eglSwapInterval', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0P@DEBOOHKH@eglSwapBuffers@
CONST SEGMENT
??_C@_0P@DEBOOHKH@eglSwapBuffers@ DB 'eglSwapBuffers', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0P@PNPBPNLI@eglMakeCurrent@
CONST SEGMENT
??_C@_0P@PNPBPNLI@eglMakeCurrent@ DB 'eglMakeCurrent', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BH@MDMCFBDG@eglCreateWindowSurface@
CONST SEGMENT
??_C@_0BH@MDMCFBDG@eglCreateWindowSurface@ DB 'eglCreateWindowSurface', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BC@BNOBCLNJ@eglDestroyContext@
CONST SEGMENT
??_C@_0BC@BNOBCLNJ@eglDestroyContext@ DB 'eglDestroyContext', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BC@ICHKG@eglDestroySurface@
CONST SEGMENT
??_C@_0BC@ICHKG@eglDestroySurface@ DB 'eglDestroySurface', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BB@KEKMNHDF@eglCreateContext@
CONST SEGMENT
??_C@_0BB@KEKMNHDF@eglCreateContext@ DB 'eglCreateContext', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0L@HJOCIPHF@eglBindAPI@
CONST SEGMENT
??_C@_0L@HJOCIPHF@eglBindAPI@ DB 'eglBindAPI', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0N@IGFNFAOP@eglTerminate@
CONST SEGMENT
??_C@_0N@IGFNFAOP@eglTerminate@ DB 'eglTerminate', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0O@EEJFKEKH@eglInitialize@
CONST SEGMENT
??_C@_0O@EEJFKEKH@eglInitialize@ DB 'eglInitialize', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0M@PPADKGOK@eglGetError@
CONST SEGMENT
??_C@_0M@PPADKGOK@eglGetError@ DB 'eglGetError', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0O@BMJFLKOA@eglGetDisplay@
CONST SEGMENT
??_C@_0O@BMJFLKOA@eglGetDisplay@ DB 'eglGetDisplay', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0O@OMNEJBKO@eglGetConfigs@
CONST SEGMENT
??_C@_0O@OMNEJBKO@eglGetConfigs@ DB 'eglGetConfigs', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BD@MAEGKKAE@eglGetConfigAttrib@
CONST SEGMENT
??_C@_0BD@MAEGKKAE@eglGetConfigAttrib@ DB 'eglGetConfigAttrib', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_03LPIGJBNC@lib@
CONST SEGMENT
??_C@_03LPIGJBNC@lib@ DB 'lib', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BH@NFNALLIN@EGL?3?5Library?5not?5found@
CONST SEGMENT
??_C@_0BH@NFNALLIN@EGL?3?5Library?5not?5found@ DB 'EGL: Library not found'
DB 00H ; `string'
CONST ENDS
; COMDAT ??_C@_07EAKGIKCB@EGL?4dll@
CONST SEGMENT
??_C@_07EAKGIKCB@EGL?4dll@ DB 'EGL.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0L@ELKKGGMD@libEGL?4dll@
CONST SEGMENT
??_C@_0L@ELKKGGMD@libEGL?4dll@ DB 'libEGL.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0EN@CIIGDABJ@EGL?3?5The?5context?5must?5be?5curren@
CONST SEGMENT
??_C@_0EN@CIIGDABJ@EGL?3?5The?5context?5must?5be?5curren@ DB 'EGL: The co'
DB 'ntext must be current on the calling thread when swapping buf'
DB 'fers', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CJ@NBJEEEJD@EGL?3?5Failed?5to?5clear?5current?5co@
CONST SEGMENT
??_C@_0CJ@NBJEEEJD@EGL?3?5Failed?5to?5clear?5current?5co@ DB 'EGL: Failed'
DB ' to clear current context: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CI@MPJNGPNP@EGL?3?5Failed?5to?5make?5context?5cur@
CONST SEGMENT
??_C@_0CI@MPJNGPNP@EGL?3?5Failed?5to?5make?5context?5cur@ DB 'EGL: Failed'
DB ' to make context current: %s', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CJ@JPDPLHCM@EGL?3?5Failed?5to?5find?5a?5suitable?5@
CONST SEGMENT
??_C@_0CJ@JPDPLHCM@EGL?3?5Failed?5to?5find?5a?5suitable?5@ DB 'EGL: Faile'
DB 'd to find a suitable EGLConfig', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CH@EMJGILEP@EGL?3?5Failed?5to?5find?5support?5for@
CONST SEGMENT
??_C@_0CH@EMJGILEP@EGL?3?5Failed?5to?5find?5support?5for@ DB 'EGL: Failed'
DB ' to find support for OpenGL', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0DF@BPPFPGID@EGL?3?5Failed?5to?5find?5support?5for@
CONST SEGMENT
??_C@_0DF@BPPFPGID@EGL?3?5Failed?5to?5find?5support?5for@ DB 'EGL: Failed'
DB ' to find support for OpenGL ES 2 or later', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CO@HAIMLOLL@EGL?3?5Failed?5to?5find?5support?5for@
CONST SEGMENT
??_C@_0CO@HAIMLOLL@EGL?3?5Failed?5to?5find?5support?5for@ DB 'EGL: Failed'
DB ' to find support for OpenGL ES 1.x', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BM@KHOPPJNJ@EGL?3?5No?5EGLConfigs?5returned@
CONST SEGMENT
??_C@_0BM@KHOPPJNJ@EGL?3?5No?5EGLConfigs?5returned@ DB 'EGL: No EGLConfig'
DB 's returned', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CE@CNKFDGDO@EGL?3?5Stereo?5rendering?5not?5suppo@
CONST SEGMENT
??_C@_0CE@CNKFDGDO@EGL?3?5Stereo?5rendering?5not?5suppo@ DB 'EGL: Stereo '
DB 'rendering not supported', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BJ@KDFAHDEK@ERROR?3?5UNKNOWN?5EGL?5ERROR@
CONST SEGMENT
??_C@_0BJ@KDFAHDEK@ERROR?3?5UNKNOWN?5EGL?5ERROR@ DB 'ERROR: UNKNOWN EGL E'
DB 'RROR', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0DL@GNLICFMC@The?5application?5must?5destroy?5al@
CONST SEGMENT
??_C@_0DL@GNLICFMC@The?5application?5must?5destroy?5al@ DB 'The applicati'
DB 'on must destroy all contexts and reinitialise', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0EE@FBMMOIJB@A?5NativeWindowType?5argument?5doe@
CONST SEGMENT
??_C@_0EE@FBMMOIJB@A?5NativeWindowType?5argument?5doe@ DB 'A NativeWindow'
DB 'Type argument does not refer to a valid native window', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0EE@NKCAIGPH@A?5NativePixmapType?5argument?5doe@
CONST SEGMENT
??_C@_0EE@NKCAIGPH@A?5NativePixmapType?5argument?5doe@ DB 'A NativePixmap'
DB 'Type argument does not refer to a valid native pixmap', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CI@KAHNKLLC@One?5or?5more?5argument?5values?5are@
CONST SEGMENT
??_C@_0CI@KAHNKLLC@One?5or?5more?5argument?5values?5are@ DB 'One or more '
DB 'argument values are invalid', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BL@OIILILNJ@Arguments?5are?5inconsistent@
CONST SEGMENT
??_C@_0BL@OIILILNJ@Arguments?5are?5inconsistent@ DB 'Arguments are incons'
DB 'istent', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0FB@EPGEGHDL@An?5EGLSurface?5argument?5does?5not@
CONST SEGMENT
??_C@_0FB@EPGEGHDL@An?5EGLSurface?5argument?5does?5not@ DB 'An EGLSurface'
DB ' argument does not name a valid surface configured for GL ren'
DB 'dering', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0EE@ICKHNPHB@An?5EGLDisplay?5argument?5does?5not@
CONST SEGMENT
??_C@_0EE@ICKHNPHB@An?5EGLDisplay?5argument?5does?5not@ DB 'An EGLDisplay'
DB ' argument does not name a valid EGL display connection', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0GG@ODICGIHF@The?5current?5surface?5of?5the?5call@
CONST SEGMENT
??_C@_0GG@ODICGIHF@The?5current?5surface?5of?5the?5call@ DB 'The current '
DB 'surface of the calling thread is a window, pixel buffer or pi'
DB 'xmap that is no longer valid', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0EL@BBAGGFOK@An?5EGLConfig?5argument?5does?5not?5@
CONST SEGMENT
??_C@_0EL@BBAGGFOK@An?5EGLConfig?5argument?5does?5not?5@ DB 'An EGLConfig'
DB ' argument does not name a valid EGL frame buffer configuratio'
DB 'n', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0ED@GAJEHCGA@An?5EGLContext?5argument?5does?5not@
CONST SEGMENT
??_C@_0ED@GAJEHCGA@An?5EGLContext?5argument?5does?5not@ DB 'An EGLContext'
DB ' argument does not name a valid EGL rendering context', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0EO@EKFIJHGG@An?5unrecognized?5attribute?5or?5at@
CONST SEGMENT
??_C@_0EO@EKFIJHGG@An?5unrecognized?5attribute?5or?5at@ DB 'An unrecogniz'
DB 'ed attribute or attribute value was passed in the attribute l'
DB 'ist', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0DN@GNDEENDO@EGL?5failed?5to?5allocate?5resource@
CONST SEGMENT
??_C@_0DN@GNDEENDO@EGL?5failed?5to?5allocate?5resource@ DB 'EGL failed to'
DB ' allocate resources for the requested operation', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CH@MMCOKIKC@EGL?5cannot?5access?5a?5requested?5r@
CONST SEGMENT
??_C@_0CH@MMCOKIKC@EGL?5cannot?5access?5a?5requested?5r@ DB 'EGL cannot a'
DB 'ccess a requested resource', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CH@KLCPDMM@EGL?5is?5not?5or?5could?5not?5be?5init@
CONST SEGMENT
??_C@_0CH@KLCPDMM@EGL?5is?5not?5or?5could?5not?5be?5init@ DB 'EGL is not '
DB 'or could not be initialized', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_07PBILKAFL@Success@
CONST SEGMENT
??_C@_07PBILKAFL@Success@ DB 'Success', 00H ; `string'
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetEGLSurface DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetEGLContext DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetEGLDisplay DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$destroyContextEGL DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getProcAddressEGL DD 025051301H
DD 010e2313H
DD 070070025H
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$extensionSupportedEGL DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$swapIntervalEGL DD 025051201H
DD 010d2312H
DD 07006001dH
DD 05005H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$swapBuffersEGL DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$makeContextCurrentEGL DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 040H
DW 03e5H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$chooseEGLConfig DD 025054719H
DD 0118231dH
DD 070110045H
DD 05010H
DD imagerel __GSHandlerCheck
DD 0218H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
chooseEGLConfig$rtcName$0 DB 06eH
DB 061H
DB 074H
DB 069H
DB 076H
DB 065H
DB 043H
DB 06fH
DB 075H
DB 06eH
DB 074H
DB 00H
ORG $+4
chooseEGLConfig$rtcVarDesc DD 0a4H
DD 04H
DQ FLAT:chooseEGLConfig$rtcName$0
ORG $+48
chooseEGLConfig$rtcFrameData DD 01H
DD 00H
DQ FLAT:chooseEGLConfig$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DB 03aH
DB 083H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getEGLConfigAttrib DD 025054119H
DD 01122317H
DD 0700b0021H
DD 0500aH
DD imagerel __GSHandlerCheck
DD 0f8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
getEGLConfigAttrib$rtcName$0 DB 076H
DB 061H
DB 06cH
DB 075H
DB 065H
DB 00H
ORG $+10
getEGLConfigAttrib$rtcVarDesc DD 024H
DD 04H
DQ FLAT:getEGLConfigAttrib$rtcName$0
ORG $+48
getEGLConfigAttrib$rtcFrameData DD 01H
DD 00H
DQ FLAT:getEGLConfigAttrib$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getEGLErrorString DD 025051201H
DD 010d2312H
DD 07006001fH
DD 05005H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 040H
DW 0c9eH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwCreateContextEGL DD 025054719H
DD 0118231dH
DD 07011007dH
DD 05010H
DD imagerel __GSHandlerCheck
DD 03d8H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwCreateContextEGL$rtcName$0 DB 061H
DB 074H
DB 074H
DB 072H
DB 069H
DB 062H
DB 073H
DB 00H
_glfwCreateContextEGL$rtcName$1 DB 063H
DB 06fH
DB 06eH
DB 066H
DB 069H
DB 067H
DB 00H
ORG $+1
_glfwCreateContextEGL$rtcName$2 DB 065H
DB 073H
DB 031H
DB 073H
DB 06fH
DB 06eH
DB 061H
DB 06dH
DB 065H
DB 073H
DB 00H
ORG $+5
_glfwCreateContextEGL$rtcName$3 DB 065H
DB 073H
DB 032H
DB 073H
DB 06fH
DB 06eH
DB 061H
DB 06dH
DB 065H
DB 073H
DB 00H
ORG $+5
_glfwCreateContextEGL$rtcName$4 DB 067H
DB 06cH
DB 073H
DB 06fH
DB 06eH
DB 061H
DB 06dH
DB 065H
DB 073H
DB 00H
ORG $+6
_glfwCreateContextEGL$rtcVarDesc DD 0248H
DD 08H
DQ FLAT:_glfwCreateContextEGL$rtcName$4
DD 0218H
DD 018H
DQ FLAT:_glfwCreateContextEGL$rtcName$3
DD 01e8H
DD 018H
DQ FLAT:_glfwCreateContextEGL$rtcName$2
DD 0e8H
DD 08H
DQ FLAT:_glfwCreateContextEGL$rtcName$1
DD 030H
DD 0a0H
DQ FLAT:_glfwCreateContextEGL$rtcName$0
ORG $+240
_glfwCreateContextEGL$rtcFrameData DD 05H
DD 00H
DQ FLAT:_glfwCreateContextEGL$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwTerminateEGL DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 02aH
DW 0602H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwInitEGL DD 025053119H
DD 010a230fH
DD 07003002fH
DD 05002H
DD imagerel __GSHandlerCheck
DD 0168H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwInitEGL$rtcName$0 DB 061H
DB 074H
DB 074H
DB 072H
DB 069H
DB 062H
DB 073H
DB 00H
_glfwInitEGL$rtcName$1 DB 073H
DB 06fH
DB 06eH
DB 061H
DB 06dH
DB 065H
DB 073H
DB 00H
_glfwInitEGL$rtcVarDesc DD 088H
DD 018H
DQ FLAT:_glfwInitEGL$rtcName$1
DD 048H
DD 08H
DQ FLAT:_glfwInitEGL$rtcName$0
ORG $+96
_glfwInitEGL$rtcFrameData DD 02H
DD 00H
DQ FLAT:_glfwInitEGL$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\egl_context.c
; COMDAT glfwGetEGLSurface
_TEXT SEGMENT
window$ = 8
handle$ = 256
glfwGetEGLSurface PROC ; COMDAT
; 897 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 898 : _GLFWwindow* window = (_GLFWwindow*)handle;
0001f 48 8b 85 00 01
00 00 mov rax, QWORD PTR handle$[rbp]
00026 48 89 45 08 mov QWORD PTR window$[rbp], rax
; 899 : _GLFW_REQUIRE_INIT_OR_RETURN(EGL_NO_SURFACE);
0002a 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00031 75 10 jne SHORT $LN2@glfwGetEGL
00033 33 d2 xor edx, edx
00035 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0003a e8 00 00 00 00 call _glfwInputError
0003f 33 c0 xor eax, eax
00041 eb 2b jmp SHORT $LN1@glfwGetEGL
$LN2@glfwGetEGL:
; 900 :
; 901 : if (window->context.source != GLFW_EGL_CONTEXT_API)
00043 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00047 81 b8 0c 02 00
00 02 60 03 00 cmp DWORD PTR [rax+524], 221186 ; 00036002H
00051 74 10 je SHORT $LN3@glfwGetEGL
; 902 : {
; 903 : _glfwInputError(GLFW_NO_WINDOW_CONTEXT, NULL);
00053 33 d2 xor edx, edx
00055 b9 0a 00 01 00 mov ecx, 65546 ; 0001000aH
0005a e8 00 00 00 00 call _glfwInputError
; 904 : return EGL_NO_SURFACE;
0005f 33 c0 xor eax, eax
00061 eb 0b jmp SHORT $LN1@glfwGetEGL
$LN3@glfwGetEGL:
; 905 : }
; 906 :
; 907 : return window->context.egl.surface;
00063 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00067 48 8b 80 90 02
00 00 mov rax, QWORD PTR [rax+656]
$LN1@glfwGetEGL:
; 908 : }
0006e 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00075 5f pop rdi
00076 5d pop rbp
00077 c3 ret 0
glfwGetEGLSurface ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT glfwGetEGLContext
_TEXT SEGMENT
window$ = 8
handle$ = 256
glfwGetEGLContext PROC ; COMDAT
; 883 : {
$LN5:
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 884 : _GLFWwindow* window = (_GLFWwindow*)handle;
0001f 48 8b 85 00 01
00 00 mov rax, QWORD PTR handle$[rbp]
00026 48 89 45 08 mov QWORD PTR window$[rbp], rax
; 885 : _GLFW_REQUIRE_INIT_OR_RETURN(EGL_NO_CONTEXT);
0002a 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00031 75 10 jne SHORT $LN2@glfwGetEGL
00033 33 d2 xor edx, edx
00035 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0003a e8 00 00 00 00 call _glfwInputError
0003f 33 c0 xor eax, eax
00041 eb 2b jmp SHORT $LN1@glfwGetEGL
$LN2@glfwGetEGL:
; 886 :
; 887 : if (window->context.source != GLFW_EGL_CONTEXT_API)
00043 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00047 81 b8 0c 02 00
00 02 60 03 00 cmp DWORD PTR [rax+524], 221186 ; 00036002H
00051 74 10 je SHORT $LN3@glfwGetEGL
; 888 : {
; 889 : _glfwInputError(GLFW_NO_WINDOW_CONTEXT, NULL);
00053 33 d2 xor edx, edx
00055 b9 0a 00 01 00 mov ecx, 65546 ; 0001000aH
0005a e8 00 00 00 00 call _glfwInputError
; 890 : return EGL_NO_CONTEXT;
0005f 33 c0 xor eax, eax
00061 eb 0b jmp SHORT $LN1@glfwGetEGL
$LN3@glfwGetEGL:
; 891 : }
; 892 :
; 893 : return window->context.egl.handle;
00063 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00067 48 8b 80 88 02
00 00 mov rax, QWORD PTR [rax+648]
$LN1@glfwGetEGL:
; 894 : }
0006e 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00075 5f pop rdi
00076 5d pop rbp
00077 c3 ret 0
glfwGetEGLContext ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT glfwGetEGLDisplay
_TEXT SEGMENT
glfwGetEGLDisplay PROC ; COMDAT
; 877 : {
$LN4:
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:__E9A20A45_egl_context@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 878 : _GLFW_REQUIRE_INIT_OR_RETURN(EGL_NO_DISPLAY);
0001b 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00022 75 10 jne SHORT $LN2@glfwGetEGL
00024 33 d2 xor edx, edx
00026 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0002b e8 00 00 00 00 call _glfwInputError
00030 33 c0 xor eax, eax
00032 eb 07 jmp SHORT $LN1@glfwGetEGL
$LN2@glfwGetEGL:
; 879 : return _glfw.egl.display;
00034 48 8b 05 f8 19
00 00 mov rax, QWORD PTR _glfw+6648
$LN1@glfwGetEGL:
; 880 : }
0003b 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00042 5f pop rdi
00043 5d pop rbp
00044 c3 ret 0
glfwGetEGLDisplay ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT destroyContextEGL
_TEXT SEGMENT
window$ = 224
destroyContextEGL PROC ; COMDAT
; 327 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 328 : // NOTE: Do not unload libGL.so.1 while the X11 display is still open,
; 329 : // as it will make XCloseDisplay segfault
; 330 : if (_glfw.platform.platformID != GLFW_PLATFORM_X11 ||
0001f 81 3d 28 00 00
00 04 00 06 00 cmp DWORD PTR _glfw+40, 393220 ; 00060004H
00029 75 13 jne SHORT $LN3@destroyCon
0002b 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00032 81 b8 08 02 00
00 01 00 03 00 cmp DWORD PTR [rax+520], 196609 ; 00030001H
0003c 74 36 je SHORT $LN2@destroyCon
$LN3@destroyCon:
; 331 : window->context.client != GLFW_OPENGL_API)
; 332 : {
; 333 : if (window->context.egl.client)
0003e 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00045 48 83 b8 98 02
00 00 00 cmp QWORD PTR [rax+664], 0
0004d 74 25 je SHORT $LN4@destroyCon
; 334 : {
; 335 : _glfwPlatformFreeModule(window->context.egl.client);
0004f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00056 48 8b 88 98 02
00 00 mov rcx, QWORD PTR [rax+664]
0005d e8 00 00 00 00 call _glfwPlatformFreeModule
; 336 : window->context.egl.client = NULL;
00062 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00069 48 c7 80 98 02
00 00 00 00 00
00 mov QWORD PTR [rax+664], 0
$LN4@destroyCon:
$LN2@destroyCon:
; 337 : }
; 338 : }
; 339 :
; 340 : if (window->context.egl.surface)
00074 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0007b 48 83 b8 90 02
00 00 00 cmp QWORD PTR [rax+656], 0
00083 74 2d je SHORT $LN5@destroyCon
; 341 : {
; 342 : eglDestroySurface(_glfw.egl.display, window->context.egl.surface);
00085 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0008c 48 8b 90 90 02
00 00 mov rdx, QWORD PTR [rax+656]
00093 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0009a ff 15 90 1a 00
00 call QWORD PTR _glfw+6800
; 343 : window->context.egl.surface = EGL_NO_SURFACE;
000a0 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000a7 48 c7 80 90 02
00 00 00 00 00
00 mov QWORD PTR [rax+656], 0
$LN5@destroyCon:
; 344 : }
; 345 :
; 346 : if (window->context.egl.handle)
000b2 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000b9 48 83 b8 88 02
00 00 00 cmp QWORD PTR [rax+648], 0
000c1 74 2d je SHORT $LN6@destroyCon
; 347 : {
; 348 : eglDestroyContext(_glfw.egl.display, window->context.egl.handle);
000c3 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000ca 48 8b 90 88 02
00 00 mov rdx, QWORD PTR [rax+648]
000d1 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
000d8 ff 15 98 1a 00
00 call QWORD PTR _glfw+6808
; 349 : window->context.egl.handle = EGL_NO_CONTEXT;
000de 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
000e5 48 c7 80 88 02
00 00 00 00 00
00 mov QWORD PTR [rax+648], 0
$LN6@destroyCon:
; 350 : }
; 351 : }
000f0 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
000f7 5f pop rdi
000f8 5d pop rbp
000f9 c3 ret 0
destroyContextEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT getProcAddressEGL
_TEXT SEGMENT
window$ = 8
proc$1 = 40
procname$ = 288
getProcAddressEGL PROC ; COMDAT
; 312 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 28 01
00 00 sub rsp, 296 ; 00000128H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 313 : _GLFWwindow* window = _glfwPlatformGetTls(&_glfw.contextSlot);
0001f 48 8d 0d a4 19
00 00 lea rcx, OFFSET FLAT:_glfw+6564
00026 e8 00 00 00 00 call _glfwPlatformGetTls
0002b 48 89 45 08 mov QWORD PTR window$[rbp], rax
; 314 :
; 315 : if (window->context.egl.client)
0002f 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00033 48 83 b8 98 02
00 00 00 cmp QWORD PTR [rax+664], 0
0003b 74 28 je SHORT $LN2@getProcAdd
; 316 : {
; 317 : GLFWglproc proc = (GLFWglproc)
0003d 48 8b 95 20 01
00 00 mov rdx, QWORD PTR procname$[rbp]
00044 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00048 48 8b 88 98 02
00 00 mov rcx, QWORD PTR [rax+664]
0004f e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00054 48 89 45 28 mov QWORD PTR proc$1[rbp], rax
; 318 : _glfwPlatformGetModuleSymbol(window->context.egl.client, procname);
; 319 : if (proc)
00058 48 83 7d 28 00 cmp QWORD PTR proc$1[rbp], 0
0005d 74 06 je SHORT $LN3@getProcAdd
; 320 : return proc;
0005f 48 8b 45 28 mov rax, QWORD PTR proc$1[rbp]
00063 eb 0d jmp SHORT $LN1@getProcAdd
$LN3@getProcAdd:
$LN2@getProcAdd:
; 321 : }
; 322 :
; 323 : return eglGetProcAddress(procname);
00065 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR procname$[rbp]
0006c ff 15 c8 1a 00
00 call QWORD PTR _glfw+6856
$LN1@getProcAdd:
; 324 : }
00072 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
00079 5f pop rdi
0007a 5d pop rbp
0007b c3 ret 0
getProcAddressEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT extensionSupportedEGL
_TEXT SEGMENT
extensions$ = 8
extension$ = 256
extensionSupportedEGL PROC ; COMDAT
; 300 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 301 : const char* extensions = eglQueryString(_glfw.egl.display, EGL_EXTENSIONS);
0001f ba 55 30 00 00 mov edx, 12373 ; 00003055H
00024 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0002b ff 15 c0 1a 00
00 call QWORD PTR _glfw+6848
00031 48 89 45 08 mov QWORD PTR extensions$[rbp], rax
; 302 : if (extensions)
00035 48 83 7d 08 00 cmp QWORD PTR extensions$[rbp], 0
0003a 74 1b je SHORT $LN2@extensionS
; 303 : {
; 304 : if (_glfwStringInExtensionString(extension, extensions))
0003c 48 8b 55 08 mov rdx, QWORD PTR extensions$[rbp]
00040 48 8b 8d 00 01
00 00 mov rcx, QWORD PTR extension$[rbp]
00047 e8 00 00 00 00 call _glfwStringInExtensionString
0004c 85 c0 test eax, eax
0004e 74 07 je SHORT $LN3@extensionS
; 305 : return GLFW_TRUE;
00050 b8 01 00 00 00 mov eax, 1
00055 eb 02 jmp SHORT $LN1@extensionS
$LN3@extensionS:
$LN2@extensionS:
; 306 : }
; 307 :
; 308 : return GLFW_FALSE;
00057 33 c0 xor eax, eax
$LN1@extensionS:
; 309 : }
00059 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00060 5f pop rdi
00061 5d pop rbp
00062 c3 ret 0
extensionSupportedEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT swapIntervalEGL
_TEXT SEGMENT
interval$ = 224
swapIntervalEGL PROC ; COMDAT
; 295 : {
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 57 push rdi
00006 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00012 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 296 : eglSwapInterval(_glfw.egl.display, interval);
0001e 8b 95 e0 00 00
00 mov edx, DWORD PTR interval$[rbp]
00024 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0002b ff 15 b8 1a 00
00 call QWORD PTR _glfw+6840
; 297 : }
00031 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00038 5f pop rdi
00039 5d pop rbp
0003a c3 ret 0
swapIntervalEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT swapBuffersEGL
_TEXT SEGMENT
window$ = 224
swapBuffersEGL PROC ; COMDAT
; 274 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 275 : if (window != _glfwPlatformGetTls(&_glfw.contextSlot))
0001f 48 8d 0d a4 19
00 00 lea rcx, OFFSET FLAT:_glfw+6564
00026 e8 00 00 00 00 call _glfwPlatformGetTls
0002b 48 39 85 e0 00
00 00 cmp QWORD PTR window$[rbp], rax
00032 74 13 je SHORT $LN2@swapBuffer
; 276 : {
; 277 : _glfwInputError(GLFW_PLATFORM_ERROR,
00034 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0EN@CIIGDABJ@EGL?3?5The?5context?5must?5be?5curren@
0003b b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00040 e8 00 00 00 00 call _glfwInputError
; 278 : "EGL: The context must be current on the calling thread when swapping buffers");
; 279 : return;
00045 eb 1b jmp SHORT $LN1@swapBuffer
$LN2@swapBuffer:
; 280 : }
; 281 :
; 282 : #if defined(_GLFW_WAYLAND)
; 283 : if (_glfw.platform.platformID == GLFW_PLATFORM_WAYLAND)
; 284 : {
; 285 : // NOTE: Swapping buffers on a hidden window on Wayland makes it visible
; 286 : if (!window->wl.visible)
; 287 : return;
; 288 : }
; 289 : #endif
; 290 :
; 291 : eglSwapBuffers(_glfw.egl.display, window->context.egl.surface);
00047 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0004e 48 8b 90 90 02
00 00 mov rdx, QWORD PTR [rax+656]
00055 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0005c ff 15 b0 1a 00
00 call QWORD PTR _glfw+6832
$LN1@swapBuffer:
; 292 : }
00062 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00069 5f pop rdi
0006a 5d pop rbp
0006b c3 ret 0
swapBuffersEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT makeContextCurrentEGL
_TEXT SEGMENT
window$ = 224
makeContextCurrentEGL PROC ; COMDAT
; 242 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec e8 00
00 00 sub rsp, 232 ; 000000e8H
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00013 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 243 : if (window)
0001f 48 83 bd e0 00
00 00 00 cmp QWORD PTR window$[rbp], 0
00027 74 60 je SHORT $LN2@makeContex
; 244 : {
; 245 : if (!eglMakeCurrent(_glfw.egl.display,
00029 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00030 4c 8b 88 88 02
00 00 mov r9, QWORD PTR [rax+648]
00037 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0003e 4c 8b 80 90 02
00 00 mov r8, QWORD PTR [rax+656]
00045 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0004c 48 8b 90 90 02
00 00 mov rdx, QWORD PTR [rax+656]
00053 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0005a ff 15 a8 1a 00
00 call QWORD PTR _glfw+6824
00060 85 c0 test eax, eax
00062 75 23 jne SHORT $LN4@makeContex
; 246 : window->context.egl.surface,
; 247 : window->context.egl.surface,
; 248 : window->context.egl.handle))
; 249 : {
; 250 : _glfwInputError(GLFW_PLATFORM_ERROR,
00064 ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
0006a 8b c8 mov ecx, eax
0006c e8 00 00 00 00 call getEGLErrorString
00071 4c 8b c0 mov r8, rax
00074 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CI@MPJNGPNP@EGL?3?5Failed?5to?5make?5context?5cur@
0007b b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00080 e8 00 00 00 00 call _glfwInputError
; 251 : "EGL: Failed to make context current: %s",
; 252 : getEGLErrorString(eglGetError()));
; 253 : return;
00085 eb 51 jmp SHORT $LN1@makeContex
$LN4@makeContex:
; 254 : }
; 255 : }
00087 eb 3c jmp SHORT $LN3@makeContex
$LN2@makeContex:
; 256 : else
; 257 : {
; 258 : if (!eglMakeCurrent(_glfw.egl.display,
00089 45 33 c9 xor r9d, r9d
0008c 45 33 c0 xor r8d, r8d
0008f 33 d2 xor edx, edx
00091 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
00098 ff 15 a8 1a 00
00 call QWORD PTR _glfw+6824
0009e 85 c0 test eax, eax
000a0 75 23 jne SHORT $LN5@makeContex
; 259 : EGL_NO_SURFACE,
; 260 : EGL_NO_SURFACE,
; 261 : EGL_NO_CONTEXT))
; 262 : {
; 263 : _glfwInputError(GLFW_PLATFORM_ERROR,
000a2 ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
000a8 8b c8 mov ecx, eax
000aa e8 00 00 00 00 call getEGLErrorString
000af 4c 8b c0 mov r8, rax
000b2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@NBJEEEJD@EGL?3?5Failed?5to?5clear?5current?5co@
000b9 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
000be e8 00 00 00 00 call _glfwInputError
; 264 : "EGL: Failed to clear current context: %s",
; 265 : getEGLErrorString(eglGetError()));
; 266 : return;
000c3 eb 13 jmp SHORT $LN1@makeContex
$LN5@makeContex:
$LN3@makeContex:
; 267 : }
; 268 : }
; 269 :
; 270 : _glfwPlatformSetTls(&_glfw.contextSlot, window);
000c5 48 8b 95 e0 00
00 00 mov rdx, QWORD PTR window$[rbp]
000cc 48 8d 0d a4 19
00 00 lea rcx, OFFSET FLAT:_glfw+6564
000d3 e8 00 00 00 00 call _glfwPlatformSetTls
$LN1@makeContex:
; 271 : }
000d8 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
000df 5f pop rdi
000e0 5d pop rbp
000e1 c3 ret 0
makeContextCurrentEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT chooseEGLConfig
_TEXT SEGMENT
nativeConfigs$ = 8
usableConfigs$ = 40
closest$ = 72
i$ = 100
nativeCount$ = 132
usableCount$ = 164
apiBit$ = 196
wrongApiAvailable$ = 228
n$4 = 264
u$5 = 296
tv199 = 500
__$ArrayPad$ = 504
ctxconfig$ = 544
fbconfig$ = 552
result$ = 560
chooseEGLConfig PROC ; COMDAT
; 93 : {
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 28 02
00 00 sub rsp, 552 ; 00000228H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00022 b9 52 00 00 00 mov ecx, 82 ; 00000052H
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002c f3 ab rep stosd
0002e 48 8b 8c 24 48
02 00 00 mov rcx, QWORD PTR [rsp+584]
00036 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 f8 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00047 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 94 : EGLConfig* nativeConfigs;
; 95 : _GLFWfbconfig* usableConfigs;
; 96 : const _GLFWfbconfig* closest;
; 97 : int i, nativeCount, usableCount, apiBit;
; 98 : GLFWbool wrongApiAvailable = GLFW_FALSE;
00053 c7 85 e4 00 00
00 00 00 00 00 mov DWORD PTR wrongApiAvailable$[rbp], 0
; 99 :
; 100 : if (ctxconfig->client == GLFW_OPENGL_ES_API)
0005d 48 8b 85 20 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00064 81 38 02 00 03
00 cmp DWORD PTR [rax], 196610 ; 00030002H
0006a 75 25 jne SHORT $LN5@chooseEGLC
; 101 : {
; 102 : if (ctxconfig->major == 1)
0006c 48 8b 85 20 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00073 83 78 08 01 cmp DWORD PTR [rax+8], 1
00077 75 0c jne SHORT $LN7@chooseEGLC
; 103 : apiBit = EGL_OPENGL_ES_BIT;
00079 c7 85 c4 00 00
00 01 00 00 00 mov DWORD PTR apiBit$[rbp], 1
00083 eb 0a jmp SHORT $LN8@chooseEGLC
$LN7@chooseEGLC:
; 104 : else
; 105 : apiBit = EGL_OPENGL_ES2_BIT;
00085 c7 85 c4 00 00
00 04 00 00 00 mov DWORD PTR apiBit$[rbp], 4
$LN8@chooseEGLC:
; 106 : }
0008f eb 0a jmp SHORT $LN6@chooseEGLC
$LN5@chooseEGLC:
; 107 : else
; 108 : apiBit = EGL_OPENGL_BIT;
00091 c7 85 c4 00 00
00 08 00 00 00 mov DWORD PTR apiBit$[rbp], 8
$LN6@chooseEGLC:
; 109 :
; 110 : if (fbconfig->stereo)
0009b 48 8b 85 28 02
00 00 mov rax, QWORD PTR fbconfig$[rbp]
000a2 83 78 2c 00 cmp DWORD PTR [rax+44], 0
000a6 74 18 je SHORT $LN9@chooseEGLC
; 111 : {
; 112 : _glfwInputError(GLFW_FORMAT_UNAVAILABLE, "EGL: Stereo rendering not supported");
000a8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CE@CNKFDGDO@EGL?3?5Stereo?5rendering?5not?5suppo@
000af b9 09 00 01 00 mov ecx, 65545 ; 00010009H
000b4 e8 00 00 00 00 call _glfwInputError
; 113 : return GLFW_FALSE;
000b9 33 c0 xor eax, eax
000bb e9 0f 03 00 00 jmp $LN1@chooseEGLC
$LN9@chooseEGLC:
; 114 : }
; 115 :
; 116 : eglGetConfigs(_glfw.egl.display, NULL, 0, &nativeCount);
000c0 4c 8d 8d 84 00
00 00 lea r9, QWORD PTR nativeCount$[rbp]
000c7 45 33 c0 xor r8d, r8d
000ca 33 d2 xor edx, edx
000cc 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
000d3 ff 15 58 1a 00
00 call QWORD PTR _glfw+6744
; 117 : if (!nativeCount)
000d9 83 bd 84 00 00
00 00 cmp DWORD PTR nativeCount$[rbp], 0
000e0 75 18 jne SHORT $LN10@chooseEGLC
; 118 : {
; 119 : _glfwInputError(GLFW_API_UNAVAILABLE, "EGL: No EGLConfigs returned");
000e2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BM@KHOPPJNJ@EGL?3?5No?5EGLConfigs?5returned@
000e9 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
000ee e8 00 00 00 00 call _glfwInputError
; 120 : return GLFW_FALSE;
000f3 33 c0 xor eax, eax
000f5 e9 d5 02 00 00 jmp $LN1@chooseEGLC
$LN10@chooseEGLC:
; 121 : }
; 122 :
; 123 : nativeConfigs = _glfw_calloc(nativeCount, sizeof(EGLConfig));
000fa 48 63 85 84 00
00 00 movsxd rax, DWORD PTR nativeCount$[rbp]
00101 ba 08 00 00 00 mov edx, 8
00106 48 8b c8 mov rcx, rax
00109 e8 00 00 00 00 call _glfw_calloc
0010e 48 89 45 08 mov QWORD PTR nativeConfigs$[rbp], rax
; 124 : eglGetConfigs(_glfw.egl.display, nativeConfigs, nativeCount, &nativeCount);
00112 4c 8d 8d 84 00
00 00 lea r9, QWORD PTR nativeCount$[rbp]
00119 44 8b 85 84 00
00 00 mov r8d, DWORD PTR nativeCount$[rbp]
00120 48 8b 55 08 mov rdx, QWORD PTR nativeConfigs$[rbp]
00124 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0012b ff 15 58 1a 00
00 call QWORD PTR _glfw+6744
; 125 :
; 126 : usableConfigs = _glfw_calloc(nativeCount, sizeof(_GLFWfbconfig));
00131 48 63 85 84 00
00 00 movsxd rax, DWORD PTR nativeCount$[rbp]
00138 ba 48 00 00 00 mov edx, 72 ; 00000048H
0013d 48 8b c8 mov rcx, rax
00140 e8 00 00 00 00 call _glfw_calloc
00145 48 89 45 28 mov QWORD PTR usableConfigs$[rbp], rax
; 127 : usableCount = 0;
00149 c7 85 a4 00 00
00 00 00 00 00 mov DWORD PTR usableCount$[rbp], 0
; 128 :
; 129 : for (i = 0; i < nativeCount; i++)
00153 c7 45 64 00 00
00 00 mov DWORD PTR i$[rbp], 0
0015a eb 08 jmp SHORT $LN4@chooseEGLC
$LN2@chooseEGLC:
0015c 8b 45 64 mov eax, DWORD PTR i$[rbp]
0015f ff c0 inc eax
00161 89 45 64 mov DWORD PTR i$[rbp], eax
$LN4@chooseEGLC:
00164 8b 85 84 00 00
00 mov eax, DWORD PTR nativeCount$[rbp]
0016a 39 45 64 cmp DWORD PTR i$[rbp], eax
0016d 0f 8d 82 01 00
00 jge $LN3@chooseEGLC
; 130 : {
; 131 : const EGLConfig n = nativeConfigs[i];
00173 48 63 45 64 movsxd rax, DWORD PTR i$[rbp]
00177 48 8b 4d 08 mov rcx, QWORD PTR nativeConfigs$[rbp]
0017b 48 8b 04 c1 mov rax, QWORD PTR [rcx+rax*8]
0017f 48 89 85 08 01
00 00 mov QWORD PTR n$4[rbp], rax
; 132 : _GLFWfbconfig* u = usableConfigs + usableCount;
00186 48 63 85 a4 00
00 00 movsxd rax, DWORD PTR usableCount$[rbp]
0018d 48 6b c0 48 imul rax, rax, 72 ; 00000048H
00191 48 8b 4d 28 mov rcx, QWORD PTR usableConfigs$[rbp]
00195 48 03 c8 add rcx, rax
00198 48 8b c1 mov rax, rcx
0019b 48 89 85 28 01
00 00 mov QWORD PTR u$5[rbp], rax
; 133 :
; 134 : // Only consider RGB(A) EGLConfigs
; 135 : if (getEGLConfigAttrib(n, EGL_COLOR_BUFFER_TYPE) != EGL_RGB_BUFFER)
001a2 ba 3f 30 00 00 mov edx, 12351 ; 0000303fH
001a7 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
001ae e8 00 00 00 00 call getEGLConfigAttrib
001b3 3d 8e 30 00 00 cmp eax, 12430 ; 0000308eH
001b8 74 02 je SHORT $LN11@chooseEGLC
; 136 : continue;
001ba eb a0 jmp SHORT $LN2@chooseEGLC
$LN11@chooseEGLC:
; 137 :
; 138 : // Only consider window EGLConfigs
; 139 : if (!(getEGLConfigAttrib(n, EGL_SURFACE_TYPE) & EGL_WINDOW_BIT))
001bc ba 33 30 00 00 mov edx, 12339 ; 00003033H
001c1 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
001c8 e8 00 00 00 00 call getEGLConfigAttrib
001cd 83 e0 04 and eax, 4
001d0 85 c0 test eax, eax
001d2 75 02 jne SHORT $LN12@chooseEGLC
; 140 : continue;
001d4 eb 86 jmp SHORT $LN2@chooseEGLC
$LN12@chooseEGLC:
; 141 :
; 142 : #if defined(_GLFW_X11)
; 143 : if (_glfw.platform.platformID == GLFW_PLATFORM_X11)
; 144 : {
; 145 : XVisualInfo vi = { 0 };
; 146 :
; 147 : // Only consider EGLConfigs with associated Visuals
; 148 : vi.visualid = getEGLConfigAttrib(n, EGL_NATIVE_VISUAL_ID);
; 149 : if (!vi.visualid)
; 150 : continue;
; 151 :
; 152 : if (fbconfig->transparent)
; 153 : {
; 154 : int count;
; 155 : XVisualInfo* vis =
; 156 : XGetVisualInfo(_glfw.x11.display, VisualIDMask, &vi, &count);
; 157 : if (vis)
; 158 : {
; 159 : u->transparent = _glfwIsVisualTransparentX11(vis[0].visual);
; 160 : XFree(vis);
; 161 : }
; 162 : }
; 163 : }
; 164 : #endif // _GLFW_X11
; 165 :
; 166 : if (!(getEGLConfigAttrib(n, EGL_RENDERABLE_TYPE) & apiBit))
001d6 ba 40 30 00 00 mov edx, 12352 ; 00003040H
001db 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
001e2 e8 00 00 00 00 call getEGLConfigAttrib
001e7 23 85 c4 00 00
00 and eax, DWORD PTR apiBit$[rbp]
001ed 85 c0 test eax, eax
001ef 75 0f jne SHORT $LN13@chooseEGLC
; 167 : {
; 168 : wrongApiAvailable = GLFW_TRUE;
001f1 c7 85 e4 00 00
00 01 00 00 00 mov DWORD PTR wrongApiAvailable$[rbp], 1
; 169 : continue;
001fb e9 5c ff ff ff jmp $LN2@chooseEGLC
$LN13@chooseEGLC:
; 170 : }
; 171 :
; 172 : u->redBits = getEGLConfigAttrib(n, EGL_RED_SIZE);
00200 ba 24 30 00 00 mov edx, 12324 ; 00003024H
00205 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
0020c e8 00 00 00 00 call getEGLConfigAttrib
00211 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
00218 89 01 mov DWORD PTR [rcx], eax
; 173 : u->greenBits = getEGLConfigAttrib(n, EGL_GREEN_SIZE);
0021a ba 23 30 00 00 mov edx, 12323 ; 00003023H
0021f 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
00226 e8 00 00 00 00 call getEGLConfigAttrib
0022b 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
00232 89 41 04 mov DWORD PTR [rcx+4], eax
; 174 : u->blueBits = getEGLConfigAttrib(n, EGL_BLUE_SIZE);
00235 ba 22 30 00 00 mov edx, 12322 ; 00003022H
0023a 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
00241 e8 00 00 00 00 call getEGLConfigAttrib
00246 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
0024d 89 41 08 mov DWORD PTR [rcx+8], eax
; 175 :
; 176 : u->alphaBits = getEGLConfigAttrib(n, EGL_ALPHA_SIZE);
00250 ba 21 30 00 00 mov edx, 12321 ; 00003021H
00255 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
0025c e8 00 00 00 00 call getEGLConfigAttrib
00261 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
00268 89 41 0c mov DWORD PTR [rcx+12], eax
; 177 : u->depthBits = getEGLConfigAttrib(n, EGL_DEPTH_SIZE);
0026b ba 25 30 00 00 mov edx, 12325 ; 00003025H
00270 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
00277 e8 00 00 00 00 call getEGLConfigAttrib
0027c 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
00283 89 41 10 mov DWORD PTR [rcx+16], eax
; 178 : u->stencilBits = getEGLConfigAttrib(n, EGL_STENCIL_SIZE);
00286 ba 26 30 00 00 mov edx, 12326 ; 00003026H
0028b 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
00292 e8 00 00 00 00 call getEGLConfigAttrib
00297 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
0029e 89 41 14 mov DWORD PTR [rcx+20], eax
; 179 :
; 180 : #if defined(_GLFW_WAYLAND)
; 181 : if (_glfw.platform.platformID == GLFW_PLATFORM_WAYLAND)
; 182 : {
; 183 : // NOTE: The wl_surface opaque region is no guarantee that its buffer
; 184 : // is presented as opaque, if it also has an alpha channel
; 185 : // HACK: If EGL_EXT_present_opaque is unavailable, ignore any config
; 186 : // with an alpha channel to ensure the buffer is opaque
; 187 : if (!_glfw.egl.EXT_present_opaque)
; 188 : {
; 189 : if (!fbconfig->transparent && u->alphaBits > 0)
; 190 : continue;
; 191 : }
; 192 : }
; 193 : #endif // _GLFW_WAYLAND
; 194 :
; 195 : u->samples = getEGLConfigAttrib(n, EGL_SAMPLES);
002a1 ba 31 30 00 00 mov edx, 12337 ; 00003031H
002a6 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
002ad e8 00 00 00 00 call getEGLConfigAttrib
002b2 48 8b 8d 28 01
00 00 mov rcx, QWORD PTR u$5[rbp]
002b9 89 41 30 mov DWORD PTR [rcx+48], eax
; 196 : u->doublebuffer = fbconfig->doublebuffer;
002bc 48 8b 85 28 01
00 00 mov rax, QWORD PTR u$5[rbp]
002c3 48 8b 8d 28 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
002ca 8b 49 38 mov ecx, DWORD PTR [rcx+56]
002cd 89 48 38 mov DWORD PTR [rax+56], ecx
; 197 :
; 198 : u->handle = (uintptr_t)n;
002d0 48 8b 85 28 01
00 00 mov rax, QWORD PTR u$5[rbp]
002d7 48 8b 8d 08 01
00 00 mov rcx, QWORD PTR n$4[rbp]
002de 48 89 48 40 mov QWORD PTR [rax+64], rcx
; 199 : usableCount++;
002e2 8b 85 a4 00 00
00 mov eax, DWORD PTR usableCount$[rbp]
002e8 ff c0 inc eax
002ea 89 85 a4 00 00
00 mov DWORD PTR usableCount$[rbp], eax
; 200 : }
002f0 e9 67 fe ff ff jmp $LN2@chooseEGLC
$LN3@chooseEGLC:
; 201 :
; 202 : closest = _glfwChooseFBConfig(fbconfig, usableConfigs, usableCount);
002f5 44 8b 85 a4 00
00 00 mov r8d, DWORD PTR usableCount$[rbp]
002fc 48 8b 55 28 mov rdx, QWORD PTR usableConfigs$[rbp]
00300 48 8b 8d 28 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
00307 e8 00 00 00 00 call _glfwChooseFBConfig
0030c 48 89 45 48 mov QWORD PTR closest$[rbp], rax
; 203 : if (closest)
00310 48 83 7d 48 00 cmp QWORD PTR closest$[rbp], 0
00315 74 14 je SHORT $LN14@chooseEGLC
; 204 : *result = (EGLConfig)closest->handle;
00317 48 8b 85 30 02
00 00 mov rax, QWORD PTR result$[rbp]
0031e 48 8b 4d 48 mov rcx, QWORD PTR closest$[rbp]
00322 48 8b 49 40 mov rcx, QWORD PTR [rcx+64]
00326 48 89 08 mov QWORD PTR [rax], rcx
00329 eb 6f jmp SHORT $LN15@chooseEGLC
$LN14@chooseEGLC:
; 205 : else
; 206 : {
; 207 : if (wrongApiAvailable)
0032b 83 bd e4 00 00
00 00 cmp DWORD PTR wrongApiAvailable$[rbp], 0
00332 74 55 je SHORT $LN16@chooseEGLC
; 208 : {
; 209 : if (ctxconfig->client == GLFW_OPENGL_ES_API)
00334 48 8b 85 20 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0033b 81 38 02 00 03
00 cmp DWORD PTR [rax], 196610 ; 00030002H
00341 75 33 jne SHORT $LN18@chooseEGLC
; 210 : {
; 211 : if (ctxconfig->major == 1)
00343 48 8b 85 20 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0034a 83 78 08 01 cmp DWORD PTR [rax+8], 1
0034e 75 13 jne SHORT $LN20@chooseEGLC
; 212 : {
; 213 : _glfwInputError(GLFW_API_UNAVAILABLE,
00350 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CO@HAIMLOLL@EGL?3?5Failed?5to?5find?5support?5for@
00357 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
0035c e8 00 00 00 00 call _glfwInputError
; 214 : "EGL: Failed to find support for OpenGL ES 1.x");
; 215 : }
00361 eb 11 jmp SHORT $LN21@chooseEGLC
$LN20@chooseEGLC:
; 216 : else
; 217 : {
; 218 : _glfwInputError(GLFW_API_UNAVAILABLE,
00363 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DF@BPPFPGID@EGL?3?5Failed?5to?5find?5support?5for@
0036a b9 06 00 01 00 mov ecx, 65542 ; 00010006H
0036f e8 00 00 00 00 call _glfwInputError
$LN21@chooseEGLC:
; 219 : "EGL: Failed to find support for OpenGL ES 2 or later");
; 220 : }
; 221 : }
00374 eb 11 jmp SHORT $LN19@chooseEGLC
$LN18@chooseEGLC:
; 222 : else
; 223 : {
; 224 : _glfwInputError(GLFW_API_UNAVAILABLE,
00376 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CH@EMJGILEP@EGL?3?5Failed?5to?5find?5support?5for@
0037d b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00382 e8 00 00 00 00 call _glfwInputError
$LN19@chooseEGLC:
; 225 : "EGL: Failed to find support for OpenGL");
; 226 : }
; 227 : }
00387 eb 11 jmp SHORT $LN17@chooseEGLC
$LN16@chooseEGLC:
; 228 : else
; 229 : {
; 230 : _glfwInputError(GLFW_FORMAT_UNAVAILABLE,
00389 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@JPDPLHCM@EGL?3?5Failed?5to?5find?5a?5suitable?5@
00390 b9 09 00 01 00 mov ecx, 65545 ; 00010009H
00395 e8 00 00 00 00 call _glfwInputError
$LN17@chooseEGLC:
$LN15@chooseEGLC:
; 231 : "EGL: Failed to find a suitable EGLConfig");
; 232 : }
; 233 : }
; 234 :
; 235 : _glfw_free(nativeConfigs);
0039a 48 8b 4d 08 mov rcx, QWORD PTR nativeConfigs$[rbp]
0039e e8 00 00 00 00 call _glfw_free
; 236 : _glfw_free(usableConfigs);
003a3 48 8b 4d 28 mov rcx, QWORD PTR usableConfigs$[rbp]
003a7 e8 00 00 00 00 call _glfw_free
; 237 :
; 238 : return closest != NULL;
003ac 48 83 7d 48 00 cmp QWORD PTR closest$[rbp], 0
003b1 74 0c je SHORT $LN23@chooseEGLC
003b3 c7 85 f4 01 00
00 01 00 00 00 mov DWORD PTR tv199[rbp], 1
003bd eb 0a jmp SHORT $LN24@chooseEGLC
$LN23@chooseEGLC:
003bf c7 85 f4 01 00
00 00 00 00 00 mov DWORD PTR tv199[rbp], 0
$LN24@chooseEGLC:
003c9 8b 85 f4 01 00
00 mov eax, DWORD PTR tv199[rbp]
$LN1@chooseEGLC:
; 239 : }
003cf 48 8b f8 mov rdi, rax
003d2 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
003d6 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:chooseEGLConfig$rtcFrameData
003dd e8 00 00 00 00 call _RTC_CheckStackVars
003e2 48 8b c7 mov rax, rdi
003e5 48 8b 8d f8 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
003ec 48 33 cd xor rcx, rbp
003ef e8 00 00 00 00 call __security_check_cookie
003f4 48 8d a5 08 02
00 00 lea rsp, QWORD PTR [rbp+520]
003fb 5f pop rdi
003fc 5d pop rbp
003fd c3 ret 0
chooseEGLConfig ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT getEGLConfigAttrib
_TEXT SEGMENT
value$ = 4
__$ArrayPad$ = 216
config$ = 256
attrib$ = 264
getEGLConfigAttrib PROC ; COMDAT
; 82 : {
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00009 55 push rbp
0000a 57 push rdi
0000b 48 81 ec 08 01
00 00 sub rsp, 264 ; 00000108H
00012 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00017 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
0001c b9 0a 00 00 00 mov ecx, 10
00021 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00026 f3 ab rep stosd
00028 48 8b 8c 24 28
01 00 00 mov rcx, QWORD PTR [rsp+296]
00030 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00037 48 33 c5 xor rax, rbp
0003a 48 89 85 d8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00041 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 83 : int value;
; 84 : eglGetConfigAttrib(_glfw.egl.display, config, attrib, &value);
0004d 4c 8d 4d 04 lea r9, QWORD PTR value$[rbp]
00051 44 8b 85 08 01
00 00 mov r8d, DWORD PTR attrib$[rbp]
00058 48 8b 95 00 01
00 00 mov rdx, QWORD PTR config$[rbp]
0005f 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
00066 ff 15 50 1a 00
00 call QWORD PTR _glfw+6736
; 85 : return value;
0006c 8b 45 04 mov eax, DWORD PTR value$[rbp]
; 86 : }
0006f 8b f8 mov edi, eax
00071 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
00075 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:getEGLConfigAttrib$rtcFrameData
0007c e8 00 00 00 00 call _RTC_CheckStackVars
00081 8b c7 mov eax, edi
00083 48 8b 8d d8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0008a 48 33 cd xor rcx, rbp
0008d e8 00 00 00 00 call __security_check_cookie
00092 48 8d a5 e8 00
00 00 lea rsp, QWORD PTR [rbp+232]
00099 5f pop rdi
0009a 5d pop rbp
0009b c3 ret 0
getEGLConfigAttrib ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT getEGLErrorString
_TEXT SEGMENT
tv64 = 192
error$ = 240
getEGLErrorString PROC ; COMDAT
; 41 : {
00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
00004 55 push rbp
00005 57 push rdi
00006 48 81 ec f8 00
00 00 sub rsp, 248 ; 000000f8H
0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
00012 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 42 : switch (error)
0001e 8b 85 f0 00 00
00 mov eax, DWORD PTR error$[rbp]
00024 89 85 c0 00 00
00 mov DWORD PTR tv64[rbp], eax
0002a 8b 85 c0 00 00
00 mov eax, DWORD PTR tv64[rbp]
00030 2d 00 30 00 00 sub eax, 12288 ; 00003000H
00035 89 85 c0 00 00
00 mov DWORD PTR tv64[rbp], eax
0003b 83 bd c0 00 00
00 0e cmp DWORD PTR tv64[rbp], 14
00042 0f 87 a4 00 00
00 ja $LN19@getEGLErro
00048 48 63 85 c0 00
00 00 movsxd rax, DWORD PTR tv64[rbp]
0004f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__ImageBase
00056 8b 84 81 00 00
00 00 mov eax, DWORD PTR $LN21@getEGLErro[rcx+rax*4]
0005d 48 03 c1 add rax, rcx
00060 ff e0 jmp rax
$LN4@getEGLErro:
; 43 : {
; 44 : case EGL_SUCCESS:
; 45 : return "Success";
00062 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_07PBILKAFL@Success@
00069 e9 85 00 00 00 jmp $LN1@getEGLErro
$LN5@getEGLErro:
; 46 : case EGL_NOT_INITIALIZED:
; 47 : return "EGL is not or could not be initialized";
0006e 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CH@KLCPDMM@EGL?5is?5not?5or?5could?5not?5be?5init@
00075 eb 7c jmp SHORT $LN1@getEGLErro
$LN6@getEGLErro:
; 48 : case EGL_BAD_ACCESS:
; 49 : return "EGL cannot access a requested resource";
00077 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CH@MMCOKIKC@EGL?5cannot?5access?5a?5requested?5r@
0007e eb 73 jmp SHORT $LN1@getEGLErro
$LN7@getEGLErro:
; 50 : case EGL_BAD_ALLOC:
; 51 : return "EGL failed to allocate resources for the requested operation";
00080 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0DN@GNDEENDO@EGL?5failed?5to?5allocate?5resource@
00087 eb 6a jmp SHORT $LN1@getEGLErro
$LN8@getEGLErro:
; 52 : case EGL_BAD_ATTRIBUTE:
; 53 : return "An unrecognized attribute or attribute value was passed in the attribute list";
00089 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0EO@EKFIJHGG@An?5unrecognized?5attribute?5or?5at@
00090 eb 61 jmp SHORT $LN1@getEGLErro
$LN9@getEGLErro:
; 54 : case EGL_BAD_CONTEXT:
; 55 : return "An EGLContext argument does not name a valid EGL rendering context";
00092 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0ED@GAJEHCGA@An?5EGLContext?5argument?5does?5not@
00099 eb 58 jmp SHORT $LN1@getEGLErro
$LN10@getEGLErro:
; 56 : case EGL_BAD_CONFIG:
; 57 : return "An EGLConfig argument does not name a valid EGL frame buffer configuration";
0009b 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0EL@BBAGGFOK@An?5EGLConfig?5argument?5does?5not?5@
000a2 eb 4f jmp SHORT $LN1@getEGLErro
$LN11@getEGLErro:
; 58 : case EGL_BAD_CURRENT_SURFACE:
; 59 : return "The current surface of the calling thread is a window, pixel buffer or pixmap that is no longer valid";
000a4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0GG@ODICGIHF@The?5current?5surface?5of?5the?5call@
000ab eb 46 jmp SHORT $LN1@getEGLErro
$LN12@getEGLErro:
; 60 : case EGL_BAD_DISPLAY:
; 61 : return "An EGLDisplay argument does not name a valid EGL display connection";
000ad 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0EE@ICKHNPHB@An?5EGLDisplay?5argument?5does?5not@
000b4 eb 3d jmp SHORT $LN1@getEGLErro
$LN13@getEGLErro:
; 62 : case EGL_BAD_SURFACE:
; 63 : return "An EGLSurface argument does not name a valid surface configured for GL rendering";
000b6 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0FB@EPGEGHDL@An?5EGLSurface?5argument?5does?5not@
000bd eb 34 jmp SHORT $LN1@getEGLErro
$LN14@getEGLErro:
; 64 : case EGL_BAD_MATCH:
; 65 : return "Arguments are inconsistent";
000bf 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0BL@OIILILNJ@Arguments?5are?5inconsistent@
000c6 eb 2b jmp SHORT $LN1@getEGLErro
$LN15@getEGLErro:
; 66 : case EGL_BAD_PARAMETER:
; 67 : return "One or more argument values are invalid";
000c8 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CI@KAHNKLLC@One?5or?5more?5argument?5values?5are@
000cf eb 22 jmp SHORT $LN1@getEGLErro
$LN16@getEGLErro:
; 68 : case EGL_BAD_NATIVE_PIXMAP:
; 69 : return "A NativePixmapType argument does not refer to a valid native pixmap";
000d1 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0EE@NKCAIGPH@A?5NativePixmapType?5argument?5doe@
000d8 eb 19 jmp SHORT $LN1@getEGLErro
$LN17@getEGLErro:
; 70 : case EGL_BAD_NATIVE_WINDOW:
; 71 : return "A NativeWindowType argument does not refer to a valid native window";
000da 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0EE@FBMMOIJB@A?5NativeWindowType?5argument?5doe@
000e1 eb 10 jmp SHORT $LN1@getEGLErro
$LN18@getEGLErro:
; 72 : case EGL_CONTEXT_LOST:
; 73 : return "The application must destroy all contexts and reinitialise";
000e3 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0DL@GNLICFMC@The?5application?5must?5destroy?5al@
000ea eb 07 jmp SHORT $LN1@getEGLErro
$LN19@getEGLErro:
; 74 : default:
; 75 : return "ERROR: UNKNOWN EGL ERROR";
000ec 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0BJ@KDFAHDEK@ERROR?3?5UNKNOWN?5EGL?5ERROR@
$LN1@getEGLErro:
; 76 : }
; 77 : }
000f3 48 8d a5 d8 00
00 00 lea rsp, QWORD PTR [rbp+216]
000fa 5f pop rdi
000fb 5d pop rbp
000fc c3 ret 0
000fd 0f 1f 00 npad 3
$LN21@getEGLErro:
00100 00 00 00 00 DD $LN4@getEGLErro
00104 00 00 00 00 DD $LN5@getEGLErro
00108 00 00 00 00 DD $LN6@getEGLErro
0010c 00 00 00 00 DD $LN7@getEGLErro
00110 00 00 00 00 DD $LN8@getEGLErro
00114 00 00 00 00 DD $LN10@getEGLErro
00118 00 00 00 00 DD $LN9@getEGLErro
0011c 00 00 00 00 DD $LN11@getEGLErro
00120 00 00 00 00 DD $LN12@getEGLErro
00124 00 00 00 00 DD $LN14@getEGLErro
00128 00 00 00 00 DD $LN16@getEGLErro
0012c 00 00 00 00 DD $LN17@getEGLErro
00130 00 00 00 00 DD $LN15@getEGLErro
00134 00 00 00 00 DD $LN13@getEGLErro
00138 00 00 00 00 DD $LN18@getEGLErro
getEGLErrorString ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT _glfwCreateContextEGL
_TEXT SEGMENT
attribs$ = 16
config$ = 200
share$ = 232
native$ = 264
index$ = 292
mask$8 = 324
flags$9 = 356
i$10 = 388
sonames$11 = 424
es1sonames$12 = 456
es2sonames$13 = 504
glsonames$14 = 552
tv492 = 948
tv401 = 948
__$ArrayPad$ = 952
window$ = 992
ctxconfig$ = 1000
fbconfig$ = 1008
_glfwCreateContextEGL PROC ; COMDAT
; 569 : {
$LN71:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec e8 03
00 00 sub rsp, 1000 ; 000003e8H
00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
0001d 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
00022 b9 92 00 00 00 mov ecx, 146 ; 00000092H
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002c f3 ab rep stosd
0002e 48 8b 8c 24 08
04 00 00 mov rcx, QWORD PTR [rsp+1032]
00036 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 b8 03
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00047 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 570 : EGLint attribs[40];
; 571 : EGLConfig config;
; 572 : EGLContext share = NULL;
00053 48 c7 85 e8 00
00 00 00 00 00
00 mov QWORD PTR share$[rbp], 0
; 573 : EGLNativeWindowType native;
; 574 : int index = 0;
0005e c7 85 24 01 00
00 00 00 00 00 mov DWORD PTR index$[rbp], 0
; 575 :
; 576 : if (!_glfw.egl.display)
00068 48 83 3d f8 19
00 00 00 cmp QWORD PTR _glfw+6648, 0
00070 75 18 jne SHORT $LN5@glfwCreate
; 577 : {
; 578 : _glfwInputError(GLFW_API_UNAVAILABLE, "EGL: API not available");
00072 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BH@PDIOJKKP@EGL?3?5API?5not?5available@
00079 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
0007e e8 00 00 00 00 call _glfwInputError
; 579 : return GLFW_FALSE;
00083 33 c0 xor eax, eax
00085 e9 fe 0b 00 00 jmp $LN1@glfwCreate
$LN5@glfwCreate:
; 580 : }
; 581 :
; 582 : if (ctxconfig->share)
0008a 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00091 48 83 78 28 00 cmp QWORD PTR [rax+40], 0
00096 74 19 je SHORT $LN6@glfwCreate
; 583 : share = ctxconfig->share->context.egl.handle;
00098 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0009f 48 8b 40 28 mov rax, QWORD PTR [rax+40]
000a3 48 8b 80 88 02
00 00 mov rax, QWORD PTR [rax+648]
000aa 48 89 85 e8 00
00 00 mov QWORD PTR share$[rbp], rax
$LN6@glfwCreate:
; 584 :
; 585 : if (!chooseEGLConfig(ctxconfig, fbconfig, &config))
000b1 4c 8d 85 c8 00
00 00 lea r8, QWORD PTR config$[rbp]
000b8 48 8b 95 f0 03
00 00 mov rdx, QWORD PTR fbconfig$[rbp]
000bf 48 8b 8d e8 03
00 00 mov rcx, QWORD PTR ctxconfig$[rbp]
000c6 e8 00 00 00 00 call chooseEGLConfig
000cb 85 c0 test eax, eax
000cd 75 07 jne SHORT $LN7@glfwCreate
; 586 : return GLFW_FALSE;
000cf 33 c0 xor eax, eax
000d1 e9 b2 0b 00 00 jmp $LN1@glfwCreate
$LN7@glfwCreate:
; 587 :
; 588 : if (ctxconfig->client == GLFW_OPENGL_ES_API)
000d6 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
000dd 81 38 02 00 03
00 cmp DWORD PTR [rax], 196610 ; 00030002H
000e3 75 39 jne SHORT $LN8@glfwCreate
; 589 : {
; 590 : if (!eglBindAPI(EGL_OPENGL_ES_API))
000e5 b9 a0 30 00 00 mov ecx, 12448 ; 000030a0H
000ea ff 15 80 1a 00
00 call QWORD PTR _glfw+6784
000f0 85 c0 test eax, eax
000f2 75 28 jne SHORT $LN10@glfwCreate
; 591 : {
; 592 : _glfwInputError(GLFW_API_UNAVAILABLE,
000f4 ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
000fa 8b c8 mov ecx, eax
000fc e8 00 00 00 00 call getEGLErrorString
00101 4c 8b c0 mov r8, rax
00104 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CC@NIBJMOI@EGL?3?5Failed?5to?5bind?5OpenGL?5ES?3?5@
0010b b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00110 e8 00 00 00 00 call _glfwInputError
; 593 : "EGL: Failed to bind OpenGL ES: %s",
; 594 : getEGLErrorString(eglGetError()));
; 595 : return GLFW_FALSE;
00115 33 c0 xor eax, eax
00117 e9 6c 0b 00 00 jmp $LN1@glfwCreate
$LN10@glfwCreate:
; 596 : }
; 597 : }
0011c eb 37 jmp SHORT $LN9@glfwCreate
$LN8@glfwCreate:
; 598 : else
; 599 : {
; 600 : if (!eglBindAPI(EGL_OPENGL_API))
0011e b9 a2 30 00 00 mov ecx, 12450 ; 000030a2H
00123 ff 15 80 1a 00
00 call QWORD PTR _glfw+6784
00129 85 c0 test eax, eax
0012b 75 28 jne SHORT $LN11@glfwCreate
; 601 : {
; 602 : _glfwInputError(GLFW_API_UNAVAILABLE,
0012d ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
00133 8b c8 mov ecx, eax
00135 e8 00 00 00 00 call getEGLErrorString
0013a 4c 8b c0 mov r8, rax
0013d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BP@PHOHHIJJ@EGL?3?5Failed?5to?5bind?5OpenGL?3?5?$CFs@
00144 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00149 e8 00 00 00 00 call _glfwInputError
; 603 : "EGL: Failed to bind OpenGL: %s",
; 604 : getEGLErrorString(eglGetError()));
; 605 : return GLFW_FALSE;
0014e 33 c0 xor eax, eax
00150 e9 33 0b 00 00 jmp $LN1@glfwCreate
$LN11@glfwCreate:
$LN9@glfwCreate:
; 606 : }
; 607 : }
; 608 :
; 609 : if (_glfw.egl.KHR_create_context)
00155 83 3d 0c 1a 00
00 00 cmp DWORD PTR _glfw+6668, 0
0015c 0f 84 ff 03 00
00 je $LN12@glfwCreate
; 610 : {
; 611 : int mask = 0, flags = 0;
00162 c7 85 44 01 00
00 00 00 00 00 mov DWORD PTR mask$8[rbp], 0
0016c c7 85 64 01 00
00 00 00 00 00 mov DWORD PTR flags$9[rbp], 0
; 612 :
; 613 : if (ctxconfig->client == GLFW_OPENGL_API)
00176 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0017d 81 38 01 00 03
00 cmp DWORD PTR [rax], 196609 ; 00030001H
00183 75 5c jne SHORT $LN14@glfwCreate
; 614 : {
; 615 : if (ctxconfig->forward)
00185 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0018c 83 78 10 00 cmp DWORD PTR [rax+16], 0
00190 74 0f je SHORT $LN15@glfwCreate
; 616 : flags |= EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR;
00192 8b 85 64 01 00
00 mov eax, DWORD PTR flags$9[rbp]
00198 83 c8 02 or eax, 2
0019b 89 85 64 01 00
00 mov DWORD PTR flags$9[rbp], eax
$LN15@glfwCreate:
; 617 :
; 618 : if (ctxconfig->profile == GLFW_OPENGL_CORE_PROFILE)
001a1 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
001a8 81 78 1c 01 20
03 00 cmp DWORD PTR [rax+28], 204801 ; 00032001H
001af 75 11 jne SHORT $LN16@glfwCreate
; 619 : mask |= EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR;
001b1 8b 85 44 01 00
00 mov eax, DWORD PTR mask$8[rbp]
001b7 83 c8 01 or eax, 1
001ba 89 85 44 01 00
00 mov DWORD PTR mask$8[rbp], eax
001c0 eb 1f jmp SHORT $LN17@glfwCreate
$LN16@glfwCreate:
; 620 : else if (ctxconfig->profile == GLFW_OPENGL_COMPAT_PROFILE)
001c2 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
001c9 81 78 1c 02 20
03 00 cmp DWORD PTR [rax+28], 204802 ; 00032002H
001d0 75 0f jne SHORT $LN18@glfwCreate
; 621 : mask |= EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR;
001d2 8b 85 44 01 00
00 mov eax, DWORD PTR mask$8[rbp]
001d8 83 c8 02 or eax, 2
001db 89 85 44 01 00
00 mov DWORD PTR mask$8[rbp], eax
$LN18@glfwCreate:
$LN17@glfwCreate:
$LN14@glfwCreate:
; 622 : }
; 623 :
; 624 : if (ctxconfig->debug)
001e1 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
001e8 83 78 14 00 cmp DWORD PTR [rax+20], 0
001ec 74 0f je SHORT $LN19@glfwCreate
; 625 : flags |= EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR;
001ee 8b 85 64 01 00
00 mov eax, DWORD PTR flags$9[rbp]
001f4 83 c8 01 or eax, 1
001f7 89 85 64 01 00
00 mov DWORD PTR flags$9[rbp], eax
$LN19@glfwCreate:
; 626 :
; 627 : if (ctxconfig->robustness)
001fd 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00204 83 78 20 00 cmp DWORD PTR [rax+32], 0
00208 0f 84 fd 00 00
00 je $LN20@glfwCreate
; 628 : {
; 629 : if (ctxconfig->robustness == GLFW_NO_RESET_NOTIFICATION)
0020e 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00215 81 78 20 01 10
03 00 cmp DWORD PTR [rax+32], 200705 ; 00031001H
0021c 75 68 jne SHORT $LN21@glfwCreate
; 630 : {
; 631 : SET_ATTRIB(EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR,
0021e 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00225 48 ff c0 inc rax
00228 48 83 f8 28 cmp rax, 40 ; 00000028H
0022c 72 1c jb SHORT $LN52@glfwCreate
0022e 41 b8 78 02 00
00 mov r8d, 632 ; 00000278H
00234 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0023b 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
00242 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00248 33 c0 xor eax, eax
$LN52@glfwCreate:
0024a 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00251 c7 44 85 10 bd
31 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12733 ; 000031bdH
00259 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
0025f ff c0 inc eax
00261 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
00267 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0026e c7 44 85 10 be
31 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12734 ; 000031beH
00276 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
0027c ff c0 inc eax
0027e 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
; 632 : EGL_NO_RESET_NOTIFICATION_KHR);
; 633 : }
00284 eb 76 jmp SHORT $LN22@glfwCreate
$LN21@glfwCreate:
; 634 : else if (ctxconfig->robustness == GLFW_LOSE_CONTEXT_ON_RESET)
00286 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0028d 81 78 20 02 10
03 00 cmp DWORD PTR [rax+32], 200706 ; 00031002H
00294 75 66 jne SHORT $LN23@glfwCreate
; 635 : {
; 636 : SET_ATTRIB(EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR,
00296 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0029d 48 ff c0 inc rax
002a0 48 83 f8 28 cmp rax, 40 ; 00000028H
002a4 72 1c jb SHORT $LN53@glfwCreate
002a6 41 b8 7d 02 00
00 mov r8d, 637 ; 0000027dH
002ac 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
002b3 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
002ba ff 15 00 00 00
00 call QWORD PTR __imp__wassert
002c0 33 c0 xor eax, eax
$LN53@glfwCreate:
002c2 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
002c9 c7 44 85 10 bd
31 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12733 ; 000031bdH
002d1 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
002d7 ff c0 inc eax
002d9 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
002df 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
002e6 c7 44 85 10 bf
31 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12735 ; 000031bfH
002ee 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
002f4 ff c0 inc eax
002f6 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN23@glfwCreate:
$LN22@glfwCreate:
; 637 : EGL_LOSE_CONTEXT_ON_RESET_KHR);
; 638 : }
; 639 :
; 640 : flags |= EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR;
002fc 8b 85 64 01 00
00 mov eax, DWORD PTR flags$9[rbp]
00302 83 c8 04 or eax, 4
00305 89 85 64 01 00
00 mov DWORD PTR flags$9[rbp], eax
$LN20@glfwCreate:
; 641 : }
; 642 :
; 643 : if (ctxconfig->noerror)
0030b 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00312 83 78 18 00 cmp DWORD PTR [rax+24], 0
00316 74 6f je SHORT $LN24@glfwCreate
; 644 : {
; 645 : if (_glfw.egl.KHR_create_context_no_error)
00318 83 3d 10 1a 00
00 00 cmp DWORD PTR _glfw+6672, 0
0031f 74 66 je SHORT $LN25@glfwCreate
; 646 : SET_ATTRIB(EGL_CONTEXT_OPENGL_NO_ERROR_KHR, GLFW_TRUE);
00321 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00328 48 ff c0 inc rax
0032b 48 83 f8 28 cmp rax, 40 ; 00000028H
0032f 72 1c jb SHORT $LN54@glfwCreate
00331 41 b8 86 02 00
00 mov r8d, 646 ; 00000286H
00337 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0033e 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
00345 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0034b 33 c0 xor eax, eax
$LN54@glfwCreate:
0034d 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00354 c7 44 85 10 b3
31 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12723 ; 000031b3H
0035c 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00362 ff c0 inc eax
00364 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
0036a 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00371 c7 44 85 10 01
00 00 00 mov DWORD PTR attribs$[rbp+rax*4], 1
00379 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
0037f ff c0 inc eax
00381 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN25@glfwCreate:
$LN24@glfwCreate:
; 647 : }
; 648 :
; 649 : if (ctxconfig->major != 1 || ctxconfig->minor != 0)
00387 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0038e 83 78 08 01 cmp DWORD PTR [rax+8], 1
00392 75 11 jne SHORT $LN27@glfwCreate
00394 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0039b 83 78 0c 00 cmp DWORD PTR [rax+12], 0
0039f 0f 84 d8 00 00
00 je $LN26@glfwCreate
$LN27@glfwCreate:
; 650 : {
; 651 : SET_ATTRIB(EGL_CONTEXT_MAJOR_VERSION_KHR, ctxconfig->major);
003a5 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
003ac 48 ff c0 inc rax
003af 48 83 f8 28 cmp rax, 40 ; 00000028H
003b3 72 1c jb SHORT $LN55@glfwCreate
003b5 41 b8 8b 02 00
00 mov r8d, 651 ; 0000028bH
003bb 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
003c2 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
003c9 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
003cf 33 c0 xor eax, eax
$LN55@glfwCreate:
003d1 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
003d8 c7 44 85 10 98
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12440 ; 00003098H
003e0 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
003e6 ff c0 inc eax
003e8 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
003ee 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
003f5 48 8b 8d e8 03
00 00 mov rcx, QWORD PTR ctxconfig$[rbp]
003fc 8b 49 08 mov ecx, DWORD PTR [rcx+8]
003ff 89 4c 85 10 mov DWORD PTR attribs$[rbp+rax*4], ecx
00403 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00409 ff c0 inc eax
0040b 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
; 652 : SET_ATTRIB(EGL_CONTEXT_MINOR_VERSION_KHR, ctxconfig->minor);
00411 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00418 48 ff c0 inc rax
0041b 48 83 f8 28 cmp rax, 40 ; 00000028H
0041f 72 1c jb SHORT $LN56@glfwCreate
00421 41 b8 8c 02 00
00 mov r8d, 652 ; 0000028cH
00427 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0042e 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
00435 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0043b 33 c0 xor eax, eax
$LN56@glfwCreate:
0043d 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00444 c7 44 85 10 fb
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12539 ; 000030fbH
0044c 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00452 ff c0 inc eax
00454 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
0045a 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00461 48 8b 8d e8 03
00 00 mov rcx, QWORD PTR ctxconfig$[rbp]
00468 8b 49 0c mov ecx, DWORD PTR [rcx+12]
0046b 89 4c 85 10 mov DWORD PTR attribs$[rbp+rax*4], ecx
0046f 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00475 ff c0 inc eax
00477 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN26@glfwCreate:
; 653 : }
; 654 :
; 655 : if (mask)
0047d 83 bd 44 01 00
00 00 cmp DWORD PTR mask$8[rbp], 0
00484 74 68 je SHORT $LN28@glfwCreate
; 656 : SET_ATTRIB(EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR, mask);
00486 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0048d 48 ff c0 inc rax
00490 48 83 f8 28 cmp rax, 40 ; 00000028H
00494 72 1c jb SHORT $LN57@glfwCreate
00496 41 b8 90 02 00
00 mov r8d, 656 ; 00000290H
0049c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
004a3 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
004aa ff 15 00 00 00
00 call QWORD PTR __imp__wassert
004b0 33 c0 xor eax, eax
$LN57@glfwCreate:
004b2 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
004b9 c7 44 85 10 fd
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12541 ; 000030fdH
004c1 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
004c7 ff c0 inc eax
004c9 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
004cf 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
004d6 8b 8d 44 01 00
00 mov ecx, DWORD PTR mask$8[rbp]
004dc 89 4c 85 10 mov DWORD PTR attribs$[rbp+rax*4], ecx
004e0 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
004e6 ff c0 inc eax
004e8 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN28@glfwCreate:
; 657 :
; 658 : if (flags)
004ee 83 bd 64 01 00
00 00 cmp DWORD PTR flags$9[rbp], 0
004f5 74 68 je SHORT $LN29@glfwCreate
; 659 : SET_ATTRIB(EGL_CONTEXT_FLAGS_KHR, flags);
004f7 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
004fe 48 ff c0 inc rax
00501 48 83 f8 28 cmp rax, 40 ; 00000028H
00505 72 1c jb SHORT $LN58@glfwCreate
00507 41 b8 93 02 00
00 mov r8d, 659 ; 00000293H
0050d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00514 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
0051b ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00521 33 c0 xor eax, eax
$LN58@glfwCreate:
00523 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0052a c7 44 85 10 fc
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12540 ; 000030fcH
00532 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00538 ff c0 inc eax
0053a 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
00540 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00547 8b 8d 64 01 00
00 mov ecx, DWORD PTR flags$9[rbp]
0054d 89 4c 85 10 mov DWORD PTR attribs$[rbp+rax*4], ecx
00551 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00557 ff c0 inc eax
00559 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN29@glfwCreate:
; 660 : }
0055f eb 7b jmp SHORT $LN13@glfwCreate
$LN12@glfwCreate:
; 661 : else
; 662 : {
; 663 : if (ctxconfig->client == GLFW_OPENGL_ES_API)
00561 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00568 81 38 02 00 03
00 cmp DWORD PTR [rax], 196610 ; 00030002H
0056e 75 6c jne SHORT $LN30@glfwCreate
; 664 : SET_ATTRIB(EGL_CONTEXT_CLIENT_VERSION, ctxconfig->major);
00570 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00577 48 ff c0 inc rax
0057a 48 83 f8 28 cmp rax, 40 ; 00000028H
0057e 72 1c jb SHORT $LN59@glfwCreate
00580 41 b8 98 02 00
00 mov r8d, 664 ; 00000298H
00586 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0058d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
00594 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0059a 33 c0 xor eax, eax
$LN59@glfwCreate:
0059c 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
005a3 c7 44 85 10 98
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12440 ; 00003098H
005ab 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
005b1 ff c0 inc eax
005b3 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
005b9 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
005c0 48 8b 8d e8 03
00 00 mov rcx, QWORD PTR ctxconfig$[rbp]
005c7 8b 49 08 mov ecx, DWORD PTR [rcx+8]
005ca 89 4c 85 10 mov DWORD PTR attribs$[rbp+rax*4], ecx
005ce 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
005d4 ff c0 inc eax
005d6 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN30@glfwCreate:
$LN13@glfwCreate:
; 665 : }
; 666 :
; 667 : if (_glfw.egl.KHR_context_flush_control)
005dc 83 3d 1c 1a 00
00 00 cmp DWORD PTR _glfw+6684, 0
005e3 0f 84 ee 00 00
00 je $LN31@glfwCreate
; 668 : {
; 669 : if (ctxconfig->release == GLFW_RELEASE_BEHAVIOR_NONE)
005e9 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
005f0 81 78 24 02 50
03 00 cmp DWORD PTR [rax+36], 217090 ; 00035002H
005f7 75 68 jne SHORT $LN32@glfwCreate
; 670 : {
; 671 : SET_ATTRIB(EGL_CONTEXT_RELEASE_BEHAVIOR_KHR,
005f9 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00600 48 ff c0 inc rax
00603 48 83 f8 28 cmp rax, 40 ; 00000028H
00607 72 1c jb SHORT $LN60@glfwCreate
00609 41 b8 a0 02 00
00 mov r8d, 672 ; 000002a0H
0060f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00616 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
0061d ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00623 33 c0 xor eax, eax
$LN60@glfwCreate:
00625 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0062c c7 44 85 10 97
20 00 00 mov DWORD PTR attribs$[rbp+rax*4], 8343 ; 00002097H
00634 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
0063a ff c0 inc eax
0063c 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
00642 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00649 c7 44 85 10 00
00 00 00 mov DWORD PTR attribs$[rbp+rax*4], 0
00651 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00657 ff c0 inc eax
00659 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
; 672 : EGL_CONTEXT_RELEASE_BEHAVIOR_NONE_KHR);
; 673 : }
0065f eb 76 jmp SHORT $LN33@glfwCreate
$LN32@glfwCreate:
; 674 : else if (ctxconfig->release == GLFW_RELEASE_BEHAVIOR_FLUSH)
00661 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00668 81 78 24 01 50
03 00 cmp DWORD PTR [rax+36], 217089 ; 00035001H
0066f 75 66 jne SHORT $LN34@glfwCreate
; 675 : {
; 676 : SET_ATTRIB(EGL_CONTEXT_RELEASE_BEHAVIOR_KHR,
00671 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00678 48 ff c0 inc rax
0067b 48 83 f8 28 cmp rax, 40 ; 00000028H
0067f 72 1c jb SHORT $LN61@glfwCreate
00681 41 b8 a5 02 00
00 mov r8d, 677 ; 000002a5H
00687 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0068e 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
00695 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0069b 33 c0 xor eax, eax
$LN61@glfwCreate:
0069d 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
006a4 c7 44 85 10 97
20 00 00 mov DWORD PTR attribs$[rbp+rax*4], 8343 ; 00002097H
006ac 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
006b2 ff c0 inc eax
006b4 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
006ba 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
006c1 c7 44 85 10 98
20 00 00 mov DWORD PTR attribs$[rbp+rax*4], 8344 ; 00002098H
006c9 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
006cf ff c0 inc eax
006d1 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN34@glfwCreate:
$LN33@glfwCreate:
$LN31@glfwCreate:
; 677 : EGL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR);
; 678 : }
; 679 : }
; 680 :
; 681 : SET_ATTRIB(EGL_NONE, EGL_NONE);
006d7 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
006de 48 ff c0 inc rax
006e1 48 83 f8 28 cmp rax, 40 ; 00000028H
006e5 72 1c jb SHORT $LN62@glfwCreate
006e7 41 b8 a9 02 00
00 mov r8d, 681 ; 000002a9H
006ed 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
006f4 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
006fb ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00701 33 c0 xor eax, eax
$LN62@glfwCreate:
00703 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0070a c7 44 85 10 38
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12344 ; 00003038H
00712 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00718 ff c0 inc eax
0071a 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
00720 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00727 c7 44 85 10 38
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12344 ; 00003038H
0072f 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00735 ff c0 inc eax
00737 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
; 682 :
; 683 : window->context.egl.handle = eglCreateContext(_glfw.egl.display,
0073d 4c 8d 4d 10 lea r9, QWORD PTR attribs$[rbp]
00741 4c 8b 85 e8 00
00 00 mov r8, QWORD PTR share$[rbp]
00748 48 8b 95 c8 00
00 00 mov rdx, QWORD PTR config$[rbp]
0074f 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
00756 ff 15 88 1a 00
00 call QWORD PTR _glfw+6792
0075c 48 8b 8d e0 03
00 00 mov rcx, QWORD PTR window$[rbp]
00763 48 89 81 88 02
00 00 mov QWORD PTR [rcx+648], rax
; 684 : config, share, attribs);
; 685 :
; 686 : if (window->context.egl.handle == EGL_NO_CONTEXT)
0076a 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00771 48 83 b8 88 02
00 00 00 cmp QWORD PTR [rax+648], 0
00779 75 28 jne SHORT $LN35@glfwCreate
; 687 : {
; 688 : _glfwInputError(GLFW_VERSION_UNAVAILABLE,
0077b ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
00781 8b c8 mov ecx, eax
00783 e8 00 00 00 00 call getEGLErrorString
00788 4c 8b c0 mov r8, rax
0078b 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CC@GOIKODMM@EGL?3?5Failed?5to?5create?5context?3?5@
00792 b9 07 00 01 00 mov ecx, 65543 ; 00010007H
00797 e8 00 00 00 00 call _glfwInputError
; 689 : "EGL: Failed to create context: %s",
; 690 : getEGLErrorString(eglGetError()));
; 691 : return GLFW_FALSE;
0079c 33 c0 xor eax, eax
0079e e9 e5 04 00 00 jmp $LN1@glfwCreate
$LN35@glfwCreate:
; 692 : }
; 693 :
; 694 : // Set up attributes for surface creation
; 695 : index = 0;
007a3 c7 85 24 01 00
00 00 00 00 00 mov DWORD PTR index$[rbp], 0
; 696 :
; 697 : if (fbconfig->sRGB)
007ad 48 8b 85 f0 03
00 00 mov rax, QWORD PTR fbconfig$[rbp]
007b4 83 78 34 00 cmp DWORD PTR [rax+52], 0
007b8 74 6f je SHORT $LN36@glfwCreate
; 698 : {
; 699 : if (_glfw.egl.KHR_gl_colorspace)
007ba 83 3d 14 1a 00
00 00 cmp DWORD PTR _glfw+6676, 0
007c1 74 66 je SHORT $LN37@glfwCreate
; 700 : SET_ATTRIB(EGL_GL_COLORSPACE_KHR, EGL_GL_COLORSPACE_SRGB_KHR);
007c3 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
007ca 48 ff c0 inc rax
007cd 48 83 f8 28 cmp rax, 40 ; 00000028H
007d1 72 1c jb SHORT $LN63@glfwCreate
007d3 41 b8 bc 02 00
00 mov r8d, 700 ; 000002bcH
007d9 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
007e0 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
007e7 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
007ed 33 c0 xor eax, eax
$LN63@glfwCreate:
007ef 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
007f6 c7 44 85 10 9d
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12445 ; 0000309dH
007fe 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00804 ff c0 inc eax
00806 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
0080c 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00813 c7 44 85 10 89
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12425 ; 00003089H
0081b 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00821 ff c0 inc eax
00823 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN37@glfwCreate:
$LN36@glfwCreate:
; 701 : }
; 702 :
; 703 : if (!fbconfig->doublebuffer)
00829 48 8b 85 f0 03
00 00 mov rax, QWORD PTR fbconfig$[rbp]
00830 83 78 38 00 cmp DWORD PTR [rax+56], 0
00834 75 66 jne SHORT $LN38@glfwCreate
; 704 : SET_ATTRIB(EGL_RENDER_BUFFER, EGL_SINGLE_BUFFER);
00836 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0083d 48 ff c0 inc rax
00840 48 83 f8 28 cmp rax, 40 ; 00000028H
00844 72 1c jb SHORT $LN64@glfwCreate
00846 41 b8 c0 02 00
00 mov r8d, 704 ; 000002c0H
0084c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00853 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
0085a ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00860 33 c0 xor eax, eax
$LN64@glfwCreate:
00862 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00869 c7 44 85 10 86
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12422 ; 00003086H
00871 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00877 ff c0 inc eax
00879 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
0087f 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00886 c7 44 85 10 85
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12421 ; 00003085H
0088e 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00894 ff c0 inc eax
00896 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN38@glfwCreate:
; 705 :
; 706 : if (_glfw.egl.EXT_present_opaque)
0089c 83 3d 30 1a 00
00 00 cmp DWORD PTR _glfw+6704, 0
008a3 0f 84 8b 00 00
00 je $LN39@glfwCreate
; 707 : SET_ATTRIB(EGL_PRESENT_OPAQUE_EXT, !fbconfig->transparent);
008a9 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
008b0 48 ff c0 inc rax
008b3 48 83 f8 28 cmp rax, 40 ; 00000028H
008b7 72 1c jb SHORT $LN65@glfwCreate
008b9 41 b8 c3 02 00
00 mov r8d, 707 ; 000002c3H
008bf 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
008c6 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
008cd ff 15 00 00 00
00 call QWORD PTR __imp__wassert
008d3 33 c0 xor eax, eax
$LN65@glfwCreate:
008d5 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
008dc c7 44 85 10 df
31 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12767 ; 000031dfH
008e4 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
008ea ff c0 inc eax
008ec 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
008f2 48 8b 85 f0 03
00 00 mov rax, QWORD PTR fbconfig$[rbp]
008f9 83 78 3c 00 cmp DWORD PTR [rax+60], 0
008fd 75 0c jne SHORT $LN66@glfwCreate
008ff c7 85 b4 03 00
00 01 00 00 00 mov DWORD PTR tv401[rbp], 1
00909 eb 0a jmp SHORT $LN67@glfwCreate
$LN66@glfwCreate:
0090b c7 85 b4 03 00
00 00 00 00 00 mov DWORD PTR tv401[rbp], 0
$LN67@glfwCreate:
00915 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0091c 8b 8d b4 03 00
00 mov ecx, DWORD PTR tv401[rbp]
00922 89 4c 85 10 mov DWORD PTR attribs$[rbp+rax*4], ecx
00926 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
0092c ff c0 inc eax
0092e 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
$LN39@glfwCreate:
; 708 :
; 709 : SET_ATTRIB(EGL_NONE, EGL_NONE);
00934 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
0093b 48 ff c0 inc rax
0093e 48 83 f8 28 cmp rax, 40 ; 00000028H
00942 72 1c jb SHORT $LN68@glfwCreate
00944 41 b8 c5 02 00
00 mov r8d, 709 ; 000002c5H
0094a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1ME@LOABEMJH@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00951 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1HI@HJCOLHIE@?$AA?$CI?$AA?$CI?$AAs?$AAi?$AAz?$AAe?$AA_?$AAt?$AA?$CJ?$AA?5?$AAi?$AAn?$AAd?$AAe?$AAx@
00958 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0095e 33 c0 xor eax, eax
$LN68@glfwCreate:
00960 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00967 c7 44 85 10 38
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12344 ; 00003038H
0096f 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00975 ff c0 inc eax
00977 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
0097d 48 63 85 24 01
00 00 movsxd rax, DWORD PTR index$[rbp]
00984 c7 44 85 10 38
30 00 00 mov DWORD PTR attribs$[rbp+rax*4], 12344 ; 00003038H
0098c 8b 85 24 01 00
00 mov eax, DWORD PTR index$[rbp]
00992 ff c0 inc eax
00994 89 85 24 01 00
00 mov DWORD PTR index$[rbp], eax
; 710 :
; 711 : native = _glfw.platform.getEGLNativeWindow(window);
0099a 48 8b 8d e0 03
00 00 mov rcx, QWORD PTR window$[rbp]
009a1 ff 15 48 02 00
00 call QWORD PTR _glfw+584
009a7 48 89 85 08 01
00 00 mov QWORD PTR native$[rbp], rax
; 712 : // HACK: ANGLE does not implement eglCreatePlatformWindowSurfaceEXT
; 713 : // despite reporting EGL_EXT_platform_base
; 714 : if (_glfw.egl.platform && _glfw.egl.platform != EGL_PLATFORM_ANGLE_ANGLE)
009ae 83 3d f0 19 00
00 00 cmp DWORD PTR _glfw+6640, 0
009b5 74 3b je SHORT $LN40@glfwCreate
009b7 81 3d f0 19 00
00 02 32 00 00 cmp DWORD PTR _glfw+6640, 12802 ; 00003202H
009c1 74 2f je SHORT $LN40@glfwCreate
; 715 : {
; 716 : window->context.egl.surface =
009c3 4c 8d 4d 10 lea r9, QWORD PTR attribs$[rbp]
009c7 4c 8b 85 08 01
00 00 mov r8, QWORD PTR native$[rbp]
009ce 48 8b 95 c8 00
00 00 mov rdx, QWORD PTR config$[rbp]
009d5 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
009dc ff 15 d8 1a 00
00 call QWORD PTR _glfw+6872
009e2 48 8b 8d e0 03
00 00 mov rcx, QWORD PTR window$[rbp]
009e9 48 89 81 90 02
00 00 mov QWORD PTR [rcx+656], rax
; 717 : eglCreatePlatformWindowSurfaceEXT(_glfw.egl.display, config, native, attribs);
; 718 : }
009f0 eb 2d jmp SHORT $LN41@glfwCreate
$LN40@glfwCreate:
; 719 : else
; 720 : {
; 721 : window->context.egl.surface =
009f2 4c 8d 4d 10 lea r9, QWORD PTR attribs$[rbp]
009f6 4c 8b 85 08 01
00 00 mov r8, QWORD PTR native$[rbp]
009fd 48 8b 95 c8 00
00 00 mov rdx, QWORD PTR config$[rbp]
00a04 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
00a0b ff 15 a0 1a 00
00 call QWORD PTR _glfw+6816
00a11 48 8b 8d e0 03
00 00 mov rcx, QWORD PTR window$[rbp]
00a18 48 89 81 90 02
00 00 mov QWORD PTR [rcx+656], rax
$LN41@glfwCreate:
; 722 : eglCreateWindowSurface(_glfw.egl.display, config, native, attribs);
; 723 : }
; 724 :
; 725 : if (window->context.egl.surface == EGL_NO_SURFACE)
00a1f 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00a26 48 83 b8 90 02
00 00 00 cmp QWORD PTR [rax+656], 0
00a2e 75 28 jne SHORT $LN42@glfwCreate
; 726 : {
; 727 : _glfwInputError(GLFW_PLATFORM_ERROR,
00a30 ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
00a36 8b c8 mov ecx, eax
00a38 e8 00 00 00 00 call getEGLErrorString
00a3d 4c 8b c0 mov r8, rax
00a40 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CJ@MHLGDLLP@EGL?3?5Failed?5to?5create?5window?5su@
00a47 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00a4c e8 00 00 00 00 call _glfwInputError
; 728 : "EGL: Failed to create window surface: %s",
; 729 : getEGLErrorString(eglGetError()));
; 730 : return GLFW_FALSE;
00a51 33 c0 xor eax, eax
00a53 e9 30 02 00 00 jmp $LN1@glfwCreate
$LN42@glfwCreate:
; 731 : }
; 732 :
; 733 : window->context.egl.config = config;
00a58 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00a5f 48 8b 8d c8 00
00 00 mov rcx, QWORD PTR config$[rbp]
00a66 48 89 88 80 02
00 00 mov QWORD PTR [rax+640], rcx
; 734 :
; 735 : // Load the appropriate client library
; 736 : if (!_glfw.egl.KHR_get_all_proc_addresses)
00a6d 83 3d 18 1a 00
00 00 cmp DWORD PTR _glfw+6680, 0
00a74 0f 85 8b 01 00
00 jne $LN43@glfwCreate
; 737 : {
; 738 : int i;
; 739 : const char** sonames;
; 740 : const char* es1sonames[] =
00a7a 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0O@KOJFNJDA@GLESv1_CM?4dll@
00a81 48 89 85 c8 01
00 00 mov QWORD PTR es1sonames$12[rbp], rax
00a88 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0P@MADFBLIB@libGLES_CM?4dll@
00a8f 48 89 85 d0 01
00 00 mov QWORD PTR es1sonames$12[rbp+8], rax
00a96 48 c7 85 d8 01
00 00 00 00 00
00 mov QWORD PTR es1sonames$12[rbp+16], 0
; 741 : {
; 742 : #if defined(_GLFW_GLESV1_LIBRARY)
; 743 : _GLFW_GLESV1_LIBRARY,
; 744 : #elif defined(_GLFW_WIN32)
; 745 : "GLESv1_CM.dll",
; 746 : "libGLES_CM.dll",
; 747 : #elif defined(_GLFW_COCOA)
; 748 : "libGLESv1_CM.dylib",
; 749 : #elif defined(__OpenBSD__) || defined(__NetBSD__)
; 750 : "libGLESv1_CM.so",
; 751 : #else
; 752 : "libGLESv1_CM.so.1",
; 753 : "libGLES_CM.so.1",
; 754 : #endif
; 755 : NULL
; 756 : };
; 757 : const char* es2sonames[] =
00aa1 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0L@CEBLLDFF@GLESv2?4dll@
00aa8 48 89 85 f8 01
00 00 mov QWORD PTR es2sonames$13[rbp], rax
00aaf 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0O@HFAAEHFL@libGLESv2?4dll@
00ab6 48 89 85 00 02
00 00 mov QWORD PTR es2sonames$13[rbp+8], rax
00abd 48 c7 85 08 02
00 00 00 00 00
00 mov QWORD PTR es2sonames$13[rbp+16], 0
; 758 : {
; 759 : #if defined(_GLFW_GLESV2_LIBRARY)
; 760 : _GLFW_GLESV2_LIBRARY,
; 761 : #elif defined(_GLFW_WIN32)
; 762 : "GLESv2.dll",
; 763 : "libGLESv2.dll",
; 764 : #elif defined(_GLFW_COCOA)
; 765 : "libGLESv2.dylib",
; 766 : #elif defined(__CYGWIN__)
; 767 : "libGLESv2-2.so",
; 768 : #elif defined(__OpenBSD__) || defined(__NetBSD__)
; 769 : "libGLESv2.so",
; 770 : #else
; 771 : "libGLESv2.so.2",
; 772 : #endif
; 773 : NULL
; 774 : };
; 775 : const char* glsonames[] =
00ac8 48 c7 85 28 02
00 00 00 00 00
00 mov QWORD PTR glsonames$14[rbp], 0
; 776 : {
; 777 : #if defined(_GLFW_OPENGL_LIBRARY)
; 778 : _GLFW_OPENGL_LIBRARY,
; 779 : #elif defined(_GLFW_WIN32)
; 780 : #elif defined(_GLFW_COCOA)
; 781 : #elif defined(__OpenBSD__) || defined(__NetBSD__)
; 782 : "libGL.so",
; 783 : #else
; 784 : "libOpenGL.so.0",
; 785 : "libGL.so.1",
; 786 : #endif
; 787 : NULL
; 788 : };
; 789 :
; 790 : if (ctxconfig->client == GLFW_OPENGL_ES_API)
00ad3 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00ada 81 38 02 00 03
00 cmp DWORD PTR [rax], 196610 ; 00030002H
00ae0 75 2d jne SHORT $LN44@glfwCreate
; 791 : {
; 792 : if (ctxconfig->major == 1)
00ae2 48 8b 85 e8 03
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00ae9 83 78 08 01 cmp DWORD PTR [rax+8], 1
00aed 75 10 jne SHORT $LN46@glfwCreate
; 793 : sonames = es1sonames;
00aef 48 8d 85 c8 01
00 00 lea rax, QWORD PTR es1sonames$12[rbp]
00af6 48 89 85 a8 01
00 00 mov QWORD PTR sonames$11[rbp], rax
00afd eb 0e jmp SHORT $LN47@glfwCreate
$LN46@glfwCreate:
; 794 : else
; 795 : sonames = es2sonames;
00aff 48 8d 85 f8 01
00 00 lea rax, QWORD PTR es2sonames$13[rbp]
00b06 48 89 85 a8 01
00 00 mov QWORD PTR sonames$11[rbp], rax
$LN47@glfwCreate:
; 796 : }
00b0d eb 0e jmp SHORT $LN45@glfwCreate
$LN44@glfwCreate:
; 797 : else
; 798 : sonames = glsonames;
00b0f 48 8d 85 28 02
00 00 lea rax, QWORD PTR glsonames$14[rbp]
00b16 48 89 85 a8 01
00 00 mov QWORD PTR sonames$11[rbp], rax
$LN45@glfwCreate:
; 799 :
; 800 : for (i = 0; sonames[i]; i++)
00b1d c7 85 84 01 00
00 00 00 00 00 mov DWORD PTR i$10[rbp], 0
00b27 eb 0e jmp SHORT $LN4@glfwCreate
$LN2@glfwCreate:
00b29 8b 85 84 01 00
00 mov eax, DWORD PTR i$10[rbp]
00b2f ff c0 inc eax
00b31 89 85 84 01 00
00 mov DWORD PTR i$10[rbp], eax
$LN4@glfwCreate:
00b37 48 63 85 84 01
00 00 movsxd rax, DWORD PTR i$10[rbp]
00b3e 48 8b 8d a8 01
00 00 mov rcx, QWORD PTR sonames$11[rbp]
00b45 48 83 3c c1 00 cmp QWORD PTR [rcx+rax*8], 0
00b4a 0f 84 8c 00 00
00 je $LN3@glfwCreate
; 801 : {
; 802 : // HACK: Match presence of lib prefix to increase chance of finding
; 803 : // a matching pair in the jungle that is Win32 EGL/GLES
; 804 : if (_glfw.egl.prefix != (strncmp(sonames[i], "lib", 3) == 0))
00b50 48 63 85 84 01
00 00 movsxd rax, DWORD PTR i$10[rbp]
00b57 41 b8 03 00 00
00 mov r8d, 3
00b5d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_03LPIGJBNC@lib@
00b64 48 8b 8d a8 01
00 00 mov rcx, QWORD PTR sonames$11[rbp]
00b6b 48 8b 0c c1 mov rcx, QWORD PTR [rcx+rax*8]
00b6f ff 15 00 00 00
00 call QWORD PTR __imp_strncmp
00b75 85 c0 test eax, eax
00b77 75 0c jne SHORT $LN69@glfwCreate
00b79 c7 85 b4 03 00
00 01 00 00 00 mov DWORD PTR tv492[rbp], 1
00b83 eb 0a jmp SHORT $LN70@glfwCreate
$LN69@glfwCreate:
00b85 c7 85 b4 03 00
00 00 00 00 00 mov DWORD PTR tv492[rbp], 0
$LN70@glfwCreate:
00b8f 8b 85 b4 03 00
00 mov eax, DWORD PTR tv492[rbp]
00b95 39 05 08 1a 00
00 cmp DWORD PTR _glfw+6664, eax
00b9b 74 02 je SHORT $LN48@glfwCreate
; 805 : continue;
00b9d eb 8a jmp SHORT $LN2@glfwCreate
$LN48@glfwCreate:
; 806 :
; 807 : window->context.egl.client = _glfwPlatformLoadModule(sonames[i]);
00b9f 48 63 85 84 01
00 00 movsxd rax, DWORD PTR i$10[rbp]
00ba6 48 8b 8d a8 01
00 00 mov rcx, QWORD PTR sonames$11[rbp]
00bad 48 8b 0c c1 mov rcx, QWORD PTR [rcx+rax*8]
00bb1 e8 00 00 00 00 call _glfwPlatformLoadModule
00bb6 48 8b 8d e0 03
00 00 mov rcx, QWORD PTR window$[rbp]
00bbd 48 89 81 98 02
00 00 mov QWORD PTR [rcx+664], rax
; 808 : if (window->context.egl.client)
00bc4 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00bcb 48 83 b8 98 02
00 00 00 cmp QWORD PTR [rax+664], 0
00bd3 74 02 je SHORT $LN49@glfwCreate
; 809 : break;
00bd5 eb 05 jmp SHORT $LN3@glfwCreate
$LN49@glfwCreate:
; 810 : }
00bd7 e9 4d ff ff ff jmp $LN2@glfwCreate
$LN3@glfwCreate:
; 811 :
; 812 : if (!window->context.egl.client)
00bdc 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00be3 48 83 b8 98 02
00 00 00 cmp QWORD PTR [rax+664], 0
00beb 75 18 jne SHORT $LN50@glfwCreate
; 813 : {
; 814 : _glfwInputError(GLFW_API_UNAVAILABLE,
00bed 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CD@JDEAKJCI@EGL?3?5Failed?5to?5load?5client?5libr@
00bf4 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00bf9 e8 00 00 00 00 call _glfwInputError
; 815 : "EGL: Failed to load client library");
; 816 : return GLFW_FALSE;
00bfe 33 c0 xor eax, eax
00c00 e9 83 00 00 00 jmp $LN1@glfwCreate
$LN50@glfwCreate:
$LN43@glfwCreate:
; 817 : }
; 818 : }
; 819 :
; 820 : window->context.makeCurrent = makeContextCurrentEGL;
00c05 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00c0c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:makeContextCurrentEGL
00c13 48 89 88 50 02
00 00 mov QWORD PTR [rax+592], rcx
; 821 : window->context.swapBuffers = swapBuffersEGL;
00c1a 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00c21 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:swapBuffersEGL
00c28 48 89 88 58 02
00 00 mov QWORD PTR [rax+600], rcx
; 822 : window->context.swapInterval = swapIntervalEGL;
00c2f 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00c36 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:swapIntervalEGL
00c3d 48 89 88 60 02
00 00 mov QWORD PTR [rax+608], rcx
; 823 : window->context.extensionSupported = extensionSupportedEGL;
00c44 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00c4b 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:extensionSupportedEGL
00c52 48 89 88 68 02
00 00 mov QWORD PTR [rax+616], rcx
; 824 : window->context.getProcAddress = getProcAddressEGL;
00c59 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00c60 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:getProcAddressEGL
00c67 48 89 88 70 02
00 00 mov QWORD PTR [rax+624], rcx
; 825 : window->context.destroy = destroyContextEGL;
00c6e 48 8b 85 e0 03
00 00 mov rax, QWORD PTR window$[rbp]
00c75 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:destroyContextEGL
00c7c 48 89 88 78 02
00 00 mov QWORD PTR [rax+632], rcx
; 826 :
; 827 : return GLFW_TRUE;
00c83 b8 01 00 00 00 mov eax, 1
$LN1@glfwCreate:
; 828 : }
00c88 48 8b f8 mov rdi, rax
00c8b 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
00c8f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwCreateContextEGL$rtcFrameData
00c96 e8 00 00 00 00 call _RTC_CheckStackVars
00c9b 48 8b c7 mov rax, rdi
00c9e 48 8b 8d b8 03
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00ca5 48 33 cd xor rcx, rbp
00ca8 e8 00 00 00 00 call __security_check_cookie
00cad 48 8d a5 c8 03
00 00 lea rsp, QWORD PTR [rbp+968]
00cb4 5f pop rdi
00cb5 5d pop rbp
00cb6 c3 ret 0
_glfwCreateContextEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT _glfwTerminateEGL
_TEXT SEGMENT
_glfwTerminateEGL PROC ; COMDAT
; 543 : {
$LN5:
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:__E9A20A45_egl_context@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 544 : if (_glfw.egl.display)
0001b 48 83 3d f8 19
00 00 00 cmp QWORD PTR _glfw+6648, 0
00023 74 18 je SHORT $LN2@glfwTermin
; 545 : {
; 546 : eglTerminate(_glfw.egl.display);
00025 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
0002c ff 15 78 1a 00
00 call QWORD PTR _glfw+6776
; 547 : _glfw.egl.display = EGL_NO_DISPLAY;
00032 48 c7 05 f8 19
00 00 00 00 00
00 mov QWORD PTR _glfw+6648, 0
$LN2@glfwTermin:
; 548 : }
; 549 :
; 550 : if (_glfw.egl.handle)
0003d 48 83 3d 48 1a
00 00 00 cmp QWORD PTR _glfw+6728, 0
00045 74 17 je SHORT $LN3@glfwTermin
; 551 : {
; 552 : _glfwPlatformFreeModule(_glfw.egl.handle);
00047 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
0004e e8 00 00 00 00 call _glfwPlatformFreeModule
; 553 : _glfw.egl.handle = NULL;
00053 48 c7 05 48 1a
00 00 00 00 00
00 mov QWORD PTR _glfw+6728, 0
$LN3@glfwTermin:
; 554 : }
; 555 : }
0005e 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00065 5f pop rdi
00066 5d pop rbp
00067 c3 ret 0
_glfwTerminateEGL ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\egl_context.c
; COMDAT _glfwInitEGL
_TEXT SEGMENT
i$ = 4
attribs$ = 40
extensions$ = 72
sonames$ = 104
tv87 = 324
__$ArrayPad$ = 328
_glfwInitEGL PROC ; COMDAT
; 361 : {
$LN20:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec 78 01
00 00 sub rsp, 376 ; 00000178H
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 26 00 00 00 mov ecx, 38 ; 00000026H
00019 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0001e f3 ab rep stosd
00020 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00027 48 33 c5 xor rax, rbp
0002a 48 89 85 48 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00031 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__E9A20A45_egl_context@c
00038 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 362 : int i;
; 363 : EGLint* attribs = NULL;
0003d 48 c7 45 28 00
00 00 00 mov QWORD PTR attribs$[rbp], 0
; 364 : const char* extensions;
; 365 : const char* sonames[] =
00045 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0L@ELKKGGMD@libEGL?4dll@
0004c 48 89 45 68 mov QWORD PTR sonames$[rbp], rax
00050 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_07EAKGIKCB@EGL?4dll@
00057 48 89 45 70 mov QWORD PTR sonames$[rbp+8], rax
0005b 48 c7 45 78 00
00 00 00 mov QWORD PTR sonames$[rbp+16], 0
; 366 : {
; 367 : #if defined(_GLFW_EGL_LIBRARY)
; 368 : _GLFW_EGL_LIBRARY,
; 369 : #elif defined(_GLFW_WIN32)
; 370 : "libEGL.dll",
; 371 : "EGL.dll",
; 372 : #elif defined(_GLFW_COCOA)
; 373 : "libEGL.dylib",
; 374 : #elif defined(__CYGWIN__)
; 375 : "libEGL-1.so",
; 376 : #elif defined(__OpenBSD__) || defined(__NetBSD__)
; 377 : "libEGL.so",
; 378 : #else
; 379 : "libEGL.so.1",
; 380 : #endif
; 381 : NULL
; 382 : };
; 383 :
; 384 : if (_glfw.egl.handle)
00063 48 83 3d 48 1a
00 00 00 cmp QWORD PTR _glfw+6728, 0
0006b 74 0a je SHORT $LN5@glfwInitEG
; 385 : return GLFW_TRUE;
0006d b8 01 00 00 00 mov eax, 1
00072 e9 75 05 00 00 jmp $LN1@glfwInitEG
$LN5@glfwInitEG:
; 386 :
; 387 : for (i = 0; sonames[i]; i++)
00077 c7 45 04 00 00
00 00 mov DWORD PTR i$[rbp], 0
0007e eb 08 jmp SHORT $LN4@glfwInitEG
$LN2@glfwInitEG:
00080 8b 45 04 mov eax, DWORD PTR i$[rbp]
00083 ff c0 inc eax
00085 89 45 04 mov DWORD PTR i$[rbp], eax
$LN4@glfwInitEG:
00088 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
0008c 48 83 7c c5 68
00 cmp QWORD PTR sonames$[rbp+rax*8], 0
00092 74 23 je SHORT $LN3@glfwInitEG
; 388 : {
; 389 : _glfw.egl.handle = _glfwPlatformLoadModule(sonames[i]);
00094 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
00098 48 8b 4c c5 68 mov rcx, QWORD PTR sonames$[rbp+rax*8]
0009d e8 00 00 00 00 call _glfwPlatformLoadModule
000a2 48 89 05 48 1a
00 00 mov QWORD PTR _glfw+6728, rax
; 390 : if (_glfw.egl.handle)
000a9 48 83 3d 48 1a
00 00 00 cmp QWORD PTR _glfw+6728, 0
000b1 74 02 je SHORT $LN6@glfwInitEG
; 391 : break;
000b3 eb 02 jmp SHORT $LN3@glfwInitEG
$LN6@glfwInitEG:
; 392 : }
000b5 eb c9 jmp SHORT $LN2@glfwInitEG
$LN3@glfwInitEG:
; 393 :
; 394 : if (!_glfw.egl.handle)
000b7 48 83 3d 48 1a
00 00 00 cmp QWORD PTR _glfw+6728, 0
000bf 75 18 jne SHORT $LN7@glfwInitEG
; 395 : {
; 396 : _glfwInputError(GLFW_API_UNAVAILABLE, "EGL: Library not found");
000c1 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BH@NFNALLIN@EGL?3?5Library?5not?5found@
000c8 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
000cd e8 00 00 00 00 call _glfwInputError
; 397 : return GLFW_FALSE;
000d2 33 c0 xor eax, eax
000d4 e9 13 05 00 00 jmp $LN1@glfwInitEG
$LN7@glfwInitEG:
; 398 : }
; 399 :
; 400 : _glfw.egl.prefix = (strncmp(sonames[i], "lib", 3) == 0);
000d9 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
000dd 41 b8 03 00 00
00 mov r8d, 3
000e3 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_03LPIGJBNC@lib@
000ea 48 8b 4c c5 68 mov rcx, QWORD PTR sonames$[rbp+rax*8]
000ef ff 15 00 00 00
00 call QWORD PTR __imp_strncmp
000f5 85 c0 test eax, eax
000f7 75 0c jne SHORT $LN18@glfwInitEG
000f9 c7 85 44 01 00
00 01 00 00 00 mov DWORD PTR tv87[rbp], 1
00103 eb 0a jmp SHORT $LN19@glfwInitEG
$LN18@glfwInitEG:
00105 c7 85 44 01 00
00 00 00 00 00 mov DWORD PTR tv87[rbp], 0
$LN19@glfwInitEG:
0010f 8b 85 44 01 00
00 mov eax, DWORD PTR tv87[rbp]
00115 89 05 08 1a 00
00 mov DWORD PTR _glfw+6664, eax
; 401 :
; 402 : _glfw.egl.GetConfigAttrib = (PFN_eglGetConfigAttrib)
0011b 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BD@MAEGKKAE@eglGetConfigAttrib@
00122 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00129 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
0012e 48 89 05 50 1a
00 00 mov QWORD PTR _glfw+6736, rax
; 403 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglGetConfigAttrib");
; 404 : _glfw.egl.GetConfigs = (PFN_eglGetConfigs)
00135 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0O@OMNEJBKO@eglGetConfigs@
0013c 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00143 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00148 48 89 05 58 1a
00 00 mov QWORD PTR _glfw+6744, rax
; 405 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglGetConfigs");
; 406 : _glfw.egl.GetDisplay = (PFN_eglGetDisplay)
0014f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0O@BMJFLKOA@eglGetDisplay@
00156 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
0015d e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00162 48 89 05 60 1a
00 00 mov QWORD PTR _glfw+6752, rax
; 407 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglGetDisplay");
; 408 : _glfw.egl.GetError = (PFN_eglGetError)
00169 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0M@PPADKGOK@eglGetError@
00170 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00177 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
0017c 48 89 05 68 1a
00 00 mov QWORD PTR _glfw+6760, rax
; 409 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglGetError");
; 410 : _glfw.egl.Initialize = (PFN_eglInitialize)
00183 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0O@EEJFKEKH@eglInitialize@
0018a 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00191 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00196 48 89 05 70 1a
00 00 mov QWORD PTR _glfw+6768, rax
; 411 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglInitialize");
; 412 : _glfw.egl.Terminate = (PFN_eglTerminate)
0019d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0N@IGFNFAOP@eglTerminate@
001a4 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
001ab e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
001b0 48 89 05 78 1a
00 00 mov QWORD PTR _glfw+6776, rax
; 413 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglTerminate");
; 414 : _glfw.egl.BindAPI = (PFN_eglBindAPI)
001b7 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0L@HJOCIPHF@eglBindAPI@
001be 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
001c5 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
001ca 48 89 05 80 1a
00 00 mov QWORD PTR _glfw+6784, rax
; 415 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglBindAPI");
; 416 : _glfw.egl.CreateContext = (PFN_eglCreateContext)
001d1 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BB@KEKMNHDF@eglCreateContext@
001d8 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
001df e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
001e4 48 89 05 88 1a
00 00 mov QWORD PTR _glfw+6792, rax
; 417 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglCreateContext");
; 418 : _glfw.egl.DestroySurface = (PFN_eglDestroySurface)
001eb 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BC@ICHKG@eglDestroySurface@
001f2 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
001f9 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
001fe 48 89 05 90 1a
00 00 mov QWORD PTR _glfw+6800, rax
; 419 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglDestroySurface");
; 420 : _glfw.egl.DestroyContext = (PFN_eglDestroyContext)
00205 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BC@BNOBCLNJ@eglDestroyContext@
0020c 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00213 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00218 48 89 05 98 1a
00 00 mov QWORD PTR _glfw+6808, rax
; 421 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglDestroyContext");
; 422 : _glfw.egl.CreateWindowSurface = (PFN_eglCreateWindowSurface)
0021f 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BH@MDMCFBDG@eglCreateWindowSurface@
00226 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
0022d e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00232 48 89 05 a0 1a
00 00 mov QWORD PTR _glfw+6816, rax
; 423 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglCreateWindowSurface");
; 424 : _glfw.egl.MakeCurrent = (PFN_eglMakeCurrent)
00239 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0P@PNPBPNLI@eglMakeCurrent@
00240 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00247 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
0024c 48 89 05 a8 1a
00 00 mov QWORD PTR _glfw+6824, rax
; 425 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglMakeCurrent");
; 426 : _glfw.egl.SwapBuffers = (PFN_eglSwapBuffers)
00253 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0P@DEBOOHKH@eglSwapBuffers@
0025a 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00261 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00266 48 89 05 b0 1a
00 00 mov QWORD PTR _glfw+6832, rax
; 427 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglSwapBuffers");
; 428 : _glfw.egl.SwapInterval = (PFN_eglSwapInterval)
0026d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BA@BGJPOLDF@eglSwapInterval@
00274 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
0027b e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00280 48 89 05 b8 1a
00 00 mov QWORD PTR _glfw+6840, rax
; 429 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglSwapInterval");
; 430 : _glfw.egl.QueryString = (PFN_eglQueryString)
00287 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0P@HJKEKLKD@eglQueryString@
0028e 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
00295 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
0029a 48 89 05 c0 1a
00 00 mov QWORD PTR _glfw+6848, rax
; 431 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglQueryString");
; 432 : _glfw.egl.GetProcAddress = (PFN_eglGetProcAddress)
002a1 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BC@HONLJDPH@eglGetProcAddress@
002a8 48 8b 0d 48 1a
00 00 mov rcx, QWORD PTR _glfw+6728
002af e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
002b4 48 89 05 c8 1a
00 00 mov QWORD PTR _glfw+6856, rax
; 433 : _glfwPlatformGetModuleSymbol(_glfw.egl.handle, "eglGetProcAddress");
; 434 :
; 435 : if (!_glfw.egl.GetConfigAttrib ||
; 436 : !_glfw.egl.GetConfigs ||
; 437 : !_glfw.egl.GetDisplay ||
; 438 : !_glfw.egl.GetError ||
; 439 : !_glfw.egl.Initialize ||
; 440 : !_glfw.egl.Terminate ||
; 441 : !_glfw.egl.BindAPI ||
; 442 : !_glfw.egl.CreateContext ||
; 443 : !_glfw.egl.DestroySurface ||
; 444 : !_glfw.egl.DestroyContext ||
; 445 : !_glfw.egl.CreateWindowSurface ||
; 446 : !_glfw.egl.MakeCurrent ||
; 447 : !_glfw.egl.SwapBuffers ||
; 448 : !_glfw.egl.SwapInterval ||
; 449 : !_glfw.egl.QueryString ||
002bb 48 83 3d 50 1a
00 00 00 cmp QWORD PTR _glfw+6736, 0
002c3 0f 84 9e 00 00
00 je $LN9@glfwInitEG
002c9 48 83 3d 58 1a
00 00 00 cmp QWORD PTR _glfw+6744, 0
002d1 0f 84 90 00 00
00 je $LN9@glfwInitEG
002d7 48 83 3d 60 1a
00 00 00 cmp QWORD PTR _glfw+6752, 0
002df 0f 84 82 00 00
00 je $LN9@glfwInitEG
002e5 48 83 3d 68 1a
00 00 00 cmp QWORD PTR _glfw+6760, 0
002ed 74 78 je SHORT $LN9@glfwInitEG
002ef 48 83 3d 70 1a
00 00 00 cmp QWORD PTR _glfw+6768, 0
002f7 74 6e je SHORT $LN9@glfwInitEG
002f9 48 83 3d 78 1a
00 00 00 cmp QWORD PTR _glfw+6776, 0
00301 74 64 je SHORT $LN9@glfwInitEG
00303 48 83 3d 80 1a
00 00 00 cmp QWORD PTR _glfw+6784, 0
0030b 74 5a je SHORT $LN9@glfwInitEG
0030d 48 83 3d 88 1a
00 00 00 cmp QWORD PTR _glfw+6792, 0
00315 74 50 je SHORT $LN9@glfwInitEG
00317 48 83 3d 90 1a
00 00 00 cmp QWORD PTR _glfw+6800, 0
0031f 74 46 je SHORT $LN9@glfwInitEG
00321 48 83 3d 98 1a
00 00 00 cmp QWORD PTR _glfw+6808, 0
00329 74 3c je SHORT $LN9@glfwInitEG
0032b 48 83 3d a0 1a
00 00 00 cmp QWORD PTR _glfw+6816, 0
00333 74 32 je SHORT $LN9@glfwInitEG
00335 48 83 3d a8 1a
00 00 00 cmp QWORD PTR _glfw+6824, 0
0033d 74 28 je SHORT $LN9@glfwInitEG
0033f 48 83 3d b0 1a
00 00 00 cmp QWORD PTR _glfw+6832, 0
00347 74 1e je SHORT $LN9@glfwInitEG
00349 48 83 3d b8 1a
00 00 00 cmp QWORD PTR _glfw+6840, 0
00351 74 14 je SHORT $LN9@glfwInitEG
00353 48 83 3d c0 1a
00 00 00 cmp QWORD PTR _glfw+6848, 0
0035b 74 0a je SHORT $LN9@glfwInitEG
0035d 48 83 3d c8 1a
00 00 00 cmp QWORD PTR _glfw+6856, 0
00365 75 1d jne SHORT $LN8@glfwInitEG
$LN9@glfwInitEG:
; 450 : !_glfw.egl.GetProcAddress)
; 451 : {
; 452 : _glfwInputError(GLFW_PLATFORM_ERROR,
00367 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CK@DCPJCPHH@EGL?3?5Failed?5to?5load?5required?5en@
0036e b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00373 e8 00 00 00 00 call _glfwInputError
; 453 : "EGL: Failed to load required entry points");
; 454 :
; 455 : _glfwTerminateEGL();
00378 e8 00 00 00 00 call _glfwTerminateEGL
; 456 : return GLFW_FALSE;
0037d 33 c0 xor eax, eax
0037f e9 68 02 00 00 jmp $LN1@glfwInitEG
$LN8@glfwInitEG:
; 457 : }
; 458 :
; 459 : extensions = eglQueryString(EGL_NO_DISPLAY, EGL_EXTENSIONS);
00384 ba 55 30 00 00 mov edx, 12373 ; 00003055H
00389 33 c9 xor ecx, ecx
0038b ff 15 c0 1a 00
00 call QWORD PTR _glfw+6848
00391 48 89 45 48 mov QWORD PTR extensions$[rbp], rax
; 460 : if (extensions && eglGetError() == EGL_SUCCESS)
00395 48 83 7d 48 00 cmp QWORD PTR extensions$[rbp], 0
0039a 74 17 je SHORT $LN10@glfwInitEG
0039c ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
003a2 3d 00 30 00 00 cmp eax, 12288 ; 00003000H
003a7 75 0a jne SHORT $LN10@glfwInitEG
; 461 : _glfw.egl.EXT_client_extensions = GLFW_TRUE;
003a9 c7 05 20 1a 00
00 01 00 00 00 mov DWORD PTR _glfw+6688, 1
$LN10@glfwInitEG:
; 462 :
; 463 : if (_glfw.egl.EXT_client_extensions)
003b3 83 3d 20 1a 00
00 00 cmp DWORD PTR _glfw+6688, 0
003ba 0f 84 b0 00 00
00 je $LN11@glfwInitEG
; 464 : {
; 465 : _glfw.egl.EXT_platform_base =
003c0 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
003c4 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BG@IPJFJLIC@EGL_EXT_platform_base@
003cb e8 00 00 00 00 call _glfwStringInExtensionString
003d0 89 05 24 1a 00
00 mov DWORD PTR _glfw+6692, eax
; 466 : _glfwStringInExtensionString("EGL_EXT_platform_base", extensions);
; 467 : _glfw.egl.EXT_platform_x11 =
003d6 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
003da 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BF@FMIKFMMH@EGL_EXT_platform_x11@
003e1 e8 00 00 00 00 call _glfwStringInExtensionString
003e6 89 05 28 1a 00
00 mov DWORD PTR _glfw+6696, eax
; 468 : _glfwStringInExtensionString("EGL_EXT_platform_x11", extensions);
; 469 : _glfw.egl.EXT_platform_wayland =
003ec 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
003f0 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BJ@KIPDFNMM@EGL_EXT_platform_wayland@
003f7 e8 00 00 00 00 call _glfwStringInExtensionString
003fc 89 05 2c 1a 00
00 mov DWORD PTR _glfw+6700, eax
; 470 : _glfwStringInExtensionString("EGL_EXT_platform_wayland", extensions);
; 471 : _glfw.egl.ANGLE_platform_angle =
00402 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
00406 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BJ@MBCLFEBK@EGL_ANGLE_platform_angle@
0040d e8 00 00 00 00 call _glfwStringInExtensionString
00412 89 05 34 1a 00
00 mov DWORD PTR _glfw+6708, eax
; 472 : _glfwStringInExtensionString("EGL_ANGLE_platform_angle", extensions);
; 473 : _glfw.egl.ANGLE_platform_angle_opengl =
00418 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
0041c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0CA@NIHAEPLD@EGL_ANGLE_platform_angle_opengl@
00423 e8 00 00 00 00 call _glfwStringInExtensionString
00428 89 05 38 1a 00
00 mov DWORD PTR _glfw+6712, eax
; 474 : _glfwStringInExtensionString("EGL_ANGLE_platform_angle_opengl", extensions);
; 475 : _glfw.egl.ANGLE_platform_angle_d3d =
0042e 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
00432 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BN@OHLJPDPM@EGL_ANGLE_platform_angle_d3d@
00439 e8 00 00 00 00 call _glfwStringInExtensionString
0043e 89 05 3c 1a 00
00 mov DWORD PTR _glfw+6716, eax
; 476 : _glfwStringInExtensionString("EGL_ANGLE_platform_angle_d3d", extensions);
; 477 : _glfw.egl.ANGLE_platform_angle_vulkan =
00444 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
00448 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0CA@HGIOILGO@EGL_ANGLE_platform_angle_vulkan@
0044f e8 00 00 00 00 call _glfwStringInExtensionString
00454 89 05 40 1a 00
00 mov DWORD PTR _glfw+6720, eax
; 478 : _glfwStringInExtensionString("EGL_ANGLE_platform_angle_vulkan", extensions);
; 479 : _glfw.egl.ANGLE_platform_angle_metal =
0045a 48 8b 55 48 mov rdx, QWORD PTR extensions$[rbp]
0045e 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BP@NMKFFDCO@EGL_ANGLE_platform_angle_metal@
00465 e8 00 00 00 00 call _glfwStringInExtensionString
0046a 89 05 44 1a 00
00 mov DWORD PTR _glfw+6724, eax
$LN11@glfwInitEG:
; 480 : _glfwStringInExtensionString("EGL_ANGLE_platform_angle_metal", extensions);
; 481 : }
; 482 :
; 483 : if (_glfw.egl.EXT_platform_base)
00470 83 3d 24 1a 00
00 00 cmp DWORD PTR _glfw+6692, 0
00477 74 28 je SHORT $LN12@glfwInitEG
; 484 : {
; 485 : _glfw.egl.GetPlatformDisplayEXT = (PFNEGLGETPLATFORMDISPLAYEXTPROC)
00479 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BJ@KEAIGPHD@eglGetPlatformDisplayEXT@
00480 ff 15 c8 1a 00
00 call QWORD PTR _glfw+6856
00486 48 89 05 d0 1a
00 00 mov QWORD PTR _glfw+6864, rax
; 486 : eglGetProcAddress("eglGetPlatformDisplayEXT");
; 487 : _glfw.egl.CreatePlatformWindowSurfaceEXT = (PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC)
0048d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0CC@NGDHIGBI@eglCreatePlatformWindowSurfaceE@
00494 ff 15 c8 1a 00
00 call QWORD PTR _glfw+6856
0049a 48 89 05 d8 1a
00 00 mov QWORD PTR _glfw+6872, rax
$LN12@glfwInitEG:
; 488 : eglGetProcAddress("eglCreatePlatformWindowSurfaceEXT");
; 489 : }
; 490 :
; 491 : _glfw.egl.platform = _glfw.platform.getEGLPlatform(&attribs);
004a1 48 8d 4d 28 lea rcx, QWORD PTR attribs$[rbp]
004a5 ff 15 38 02 00
00 call QWORD PTR _glfw+568
004ab 89 05 f0 19 00
00 mov DWORD PTR _glfw+6640, eax
; 492 : if (_glfw.egl.platform)
004b1 83 3d f0 19 00
00 00 cmp DWORD PTR _glfw+6640, 0
004b8 74 22 je SHORT $LN13@glfwInitEG
; 493 : {
; 494 : _glfw.egl.display =
004ba ff 15 40 02 00
00 call QWORD PTR _glfw+576
004c0 4c 8b 45 28 mov r8, QWORD PTR attribs$[rbp]
004c4 48 8b d0 mov rdx, rax
004c7 8b 0d f0 19 00
00 mov ecx, DWORD PTR _glfw+6640
004cd ff 15 d0 1a 00
00 call QWORD PTR _glfw+6864
004d3 48 89 05 f8 19
00 00 mov QWORD PTR _glfw+6648, rax
; 495 : eglGetPlatformDisplayEXT(_glfw.egl.platform,
; 496 : _glfw.platform.getEGLNativeDisplay(),
; 497 : attribs);
; 498 : }
004da eb 16 jmp SHORT $LN14@glfwInitEG
$LN13@glfwInitEG:
; 499 : else
; 500 : _glfw.egl.display = eglGetDisplay(_glfw.platform.getEGLNativeDisplay());
004dc ff 15 40 02 00
00 call QWORD PTR _glfw+576
004e2 48 8b c8 mov rcx, rax
004e5 ff 15 60 1a 00
00 call QWORD PTR _glfw+6752
004eb 48 89 05 f8 19
00 00 mov QWORD PTR _glfw+6648, rax
$LN14@glfwInitEG:
; 501 :
; 502 : _glfw_free(attribs);
004f2 48 8b 4d 28 mov rcx, QWORD PTR attribs$[rbp]
004f6 e8 00 00 00 00 call _glfw_free
; 503 :
; 504 : if (_glfw.egl.display == EGL_NO_DISPLAY)
004fb 48 83 3d f8 19
00 00 00 cmp QWORD PTR _glfw+6648, 0
00503 75 2d jne SHORT $LN15@glfwInitEG
; 505 : {
; 506 : _glfwInputError(GLFW_API_UNAVAILABLE,
00505 ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
0050b 8b c8 mov ecx, eax
0050d e8 00 00 00 00 call getEGLErrorString
00512 4c 8b c0 mov r8, rax
00515 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CD@CODEPNKE@EGL?3?5Failed?5to?5get?5EGL?5display?3@
0051c b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00521 e8 00 00 00 00 call _glfwInputError
; 507 : "EGL: Failed to get EGL display: %s",
; 508 : getEGLErrorString(eglGetError()));
; 509 :
; 510 : _glfwTerminateEGL();
00526 e8 00 00 00 00 call _glfwTerminateEGL
; 511 : return GLFW_FALSE;
0052b 33 c0 xor eax, eax
0052d e9 ba 00 00 00 jmp $LN1@glfwInitEG
$LN15@glfwInitEG:
; 512 : }
; 513 :
; 514 : if (!eglInitialize(_glfw.egl.display, &_glfw.egl.major, &_glfw.egl.minor))
00532 4c 8d 05 04 1a
00 00 lea r8, OFFSET FLAT:_glfw+6660
00539 48 8d 15 00 1a
00 00 lea rdx, OFFSET FLAT:_glfw+6656
00540 48 8b 0d f8 19
00 00 mov rcx, QWORD PTR _glfw+6648
00547 ff 15 70 1a 00
00 call QWORD PTR _glfw+6768
0054d 85 c0 test eax, eax
0054f 75 2a jne SHORT $LN16@glfwInitEG
; 515 : {
; 516 : _glfwInputError(GLFW_API_UNAVAILABLE,
00551 ff 15 68 1a 00
00 call QWORD PTR _glfw+6760
00557 8b c8 mov ecx, eax
00559 e8 00 00 00 00 call getEGLErrorString
0055e 4c 8b c0 mov r8, rax
00561 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CC@DOIEFDD@EGL?3?5Failed?5to?5initialize?5EGL?3?5@
00568 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
0056d e8 00 00 00 00 call _glfwInputError
; 517 : "EGL: Failed to initialize EGL: %s",
; 518 : getEGLErrorString(eglGetError()));
; 519 :
; 520 : _glfwTerminateEGL();
00572 e8 00 00 00 00 call _glfwTerminateEGL
; 521 : return GLFW_FALSE;
00577 33 c0 xor eax, eax
00579 eb 71 jmp SHORT $LN1@glfwInitEG
$LN16@glfwInitEG:
; 522 : }
; 523 :
; 524 : _glfw.egl.KHR_create_context =
0057b 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BH@GIBFIFPN@EGL_KHR_create_context@
00582 e8 00 00 00 00 call extensionSupportedEGL
00587 89 05 0c 1a 00
00 mov DWORD PTR _glfw+6668, eax
; 525 : extensionSupportedEGL("EGL_KHR_create_context");
; 526 : _glfw.egl.KHR_create_context_no_error =
0058d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0CA@OJFEOPKP@EGL_KHR_create_context_no_error@
00594 e8 00 00 00 00 call extensionSupportedEGL
00599 89 05 10 1a 00
00 mov DWORD PTR _glfw+6672, eax
; 527 : extensionSupportedEGL("EGL_KHR_create_context_no_error");
; 528 : _glfw.egl.KHR_gl_colorspace =
0059f 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BG@GOAKKGGB@EGL_KHR_gl_colorspace@
005a6 e8 00 00 00 00 call extensionSupportedEGL
005ab 89 05 14 1a 00
00 mov DWORD PTR _glfw+6676, eax
; 529 : extensionSupportedEGL("EGL_KHR_gl_colorspace");
; 530 : _glfw.egl.KHR_get_all_proc_addresses =
005b1 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BP@CDGGFNNF@EGL_KHR_get_all_proc_addresses@
005b8 e8 00 00 00 00 call extensionSupportedEGL
005bd 89 05 18 1a 00
00 mov DWORD PTR _glfw+6680, eax
; 531 : extensionSupportedEGL("EGL_KHR_get_all_proc_addresses");
; 532 : _glfw.egl.KHR_context_flush_control =
005c3 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BO@IDEEMGNC@EGL_KHR_context_flush_control@
005ca e8 00 00 00 00 call extensionSupportedEGL
005cf 89 05 1c 1a 00
00 mov DWORD PTR _glfw+6684, eax
; 533 : extensionSupportedEGL("EGL_KHR_context_flush_control");
; 534 : _glfw.egl.EXT_present_opaque =
005d5 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0BH@JADLEPAM@EGL_EXT_present_opaque@
005dc e8 00 00 00 00 call extensionSupportedEGL
005e1 89 05 30 1a 00
00 mov DWORD PTR _glfw+6704, eax
; 535 : extensionSupportedEGL("EGL_EXT_present_opaque");
; 536 :
; 537 : return GLFW_TRUE;
005e7 b8 01 00 00 00 mov eax, 1
$LN1@glfwInitEG:
; 538 : }
005ec 48 8b f8 mov rdi, rax
005ef 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
005f3 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwInitEGL$rtcFrameData
005fa e8 00 00 00 00 call _RTC_CheckStackVars
005ff 48 8b c7 mov rax, rdi
00602 48 8b 8d 48 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00609 48 33 cd xor rcx, rbp
0060c e8 00 00 00 00 call __security_check_cookie
00611 48 8d a5 58 01
00 00 lea rsp, QWORD PTR [rbp+344]
00618 5f pop rdi
00619 5d pop rbp
0061a c3 ret 0
_glfwInitEGL ENDP
_TEXT ENDS
END