; Listing generated by Microsoft (R) Optimizing Compiler Version 19.39.33523.0 include listing.inc INCLUDELIB MSVCRTD INCLUDELIB OLDNAMES PUBLIC infolog _BSS SEGMENT infolog DB 0200H DUP (?) _BSS ENDS _DATA SEGMENT COMM currentContext:QWORD _DATA ENDS msvcjmc SEGMENT __A19B9DB6_ssgc_framework@h DB 01H __0ED14FEE_winpackagefamily@h DB 01H __F92EF742_winapifamily@h DB 01H __4B783B3C_concurrencysal@h DB 01H __137BB1BE_sal@h DB 01H __805F4069_vadefs@h DB 01H __1EAACA9B_vcruntime@h DB 01H __F8522E0F_stdint@h DB 01H __874AB8BA_khrplatform@h DB 01H __8DCB230D_gl@h DB 01H __1B0272D9_corecrt@h DB 01H __13F5961F_stddef@h DB 01H __5BC5AF51_mmintrin@h DB 01H __45DED006_corecrt_malloc@h DB 01H __FA77ED4C_malloc@h DB 01H __9E7FA6CF_xmmintrin@h DB 01H __22E515EB_sdkddkver@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 __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 __61B03275_ssgc_internal@h DB 01H __B47D1049_glfw3@h DB 01H __5F89FF5A_wgl@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 __5274102E_stb_image@h DB 01H __CE2BBC10_StgSharpC@h DB 01H __59F96598_StgSharpC@c DB 01H msvcjmc ENDS PUBLIC __local_stdio_printf_options PUBLIC _vfprintf_l PUBLIC printf PUBLIC glCheckShaderStat PUBLIC initGL PUBLIC linkShaderProgram PUBLIC loadImageData PUBLIC loadGlfuncDefault PUBLIC unloadImageData PUBLIC readLog PUBLIC __JustMyCode_Default PUBLIC ??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@ ; `string' PUBLIC ??_C@_03OFAPEBGM@?$CFs?6@ ; `string' EXTRN __report_rangecheckfailure:PROC EXTRN __imp_free:PROC EXTRN glfwWindowHint:PROC EXTRN glfwGetProcAddress: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 _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$glCheckShaderStat DD imagerel $LN4 DD imagerel $LN4+229 DD imagerel $unwind$glCheckShaderStat pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$initGL DD imagerel $LN3 DD imagerel $LN3+91 DD imagerel $unwind$initGL 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$loadGlfuncDefault DD imagerel $LN7 DD imagerel $LN7+186 DD imagerel $unwind$loadGlfuncDefault 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 $LN5 DD imagerel $LN5+101 DD imagerel $unwind$readLog 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@_03OFAPEBGM@?$CFs?6@ CONST SEGMENT ??_C@_03OFAPEBGM@?$CFs?6@ DB '%s', 0aH, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@ CONST SEGMENT ??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@ DB 'Failed to load Op' DB 'enGL api:', 00H ; `string' CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$readLog DD 025050f01H DD 010a230fH DD 070030021H 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$loadGlfuncDefault DD 025051301H DD 010e2313H DD 070070025H 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 xdata xdata SEGMENT $unwind$initGL DD 025051601H DD 01112316H DD 0700a001dH DD 05009H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DB 045H DB 0ccH voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$glCheckShaderStat DD 025054c19H DD 011d2322H DD 070160021H DD 05015H DD imagerel __GSHandlerCheck DD 0f8H xdata ENDS ; COMDAT CONST CONST SEGMENT glCheckShaderStat$rtcName$0 DB 073H DB 074H DB 061H DB 074H DB 00H ORG $+11 glCheckShaderStat$rtcVarDesc DD 024H DD 04H DQ FLAT:glCheckShaderStat$rtcName$0 ORG $+48 glCheckShaderStat$rtcFrameData DD 01H DD 00H DQ FLAT:glCheckShaderStat$rtcVarDesc CONST 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\源代码\StgSharpC\StgSharpC.c ; COMDAT readLog _TEXT SEGMENT $T1 = 200 readLog PROC ; COMDAT ; 77 : { $LN5: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 78 : infolog[511] = '\0'; 0001b b8 01 00 00 00 mov eax, 1 00020 48 69 c0 ff 01 00 00 imul rax, rax, 511 ; 000001ffH 00027 48 89 85 c8 00 00 00 mov QWORD PTR $T1[rbp], rax 0002e 48 81 bd c8 00 00 00 00 02 00 00 cmp QWORD PTR $T1[rbp], 512 ; 00000200H 00039 73 02 jae SHORT $LN3@readLog 0003b eb 05 jmp SHORT $LN4@readLog $LN3@readLog: 0003d e8 00 00 00 00 call __report_rangecheckfailure $LN4@readLog: 00042 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:infolog 00049 48 8b 8d c8 00 00 00 mov rcx, QWORD PTR $T1[rbp] 00050 c6 04 08 00 mov BYTE PTR [rax+rcx], 0 ; 79 : return &infolog; 00054 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:infolog $LN2@readLog: ; 80 : } 0005b 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00062 5f pop rdi 00063 5d pop rbp 00064 c3 ret 0 readLog ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c ; COMDAT unloadImageData _TEXT SEGMENT out$ = 224 unloadImageData PROC ; COMDAT ; 72 : { $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:__59F96598_StgSharpC@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 73 : 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 ; 74 : } 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\源代码\StgSharpC\StgSharpC.c ; COMDAT loadGlfuncDefault _TEXT SEGMENT ret$ = 8 i$1 = 40 procName$ = 288 loadGlfuncDefault PROC ; COMDAT ; 30 : { $LN7: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec 28 01 00 00 sub rsp, 296 ; 00000128H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 31 : void* ret = glfwGetProcAddress(procName); 0001f 48 8b 8d 20 01 00 00 mov rcx, QWORD PTR procName$[rbp] 00026 e8 00 00 00 00 call glfwGetProcAddress 0002b 48 89 45 08 mov QWORD PTR ret$[rbp], rax ; 32 : //printf("%llu\n", (uint64_t)ret); ; 33 : if (ret = NULL) 0002f 48 c7 45 08 00 00 00 00 mov QWORD PTR ret$[rbp], 0 00037 48 83 7d 08 00 cmp QWORD PTR ret$[rbp], 0 0003c 74 6e je SHORT $LN5@loadGlfunc ; 34 : { ; 35 : *infolog = "Failed to load OpenGL api:"; 0003e b8 01 00 00 00 mov eax, 1 00043 48 6b c0 00 imul rax, rax, 0 00047 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:infolog 0004e 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BL@MOJGOJJP@Failed?5to?5load?5OpenGL?5api?3@ 00055 88 14 01 mov BYTE PTR [rcx+rax], dl ; 36 : for (size_t i = 0; i < sizeof(procName); i++) 00058 48 c7 45 28 00 00 00 00 mov QWORD PTR i$1[rbp], 0 00060 eb 0b jmp SHORT $LN4@loadGlfunc $LN2@loadGlfunc: 00062 48 8b 45 28 mov rax, QWORD PTR i$1[rbp] 00066 48 ff c0 inc rax 00069 48 89 45 28 mov QWORD PTR i$1[rbp], rax $LN4@loadGlfunc: 0006d 48 83 7d 28 08 cmp QWORD PTR i$1[rbp], 8 00072 73 25 jae SHORT $LN3@loadGlfunc ; 37 : { ; 38 : infolog[30 + i] = procName[i]; 00074 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:infolog 0007b 48 8b 4d 28 mov rcx, QWORD PTR i$1[rbp] 0007f 48 8b 95 20 01 00 00 mov rdx, QWORD PTR procName$[rbp] 00086 48 03 d1 add rdx, rcx 00089 48 8b ca mov rcx, rdx 0008c 48 8b 55 28 mov rdx, QWORD PTR i$1[rbp] 00090 0f b6 09 movzx ecx, BYTE PTR [rcx] 00093 88 4c 10 1e mov BYTE PTR [rax+rdx+30], cl ; 39 : } 00097 eb c9 jmp SHORT $LN2@loadGlfunc $LN3@loadGlfunc: ; 40 : printf("%s\n", infolog); 00099 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:infolog 000a0 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_03OFAPEBGM@?$CFs?6@ 000a7 e8 00 00 00 00 call printf $LN5@loadGlfunc: ; 41 : } ; 42 : return (GLFWglproc)ret; 000ac 48 8b 45 08 mov rax, QWORD PTR ret$[rbp] ; 43 : } 000b0 48 8d a5 08 01 00 00 lea rsp, QWORD PTR [rbp+264] 000b7 5f pop rdi 000b8 5d pop rbp 000b9 c3 ret 0 loadGlfuncDefault ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c ; COMDAT loadImageData _TEXT SEGMENT location$ = 224 out$ = 232 loader$ = 240 loadImageData PROC ; COMDAT ; 63 : { $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:__59F96598_StgSharpC@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 64 : 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 ; 65 : { ; 66 : 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: ; 67 : } ; 68 : 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 ; 69 : } 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\源代码\StgSharpC\StgSharpC.c ; COMDAT linkShaderProgram _TEXT SEGMENT success$ = 4 __$ArrayPad$ = 216 context$ = 256 shaderProgram$ = 264 linkShaderProgram PROC ; COMDAT ; 46 : { $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:__59F96598_StgSharpC@c 00048 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 47 : 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 22 00 00 call QWORD PTR [rax+8832] ; 48 : ; 49 : int success; ; 50 : 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 1a 00 00 call QWORD PTR [rax+6728] ; 51 : if (!success) 0007c 83 7d 04 00 cmp DWORD PTR success$[rbp], 0 00080 75 28 jne SHORT $LN2@linkShader ; 52 : { ; 53 : 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 19 00 00 call QWORD PTR [rax+6552] ; 54 : return 0; 000a4 33 c0 xor eax, eax 000a6 eb 08 jmp SHORT $LN1@linkShader ; 55 : } 000a8 eb 06 jmp SHORT $LN3@linkShader $LN2@linkShader: ; 56 : else ; 57 : { ; 58 : return shaderProgram; 000aa 8b 85 08 01 00 00 mov eax, DWORD PTR shaderProgram$[rbp] $LN3@linkShader: $LN1@linkShader: ; 59 : } ; 60 : } 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\源代码\StgSharpC\StgSharpC.c ; COMDAT initGL _TEXT SEGMENT majorVersion$ = 224 minorVersion$ = 232 initGL PROC ; COMDAT ; 23 : { $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:__59F96598_StgSharpC@c 0001d e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 24 : glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, majorVersion); 00022 8b 95 e0 00 00 00 mov edx, DWORD PTR majorVersion$[rbp] 00028 b9 02 20 02 00 mov ecx, 139266 ; 00022002H 0002d e8 00 00 00 00 call glfwWindowHint ; 25 : glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, minorVersion); 00032 8b 95 e8 00 00 00 mov edx, DWORD PTR minorVersion$[rbp] 00038 b9 03 20 02 00 mov ecx, 139267 ; 00022003H 0003d e8 00 00 00 00 call glfwWindowHint ; 26 : glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); 00042 ba 01 20 03 00 mov edx, 204801 ; 00032001H 00047 b9 08 20 02 00 mov ecx, 139272 ; 00022008H 0004c e8 00 00 00 00 call glfwWindowHint ; 27 : } 00051 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00058 5f pop rdi 00059 5d pop rbp 0005a c3 ret 0 initGL ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpC\StgSharpC.c ; COMDAT glCheckShaderStat _TEXT SEGMENT stat$ = 4 __$ArrayPad$ = 216 context$ = 256 shaderHandle$ = 264 key$ = 272 logRef$ = 280 glCheckShaderStat PROC ; COMDAT ; 11 : { $LN4: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 55 push rbp 00015 57 push rdi 00016 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 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 0a 00 00 00 mov ecx, 10 0002c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00031 f3 ab rep stosd 00033 48 8b 8c 24 28 01 00 00 mov rcx, QWORD PTR [rsp+296] 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 d8 00 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0004c 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__59F96598_StgSharpC@c 00053 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 12 : int stat = 0; 00058 c7 45 04 00 00 00 00 mov DWORD PTR stat$[rbp], 0 ; 13 : context->GetShaderiv(shaderHandle, key, &stat); 0005f 4c 8d 45 04 lea r8, QWORD PTR stat$[rbp] 00063 8b 95 10 01 00 00 mov edx, DWORD PTR key$[rbp] 00069 8b 8d 08 01 00 00 mov ecx, DWORD PTR shaderHandle$[rbp] 0006f 48 8b 85 00 01 00 00 mov rax, QWORD PTR context$[rbp] 00076 ff 90 40 1b 00 00 call QWORD PTR [rax+6976] ; 14 : if (!stat) 0007c 83 7d 04 00 cmp DWORD PTR stat$[rbp], 0 00080 75 22 jne SHORT $LN2@glCheckSha ; 15 : { ; 16 : context->GetShaderInfoLog(shaderHandle, 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 shaderHandle$[rbp] 00097 48 8b 85 00 01 00 00 mov rax, QWORD PTR context$[rbp] 0009e ff 90 20 1b 00 00 call QWORD PTR [rax+6944] $LN2@glCheckSha: ; 17 : } ; 18 : *logRef = infolog; 000a4 48 8b 85 18 01 00 00 mov rax, QWORD PTR logRef$[rbp] 000ab 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:infolog 000b2 48 89 08 mov QWORD PTR [rax], rcx ; 19 : return stat; 000b5 8b 45 04 mov eax, DWORD PTR stat$[rbp] ; 20 : } 000b8 8b f8 mov edi, eax 000ba 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 000be 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:glCheckShaderStat$rtcFrameData 000c5 e8 00 00 00 00 call _RTC_CheckStackVars 000ca 8b c7 mov eax, edi 000cc 48 8b 8d d8 00 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 000d3 48 33 cd xor rcx, rbp 000d6 e8 00 00 00 00 call __security_check_cookie 000db 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 000e2 5f pop rdi 000e3 5d pop rbp 000e4 c3 ret 0 glCheckShaderStat 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