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

2603 lines
78 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
__45DED006_corecrt_malloc@h DB 01H
__13F5961F_stddef@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
__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
__19139D6C_assert@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
__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
__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
__8EADBA0F_osmesa_context@c DB 01H
msvcjmc ENDS
PUBLIC _glfwInitOSMesa
PUBLIC _glfwTerminateOSMesa
PUBLIC _glfwCreateContextOSMesa
PUBLIC glfwGetOSMesaColorBuffer
PUBLIC glfwGetOSMesaDepthBuffer
PUBLIC glfwGetOSMesaContext
PUBLIC __JustMyCode_Default
PUBLIC ??_C@_0CH@CKFBCGDL@OSMesa?3?5Failed?5to?5make?5context?5@ ; `string'
PUBLIC ??_C@_0O@DJDONBGH@libOSMesa?4dll@ ; `string'
PUBLIC ??_C@_0L@GICFCFGJ@OSMesa?4dll@ ; `string'
PUBLIC ??_C@_0BK@MLLMMLGE@OSMesa?3?5Library?5not?5found@ ; `string'
PUBLIC ??_C@_0BH@IPANDFMH@OSMesaCreateContextExt@ ; `string'
PUBLIC ??_C@_0BL@MIAEELOL@OSMesaCreateContextAttribs@ ; `string'
PUBLIC ??_C@_0BF@OOKNCFMF@OSMesaDestroyContext@ ; `string'
PUBLIC ??_C@_0BC@HEACFLN@OSMesaMakeCurrent@ ; `string'
PUBLIC ??_C@_0BF@HHLAJKBF@OSMesaGetColorBuffer@ ; `string'
PUBLIC ??_C@_0BF@BPPLLLDH@OSMesaGetDepthBuffer@ ; `string'
PUBLIC ??_C@_0BF@INJHJNOL@OSMesaGetProcAddress@ ; `string'
PUBLIC ??_C@_0CN@PEBHJDOE@OSMesa?3?5Failed?5to?5load?5required@ ; `string'
PUBLIC ??_C@_0CN@JHECHMPF@OSMesa?3?5OpenGL?5ES?5is?5not?5availa@ ; `string'
PUBLIC ??_C@_1MK@NFOPCBIP@?$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@_0DC@KKLJAJOK@OSMesa?3?5Forward?9compatible?5cont@ ; `string'
PUBLIC ??_C@_0CE@OJEBIEPE@OSMesa?3?5OpenGL?5profiles?5unavail@ ; `string'
PUBLIC ??_C@_0CB@LDOHHBIH@OSMesa?3?5Failed?5to?5create?5contex@ ; `string'
PUBLIC ??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ ; `string'
PUBLIC ??_C@_0CI@NAJLKNKH@OSMesa?3?5Failed?5to?5retrieve?5colo@ ; `string'
PUBLIC ??_C@_0CI@FJDKHGC@OSMesa?3?5Failed?5to?5retrieve?5dept@ ; `string'
EXTRN __imp__wassert:PROC
EXTRN _glfwPlatformSetTls:PROC
EXTRN _glfwPlatformLoadModule:PROC
EXTRN _glfwPlatformFreeModule:PROC
EXTRN _glfwPlatformGetModuleSymbol:PROC
EXTRN _glfwInputError:PROC
EXTRN _glfw_calloc:PROC
EXTRN _glfw_free:PROC
EXTRN _RTC_CheckStackVars:PROC
EXTRN _RTC_InitBase:PROC
EXTRN _RTC_Shutdown:PROC
EXTRN __CheckForDebuggerJustMyCode:PROC
EXTRN __GSHandlerCheck:PROC
EXTRN __security_check_cookie:PROC
EXTRN _glfw:BYTE
EXTRN __security_cookie:QWORD
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwInitOSMesa DD imagerel $LN11
DD imagerel $LN11+497
DD imagerel $unwind$_glfwInitOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwTerminateOSMesa DD imagerel $LN4
DD imagerel $LN4+70
DD imagerel $unwind$_glfwTerminateOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwCreateContextOSMesa DD imagerel $LN24
DD imagerel $LN24+1428
DD imagerel $unwind$_glfwCreateContextOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$makeContextCurrentOSMesa DD imagerel makeContextCurrentOSMesa
DD imagerel makeContextCurrentOSMesa+385
DD imagerel $unwind$makeContextCurrentOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$getProcAddressOSMesa DD imagerel getProcAddressOSMesa
DD imagerel getProcAddressOSMesa+54
DD imagerel $unwind$getProcAddressOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$destroyContextOSMesa DD imagerel destroyContextOSMesa
DD imagerel destroyContextOSMesa+166
DD imagerel $unwind$destroyContextOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$swapBuffersOSMesa DD imagerel swapBuffersOSMesa
DD imagerel swapBuffersOSMesa+41
DD imagerel $unwind$swapBuffersOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$swapIntervalOSMesa DD imagerel swapIntervalOSMesa
DD imagerel swapIntervalOSMesa+40
DD imagerel $unwind$swapIntervalOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$extensionSupportedOSMesa DD imagerel extensionSupportedOSMesa
DD imagerel extensionSupportedOSMesa+43
DD imagerel $unwind$extensionSupportedOSMesa
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetOSMesaColorBuffer DD imagerel $LN11
DD imagerel $LN11+414
DD imagerel $unwind$glfwGetOSMesaColorBuffer
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetOSMesaDepthBuffer DD imagerel $LN11
DD imagerel $LN11+414
DD imagerel $unwind$glfwGetOSMesaDepthBuffer
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetOSMesaContext DD imagerel $LN5
DD imagerel $LN5+120
DD imagerel $unwind$glfwGetOSMesaContext
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@_0CI@FJDKHGC@OSMesa?3?5Failed?5to?5retrieve?5dept@
CONST SEGMENT
??_C@_0CI@FJDKHGC@OSMesa?3?5Failed?5to?5retrieve?5dept@ DB 'OSMesa: Faile'
DB 'd to retrieve depth buffer', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CI@NAJLKNKH@OSMesa?3?5Failed?5to?5retrieve?5colo@
CONST SEGMENT
??_C@_0CI@NAJLKNKH@OSMesa?3?5Failed?5to?5retrieve?5colo@ DB 'OSMesa: Fail'
DB 'ed to retrieve color buffer', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@
CONST SEGMENT
??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ DB 'w'
DB 00H, 'i', 00H, 'n', 00H, 'd', 00H, 'o', 00H, 'w', 00H, ' ', 00H
DB '!', 00H, '=', 00H, ' ', 00H, 'N', 00H, 'U', 00H, 'L', 00H, 'L'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CB@LDOHHBIH@OSMesa?3?5Failed?5to?5create?5contex@
CONST SEGMENT
??_C@_0CB@LDOHHBIH@OSMesa?3?5Failed?5to?5create?5contex@ DB 'OSMesa: Fail'
DB 'ed to create context', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CE@OJEBIEPE@OSMesa?3?5OpenGL?5profiles?5unavail@
CONST SEGMENT
??_C@_0CE@OJEBIEPE@OSMesa?3?5OpenGL?5profiles?5unavail@ DB 'OSMesa: OpenG'
DB 'L profiles unavailable', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0DC@KKLJAJOK@OSMesa?3?5Forward?9compatible?5cont@
CONST SEGMENT
??_C@_0DC@KKLJAJOK@OSMesa?3?5Forward?9compatible?5cont@ DB 'OSMesa: Forwa'
DB 'rd-compatible contexts not supported', 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@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
CONST SEGMENT
??_C@_1MK@NFOPCBIP@?$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, 'o', 00H, 's', 00H, 'm'
DB 00H, 'e', 00H, 's', 00H, 'a', 00H, '_', 00H, 'c', 00H, 'o', 00H
DB 'n', 00H, 't', 00H, 'e', 00H, 'x', 00H, 't', 00H, '.', 00H, 'c'
DB 00H, 00H, 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CN@JHECHMPF@OSMesa?3?5OpenGL?5ES?5is?5not?5availa@
CONST SEGMENT
??_C@_0CN@JHECHMPF@OSMesa?3?5OpenGL?5ES?5is?5not?5availa@ DB 'OSMesa: Ope'
DB 'nGL ES is not available on OSMesa', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CN@PEBHJDOE@OSMesa?3?5Failed?5to?5load?5required@
CONST SEGMENT
??_C@_0CN@PEBHJDOE@OSMesa?3?5Failed?5to?5load?5required@ DB 'OSMesa: Fail'
DB 'ed to load required entry points', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BF@INJHJNOL@OSMesaGetProcAddress@
CONST SEGMENT
??_C@_0BF@INJHJNOL@OSMesaGetProcAddress@ DB 'OSMesaGetProcAddress', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BF@BPPLLLDH@OSMesaGetDepthBuffer@
CONST SEGMENT
??_C@_0BF@BPPLLLDH@OSMesaGetDepthBuffer@ DB 'OSMesaGetDepthBuffer', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BF@HHLAJKBF@OSMesaGetColorBuffer@
CONST SEGMENT
??_C@_0BF@HHLAJKBF@OSMesaGetColorBuffer@ DB 'OSMesaGetColorBuffer', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BC@HEACFLN@OSMesaMakeCurrent@
CONST SEGMENT
??_C@_0BC@HEACFLN@OSMesaMakeCurrent@ DB 'OSMesaMakeCurrent', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BF@OOKNCFMF@OSMesaDestroyContext@
CONST SEGMENT
??_C@_0BF@OOKNCFMF@OSMesaDestroyContext@ DB 'OSMesaDestroyContext', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BL@MIAEELOL@OSMesaCreateContextAttribs@
CONST SEGMENT
??_C@_0BL@MIAEELOL@OSMesaCreateContextAttribs@ DB 'OSMesaCreateContextAtt'
DB 'ribs', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BH@IPANDFMH@OSMesaCreateContextExt@
CONST SEGMENT
??_C@_0BH@IPANDFMH@OSMesaCreateContextExt@ DB 'OSMesaCreateContextExt', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0BK@MLLMMLGE@OSMesa?3?5Library?5not?5found@
CONST SEGMENT
??_C@_0BK@MLLMMLGE@OSMesa?3?5Library?5not?5found@ DB 'OSMesa: Library not'
DB ' found', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0L@GICFCFGJ@OSMesa?4dll@
CONST SEGMENT
??_C@_0L@GICFCFGJ@OSMesa?4dll@ DB 'OSMesa.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0O@DJDONBGH@libOSMesa?4dll@
CONST SEGMENT
??_C@_0O@DJDONBGH@libOSMesa?4dll@ DB 'libOSMesa.dll', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0CH@CKFBCGDL@OSMesa?3?5Failed?5to?5make?5context?5@
CONST SEGMENT
??_C@_0CH@CKFBCGDL@OSMesa?3?5Failed?5to?5make?5context?5@ DB 'OSMesa: Fai'
DB 'led to make context current', 00H ; `string'
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetOSMesaContext DD 025051301H
DD 010e2313H
DD 070070021H
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 045H
DW 0185H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetOSMesaDepthBuffer DD 035054c19H
DD 011d3322H
DD 070160033H
DD 05015H
DD imagerel __GSHandlerCheck
DD 0188H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
glfwGetOSMesaDepthBuffer$rtcName$0 DB 06dH
DB 065H
DB 073H
DB 061H
DB 042H
DB 075H
DB 066H
DB 066H
DB 065H
DB 072H
DB 00H
ORG $+5
glfwGetOSMesaDepthBuffer$rtcName$1 DB 06dH
DB 065H
DB 073H
DB 061H
DB 057H
DB 069H
DB 064H
DB 074H
DB 068H
DB 00H
ORG $+6
glfwGetOSMesaDepthBuffer$rtcName$2 DB 06dH
DB 065H
DB 073H
DB 061H
DB 048H
DB 065H
DB 069H
DB 067H
DB 068H
DB 074H
DB 00H
ORG $+5
glfwGetOSMesaDepthBuffer$rtcName$3 DB 06dH
DB 065H
DB 073H
DB 061H
DB 042H
DB 079H
DB 074H
DB 065H
DB 073H
DB 00H
ORG $+6
glfwGetOSMesaDepthBuffer$rtcVarDesc DD 094H
DD 04H
DQ FLAT:glfwGetOSMesaDepthBuffer$rtcName$3
DD 074H
DD 04H
DQ FLAT:glfwGetOSMesaDepthBuffer$rtcName$2
DD 054H
DD 04H
DQ FLAT:glfwGetOSMesaDepthBuffer$rtcName$1
DD 038H
DD 08H
DQ FLAT:glfwGetOSMesaDepthBuffer$rtcName$0
ORG $+192
glfwGetOSMesaDepthBuffer$rtcFrameData DD 04H
DD 00H
DQ FLAT:glfwGetOSMesaDepthBuffer$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 045H
DW 0185H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetOSMesaColorBuffer DD 035054c19H
DD 011d3322H
DD 070160033H
DD 05015H
DD imagerel __GSHandlerCheck
DD 0188H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
glfwGetOSMesaColorBuffer$rtcName$0 DB 06dH
DB 065H
DB 073H
DB 061H
DB 042H
DB 075H
DB 066H
DB 066H
DB 065H
DB 072H
DB 00H
ORG $+5
glfwGetOSMesaColorBuffer$rtcName$1 DB 06dH
DB 065H
DB 073H
DB 061H
DB 057H
DB 069H
DB 064H
DB 074H
DB 068H
DB 00H
ORG $+6
glfwGetOSMesaColorBuffer$rtcName$2 DB 06dH
DB 065H
DB 073H
DB 061H
DB 048H
DB 065H
DB 069H
DB 067H
DB 068H
DB 074H
DB 00H
ORG $+5
glfwGetOSMesaColorBuffer$rtcName$3 DB 06dH
DB 065H
DB 073H
DB 061H
DB 046H
DB 06fH
DB 072H
DB 06dH
DB 061H
DB 074H
DB 00H
ORG $+5
glfwGetOSMesaColorBuffer$rtcVarDesc DD 094H
DD 04H
DQ FLAT:glfwGetOSMesaColorBuffer$rtcName$3
DD 074H
DD 04H
DQ FLAT:glfwGetOSMesaColorBuffer$rtcName$2
DD 054H
DD 04H
DQ FLAT:glfwGetOSMesaColorBuffer$rtcName$1
DD 038H
DD 08H
DQ FLAT:glfwGetOSMesaColorBuffer$rtcName$0
ORG $+192
glfwGetOSMesaColorBuffer$rtcFrameData DD 04H
DD 00H
DQ FLAT:glfwGetOSMesaColorBuffer$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$extensionSupportedOSMesa DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$swapIntervalOSMesa DD 025051201H
DD 010d2312H
DD 07006001dH
DD 05005H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$swapBuffersOSMesa DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$destroyContextOSMesa DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$getProcAddressOSMesa DD 025051301H
DD 010e2313H
DD 07007001dH
DD 05006H
xdata ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 036H
DW 0168H
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$makeContextCurrentOSMesa DD 035053d19H
DD 010e3313H
DD 070070027H
DD 05006H
DD imagerel __GSHandlerCheck
DD 0128H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
makeContextCurrentOSMesa$rtcName$0 DB 077H
DB 069H
DB 064H
DB 074H
DB 068H
DB 00H
ORG $+2
makeContextCurrentOSMesa$rtcName$1 DB 068H
DB 065H
DB 069H
DB 067H
DB 068H
DB 074H
DB 00H
ORG $+1
makeContextCurrentOSMesa$rtcVarDesc DD 054H
DD 04H
DQ FLAT:makeContextCurrentOSMesa$rtcName$1
DD 034H
DD 04H
DQ FLAT:makeContextCurrentOSMesa$rtcName$0
ORG $+96
makeContextCurrentOSMesa$rtcFrameData DD 02H
DD 00H
DQ FLAT:makeContextCurrentOSMesa$rtcVarDesc
CONST ENDS
; COMDAT voltbl
voltbl SEGMENT
_volmd DW 040H
DW 057bH
voltbl ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwCreateContextOSMesa DD 035054719H
DD 0118331dH
DD 070110043H
DD 05010H
DD imagerel __GSHandlerCheck
DD 0208H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwCreateContextOSMesa$rtcName$0 DB 061H
DB 074H
DB 074H
DB 072H
DB 069H
DB 062H
DB 073H
DB 00H
ORG $+8
_glfwCreateContextOSMesa$rtcVarDesc DD 0a0H
DD 0a0H
DQ FLAT:_glfwCreateContextOSMesa$rtcName$0
ORG $+48
_glfwCreateContextOSMesa$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwCreateContextOSMesa$rtcVarDesc
CONST ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwTerminateOSMesa DD 025050f01H
DD 010a230fH
DD 07003001dH
DD 05002H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwInitOSMesa DD 025052001H
DD 010a230fH
DD 070030027H
DD 05002H
xdata ENDS
; COMDAT CONST
CONST SEGMENT
_glfwInitOSMesa$rtcName$0 DB 073H
DB 06fH
DB 06eH
DB 061H
DB 06dH
DB 065H
DB 073H
DB 00H
ORG $+8
_glfwInitOSMesa$rtcVarDesc DD 048H
DD 018H
DQ FLAT:_glfwInitOSMesa$rtcName$0
ORG $+48
_glfwInitOSMesa$rtcFrameData DD 01H
DD 00H
DQ FLAT:_glfwInitOSMesa$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\osmesa_context.c
; COMDAT glfwGetOSMesaContext
_TEXT SEGMENT
window$ = 8
handle$ = 256
glfwGetOSMesaContext PROC ; COMDAT
; 374 : {
$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:__8EADBA0F_osmesa_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 375 : _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
; 376 : _GLFW_REQUIRE_INIT_OR_RETURN(NULL);
0002a 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00031 75 10 jne SHORT $LN2@glfwGetOSM
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@glfwGetOSM
$LN2@glfwGetOSM:
; 377 :
; 378 : if (window->context.source != GLFW_OSMESA_CONTEXT_API)
00043 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00047 81 b8 0c 02 00
00 03 60 03 00 cmp DWORD PTR [rax+524], 221187 ; 00036003H
00051 74 10 je SHORT $LN3@glfwGetOSM
; 379 : {
; 380 : _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
; 381 : return NULL;
0005f 33 c0 xor eax, eax
00061 eb 0b jmp SHORT $LN1@glfwGetOSM
$LN3@glfwGetOSM:
; 382 : }
; 383 :
; 384 : return window->context.osmesa.handle;
00063 48 8b 45 08 mov rax, QWORD PTR window$[rbp]
00067 48 8b 80 a0 02
00 00 mov rax, QWORD PTR [rax+672]
$LN1@glfwGetOSM:
; 385 : }
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
glfwGetOSMesaContext ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT glfwGetOSMesaDepthBuffer
_TEXT SEGMENT
mesaBuffer$ = 8
mesaWidth$ = 36
mesaHeight$ = 68
mesaBytes$ = 100
window$ = 136
__$ArrayPad$ = 344
handle$ = 384
width$ = 392
height$ = 400
bytesPerValue$ = 408
buffer$ = 416
glfwGetOSMesaDepthBuffer PROC ; COMDAT
; 338 : {
$LN11:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec 98 01
00 00 sub rsp, 408 ; 00000198H
0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00022 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00027 b9 2a 00 00 00 mov ecx, 42 ; 0000002aH
0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00031 f3 ab rep stosd
00033 48 8b 8c 24 b8
01 00 00 mov rcx, QWORD PTR [rsp+440]
0003b 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00042 48 33 c5 xor rax, rbp
00045 48 89 85 58 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__8EADBA0F_osmesa_context@c
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 339 : void* mesaBuffer;
; 340 : GLint mesaWidth, mesaHeight, mesaBytes;
; 341 : _GLFWwindow* window = (_GLFWwindow*) handle;
00058 48 8b 85 80 01
00 00 mov rax, QWORD PTR handle$[rbp]
0005f 48 89 85 88 00
00 00 mov QWORD PTR window$[rbp], rax
; 342 : assert(window != NULL);
00066 48 83 bd 88 00
00 00 00 cmp QWORD PTR window$[rbp], 0
0006e 75 1c jne SHORT $LN10@glfwGetOSM
00070 41 b8 56 01 00
00 mov r8d, 342 ; 00000156H
00076 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0007d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@
00084 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0008a 33 c0 xor eax, eax
$LN10@glfwGetOSM:
; 343 :
; 344 : _GLFW_REQUIRE_INIT_OR_RETURN(GLFW_FALSE);
0008c 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00093 75 13 jne SHORT $LN2@glfwGetOSM
00095 33 d2 xor edx, edx
00097 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0009c e8 00 00 00 00 call _glfwInputError
000a1 33 c0 xor eax, eax
000a3 e9 c7 00 00 00 jmp $LN1@glfwGetOSM
$LN2@glfwGetOSM:
; 345 :
; 346 : if (window->context.source != GLFW_OSMESA_CONTEXT_API)
000a8 48 8b 85 88 00
00 00 mov rax, QWORD PTR window$[rbp]
000af 81 b8 0c 02 00
00 03 60 03 00 cmp DWORD PTR [rax+524], 221187 ; 00036003H
000b9 74 13 je SHORT $LN3@glfwGetOSM
; 347 : {
; 348 : _glfwInputError(GLFW_NO_WINDOW_CONTEXT, NULL);
000bb 33 d2 xor edx, edx
000bd b9 0a 00 01 00 mov ecx, 65546 ; 0001000aH
000c2 e8 00 00 00 00 call _glfwInputError
; 349 : return GLFW_FALSE;
000c7 33 c0 xor eax, eax
000c9 e9 a1 00 00 00 jmp $LN1@glfwGetOSM
$LN3@glfwGetOSM:
; 350 : }
; 351 :
; 352 : if (!OSMesaGetDepthBuffer(window->context.osmesa.handle,
000ce 48 8d 45 08 lea rax, QWORD PTR mesaBuffer$[rbp]
000d2 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
000d7 4c 8d 4d 64 lea r9, QWORD PTR mesaBytes$[rbp]
000db 4c 8d 45 44 lea r8, QWORD PTR mesaHeight$[rbp]
000df 48 8d 55 24 lea rdx, QWORD PTR mesaWidth$[rbp]
000e3 48 8b 85 88 00
00 00 mov rax, QWORD PTR window$[rbp]
000ea 48 8b 88 a0 02
00 00 mov rcx, QWORD PTR [rax+672]
000f1 ff 15 10 1b 00
00 call QWORD PTR _glfw+6928
000f7 85 c0 test eax, eax
000f9 75 15 jne SHORT $LN4@glfwGetOSM
; 353 : &mesaWidth, &mesaHeight,
; 354 : &mesaBytes, &mesaBuffer))
; 355 : {
; 356 : _glfwInputError(GLFW_PLATFORM_ERROR,
000fb 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CI@FJDKHGC@OSMesa?3?5Failed?5to?5retrieve?5dept@
00102 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00107 e8 00 00 00 00 call _glfwInputError
; 357 : "OSMesa: Failed to retrieve depth buffer");
; 358 : return GLFW_FALSE;
0010c 33 c0 xor eax, eax
0010e eb 5f jmp SHORT $LN1@glfwGetOSM
$LN4@glfwGetOSM:
; 359 : }
; 360 :
; 361 : if (width)
00110 48 83 bd 88 01
00 00 00 cmp QWORD PTR width$[rbp], 0
00118 74 0c je SHORT $LN5@glfwGetOSM
; 362 : *width = mesaWidth;
0011a 48 8b 85 88 01
00 00 mov rax, QWORD PTR width$[rbp]
00121 8b 4d 24 mov ecx, DWORD PTR mesaWidth$[rbp]
00124 89 08 mov DWORD PTR [rax], ecx
$LN5@glfwGetOSM:
; 363 : if (height)
00126 48 83 bd 90 01
00 00 00 cmp QWORD PTR height$[rbp], 0
0012e 74 0c je SHORT $LN6@glfwGetOSM
; 364 : *height = mesaHeight;
00130 48 8b 85 90 01
00 00 mov rax, QWORD PTR height$[rbp]
00137 8b 4d 44 mov ecx, DWORD PTR mesaHeight$[rbp]
0013a 89 08 mov DWORD PTR [rax], ecx
$LN6@glfwGetOSM:
; 365 : if (bytesPerValue)
0013c 48 83 bd 98 01
00 00 00 cmp QWORD PTR bytesPerValue$[rbp], 0
00144 74 0c je SHORT $LN7@glfwGetOSM
; 366 : *bytesPerValue = mesaBytes;
00146 48 8b 85 98 01
00 00 mov rax, QWORD PTR bytesPerValue$[rbp]
0014d 8b 4d 64 mov ecx, DWORD PTR mesaBytes$[rbp]
00150 89 08 mov DWORD PTR [rax], ecx
$LN7@glfwGetOSM:
; 367 : if (buffer)
00152 48 83 bd a0 01
00 00 00 cmp QWORD PTR buffer$[rbp], 0
0015a 74 0e je SHORT $LN8@glfwGetOSM
; 368 : *buffer = mesaBuffer;
0015c 48 8b 85 a0 01
00 00 mov rax, QWORD PTR buffer$[rbp]
00163 48 8b 4d 08 mov rcx, QWORD PTR mesaBuffer$[rbp]
00167 48 89 08 mov QWORD PTR [rax], rcx
$LN8@glfwGetOSM:
; 369 :
; 370 : return GLFW_TRUE;
0016a b8 01 00 00 00 mov eax, 1
$LN1@glfwGetOSM:
; 371 : }
0016f 48 8b f8 mov rdi, rax
00172 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00176 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:glfwGetOSMesaDepthBuffer$rtcFrameData
0017d e8 00 00 00 00 call _RTC_CheckStackVars
00182 48 8b c7 mov rax, rdi
00185 48 8b 8d 58 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0018c 48 33 cd xor rcx, rbp
0018f e8 00 00 00 00 call __security_check_cookie
00194 48 8d a5 68 01
00 00 lea rsp, QWORD PTR [rbp+360]
0019b 5f pop rdi
0019c 5d pop rbp
0019d c3 ret 0
glfwGetOSMesaDepthBuffer ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT glfwGetOSMesaColorBuffer
_TEXT SEGMENT
mesaBuffer$ = 8
mesaWidth$ = 36
mesaHeight$ = 68
mesaFormat$ = 100
window$ = 136
__$ArrayPad$ = 344
handle$ = 384
width$ = 392
height$ = 400
format$ = 408
buffer$ = 416
glfwGetOSMesaColorBuffer PROC ; COMDAT
; 299 : {
$LN11:
00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00014 55 push rbp
00015 57 push rdi
00016 48 81 ec 98 01
00 00 sub rsp, 408 ; 00000198H
0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00022 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00027 b9 2a 00 00 00 mov ecx, 42 ; 0000002aH
0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00031 f3 ab rep stosd
00033 48 8b 8c 24 b8
01 00 00 mov rcx, QWORD PTR [rsp+440]
0003b 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00042 48 33 c5 xor rax, rbp
00045 48 89 85 58 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0004c 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__8EADBA0F_osmesa_context@c
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 300 : void* mesaBuffer;
; 301 : GLint mesaWidth, mesaHeight, mesaFormat;
; 302 : _GLFWwindow* window = (_GLFWwindow*) handle;
00058 48 8b 85 80 01
00 00 mov rax, QWORD PTR handle$[rbp]
0005f 48 89 85 88 00
00 00 mov QWORD PTR window$[rbp], rax
; 303 : assert(window != NULL);
00066 48 83 bd 88 00
00 00 00 cmp QWORD PTR window$[rbp], 0
0006e 75 1c jne SHORT $LN10@glfwGetOSM
00070 41 b8 2f 01 00
00 mov r8d, 303 ; 0000012fH
00076 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0007d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@
00084 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0008a 33 c0 xor eax, eax
$LN10@glfwGetOSM:
; 304 :
; 305 : _GLFW_REQUIRE_INIT_OR_RETURN(GLFW_FALSE);
0008c 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00093 75 13 jne SHORT $LN2@glfwGetOSM
00095 33 d2 xor edx, edx
00097 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0009c e8 00 00 00 00 call _glfwInputError
000a1 33 c0 xor eax, eax
000a3 e9 c7 00 00 00 jmp $LN1@glfwGetOSM
$LN2@glfwGetOSM:
; 306 :
; 307 : if (window->context.source != GLFW_OSMESA_CONTEXT_API)
000a8 48 8b 85 88 00
00 00 mov rax, QWORD PTR window$[rbp]
000af 81 b8 0c 02 00
00 03 60 03 00 cmp DWORD PTR [rax+524], 221187 ; 00036003H
000b9 74 13 je SHORT $LN3@glfwGetOSM
; 308 : {
; 309 : _glfwInputError(GLFW_NO_WINDOW_CONTEXT, NULL);
000bb 33 d2 xor edx, edx
000bd b9 0a 00 01 00 mov ecx, 65546 ; 0001000aH
000c2 e8 00 00 00 00 call _glfwInputError
; 310 : return GLFW_FALSE;
000c7 33 c0 xor eax, eax
000c9 e9 a1 00 00 00 jmp $LN1@glfwGetOSM
$LN3@glfwGetOSM:
; 311 : }
; 312 :
; 313 : if (!OSMesaGetColorBuffer(window->context.osmesa.handle,
000ce 48 8d 45 08 lea rax, QWORD PTR mesaBuffer$[rbp]
000d2 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
000d7 4c 8d 4d 64 lea r9, QWORD PTR mesaFormat$[rbp]
000db 4c 8d 45 44 lea r8, QWORD PTR mesaHeight$[rbp]
000df 48 8d 55 24 lea rdx, QWORD PTR mesaWidth$[rbp]
000e3 48 8b 85 88 00
00 00 mov rax, QWORD PTR window$[rbp]
000ea 48 8b 88 a0 02
00 00 mov rcx, QWORD PTR [rax+672]
000f1 ff 15 08 1b 00
00 call QWORD PTR _glfw+6920
000f7 85 c0 test eax, eax
000f9 75 15 jne SHORT $LN4@glfwGetOSM
; 314 : &mesaWidth, &mesaHeight,
; 315 : &mesaFormat, &mesaBuffer))
; 316 : {
; 317 : _glfwInputError(GLFW_PLATFORM_ERROR,
000fb 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CI@NAJLKNKH@OSMesa?3?5Failed?5to?5retrieve?5colo@
00102 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
00107 e8 00 00 00 00 call _glfwInputError
; 318 : "OSMesa: Failed to retrieve color buffer");
; 319 : return GLFW_FALSE;
0010c 33 c0 xor eax, eax
0010e eb 5f jmp SHORT $LN1@glfwGetOSM
$LN4@glfwGetOSM:
; 320 : }
; 321 :
; 322 : if (width)
00110 48 83 bd 88 01
00 00 00 cmp QWORD PTR width$[rbp], 0
00118 74 0c je SHORT $LN5@glfwGetOSM
; 323 : *width = mesaWidth;
0011a 48 8b 85 88 01
00 00 mov rax, QWORD PTR width$[rbp]
00121 8b 4d 24 mov ecx, DWORD PTR mesaWidth$[rbp]
00124 89 08 mov DWORD PTR [rax], ecx
$LN5@glfwGetOSM:
; 324 : if (height)
00126 48 83 bd 90 01
00 00 00 cmp QWORD PTR height$[rbp], 0
0012e 74 0c je SHORT $LN6@glfwGetOSM
; 325 : *height = mesaHeight;
00130 48 8b 85 90 01
00 00 mov rax, QWORD PTR height$[rbp]
00137 8b 4d 44 mov ecx, DWORD PTR mesaHeight$[rbp]
0013a 89 08 mov DWORD PTR [rax], ecx
$LN6@glfwGetOSM:
; 326 : if (format)
0013c 48 83 bd 98 01
00 00 00 cmp QWORD PTR format$[rbp], 0
00144 74 0c je SHORT $LN7@glfwGetOSM
; 327 : *format = mesaFormat;
00146 48 8b 85 98 01
00 00 mov rax, QWORD PTR format$[rbp]
0014d 8b 4d 64 mov ecx, DWORD PTR mesaFormat$[rbp]
00150 89 08 mov DWORD PTR [rax], ecx
$LN7@glfwGetOSM:
; 328 : if (buffer)
00152 48 83 bd a0 01
00 00 00 cmp QWORD PTR buffer$[rbp], 0
0015a 74 0e je SHORT $LN8@glfwGetOSM
; 329 : *buffer = mesaBuffer;
0015c 48 8b 85 a0 01
00 00 mov rax, QWORD PTR buffer$[rbp]
00163 48 8b 4d 08 mov rcx, QWORD PTR mesaBuffer$[rbp]
00167 48 89 08 mov QWORD PTR [rax], rcx
$LN8@glfwGetOSM:
; 330 :
; 331 : return GLFW_TRUE;
0016a b8 01 00 00 00 mov eax, 1
$LN1@glfwGetOSM:
; 332 : }
0016f 48 8b f8 mov rdi, rax
00172 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
00176 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:glfwGetOSMesaColorBuffer$rtcFrameData
0017d e8 00 00 00 00 call _RTC_CheckStackVars
00182 48 8b c7 mov rax, rdi
00185 48 8b 8d 58 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0018c 48 33 cd xor rcx, rbp
0018f e8 00 00 00 00 call __security_check_cookie
00194 48 8d a5 68 01
00 00 lea rsp, QWORD PTR [rbp+360]
0019b 5f pop rdi
0019c 5d pop rbp
0019d c3 ret 0
glfwGetOSMesaColorBuffer ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT extensionSupportedOSMesa
_TEXT SEGMENT
extension$ = 224
extensionSupportedOSMesa PROC ; COMDAT
; 103 : {
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:__8EADBA0F_osmesa_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 104 : // OSMesa does not have extensions
; 105 : return GLFW_FALSE;
0001f 33 c0 xor eax, eax
; 106 : }
00021 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00028 5f pop rdi
00029 5d pop rbp
0002a c3 ret 0
extensionSupportedOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT swapIntervalOSMesa
_TEXT SEGMENT
interval$ = 224
swapIntervalOSMesa PROC ; COMDAT
; 98 : {
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:__8EADBA0F_osmesa_context@c
00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 99 : // No swap interval on OSMesa
; 100 : }
0001e 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00025 5f pop rdi
00026 5d pop rbp
00027 c3 ret 0
swapIntervalOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT swapBuffersOSMesa
_TEXT SEGMENT
window$ = 224
swapBuffersOSMesa PROC ; COMDAT
; 93 : {
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:__8EADBA0F_osmesa_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 94 : // No double buffering on OSMesa
; 95 : }
0001f 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00026 5f pop rdi
00027 5d pop rbp
00028 c3 ret 0
swapBuffersOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT destroyContextOSMesa
_TEXT SEGMENT
window$ = 224
destroyContextOSMesa PROC ; COMDAT
; 77 : {
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:__8EADBA0F_osmesa_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 78 : if (window->context.osmesa.handle)
0001f 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00026 48 83 b8 a0 02
00 00 00 cmp QWORD PTR [rax+672], 0
0002e 74 26 je SHORT $LN2@destroyCon
; 79 : {
; 80 : OSMesaDestroyContext(window->context.osmesa.handle);
00030 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00037 48 8b 88 a0 02
00 00 mov rcx, QWORD PTR [rax+672]
0003e ff 15 f8 1a 00
00 call QWORD PTR _glfw+6904
; 81 : window->context.osmesa.handle = NULL;
00044 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0004b 48 c7 80 a0 02
00 00 00 00 00
00 mov QWORD PTR [rax+672], 0
$LN2@destroyCon:
; 82 : }
; 83 :
; 84 : if (window->context.osmesa.buffer)
00056 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0005d 48 83 b8 b0 02
00 00 00 cmp QWORD PTR [rax+688], 0
00065 74 35 je SHORT $LN3@destroyCon
; 85 : {
; 86 : _glfw_free(window->context.osmesa.buffer);
00067 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
0006e 48 8b 88 b0 02
00 00 mov rcx, QWORD PTR [rax+688]
00075 e8 00 00 00 00 call _glfw_free
; 87 : window->context.osmesa.width = 0;
0007a 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00081 c7 80 a8 02 00
00 00 00 00 00 mov DWORD PTR [rax+680], 0
; 88 : window->context.osmesa.height = 0;
0008b 48 8b 85 e0 00
00 00 mov rax, QWORD PTR window$[rbp]
00092 c7 80 ac 02 00
00 00 00 00 00 mov DWORD PTR [rax+684], 0
$LN3@destroyCon:
; 89 : }
; 90 : }
0009c 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
000a3 5f pop rdi
000a4 5d pop rbp
000a5 c3 ret 0
destroyContextOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT getProcAddressOSMesa
_TEXT SEGMENT
procname$ = 224
getProcAddressOSMesa PROC ; COMDAT
; 72 : {
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:__8EADBA0F_osmesa_context@c
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 73 : return (GLFWglproc) OSMesaGetProcAddress(procname);
0001f 48 8b 8d e0 00
00 00 mov rcx, QWORD PTR procname$[rbp]
00026 ff 15 18 1b 00
00 call QWORD PTR _glfw+6936
; 74 : }
0002c 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00033 5f pop rdi
00034 5d pop rbp
00035 c3 ret 0
getProcAddressOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT makeContextCurrentOSMesa
_TEXT SEGMENT
width$5 = 4
height$6 = 36
__$ArrayPad$ = 248
window$ = 288
makeContextCurrentOSMesa PROC ; COMDAT
; 38 : {
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
00005 55 push rbp
00006 57 push rdi
00007 48 81 ec 38 01
00 00 sub rsp, 312 ; 00000138H
0000e 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
00013 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00018 b9 12 00 00 00 mov ecx, 18
0001d b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
00022 f3 ab rep stosd
00024 48 8b 8c 24 58
01 00 00 mov rcx, QWORD PTR [rsp+344]
0002c 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
00033 48 33 c5 xor rax, rbp
00036 48 89 85 f8 00
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
0003d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__8EADBA0F_osmesa_context@c
00044 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 39 : if (window)
00049 48 83 bd 20 01
00 00 00 cmp QWORD PTR window$[rbp], 0
00051 0f 84 ee 00 00
00 je $LN2@makeContex
; 40 : {
; 41 : int width, height;
; 42 : _glfw.platform.getFramebufferSize(window, &width, &height);
00057 4c 8d 45 24 lea r8, QWORD PTR height$6[rbp]
0005b 48 8d 55 04 lea rdx, QWORD PTR width$5[rbp]
0005f 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
00066 ff 15 60 01 00
00 call QWORD PTR _glfw+352
; 43 :
; 44 : // Check to see if we need to allocate a new buffer
; 45 : if ((window->context.osmesa.buffer == NULL) ||
; 46 : (width != window->context.osmesa.width) ||
0006c 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00073 48 83 b8 b0 02
00 00 00 cmp QWORD PTR [rax+688], 0
0007b 74 24 je SHORT $LN4@makeContex
0007d 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00084 8b 80 a8 02 00
00 mov eax, DWORD PTR [rax+680]
0008a 39 45 04 cmp DWORD PTR width$5[rbp], eax
0008d 75 12 jne SHORT $LN4@makeContex
0008f 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00096 8b 80 ac 02 00
00 mov eax, DWORD PTR [rax+684]
0009c 39 45 24 cmp DWORD PTR height$6[rbp], eax
0009f 74 5a je SHORT $LN3@makeContex
$LN4@makeContex:
; 47 : (height != window->context.osmesa.height))
; 48 : {
; 49 : _glfw_free(window->context.osmesa.buffer);
000a1 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000a8 48 8b 88 b0 02
00 00 mov rcx, QWORD PTR [rax+688]
000af e8 00 00 00 00 call _glfw_free
; 50 :
; 51 : // Allocate the new buffer (width * height * 8-bit RGBA)
; 52 : window->context.osmesa.buffer = _glfw_calloc(4, (size_t) width * height);
000b4 48 63 45 04 movsxd rax, DWORD PTR width$5[rbp]
000b8 48 63 4d 24 movsxd rcx, DWORD PTR height$6[rbp]
000bc 48 0f af c1 imul rax, rcx
000c0 48 8b d0 mov rdx, rax
000c3 b9 04 00 00 00 mov ecx, 4
000c8 e8 00 00 00 00 call _glfw_calloc
000cd 48 8b 8d 20 01
00 00 mov rcx, QWORD PTR window$[rbp]
000d4 48 89 81 b0 02
00 00 mov QWORD PTR [rcx+688], rax
; 53 : window->context.osmesa.width = width;
000db 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000e2 8b 4d 04 mov ecx, DWORD PTR width$5[rbp]
000e5 89 88 a8 02 00
00 mov DWORD PTR [rax+680], ecx
; 54 : window->context.osmesa.height = height;
000eb 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
000f2 8b 4d 24 mov ecx, DWORD PTR height$6[rbp]
000f5 89 88 ac 02 00
00 mov DWORD PTR [rax+684], ecx
$LN3@makeContex:
; 55 : }
; 56 :
; 57 : if (!OSMesaMakeCurrent(window->context.osmesa.handle,
000fb 8b 45 24 mov eax, DWORD PTR height$6[rbp]
000fe 89 44 24 20 mov DWORD PTR [rsp+32], eax
00102 44 8b 4d 04 mov r9d, DWORD PTR width$5[rbp]
00106 41 b8 01 14 00
00 mov r8d, 5121 ; 00001401H
0010c 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00113 48 8b 90 b0 02
00 00 mov rdx, QWORD PTR [rax+688]
0011a 48 8b 85 20 01
00 00 mov rax, QWORD PTR window$[rbp]
00121 48 8b 88 a0 02
00 00 mov rcx, QWORD PTR [rax+672]
00128 ff 15 00 1b 00
00 call QWORD PTR _glfw+6912
0012e 85 c0 test eax, eax
00130 75 13 jne SHORT $LN5@makeContex
; 58 : window->context.osmesa.buffer,
; 59 : GL_UNSIGNED_BYTE,
; 60 : width, height))
; 61 : {
; 62 : _glfwInputError(GLFW_PLATFORM_ERROR,
00132 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CH@CKFBCGDL@OSMesa?3?5Failed?5to?5make?5context?5@
00139 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
0013e e8 00 00 00 00 call _glfwInputError
; 63 : "OSMesa: Failed to make context current");
; 64 : return;
00143 eb 13 jmp SHORT $LN1@makeContex
$LN5@makeContex:
$LN2@makeContex:
; 65 : }
; 66 : }
; 67 :
; 68 : _glfwPlatformSetTls(&_glfw.contextSlot, window);
00145 48 8b 95 20 01
00 00 mov rdx, QWORD PTR window$[rbp]
0014c 48 8d 0d a4 19
00 00 lea rcx, OFFSET FLAT:_glfw+6564
00153 e8 00 00 00 00 call _glfwPlatformSetTls
$LN1@makeContex:
; 69 : }
00158 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
0015c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:makeContextCurrentOSMesa$rtcFrameData
00163 e8 00 00 00 00 call _RTC_CheckStackVars
00168 48 8b 8d f8 00
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
0016f 48 33 cd xor rcx, rbp
00172 e8 00 00 00 00 call __security_check_cookie
00177 48 8d a5 08 01
00 00 lea rsp, QWORD PTR [rbp+264]
0017e 5f pop rdi
0017f 5d pop rbp
00180 c3 ret 0
makeContextCurrentOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT _glfwCreateContextOSMesa
_TEXT SEGMENT
share$ = 8
accumBits$ = 36
index$4 = 68
attribs$5 = 112
__$ArrayPad$ = 472
window$ = 512
ctxconfig$ = 520
fbconfig$ = 528
_glfwCreateContextOSMesa PROC ; COMDAT
; 203 : {
$LN24:
00000 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
0000f 55 push rbp
00010 57 push rdi
00011 48 81 ec 18 02
00 00 sub rsp, 536 ; 00000218H
00018 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
0001d 48 8d 7c 24 30 lea rdi, QWORD PTR [rsp+48]
00022 b9 4a 00 00 00 mov ecx, 74 ; 0000004aH
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0002c f3 ab rep stosd
0002e 48 8b 8c 24 38
02 00 00 mov rcx, QWORD PTR [rsp+568]
00036 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0003d 48 33 c5 xor rax, rbp
00040 48 89 85 d8 01
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
00047 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__8EADBA0F_osmesa_context@c
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 204 : OSMesaContext share = NULL;
00053 48 c7 45 08 00
00 00 00 mov QWORD PTR share$[rbp], 0
; 205 : const int accumBits = fbconfig->accumRedBits +
0005b 48 8b 85 10 02
00 00 mov rax, QWORD PTR fbconfig$[rbp]
00062 8b 40 18 mov eax, DWORD PTR [rax+24]
00065 48 8b 8d 10 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
0006c 03 41 1c add eax, DWORD PTR [rcx+28]
0006f 48 8b 8d 10 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
00076 03 41 20 add eax, DWORD PTR [rcx+32]
00079 48 8b 8d 10 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
00080 03 41 24 add eax, DWORD PTR [rcx+36]
00083 89 45 24 mov DWORD PTR accumBits$[rbp], eax
; 206 : fbconfig->accumGreenBits +
; 207 : fbconfig->accumBlueBits +
; 208 : fbconfig->accumAlphaBits;
; 209 :
; 210 : if (ctxconfig->client == GLFW_OPENGL_ES_API)
00086 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0008d 81 38 02 00 03
00 cmp DWORD PTR [rax], 196610 ; 00030002H
00093 75 18 jne SHORT $LN2@glfwCreate
; 211 : {
; 212 : _glfwInputError(GLFW_API_UNAVAILABLE,
00095 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CN@JHECHMPF@OSMesa?3?5OpenGL?5ES?5is?5not?5availa@
0009c b9 06 00 01 00 mov ecx, 65542 ; 00010006H
000a1 e8 00 00 00 00 call _glfwInputError
; 213 : "OSMesa: OpenGL ES is not available on OSMesa");
; 214 : return GLFW_FALSE;
000a6 33 c0 xor eax, eax
000a8 e9 b8 04 00 00 jmp $LN1@glfwCreate
$LN2@glfwCreate:
; 215 : }
; 216 :
; 217 : if (ctxconfig->share)
000ad 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
000b4 48 83 78 28 00 cmp QWORD PTR [rax+40], 0
000b9 74 16 je SHORT $LN3@glfwCreate
; 218 : share = ctxconfig->share->context.osmesa.handle;
000bb 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
000c2 48 8b 40 28 mov rax, QWORD PTR [rax+40]
000c6 48 8b 80 a0 02
00 00 mov rax, QWORD PTR [rax+672]
000cd 48 89 45 08 mov QWORD PTR share$[rbp], rax
$LN3@glfwCreate:
; 219 :
; 220 : if (OSMesaCreateContextAttribs)
000d1 48 83 3d f0 1a
00 00 00 cmp QWORD PTR _glfw+6896, 0
000d9 0f 84 7a 03 00
00 je $LN4@glfwCreate
; 221 : {
; 222 : int index = 0, attribs[40];
000df c7 45 44 00 00
00 00 mov DWORD PTR index$4[rbp], 0
; 223 :
; 224 : SET_ATTRIB(OSMESA_FORMAT, OSMESA_RGBA);
000e6 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
000ea 48 ff c0 inc rax
000ed 48 83 f8 28 cmp rax, 40 ; 00000028H
000f1 72 1c jb SHORT $LN15@glfwCreate
000f3 41 b8 e0 00 00
00 mov r8d, 224 ; 000000e0H
000f9 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00100 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@
00107 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0010d 33 c0 xor eax, eax
$LN15@glfwCreate:
0010f 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00113 c7 44 85 70 22
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 34 ; 00000022H
0011b 8b 45 44 mov eax, DWORD PTR index$4[rbp]
0011e ff c0 inc eax
00120 89 45 44 mov DWORD PTR index$4[rbp], eax
00123 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00127 c7 44 85 70 08
19 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 6408 ; 00001908H
0012f 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00132 ff c0 inc eax
00134 89 45 44 mov DWORD PTR index$4[rbp], eax
; 225 : SET_ATTRIB(OSMESA_DEPTH_BITS, fbconfig->depthBits);
00137 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
0013b 48 ff c0 inc rax
0013e 48 83 f8 28 cmp rax, 40 ; 00000028H
00142 72 1c jb SHORT $LN16@glfwCreate
00144 41 b8 e1 00 00
00 mov r8d, 225 ; 000000e1H
0014a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00151 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@
00158 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0015e 33 c0 xor eax, eax
$LN16@glfwCreate:
00160 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00164 c7 44 85 70 30
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 48 ; 00000030H
0016c 8b 45 44 mov eax, DWORD PTR index$4[rbp]
0016f ff c0 inc eax
00171 89 45 44 mov DWORD PTR index$4[rbp], eax
00174 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00178 48 8b 8d 10 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
0017f 8b 49 10 mov ecx, DWORD PTR [rcx+16]
00182 89 4c 85 70 mov DWORD PTR attribs$5[rbp+rax*4], ecx
00186 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00189 ff c0 inc eax
0018b 89 45 44 mov DWORD PTR index$4[rbp], eax
; 226 : SET_ATTRIB(OSMESA_STENCIL_BITS, fbconfig->stencilBits);
0018e 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00192 48 ff c0 inc rax
00195 48 83 f8 28 cmp rax, 40 ; 00000028H
00199 72 1c jb SHORT $LN17@glfwCreate
0019b 41 b8 e2 00 00
00 mov r8d, 226 ; 000000e2H
001a1 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
001a8 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@
001af ff 15 00 00 00
00 call QWORD PTR __imp__wassert
001b5 33 c0 xor eax, eax
$LN17@glfwCreate:
001b7 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
001bb c7 44 85 70 31
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 49 ; 00000031H
001c3 8b 45 44 mov eax, DWORD PTR index$4[rbp]
001c6 ff c0 inc eax
001c8 89 45 44 mov DWORD PTR index$4[rbp], eax
001cb 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
001cf 48 8b 8d 10 02
00 00 mov rcx, QWORD PTR fbconfig$[rbp]
001d6 8b 49 14 mov ecx, DWORD PTR [rcx+20]
001d9 89 4c 85 70 mov DWORD PTR attribs$5[rbp+rax*4], ecx
001dd 8b 45 44 mov eax, DWORD PTR index$4[rbp]
001e0 ff c0 inc eax
001e2 89 45 44 mov DWORD PTR index$4[rbp], eax
; 227 : SET_ATTRIB(OSMESA_ACCUM_BITS, accumBits);
001e5 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
001e9 48 ff c0 inc rax
001ec 48 83 f8 28 cmp rax, 40 ; 00000028H
001f0 72 1c jb SHORT $LN18@glfwCreate
001f2 41 b8 e3 00 00
00 mov r8d, 227 ; 000000e3H
001f8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
001ff 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@
00206 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0020c 33 c0 xor eax, eax
$LN18@glfwCreate:
0020e 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00212 c7 44 85 70 32
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 50 ; 00000032H
0021a 8b 45 44 mov eax, DWORD PTR index$4[rbp]
0021d ff c0 inc eax
0021f 89 45 44 mov DWORD PTR index$4[rbp], eax
00222 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00226 8b 4d 24 mov ecx, DWORD PTR accumBits$[rbp]
00229 89 4c 85 70 mov DWORD PTR attribs$5[rbp+rax*4], ecx
0022d 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00230 ff c0 inc eax
00232 89 45 44 mov DWORD PTR index$4[rbp], eax
; 228 :
; 229 : if (ctxconfig->profile == GLFW_OPENGL_CORE_PROFILE)
00235 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0023c 81 78 1c 01 20
03 00 cmp DWORD PTR [rax+28], 204801 ; 00032001H
00243 75 53 jne SHORT $LN6@glfwCreate
; 230 : {
; 231 : SET_ATTRIB(OSMESA_PROFILE, OSMESA_CORE_PROFILE);
00245 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00249 48 ff c0 inc rax
0024c 48 83 f8 28 cmp rax, 40 ; 00000028H
00250 72 1c jb SHORT $LN19@glfwCreate
00252 41 b8 e7 00 00
00 mov r8d, 231 ; 000000e7H
00258 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
0025f 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@
00266 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0026c 33 c0 xor eax, eax
$LN19@glfwCreate:
0026e 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00272 c7 44 85 70 33
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 51 ; 00000033H
0027a 8b 45 44 mov eax, DWORD PTR index$4[rbp]
0027d ff c0 inc eax
0027f 89 45 44 mov DWORD PTR index$4[rbp], eax
00282 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00286 c7 44 85 70 34
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 52 ; 00000034H
0028e 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00291 ff c0 inc eax
00293 89 45 44 mov DWORD PTR index$4[rbp], eax
; 232 : }
00296 eb 61 jmp SHORT $LN7@glfwCreate
$LN6@glfwCreate:
; 233 : else if (ctxconfig->profile == GLFW_OPENGL_COMPAT_PROFILE)
00298 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0029f 81 78 1c 02 20
03 00 cmp DWORD PTR [rax+28], 204802 ; 00032002H
002a6 75 51 jne SHORT $LN8@glfwCreate
; 234 : {
; 235 : SET_ATTRIB(OSMESA_PROFILE, OSMESA_COMPAT_PROFILE);
002a8 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
002ac 48 ff c0 inc rax
002af 48 83 f8 28 cmp rax, 40 ; 00000028H
002b3 72 1c jb SHORT $LN20@glfwCreate
002b5 41 b8 eb 00 00
00 mov r8d, 235 ; 000000ebH
002bb 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
002c2 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@
002c9 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
002cf 33 c0 xor eax, eax
$LN20@glfwCreate:
002d1 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
002d5 c7 44 85 70 33
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 51 ; 00000033H
002dd 8b 45 44 mov eax, DWORD PTR index$4[rbp]
002e0 ff c0 inc eax
002e2 89 45 44 mov DWORD PTR index$4[rbp], eax
002e5 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
002e9 c7 44 85 70 35
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 53 ; 00000035H
002f1 8b 45 44 mov eax, DWORD PTR index$4[rbp]
002f4 ff c0 inc eax
002f6 89 45 44 mov DWORD PTR index$4[rbp], eax
$LN8@glfwCreate:
$LN7@glfwCreate:
; 236 : }
; 237 :
; 238 : if (ctxconfig->major != 1 || ctxconfig->minor != 0)
002f9 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00300 83 78 08 01 cmp DWORD PTR [rax+8], 1
00304 75 11 jne SHORT $LN10@glfwCreate
00306 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
0030d 83 78 0c 00 cmp DWORD PTR [rax+12], 0
00311 0f 84 ae 00 00
00 je $LN9@glfwCreate
$LN10@glfwCreate:
; 239 : {
; 240 : SET_ATTRIB(OSMESA_CONTEXT_MAJOR_VERSION, ctxconfig->major);
00317 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
0031b 48 ff c0 inc rax
0031e 48 83 f8 28 cmp rax, 40 ; 00000028H
00322 72 1c jb SHORT $LN21@glfwCreate
00324 41 b8 f0 00 00
00 mov r8d, 240 ; 000000f0H
0032a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00331 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@
00338 ff 15 00 00 00
00 call QWORD PTR __imp__wassert
0033e 33 c0 xor eax, eax
$LN21@glfwCreate:
00340 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00344 c7 44 85 70 36
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 54 ; 00000036H
0034c 8b 45 44 mov eax, DWORD PTR index$4[rbp]
0034f ff c0 inc eax
00351 89 45 44 mov DWORD PTR index$4[rbp], eax
00354 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00358 48 8b 8d 08 02
00 00 mov rcx, QWORD PTR ctxconfig$[rbp]
0035f 8b 49 08 mov ecx, DWORD PTR [rcx+8]
00362 89 4c 85 70 mov DWORD PTR attribs$5[rbp+rax*4], ecx
00366 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00369 ff c0 inc eax
0036b 89 45 44 mov DWORD PTR index$4[rbp], eax
; 241 : SET_ATTRIB(OSMESA_CONTEXT_MINOR_VERSION, ctxconfig->minor);
0036e 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00372 48 ff c0 inc rax
00375 48 83 f8 28 cmp rax, 40 ; 00000028H
00379 72 1c jb SHORT $LN22@glfwCreate
0037b 41 b8 f1 00 00
00 mov r8d, 241 ; 000000f1H
00381 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00388 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@
0038f ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00395 33 c0 xor eax, eax
$LN22@glfwCreate:
00397 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
0039b c7 44 85 70 37
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 55 ; 00000037H
003a3 8b 45 44 mov eax, DWORD PTR index$4[rbp]
003a6 ff c0 inc eax
003a8 89 45 44 mov DWORD PTR index$4[rbp], eax
003ab 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
003af 48 8b 8d 08 02
00 00 mov rcx, QWORD PTR ctxconfig$[rbp]
003b6 8b 49 0c mov ecx, DWORD PTR [rcx+12]
003b9 89 4c 85 70 mov DWORD PTR attribs$5[rbp+rax*4], ecx
003bd 8b 45 44 mov eax, DWORD PTR index$4[rbp]
003c0 ff c0 inc eax
003c2 89 45 44 mov DWORD PTR index$4[rbp], eax
$LN9@glfwCreate:
; 242 : }
; 243 :
; 244 : if (ctxconfig->forward)
003c5 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
003cc 83 78 10 00 cmp DWORD PTR [rax+16], 0
003d0 74 18 je SHORT $LN11@glfwCreate
; 245 : {
; 246 : _glfwInputError(GLFW_VERSION_UNAVAILABLE,
003d2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DC@KKLJAJOK@OSMesa?3?5Forward?9compatible?5cont@
003d9 b9 07 00 01 00 mov ecx, 65543 ; 00010007H
003de e8 00 00 00 00 call _glfwInputError
; 247 : "OSMesa: Forward-compatible contexts not supported");
; 248 : return GLFW_FALSE;
003e3 33 c0 xor eax, eax
003e5 e9 7b 01 00 00 jmp $LN1@glfwCreate
$LN11@glfwCreate:
; 249 : }
; 250 :
; 251 : SET_ATTRIB(0, 0);
003ea 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
003ee 48 ff c0 inc rax
003f1 48 83 f8 28 cmp rax, 40 ; 00000028H
003f5 72 1c jb SHORT $LN23@glfwCreate
003f7 41 b8 fb 00 00
00 mov r8d, 251 ; 000000fbH
003fd 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_1MK@NFOPCBIP@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@
00404 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@
0040b ff 15 00 00 00
00 call QWORD PTR __imp__wassert
00411 33 c0 xor eax, eax
$LN23@glfwCreate:
00413 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
00417 c7 44 85 70 00
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 0
0041f 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00422 ff c0 inc eax
00424 89 45 44 mov DWORD PTR index$4[rbp], eax
00427 48 63 45 44 movsxd rax, DWORD PTR index$4[rbp]
0042b c7 44 85 70 00
00 00 00 mov DWORD PTR attribs$5[rbp+rax*4], 0
00433 8b 45 44 mov eax, DWORD PTR index$4[rbp]
00436 ff c0 inc eax
00438 89 45 44 mov DWORD PTR index$4[rbp], eax
; 252 :
; 253 : window->context.osmesa.handle =
0043b 48 8b 55 08 mov rdx, QWORD PTR share$[rbp]
0043f 48 8d 4d 70 lea rcx, QWORD PTR attribs$5[rbp]
00443 ff 15 f0 1a 00
00 call QWORD PTR _glfw+6896
00449 48 8b 8d 00 02
00 00 mov rcx, QWORD PTR window$[rbp]
00450 48 89 81 a0 02
00 00 mov QWORD PTR [rcx+672], rax
; 254 : OSMesaCreateContextAttribs(attribs, share);
; 255 : }
00457 eb 60 jmp SHORT $LN5@glfwCreate
$LN4@glfwCreate:
; 256 : else
; 257 : {
; 258 : if (ctxconfig->profile)
00459 48 8b 85 08 02
00 00 mov rax, QWORD PTR ctxconfig$[rbp]
00460 83 78 1c 00 cmp DWORD PTR [rax+28], 0
00464 74 18 je SHORT $LN12@glfwCreate
; 259 : {
; 260 : _glfwInputError(GLFW_VERSION_UNAVAILABLE,
00466 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CE@OJEBIEPE@OSMesa?3?5OpenGL?5profiles?5unavail@
0046d b9 07 00 01 00 mov ecx, 65543 ; 00010007H
00472 e8 00 00 00 00 call _glfwInputError
; 261 : "OSMesa: OpenGL profiles unavailable");
; 262 : return GLFW_FALSE;
00477 33 c0 xor eax, eax
00479 e9 e7 00 00 00 jmp $LN1@glfwCreate
$LN12@glfwCreate:
; 263 : }
; 264 :
; 265 : window->context.osmesa.handle =
0047e 48 8b 45 08 mov rax, QWORD PTR share$[rbp]
00482 48 89 44 24 20 mov QWORD PTR [rsp+32], rax
00487 44 8b 4d 24 mov r9d, DWORD PTR accumBits$[rbp]
0048b 48 8b 85 10 02
00 00 mov rax, QWORD PTR fbconfig$[rbp]
00492 44 8b 40 14 mov r8d, DWORD PTR [rax+20]
00496 48 8b 85 10 02
00 00 mov rax, QWORD PTR fbconfig$[rbp]
0049d 8b 50 10 mov edx, DWORD PTR [rax+16]
004a0 b9 08 19 00 00 mov ecx, 6408 ; 00001908H
004a5 ff 15 e8 1a 00
00 call QWORD PTR _glfw+6888
004ab 48 8b 8d 00 02
00 00 mov rcx, QWORD PTR window$[rbp]
004b2 48 89 81 a0 02
00 00 mov QWORD PTR [rcx+672], rax
$LN5@glfwCreate:
; 266 : OSMesaCreateContextExt(OSMESA_RGBA,
; 267 : fbconfig->depthBits,
; 268 : fbconfig->stencilBits,
; 269 : accumBits,
; 270 : share);
; 271 : }
; 272 :
; 273 : if (window->context.osmesa.handle == NULL)
004b9 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
004c0 48 83 b8 a0 02
00 00 00 cmp QWORD PTR [rax+672], 0
004c8 75 18 jne SHORT $LN13@glfwCreate
; 274 : {
; 275 : _glfwInputError(GLFW_VERSION_UNAVAILABLE,
004ca 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CB@LDOHHBIH@OSMesa?3?5Failed?5to?5create?5contex@
004d1 b9 07 00 01 00 mov ecx, 65543 ; 00010007H
004d6 e8 00 00 00 00 call _glfwInputError
; 276 : "OSMesa: Failed to create context");
; 277 : return GLFW_FALSE;
004db 33 c0 xor eax, eax
004dd e9 83 00 00 00 jmp $LN1@glfwCreate
$LN13@glfwCreate:
; 278 : }
; 279 :
; 280 : window->context.makeCurrent = makeContextCurrentOSMesa;
004e2 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
004e9 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:makeContextCurrentOSMesa
004f0 48 89 88 50 02
00 00 mov QWORD PTR [rax+592], rcx
; 281 : window->context.swapBuffers = swapBuffersOSMesa;
004f7 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
004fe 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:swapBuffersOSMesa
00505 48 89 88 58 02
00 00 mov QWORD PTR [rax+600], rcx
; 282 : window->context.swapInterval = swapIntervalOSMesa;
0050c 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
00513 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:swapIntervalOSMesa
0051a 48 89 88 60 02
00 00 mov QWORD PTR [rax+608], rcx
; 283 : window->context.extensionSupported = extensionSupportedOSMesa;
00521 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
00528 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:extensionSupportedOSMesa
0052f 48 89 88 68 02
00 00 mov QWORD PTR [rax+616], rcx
; 284 : window->context.getProcAddress = getProcAddressOSMesa;
00536 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
0053d 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:getProcAddressOSMesa
00544 48 89 88 70 02
00 00 mov QWORD PTR [rax+624], rcx
; 285 : window->context.destroy = destroyContextOSMesa;
0054b 48 8b 85 00 02
00 00 mov rax, QWORD PTR window$[rbp]
00552 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:destroyContextOSMesa
00559 48 89 88 78 02
00 00 mov QWORD PTR [rax+632], rcx
; 286 :
; 287 : return GLFW_TRUE;
00560 b8 01 00 00 00 mov eax, 1
$LN1@glfwCreate:
; 288 : }
00565 48 8b f8 mov rdi, rax
00568 48 8d 4d d0 lea rcx, QWORD PTR [rbp-48]
0056c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwCreateContextOSMesa$rtcFrameData
00573 e8 00 00 00 00 call _RTC_CheckStackVars
00578 48 8b c7 mov rax, rdi
0057b 48 8b 8d d8 01
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
00582 48 33 cd xor rcx, rbp
00585 e8 00 00 00 00 call __security_check_cookie
0058a 48 8d a5 e8 01
00 00 lea rsp, QWORD PTR [rbp+488]
00591 5f pop rdi
00592 5d pop rbp
00593 c3 ret 0
_glfwCreateContextOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT _glfwTerminateOSMesa
_TEXT SEGMENT
_glfwTerminateOSMesa PROC ; COMDAT
; 185 : {
$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:__8EADBA0F_osmesa_context@c
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 186 : if (_glfw.osmesa.handle)
0001b 48 83 3d e0 1a
00 00 00 cmp QWORD PTR _glfw+6880, 0
00023 74 17 je SHORT $LN2@glfwTermin
; 187 : {
; 188 : _glfwPlatformFreeModule(_glfw.osmesa.handle);
00025 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
0002c e8 00 00 00 00 call _glfwPlatformFreeModule
; 189 : _glfw.osmesa.handle = NULL;
00031 48 c7 05 e0 1a
00 00 00 00 00
00 mov QWORD PTR _glfw+6880, 0
$LN2@glfwTermin:
; 190 : }
; 191 : }
0003c 48 8d a5 c8 00
00 00 lea rsp, QWORD PTR [rbp+200]
00043 5f pop rdi
00044 5d pop rbp
00045 c3 ret 0
_glfwTerminateOSMesa ENDP
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu /ZI
; File D:\NitloadIndustry\�о���Ŀ\1-Flagship\TH2020\ProjectFile\Դ����\StgSharpGraphic\code\glfw\osmesa_context.c
; COMDAT _glfwInitOSMesa
_TEXT SEGMENT
i$ = 4
sonames$ = 40
_glfwInitOSMesa PROC ; COMDAT
; 114 : {
$LN11:
00000 40 55 push rbp
00002 57 push rdi
00003 48 81 ec 38 01
00 00 sub rsp, 312 ; 00000138H
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 16 00 00 00 mov ecx, 22
00019 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
0001e f3 ab rep stosd
00020 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:__8EADBA0F_osmesa_context@c
00027 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
; 115 : int i;
; 116 : const char* sonames[] =
0002c 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0O@DJDONBGH@libOSMesa?4dll@
00033 48 89 45 28 mov QWORD PTR sonames$[rbp], rax
00037 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0L@GICFCFGJ@OSMesa?4dll@
0003e 48 89 45 30 mov QWORD PTR sonames$[rbp+8], rax
00042 48 c7 45 38 00
00 00 00 mov QWORD PTR sonames$[rbp+16], 0
; 117 : {
; 118 : #if defined(_GLFW_OSMESA_LIBRARY)
; 119 : _GLFW_OSMESA_LIBRARY,
; 120 : #elif defined(_WIN32)
; 121 : "libOSMesa.dll",
; 122 : "OSMesa.dll",
; 123 : #elif defined(__APPLE__)
; 124 : "libOSMesa.8.dylib",
; 125 : #elif defined(__CYGWIN__)
; 126 : "libOSMesa-8.so",
; 127 : #elif defined(__OpenBSD__) || defined(__NetBSD__)
; 128 : "libOSMesa.so",
; 129 : #else
; 130 : "libOSMesa.so.8",
; 131 : "libOSMesa.so.6",
; 132 : #endif
; 133 : NULL
; 134 : };
; 135 :
; 136 : if (_glfw.osmesa.handle)
0004a 48 83 3d e0 1a
00 00 00 cmp QWORD PTR _glfw+6880, 0
00052 74 0a je SHORT $LN5@glfwInitOS
; 137 : return GLFW_TRUE;
00054 b8 01 00 00 00 mov eax, 1
00059 e9 73 01 00 00 jmp $LN1@glfwInitOS
$LN5@glfwInitOS:
; 138 :
; 139 : for (i = 0; sonames[i]; i++)
0005e c7 45 04 00 00
00 00 mov DWORD PTR i$[rbp], 0
00065 eb 08 jmp SHORT $LN4@glfwInitOS
$LN2@glfwInitOS:
00067 8b 45 04 mov eax, DWORD PTR i$[rbp]
0006a ff c0 inc eax
0006c 89 45 04 mov DWORD PTR i$[rbp], eax
$LN4@glfwInitOS:
0006f 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
00073 48 83 7c c5 28
00 cmp QWORD PTR sonames$[rbp+rax*8], 0
00079 74 23 je SHORT $LN3@glfwInitOS
; 140 : {
; 141 : _glfw.osmesa.handle = _glfwPlatformLoadModule(sonames[i]);
0007b 48 63 45 04 movsxd rax, DWORD PTR i$[rbp]
0007f 48 8b 4c c5 28 mov rcx, QWORD PTR sonames$[rbp+rax*8]
00084 e8 00 00 00 00 call _glfwPlatformLoadModule
00089 48 89 05 e0 1a
00 00 mov QWORD PTR _glfw+6880, rax
; 142 : if (_glfw.osmesa.handle)
00090 48 83 3d e0 1a
00 00 00 cmp QWORD PTR _glfw+6880, 0
00098 74 02 je SHORT $LN6@glfwInitOS
; 143 : break;
0009a eb 02 jmp SHORT $LN3@glfwInitOS
$LN6@glfwInitOS:
; 144 : }
0009c eb c9 jmp SHORT $LN2@glfwInitOS
$LN3@glfwInitOS:
; 145 :
; 146 : if (!_glfw.osmesa.handle)
0009e 48 83 3d e0 1a
00 00 00 cmp QWORD PTR _glfw+6880, 0
000a6 75 18 jne SHORT $LN7@glfwInitOS
; 147 : {
; 148 : _glfwInputError(GLFW_API_UNAVAILABLE, "OSMesa: Library not found");
000a8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BK@MLLMMLGE@OSMesa?3?5Library?5not?5found@
000af b9 06 00 01 00 mov ecx, 65542 ; 00010006H
000b4 e8 00 00 00 00 call _glfwInputError
; 149 : return GLFW_FALSE;
000b9 33 c0 xor eax, eax
000bb e9 11 01 00 00 jmp $LN1@glfwInitOS
$LN7@glfwInitOS:
; 150 : }
; 151 :
; 152 : _glfw.osmesa.CreateContextExt = (PFN_OSMesaCreateContextExt)
000c0 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BH@IPANDFMH@OSMesaCreateContextExt@
000c7 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
000ce e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
000d3 48 89 05 e8 1a
00 00 mov QWORD PTR _glfw+6888, rax
; 153 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaCreateContextExt");
; 154 : _glfw.osmesa.CreateContextAttribs = (PFN_OSMesaCreateContextAttribs)
000da 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BL@MIAEELOL@OSMesaCreateContextAttribs@
000e1 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
000e8 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
000ed 48 89 05 f0 1a
00 00 mov QWORD PTR _glfw+6896, rax
; 155 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaCreateContextAttribs");
; 156 : _glfw.osmesa.DestroyContext = (PFN_OSMesaDestroyContext)
000f4 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@OOKNCFMF@OSMesaDestroyContext@
000fb 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
00102 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00107 48 89 05 f8 1a
00 00 mov QWORD PTR _glfw+6904, rax
; 157 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaDestroyContext");
; 158 : _glfw.osmesa.MakeCurrent = (PFN_OSMesaMakeCurrent)
0010e 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BC@HEACFLN@OSMesaMakeCurrent@
00115 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
0011c e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00121 48 89 05 00 1b
00 00 mov QWORD PTR _glfw+6912, rax
; 159 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaMakeCurrent");
; 160 : _glfw.osmesa.GetColorBuffer = (PFN_OSMesaGetColorBuffer)
00128 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@HHLAJKBF@OSMesaGetColorBuffer@
0012f 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
00136 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
0013b 48 89 05 08 1b
00 00 mov QWORD PTR _glfw+6920, rax
; 161 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaGetColorBuffer");
; 162 : _glfw.osmesa.GetDepthBuffer = (PFN_OSMesaGetDepthBuffer)
00142 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@BPPLLLDH@OSMesaGetDepthBuffer@
00149 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
00150 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
00155 48 89 05 10 1b
00 00 mov QWORD PTR _glfw+6928, rax
; 163 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaGetDepthBuffer");
; 164 : _glfw.osmesa.GetProcAddress = (PFN_OSMesaGetProcAddress)
0015c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@INJHJNOL@OSMesaGetProcAddress@
00163 48 8b 0d e0 1a
00 00 mov rcx, QWORD PTR _glfw+6880
0016a e8 00 00 00 00 call _glfwPlatformGetModuleSymbol
0016f 48 89 05 18 1b
00 00 mov QWORD PTR _glfw+6936, rax
; 165 : _glfwPlatformGetModuleSymbol(_glfw.osmesa.handle, "OSMesaGetProcAddress");
; 166 :
; 167 : if (!_glfw.osmesa.CreateContextExt ||
; 168 : !_glfw.osmesa.DestroyContext ||
; 169 : !_glfw.osmesa.MakeCurrent ||
; 170 : !_glfw.osmesa.GetColorBuffer ||
; 171 : !_glfw.osmesa.GetDepthBuffer ||
00176 48 83 3d e8 1a
00 00 00 cmp QWORD PTR _glfw+6888, 0
0017e 74 32 je SHORT $LN9@glfwInitOS
00180 48 83 3d f8 1a
00 00 00 cmp QWORD PTR _glfw+6904, 0
00188 74 28 je SHORT $LN9@glfwInitOS
0018a 48 83 3d 00 1b
00 00 00 cmp QWORD PTR _glfw+6912, 0
00192 74 1e je SHORT $LN9@glfwInitOS
00194 48 83 3d 08 1b
00 00 00 cmp QWORD PTR _glfw+6920, 0
0019c 74 14 je SHORT $LN9@glfwInitOS
0019e 48 83 3d 10 1b
00 00 00 cmp QWORD PTR _glfw+6928, 0
001a6 74 0a je SHORT $LN9@glfwInitOS
001a8 48 83 3d 18 1b
00 00 00 cmp QWORD PTR _glfw+6936, 0
001b0 75 1a jne SHORT $LN8@glfwInitOS
$LN9@glfwInitOS:
; 172 : !_glfw.osmesa.GetProcAddress)
; 173 : {
; 174 : _glfwInputError(GLFW_PLATFORM_ERROR,
001b2 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CN@PEBHJDOE@OSMesa?3?5Failed?5to?5load?5required@
001b9 b9 08 00 01 00 mov ecx, 65544 ; 00010008H
001be e8 00 00 00 00 call _glfwInputError
; 175 : "OSMesa: Failed to load required entry points");
; 176 :
; 177 : _glfwTerminateOSMesa();
001c3 e8 00 00 00 00 call _glfwTerminateOSMesa
; 178 : return GLFW_FALSE;
001c8 33 c0 xor eax, eax
001ca eb 05 jmp SHORT $LN1@glfwInitOS
$LN8@glfwInitOS:
; 179 : }
; 180 :
; 181 : return GLFW_TRUE;
001cc b8 01 00 00 00 mov eax, 1
$LN1@glfwInitOS:
; 182 : }
001d1 48 8b f8 mov rdi, rax
001d4 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
001d8 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:_glfwInitOSMesa$rtcFrameData
001df e8 00 00 00 00 call _RTC_CheckStackVars
001e4 48 8b c7 mov rax, rdi
001e7 48 8d a5 18 01
00 00 lea rsp, QWORD PTR [rbp+280]
001ee 5f pop rdi
001ef 5d pop rbp
001f0 c3 ret 0
_glfwInitOSMesa ENDP
_TEXT ENDS
END