1347 lines
35 KiB
Plaintext
1347 lines
35 KiB
Plaintext
; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33519.0
|
|
|
|
include listing.inc
|
|
|
|
INCLUDELIB MSVCRTD
|
|
INCLUDELIB OLDNAMES
|
|
|
|
PUBLIC infolog
|
|
_BSS SEGMENT
|
|
infolog DQ 0200H DUP (?)
|
|
_BSS ENDS
|
|
_DATA SEGMENT
|
|
COMM currentContext:QWORD
|
|
_DATA ENDS
|
|
msvcjmc SEGMENT
|
|
__0ED14FEE_winpackagefamily@h DB 01H
|
|
__F92EF742_winapifamily@h DB 01H
|
|
__22E515EB_sdkddkver@h DB 01H
|
|
__4B783B3C_concurrencysal@h DB 01H
|
|
__137BB1BE_sal@h DB 01H
|
|
__805F4069_vadefs@h DB 01H
|
|
__1EAACA9B_vcruntime@h DB 01H
|
|
__1227BCE2_excpt@h DB 01H
|
|
__CC8D90C0_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
|
|
__1B0272D9_corecrt@h DB 01H
|
|
__74484FB3_corecrt_wctype@h DB 01H
|
|
__1EC467ED_ctype@h DB 01H
|
|
__98517906_kernelspecs@h DB 01H
|
|
__D3497022_basetsd@h DB 01H
|
|
__61CC25A1_errno@h DB 01H
|
|
__0504B279_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
|
|
__FA48C214_ssgc_framework@h DB 01H
|
|
__F8522E0F_stdint@h DB 01H
|
|
__761E84A4_KHRplatform@h DB 01H
|
|
__D5035E09_glad_gl@h DB 01H
|
|
__13F5961F_stddef@h DB 01H
|
|
__6C418DCA_ssgc_internal@h DB 01H
|
|
__8E16B543_glfw3@h DB 01H
|
|
__58BCF33E_glad_wgl@h DB 01H
|
|
__5BC5AF51_mmintrin@h DB 01H
|
|
__45DED006_corecrt_malloc@h DB 01H
|
|
__FA77ED4C_malloc@h DB 01H
|
|
__9E7FA6CF_xmmintrin@h DB 01H
|
|
__FB1D2F03_emmintrin@h DB 01H
|
|
__24BC478A_pmmintrin@h DB 01H
|
|
__94653408_tmmintrin@h DB 01H
|
|
__BD5E218B_smmintrin@h DB 01H
|
|
__D83CA847_nmmintrin@h DB 01H
|
|
__0D875209_wmmintrin@h DB 01H
|
|
__C6131F0E_zmmintrin@h DB 01H
|
|
__F107BDC4_immintrin@h DB 01H
|
|
__44420885_corecrt_stdio_config@h DB 01H
|
|
__AB601D8D_corecrt_wstdio@h DB 01H
|
|
__C1EC35D3_stdio@h DB 01H
|
|
__FD6DBD68_corecrt_search@h DB 01H
|
|
__E2E33A61_corecrt_wstdlib@h DB 01H
|
|
__46240030_limits@h DB 01H
|
|
__6E5ACABA_stdlib@h DB 01H
|
|
__A27F041F_stb_image@h DB 01H
|
|
__3E20A821_StgSharpC@h DB 01H
|
|
__906F587E_StgSharpC@c DB 01H
|
|
msvcjmc ENDS
|
|
PUBLIC __local_stdio_printf_options
|
|
PUBLIC _vfprintf_l
|
|
PUBLIC printf
|
|
PUBLIC printShaderCode
|
|
PUBLIC initGL
|
|
PUBLIC loadShaderCode
|
|
PUBLIC linkShaderProgram
|
|
PUBLIC loadImageData
|
|
PUBLIC unloadImageData
|
|
PUBLIC readLog
|
|
PUBLIC FrameBufferSizeCallback
|
|
PUBLIC main
|
|
PUBLIC __JustMyCode_Default
|
|
PUBLIC ??_C@_0N@GKNDDPDN@Test?5Context@ ; `string'
|
|
PUBLIC __real@3e99999a
|
|
PUBLIC __real@3f000000
|
|
PUBLIC __real@3f19999a
|
|
PUBLIC __real@3f800000
|
|
EXTRN gladLoadGLContext:PROC
|
|
EXTRN glfwInit:PROC
|
|
EXTRN glfwWindowHint:PROC
|
|
EXTRN glfwCreateWindow:PROC
|
|
EXTRN glfwWindowShouldClose:PROC
|
|
EXTRN glfwSetFramebufferSizeCallback:PROC
|
|
EXTRN glfwPollEvents:PROC
|
|
EXTRN glfwMakeContextCurrent:PROC
|
|
EXTRN glfwSwapBuffers:PROC
|
|
EXTRN glfwGetProcAddress:PROC
|
|
EXTRN __imp_free:PROC
|
|
EXTRN __imp_malloc:PROC
|
|
EXTRN __imp___acrt_iob_func:PROC
|
|
EXTRN __imp___stdio_common_vfprintf:PROC
|
|
EXTRN stbi_load: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 __security_cookie:QWORD
|
|
EXTRN _fltused:DWORD
|
|
_DATA SEGMENT
|
|
COMM ?_OptionsStorage@?1??__local_stdio_printf_options@@9@9:QWORD ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
|
_DATA ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$__local_stdio_printf_options DD imagerel $LN3
|
|
DD imagerel $LN3+44
|
|
DD imagerel $unwind$__local_stdio_printf_options
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$_vfprintf_l DD imagerel $LN3
|
|
DD imagerel $LN3+103
|
|
DD imagerel $unwind$_vfprintf_l
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$printf DD imagerel $LN3
|
|
DD imagerel $LN3+191
|
|
DD imagerel $unwind$printf
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$printShaderCode DD imagerel $LN3
|
|
DD imagerel $LN3+56
|
|
DD imagerel $unwind$printShaderCode
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$initGL DD imagerel $LN3
|
|
DD imagerel $LN3+96
|
|
DD imagerel $unwind$initGL
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$loadShaderCode DD imagerel $LN7
|
|
DD imagerel $LN7+317
|
|
DD imagerel $unwind$loadShaderCode
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$linkShaderProgram DD imagerel $LN5
|
|
DD imagerel $LN5+223
|
|
DD imagerel $unwind$linkShaderProgram
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$loadImageData DD imagerel $LN4
|
|
DD imagerel $LN4+142
|
|
DD imagerel $unwind$loadImageData
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$unloadImageData DD imagerel $LN3
|
|
DD imagerel $LN3+58
|
|
DD imagerel $unwind$unloadImageData
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$readLog DD imagerel $LN3
|
|
DD imagerel $LN3+71
|
|
DD imagerel $unwind$readLog
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$FrameBufferSizeCallback DD imagerel $LN3
|
|
DD imagerel $LN3+85
|
|
DD imagerel $unwind$FrameBufferSizeCallback
|
|
pdata ENDS
|
|
; COMDAT pdata
|
|
pdata SEGMENT
|
|
$pdata$main DD imagerel $LN5
|
|
DD imagerel $LN5+281
|
|
DD imagerel $unwind$main
|
|
pdata ENDS
|
|
; COMDAT __real@3f800000
|
|
CONST SEGMENT
|
|
__real@3f800000 DD 03f800000r ; 1
|
|
CONST ENDS
|
|
; COMDAT __real@3f19999a
|
|
CONST SEGMENT
|
|
__real@3f19999a DD 03f19999ar ; 0.6
|
|
CONST ENDS
|
|
; COMDAT __real@3f000000
|
|
CONST SEGMENT
|
|
__real@3f000000 DD 03f000000r ; 0.5
|
|
CONST ENDS
|
|
; COMDAT __real@3e99999a
|
|
CONST SEGMENT
|
|
__real@3e99999a DD 03e99999ar ; 0.3
|
|
CONST ENDS
|
|
; COMDAT rtc$TMZ
|
|
rtc$TMZ SEGMENT
|
|
_RTC_Shutdown.rtc$TMZ DQ FLAT:_RTC_Shutdown
|
|
rtc$TMZ ENDS
|
|
; COMDAT rtc$IMZ
|
|
rtc$IMZ SEGMENT
|
|
_RTC_InitBase.rtc$IMZ DQ FLAT:_RTC_InitBase
|
|
rtc$IMZ ENDS
|
|
; COMDAT ??_C@_0N@GKNDDPDN@Test?5Context@
|
|
CONST SEGMENT
|
|
??_C@_0N@GKNDDPDN@Test?5Context@ DB 'Test Context', 00H ; `string'
|
|
CONST ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$main DD 035050f01H
|
|
DD 010a330fH
|
|
DD 070030023H
|
|
DD 05002H
|
|
xdata ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$FrameBufferSizeCallback DD 025052001H
|
|
DD 011b2320H
|
|
DD 07014001dH
|
|
DD 05013H
|
|
xdata ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$readLog DD 025050f01H
|
|
DD 010a230fH
|
|
DD 07003001dH
|
|
DD 05002H
|
|
xdata ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$unloadImageData DD 025051301H
|
|
DD 010e2313H
|
|
DD 07007001dH
|
|
DD 05006H
|
|
xdata ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$loadImageData DD 035051d01H
|
|
DD 0118331dH
|
|
DD 07011001fH
|
|
DD 05010H
|
|
xdata ENDS
|
|
; COMDAT voltbl
|
|
voltbl SEGMENT
|
|
_volmd DB 03aH
|
|
DB 0c6H
|
|
voltbl ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$linkShaderProgram DD 025054119H
|
|
DD 01122317H
|
|
DD 0700b0021H
|
|
DD 0500aH
|
|
DD imagerel __GSHandlerCheck
|
|
DD 0f8H
|
|
xdata ENDS
|
|
; COMDAT CONST
|
|
CONST SEGMENT
|
|
linkShaderProgram$rtcName$0 DB 073H
|
|
DB 075H
|
|
DB 063H
|
|
DB 063H
|
|
DB 065H
|
|
DB 073H
|
|
DB 073H
|
|
DB 00H
|
|
ORG $+8
|
|
linkShaderProgram$rtcVarDesc DD 024H
|
|
DD 04H
|
|
DQ FLAT:linkShaderProgram$rtcName$0
|
|
ORG $+48
|
|
linkShaderProgram$rtcFrameData DD 01H
|
|
DD 00H
|
|
DQ FLAT:linkShaderProgram$rtcVarDesc
|
|
CONST ENDS
|
|
; COMDAT voltbl
|
|
voltbl SEGMENT
|
|
_volmd DW 040H
|
|
DW 0124H
|
|
voltbl ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$loadShaderCode DD 025054719H
|
|
DD 0118231dH
|
|
DD 070110025H
|
|
DD 05010H
|
|
DD imagerel __GSHandlerCheck
|
|
DD 0118H
|
|
xdata ENDS
|
|
; COMDAT CONST
|
|
CONST SEGMENT
|
|
loadShaderCode$rtcName$0 DB 073H
|
|
DB 075H
|
|
DB 063H
|
|
DB 063H
|
|
DB 065H
|
|
DB 073H
|
|
DB 073H
|
|
DB 00H
|
|
ORG $+8
|
|
loadShaderCode$rtcVarDesc DD 044H
|
|
DD 04H
|
|
DQ FLAT:loadShaderCode$rtcName$0
|
|
ORG $+48
|
|
loadShaderCode$rtcFrameData DD 01H
|
|
DD 00H
|
|
DQ FLAT:loadShaderCode$rtcVarDesc
|
|
CONST ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$initGL DD 025051601H
|
|
DD 01112316H
|
|
DD 0700a001dH
|
|
DD 05009H
|
|
xdata ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$printShaderCode DD 025051301H
|
|
DD 010e2313H
|
|
DD 07007001dH
|
|
DD 05006H
|
|
xdata ENDS
|
|
; COMDAT voltbl
|
|
voltbl SEGMENT
|
|
_volmd DB 045H
|
|
DB 0a6H
|
|
voltbl ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$printf DD 025054c19H
|
|
DD 011d2322H
|
|
DD 070160025H
|
|
DD 05015H
|
|
DD imagerel __GSHandlerCheck
|
|
DD 0118H
|
|
xdata ENDS
|
|
; COMDAT CONST
|
|
CONST SEGMENT
|
|
printf$rtcName$0 DB 05fH
|
|
DB 041H
|
|
DB 072H
|
|
DB 067H
|
|
DB 04cH
|
|
DB 069H
|
|
DB 073H
|
|
DB 074H
|
|
DB 00H
|
|
ORG $+7
|
|
printf$rtcVarDesc DD 048H
|
|
DD 08H
|
|
DQ FLAT:printf$rtcName$0
|
|
ORG $+48
|
|
printf$rtcFrameData DD 01H
|
|
DD 00H
|
|
DQ FLAT:printf$rtcVarDesc
|
|
CONST ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$_vfprintf_l DD 035052201H
|
|
DD 011d3322H
|
|
DD 07016001fH
|
|
DD 05015H
|
|
xdata ENDS
|
|
; COMDAT xdata
|
|
xdata SEGMENT
|
|
$unwind$__local_stdio_printf_options DD 025050f01H
|
|
DD 010a230fH
|
|
DD 07003001dH
|
|
DD 05002H
|
|
xdata ENDS
|
|
; Function compile flags: /Odt
|
|
; COMDAT __JustMyCode_Default
|
|
_TEXT SEGMENT
|
|
__JustMyCode_Default PROC ; COMDAT
|
|
00000 c2 00 00 ret 0
|
|
__JustMyCode_Default ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT main
|
|
_TEXT SEGMENT
|
|
window$ = 8
|
|
main PROC ; COMDAT
|
|
|
|
; 16 : {
|
|
|
|
$LN5:
|
|
00000 40 55 push rbp
|
|
00002 57 push rdi
|
|
00003 48 81 ec 18 01
|
|
00 00 sub rsp, 280 ; 00000118H
|
|
0000a 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
|
|
0000f 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 17 : glfwInit();
|
|
|
|
0001b e8 00 00 00 00 call glfwInit
|
|
|
|
; 18 : glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);
|
|
|
|
00020 ba 04 00 00 00 mov edx, 4
|
|
00025 b9 02 20 02 00 mov ecx, 139266 ; 00022002H
|
|
0002a e8 00 00 00 00 call glfwWindowHint
|
|
|
|
; 19 : glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 6);
|
|
|
|
0002f ba 06 00 00 00 mov edx, 6
|
|
00034 b9 03 20 02 00 mov ecx, 139267 ; 00022003H
|
|
00039 e8 00 00 00 00 call glfwWindowHint
|
|
|
|
; 20 : glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
|
|
|
0003e ba 01 20 03 00 mov edx, 204801 ; 00032001H
|
|
00043 b9 08 20 02 00 mov ecx, 139272 ; 00022008H
|
|
00048 e8 00 00 00 00 call glfwWindowHint
|
|
|
|
; 21 :
|
|
; 22 : GLFWwindow* window = glfwCreateWindow(
|
|
|
|
0004d 48 c7 44 24 20
|
|
00 00 00 00 mov QWORD PTR [rsp+32], 0
|
|
00056 45 33 c9 xor r9d, r9d
|
|
00059 4c 8d 05 00 00
|
|
00 00 lea r8, OFFSET FLAT:??_C@_0N@GKNDDPDN@Test?5Context@
|
|
00060 ba 58 02 00 00 mov edx, 600 ; 00000258H
|
|
00065 b9 20 03 00 00 mov ecx, 800 ; 00000320H
|
|
0006a e8 00 00 00 00 call glfwCreateWindow
|
|
0006f 48 89 45 08 mov QWORD PTR window$[rbp], rax
|
|
|
|
; 23 : 800, 600, "Test Context", NULL, NULL
|
|
; 24 : );
|
|
; 25 :
|
|
; 26 : glfwMakeContextCurrent(window);
|
|
|
|
00073 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
|
|
00077 e8 00 00 00 00 call glfwMakeContextCurrent
|
|
|
|
; 27 :
|
|
; 28 : currentContext = malloc(sizeof(GladGLContext));
|
|
|
|
0007c b9 28 59 00 00 mov ecx, 22824 ; 00005928H
|
|
00081 ff 15 00 00 00
|
|
00 call QWORD PTR __imp_malloc
|
|
00087 48 89 05 00 00
|
|
00 00 mov QWORD PTR currentContext, rax
|
|
|
|
; 29 : gladLoadGLContext(currentContext, glfwGetProcAddress);
|
|
|
|
0008e 48 8d 15 00 00
|
|
00 00 lea rdx, OFFSET FLAT:glfwGetProcAddress
|
|
00095 48 8b 0d 00 00
|
|
00 00 mov rcx, QWORD PTR currentContext
|
|
0009c e8 00 00 00 00 call gladLoadGLContext
|
|
|
|
; 30 :
|
|
; 31 : glfwSetFramebufferSizeCallback(window, FrameBufferSizeCallback);
|
|
|
|
000a1 48 8d 15 00 00
|
|
00 00 lea rdx, OFFSET FLAT:FrameBufferSizeCallback
|
|
000a8 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
|
|
000ac e8 00 00 00 00 call glfwSetFramebufferSizeCallback
|
|
$LN2@main:
|
|
|
|
; 32 :
|
|
; 33 : while (glfwWindowShouldClose(window))
|
|
|
|
000b1 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
|
|
000b5 e8 00 00 00 00 call glfwWindowShouldClose
|
|
000ba 85 c0 test eax, eax
|
|
000bc 74 4f je SHORT $LN3@main
|
|
|
|
; 34 : {
|
|
; 35 : currentContext->Clear(GL_COLOR_BUFFER_BIT | GLFW_DEPTH_BITS);
|
|
|
|
000be b9 05 50 02 00 mov ecx, 151557 ; 00025005H
|
|
000c3 48 8b 05 00 00
|
|
00 00 mov rax, QWORD PTR currentContext
|
|
000ca ff 90 b8 0e 00
|
|
00 call QWORD PTR [rax+3768]
|
|
|
|
; 36 : currentContext->ClearColor(0.5f, 0.3f, 0.6f, 1.0f);
|
|
|
|
000d0 f3 0f 10 1d 00
|
|
00 00 00 movss xmm3, DWORD PTR __real@3f800000
|
|
000d8 f3 0f 10 15 00
|
|
00 00 00 movss xmm2, DWORD PTR __real@3f19999a
|
|
000e0 f3 0f 10 0d 00
|
|
00 00 00 movss xmm1, DWORD PTR __real@3e99999a
|
|
000e8 f3 0f 10 05 00
|
|
00 00 00 movss xmm0, DWORD PTR __real@3f000000
|
|
000f0 48 8b 05 00 00
|
|
00 00 mov rax, QWORD PTR currentContext
|
|
000f7 ff 90 f8 0e 00
|
|
00 call QWORD PTR [rax+3832]
|
|
|
|
; 37 :
|
|
; 38 : glfwSwapBuffers(window);
|
|
|
|
000fd 48 8b 4d 08 mov rcx, QWORD PTR window$[rbp]
|
|
00101 e8 00 00 00 00 call glfwSwapBuffers
|
|
|
|
; 39 : glfwPollEvents();
|
|
|
|
00106 e8 00 00 00 00 call glfwPollEvents
|
|
|
|
; 40 : }
|
|
|
|
0010b eb a4 jmp SHORT $LN2@main
|
|
$LN3@main:
|
|
|
|
; 41 : }
|
|
|
|
0010d 33 c0 xor eax, eax
|
|
0010f 48 8d a5 e8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+232]
|
|
00116 5f pop rdi
|
|
00117 5d pop rbp
|
|
00118 c3 ret 0
|
|
main ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT FrameBufferSizeCallback
|
|
_TEXT SEGMENT
|
|
x$ = 224
|
|
y$ = 232
|
|
height$ = 240
|
|
width$ = 248
|
|
FrameBufferSizeCallback PROC ; COMDAT
|
|
|
|
; 44 : {
|
|
|
|
$LN3:
|
|
00000 44 89 4c 24 20 mov DWORD PTR [rsp+32], r9d
|
|
00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
|
|
0000a 89 54 24 10 mov DWORD PTR [rsp+16], edx
|
|
0000e 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
|
|
00012 55 push rbp
|
|
00013 57 push rdi
|
|
00014 48 81 ec e8 00
|
|
00 00 sub rsp, 232 ; 000000e8H
|
|
0001b 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
00020 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
00027 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 45 : currentContext->Viewport(0, 0, height, width);
|
|
|
|
0002c 44 8b 8d f8 00
|
|
00 00 mov r9d, DWORD PTR width$[rbp]
|
|
00033 44 8b 85 f0 00
|
|
00 00 mov r8d, DWORD PTR height$[rbp]
|
|
0003a 33 d2 xor edx, edx
|
|
0003c 33 c9 xor ecx, ecx
|
|
0003e 48 8b 05 00 00
|
|
00 00 mov rax, QWORD PTR currentContext
|
|
00045 ff 90 30 57 00
|
|
00 call QWORD PTR [rax+22320]
|
|
|
|
; 46 : }
|
|
|
|
0004b 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
00052 5f pop rdi
|
|
00053 5d pop rbp
|
|
00054 c3 ret 0
|
|
FrameBufferSizeCallback ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT readLog
|
|
_TEXT SEGMENT
|
|
readLog PROC ; COMDAT
|
|
|
|
; 123 : {
|
|
|
|
$LN3:
|
|
00000 40 55 push rbp
|
|
00002 57 push rdi
|
|
00003 48 81 ec e8 00
|
|
00 00 sub rsp, 232 ; 000000e8H
|
|
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
0000f 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 124 : infolog[511] = '\0';
|
|
|
|
0001b b8 08 00 00 00 mov eax, 8
|
|
00020 48 69 c0 ff 01
|
|
00 00 imul rax, rax, 511 ; 000001ffH
|
|
00027 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:infolog
|
|
0002e 48 c7 04 01 00
|
|
00 00 00 mov QWORD PTR [rcx+rax], 0
|
|
|
|
; 125 : return &infolog;
|
|
|
|
00036 48 8d 05 00 00
|
|
00 00 lea rax, OFFSET FLAT:infolog
|
|
|
|
; 126 : }
|
|
|
|
0003d 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
00044 5f pop rdi
|
|
00045 5d pop rbp
|
|
00046 c3 ret 0
|
|
readLog ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT unloadImageData
|
|
_TEXT SEGMENT
|
|
out$ = 224
|
|
unloadImageData PROC ; COMDAT
|
|
|
|
; 118 : {
|
|
|
|
$LN3:
|
|
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
|
00005 55 push rbp
|
|
00006 57 push rdi
|
|
00007 48 81 ec e8 00
|
|
00 00 sub rsp, 232 ; 000000e8H
|
|
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
00013 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 119 : free(out->pixelPtr);
|
|
|
|
0001f 48 8b 85 e0 00
|
|
00 00 mov rax, QWORD PTR out$[rbp]
|
|
00026 48 8b 48 10 mov rcx, QWORD PTR [rax+16]
|
|
0002a ff 15 00 00 00
|
|
00 call QWORD PTR __imp_free
|
|
|
|
; 120 : }
|
|
|
|
00030 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
00037 5f pop rdi
|
|
00038 5d pop rbp
|
|
00039 c3 ret 0
|
|
unloadImageData ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT loadImageData
|
|
_TEXT SEGMENT
|
|
location$ = 224
|
|
out$ = 232
|
|
loader$ = 240
|
|
loadImageData PROC ; COMDAT
|
|
|
|
; 109 : {
|
|
|
|
$LN4:
|
|
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 f8 00
|
|
00 00 sub rsp, 248 ; 000000f8H
|
|
00018 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
|
|
0001d 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 110 : if (loader == NULL)
|
|
|
|
00029 48 83 bd f0 00
|
|
00 00 00 cmp QWORD PTR loader$[rbp], 0
|
|
00031 75 0e jne SHORT $LN2@loadImageD
|
|
|
|
; 111 : {
|
|
; 112 : loader = stbi_load;
|
|
|
|
00033 48 8d 05 00 00
|
|
00 00 lea rax, OFFSET FLAT:stbi_load
|
|
0003a 48 89 85 f0 00
|
|
00 00 mov QWORD PTR loader$[rbp], rax
|
|
$LN2@loadImageD:
|
|
|
|
; 113 : }
|
|
; 114 : out->pixelPtr = loader(location, &(out->width), &(out->height), &(out->channel), 0);
|
|
|
|
00041 48 8b 85 e8 00
|
|
00 00 mov rax, QWORD PTR out$[rbp]
|
|
00048 48 83 c0 08 add rax, 8
|
|
0004c 48 8b 8d e8 00
|
|
00 00 mov rcx, QWORD PTR out$[rbp]
|
|
00053 48 83 c1 04 add rcx, 4
|
|
00057 48 8b 95 e8 00
|
|
00 00 mov rdx, QWORD PTR out$[rbp]
|
|
0005e c7 44 24 20 00
|
|
00 00 00 mov DWORD PTR [rsp+32], 0
|
|
00066 4c 8b c8 mov r9, rax
|
|
00069 4c 8b c1 mov r8, rcx
|
|
0006c 48 8b 8d e0 00
|
|
00 00 mov rcx, QWORD PTR location$[rbp]
|
|
00073 ff 95 f0 00 00
|
|
00 call QWORD PTR loader$[rbp]
|
|
00079 48 8b 8d e8 00
|
|
00 00 mov rcx, QWORD PTR out$[rbp]
|
|
00080 48 89 41 10 mov QWORD PTR [rcx+16], rax
|
|
|
|
; 115 : }
|
|
|
|
00084 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
0008b 5f pop rdi
|
|
0008c 5d pop rbp
|
|
0008d c3 ret 0
|
|
loadImageData ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT linkShaderProgram
|
|
_TEXT SEGMENT
|
|
success$ = 4
|
|
__$ArrayPad$ = 216
|
|
context$ = 256
|
|
shaderProgram$ = 264
|
|
linkShaderProgram PROC ; COMDAT
|
|
|
|
; 92 : {
|
|
|
|
$LN5:
|
|
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
|
|
00004 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
|
00009 55 push rbp
|
|
0000a 57 push rdi
|
|
0000b 48 81 ec 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:__906F587E_StgSharpC@c
|
|
00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 93 : context->LinkProgram(shaderProgram);
|
|
|
|
0004d 8b 8d 08 01 00
|
|
00 mov ecx, DWORD PTR shaderProgram$[rbp]
|
|
00053 48 8b 85 00 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
0005a ff 90 80 2c 00
|
|
00 call QWORD PTR [rax+11392]
|
|
|
|
; 94 :
|
|
; 95 : int success;
|
|
; 96 : context->GetProgramiv(shaderProgram, GL_LINK_STATUS, &success);
|
|
|
|
00060 4c 8d 45 04 lea r8, QWORD PTR success$[rbp]
|
|
00064 ba 82 8b 00 00 mov edx, 35714 ; 00008b82H
|
|
00069 8b 8d 08 01 00
|
|
00 mov ecx, DWORD PTR shaderProgram$[rbp]
|
|
0006f 48 8b 85 00 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
00076 ff 90 48 24 00
|
|
00 call QWORD PTR [rax+9288]
|
|
|
|
; 97 : if (!success)
|
|
|
|
0007c 83 7d 04 00 cmp DWORD PTR success$[rbp], 0
|
|
00080 75 28 jne SHORT $LN2@linkShader
|
|
|
|
; 98 : {
|
|
; 99 : context->GetProgramInfoLog(shaderProgram, 512, NULL, infolog);
|
|
|
|
00082 4c 8d 0d 00 00
|
|
00 00 lea r9, OFFSET FLAT:infolog
|
|
00089 45 33 c0 xor r8d, r8d
|
|
0008c ba 00 02 00 00 mov edx, 512 ; 00000200H
|
|
00091 8b 8d 08 01 00
|
|
00 mov ecx, DWORD PTR shaderProgram$[rbp]
|
|
00097 48 8b 85 00 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
0009e ff 90 98 23 00
|
|
00 call QWORD PTR [rax+9112]
|
|
|
|
; 100 : return 0;
|
|
|
|
000a4 33 c0 xor eax, eax
|
|
000a6 eb 08 jmp SHORT $LN1@linkShader
|
|
|
|
; 101 : }
|
|
|
|
000a8 eb 06 jmp SHORT $LN3@linkShader
|
|
$LN2@linkShader:
|
|
|
|
; 102 : else
|
|
; 103 : {
|
|
; 104 : return shaderProgram;
|
|
|
|
000aa 8b 85 08 01 00
|
|
00 mov eax, DWORD PTR shaderProgram$[rbp]
|
|
$LN3@linkShader:
|
|
$LN1@linkShader:
|
|
|
|
; 105 : }
|
|
; 106 : }
|
|
|
|
000b0 48 8b f8 mov rdi, rax
|
|
000b3 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
|
000b7 48 8d 15 00 00
|
|
00 00 lea rdx, OFFSET FLAT:linkShaderProgram$rtcFrameData
|
|
000be e8 00 00 00 00 call _RTC_CheckStackVars
|
|
000c3 48 8b c7 mov rax, rdi
|
|
000c6 48 8b 8d d8 00
|
|
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
|
|
000cd 48 33 cd xor rcx, rbp
|
|
000d0 e8 00 00 00 00 call __security_check_cookie
|
|
000d5 48 8d a5 e8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+232]
|
|
000dc 5f pop rdi
|
|
000dd 5d pop rbp
|
|
000de c3 ret 0
|
|
linkShaderProgram ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT loadShaderCode
|
|
_TEXT SEGMENT
|
|
shader$4 = 4
|
|
success$5 = 36
|
|
__$ArrayPad$ = 248
|
|
context$ = 288
|
|
shaderCode$ = 296
|
|
shadertype$ = 304
|
|
loadShaderCode PROC ; COMDAT
|
|
|
|
; 66 : {
|
|
|
|
$LN7:
|
|
00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d
|
|
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
|
|
0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
|
0000f 55 push rbp
|
|
00010 57 push rdi
|
|
00011 48 81 ec 28 01
|
|
00 00 sub rsp, 296 ; 00000128H
|
|
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 12 00 00 00 mov ecx, 18
|
|
00027 b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
|
|
0002c f3 ab rep stosd
|
|
0002e 48 8b 8c 24 48
|
|
01 00 00 mov rcx, QWORD PTR [rsp+328]
|
|
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 00
|
|
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
|
|
00047 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
0004e e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 67 : if (currentContext != NULL)
|
|
|
|
00053 48 83 3d 00 00
|
|
00 00 00 cmp QWORD PTR currentContext, 0
|
|
0005b 0f 84 ab 00 00
|
|
00 je $LN2@loadShader
|
|
|
|
; 68 : {
|
|
; 69 : unsigned int shader = context->CreateShader(shadertype);
|
|
|
|
00061 8b 8d 30 01 00
|
|
00 mov ecx, DWORD PTR shadertype$[rbp]
|
|
00067 48 8b 85 20 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
0006e ff 90 f0 13 00
|
|
00 call QWORD PTR [rax+5104]
|
|
00074 89 45 04 mov DWORD PTR shader$4[rbp], eax
|
|
|
|
; 70 : context->ShaderSource(shader, 1, &shaderCode, NULL);
|
|
|
|
00077 45 33 c9 xor r9d, r9d
|
|
0007a 4c 8d 85 28 01
|
|
00 00 lea r8, QWORD PTR shaderCode$[rbp]
|
|
00081 ba 01 00 00 00 mov edx, 1
|
|
00086 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp]
|
|
00089 48 8b 85 20 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
00090 ff 90 50 41 00
|
|
00 call QWORD PTR [rax+16720]
|
|
|
|
; 71 : context->CompileShader(shader);
|
|
|
|
00096 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp]
|
|
00099 48 8b 85 20 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
000a0 ff 90 18 11 00
|
|
00 call QWORD PTR [rax+4376]
|
|
|
|
; 72 : int success;
|
|
; 73 : context->GetShaderiv(shader, GL_COMPILE_STATUS, &success);
|
|
|
|
000a6 4c 8d 45 24 lea r8, QWORD PTR success$5[rbp]
|
|
000aa ba 81 8b 00 00 mov edx, 35713 ; 00008b81H
|
|
000af 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp]
|
|
000b2 48 8b 85 20 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
000b9 ff 90 40 25 00
|
|
00 call QWORD PTR [rax+9536]
|
|
|
|
; 74 : if (!success)
|
|
|
|
000bf 83 7d 24 00 cmp DWORD PTR success$5[rbp], 0
|
|
000c3 75 40 jne SHORT $LN4@loadShader
|
|
|
|
; 75 : {
|
|
; 76 : context->GetShaderInfoLog(shader, 512, NULL, infolog);
|
|
|
|
000c5 4c 8d 0d 00 00
|
|
00 00 lea r9, OFFSET FLAT:infolog
|
|
000cc 45 33 c0 xor r8d, r8d
|
|
000cf ba 00 02 00 00 mov edx, 512 ; 00000200H
|
|
000d4 8b 4d 04 mov ecx, DWORD PTR shader$4[rbp]
|
|
000d7 48 8b 85 20 01
|
|
00 00 mov rax, QWORD PTR context$[rbp]
|
|
000de ff 90 20 25 00
|
|
00 call QWORD PTR [rax+9504]
|
|
|
|
; 77 : infolog[511] = '\0';
|
|
|
|
000e4 b8 08 00 00 00 mov eax, 8
|
|
000e9 48 69 c0 ff 01
|
|
00 00 imul rax, rax, 511 ; 000001ffH
|
|
000f0 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:infolog
|
|
000f7 48 c7 04 01 00
|
|
00 00 00 mov QWORD PTR [rcx+rax], 0
|
|
|
|
; 78 : return 0;
|
|
|
|
000ff 33 c0 xor eax, eax
|
|
00101 eb 0b jmp SHORT $LN1@loadShader
|
|
|
|
; 79 : }
|
|
|
|
00103 eb 05 jmp SHORT $LN5@loadShader
|
|
$LN4@loadShader:
|
|
|
|
; 80 : else
|
|
; 81 : {
|
|
; 82 : return shader;
|
|
|
|
00105 8b 45 04 mov eax, DWORD PTR shader$4[rbp]
|
|
00108 eb 04 jmp SHORT $LN1@loadShader
|
|
$LN5@loadShader:
|
|
|
|
; 83 : }
|
|
; 84 : }
|
|
|
|
0010a eb 02 jmp SHORT $LN3@loadShader
|
|
$LN2@loadShader:
|
|
|
|
; 85 : else
|
|
; 86 : {
|
|
; 87 : return 0;
|
|
|
|
0010c 33 c0 xor eax, eax
|
|
$LN3@loadShader:
|
|
$LN1@loadShader:
|
|
|
|
; 88 : }
|
|
; 89 : }
|
|
|
|
0010e 48 8b f8 mov rdi, rax
|
|
00111 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
|
00115 48 8d 15 00 00
|
|
00 00 lea rdx, OFFSET FLAT:loadShaderCode$rtcFrameData
|
|
0011c e8 00 00 00 00 call _RTC_CheckStackVars
|
|
00121 48 8b c7 mov rax, rdi
|
|
00124 48 8b 8d f8 00
|
|
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
|
|
0012b 48 33 cd xor rcx, rbp
|
|
0012e e8 00 00 00 00 call __security_check_cookie
|
|
00133 48 8d a5 08 01
|
|
00 00 lea rsp, QWORD PTR [rbp+264]
|
|
0013a 5f pop rdi
|
|
0013b 5d pop rbp
|
|
0013c c3 ret 0
|
|
loadShaderCode ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT initGL
|
|
_TEXT SEGMENT
|
|
majorVersion$ = 224
|
|
minorVersion$ = 232
|
|
initGL PROC ; COMDAT
|
|
|
|
; 54 : {
|
|
|
|
$LN3:
|
|
00000 89 54 24 10 mov DWORD PTR [rsp+16], edx
|
|
00004 89 4c 24 08 mov DWORD PTR [rsp+8], ecx
|
|
00008 55 push rbp
|
|
00009 57 push rdi
|
|
0000a 48 81 ec e8 00
|
|
00 00 sub rsp, 232 ; 000000e8H
|
|
00011 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
00016 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
0001d e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 55 : glfwInit();
|
|
|
|
00022 e8 00 00 00 00 call glfwInit
|
|
|
|
; 56 : glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, majorVersion);
|
|
|
|
00027 8b 95 e0 00 00
|
|
00 mov edx, DWORD PTR majorVersion$[rbp]
|
|
0002d b9 02 20 02 00 mov ecx, 139266 ; 00022002H
|
|
00032 e8 00 00 00 00 call glfwWindowHint
|
|
|
|
; 57 : glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, minorVersion);
|
|
|
|
00037 8b 95 e8 00 00
|
|
00 mov edx, DWORD PTR minorVersion$[rbp]
|
|
0003d b9 03 20 02 00 mov ecx, 139267 ; 00022003H
|
|
00042 e8 00 00 00 00 call glfwWindowHint
|
|
|
|
; 58 : glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
|
|
|
00047 ba 01 20 03 00 mov edx, 204801 ; 00032001H
|
|
0004c b9 08 20 02 00 mov ecx, 139272 ; 00022008H
|
|
00051 e8 00 00 00 00 call glfwWindowHint
|
|
|
|
; 59 :
|
|
; 60 : #ifdef __APPLE__
|
|
; 61 : glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
|
|
; 62 : #endif
|
|
; 63 : }
|
|
|
|
00056 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
0005d 5f pop rdi
|
|
0005e 5d pop rbp
|
|
0005f c3 ret 0
|
|
initGL ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\实验\contexttest\StgSharpC\StgSharpC.c
|
|
; COMDAT printShaderCode
|
|
_TEXT SEGMENT
|
|
code$ = 224
|
|
printShaderCode PROC ; COMDAT
|
|
|
|
; 49 : {
|
|
|
|
$LN3:
|
|
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
|
00005 55 push rbp
|
|
00006 57 push rdi
|
|
00007 48 81 ec e8 00
|
|
00 00 sub rsp, 232 ; 000000e8H
|
|
0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
00013 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__906F587E_StgSharpC@c
|
|
0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 50 : printf(*code);
|
|
|
|
0001f 48 8b 85 e0 00
|
|
00 00 mov rax, QWORD PTR code$[rbp]
|
|
00026 48 8b 08 mov rcx, QWORD PTR [rax]
|
|
00029 e8 00 00 00 00 call printf
|
|
|
|
; 51 : }
|
|
|
|
0002e 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
00035 5f pop rdi
|
|
00036 5d pop rbp
|
|
00037 c3 ret 0
|
|
printShaderCode ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h
|
|
; COMDAT printf
|
|
_TEXT SEGMENT
|
|
_Result$ = 4
|
|
_ArgList$ = 40
|
|
__$ArrayPad$ = 248
|
|
_Format$ = 288
|
|
printf PROC ; COMDAT
|
|
|
|
; 956 : {
|
|
|
|
$LN3:
|
|
00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx
|
|
00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx
|
|
0000a 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8
|
|
0000f 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9
|
|
00014 55 push rbp
|
|
00015 57 push rdi
|
|
00016 48 81 ec 28 01
|
|
00 00 sub rsp, 296 ; 00000128H
|
|
0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
00022 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32]
|
|
00027 b9 12 00 00 00 mov ecx, 18
|
|
0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH
|
|
00031 f3 ab rep stosd
|
|
00033 48 8b 8c 24 48
|
|
01 00 00 mov rcx, QWORD PTR [rsp+328]
|
|
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 f8 00
|
|
00 00 mov QWORD PTR __$ArrayPad$[rbp], rax
|
|
0004c 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__C1EC35D3_stdio@h
|
|
00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 957 : int _Result;
|
|
; 958 : va_list _ArgList;
|
|
; 959 : __crt_va_start(_ArgList, _Format);
|
|
|
|
00058 48 8d 85 28 01
|
|
00 00 lea rax, QWORD PTR _Format$[rbp+8]
|
|
0005f 48 89 45 28 mov QWORD PTR _ArgList$[rbp], rax
|
|
|
|
; 960 : _Result = _vfprintf_l(stdout, _Format, NULL, _ArgList);
|
|
|
|
00063 b9 01 00 00 00 mov ecx, 1
|
|
00068 ff 15 00 00 00
|
|
00 call QWORD PTR __imp___acrt_iob_func
|
|
0006e 4c 8b 4d 28 mov r9, QWORD PTR _ArgList$[rbp]
|
|
00072 45 33 c0 xor r8d, r8d
|
|
00075 48 8b 95 20 01
|
|
00 00 mov rdx, QWORD PTR _Format$[rbp]
|
|
0007c 48 8b c8 mov rcx, rax
|
|
0007f e8 00 00 00 00 call _vfprintf_l
|
|
00084 89 45 04 mov DWORD PTR _Result$[rbp], eax
|
|
|
|
; 961 : __crt_va_end(_ArgList);
|
|
|
|
00087 48 c7 45 28 00
|
|
00 00 00 mov QWORD PTR _ArgList$[rbp], 0
|
|
|
|
; 962 : return _Result;
|
|
|
|
0008f 8b 45 04 mov eax, DWORD PTR _Result$[rbp]
|
|
|
|
; 963 : }
|
|
|
|
00092 8b f8 mov edi, eax
|
|
00094 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32]
|
|
00098 48 8d 15 00 00
|
|
00 00 lea rdx, OFFSET FLAT:printf$rtcFrameData
|
|
0009f e8 00 00 00 00 call _RTC_CheckStackVars
|
|
000a4 8b c7 mov eax, edi
|
|
000a6 48 8b 8d f8 00
|
|
00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp]
|
|
000ad 48 33 cd xor rcx, rbp
|
|
000b0 e8 00 00 00 00 call __security_check_cookie
|
|
000b5 48 8d a5 08 01
|
|
00 00 lea rsp, QWORD PTR [rbp+264]
|
|
000bc 5f pop rdi
|
|
000bd 5d pop rbp
|
|
000be c3 ret 0
|
|
printf ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\stdio.h
|
|
; COMDAT _vfprintf_l
|
|
_TEXT SEGMENT
|
|
_Stream$ = 224
|
|
_Format$ = 232
|
|
_Locale$ = 240
|
|
_ArgList$ = 248
|
|
_vfprintf_l PROC ; COMDAT
|
|
|
|
; 644 : {
|
|
|
|
$LN3:
|
|
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 f8 00
|
|
00 00 sub rsp, 248 ; 000000f8H
|
|
0001d 48 8d 6c 24 30 lea rbp, QWORD PTR [rsp+48]
|
|
00022 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__C1EC35D3_stdio@h
|
|
00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 645 : return __stdio_common_vfprintf(_CRT_INTERNAL_LOCAL_PRINTF_OPTIONS, _Stream, _Format, _Locale, _ArgList);
|
|
|
|
0002e e8 00 00 00 00 call __local_stdio_printf_options
|
|
00033 48 8b 8d f8 00
|
|
00 00 mov rcx, QWORD PTR _ArgList$[rbp]
|
|
0003a 48 89 4c 24 20 mov QWORD PTR [rsp+32], rcx
|
|
0003f 4c 8b 8d f0 00
|
|
00 00 mov r9, QWORD PTR _Locale$[rbp]
|
|
00046 4c 8b 85 e8 00
|
|
00 00 mov r8, QWORD PTR _Format$[rbp]
|
|
0004d 48 8b 95 e0 00
|
|
00 00 mov rdx, QWORD PTR _Stream$[rbp]
|
|
00054 48 8b 08 mov rcx, QWORD PTR [rax]
|
|
00057 ff 15 00 00 00
|
|
00 call QWORD PTR __imp___stdio_common_vfprintf
|
|
|
|
; 646 : }
|
|
|
|
0005d 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
00064 5f pop rdi
|
|
00065 5d pop rbp
|
|
00066 c3 ret 0
|
|
_vfprintf_l ENDP
|
|
_TEXT ENDS
|
|
; Function compile flags: /Odtp /RTCsu /ZI
|
|
; File C:\Program Files (x86)\Windows Kits\10\Include\10.0.22621.0\ucrt\corecrt_stdio_config.h
|
|
; COMDAT __local_stdio_printf_options
|
|
_TEXT SEGMENT
|
|
__local_stdio_printf_options PROC ; COMDAT
|
|
|
|
; 90 : {
|
|
|
|
$LN3:
|
|
00000 40 55 push rbp
|
|
00002 57 push rdi
|
|
00003 48 81 ec e8 00
|
|
00 00 sub rsp, 232 ; 000000e8H
|
|
0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32]
|
|
0000f 48 8d 0d 00 00
|
|
00 00 lea rcx, OFFSET FLAT:__44420885_corecrt_stdio_config@h
|
|
00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode
|
|
|
|
; 91 : static unsigned __int64 _OptionsStorage;
|
|
; 92 : return &_OptionsStorage;
|
|
|
|
0001b 48 8d 05 00 00
|
|
00 00 lea rax, OFFSET FLAT:?_OptionsStorage@?1??__local_stdio_printf_options@@9@9 ; `__local_stdio_printf_options'::`2'::_OptionsStorage
|
|
|
|
; 93 : }
|
|
|
|
00022 48 8d a5 c8 00
|
|
00 00 lea rsp, QWORD PTR [rbp+200]
|
|
00029 5f pop rdi
|
|
0002a 5d pop rbp
|
|
0002b c3 ret 0
|
|
__local_stdio_printf_options ENDP
|
|
_TEXT ENDS
|
|
END
|