Giter VIP home page Giter VIP logo

Comments (53)

bash avatar bash commented on August 24, 2024 12

I was able to create a minimal example that doesn't involve bevy at all! 🎉
https://github.com/bash/rust-dylib-crash

The dylib setup is modeled after that from bevy.

Edit: I'm going to run bisect on this and see what we find out :)

from rust.

rparrett avatar rparrett commented on August 24, 2024 2

@ChrisDenton I've got the information about this failing on stable from a user (ping @rparrett) but can't verify it on my machine as I can't get the release to build at all on stable due to the well-known "Too many symbols" issue.

This was a miscommunication I guess. I never saw this panic, just "too many symbols."

from rust.

bash avatar bash commented on August 24, 2024 2

I was able to reduce @ChrisDenton's example a bit further:

fn main() {
    let mut schedule = Schedule::default();
    schedule.add_systems(noop);
}

fn noop() {}

from rust.

ChrisDenton avatar ChrisDenton commented on August 24, 2024 2

Unfortunately, going back in time with rustc versions is very difficult in this case as Bevy 0.14 depends on the newest stable.

I can reproduce at least as far back as 1.76 using bevy 0.13,

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024 2

Betting it's in this rollup:

Betting it's this PR:

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024 2

Okay, I think it's fair to say "the way we handle linkage of dylibs when combined with compiler options like LTO results in arriving in what are supposed to be unreachable sections of std's code" is

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024 1

@tgross35 thanks for the hint, updated the description :)
Nightly is hitting the same thing

from rust.

tgross35 avatar tgross35 commented on August 24, 2024 1

This does not reproduce in debug mode, interesting

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024 1

@tgross35 minimizing is proving very annoying. I've asked a friend with a pretty fast machine in the meantime to run the bisect.

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024 1

When reporting "other people hit this too", you must determine the exact cause of each failure. It cannot simply be "it failed". You should also NOT list a compiler version if you don't have a confirmed, clean-build on-stable repro. It is quite possible there are 5 different bugs here.

from rust.

tgross35 avatar tgross35 commented on August 24, 2024 1

Awesome repro! Interesting that the dylib doesn't even have to do anything, just be there.

In case anyone doesn't want to build & dump themselves:

No LTO
Microsoft (R) COFF/PE Dumper Version 14.39.33523.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file target\debug\executable.exe

File Type: EXECUTABLE IMAGE

_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hba68a7fe186572fdE.llvm.5890938590538905819:
  0000000140001000: 48 83 EC 28        sub         rsp,28h
  0000000140001004: 48 8B 09           mov         rcx,qword ptr [rcx]
  0000000140001007: E8 74 00 00 00     call        _ZN3std3sys9backtrace28__rust_begin_short_backtrace17h052f9424940e3074E
  000000014000100C: 31 C0              xor         eax,eax
  000000014000100E: 48 83 C4 28        add         rsp,28h
  0000000140001012: C3                 ret
  0000000140001013: CC CC CC CC CC CC CC CC CC CC CC CC CC           IIIIIIIIIIIII
executable::main:
  0000000140001020: 48 8B 05 71 11 00  mov         rax,qword ptr [__imp__ZN7library9ONCE_LOCK17he7586e059de7547bE]
                    00
  0000000140001027: 8B 00              mov         eax,dword ptr [rax]
  0000000140001029: 83 F8 04           cmp         eax,4
  000000014000102C: 75 01              jne         000000014000102F
  000000014000102E: C3                 ret
  000000014000102F: 48 8B 0D 62 11 00  mov         rcx,qword ptr [__imp__ZN7library9ONCE_LOCK17he7586e059de7547bE]
                    00
  0000000140001036: E9 85 0B 00 00     jmp         _ZN3std4sync9once_lock17OnceLock$LT$T$GT$10initialize17hd8d7daf22edd086bE
  000000014000103B: CC CC CC CC CC                                   IIIII
main:
  0000000140001040: 48 83 EC 38        sub         rsp,38h
  0000000140001044: 49 89 D1           mov         r9,rdx
  0000000140001047: 4C 63 C1           movsxd      r8,ecx
  000000014000104A: 48 8D 05 CF FF FF  lea         rax,[140001020h]
                    FF
  0000000140001051: 48 89 44 24 30     mov         qword ptr [rsp+30h],rax
  0000000140001056: C6 44 24 20 00     mov         byte ptr [rsp+20h],0
  000000014000105B: 48 8D 15 0E 12 00  lea         rdx,[anon.58b5b2b07831d9cc1ef859ce6d657bb0.0.llvm.5890938590538905819]
                    00
  0000000140001062: 48 8D 4C 24 30     lea         rcx,[rsp+30h]
  0000000140001067: E8 24 00 00 00     call        _ZN3std2rt19lang_start_internal17hae47a42ca7fab963E
  000000014000106C: 90                 nop
  000000014000106D: 48 83 C4 38        add         rsp,38h
  0000000140001071: C3                 ret
  0000000140001072: CC CC CC CC CC CC CC CC CC CC CC CC CC CC        IIIIIIIIIIIIII
_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h052f9424940e3074E:
  0000000140001080: 48 83 EC 28        sub         rsp,28h
  0000000140001084: FF D1              call        rcx
  0000000140001086: 90                 nop
  0000000140001087: 48 83 C4 28        add         rsp,28h
  000000014000108B: C3                 ret
  000000014000108C: CC CC CC CC                                      IIII
_ZN3std2rt19lang_start_internal17hae47a42ca7fab963E:
  0000000140001090: FF 25 32 11 00 00  jmp         qword ptr [__imp__ZN3std2rt19lang_start_internal17hae47a42ca7fab963E]
_ZN3std3sys3pal7windows3api14get_last_error17h563dec06c925f25fE:
  0000000140001096: FF 25 14 11 00 00  jmp         qword ptr [__imp__ZN3std3sys3pal7windows3api14get_last_error17h563dec06c925f25fE]
_ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E:
  000000014000109C: FF 25 06 11 00 00  jmp         qword ptr [__imp__ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E]
_ZN4core9panicking9panic_fmt17hb39cfdace1bc0cb7E:
  00000001400010A2: FF 25 10 11 00 00  jmp         qword ptr [__imp__ZN4core9panicking9panic_fmt17hb39cfdace1bc0cb7E]
_ZN4core6option13unwrap_failed17hb95fbc70d3a4af9aE:
  00000001400010A8: FF 25 12 11 00 00  jmp         qword ptr [__imp__ZN4core6option13unwrap_failed17hb95fbc70d3a4af9aE]
  00000001400010AE: CC CC                                            II
pre_c_initialization:
  00000001400010B0: 40 53              push        rbx
  00000001400010B2: 48 83 EC 20        sub         rsp,20h
  00000001400010B6: B9 01 00 00 00     mov         ecx,1
  00000001400010BB: E8 34 0A 00 00     call        _set_app_type
  00000001400010C0: E8 57 05 00 00     call        _get_startup_file_mode
  00000001400010C5: 8B C8              mov         ecx,eax
  00000001400010C7: E8 5E 0A 00 00     call        _set_fmode
  00000001400010CC: E8 3F 05 00 00     call        __scrt_exe_initialize_mta
  00000001400010D1: 8B D8              mov         ebx,eax
  00000001400010D3: E8 82 0A 00 00     call        __p__commode
  00000001400010D8: B9 01 00 00 00     mov         ecx,1
  00000001400010DD: 89 18              mov         dword ptr [rax],ebx
  00000001400010DF: E8 B8 02 00 00     call        __scrt_initialize_onexit_tables
  00000001400010E4: 84 C0              test        al,al
  00000001400010E6: 74 73              je          000000014000115B
  00000001400010E8: E8 AF 07 00 00     call        _RTC_Initialize
  00000001400010ED: 48 8D 0D E4 07 00  lea         rcx,[_RTC_Terminate]
                    00
  00000001400010F4: E8 53 04 00 00     call        atexit
  00000001400010F9: E8 16 05 00 00     call        _get_startup_argv_mode
  00000001400010FE: 8B C8              mov         ecx,eax
  0000000140001100: E8 FB 09 00 00     call        _configure_narrow_argv
  0000000140001105: 85 C0              test        eax,eax
  0000000140001107: 75 52              jne         000000014000115B
  0000000140001109: E8 16 05 00 00     call        ?__scrt_initialize_type_info@@YAXXZ
  000000014000110E: E8 55 05 00 00     call        __scrt_is_user_matherr_present
  0000000140001113: 85 C0              test        eax,eax
  0000000140001115: 74 0C              je          0000000140001123
  0000000140001117: 48 8D 0D F2 04 00  lea         rcx,[__scrt_exe_initialize_mta]
                    00
  000000014000111E: E8 D7 09 00 00     call        __setusermatherr
  0000000140001123: E8 10 05 00 00     call        _guard_check_icall_nop
  0000000140001128: E8 0B 05 00 00     call        _guard_check_icall_nop
  000000014000112D: E8 DE 04 00 00     call        __scrt_exe_initialize_mta
  0000000140001132: 8B C8              mov         ecx,eax
  0000000140001134: E8 15 0A 00 00     call        _configthreadlocale
  0000000140001139: E8 F6 04 00 00     call        __acrt_initialize
  000000014000113E: 84 C0              test        al,al
  0000000140001140: 74 05              je          0000000140001147
  0000000140001142: E8 BF 09 00 00     call        _initialize_narrow_environment
  0000000140001147: E8 C4 04 00 00     call        __scrt_exe_initialize_mta
  000000014000114C: E8 83 06 00 00     call        __scrt_initialize_mta
  0000000140001151: 85 C0              test        eax,eax
  0000000140001153: 75 06              jne         000000014000115B
  0000000140001155: 48 83 C4 20        add         rsp,20h
  0000000140001159: 5B                 pop         rbx
  000000014000115A: C3                 ret
  000000014000115B: B9 07 00 00 00     mov         ecx,7
  0000000140001160: E8 27 05 00 00     call        __scrt_fastfail
  0000000140001165: CC                 int         3
  0000000140001166: CC CC                                            II
post_pgo_initialization:
  0000000140001168: 48 83 EC 28        sub         rsp,28h
  000000014000116C: E8 DB 04 00 00     call        __scrt_initialize_default_local_stdio_options
  0000000140001171: 33 C0              xor         eax,eax
  0000000140001173: 48 83 C4 28        add         rsp,28h
  0000000140001177: C3                 ret
pre_cpp_initialization:
  0000000140001178: 48 83 EC 28        sub         rsp,28h
  000000014000117C: E8 AF 06 00 00     call        __scrt_set_unhandled_exception_filter
  0000000140001181: E8 8A 04 00 00     call        __scrt_exe_initialize_mta
  0000000140001186: 8B C8              mov         ecx,eax
  0000000140001188: 48 83 C4 28        add         rsp,28h
  000000014000118C: E9 C3 09 00 00     jmp         _set_new_mode
  0000000140001191: CC CC CC                                         III
__scrt_common_main_seh:
  0000000140001194: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  0000000140001199: 48 89 74 24 10     mov         qword ptr [rsp+10h],rsi
  000000014000119E: 57                 push        rdi
  000000014000119F: 48 83 EC 30        sub         rsp,30h
  00000001400011A3: B9 01 00 00 00     mov         ecx,1
  00000001400011A8: E8 B3 01 00 00     call        __scrt_initialize_crt
  00000001400011AD: 84 C0              test        al,al
  00000001400011AF: 0F 84 36 01 00 00  je          00000001400012EB
  00000001400011B5: 40 32 F6           xor         sil,sil
  00000001400011B8: 40 88 74 24 20     mov         byte ptr [rsp+20h],sil
  00000001400011BD: E8 62 01 00 00     call        __scrt_acquire_startup_lock
  00000001400011C2: 8A D8              mov         bl,al
  00000001400011C4: 8B 0D D6 2E 00 00  mov         ecx,dword ptr [__scrt_current_native_startup_state]
  00000001400011CA: 83 F9 01           cmp         ecx,1
  00000001400011CD: 0F 84 23 01 00 00  je          00000001400012F6
  00000001400011D3: 85 C9              test        ecx,ecx
  00000001400011D5: 75 4A              jne         0000000140001221
  00000001400011D7: C7 05 BF 2E 00 00  mov         dword ptr [__scrt_current_native_startup_state],1
                    01 00 00 00
  00000001400011E1: 48 8D 15 58 10 00  lea         rdx,[__xi_z]
                    00
  00000001400011E8: 48 8D 0D 39 10 00  lea         rcx,[__xi_a]
                    00
  00000001400011EF: E8 24 09 00 00     call        _initterm_e
  00000001400011F4: 85 C0              test        eax,eax
  00000001400011F6: 74 0A              je          0000000140001202
  00000001400011F8: B8 FF 00 00 00     mov         eax,0FFh
  00000001400011FD: E9 D9 00 00 00     jmp         00000001400012DB
  0000000140001202: 48 8D 15 17 10 00  lea         rdx,[__xc_z]
                    00
  0000000140001209: 48 8D 0D 00 10 00  lea         rcx,[__xc_a]
                    00
  0000000140001210: E8 FD 08 00 00     call        _initterm
  0000000140001215: C7 05 81 2E 00 00  mov         dword ptr [__scrt_current_native_startup_state],2
                    02 00 00 00
  000000014000121F: EB 08              jmp         0000000140001229
  0000000140001221: 40 B6 01           mov         sil,1
  0000000140001224: 40 88 74 24 20     mov         byte ptr [rsp+20h],sil
  0000000140001229: 8A CB              mov         cl,bl
  000000014000122B: E8 90 02 00 00     call        __scrt_release_startup_lock
  0000000140001230: E8 3F 04 00 00     call        __scrt_get_dyn_tls_init_callback
  0000000140001235: 48 8B D8           mov         rbx,rax
  0000000140001238: 48 83 38 00        cmp         qword ptr [rax],0
  000000014000123C: 74 1E              je          000000014000125C
  000000014000123E: 48 8B C8           mov         rcx,rax
  0000000140001241: E8 E2 01 00 00     call        __scrt_is_nonwritable_in_current_image
  0000000140001246: 84 C0              test        al,al
  0000000140001248: 74 12              je          000000014000125C
  000000014000124A: 45 33 C0           xor         r8d,r8d
  000000014000124D: 41 8D 50 02        lea         edx,[r8+2]
  0000000140001251: 33 C9              xor         ecx,ecx
  0000000140001253: 48 8B 03           mov         rax,qword ptr [rbx]
  0000000140001256: FF 15 8C 0F 00 00  call        qword ptr [__guard_dispatch_icall_fptr]
  000000014000125C: E8 1B 04 00 00     call        __scrt_get_dyn_tls_dtor_callback
  0000000140001261: 48 8B D8           mov         rbx,rax
  0000000140001264: 48 83 38 00        cmp         qword ptr [rax],0
  0000000140001268: 74 14              je          000000014000127E
  000000014000126A: 48 8B C8           mov         rcx,rax
  000000014000126D: E8 B6 01 00 00     call        __scrt_is_nonwritable_in_current_image
  0000000140001272: 84 C0              test        al,al
  0000000140001274: 74 08              je          000000014000127E
  0000000140001276: 48 8B 0B           mov         rcx,qword ptr [rbx]
  0000000140001279: E8 CA 08 00 00     call        _register_thread_local_exe_atexit_callback
  000000014000127E: E8 89 08 00 00     call        _get_initial_narrow_environment
  0000000140001283: 48 8B F8           mov         rdi,rax
  0000000140001286: E8 AB 08 00 00     call        __p___argv
  000000014000128B: 48 8B 18           mov         rbx,qword ptr [rax]
  000000014000128E: E8 9D 08 00 00     call        __p___argc
  0000000140001293: 4C 8B C7           mov         r8,rdi
  0000000140001296: 48 8B D3           mov         rdx,rbx
  0000000140001299: 8B 08              mov         ecx,dword ptr [rax]
  000000014000129B: E8 A0 FD FF FF     call        main
  00000001400012A0: 8B D8              mov         ebx,eax
  00000001400012A2: E8 35 05 00 00     call        __scrt_is_managed_app
  00000001400012A7: 84 C0              test        al,al
  00000001400012A9: 74 55              je          0000000140001300
  00000001400012AB: 40 84 F6           test        sil,sil
  00000001400012AE: 75 05              jne         00000001400012B5
  00000001400012B0: E8 87 08 00 00     call        _cexit
  00000001400012B5: 33 D2              xor         edx,edx
  00000001400012B7: B1 01              mov         cl,1
  00000001400012B9: E8 26 02 00 00     call        __scrt_uninitialize_crt
  00000001400012BE: 8B C3              mov         eax,ebx
  00000001400012C0: EB 19              jmp         00000001400012DB
  00000001400012C2: 8B D8              mov         ebx,eax
  00000001400012C4: E8 13 05 00 00     call        __scrt_is_managed_app
  00000001400012C9: 84 C0              test        al,al
  00000001400012CB: 74 3B              je          0000000140001308
  00000001400012CD: 80 7C 24 20 00     cmp         byte ptr [rsp+20h],0
  00000001400012D2: 75 05              jne         00000001400012D9
  00000001400012D4: E8 69 08 00 00     call        _c_exit
  00000001400012D9: 8B C3              mov         eax,ebx
  00000001400012DB: 48 8B 5C 24 40     mov         rbx,qword ptr [rsp+40h]
  00000001400012E0: 48 8B 74 24 48     mov         rsi,qword ptr [rsp+48h]
  00000001400012E5: 48 83 C4 30        add         rsp,30h
  00000001400012E9: 5F                 pop         rdi
  00000001400012EA: C3                 ret
  00000001400012EB: B9 07 00 00 00     mov         ecx,7
  00000001400012F0: E8 97 03 00 00     call        __scrt_fastfail
  00000001400012F5: 90                 nop
  00000001400012F6: B9 07 00 00 00     mov         ecx,7
  00000001400012FB: E8 8C 03 00 00     call        __scrt_fastfail
  0000000140001300: 8B CB              mov         ecx,ebx
  0000000140001302: E8 17 08 00 00     call        exit
  0000000140001307: 90                 nop
  0000000140001308: 8B CB              mov         ecx,ebx
  000000014000130A: E8 15 08 00 00     call        _exit
  000000014000130F: 90                 nop
mainCRTStartup:
  0000000140001310: 48 83 EC 28        sub         rsp,28h
  0000000140001314: E8 4B 02 00 00     call        __security_init_cookie
  0000000140001319: 48 83 C4 28        add         rsp,28h
  000000014000131D: E9 72 FE FF FF     jmp         0000000140001194
  0000000140001322: CC CC                                            II
__scrt_acquire_startup_lock:
  0000000140001324: 48 83 EC 28        sub         rsp,28h
  0000000140001328: E8 93 07 00 00     call        __scrt_is_ucrt_dll_in_use
  000000014000132D: 85 C0              test        eax,eax
  000000014000132F: 74 21              je          0000000140001352
  0000000140001331: 65 48 8B 04 25 30  mov         rax,qword ptr gs:[30h]
                    00 00 00
  000000014000133A: 48 8B 48 08        mov         rcx,qword ptr [rax+8]
  000000014000133E: EB 05              jmp         0000000140001345
  0000000140001340: 48 3B C8           cmp         rcx,rax
  0000000140001343: 74 14              je          0000000140001359
  0000000140001345: 33 C0              xor         eax,eax
  0000000140001347: F0 48 0F B1 0D 58  lock cmpxchg qword ptr [__scrt_native_startup_lock],rcx
                    2D 00 00
  0000000140001350: 75 EE              jne         0000000140001340
  0000000140001352: 32 C0              xor         al,al
  0000000140001354: 48 83 C4 28        add         rsp,28h
  0000000140001358: C3                 ret
  0000000140001359: B0 01              mov         al,1
  000000014000135B: EB F7              jmp         0000000140001354
  000000014000135D: CC CC CC                                         III
__scrt_initialize_crt:
  0000000140001360: 48 83 EC 28        sub         rsp,28h
  0000000140001364: 85 C9              test        ecx,ecx
  0000000140001366: 75 07              jne         000000014000136F
  0000000140001368: C6 05 41 2D 00 00  mov         byte ptr [1400040B0h],1
                    01
  000000014000136F: E8 A0 05 00 00     call        __isa_available_init
  0000000140001374: E8 BB 02 00 00     call        __acrt_initialize
  0000000140001379: 84 C0              test        al,al
  000000014000137B: 75 04              jne         0000000140001381
  000000014000137D: 32 C0              xor         al,al
  000000014000137F: EB 14              jmp         0000000140001395
  0000000140001381: E8 AE 02 00 00     call        __acrt_initialize
  0000000140001386: 84 C0              test        al,al
  0000000140001388: 75 09              jne         0000000140001393
  000000014000138A: 33 C9              xor         ecx,ecx
  000000014000138C: E8 A3 02 00 00     call        __acrt_initialize
  0000000140001391: EB EA              jmp         000000014000137D
  0000000140001393: B0 01              mov         al,1
  0000000140001395: 48 83 C4 28        add         rsp,28h
  0000000140001399: C3                 ret
  000000014000139A: CC CC                                            II
__scrt_initialize_onexit_tables:
  000000014000139C: 40 53              push        rbx
  000000014000139E: 48 83 EC 20        sub         rsp,20h
  00000001400013A2: 80 3D 08 2D 00 00  cmp         byte ptr [1400040B1h],0
                    00
  00000001400013A9: 8B D9              mov         ebx,ecx
  00000001400013AB: 75 67              jne         0000000140001414
  00000001400013AD: 83 F9 01           cmp         ecx,1
  00000001400013B0: 77 6A              ja          000000014000141C
  00000001400013B2: E8 09 07 00 00     call        __scrt_is_ucrt_dll_in_use
  00000001400013B7: 85 C0              test        eax,eax
  00000001400013B9: 74 28              je          00000001400013E3
  00000001400013BB: 85 DB              test        ebx,ebx
  00000001400013BD: 75 24              jne         00000001400013E3
  00000001400013BF: 48 8D 0D F2 2C 00  lea         rcx,[1400040B8h]
                    00
  00000001400013C6: E8 95 07 00 00     call        _initialize_onexit_table
  00000001400013CB: 85 C0              test        eax,eax
  00000001400013CD: 75 10              jne         00000001400013DF
  00000001400013CF: 48 8D 0D FA 2C 00  lea         rcx,[1400040D0h]
                    00
  00000001400013D6: E8 85 07 00 00     call        _initialize_onexit_table
  00000001400013DB: 85 C0              test        eax,eax
  00000001400013DD: 74 2E              je          000000014000140D
  00000001400013DF: 32 C0              xor         al,al
  00000001400013E1: EB 33              jmp         0000000140001416
  00000001400013E3: 66 0F 6F 05 45 10  movdqa      xmm0,xmmword ptr [__xmm@ffffffffffffffffffffffffffffffff]
                    00 00
  00000001400013EB: 48 83 C8 FF        or          rax,0FFFFFFFFFFFFFFFFh
  00000001400013EF: F3 0F 7F 05 C1 2C  movdqu      xmmword ptr [1400040B8h],xmm0
                    00 00
  00000001400013F7: 48 89 05 CA 2C 00  mov         qword ptr [1400040C8h],rax
                    00
  00000001400013FE: F3 0F 7F 05 CA 2C  movdqu      xmmword ptr [1400040D0h],xmm0
                    00 00
  0000000140001406: 48 89 05 D3 2C 00  mov         qword ptr [1400040E0h],rax
                    00
  000000014000140D: C6 05 9D 2C 00 00  mov         byte ptr [1400040B1h],1
                    01
  0000000140001414: B0 01              mov         al,1
  0000000140001416: 48 83 C4 20        add         rsp,20h
  000000014000141A: 5B                 pop         rbx
  000000014000141B: C3                 ret
  000000014000141C: B9 05 00 00 00     mov         ecx,5
  0000000140001421: E8 66 02 00 00     call        __scrt_fastfail
  0000000140001426: CC                 int         3
  0000000140001427: CC                                               I
__scrt_is_nonwritable_in_current_image:
  0000000140001428: 48 83 EC 18        sub         rsp,18h
  000000014000142C: 4C 8B C1           mov         r8,rcx
  000000014000142F: B8 4D 5A 00 00     mov         eax,5A4Dh
  0000000140001434: 66 39 05 C5 EB FF  cmp         word ptr [140000000h],ax
                    FF
  000000014000143B: 75 78              jne         00000001400014B5
  000000014000143D: 48 63 0D F8 EB FF  movsxd      rcx,dword ptr [14000003Ch]
                    FF
  0000000140001444: 48 8D 15 B5 EB FF  lea         rdx,[140000000h]
                    FF
  000000014000144B: 48 03 CA           add         rcx,rdx
  000000014000144E: 81 39 50 45 00 00  cmp         dword ptr [rcx],4550h
  0000000140001454: 75 5F              jne         00000001400014B5
  0000000140001456: B8 0B 02 00 00     mov         eax,20Bh
  000000014000145B: 66 39 41 18        cmp         word ptr [rcx+18h],ax
  000000014000145F: 75 54              jne         00000001400014B5
  0000000140001461: 4C 2B C2           sub         r8,rdx
  0000000140001464: 0F B7 51 14        movzx       edx,word ptr [rcx+14h]
  0000000140001468: 48 83 C2 18        add         rdx,18h
  000000014000146C: 48 03 D1           add         rdx,rcx
  000000014000146F: 0F B7 41 06        movzx       eax,word ptr [rcx+6]
  0000000140001473: 48 8D 0C 80        lea         rcx,[rax+rax*4]
  0000000140001477: 4C 8D 0C CA        lea         r9,[rdx+rcx*8]
  000000014000147B: 48 89 14 24        mov         qword ptr [rsp],rdx
  000000014000147F: 49 3B D1           cmp         rdx,r9
  0000000140001482: 74 18              je          000000014000149C
  0000000140001484: 8B 4A 0C           mov         ecx,dword ptr [rdx+0Ch]
  0000000140001487: 4C 3B C1           cmp         r8,rcx
  000000014000148A: 72 0A              jb          0000000140001496
  000000014000148C: 8B 42 08           mov         eax,dword ptr [rdx+8]
  000000014000148F: 03 C1              add         eax,ecx
  0000000140001491: 4C 3B C0           cmp         r8,rax
  0000000140001494: 72 08              jb          000000014000149E
  0000000140001496: 48 83 C2 28        add         rdx,28h
  000000014000149A: EB DF              jmp         000000014000147B
  000000014000149C: 33 D2              xor         edx,edx
  000000014000149E: 48 85 D2           test        rdx,rdx
  00000001400014A1: 75 04              jne         00000001400014A7
  00000001400014A3: 32 C0              xor         al,al
  00000001400014A5: EB 14              jmp         00000001400014BB
  00000001400014A7: 83 7A 24 00        cmp         dword ptr [rdx+24h],0
  00000001400014AB: 7D 04              jge         00000001400014B1
  00000001400014AD: 32 C0              xor         al,al
  00000001400014AF: EB 0A              jmp         00000001400014BB
  00000001400014B1: B0 01              mov         al,1
  00000001400014B3: EB 06              jmp         00000001400014BB
  00000001400014B5: 32 C0              xor         al,al
  00000001400014B7: EB 02              jmp         00000001400014BB
  00000001400014B9: 32 C0              xor         al,al
  00000001400014BB: 48 83 C4 18        add         rsp,18h
  00000001400014BF: C3                 ret
__scrt_release_startup_lock:
  00000001400014C0: 40 53              push        rbx
  00000001400014C2: 48 83 EC 20        sub         rsp,20h
  00000001400014C6: 8A D9              mov         bl,cl
  00000001400014C8: E8 F3 05 00 00     call        __scrt_is_ucrt_dll_in_use
  00000001400014CD: 33 D2              xor         edx,edx
  00000001400014CF: 85 C0              test        eax,eax
  00000001400014D1: 74 0B              je          00000001400014DE
  00000001400014D3: 84 DB              test        bl,bl
  00000001400014D5: 75 07              jne         00000001400014DE
  00000001400014D7: 48 87 15 CA 2B 00  xchg        rdx,qword ptr [__scrt_native_startup_lock]
                    00
  00000001400014DE: 48 83 C4 20        add         rsp,20h
  00000001400014E2: 5B                 pop         rbx
  00000001400014E3: C3                 ret
__scrt_uninitialize_crt:
  00000001400014E4: 40 53              push        rbx
  00000001400014E6: 48 83 EC 20        sub         rsp,20h
  00000001400014EA: 80 3D BF 2B 00 00  cmp         byte ptr [1400040B0h],0
                    00
  00000001400014F1: 8A D9              mov         bl,cl
  00000001400014F3: 74 04              je          00000001400014F9
  00000001400014F5: 84 D2              test        dl,dl
  00000001400014F7: 75 0C              jne         0000000140001505
  00000001400014F9: E8 36 01 00 00     call        __acrt_initialize
  00000001400014FE: 8A CB              mov         cl,bl
  0000000140001500: E8 2F 01 00 00     call        __acrt_initialize
  0000000140001505: B0 01              mov         al,1
  0000000140001507: 48 83 C4 20        add         rsp,20h
  000000014000150B: 5B                 pop         rbx
  000000014000150C: C3                 ret
  000000014000150D: CC CC CC                                         III
_onexit:
  0000000140001510: 40 53              push        rbx
  0000000140001512: 48 83 EC 20        sub         rsp,20h
  0000000140001516: 48 83 3D 9A 2B 00  cmp         qword ptr [1400040B8h],0FFFFFFFFFFFFFFFFh
                    00 FF
  000000014000151E: 48 8B D9           mov         rbx,rcx
  0000000140001521: 75 07              jne         000000014000152A
  0000000140001523: E8 44 06 00 00     call        _crt_atexit
  0000000140001528: EB 0F              jmp         0000000140001539
  000000014000152A: 48 8B D3           mov         rdx,rbx
  000000014000152D: 48 8D 0D 84 2B 00  lea         rcx,[1400040B8h]
                    00
  0000000140001534: E8 2D 06 00 00     call        _register_onexit_function
  0000000140001539: 33 D2              xor         edx,edx
  000000014000153B: 85 C0              test        eax,eax
  000000014000153D: 48 0F 44 D3        cmove       rdx,rbx
  0000000140001541: 48 8B C2           mov         rax,rdx
  0000000140001544: 48 83 C4 20        add         rsp,20h
  0000000140001548: 5B                 pop         rbx
  0000000140001549: C3                 ret
  000000014000154A: CC CC                                            II
atexit:
  000000014000154C: 48 83 EC 28        sub         rsp,28h
  0000000140001550: E8 BB FF FF FF     call        _onexit
  0000000140001555: 48 F7 D8           neg         rax
  0000000140001558: 1B C0              sbb         eax,eax
  000000014000155A: F7 D8              neg         eax
  000000014000155C: FF C8              dec         eax
  000000014000155E: 48 83 C4 28        add         rsp,28h
  0000000140001562: C3                 ret
  0000000140001563: CC                                               I
__security_init_cookie:
  0000000140001564: 48 89 5C 24 18     mov         qword ptr [rsp+18h],rbx
  0000000140001569: 55                 push        rbp
  000000014000156A: 48 8B EC           mov         rbp,rsp
  000000014000156D: 48 83 EC 30        sub         rsp,30h
  0000000140001571: 48 8B 05 C8 2A 00  mov         rax,qword ptr [__security_cookie]
                    00
  0000000140001578: 48 BB 32 A2 DF 2D  mov         rbx,2B992DDFA232h
                    99 2B 00 00
  0000000140001582: 48 3B C3           cmp         rax,rbx
  0000000140001585: 75 74              jne         00000001400015FB
  0000000140001587: 48 83 65 10 00     and         qword ptr [rbp+10h],0
  000000014000158C: 48 8D 4D 10        lea         rcx,[rbp+10h]
  0000000140001590: FF 15 C2 0A 00 00  call        qword ptr [__imp_GetSystemTimeAsFileTime]
  0000000140001596: 48 8B 45 10        mov         rax,qword ptr [rbp+10h]
  000000014000159A: 48 89 45 F0        mov         qword ptr [rbp-10h],rax
  000000014000159E: FF 15 64 0A 00 00  call        qword ptr [__imp_GetCurrentThreadId]
  00000001400015A4: 8B C0              mov         eax,eax
  00000001400015A6: 48 31 45 F0        xor         qword ptr [rbp-10h],rax
  00000001400015AA: FF 15 B0 0A 00 00  call        qword ptr [__imp_GetCurrentProcessId]
  00000001400015B0: 8B C0              mov         eax,eax
  00000001400015B2: 48 8D 4D 18        lea         rcx,[rbp+18h]
  00000001400015B6: 48 31 45 F0        xor         qword ptr [rbp-10h],rax
  00000001400015BA: FF 15 40 0A 00 00  call        qword ptr [__imp_QueryPerformanceCounter]
  00000001400015C0: 8B 45 18           mov         eax,dword ptr [rbp+18h]
  00000001400015C3: 48 8D 4D F0        lea         rcx,[rbp-10h]
  00000001400015C7: 48 C1 E0 20        shl         rax,20h
  00000001400015CB: 48 33 45 18        xor         rax,qword ptr [rbp+18h]
  00000001400015CF: 48 33 45 F0        xor         rax,qword ptr [rbp-10h]
  00000001400015D3: 48 33 C1           xor         rax,rcx
  00000001400015D6: 48 B9 FF FF FF FF  mov         rcx,0FFFFFFFFFFFFh
                    FF FF 00 00
  00000001400015E0: 48 23 C1           and         rax,rcx
  00000001400015E3: 48 B9 33 A2 DF 2D  mov         rcx,2B992DDFA233h
                    99 2B 00 00
  00000001400015ED: 48 3B C3           cmp         rax,rbx
  00000001400015F0: 48 0F 44 C1        cmove       rax,rcx
  00000001400015F4: 48 89 05 45 2A 00  mov         qword ptr [__security_cookie],rax
                    00
  00000001400015FB: 48 8B 5C 24 50     mov         rbx,qword ptr [rsp+50h]
  0000000140001600: 48 F7 D0           not         rax
  0000000140001603: 48 89 05 76 2A 00  mov         qword ptr [__security_cookie_complement],rax
                    00
  000000014000160A: 48 83 C4 30        add         rsp,30h
  000000014000160E: 5D                 pop         rbp
  000000014000160F: C3                 ret
__scrt_exe_initialize_mta:
  0000000140001610: 33 C0              xor         eax,eax
  0000000140001612: C3                 ret
  0000000140001613: CC                                               I
_get_startup_argv_mode:
  0000000140001614: B8 01 00 00 00     mov         eax,1
  0000000140001619: C3                 ret
  000000014000161A: CC CC                                            II
_get_startup_file_mode:
  000000014000161C: B8 00 40 00 00     mov         eax,4000h
  0000000140001621: C3                 ret
  0000000140001622: CC CC                                            II
?__scrt_initialize_type_info@@YAXXZ:
  0000000140001624: 48 8D 0D C5 2A 00  lea         rcx,[?__type_info_root_node@@3U__type_info_node@@A]
                    00
  000000014000162B: 48 FF 25 1E 0A 00  jmp         qword ptr [__imp_InitializeSListHead]
                    00
  0000000140001632: CC CC                                            II
__acrt_initialize:
  0000000140001634: B0 01              mov         al,1
  0000000140001636: C3                 ret
  0000000140001637: CC                                               I
_guard_check_icall_nop:
  0000000140001638: C2 00 00           ret         0
  000000014000163B: CC                                               I
__local_stdio_printf_options:
  000000014000163C: 48 8D 05 BD 2A 00  lea         rax,[?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA]
                    00
  0000000140001643: C3                 ret
__local_stdio_scanf_options:
  0000000140001644: 48 8D 05 BD 2A 00  lea         rax,[?_OptionsStorage@?1??__local_stdio_scanf_options@@9@4_KA]
                    00
  000000014000164B: C3                 ret
__scrt_initialize_default_local_stdio_options:
  000000014000164C: 48 83 EC 28        sub         rsp,28h
  0000000140001650: E8 E7 FF FF FF     call        __local_stdio_printf_options
  0000000140001655: 48 83 08 24        or          qword ptr [rax],24h
  0000000140001659: E8 E6 FF FF FF     call        __local_stdio_scanf_options
  000000014000165E: 48 83 08 02        or          qword ptr [rax],2
  0000000140001662: 48 83 C4 28        add         rsp,28h
  0000000140001666: C3                 ret
  0000000140001667: CC                                               I
__scrt_is_user_matherr_present:
  0000000140001668: 33 C0              xor         eax,eax
  000000014000166A: 39 05 94 29 00 00  cmp         dword ptr [__scrt_default_matherr],eax
  0000000140001670: 0F 94 C0           sete        al
  0000000140001673: C3                 ret
__scrt_get_dyn_tls_init_callback:
  0000000140001674: 48 8D 05 A5 2A 00  lea         rax,[__dyn_tls_init_callback]
                    00
  000000014000167B: C3                 ret
__scrt_get_dyn_tls_dtor_callback:
  000000014000167C: 48 8D 05 95 2A 00  lea         rax,[__dyn_tls_dtor_callback]
                    00
  0000000140001683: C3                 ret
__crt_debugger_hook:
  0000000140001684: 83 25 85 2A 00 00  and         dword ptr [__scrt_debugger_hook_flag],0
                    00
  000000014000168B: C3                 ret
__scrt_fastfail:
  000000014000168C: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  0000000140001691: 55                 push        rbp
  0000000140001692: 48 8D AC 24 40 FB  lea         rbp,[rsp-4C0h]
                    FF FF
  000000014000169A: 48 81 EC C0 05 00  sub         rsp,5C0h
                    00
  00000001400016A1: 8B D9              mov         ebx,ecx
  00000001400016A3: B9 17 00 00 00     mov         ecx,17h
  00000001400016A8: FF 15 6A 09 00 00  call        qword ptr [__imp_IsProcessorFeaturePresent]
  00000001400016AE: 85 C0              test        eax,eax
  00000001400016B0: 74 04              je          00000001400016B6
  00000001400016B2: 8B CB              mov         ecx,ebx
  00000001400016B4: CD 29              int         29h
  00000001400016B6: B9 03 00 00 00     mov         ecx,3
  00000001400016BB: E8 C4 FF FF FF     call        __crt_debugger_hook
  00000001400016C0: 33 D2              xor         edx,edx
  00000001400016C2: 48 8D 4D F0        lea         rcx,[rbp-10h]
  00000001400016C6: 41 B8 D0 04 00 00  mov         r8d,4D0h
  00000001400016CC: E8 17 04 00 00     call        memset
  00000001400016D1: 48 8D 4D F0        lea         rcx,[rbp-10h]
  00000001400016D5: FF 15 6D 09 00 00  call        qword ptr [__imp_RtlCaptureContext]
  00000001400016DB: 48 8B 9D E8 00 00  mov         rbx,qword ptr [rbp+0E8h]
                    00
  00000001400016E2: 48 8D 95 D8 04 00  lea         rdx,[rbp+4D8h]
                    00
  00000001400016E9: 48 8B CB           mov         rcx,rbx
  00000001400016EC: 45 33 C0           xor         r8d,r8d
  00000001400016EF: FF 15 4B 09 00 00  call        qword ptr [__imp_RtlLookupFunctionEntry]
  00000001400016F5: 48 85 C0           test        rax,rax
  00000001400016F8: 74 3C              je          0000000140001736
  00000001400016FA: 48 83 64 24 38 00  and         qword ptr [rsp+38h],0
  0000000140001700: 48 8D 8D E0 04 00  lea         rcx,[rbp+4E0h]
                    00
  0000000140001707: 48 8B 95 D8 04 00  mov         rdx,qword ptr [rbp+4D8h]
                    00
  000000014000170E: 4C 8B C8           mov         r9,rax
  0000000140001711: 48 89 4C 24 30     mov         qword ptr [rsp+30h],rcx
  0000000140001716: 4C 8B C3           mov         r8,rbx
  0000000140001719: 48 8D 8D E8 04 00  lea         rcx,[rbp+4E8h]
                    00
  0000000140001720: 48 89 4C 24 28     mov         qword ptr [rsp+28h],rcx
  0000000140001725: 48 8D 4D F0        lea         rcx,[rbp-10h]
  0000000140001729: 48 89 4C 24 20     mov         qword ptr [rsp+20h],rcx
  000000014000172E: 33 C9              xor         ecx,ecx
  0000000140001730: FF 15 02 09 00 00  call        qword ptr [__imp_RtlVirtualUnwind]
  0000000140001736: 48 8B 85 C8 04 00  mov         rax,qword ptr [rbp+4C8h]
                    00
  000000014000173D: 48 8D 4C 24 50     lea         rcx,[rsp+50h]
  0000000140001742: 48 89 85 E8 00 00  mov         qword ptr [rbp+0E8h],rax
                    00
  0000000140001749: 33 D2              xor         edx,edx
  000000014000174B: 48 8D 85 C8 04 00  lea         rax,[rbp+4C8h]
                    00
  0000000140001752: 41 B8 98 00 00 00  mov         r8d,98h
  0000000140001758: 48 83 C0 08        add         rax,8
  000000014000175C: 48 89 85 88 00 00  mov         qword ptr [rbp+88h],rax
                    00
  0000000140001763: E8 80 03 00 00     call        memset
  0000000140001768: 48 8B 85 C8 04 00  mov         rax,qword ptr [rbp+4C8h]
                    00
  000000014000176F: 48 89 44 24 60     mov         qword ptr [rsp+60h],rax
  0000000140001774: C7 44 24 50 15 00  mov         dword ptr [rsp+50h],40000015h
                    00 40
  000000014000177C: C7 44 24 54 01 00  mov         dword ptr [rsp+54h],1
                    00 00
  0000000140001784: FF 15 A6 08 00 00  call        qword ptr [__imp_IsDebuggerPresent]
  000000014000178A: 8B D8              mov         ebx,eax
  000000014000178C: 33 C9              xor         ecx,ecx
  000000014000178E: 48 8D 44 24 50     lea         rax,[rsp+50h]
  0000000140001793: 48 89 44 24 40     mov         qword ptr [rsp+40h],rax
  0000000140001798: 48 8D 45 F0        lea         rax,[rbp-10h]
  000000014000179C: 48 89 44 24 48     mov         qword ptr [rsp+48h],rax
  00000001400017A1: FF 15 79 08 00 00  call        qword ptr [__imp_SetUnhandledExceptionFilter]
  00000001400017A7: 48 8D 4C 24 40     lea         rcx,[rsp+40h]
  00000001400017AC: FF 15 76 08 00 00  call        qword ptr [__imp_UnhandledExceptionFilter]
  00000001400017B2: 85 C0              test        eax,eax
  00000001400017B4: 75 0D              jne         00000001400017C3
  00000001400017B6: 83 FB 01           cmp         ebx,1
  00000001400017B9: 74 08              je          00000001400017C3
  00000001400017BB: 8D 48 03           lea         ecx,[rax+3]
  00000001400017BE: E8 C1 FE FF FF     call        __crt_debugger_hook
  00000001400017C3: 48 8B 9C 24 D0 05  mov         rbx,qword ptr [rsp+5D0h]
                    00 00
  00000001400017CB: 48 81 C4 C0 05 00  add         rsp,5C0h
                    00
  00000001400017D2: 5D                 pop         rbp
  00000001400017D3: C3                 ret
__scrt_initialize_mta:
  00000001400017D4: E9 37 FE FF FF     jmp         __scrt_exe_initialize_mta
  00000001400017D9: CC CC CC                                         III
__scrt_is_managed_app:
  00000001400017DC: 48 83 EC 28        sub         rsp,28h
  00000001400017E0: 33 C9              xor         ecx,ecx
  00000001400017E2: FF 15 28 08 00 00  call        qword ptr [__imp_GetModuleHandleW]
  00000001400017E8: 48 85 C0           test        rax,rax
  00000001400017EB: 74 39              je          0000000140001826
  00000001400017ED: B9 4D 5A 00 00     mov         ecx,5A4Dh
  00000001400017F2: 66 39 08           cmp         word ptr [rax],cx
  00000001400017F5: 75 2F              jne         0000000140001826
  00000001400017F7: 48 63 48 3C        movsxd      rcx,dword ptr [rax+3Ch]
  00000001400017FB: 48 03 C8           add         rcx,rax
  00000001400017FE: 81 39 50 45 00 00  cmp         dword ptr [rcx],4550h
  0000000140001804: 75 20              jne         0000000140001826
  0000000140001806: B8 0B 02 00 00     mov         eax,20Bh
  000000014000180B: 66 39 41 18        cmp         word ptr [rcx+18h],ax
  000000014000180F: 75 15              jne         0000000140001826
  0000000140001811: 83 B9 84 00 00 00  cmp         dword ptr [rcx+84h],0Eh
                    0E
  0000000140001818: 76 0C              jbe         0000000140001826
  000000014000181A: 83 B9 F8 00 00 00  cmp         dword ptr [rcx+0F8h],0
                    00
  0000000140001821: 0F 95 C0           setne       al
  0000000140001824: EB 02              jmp         0000000140001828
  0000000140001826: 32 C0              xor         al,al
  0000000140001828: 48 83 C4 28        add         rsp,28h
  000000014000182C: C3                 ret
  000000014000182D: CC CC CC                                         III
__scrt_set_unhandled_exception_filter:
  0000000140001830: 48 8D 0D 09 00 00  lea         rcx,[__scrt_unhandled_exception_filter]
                    00
  0000000140001837: 48 FF 25 E2 07 00  jmp         qword ptr [__imp_SetUnhandledExceptionFilter]
                    00
  000000014000183E: CC CC                                            II
__scrt_unhandled_exception_filter:
  0000000140001840: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  0000000140001845: 57                 push        rdi
  0000000140001846: 48 83 EC 20        sub         rsp,20h
  000000014000184A: 48 8B 19           mov         rbx,qword ptr [rcx]
  000000014000184D: 48 8B F9           mov         rdi,rcx
  0000000140001850: 81 3B 63 73 6D E0  cmp         dword ptr [rbx],0E06D7363h
  0000000140001856: 75 1C              jne         0000000140001874
  0000000140001858: 83 7B 18 04        cmp         dword ptr [rbx+18h],4
  000000014000185C: 75 16              jne         0000000140001874
  000000014000185E: 8B 53 20           mov         edx,dword ptr [rbx+20h]
  0000000140001861: 8D 82 E0 FA 6C E6  lea         eax,[rdx-19930520h]
  0000000140001867: 83 F8 02           cmp         eax,2
  000000014000186A: 76 15              jbe         0000000140001881
  000000014000186C: 81 FA 00 40 99 01  cmp         edx,1994000h
  0000000140001872: 74 0D              je          0000000140001881
  0000000140001874: 48 8B 5C 24 30     mov         rbx,qword ptr [rsp+30h]
  0000000140001879: 33 C0              xor         eax,eax
  000000014000187B: 48 83 C4 20        add         rsp,20h
  000000014000187F: 5F                 pop         rdi
  0000000140001880: C3                 ret
  0000000140001881: E8 56 02 00 00     call        __current_exception
  0000000140001886: 48 89 18           mov         qword ptr [rax],rbx
  0000000140001889: 48 8B 5F 08        mov         rbx,qword ptr [rdi+8]
  000000014000188D: E8 50 02 00 00     call        __current_exception_context
  0000000140001892: 48 89 18           mov         qword ptr [rax],rbx
  0000000140001895: E8 D8 02 00 00     call        terminate
  000000014000189A: CC                 int         3
  000000014000189B: CC                                               I
_RTC_Initialize:
  000000014000189C: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  00000001400018A1: 57                 push        rdi
  00000001400018A2: 48 83 EC 20        sub         rsp,20h
  00000001400018A6: 48 8D 1D 63 10 00  lea         rbx,[__rtc_izz]
                    00
  00000001400018AD: 48 8D 3D 5C 10 00  lea         rdi,[__rtc_izz]
                    00
  00000001400018B4: EB 12              jmp         00000001400018C8
  00000001400018B6: 48 8B 03           mov         rax,qword ptr [rbx]
  00000001400018B9: 48 85 C0           test        rax,rax
  00000001400018BC: 74 06              je          00000001400018C4
  00000001400018BE: FF 15 24 09 00 00  call        qword ptr [__guard_dispatch_icall_fptr]
  00000001400018C4: 48 83 C3 08        add         rbx,8
  00000001400018C8: 48 3B DF           cmp         rbx,rdi
  00000001400018CB: 72 E9              jb          00000001400018B6
  00000001400018CD: 48 8B 5C 24 30     mov         rbx,qword ptr [rsp+30h]
  00000001400018D2: 48 83 C4 20        add         rsp,20h
  00000001400018D6: 5F                 pop         rdi
  00000001400018D7: C3                 ret
_RTC_Terminate:
  00000001400018D8: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  00000001400018DD: 57                 push        rdi
  00000001400018DE: 48 83 EC 20        sub         rsp,20h
  00000001400018E2: 48 8D 1D 37 10 00  lea         rbx,[__rtc_tzz]
                    00
  00000001400018E9: 48 8D 3D 30 10 00  lea         rdi,[__rtc_tzz]
                    00
  00000001400018F0: EB 12              jmp         0000000140001904
  00000001400018F2: 48 8B 03           mov         rax,qword ptr [rbx]
  00000001400018F5: 48 85 C0           test        rax,rax
  00000001400018F8: 74 06              je          0000000140001900
  00000001400018FA: FF 15 E8 08 00 00  call        qword ptr [__guard_dispatch_icall_fptr]
  0000000140001900: 48 83 C3 08        add         rbx,8
  0000000140001904: 48 3B DF           cmp         rbx,rdi
  0000000140001907: 72 E9              jb          00000001400018F2
  0000000140001909: 48 8B 5C 24 30     mov         rbx,qword ptr [rsp+30h]
  000000014000190E: 48 83 C4 20        add         rsp,20h
  0000000140001912: 5F                 pop         rdi
  0000000140001913: C3                 ret
__isa_available_init:
  0000000140001914: 48 89 5C 24 10     mov         qword ptr [rsp+10h],rbx
  0000000140001919: 48 89 74 24 18     mov         qword ptr [rsp+18h],rsi
  000000014000191E: 57                 push        rdi
  000000014000191F: 48 83 EC 10        sub         rsp,10h
  0000000140001923: 33 C0              xor         eax,eax
  0000000140001925: 33 C9              xor         ecx,ecx
  0000000140001927: 0F A2              cpuid
  0000000140001929: 44 8B C1           mov         r8d,ecx
  000000014000192C: 45 33 DB           xor         r11d,r11d
  000000014000192F: 44 8B D2           mov         r10d,edx
  0000000140001932: 41 81 F0 6E 74 65  xor         r8d,6C65746Eh
                    6C
  0000000140001939: 41 81 F2 69 6E 65  xor         r10d,49656E69h
                    49
  0000000140001940: 44 8B CB           mov         r9d,ebx
  0000000140001943: 8B F0              mov         esi,eax
  0000000140001945: 33 C9              xor         ecx,ecx
  0000000140001947: 41 8D 43 01        lea         eax,[r11+1]
  000000014000194B: 45 0B D0           or          r10d,r8d
  000000014000194E: 0F A2              cpuid
  0000000140001950: 41 81 F1 47 65 6E  xor         r9d,756E6547h
                    75
  0000000140001957: 89 04 24           mov         dword ptr [rsp],eax
  000000014000195A: 45 0B D1           or          r10d,r9d
  000000014000195D: 89 5C 24 04        mov         dword ptr [rsp+4],ebx
  0000000140001961: 8B F9              mov         edi,ecx
  0000000140001963: 89 4C 24 08        mov         dword ptr [rsp+8],ecx
  0000000140001967: 89 54 24 0C        mov         dword ptr [rsp+0Ch],edx
  000000014000196B: 75 5B              jne         00000001400019C8
  000000014000196D: 48 83 0D A3 26 00  or          qword ptr [__memset_nt_threshold],0FFFFFFFFFFFFFFFFh
                    00 FF
  0000000140001975: 25 F0 3F FF 0F     and         eax,0FFF3FF0h
  000000014000197A: 48 C7 05 8B 26 00  mov         qword ptr [__memset_fast_string_threshold],8000h
                    00 00 80 00 00
  0000000140001985: 3D C0 06 01 00     cmp         eax,106C0h
  000000014000198A: 74 28              je          00000001400019B4
  000000014000198C: 3D 60 06 02 00     cmp         eax,20660h
  0000000140001991: 74 21              je          00000001400019B4
  0000000140001993: 3D 70 06 02 00     cmp         eax,20670h
  0000000140001998: 74 1A              je          00000001400019B4
  000000014000199A: 05 B0 F9 FC FF     add         eax,0FFFCF9B0h
  000000014000199F: 83 F8 20           cmp         eax,20h
  00000001400019A2: 77 24              ja          00000001400019C8
  00000001400019A4: 48 B9 01 00 01 00  mov         rcx,100010001h
                    01 00 00 00
  00000001400019AE: 48 0F A3 C1        bt          rcx,rax
  00000001400019B2: 73 14              jae         00000001400019C8
  00000001400019B4: 44 8B 05 59 27 00  mov         r8d,dword ptr [__favor]
                    00
  00000001400019BB: 41 83 C8 01        or          r8d,1
  00000001400019BF: 44 89 05 4E 27 00  mov         dword ptr [__favor],r8d
                    00
  00000001400019C6: EB 07              jmp         00000001400019CF
  00000001400019C8: 44 8B 05 45 27 00  mov         r8d,dword ptr [__favor]
                    00
  00000001400019CF: B8 07 00 00 00     mov         eax,7
  00000001400019D4: 44 8D 48 FB        lea         r9d,[rax-5]
  00000001400019D8: 3B F0              cmp         esi,eax
  00000001400019DA: 7C 26              jl          0000000140001A02
  00000001400019DC: 33 C9              xor         ecx,ecx
  00000001400019DE: 0F A2              cpuid
  00000001400019E0: 89 04 24           mov         dword ptr [rsp],eax
  00000001400019E3: 44 8B DB           mov         r11d,ebx
  00000001400019E6: 89 5C 24 04        mov         dword ptr [rsp+4],ebx
  00000001400019EA: 89 4C 24 08        mov         dword ptr [rsp+8],ecx
  00000001400019EE: 89 54 24 0C        mov         dword ptr [rsp+0Ch],edx
  00000001400019F2: 0F BA E3 09        bt          ebx,9
  00000001400019F6: 73 0A              jae         0000000140001A02
  00000001400019F8: 45 0B C1           or          r8d,r9d
  00000001400019FB: 44 89 05 12 27 00  mov         dword ptr [__favor],r8d
                    00
  0000000140001A02: C7 05 FC 25 00 00  mov         dword ptr [__isa_available],1
                    01 00 00 00
  0000000140001A0C: 44 89 0D F9 25 00  mov         dword ptr [__isa_enabled],r9d
                    00
  0000000140001A13: 0F BA E7 14        bt          edi,14h
  0000000140001A17: 0F 83 91 00 00 00  jae         0000000140001AAE
  0000000140001A1D: 44 89 0D E4 25 00  mov         dword ptr [__isa_available],r9d
                    00
  0000000140001A24: BB 06 00 00 00     mov         ebx,6
  0000000140001A29: 89 1D DD 25 00 00  mov         dword ptr [__isa_enabled],ebx
  0000000140001A2F: 0F BA E7 1B        bt          edi,1Bh
  0000000140001A33: 73 79              jae         0000000140001AAE
  0000000140001A35: 0F BA E7 1C        bt          edi,1Ch
  0000000140001A39: 73 73              jae         0000000140001AAE
  0000000140001A3B: 33 C9              xor         ecx,ecx
  0000000140001A3D: 0F 01 D0           xgetbv
  0000000140001A40: 48 C1 E2 20        shl         rdx,20h
  0000000140001A44: 48 0B D0           or          rdx,rax
  0000000140001A47: 48 89 54 24 20     mov         qword ptr [rsp+20h],rdx
  0000000140001A4C: 48 8B 44 24 20     mov         rax,qword ptr [rsp+20h]
  0000000140001A51: 22 C3              and         al,bl
  0000000140001A53: 3A C3              cmp         al,bl
  0000000140001A55: 75 57              jne         0000000140001AAE
  0000000140001A57: 8B 05 AF 25 00 00  mov         eax,dword ptr [__isa_enabled]
  0000000140001A5D: 83 C8 08           or          eax,8
  0000000140001A60: C7 05 9E 25 00 00  mov         dword ptr [__isa_available],3
                    03 00 00 00
  0000000140001A6A: 89 05 9C 25 00 00  mov         dword ptr [__isa_enabled],eax
  0000000140001A70: 41 F6 C3 20        test        r11b,20h
  0000000140001A74: 74 38              je          0000000140001AAE
  0000000140001A76: 83 C8 20           or          eax,20h
  0000000140001A79: C7 05 85 25 00 00  mov         dword ptr [__isa_available],5
                    05 00 00 00
  0000000140001A83: 89 05 83 25 00 00  mov         dword ptr [__isa_enabled],eax
  0000000140001A89: B8 00 00 03 D0     mov         eax,0D0030000h
  0000000140001A8E: 44 23 D8           and         r11d,eax
  0000000140001A91: 44 3B D8           cmp         r11d,eax
  0000000140001A94: 75 18              jne         0000000140001AAE
  0000000140001A96: 48 8B 44 24 20     mov         rax,qword ptr [rsp+20h]
  0000000140001A9B: 24 E0              and         al,0E0h
  0000000140001A9D: 3C E0              cmp         al,0E0h
  0000000140001A9F: 75 0D              jne         0000000140001AAE
  0000000140001AA1: 83 0D 64 25 00 00  or          dword ptr [__isa_enabled],40h
                    40
  0000000140001AA8: 89 1D 5A 25 00 00  mov         dword ptr [__isa_available],ebx
  0000000140001AAE: 48 8B 5C 24 28     mov         rbx,qword ptr [rsp+28h]
  0000000140001AB3: 33 C0              xor         eax,eax
  0000000140001AB5: 48 8B 74 24 30     mov         rsi,qword ptr [rsp+30h]
  0000000140001ABA: 48 83 C4 10        add         rsp,10h
  0000000140001ABE: 5F                 pop         rdi
  0000000140001ABF: C3                 ret
__scrt_is_ucrt_dll_in_use:
  0000000140001AC0: 33 C0              xor         eax,eax
  0000000140001AC2: 39 05 C8 25 00 00  cmp         dword ptr [__scrt_ucrt_dll_is_in_use],eax
  0000000140001AC8: 0F 95 C0           setne       al
  0000000140001ACB: C3                 ret
  0000000140001ACC: CC CC CC CC                                      IIII
__CxxFrameHandler3:
  0000000140001AD0: FF 25 AA 05 00 00  jmp         qword ptr [__imp___CxxFrameHandler3]
__C_specific_handler:
  0000000140001AD6: FF 25 AC 05 00 00  jmp         qword ptr [__imp___C_specific_handler]
__current_exception:
  0000000140001ADC: FF 25 AE 05 00 00  jmp         qword ptr [__imp___current_exception]
__current_exception_context:
  0000000140001AE2: FF 25 B0 05 00 00  jmp         qword ptr [__imp___current_exception_context]
memset:
  0000000140001AE8: FF 25 8A 05 00 00  jmp         qword ptr [__imp_memset]
_seh_filter_exe:
  0000000140001AEE: FF 25 74 06 00 00  jmp         qword ptr [__imp__seh_filter_exe]
_set_app_type:
  0000000140001AF4: FF 25 46 06 00 00  jmp         qword ptr [__imp__set_app_type]
__setusermatherr:
  0000000140001AFA: FF 25 D8 05 00 00  jmp         qword ptr [__imp___setusermatherr]
_configure_narrow_argv:
  0000000140001B00: FF 25 32 06 00 00  jmp         qword ptr [__imp__configure_narrow_argv]
_initialize_narrow_environment:
  0000000140001B06: FF 25 24 06 00 00  jmp         qword ptr [__imp__initialize_narrow_environment]
_get_initial_narrow_environment:
  0000000140001B0C: FF 25 EE 05 00 00  jmp         qword ptr [__imp__get_initial_narrow_environment]
_initterm:
  0000000140001B12: FF 25 58 06 00 00  jmp         qword ptr [__imp__initterm]
_initterm_e:
  0000000140001B18: FF 25 CA 05 00 00  jmp         qword ptr [__imp__initterm_e]
exit:
  0000000140001B1E: FF 25 CC 05 00 00  jmp         qword ptr [__imp_exit]
_exit:
  0000000140001B24: FF 25 CE 05 00 00  jmp         qword ptr [__imp__exit]
_set_fmode:
  0000000140001B2A: FF 25 58 06 00 00  jmp         qword ptr [__imp__set_fmode]
__p___argc:
  0000000140001B30: FF 25 D2 05 00 00  jmp         qword ptr [__imp___p___argc]
__p___argv:
  0000000140001B36: FF 25 D4 05 00 00  jmp         qword ptr [__imp___p___argv]
_cexit:
  0000000140001B3C: FF 25 D6 05 00 00  jmp         qword ptr [__imp__cexit]
_c_exit:
  0000000140001B42: FF 25 D8 05 00 00  jmp         qword ptr [__imp__c_exit]
_register_thread_local_exe_atexit_callback:
  0000000140001B48: FF 25 DA 05 00 00  jmp         qword ptr [__imp__register_thread_local_exe_atexit_callback]
_configthreadlocale:
  0000000140001B4E: FF 25 74 05 00 00  jmp         qword ptr [__imp__configthreadlocale]
_set_new_mode:
  0000000140001B54: FF 25 5E 05 00 00  jmp         qword ptr [__imp__set_new_mode]
__p__commode:
  0000000140001B5A: FF 25 20 06 00 00  jmp         qword ptr [__imp___p__commode]
_initialize_onexit_table:
  0000000140001B60: FF 25 E2 05 00 00  jmp         qword ptr [__imp__initialize_onexit_table]
_register_onexit_function:
  0000000140001B66: FF 25 E4 05 00 00  jmp         qword ptr [__imp__register_onexit_function]
_crt_atexit:
  0000000140001B6C: FF 25 E6 05 00 00  jmp         qword ptr [__imp__crt_atexit]
terminate:
  0000000140001B72: FF 25 E8 05 00 00  jmp         qword ptr [__imp_terminate]
memcpy:
  0000000140001B78: FF 25 F2 04 00 00  jmp         qword ptr [__imp_memcpy]
  0000000140001B7E: CC CC                                            II
  0000000140001B80: CC                 int         3
  0000000140001B81: CC                 int         3
  0000000140001B82: CC                 int         3
  0000000140001B83: CC                 int         3
  0000000140001B84: CC                 int         3
  0000000140001B85: CC                 int         3
  0000000140001B86: 66 66 0F 1F 84 00  nop         word ptr [rax+rax]
                    00 00 00 00
_guard_dispatch_icall_nop:
  0000000140001B90: FF E0              jmp         rax
  0000000140001B92: CC CC CC CC CC CC CC CC CC CC CC CC CC CC        IIIIIIIIIIIIII
  0000000140001BA0: CC                 int         3
  0000000140001BA1: CC                 int         3
  0000000140001BA2: CC                 int         3
  0000000140001BA3: CC                 int         3
  0000000140001BA4: CC                 int         3
  0000000140001BA5: CC                 int         3
  0000000140001BA6: 66 66 0F 1F 84 00  nop         word ptr [rax+rax]
                    00 00 00 00
_guard_xfg_dispatch_icall_nop:
  0000000140001BB0: FF 25 32 06 00 00  jmp         qword ptr [__guard_dispatch_icall_fptr]
  0000000140001BB6: CC CC CC CC CC CC CC CC CC CC                    IIIIIIIIII
_ZN3std4sync9once_lock17OnceLock$LT$T$GT$10initialize17hd8d7daf22edd086bE:
  0000000140001BC0: 48 83 EC 48        sub         rsp,48h
  0000000140001BC4: 8B 01              mov         eax,dword ptr [rcx]
  0000000140001BC6: 83 F8 04           cmp         eax,4
  0000000140001BC9: 75 05              jne         0000000140001BD0
  0000000140001BCB: 48 83 C4 48        add         rsp,48h
  0000000140001BCF: C3                 ret
  0000000140001BD0: 48 8D 41 04        lea         rax,[rcx+4]
  0000000140001BD4: 48 89 44 24 38     mov         qword ptr [rsp+38h],rax
  0000000140001BD9: 48 8D 44 24 2F     lea         rax,[rsp+2Fh]
  0000000140001BDE: 48 89 44 24 40     mov         qword ptr [rsp+40h],rax
  0000000140001BE3: 48 8D 44 24 38     lea         rax,[rsp+38h]
  0000000140001BE8: 48 89 44 24 30     mov         qword ptr [rsp+30h],rax
  0000000140001BED: 4C 8D 0D FC 06 00  lea         r9,[anon.5050d51537781bf94a528f852f1b822b.1.llvm.15448363941758038402]
                    00
  0000000140001BF4: 4C 8D 44 24 30     lea         r8,[rsp+30h]
  0000000140001BF9: B2 01              mov         dl,1
  0000000140001BFB: E8 10 00 00 00     call        _ZN3std3sys4sync4once5futex4Once4call17hb0badcca8601388aE
  0000000140001C00: EB C9              jmp         0000000140001BCB
  0000000140001C02: CC CC CC CC CC CC CC CC CC CC CC CC CC CC        IIIIIIIIIIIIII
_ZN3std3sys4sync4once5futex4Once4call17hb0badcca8601388aE:
  0000000140001C10: 55                 push        rbp
  0000000140001C11: 41 57              push        r15
  0000000140001C13: 41 56              push        r14
  0000000140001C15: 41 55              push        r13
  0000000140001C17: 41 54              push        r12
  0000000140001C19: 56                 push        rsi
  0000000140001C1A: 57                 push        rdi
  0000000140001C1B: 53                 push        rbx
  0000000140001C1C: 48 83 EC 68        sub         rsp,68h
  0000000140001C20: 48 8D 6C 24 60     lea         rbp,[rsp+60h]
  0000000140001C25: 48 C7 45 00 FE FF  mov         qword ptr [rbp],0FFFFFFFFFFFFFFFEh
                    FF FF
  0000000140001C2D: 4C 89 4D F0        mov         qword ptr [rbp-10h],r9
  0000000140001C31: 4C 89 C7           mov         rdi,r8
  0000000140001C34: 41 89 D6           mov         r14d,edx
  0000000140001C37: 48 89 CB           mov         rbx,rcx
  0000000140001C3A: 4C 8D 25 CF 07 00  lea         r12,[140002410h]
                    00
  0000000140001C41: 41 BD 02 00 00 00  mov         r13d,2
  0000000140001C47: BE 03 00 00 00     mov         esi,3
  0000000140001C4C: 4C 8B 3D 55 04 00  mov         r15,qword ptr [__imp_WaitOnAddress]
                    00
  0000000140001C53: 8B 03              mov         eax,dword ptr [rbx]
  0000000140001C55: EB 19              jmp         0000000140001C70
  0000000140001C57: 66 0F 1F 84 00 00  nop         word ptr [rax+rax]
                    00 00 00
  0000000140001C60: 45 84 F6           test        r14b,r14b
  0000000140001C63: 0F 84 8C 00 00 00  je          0000000140001CF5
  0000000140001C69: F0 44 0F B1 2B     lock cmpxchg dword ptr [rbx],r13d
  0000000140001C6E: 74 48              je          0000000140001CB8
  0000000140001C70: 83 F8 04           cmp         eax,4
  0000000140001C73: 0F 87 99 00 00 00  ja          0000000140001D12
  0000000140001C79: 89 C1              mov         ecx,eax
  0000000140001C7B: 49 63 0C 8C        movsxd      rcx,dword ptr [r12+rcx*4]
  0000000140001C7F: 4C 01 E1           add         rcx,r12
  0000000140001C82: FF E1              jmp         rcx
  0000000140001C84: B8 02 00 00 00     mov         eax,2
  0000000140001C89: F0 0F B1 33        lock cmpxchg dword ptr [rbx],esi
  0000000140001C8D: 75 E1              jne         0000000140001C70
  0000000140001C8F: C7 45 C0 03 00 00  mov         dword ptr [rbp-40h],3
                    00
  0000000140001C96: 41 B8 04 00 00 00  mov         r8d,4
  0000000140001C9C: 48 89 D9           mov         rcx,rbx
  0000000140001C9F: 48 8D 55 C0        lea         rdx,[rbp-40h]
  0000000140001CA3: 41 B9 FF FF FF FF  mov         r9d,0FFFFFFFFh
  0000000140001CA9: 41 FF D7           call        r15
  0000000140001CAC: 83 F8 01           cmp         eax,1
  0000000140001CAF: 74 A2              je          0000000140001C53
  0000000140001CB1: E8 E0 F3 FF FF     call        _ZN3std3sys3pal7windows3api14get_last_error17h563dec06c925f25fE
  0000000140001CB6: EB 9B              jmp         0000000140001C53
  0000000140001CB8: 48 89 5D C0        mov         qword ptr [rbp-40h],rbx
  0000000140001CBC: C7 45 C8 01 00 00  mov         dword ptr [rbp-38h],1
                    00
  0000000140001CC3: 48 8B 07           mov         rax,qword ptr [rdi]
  0000000140001CC6: 48 83 38 00        cmp         qword ptr [rax],0
  0000000140001CCA: 48 C7 00 00 00 00  mov         qword ptr [rax],0
                    00
  0000000140001CD1: 74 6E              je          0000000140001D41
  0000000140001CD3: C7 45 C8 04 00 00  mov         dword ptr [rbp-38h],4
                    00
  0000000140001CDA: 48 8D 4D C0        lea         rcx,[rbp-40h]
  0000000140001CDE: E8 B9 F3 FF FF     call        _ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E
  0000000140001CE3: 90                 nop
  0000000140001CE4: 48 83 C4 68        add         rsp,68h
  0000000140001CE8: 5B                 pop         rbx
  0000000140001CE9: 5F                 pop         rdi
  0000000140001CEA: 5E                 pop         rsi
  0000000140001CEB: 41 5C              pop         r12
  0000000140001CED: 41 5D              pop         r13
  0000000140001CEF: 41 5E              pop         r14
  0000000140001CF1: 41 5F              pop         r15
  0000000140001CF3: 5D                 pop         rbp
  0000000140001CF4: C3                 ret
  0000000140001CF5: 48 8D 05 3C 06 00  lea         rax,[anon.56382f1f4e66faf81812ad4386855922.1.llvm.4174790170175778062]
                    00
  0000000140001CFC: 48 89 45 C0        mov         qword ptr [rbp-40h],rax
  0000000140001D00: 48 C7 45 C8 01 00  mov         qword ptr [rbp-38h],1
                    00 00
  0000000140001D08: 48 C7 45 D0 08 00  mov         qword ptr [rbp-30h],8
                    00 00
  0000000140001D10: EB 1B              jmp         0000000140001D2D
  0000000140001D12: 48 8D 05 7F 06 00  lea         rax,[anon.56382f1f4e66faf81812ad4386855922.3.llvm.4174790170175778062]
                    00
  0000000140001D19: 48 89 45 C0        mov         qword ptr [rbp-40h],rax
  0000000140001D1D: 48 C7 45 C8 01 00  mov         qword ptr [rbp-38h],1
                    00 00
  0000000140001D25: 48 8D 45 F8        lea         rax,[rbp-8]
  0000000140001D29: 48 89 45 D0        mov         qword ptr [rbp-30h],rax
  0000000140001D2D: 0F 57 C0           xorps       xmm0,xmm0
  0000000140001D30: 0F 11 45 D8        movups      xmmword ptr [rbp-28h],xmm0
  0000000140001D34: 48 8D 4D C0        lea         rcx,[rbp-40h]
  0000000140001D38: 48 8B 55 F0        mov         rdx,qword ptr [rbp-10h]
  0000000140001D3C: E8 61 F3 FF FF     call        _ZN4core9panicking9panic_fmt17hb39cfdace1bc0cb7E
  0000000140001D41: 48 8D 0D B0 06 00  lea         rcx,[anon.56382f1f4e66faf81812ad4386855922.5.llvm.4174790170175778062]
                    00
  0000000140001D48: E8 5B F3 FF FF     call        _ZN4core6option13unwrap_failed17hb95fbc70d3a4af9aE
  0000000140001D4D: 0F 0B              ud2
  0000000140001D4F: 90                 nop
  0000000140001D50: 48 89 54 24 10     mov         qword ptr [rsp+10h],rdx
  0000000140001D55: 55                 push        rbp
  0000000140001D56: 41 57              push        r15
  0000000140001D58: 41 56              push        r14
  0000000140001D5A: 41 55              push        r13
  0000000140001D5C: 41 54              push        r12
  0000000140001D5E: 56                 push        rsi
  0000000140001D5F: 57                 push        rdi
  0000000140001D60: 53                 push        rbx
  0000000140001D61: 48 83 EC 28        sub         rsp,28h
  0000000140001D65: 48 8D 6A 60        lea         rbp,[rdx+60h]
  0000000140001D69: 48 8D 4D C0        lea         rcx,[rbp-40h]
  0000000140001D6D: E8 2A F3 FF FF     call        _ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E
  0000000140001D72: 90                 nop
  0000000140001D73: 48 83 C4 28        add         rsp,28h
  0000000140001D77: 5B                 pop         rbx
  0000000140001D78: 5F                 pop         rdi
  0000000140001D79: 5E                 pop         rsi
  0000000140001D7A: 41 5C              pop         r12
  0000000140001D7C: 41 5D              pop         r13
  0000000140001D7E: 41 5E              pop         r14
  0000000140001D80: 41 5F              pop         r15
  0000000140001D82: 5D                 pop         rbp
  0000000140001D83: C3                 ret
`__scrt_common_main_seh'::`1'::filt$0:
  0000000140001D84: 40 55              push        rbp
  0000000140001D86: 48 83 EC 20        sub         rsp,20h
  0000000140001D8A: 48 8B EA           mov         rbp,rdx
  0000000140001D8D: 48 8B 01           mov         rax,qword ptr [rcx]
  0000000140001D90: 48 8B D1           mov         rdx,rcx
  0000000140001D93: 8B 08              mov         ecx,dword ptr [rax]
  0000000140001D95: E8 54 FD FF FF     call        _seh_filter_exe
  0000000140001D9A: 90                 nop
  0000000140001D9B: 48 83 C4 20        add         rsp,20h
  0000000140001D9F: 5D                 pop         rbp
  0000000140001DA0: C3                 ret
  0000000140001DA1: CC                 int         3
__scrt_is_nonwritable_in_current_image$filt$0:
  0000000140001DA2: 40 55              push        rbp
  0000000140001DA4: 48 8B EA           mov         rbp,rdx
  0000000140001DA7: 48 8B 01           mov         rax,qword ptr [rcx]
  0000000140001DAA: 33 C9              xor         ecx,ecx
  0000000140001DAC: 81 38 05 00 00 C0  cmp         dword ptr [rax],0C0000005h
  0000000140001DB2: 0F 94 C1           sete        cl
  0000000140001DB5: 8B C1              mov         eax,ecx
  0000000140001DB7: 5D                 pop         rbp
  0000000140001DB8: C3                 ret
  0000000140001DB9: CC                 int         3

  Summary

        1000 .data
        1000 .pdata
        2000 .rdata
        1000 .reloc
        1000 .text
With lto=thin
Microsoft (R) COFF/PE Dumper Version 14.39.33523.0
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file target\debug\executable.exe

File Type: EXECUTABLE IMAGE

_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he932f4b4c8181b57E:
  0000000140001000: 48 83 EC 28        sub         rsp,28h
  0000000140001004: FF D1              call        rcx
  0000000140001006: 90                 nop
  0000000140001007: 48 83 C4 28        add         rsp,28h
  000000014000100B: C3                 ret
  000000014000100C: CC CC CC CC                                      IIII
_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h2f236fc1f6b47ae1E.llvm.841805966935466388:
  0000000140001010: 48 83 EC 28        sub         rsp,28h
  0000000140001014: 48 8B 09           mov         rcx,qword ptr [rcx]
  0000000140001017: E8 E4 FF FF FF     call        _ZN3std3sys9backtrace28__rust_begin_shoart_backtrace17he932f4b4c8181b57E
  000000014000101C: 31 C0              xor         eax,eax
  000000014000101E: 48 83 C4 28        add         rsp,28h
  0000000140001022: C3                 ret
  0000000140001023: CC CC CC CC CC CC CC CC CC CC CC CC CC           IIIIIIIIIIIII
executable::main:
  0000000140001030: 8B 05 5A 00 00 00  mov         eax,dword ptr [_ZN7library9ONCE_LOCK17hab4deb37a7eefcabE]
  0000000140001036: 83 F8 04           cmp         eax,4
  0000000140001039: 75 01              jne         000000014000103C
  000000014000103B: C3                 ret
  000000014000103C: 48 8D 0D 4D 00 00  lea         rcx,[_ZN7library9ONCE_LOCK17hab4deb37a7eefcabE]
                    00
  0000000140001043: E9 F8 0C 00 00     jmp         _ZN3std4sync9once_lock17OnceLock$LT$T$GT$10initialize17h295e963a41abbe0dE
  0000000140001048: CC CC CC CC CC CC CC CC                          IIIIIIII
main:
  0000000140001050: 48 83 EC 38        sub         rsp,38h
  0000000140001054: 49 89 D1           mov         r9,rdx
  0000000140001057: 4C 63 C1           movsxd      r8,ecx
  000000014000105A: 48 8D 05 CF FF FF  lea         rax,[140001030h]
                    FF
  0000000140001061: 48 89 44 24 30     mov         qword ptr [rsp+30h],rax
  0000000140001066: C6 44 24 20 00     mov         byte ptr [rsp+20h],0
  000000014000106B: 48 8D 15 1E 13 00  lea         rdx,[anon.04175970a8c70660907067f68e655128.0.llvm.841805966935466388]
                    00
  0000000140001072: 48 8D 4C 24 30     lea         rcx,[rsp+30h]
  0000000140001077: E8 32 00 00 00     call        _ZN3std2rt19lang_start_internal17hae47a42ca7fab963E
  000000014000107C: 90                 nop
  000000014000107D: 48 83 C4 38        add         rsp,38h
  0000000140001081: C3                 ret
  0000000140001082: CC CC CC CC CC CC CC CC CC CC CC CC CC CC        IIIIIIIIIIIIII
_ZN7library9ONCE_LOCK17hab4deb37a7eefcabE:
  0000000140001090: FF 25 02 11 00 00  jmp         qword ptr [__imp__ZN7library9ONCE_LOCK17hab4deb37a7eefcabE]
_ZN3std3sys3pal7windows3api14get_last_error17h563dec06c925f25fE:
  0000000140001096: FF 25 24 11 00 00  jmp         qword ptr [__imp__ZN3std3sys3pal7windows3api14get_last_error17h563dec06c925f25fE]
_ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E:
  000000014000109C: FF 25 16 11 00 00  jmp         qword ptr [__imp__ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E]
_ZN4core9panicking9panic_fmt17hb39cfdace1bc0cb7E:
  00000001400010A2: FF 25 08 11 00 00  jmp         qword ptr [__imp__ZN4core9panicking9panic_fmt17hb39cfdace1bc0cb7E]
_ZN4core6option13unwrap_failed17hb95fbc70d3a4af9aE:
  00000001400010A8: FF 25 FA 10 00 00  jmp         qword ptr [__imp__ZN4core6option13unwrap_failed17hb95fbc70d3a4af9aE]
_ZN3std2rt19lang_start_internal17hae47a42ca7fab963E:
  00000001400010AE: FF 25 14 11 00 00  jmp         qword ptr [__imp__ZN3std2rt19lang_start_internal17hae47a42ca7fab963E]
pre_c_initialization:
  00000001400010B4: 40 53              push        rbx
  00000001400010B6: 48 83 EC 20        sub         rsp,20h
  00000001400010BA: B9 01 00 00 00     mov         ecx,1
  00000001400010BF: E8 30 0A 00 00     call        _set_app_type
  00000001400010C4: E8 57 05 00 00     call        _get_startup_file_mode
  00000001400010C9: 8B C8              mov         ecx,eax
  00000001400010CB: E8 5A 0A 00 00     call        _set_fmode
  00000001400010D0: E8 3F 05 00 00     call        __scrt_exe_initialize_mta
  00000001400010D5: 8B D8              mov         ebx,eax
  00000001400010D7: E8 7E 0A 00 00     call        __p__commode
  00000001400010DC: B9 01 00 00 00     mov         ecx,1
  00000001400010E1: 89 18              mov         dword ptr [rax],ebx
  00000001400010E3: E8 B8 02 00 00     call        __scrt_initialize_onexit_tables
  00000001400010E8: 84 C0              test        al,al
  00000001400010EA: 74 73              je          000000014000115F
  00000001400010EC: E8 AF 07 00 00     call        _RTC_Initialize
  00000001400010F1: 48 8D 0D E4 07 00  lea         rcx,[_RTC_Terminate]
                    00
  00000001400010F8: E8 53 04 00 00     call        atexit
  00000001400010FD: E8 16 05 00 00     call        _get_startup_argv_mode
  0000000140001102: 8B C8              mov         ecx,eax
  0000000140001104: E8 F7 09 00 00     call        _configure_narrow_argv
  0000000140001109: 85 C0              test        eax,eax
  000000014000110B: 75 52              jne         000000014000115F
  000000014000110D: E8 16 05 00 00     call        ?__scrt_initialize_type_info@@YAXXZ
  0000000140001112: E8 55 05 00 00     call        __scrt_is_user_matherr_present
  0000000140001117: 85 C0              test        eax,eax
  0000000140001119: 74 0C              je          0000000140001127
  000000014000111B: 48 8D 0D F2 04 00  lea         rcx,[__scrt_exe_initialize_mta]
                    00
  0000000140001122: E8 D3 09 00 00     call        __setusermatherr
  0000000140001127: E8 10 05 00 00     call        _guard_check_icall_nop
  000000014000112C: E8 0B 05 00 00     call        _guard_check_icall_nop
  0000000140001131: E8 DE 04 00 00     call        __scrt_exe_initialize_mta
  0000000140001136: 8B C8              mov         ecx,eax
  0000000140001138: E8 11 0A 00 00     call        _configthreadlocale
  000000014000113D: E8 F6 04 00 00     call        __acrt_initialize
  0000000140001142: 84 C0              test        al,al
  0000000140001144: 74 05              je          000000014000114B
  0000000140001146: E8 BB 09 00 00     call        _initialize_narrow_environment
  000000014000114B: E8 C4 04 00 00     call        __scrt_exe_initialize_mta
  0000000140001150: E8 83 06 00 00     call        __scrt_initialize_mta
  0000000140001155: 85 C0              test        eax,eax
  0000000140001157: 75 06              jne         000000014000115F
  0000000140001159: 48 83 C4 20        add         rsp,20h
  000000014000115D: 5B                 pop         rbx
  000000014000115E: C3                 ret
  000000014000115F: B9 07 00 00 00     mov         ecx,7
  0000000140001164: E8 27 05 00 00     call        __scrt_fastfail
  0000000140001169: CC                 int         3
  000000014000116A: CC CC                                            II
post_pgo_initialization:
  000000014000116C: 48 83 EC 28        sub         rsp,28h
  0000000140001170: E8 DB 04 00 00     call        __scrt_initialize_default_local_stdio_options
  0000000140001175: 33 C0              xor         eax,eax
  0000000140001177: 48 83 C4 28        add         rsp,28h
  000000014000117B: C3                 ret
pre_cpp_initialization:
  000000014000117C: 48 83 EC 28        sub         rsp,28h
  0000000140001180: E8 AF 06 00 00     call        __scrt_set_unhandled_exception_filter
  0000000140001185: E8 8A 04 00 00     call        __scrt_exe_initialize_mta
  000000014000118A: 8B C8              mov         ecx,eax
  000000014000118C: 48 83 C4 28        add         rsp,28h
  0000000140001190: E9 BF 09 00 00     jmp         _set_new_mode
  0000000140001195: CC CC CC                                         III
__scrt_common_main_seh:
  0000000140001198: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  000000014000119D: 48 89 74 24 10     mov         qword ptr [rsp+10h],rsi
  00000001400011A2: 57                 push        rdi
  00000001400011A3: 48 83 EC 30        sub         rsp,30h
  00000001400011A7: B9 01 00 00 00     mov         ecx,1
  00000001400011AC: E8 B3 01 00 00     call        __scrt_initialize_crt
  00000001400011B1: 84 C0              test        al,al
  00000001400011B3: 0F 84 36 01 00 00  je          00000001400012EF
  00000001400011B9: 40 32 F6           xor         sil,sil
  00000001400011BC: 40 88 74 24 20     mov         byte ptr [rsp+20h],sil
  00000001400011C1: E8 62 01 00 00     call        __scrt_acquire_startup_lock
  00000001400011C6: 8A D8              mov         bl,al
  00000001400011C8: 8B 0D D2 2E 00 00  mov         ecx,dword ptr [__scrt_current_native_startup_state]
  00000001400011CE: 83 F9 01           cmp         ecx,1
  00000001400011D1: 0F 84 23 01 00 00  je          00000001400012FA
  00000001400011D7: 85 C9              test        ecx,ecx
  00000001400011D9: 75 4A              jne         0000000140001225
  00000001400011DB: C7 05 BB 2E 00 00  mov         dword ptr [__scrt_current_native_startup_state],1
                    01 00 00 00
  00000001400011E5: 48 8D 15 54 10 00  lea         rdx,[__xi_z]
                    00
  00000001400011EC: 48 8D 0D 35 10 00  lea         rcx,[__xi_a]
                    00
  00000001400011F3: E8 20 09 00 00     call        _initterm_e
  00000001400011F8: 85 C0              test        eax,eax
  00000001400011FA: 74 0A              je          0000000140001206
  00000001400011FC: B8 FF 00 00 00     mov         eax,0FFh
  0000000140001201: E9 D9 00 00 00     jmp         00000001400012DF
  0000000140001206: 48 8D 15 13 10 00  lea         rdx,[__xc_z]
                    00
  000000014000120D: 48 8D 0D FC 0F 00  lea         rcx,[__xc_a]
                    00
  0000000140001214: E8 F9 08 00 00     call        _initterm
  0000000140001219: C7 05 7D 2E 00 00  mov         dword ptr [__scrt_current_native_startup_state],2
                    02 00 00 00
  0000000140001223: EB 08              jmp         000000014000122D
  0000000140001225: 40 B6 01           mov         sil,1
  0000000140001228: 40 88 74 24 20     mov         byte ptr [rsp+20h],sil
  000000014000122D: 8A CB              mov         cl,bl
  000000014000122F: E8 90 02 00 00     call        __scrt_release_startup_lock
  0000000140001234: E8 3F 04 00 00     call        __scrt_get_dyn_tls_init_callback
  0000000140001239: 48 8B D8           mov         rbx,rax
  000000014000123C: 48 83 38 00        cmp         qword ptr [rax],0
  0000000140001240: 74 1E              je          0000000140001260
  0000000140001242: 48 8B C8           mov         rcx,rax
  0000000140001245: E8 E2 01 00 00     call        __scrt_is_nonwritable_in_current_image
  000000014000124A: 84 C0              test        al,al
  000000014000124C: 74 12              je          0000000140001260
  000000014000124E: 45 33 C0           xor         r8d,r8d
  0000000140001251: 41 8D 50 02        lea         edx,[r8+2]
  0000000140001255: 33 C9              xor         ecx,ecx
  0000000140001257: 48 8B 03           mov         rax,qword ptr [rbx]
  000000014000125A: FF 15 88 0F 00 00  call        qword ptr [__guard_dispatch_icall_fptr]
  0000000140001260: E8 1B 04 00 00     call        __scrt_get_dyn_tls_dtor_callback
  0000000140001265: 48 8B D8           mov         rbx,rax
  0000000140001268: 48 83 38 00        cmp         qword ptr [rax],0
  000000014000126C: 74 14              je          0000000140001282
  000000014000126E: 48 8B C8           mov         rcx,rax
  0000000140001271: E8 B6 01 00 00     call        __scrt_is_nonwritable_in_current_image
  0000000140001276: 84 C0              test        al,al
  0000000140001278: 74 08              je          0000000140001282
  000000014000127A: 48 8B 0B           mov         rcx,qword ptr [rbx]
  000000014000127D: E8 C6 08 00 00     call        _register_thread_local_exe_atexit_callback
  0000000140001282: E8 85 08 00 00     call        _get_initial_narrow_environment
  0000000140001287: 48 8B F8           mov         rdi,rax
  000000014000128A: E8 A7 08 00 00     call        __p___argv
  000000014000128F: 48 8B 18           mov         rbx,qword ptr [rax]
  0000000140001292: E8 99 08 00 00     call        __p___argc
  0000000140001297: 4C 8B C7           mov         r8,rdi
  000000014000129A: 48 8B D3           mov         rdx,rbx
  000000014000129D: 8B 08              mov         ecx,dword ptr [rax]
  000000014000129F: E8 AC FD FF FF     call        main
  00000001400012A4: 8B D8              mov         ebx,eax
  00000001400012A6: E8 35 05 00 00     call        __scrt_is_managed_app
  00000001400012AB: 84 C0              test        al,al
  00000001400012AD: 74 55              je          0000000140001304
  00000001400012AF: 40 84 F6           test        sil,sil
  00000001400012B2: 75 05              jne         00000001400012B9
  00000001400012B4: E8 83 08 00 00     call        _cexit
  00000001400012B9: 33 D2              xor         edx,edx
  00000001400012BB: B1 01              mov         cl,1
  00000001400012BD: E8 26 02 00 00     call        __scrt_uninitialize_crt
  00000001400012C2: 8B C3              mov         eax,ebx
  00000001400012C4: EB 19              jmp         00000001400012DF
  00000001400012C6: 8B D8              mov         ebx,eax
  00000001400012C8: E8 13 05 00 00     call        __scrt_is_managed_app
  00000001400012CD: 84 C0              test        al,al
  00000001400012CF: 74 3B              je          000000014000130C
  00000001400012D1: 80 7C 24 20 00     cmp         byte ptr [rsp+20h],0
  00000001400012D6: 75 05              jne         00000001400012DD
  00000001400012D8: E8 65 08 00 00     call        _c_exit
  00000001400012DD: 8B C3              mov         eax,ebx
  00000001400012DF: 48 8B 5C 24 40     mov         rbx,qword ptr [rsp+40h]
  00000001400012E4: 48 8B 74 24 48     mov         rsi,qword ptr [rsp+48h]
  00000001400012E9: 48 83 C4 30        add         rsp,30h
  00000001400012ED: 5F                 pop         rdi
  00000001400012EE: C3                 ret
  00000001400012EF: B9 07 00 00 00     mov         ecx,7
  00000001400012F4: E8 97 03 00 00     call        __scrt_fastfail
  00000001400012F9: 90                 nop
  00000001400012FA: B9 07 00 00 00     mov         ecx,7
  00000001400012FF: E8 8C 03 00 00     call        __scrt_fastfail
  0000000140001304: 8B CB              mov         ecx,ebx
  0000000140001306: E8 13 08 00 00     call        exit
  000000014000130B: 90                 nop
  000000014000130C: 8B CB              mov         ecx,ebx
  000000014000130E: E8 11 08 00 00     call        _exit
  0000000140001313: 90                 nop
mainCRTStartup:
  0000000140001314: 48 83 EC 28        sub         rsp,28h
  0000000140001318: E8 4B 02 00 00     call        __security_init_cookie
  000000014000131D: 48 83 C4 28        add         rsp,28h
  0000000140001321: E9 72 FE FF FF     jmp         0000000140001198
  0000000140001326: CC CC                                            II
__scrt_acquire_startup_lock:
  0000000140001328: 48 83 EC 28        sub         rsp,28h
  000000014000132C: E8 93 07 00 00     call        __scrt_is_ucrt_dll_in_use
  0000000140001331: 85 C0              test        eax,eax
  0000000140001333: 74 21              je          0000000140001356
  0000000140001335: 65 48 8B 04 25 30  mov         rax,qword ptr gs:[30h]
                    00 00 00
  000000014000133E: 48 8B 48 08        mov         rcx,qword ptr [rax+8]
  0000000140001342: EB 05              jmp         0000000140001349
  0000000140001344: 48 3B C8           cmp         rcx,rax
  0000000140001347: 74 14              je          000000014000135D
  0000000140001349: 33 C0              xor         eax,eax
  000000014000134B: F0 48 0F B1 0D 54  lock cmpxchg qword ptr [__scrt_native_startup_lock],rcx
                    2D 00 00
  0000000140001354: 75 EE              jne         0000000140001344
  0000000140001356: 32 C0              xor         al,al
  0000000140001358: 48 83 C4 28        add         rsp,28h
  000000014000135C: C3                 ret
  000000014000135D: B0 01              mov         al,1
  000000014000135F: EB F7              jmp         0000000140001358
  0000000140001361: CC CC CC                                         III
__scrt_initialize_crt:
  0000000140001364: 48 83 EC 28        sub         rsp,28h
  0000000140001368: 85 C9              test        ecx,ecx
  000000014000136A: 75 07              jne         0000000140001373
  000000014000136C: C6 05 3D 2D 00 00  mov         byte ptr [1400040B0h],1
                    01
  0000000140001373: E8 A0 05 00 00     call        __isa_available_init
  0000000140001378: E8 BB 02 00 00     call        __acrt_initialize
  000000014000137D: 84 C0              test        al,al
  000000014000137F: 75 04              jne         0000000140001385
  0000000140001381: 32 C0              xor         al,al
  0000000140001383: EB 14              jmp         0000000140001399
  0000000140001385: E8 AE 02 00 00     call        __acrt_initialize
  000000014000138A: 84 C0              test        al,al
  000000014000138C: 75 09              jne         0000000140001397
  000000014000138E: 33 C9              xor         ecx,ecx
  0000000140001390: E8 A3 02 00 00     call        __acrt_initialize
  0000000140001395: EB EA              jmp         0000000140001381
  0000000140001397: B0 01              mov         al,1
  0000000140001399: 48 83 C4 28        add         rsp,28h
  000000014000139D: C3                 ret
  000000014000139E: CC CC                                            II
__scrt_initialize_onexit_tables:
  00000001400013A0: 40 53              push        rbx
  00000001400013A2: 48 83 EC 20        sub         rsp,20h
  00000001400013A6: 80 3D 04 2D 00 00  cmp         byte ptr [1400040B1h],0
                    00
  00000001400013AD: 8B D9              mov         ebx,ecx
  00000001400013AF: 75 67              jne         0000000140001418
  00000001400013B1: 83 F9 01           cmp         ecx,1
  00000001400013B4: 77 6A              ja          0000000140001420
  00000001400013B6: E8 09 07 00 00     call        __scrt_is_ucrt_dll_in_use
  00000001400013BB: 85 C0              test        eax,eax
  00000001400013BD: 74 28              je          00000001400013E7
  00000001400013BF: 85 DB              test        ebx,ebx
  00000001400013C1: 75 24              jne         00000001400013E7
  00000001400013C3: 48 8D 0D EE 2C 00  lea         rcx,[1400040B8h]
                    00
  00000001400013CA: E8 91 07 00 00     call        _initialize_onexit_table
  00000001400013CF: 85 C0              test        eax,eax
  00000001400013D1: 75 10              jne         00000001400013E3
  00000001400013D3: 48 8D 0D F6 2C 00  lea         rcx,[1400040D0h]
                    00
  00000001400013DA: E8 81 07 00 00     call        _initialize_onexit_table
  00000001400013DF: 85 C0              test        eax,eax
  00000001400013E1: 74 2E              je          0000000140001411
  00000001400013E3: 32 C0              xor         al,al
  00000001400013E5: EB 33              jmp         000000014000141A
  00000001400013E7: 66 0F 6F 05 41 10  movdqa      xmm0,xmmword ptr [__xmm@ffffffffffffffffffffffffffffffff]
                    00 00
  00000001400013EF: 48 83 C8 FF        or          rax,0FFFFFFFFFFFFFFFFh
  00000001400013F3: F3 0F 7F 05 BD 2C  movdqu      xmmword ptr [1400040B8h],xmm0
                    00 00
  00000001400013FB: 48 89 05 C6 2C 00  mov         qword ptr [1400040C8h],rax
                    00
  0000000140001402: F3 0F 7F 05 C6 2C  movdqu      xmmword ptr [1400040D0h],xmm0
                    00 00
  000000014000140A: 48 89 05 CF 2C 00  mov         qword ptr [1400040E0h],rax
                    00
  0000000140001411: C6 05 99 2C 00 00  mov         byte ptr [1400040B1h],1
                    01
  0000000140001418: B0 01              mov         al,1
  000000014000141A: 48 83 C4 20        add         rsp,20h
  000000014000141E: 5B                 pop         rbx
  000000014000141F: C3                 ret
  0000000140001420: B9 05 00 00 00     mov         ecx,5
  0000000140001425: E8 66 02 00 00     call        __scrt_fastfail
  000000014000142A: CC                 int         3
  000000014000142B: CC                                               I
__scrt_is_nonwritable_in_current_image:
  000000014000142C: 48 83 EC 18        sub         rsp,18h
  0000000140001430: 4C 8B C1           mov         r8,rcx
  0000000140001433: B8 4D 5A 00 00     mov         eax,5A4Dh
  0000000140001438: 66 39 05 C1 EB FF  cmp         word ptr [140000000h],ax
                    FF
  000000014000143F: 75 78              jne         00000001400014B9
  0000000140001441: 48 63 0D F4 EB FF  movsxd      rcx,dword ptr [14000003Ch]
                    FF
  0000000140001448: 48 8D 15 B1 EB FF  lea         rdx,[140000000h]
                    FF
  000000014000144F: 48 03 CA           add         rcx,rdx
  0000000140001452: 81 39 50 45 00 00  cmp         dword ptr [rcx],4550h
  0000000140001458: 75 5F              jne         00000001400014B9
  000000014000145A: B8 0B 02 00 00     mov         eax,20Bh
  000000014000145F: 66 39 41 18        cmp         word ptr [rcx+18h],ax
  0000000140001463: 75 54              jne         00000001400014B9
  0000000140001465: 4C 2B C2           sub         r8,rdx
  0000000140001468: 0F B7 51 14        movzx       edx,word ptr [rcx+14h]
  000000014000146C: 48 83 C2 18        add         rdx,18h
  0000000140001470: 48 03 D1           add         rdx,rcx
  0000000140001473: 0F B7 41 06        movzx       eax,word ptr [rcx+6]
  0000000140001477: 48 8D 0C 80        lea         rcx,[rax+rax*4]
  000000014000147B: 4C 8D 0C CA        lea         r9,[rdx+rcx*8]
  000000014000147F: 48 89 14 24        mov         qword ptr [rsp],rdx
  0000000140001483: 49 3B D1           cmp         rdx,r9
  0000000140001486: 74 18              je          00000001400014A0
  0000000140001488: 8B 4A 0C           mov         ecx,dword ptr [rdx+0Ch]
  000000014000148B: 4C 3B C1           cmp         r8,rcx
  000000014000148E: 72 0A              jb          000000014000149A
  0000000140001490: 8B 42 08           mov         eax,dword ptr [rdx+8]
  0000000140001493: 03 C1              add         eax,ecx
  0000000140001495: 4C 3B C0           cmp         r8,rax
  0000000140001498: 72 08              jb          00000001400014A2
  000000014000149A: 48 83 C2 28        add         rdx,28h
  000000014000149E: EB DF              jmp         000000014000147F
  00000001400014A0: 33 D2              xor         edx,edx
  00000001400014A2: 48 85 D2           test        rdx,rdx
  00000001400014A5: 75 04              jne         00000001400014AB
  00000001400014A7: 32 C0              xor         al,al
  00000001400014A9: EB 14              jmp         00000001400014BF
  00000001400014AB: 83 7A 24 00        cmp         dword ptr [rdx+24h],0
  00000001400014AF: 7D 04              jge         00000001400014B5
  00000001400014B1: 32 C0              xor         al,al
  00000001400014B3: EB 0A              jmp         00000001400014BF
  00000001400014B5: B0 01              mov         al,1
  00000001400014B7: EB 06              jmp         00000001400014BF
  00000001400014B9: 32 C0              xor         al,al
  00000001400014BB: EB 02              jmp         00000001400014BF
  00000001400014BD: 32 C0              xor         al,al
  00000001400014BF: 48 83 C4 18        add         rsp,18h
  00000001400014C3: C3                 ret
__scrt_release_startup_lock:
  00000001400014C4: 40 53              push        rbx
  00000001400014C6: 48 83 EC 20        sub         rsp,20h
  00000001400014CA: 8A D9              mov         bl,cl
  00000001400014CC: E8 F3 05 00 00     call        __scrt_is_ucrt_dll_in_use
  00000001400014D1: 33 D2              xor         edx,edx
  00000001400014D3: 85 C0              test        eax,eax
  00000001400014D5: 74 0B              je          00000001400014E2
  00000001400014D7: 84 DB              test        bl,bl
  00000001400014D9: 75 07              jne         00000001400014E2
  00000001400014DB: 48 87 15 C6 2B 00  xchg        rdx,qword ptr [__scrt_native_startup_lock]
                    00
  00000001400014E2: 48 83 C4 20        add         rsp,20h
  00000001400014E6: 5B                 pop         rbx
  00000001400014E7: C3                 ret
__scrt_uninitialize_crt:
  00000001400014E8: 40 53              push        rbx
  00000001400014EA: 48 83 EC 20        sub         rsp,20h
  00000001400014EE: 80 3D BB 2B 00 00  cmp         byte ptr [1400040B0h],0
                    00
  00000001400014F5: 8A D9              mov         bl,cl
  00000001400014F7: 74 04              je          00000001400014FD
  00000001400014F9: 84 D2              test        dl,dl
  00000001400014FB: 75 0C              jne         0000000140001509
  00000001400014FD: E8 36 01 00 00     call        __acrt_initialize
  0000000140001502: 8A CB              mov         cl,bl
  0000000140001504: E8 2F 01 00 00     call        __acrt_initialize
  0000000140001509: B0 01              mov         al,1
  000000014000150B: 48 83 C4 20        add         rsp,20h
  000000014000150F: 5B                 pop         rbx
  0000000140001510: C3                 ret
  0000000140001511: CC CC CC                                         III
_onexit:
  0000000140001514: 40 53              push        rbx
  0000000140001516: 48 83 EC 20        sub         rsp,20h
  000000014000151A: 48 83 3D 96 2B 00  cmp         qword ptr [1400040B8h],0FFFFFFFFFFFFFFFFh
                    00 FF
  0000000140001522: 48 8B D9           mov         rbx,rcx
  0000000140001525: 75 07              jne         000000014000152E
  0000000140001527: E8 40 06 00 00     call        _crt_atexit
  000000014000152C: EB 0F              jmp         000000014000153D
  000000014000152E: 48 8B D3           mov         rdx,rbx
  0000000140001531: 48 8D 0D 80 2B 00  lea         rcx,[1400040B8h]
                    00
  0000000140001538: E8 29 06 00 00     call        _register_onexit_function
  000000014000153D: 33 D2              xor         edx,edx
  000000014000153F: 85 C0              test        eax,eax
  0000000140001541: 48 0F 44 D3        cmove       rdx,rbx
  0000000140001545: 48 8B C2           mov         rax,rdx
  0000000140001548: 48 83 C4 20        add         rsp,20h
  000000014000154C: 5B                 pop         rbx
  000000014000154D: C3                 ret
  000000014000154E: CC CC                                            II
atexit:
  0000000140001550: 48 83 EC 28        sub         rsp,28h
  0000000140001554: E8 BB FF FF FF     call        _onexit
  0000000140001559: 48 F7 D8           neg         rax
  000000014000155C: 1B C0              sbb         eax,eax
  000000014000155E: F7 D8              neg         eax
  0000000140001560: FF C8              dec         eax
  0000000140001562: 48 83 C4 28        add         rsp,28h
  0000000140001566: C3                 ret
  0000000140001567: CC                                               I
__security_init_cookie:
  0000000140001568: 48 89 5C 24 18     mov         qword ptr [rsp+18h],rbx
  000000014000156D: 55                 push        rbp
  000000014000156E: 48 8B EC           mov         rbp,rsp
  0000000140001571: 48 83 EC 30        sub         rsp,30h
  0000000140001575: 48 8B 05 C4 2A 00  mov         rax,qword ptr [__security_cookie]
                    00
  000000014000157C: 48 BB 32 A2 DF 2D  mov         rbx,2B992DDFA232h
                    99 2B 00 00
  0000000140001586: 48 3B C3           cmp         rax,rbx
  0000000140001589: 75 74              jne         00000001400015FF
  000000014000158B: 48 83 65 10 00     and         qword ptr [rbp+10h],0
  0000000140001590: 48 8D 4D 10        lea         rcx,[rbp+10h]
  0000000140001594: FF 15 BE 0A 00 00  call        qword ptr [__imp_GetSystemTimeAsFileTime]
  000000014000159A: 48 8B 45 10        mov         rax,qword ptr [rbp+10h]
  000000014000159E: 48 89 45 F0        mov         qword ptr [rbp-10h],rax
  00000001400015A2: FF 15 58 0A 00 00  call        qword ptr [__imp_GetCurrentThreadId]
  00000001400015A8: 8B C0              mov         eax,eax
  00000001400015AA: 48 31 45 F0        xor         qword ptr [rbp-10h],rax
  00000001400015AE: FF 15 8C 0A 00 00  call        qword ptr [__imp_GetCurrentProcessId]
  00000001400015B4: 8B C0              mov         eax,eax
  00000001400015B6: 48 8D 4D 18        lea         rcx,[rbp+18h]
  00000001400015BA: 48 31 45 F0        xor         qword ptr [rbp-10h],rax
  00000001400015BE: FF 15 84 0A 00 00  call        qword ptr [__imp_QueryPerformanceCounter]
  00000001400015C4: 8B 45 18           mov         eax,dword ptr [rbp+18h]
  00000001400015C7: 48 8D 4D F0        lea         rcx,[rbp-10h]
  00000001400015CB: 48 C1 E0 20        shl         rax,20h
  00000001400015CF: 48 33 45 18        xor         rax,qword ptr [rbp+18h]
  00000001400015D3: 48 33 45 F0        xor         rax,qword ptr [rbp-10h]
  00000001400015D7: 48 33 C1           xor         rax,rcx
  00000001400015DA: 48 B9 FF FF FF FF  mov         rcx,0FFFFFFFFFFFFh
                    FF FF 00 00
  00000001400015E4: 48 23 C1           and         rax,rcx
  00000001400015E7: 48 B9 33 A2 DF 2D  mov         rcx,2B992DDFA233h
                    99 2B 00 00
  00000001400015F1: 48 3B C3           cmp         rax,rbx
  00000001400015F4: 48 0F 44 C1        cmove       rax,rcx
  00000001400015F8: 48 89 05 41 2A 00  mov         qword ptr [__security_cookie],rax
                    00
  00000001400015FF: 48 8B 5C 24 50     mov         rbx,qword ptr [rsp+50h]
  0000000140001604: 48 F7 D0           not         rax
  0000000140001607: 48 89 05 72 2A 00  mov         qword ptr [__security_cookie_complement],rax
                    00
  000000014000160E: 48 83 C4 30        add         rsp,30h
  0000000140001612: 5D                 pop         rbp
  0000000140001613: C3                 ret
__scrt_exe_initialize_mta:
  0000000140001614: 33 C0              xor         eax,eax
  0000000140001616: C3                 ret
  0000000140001617: CC                                               I
_get_startup_argv_mode:
  0000000140001618: B8 01 00 00 00     mov         eax,1
  000000014000161D: C3                 ret
  000000014000161E: CC CC                                            II
_get_startup_file_mode:
  0000000140001620: B8 00 40 00 00     mov         eax,4000h
  0000000140001625: C3                 ret
  0000000140001626: CC CC                                            II
?__scrt_initialize_type_info@@YAXXZ:
  0000000140001628: 48 8D 0D C1 2A 00  lea         rcx,[?__type_info_root_node@@3U__type_info_node@@A]
                    00
  000000014000162F: 48 FF 25 1A 0A 00  jmp         qword ptr [__imp_InitializeSListHead]
                    00
  0000000140001636: CC CC                                            II
__acrt_initialize:
  0000000140001638: B0 01              mov         al,1
  000000014000163A: C3                 ret
  000000014000163B: CC                                               I
_guard_check_icall_nop:
  000000014000163C: C2 00 00           ret         0
  000000014000163F: CC                                               I
__local_stdio_printf_options:
  0000000140001640: 48 8D 05 B9 2A 00  lea         rax,[?_OptionsStorage@?1??__local_stdio_printf_options@@9@4_KA]
                    00
  0000000140001647: C3                 ret
__local_stdio_scanf_options:
  0000000140001648: 48 8D 05 B9 2A 00  lea         rax,[?_OptionsStorage@?1??__local_stdio_scanf_options@@9@4_KA]
                    00
  000000014000164F: C3                 ret
__scrt_initialize_default_local_stdio_options:
  0000000140001650: 48 83 EC 28        sub         rsp,28h
  0000000140001654: E8 E7 FF FF FF     call        __local_stdio_printf_options
  0000000140001659: 48 83 08 24        or          qword ptr [rax],24h
  000000014000165D: E8 E6 FF FF FF     call        __local_stdio_scanf_options
  0000000140001662: 48 83 08 02        or          qword ptr [rax],2
  0000000140001666: 48 83 C4 28        add         rsp,28h
  000000014000166A: C3                 ret
  000000014000166B: CC                                               I
__scrt_is_user_matherr_present:
  000000014000166C: 33 C0              xor         eax,eax
  000000014000166E: 39 05 90 29 00 00  cmp         dword ptr [__scrt_default_matherr],eax
  0000000140001674: 0F 94 C0           sete        al
  0000000140001677: C3                 ret
__scrt_get_dyn_tls_init_callback:
  0000000140001678: 48 8D 05 A1 2A 00  lea         rax,[__dyn_tls_init_callback]
                    00
  000000014000167F: C3                 ret
__scrt_get_dyn_tls_dtor_callback:
  0000000140001680: 48 8D 05 91 2A 00  lea         rax,[__dyn_tls_dtor_callback]
                    00
  0000000140001687: C3                 ret
__crt_debugger_hook:
  0000000140001688: 83 25 81 2A 00 00  and         dword ptr [__scrt_debugger_hook_flag],0
                    00
  000000014000168F: C3                 ret
__scrt_fastfail:
  0000000140001690: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  0000000140001695: 55                 push        rbp
  0000000140001696: 48 8D AC 24 40 FB  lea         rbp,[rsp-4C0h]
                    FF FF
  000000014000169E: 48 81 EC C0 05 00  sub         rsp,5C0h
                    00
  00000001400016A5: 8B D9              mov         ebx,ecx
  00000001400016A7: B9 17 00 00 00     mov         ecx,17h
  00000001400016AC: FF 15 66 09 00 00  call        qword ptr [__imp_IsProcessorFeaturePresent]
  00000001400016B2: 85 C0              test        eax,eax
  00000001400016B4: 74 04              je          00000001400016BA
  00000001400016B6: 8B CB              mov         ecx,ebx
  00000001400016B8: CD 29              int         29h
  00000001400016BA: B9 03 00 00 00     mov         ecx,3
  00000001400016BF: E8 C4 FF FF FF     call        __crt_debugger_hook
  00000001400016C4: 33 D2              xor         edx,edx
  00000001400016C6: 48 8D 4D F0        lea         rcx,[rbp-10h]
  00000001400016CA: 41 B8 D0 04 00 00  mov         r8d,4D0h
  00000001400016D0: E8 13 04 00 00     call        memset
  00000001400016D5: 48 8D 4D F0        lea         rcx,[rbp-10h]
  00000001400016D9: FF 15 29 09 00 00  call        qword ptr [__imp_RtlCaptureContext]
  00000001400016DF: 48 8B 9D E8 00 00  mov         rbx,qword ptr [rbp+0E8h]
                    00
  00000001400016E6: 48 8D 95 D8 04 00  lea         rdx,[rbp+4D8h]
                    00
  00000001400016ED: 48 8B CB           mov         rcx,rbx
  00000001400016F0: 45 33 C0           xor         r8d,r8d
  00000001400016F3: FF 15 67 09 00 00  call        qword ptr [__imp_RtlLookupFunctionEntry]
  00000001400016F9: 48 85 C0           test        rax,rax
  00000001400016FC: 74 3C              je          000000014000173A
  00000001400016FE: 48 83 64 24 38 00  and         qword ptr [rsp+38h],0
  0000000140001704: 48 8D 8D E0 04 00  lea         rcx,[rbp+4E0h]
                    00
  000000014000170B: 48 8B 95 D8 04 00  mov         rdx,qword ptr [rbp+4D8h]
                    00
  0000000140001712: 4C 8B C8           mov         r9,rax
  0000000140001715: 48 89 4C 24 30     mov         qword ptr [rsp+30h],rcx
  000000014000171A: 4C 8B C3           mov         r8,rbx
  000000014000171D: 48 8D 8D E8 04 00  lea         rcx,[rbp+4E8h]
                    00
  0000000140001724: 48 89 4C 24 28     mov         qword ptr [rsp+28h],rcx
  0000000140001729: 48 8D 4D F0        lea         rcx,[rbp-10h]
  000000014000172D: 48 89 4C 24 20     mov         qword ptr [rsp+20h],rcx
  0000000140001732: 33 C9              xor         ecx,ecx
  0000000140001734: FF 15 FE 08 00 00  call        qword ptr [__imp_RtlVirtualUnwind]
  000000014000173A: 48 8B 85 C8 04 00  mov         rax,qword ptr [rbp+4C8h]
                    00
  0000000140001741: 48 8D 4C 24 50     lea         rcx,[rsp+50h]
  0000000140001746: 48 89 85 E8 00 00  mov         qword ptr [rbp+0E8h],rax
                    00
  000000014000174D: 33 D2              xor         edx,edx
  000000014000174F: 48 8D 85 C8 04 00  lea         rax,[rbp+4C8h]
                    00
  0000000140001756: 41 B8 98 00 00 00  mov         r8d,98h
  000000014000175C: 48 83 C0 08        add         rax,8
  0000000140001760: 48 89 85 88 00 00  mov         qword ptr [rbp+88h],rax
                    00
  0000000140001767: E8 7C 03 00 00     call        memset
  000000014000176C: 48 8B 85 C8 04 00  mov         rax,qword ptr [rbp+4C8h]
                    00
  0000000140001773: 48 89 44 24 60     mov         qword ptr [rsp+60h],rax
  0000000140001778: C7 44 24 50 15 00  mov         dword ptr [rsp+50h],40000015h
                    00 40
  0000000140001780: C7 44 24 54 01 00  mov         dword ptr [rsp+54h],1
                    00 00
  0000000140001788: FF 15 A2 08 00 00  call        qword ptr [__imp_IsDebuggerPresent]
  000000014000178E: 8B D8              mov         ebx,eax
  0000000140001790: 33 C9              xor         ecx,ecx
  0000000140001792: 48 8D 44 24 50     lea         rax,[rsp+50h]
  0000000140001797: 48 89 44 24 40     mov         qword ptr [rsp+40h],rax
  000000014000179C: 48 8D 45 F0        lea         rax,[rbp-10h]
  00000001400017A0: 48 89 44 24 48     mov         qword ptr [rsp+48h],rax
  00000001400017A5: FF 15 75 08 00 00  call        qword ptr [__imp_SetUnhandledExceptionFilter]
  00000001400017AB: 48 8D 4C 24 40     lea         rcx,[rsp+40h]
  00000001400017B0: FF 15 72 08 00 00  call        qword ptr [__imp_UnhandledExceptionFilter]
  00000001400017B6: 85 C0              test        eax,eax
  00000001400017B8: 75 0D              jne         00000001400017C7
  00000001400017BA: 83 FB 01           cmp         ebx,1
  00000001400017BD: 74 08              je          00000001400017C7
  00000001400017BF: 8D 48 03           lea         ecx,[rax+3]
  00000001400017C2: E8 C1 FE FF FF     call        __crt_debugger_hook
  00000001400017C7: 48 8B 9C 24 D0 05  mov         rbx,qword ptr [rsp+5D0h]
                    00 00
  00000001400017CF: 48 81 C4 C0 05 00  add         rsp,5C0h
                    00
  00000001400017D6: 5D                 pop         rbp
  00000001400017D7: C3                 ret
__scrt_initialize_mta:
  00000001400017D8: E9 37 FE FF FF     jmp         __scrt_exe_initialize_mta
  00000001400017DD: CC CC CC                                         III
__scrt_is_managed_app:
  00000001400017E0: 48 83 EC 28        sub         rsp,28h
  00000001400017E4: 33 C9              xor         ecx,ecx
  00000001400017E6: FF 15 24 08 00 00  call        qword ptr [__imp_GetModuleHandleW]
  00000001400017EC: 48 85 C0           test        rax,rax
  00000001400017EF: 74 39              je          000000014000182A
  00000001400017F1: B9 4D 5A 00 00     mov         ecx,5A4Dh
  00000001400017F6: 66 39 08           cmp         word ptr [rax],cx
  00000001400017F9: 75 2F              jne         000000014000182A
  00000001400017FB: 48 63 48 3C        movsxd      rcx,dword ptr [rax+3Ch]
  00000001400017FF: 48 03 C8           add         rcx,rax
  0000000140001802: 81 39 50 45 00 00  cmp         dword ptr [rcx],4550h
  0000000140001808: 75 20              jne         000000014000182A
  000000014000180A: B8 0B 02 00 00     mov         eax,20Bh
  000000014000180F: 66 39 41 18        cmp         word ptr [rcx+18h],ax
  0000000140001813: 75 15              jne         000000014000182A
  0000000140001815: 83 B9 84 00 00 00  cmp         dword ptr [rcx+84h],0Eh
                    0E
  000000014000181C: 76 0C              jbe         000000014000182A
  000000014000181E: 83 B9 F8 00 00 00  cmp         dword ptr [rcx+0F8h],0
                    00
  0000000140001825: 0F 95 C0           setne       al
  0000000140001828: EB 02              jmp         000000014000182C
  000000014000182A: 32 C0              xor         al,al
  000000014000182C: 48 83 C4 28        add         rsp,28h
  0000000140001830: C3                 ret
  0000000140001831: CC CC CC                                         III
__scrt_set_unhandled_exception_filter:
  0000000140001834: 48 8D 0D 09 00 00  lea         rcx,[__scrt_unhandled_exception_filter]
                    00
  000000014000183B: 48 FF 25 DE 07 00  jmp         qword ptr [__imp_SetUnhandledExceptionFilter]
                    00
  0000000140001842: CC CC                                            II
__scrt_unhandled_exception_filter:
  0000000140001844: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  0000000140001849: 57                 push        rdi
  000000014000184A: 48 83 EC 20        sub         rsp,20h
  000000014000184E: 48 8B 19           mov         rbx,qword ptr [rcx]
  0000000140001851: 48 8B F9           mov         rdi,rcx
  0000000140001854: 81 3B 63 73 6D E0  cmp         dword ptr [rbx],0E06D7363h
  000000014000185A: 75 1C              jne         0000000140001878
  000000014000185C: 83 7B 18 04        cmp         dword ptr [rbx+18h],4
  0000000140001860: 75 16              jne         0000000140001878
  0000000140001862: 8B 53 20           mov         edx,dword ptr [rbx+20h]
  0000000140001865: 8D 82 E0 FA 6C E6  lea         eax,[rdx-19930520h]
  000000014000186B: 83 F8 02           cmp         eax,2
  000000014000186E: 76 15              jbe         0000000140001885
  0000000140001870: 81 FA 00 40 99 01  cmp         edx,1994000h
  0000000140001876: 74 0D              je          0000000140001885
  0000000140001878: 48 8B 5C 24 30     mov         rbx,qword ptr [rsp+30h]
  000000014000187D: 33 C0              xor         eax,eax
  000000014000187F: 48 83 C4 20        add         rsp,20h
  0000000140001883: 5F                 pop         rdi
  0000000140001884: C3                 ret
  0000000140001885: E8 52 02 00 00     call        __current_exception
  000000014000188A: 48 89 18           mov         qword ptr [rax],rbx
  000000014000188D: 48 8B 5F 08        mov         rbx,qword ptr [rdi+8]
  0000000140001891: E8 4C 02 00 00     call        __current_exception_context
  0000000140001896: 48 89 18           mov         qword ptr [rax],rbx
  0000000140001899: E8 D4 02 00 00     call        terminate
  000000014000189E: CC                 int         3
  000000014000189F: CC                                               I
_RTC_Initialize:
  00000001400018A0: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  00000001400018A5: 57                 push        rdi
  00000001400018A6: 48 83 EC 20        sub         rsp,20h
  00000001400018AA: 48 8D 1D 5F 10 00  lea         rbx,[__rtc_izz]
                    00
  00000001400018B1: 48 8D 3D 58 10 00  lea         rdi,[__rtc_izz]
                    00
  00000001400018B8: EB 12              jmp         00000001400018CC
  00000001400018BA: 48 8B 03           mov         rax,qword ptr [rbx]
  00000001400018BD: 48 85 C0           test        rax,rax
  00000001400018C0: 74 06              je          00000001400018C8
  00000001400018C2: FF 15 20 09 00 00  call        qword ptr [__guard_dispatch_icall_fptr]
  00000001400018C8: 48 83 C3 08        add         rbx,8
  00000001400018CC: 48 3B DF           cmp         rbx,rdi
  00000001400018CF: 72 E9              jb          00000001400018BA
  00000001400018D1: 48 8B 5C 24 30     mov         rbx,qword ptr [rsp+30h]
  00000001400018D6: 48 83 C4 20        add         rsp,20h
  00000001400018DA: 5F                 pop         rdi
  00000001400018DB: C3                 ret
_RTC_Terminate:
  00000001400018DC: 48 89 5C 24 08     mov         qword ptr [rsp+8],rbx
  00000001400018E1: 57                 push        rdi
  00000001400018E2: 48 83 EC 20        sub         rsp,20h
  00000001400018E6: 48 8D 1D 33 10 00  lea         rbx,[__rtc_tzz]
                    00
  00000001400018ED: 48 8D 3D 2C 10 00  lea         rdi,[__rtc_tzz]
                    00
  00000001400018F4: EB 12              jmp         0000000140001908
  00000001400018F6: 48 8B 03           mov         rax,qword ptr [rbx]
  00000001400018F9: 48 85 C0           test        rax,rax
  00000001400018FC: 74 06              je          0000000140001904
  00000001400018FE: FF 15 E4 08 00 00  call        qword ptr [__guard_dispatch_icall_fptr]
  0000000140001904: 48 83 C3 08        add         rbx,8
  0000000140001908: 48 3B DF           cmp         rbx,rdi
  000000014000190B: 72 E9              jb          00000001400018F6
  000000014000190D: 48 8B 5C 24 30     mov         rbx,qword ptr [rsp+30h]
  0000000140001912: 48 83 C4 20        add         rsp,20h
  0000000140001916: 5F                 pop         rdi
  0000000140001917: C3                 ret
__isa_available_init:
  0000000140001918: 48 89 5C 24 10     mov         qword ptr [rsp+10h],rbx
  000000014000191D: 48 89 74 24 18     mov         qword ptr [rsp+18h],rsi
  0000000140001922: 57                 push        rdi
  0000000140001923: 48 83 EC 10        sub         rsp,10h
  0000000140001927: 33 C0              xor         eax,eax
  0000000140001929: 33 C9              xor         ecx,ecx
  000000014000192B: 0F A2              cpuid
  000000014000192D: 44 8B C1           mov         r8d,ecx
  0000000140001930: 45 33 DB           xor         r11d,r11d
  0000000140001933: 44 8B D2           mov         r10d,edx
  0000000140001936: 41 81 F0 6E 74 65  xor         r8d,6C65746Eh
                    6C
  000000014000193D: 41 81 F2 69 6E 65  xor         r10d,49656E69h
                    49
  0000000140001944: 44 8B CB           mov         r9d,ebx
  0000000140001947: 8B F0              mov         esi,eax
  0000000140001949: 33 C9              xor         ecx,ecx
  000000014000194B: 41 8D 43 01        lea         eax,[r11+1]
  000000014000194F: 45 0B D0           or          r10d,r8d
  0000000140001952: 0F A2              cpuid
  0000000140001954: 41 81 F1 47 65 6E  xor         r9d,756E6547h
                    75
  000000014000195B: 89 04 24           mov         dword ptr [rsp],eax
  000000014000195E: 45 0B D1           or          r10d,r9d
  0000000140001961: 89 5C 24 04        mov         dword ptr [rsp+4],ebx
  0000000140001965: 8B F9              mov         edi,ecx
  0000000140001967: 89 4C 24 08        mov         dword ptr [rsp+8],ecx
  000000014000196B: 89 54 24 0C        mov         dword ptr [rsp+0Ch],edx
  000000014000196F: 75 5B              jne         00000001400019CC
  0000000140001971: 48 83 0D 9F 26 00  or          qword ptr [__memset_nt_threshold],0FFFFFFFFFFFFFFFFh
                    00 FF
  0000000140001979: 25 F0 3F FF 0F     and         eax,0FFF3FF0h
  000000014000197E: 48 C7 05 87 26 00  mov         qword ptr [__memset_fast_string_threshold],8000h
                    00 00 80 00 00
  0000000140001989: 3D C0 06 01 00     cmp         eax,106C0h
  000000014000198E: 74 28              je          00000001400019B8
  0000000140001990: 3D 60 06 02 00     cmp         eax,20660h
  0000000140001995: 74 21              je          00000001400019B8
  0000000140001997: 3D 70 06 02 00     cmp         eax,20670h
  000000014000199C: 74 1A              je          00000001400019B8
  000000014000199E: 05 B0 F9 FC FF     add         eax,0FFFCF9B0h
  00000001400019A3: 83 F8 20           cmp         eax,20h
  00000001400019A6: 77 24              ja          00000001400019CC
  00000001400019A8: 48 B9 01 00 01 00  mov         rcx,100010001h
                    01 00 00 00
  00000001400019B2: 48 0F A3 C1        bt          rcx,rax
  00000001400019B6: 73 14              jae         00000001400019CC
  00000001400019B8: 44 8B 05 55 27 00  mov         r8d,dword ptr [__favor]
                    00
  00000001400019BF: 41 83 C8 01        or          r8d,1
  00000001400019C3: 44 89 05 4A 27 00  mov         dword ptr [__favor],r8d
                    00
  00000001400019CA: EB 07              jmp         00000001400019D3
  00000001400019CC: 44 8B 05 41 27 00  mov         r8d,dword ptr [__favor]
                    00
  00000001400019D3: B8 07 00 00 00     mov         eax,7
  00000001400019D8: 44 8D 48 FB        lea         r9d,[rax-5]
  00000001400019DC: 3B F0              cmp         esi,eax
  00000001400019DE: 7C 26              jl          0000000140001A06
  00000001400019E0: 33 C9              xor         ecx,ecx
  00000001400019E2: 0F A2              cpuid
  00000001400019E4: 89 04 24           mov         dword ptr [rsp],eax
  00000001400019E7: 44 8B DB           mov         r11d,ebx
  00000001400019EA: 89 5C 24 04        mov         dword ptr [rsp+4],ebx
  00000001400019EE: 89 4C 24 08        mov         dword ptr [rsp+8],ecx
  00000001400019F2: 89 54 24 0C        mov         dword ptr [rsp+0Ch],edx
  00000001400019F6: 0F BA E3 09        bt          ebx,9
  00000001400019FA: 73 0A              jae         0000000140001A06
  00000001400019FC: 45 0B C1           or          r8d,r9d
  00000001400019FF: 44 89 05 0E 27 00  mov         dword ptr [__favor],r8d
                    00
  0000000140001A06: C7 05 F8 25 00 00  mov         dword ptr [__isa_available],1
                    01 00 00 00
  0000000140001A10: 44 89 0D F5 25 00  mov         dword ptr [__isa_enabled],r9d
                    00
  0000000140001A17: 0F BA E7 14        bt          edi,14h
  0000000140001A1B: 0F 83 91 00 00 00  jae         0000000140001AB2
  0000000140001A21: 44 89 0D E0 25 00  mov         dword ptr [__isa_available],r9d
                    00
  0000000140001A28: BB 06 00 00 00     mov         ebx,6
  0000000140001A2D: 89 1D D9 25 00 00  mov         dword ptr [__isa_enabled],ebx
  0000000140001A33: 0F BA E7 1B        bt          edi,1Bh
  0000000140001A37: 73 79              jae         0000000140001AB2
  0000000140001A39: 0F BA E7 1C        bt          edi,1Ch
  0000000140001A3D: 73 73              jae         0000000140001AB2
  0000000140001A3F: 33 C9              xor         ecx,ecx
  0000000140001A41: 0F 01 D0           xgetbv
  0000000140001A44: 48 C1 E2 20        shl         rdx,20h
  0000000140001A48: 48 0B D0           or          rdx,rax
  0000000140001A4B: 48 89 54 24 20     mov         qword ptr [rsp+20h],rdx
  0000000140001A50: 48 8B 44 24 20     mov         rax,qword ptr [rsp+20h]
  0000000140001A55: 22 C3              and         al,bl
  0000000140001A57: 3A C3              cmp         al,bl
  0000000140001A59: 75 57              jne         0000000140001AB2
  0000000140001A5B: 8B 05 AB 25 00 00  mov         eax,dword ptr [__isa_enabled]
  0000000140001A61: 83 C8 08           or          eax,8
  0000000140001A64: C7 05 9A 25 00 00  mov         dword ptr [__isa_available],3
                    03 00 00 00
  0000000140001A6E: 89 05 98 25 00 00  mov         dword ptr [__isa_enabled],eax
  0000000140001A74: 41 F6 C3 20        test        r11b,20h
  0000000140001A78: 74 38              je          0000000140001AB2
  0000000140001A7A: 83 C8 20           or          eax,20h
  0000000140001A7D: C7 05 81 25 00 00  mov         dword ptr [__isa_available],5
                    05 00 00 00
  0000000140001A87: 89 05 7F 25 00 00  mov         dword ptr [__isa_enabled],eax
  0000000140001A8D: B8 00 00 03 D0     mov         eax,0D0030000h
  0000000140001A92: 44 23 D8           and         r11d,eax
  0000000140001A95: 44 3B D8           cmp         r11d,eax
  0000000140001A98: 75 18              jne         0000000140001AB2
  0000000140001A9A: 48 8B 44 24 20     mov         rax,qword ptr [rsp+20h]
  0000000140001A9F: 24 E0              and         al,0E0h
  0000000140001AA1: 3C E0              cmp         al,0E0h
  0000000140001AA3: 75 0D              jne         0000000140001AB2
  0000000140001AA5: 83 0D 60 25 00 00  or          dword ptr [__isa_enabled],40h
                    40
  0000000140001AAC: 89 1D 56 25 00 00  mov         dword ptr [__isa_available],ebx
  0000000140001AB2: 48 8B 5C 24 28     mov         rbx,qword ptr [rsp+28h]
  0000000140001AB7: 33 C0              xor         eax,eax
  0000000140001AB9: 48 8B 74 24 30     mov         rsi,qword ptr [rsp+30h]
  0000000140001ABE: 48 83 C4 10        add         rsp,10h
  0000000140001AC2: 5F                 pop         rdi
  0000000140001AC3: C3                 ret
__scrt_is_ucrt_dll_in_use:
  0000000140001AC4: 33 C0              xor         eax,eax
  0000000140001AC6: 39 05 C4 25 00 00  cmp         dword ptr [__scrt_ucrt_dll_is_in_use],eax
  0000000140001ACC: 0F 95 C0           setne       al
  0000000140001ACF: C3                 ret
__CxxFrameHandler3:
  0000000140001AD0: FF 25 AA 05 00 00  jmp         qword ptr [__imp___CxxFrameHandler3]
__C_specific_handler:
  0000000140001AD6: FF 25 9C 05 00 00  jmp         qword ptr [__imp___C_specific_handler]
__current_exception:
  0000000140001ADC: FF 25 AE 05 00 00  jmp         qword ptr [__imp___current_exception]
__current_exception_context:
  0000000140001AE2: FF 25 A0 05 00 00  jmp         qword ptr [__imp___current_exception_context]
memset:
  0000000140001AE8: FF 25 82 05 00 00  jmp         qword ptr [__imp_memset]
_seh_filter_exe:
  0000000140001AEE: FF 25 44 06 00 00  jmp         qword ptr [__imp__seh_filter_exe]
_set_app_type:
  0000000140001AF4: FF 25 66 06 00 00  jmp         qword ptr [__imp__set_app_type]
__setusermatherr:
  0000000140001AFA: FF 25 D8 05 00 00  jmp         qword ptr [__imp___setusermatherr]
_configure_narrow_argv:
  0000000140001B00: FF 25 0A 06 00 00  jmp         qword ptr [__imp__configure_narrow_argv]
_initialize_narrow_environment:
  0000000140001B06: FF 25 5C 06 00 00  jmp         qword ptr [__imp__initialize_narrow_environment]
_get_initial_narrow_environment:
  0000000140001B0C: FF 25 36 06 00 00  jmp         qword ptr [__imp__get_initial_narrow_environment]
_initterm:
  0000000140001B12: FF 25 38 06 00 00  jmp         qword ptr [__imp__initterm]
_initterm_e:
  0000000140001B18: FF 25 3A 06 00 00  jmp         qword ptr [__imp__initterm_e]
exit:
  0000000140001B1E: FF 25 4C 06 00 00  jmp         qword ptr [__imp_exit]
_exit:
  0000000140001B24: FF 25 DE 05 00 00  jmp         qword ptr [__imp__exit]
_set_fmode:
  0000000140001B2A: FF 25 58 06 00 00  jmp         qword ptr [__imp__set_fmode]
__p___argc:
  0000000140001B30: FF 25 0A 06 00 00  jmp         qword ptr [__imp___p___argc]
__p___argv:
  0000000140001B36: FF 25 C4 05 00 00  jmp         qword ptr [__imp___p___argv]
_cexit:
  0000000140001B3C: FF 25 B6 05 00 00  jmp         qword ptr [__imp__cexit]
_c_exit:
  0000000140001B42: FF 25 A0 05 00 00  jmp         qword ptr [__imp__c_exit]
_register_thread_local_exe_atexit_callback:
  0000000140001B48: FF 25 A2 05 00 00  jmp         qword ptr [__imp__register_thread_local_exe_atexit_callback]
_configthreadlocale:
  0000000140001B4E: FF 25 74 05 00 00  jmp         qword ptr [__imp__configthreadlocale]
_set_new_mode:
  0000000140001B54: FF 25 5E 05 00 00  jmp         qword ptr [__imp__set_new_mode]
__p__commode:
  0000000140001B5A: FF 25 20 06 00 00  jmp         qword ptr [__imp___p__commode]
_initialize_onexit_table:
  0000000140001B60: FF 25 B2 05 00 00  jmp         qword ptr [__imp__initialize_onexit_table]
_register_onexit_function:
  0000000140001B66: FF 25 B4 05 00 00  jmp         qword ptr [__imp__register_onexit_function]
_crt_atexit:
  0000000140001B6C: FF 25 B6 05 00 00  jmp         qword ptr [__imp__crt_atexit]
terminate:
  0000000140001B72: FF 25 B8 05 00 00  jmp         qword ptr [__imp_terminate]
memcpy:
  0000000140001B78: FF 25 1A 05 00 00  jmp         qword ptr [__imp_memcpy]
  0000000140001B7E: CC CC                                            II
  0000000140001B80: CC                 int         3
  0000000140001B81: CC                 int         3
  0000000140001B82: CC                 int         3
  0000000140001B83: CC                 int         3
  0000000140001B84: CC                 int         3
  0000000140001B85: CC                 int         3
  0000000140001B86: 66 66 0F 1F 84 00  nop         word ptr [rax+rax]
                    00 00 00 00
_guard_dispatch_icall_nop:
  0000000140001B90: FF E0              jmp         rax
  0000000140001B92: CC CC CC CC CC CC CC CC CC CC CC CC CC CC        IIIIIIIIIIIIII
  0000000140001BA0: CC                 int         3
  0000000140001BA1: CC                 int         3
  0000000140001BA2: CC                 int         3
  0000000140001BA3: CC                 int         3
  0000000140001BA4: CC                 int         3
  0000000140001BA5: CC                 int         3
  0000000140001BA6: 66 66 0F 1F 84 00  nop         word ptr [rax+rax]
                    00 00 00 00
_guard_xfg_dispatch_icall_nop:
  0000000140001BB0: FF 25 32 06 00 00  jmp         qword ptr [__guard_dispatch_icall_fptr]
  0000000140001BB6: CC CC CC CC CC CC CC CC CC CC                    IIIIIIIIII
_ZN3std3sys4sync4once5futex4Once4call17hf131d0c7b5262170E:
  0000000140001BC0: 55                 push        rbp
  0000000140001BC1: 41 57              push        r15
  0000000140001BC3: 41 56              push        r14
  0000000140001BC5: 41 55              push        r13
  0000000140001BC7: 41 54              push        r12
  0000000140001BC9: 56                 push        rsi
  0000000140001BCA: 57                 push        rdi
  0000000140001BCB: 53                 push        rbx
  0000000140001BCC: 48 83 EC 68        sub         rsp,68h
  0000000140001BD0: 48 8D 6C 24 60     lea         rbp,[rsp+60h]
  0000000140001BD5: 48 C7 45 00 FE FF  mov         qword ptr [rbp],0FFFFFFFFFFFFFFFEh
                    FF FF
  0000000140001BDD: 4C 89 4D F0        mov         qword ptr [rbp-10h],r9
  0000000140001BE1: 4C 89 C7           mov         rdi,r8
  0000000140001BE4: 41 89 D6           mov         r14d,edx
  0000000140001BE7: 48 89 CB           mov         rbx,rcx
  0000000140001BEA: 4C 8D 25 87 07 00  lea         r12,[140002378h]
                    00
  0000000140001BF1: 41 BD 02 00 00 00  mov         r13d,2
  0000000140001BF7: BE 03 00 00 00     mov         esi,3
  0000000140001BFC: 4C 8B 3D A5 04 00  mov         r15,qword ptr [__imp_WaitOnAddress]
                    00
  0000000140001C03: 8B 03              mov         eax,dword ptr [rbx]
  0000000140001C05: EB 19              jmp         0000000140001C20
  0000000140001C07: 66 0F 1F 84 00 00  nop         word ptr [rax+rax]
                    00 00 00
  0000000140001C10: 45 84 F6           test        r14b,r14b
  0000000140001C13: 0F 84 8C 00 00 00  je          0000000140001CA5
  0000000140001C19: F0 44 0F B1 2B     lock cmpxchg dword ptr [rbx],r13d
  0000000140001C1E: 74 48              je          0000000140001C68
  0000000140001C20: 83 F8 04           cmp         eax,4
  0000000140001C23: 0F 87 99 00 00 00  ja          0000000140001CC2
  0000000140001C29: 89 C1              mov         ecx,eax
  0000000140001C2B: 49 63 0C 8C        movsxd      rcx,dword ptr [r12+rcx*4]
  0000000140001C2F: 4C 01 E1           add         rcx,r12
  0000000140001C32: FF E1              jmp         rcx
  0000000140001C34: B8 02 00 00 00     mov         eax,2
  0000000140001C39: F0 0F B1 33        lock cmpxchg dword ptr [rbx],esi
  0000000140001C3D: 75 E1              jne         0000000140001C20
  0000000140001C3F: C7 45 C0 03 00 00  mov         dword ptr [rbp-40h],3
                    00
  0000000140001C46: 41 B8 04 00 00 00  mov         r8d,4
  0000000140001C4C: 48 89 D9           mov         rcx,rbx
  0000000140001C4F: 48 8D 55 C0        lea         rdx,[rbp-40h]
  0000000140001C53: 41 B9 FF FF FF FF  mov         r9d,0FFFFFFFFh
  0000000140001C59: 41 FF D7           call        r15
  0000000140001C5C: 83 F8 01           cmp         eax,1
  0000000140001C5F: 74 A2              je          0000000140001C03
  0000000140001C61: E8 30 F4 FF FF     call        _ZN3std3sys3pal7windows3api14get_last_error17h563dec06c925f25fE
  0000000140001C66: EB 9B              jmp         0000000140001C03
  0000000140001C68: 48 89 5D C0        mov         qword ptr [rbp-40h],rbx
  0000000140001C6C: C7 45 C8 01 00 00  mov         dword ptr [rbp-38h],1
                    00
  0000000140001C73: 48 8B 07           mov         rax,qword ptr [rdi]
  0000000140001C76: 48 83 38 00        cmp         qword ptr [rax],0
  0000000140001C7A: 48 C7 00 00 00 00  mov         qword ptr [rax],0
                    00
  0000000140001C81: 74 6E              je          0000000140001CF1
  0000000140001C83: C7 45 C8 04 00 00  mov         dword ptr [rbp-38h],4
                    00
  0000000140001C8A: 48 8D 4D C0        lea         rcx,[rbp-40h]
  0000000140001C8E: E8 09 F4 FF FF     call        _ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E
  0000000140001C93: 90                 nop
  0000000140001C94: 48 83 C4 68        add         rsp,68h
  0000000140001C98: 5B                 pop         rbx
  0000000140001C99: 5F                 pop         rdi
  0000000140001C9A: 5E                 pop         rsi
  0000000140001C9B: 41 5C              pop         r12
  0000000140001C9D: 41 5D              pop         r13
  0000000140001C9F: 41 5E              pop         r14
  0000000140001CA1: 41 5F              pop         r15
  0000000140001CA3: 5D                 pop         rbp
  0000000140001CA4: C3                 ret
  0000000140001CA5: 48 8D 05 F4 05 00  lea         rax,[anon.17c887c97becc8bccbacd80e83136b22.1.llvm.16015186559179891946]
                    00
  0000000140001CAC: 48 89 45 C0        mov         qword ptr [rbp-40h],rax
  0000000140001CB0: 48 C7 45 C8 01 00  mov         qword ptr [rbp-38h],1
                    00 00
  0000000140001CB8: 48 C7 45 D0 08 00  mov         qword ptr [rbp-30h],8
                    00 00
  0000000140001CC0: EB 1B              jmp         0000000140001CDD
  0000000140001CC2: 48 8D 05 37 06 00  lea         rax,[anon.17c887c97becc8bccbacd80e83136b22.3.llvm.16015186559179891946]
                    00
  0000000140001CC9: 48 89 45 C0        mov         qword ptr [rbp-40h],rax
  0000000140001CCD: 48 C7 45 C8 01 00  mov         qword ptr [rbp-38h],1
                    00 00
  0000000140001CD5: 48 8D 45 F8        lea         rax,[rbp-8]
  0000000140001CD9: 48 89 45 D0        mov         qword ptr [rbp-30h],rax
  0000000140001CDD: 0F 57 C0           xorps       xmm0,xmm0
  0000000140001CE0: 0F 11 45 D8        movups      xmmword ptr [rbp-28h],xmm0
  0000000140001CE4: 48 8D 4D C0        lea         rcx,[rbp-40h]
  0000000140001CE8: 48 8B 55 F0        mov         rdx,qword ptr [rbp-10h]
  0000000140001CEC: E8 B1 F3 FF FF     call        _ZN4core9panicking9panic_fmt17hb39cfdace1bc0cb7E
  0000000140001CF1: 48 8D 0D 68 06 00  lea         rcx,[anon.17c887c97becc8bccbacd80e83136b22.5.llvm.16015186559179891946]
                    00
  0000000140001CF8: E8 AB F3 FF FF     call        _ZN4core6option13unwrap_failed17hb95fbc70d3a4af9aE
  0000000140001CFD: 0F 0B              ud2
  0000000140001CFF: 90                 nop
  0000000140001D00: 48 89 54 24 10     mov         qword ptr [rsp+10h],rdx
  0000000140001D05: 55                 push        rbp
  0000000140001D06: 41 57              push        r15
  0000000140001D08: 41 56              push        r14
  0000000140001D0A: 41 55              push        r13
  0000000140001D0C: 41 54              push        r12
  0000000140001D0E: 56                 push        rsi
  0000000140001D0F: 57                 push        rdi
  0000000140001D10: 53                 push        rbx
  0000000140001D11: 48 83 EC 28        sub         rsp,28h
  0000000140001D15: 48 8D 6A 60        lea         rbp,[rdx+60h]
  0000000140001D19: 48 8D 4D C0        lea         rcx,[rbp-40h]
  0000000140001D1D: E8 7A F3 FF FF     call        _ZN86_$LT$std..sys..sync..once..futex..CompletionGuard$u20$as$u20$core..ops..drop..Drop$GT$4drop17h21af625d29b66bb9E
  0000000140001D22: 90                 nop
  0000000140001D23: 48 83 C4 28        add         rsp,28h
  0000000140001D27: 5B                 pop         rbx
  0000000140001D28: 5F                 pop         rdi
  0000000140001D29: 5E                 pop         rsi
  0000000140001D2A: 41 5C              pop         r12
  0000000140001D2C: 41 5D              pop         r13
  0000000140001D2E: 41 5E              pop         r14
  0000000140001D30: 41 5F              pop         r15
  0000000140001D32: 5D                 pop         rbp
  0000000140001D33: C3                 ret
  0000000140001D34: CC CC CC CC CC CC CC CC CC CC CC CC              IIIIIIIIIIII
_ZN3std4sync9once_lock17OnceLock$LT$T$GT$10initialize17h295e963a41abbe0dE:
  0000000140001D40: 48 83 EC 48        sub         rsp,48h
  0000000140001D44: 8B 01              mov         eax,dword ptr [rcx]
  0000000140001D46: 83 F8 04           cmp         eax,4
  0000000140001D49: 75 05              jne         0000000140001D50
  0000000140001D4B: 48 83 C4 48        add         rsp,48h
  0000000140001D4F: C3                 ret
  0000000140001D50: 48 8D 41 04        lea         rax,[rcx+4]
  0000000140001D54: 48 89 44 24 38     mov         qword ptr [rsp+38h],rax
  0000000140001D59: 48 8D 44 24 2F     lea         rax,[rsp+2Fh]
  0000000140001D5E: 48 89 44 24 40     mov         qword ptr [rsp+40h],rax
  0000000140001D63: 48 8D 44 24 38     lea         rax,[rsp+38h]
  0000000140001D68: 48 89 44 24 30     mov         qword ptr [rsp+30h],rax
  0000000140001D6D: 4C 8D 0D 9C 06 00  lea         r9,[anon.3d834979ff63e53473b447d97fa3ae75.1.llvm.8886704913690677028]
                    00
  0000000140001D74: 4C 8D 44 24 30     lea         r8,[rsp+30h]
  0000000140001D79: B2 01              mov         dl,1
  0000000140001D7B: E8 40 FE FF FF     call        _ZN3std3sys4sync4once5futex4Once4call17hf131d0c7b5262170E
  0000000140001D80: EB C9              jmp         0000000140001D4B
`__scrt_common_main_seh'::`1'::filt$0:
  0000000140001D82: 40 55              push        rbp
  0000000140001D84: 48 83 EC 20        sub         rsp,20h
  0000000140001D88: 48 8B EA           mov         rbp,rdx
  0000000140001D8B: 48 8B 01           mov         rax,qword ptr [rcx]
  0000000140001D8E: 48 8B D1           mov         rdx,rcx
  0000000140001D91: 8B 08              mov         ecx,dword ptr [rax]
  0000000140001D93: E8 56 FD FF FF     call        _seh_filter_exe
  0000000140001D98: 90                 nop
  0000000140001D99: 48 83 C4 20        add         rsp,20h
  0000000140001D9D: 5D                 pop         rbp
  0000000140001D9E: C3                 ret
  0000000140001D9F: CC                 int         3
__scrt_is_nonwritable_in_current_image$filt$0:
  0000000140001DA0: 40 55              push        rbp
  0000000140001DA2: 48 8B EA           mov         rbp,rdx
  0000000140001DA5: 48 8B 01           mov         rax,qword ptr [rcx]
  0000000140001DA8: 33 C9              xor         ecx,ecx
  0000000140001DAA: 81 38 05 00 00 C0  cmp         dword ptr [rax],0C0000005h
  0000000140001DB0: 0F 94 C1           sete        cl
  0000000140001DB3: 8B C1              mov         eax,ecx
  0000000140001DB5: 5D                 pop         rbp
  0000000140001DB6: C3                 ret
  0000000140001DB7: CC                 int         3

  Summary

        1000 .data
        1000 .pdata
        2000 .rdata
        1000 .reloc
        1000 .text

opt-level=2 to clean things up a bit

from rust.

bash avatar bash commented on August 24, 2024 1

Running bisect unattended yields nightly-2022-11-10 as the regressing version.

searched toolchains nightly-2020-01-01 through nightly-2024-07-19


********************************************************************************
Regression in nightly-2022-11-10
********************************************************************************

fetching https://static.rust-lang.org/dist/2022-11-09/channel-rust-nightly-git-commit-hash.txt
nightly manifest 2022-11-09: 40 B / 40 B [===================================================================] 100.00 % 357.72 KB/s converted 2022-11-09 to 85f4f41deb1557ca8ab228319d33003dd2f20f45
fetching https://static.rust-lang.org/dist/2022-11-10/channel-rust-nightly-git-commit-hash.txt
nightly manifest 2022-11-10: 40 B / 40 B [===================================================================] 100.00 % 355.11 KB/s converted 2022-11-10 to e75aab045fc476f176a58c408f6b06f0e275c6e1
looking for regression commit between 2022-11-09 and 2022-11-10
cloning rust repository
opening existing repository at "rust.git"
Found origin remote under name `origin`
refreshing repository at "rust.git"
fetching (via local git) commits from 85f4f41deb1557ca8ab228319d33003dd2f20f45 to e75aab045fc476f176a58c408f6b06f0e275c6e1
opening existing repository at "rust.git"
Found origin remote under name `origin`
refreshing repository at "rust.git"
looking up first commit
looking up second commit
checking that commits are by bors and thus have ci artifacts...
finding bors merge commits
found 9 bors merge commits in the specified range
  commit[0] 2022-11-08: Auto merge of #103252 - lcnr:recompute_applicable_impls, r=jackh726
  commit[1] 2022-11-08: Auto merge of #104168 - GuillaumeGomez:rollup-tf4edqc, r=GuillaumeGomez
  commit[2] 2022-11-09: Auto merge of #103171 - jackh726:gen-interior-hrtb-error, r=cjgillot
  commit[3] 2022-11-09: Auto merge of #104179 - Manishearth:rollup-yvsx5hh, r=Manishearth
  commit[4] 2022-11-09: Auto merge of #104180 - fee1-dead-contrib:fix-wf-fndef, r=oli-obk
  commit[5] 2022-11-09: Auto merge of #102565 - jyn514:refactor-build-manifest, r=Mark-Simulacrum
  commit[6] 2022-11-09: Auto merge of #103723 - CastilloDel:master, r=jackh726
  commit[7] 2022-11-09: Auto merge of #104192 - Dylan-DPC:rollup-jjo1o80, r=Dylan-DPC
  commit[8] 2022-11-09: Auto merge of #104131 - notriddle:notriddle/flate2, r=Mark-Simulacrum
ERROR: no CI builds available between 85f4f41deb1557ca8ab228319d33003dd2f20f45 and e75aab045fc476f176a58c408f6b06f0e275c6e1 within last 167 days

from rust.

tgross35 avatar tgross35 commented on August 24, 2024 1

can someone try this with s/debug_assert/assert/ right there?

[building]

edit: grumble I need to update vstools https://users.rust-lang.org/t/error-could-not-compile-rustc-driver-lib-due-to-1-previous-error/113278, feel free to beat me to this if anyone is up to date

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

@janhohenheim Can you bisect this to a specific commit?

https://github.com/rust-lang/cargo-bisect-rustc

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

Also, can you specify your Windows version? Just in case.

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

@workingjubilee sure, will do later. First, I'm trying to narrow the example a bit down.

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

For future reference, permalink at that version https://github.com/rust-lang/rust/blob/22a5267c83a3e17f2b763279eb24bb632c45dc6b/library/std/src/sys/sync/once/futex.rs

You should try the nightly too, @ChrisDenton recently did some changes there that may have happened to fix things

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

Alright, added my Windows system information and linked to a smaller example. Will run cargo-bisect now.

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

For your bevy_dylib_crash repo, I hit what seems to be an intentional panic somewhere else, not sure if this means it's getting past the point where your unreachable!() would come up or stopping before it

    Finished `release` profile [optimized] target(s) in 0.32s
     Running `target\release\bevy_quickstart.exe`
thread 'main' panicked at C:\Users\tmgross\.cargo\registry\src\index.crates.io-6f17d22bba15001f\bevy_asset-0.14.0\src\io\source.rs:503:21:
Failed to create file watcher from path "assets", Error { kind: Generic("Input watch path is neither a file nor a directory."), paths: [] }
stack backtrace:
   0: std::panicking::begin_panic_handler
             at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library\std\src\panicking.rs:661
   1: core::panicking::panic_fmt
             at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library\core\src\panicking.rs:74
   2: bevy_asset::io::source::AssetSource::build
   3: bevy_asset::io::source::AssetSourceBuilder::build
   4: bevy_asset::io::source::AssetSourceBuilders::build_sources
   5: <bevy_asset::AssetPlugin as bevy_app::plugin::Plugin>::build
   6: bevy_app::app::App::add_boxed_plugin
   7: bevy_app::plugin_group::PluginGroupBuilder::finish
   8: main
   9: main
  10: main
  11: std::rt::lang_start_internal
             at /rustc/bcf94dec5ba6838e435902120c0384c360126a26/library\std\src\rt.rs:141
  12: main
  13: invoke_main
             at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
  14: __scrt_common_main_seh
             at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
  15: BaseThreadInitThunk
  16: RtlUserThreadStart
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
error: process didn't exit successfully: `target\release\bevy_quickstart.exe` (exit code: 101)

Just testing with the latest:

rustc 1.81.0-nightly (5affbb171 2024-07-18)
binary: rustc
commit-hash: 5affbb17153bc69a9d5d8d2faa4e399a014a211e
commit-date: 2024-07-18
host: x86_64-pc-windows-msvc
release: 1.81.0-nightly
LLVM version: 18.1.7

Windows 11 23H2 22631.3380

I have a slightly newer version of Windows but otherwise things look the same. Maybe try updating, but not until after the bisect completes :)

(also I textified your system info)

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

@tgross35 oh sorry, I have "simplified" the example too much. That's my bad. Can you try with https://github.com/TheBevyFlock/bevy_quickstart ? Just running cargo run --release should produce the described result.

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Ah, yeah reproduced with the quickstart

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Are you running a bisect, or still trying to minimize? Unfortunate that this takes almost 3 minutes to compile

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Relevant bit with RUST_BACKTRACE=full

  11:     0x7ffa909b47af - std::sys::backtrace::__rust_end_short_backtrace<std::panicking::begin_panic_handler::closure_env$0,never$>
                               at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\sys\backtrace.rs:168
  12:     0x7ffa909b7106 - std::panicking::begin_panic_handler
                               at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\panicking.rs:665
  13:     0x7ffa90a0d6b4 - core::panicking::panic_fmt
                               at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\core\src\panicking.rs:74
  14:     0x7ff6d1364176 - _guard_xfg_dispatch_icall_nop
  15:     0x7ff6d1366803 - _guard_xfg_dispatch_icall_nop
  16:     0x7ff6d133c711 - <bevy_quickstart::game::assets::HandleMap<bevy_quickstart::game::assets::ImageKey> as bevy_ecs::world::FromWorld>::from_world::h409ade5f5f444d1b
  17:     0x7ff6d134fd90 - <bevy_quickstart::AppPlugin as bevy_app::plugin::Plugin>::build::h2e1d5ae2b1f18546
  18:     0x7ffa44ad6b47 - bevy_app::app::App::add_boxed_plugin::h671372d46ee73030
  19:     0x7ff6d135f121 - <bevy_quickstart::AppSet as bevy_ecs::schedule::set::SystemSet>::dyn_hash::h07f7da5483ff379d
  20:     0x7ff6d135e4fa - <bevy_quickstart::AppSet as bevy_ecs::schedule::set::SystemSet>::dyn_hash::h07f7da5483ff379d
  21:     0x7ff6d135e4e9 - <bevy_quickstart::AppSet as bevy_ecs::schedule::set::SystemSet>::dyn_hash::h07f7da5483ff379d
  22:     0x7ffa9099b969 - std::rt::lang_start_internal::closure$2
                               at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\rt.rs:141
  23:     0x7ffa9099b969 - std::panicking::try::do_call
                               at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\panicking.rs:557

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

This does not reproduce in debug mode, interesting

Note that there are some custom settings in the release profile, namely:

[profile.release]
codegen-units = 1
lto = "thin"
opt-level = "s"
strip = "debuginfo"

I do not know if any of these is relevant.

from rust.

ChrisDenton avatar ChrisDenton commented on August 24, 2024

I've not looked at this properly yet but my off the cuff guess would be this is a compiler issue around dylibs. Specifically I would try lto = true instead of "thin".

Some notes off the top of my head:

  • This can only possibly be hit in latest nightly (or maybe the one before that). The Windows code is very different on stable.
  • This is almost certain a dylib issue, either caused by the compiler or possibly some bevy issue (I think the former is more likely)
  • There have been problems in the past with lto="thin".

Other things you can do is to try minimizing dependencies and features (e.g. default-features = false) as well as removing anything else not necessary (e.g. special compiler flags). Still, bevy is a large framework so minimizing may be tricky.

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Indeed! Seems like LTO is the difference

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Testing some more: this happens with either lto = "thin" and lto = true on both stable (1.79.0) and nightly.

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

@ChrisDenton I've got the information about this failing on stable from a user (ping @rparrett) but can't verify it on my machine as I can't get the release to build at all on stable due to the well-known "Too many symbols" issue.

As for bisect: my friend @bash reports that the nightly on 2024-07-17 already fails with a different error:

thread 'main' panicked at /rustc/032be6f7bbe091c7dfa29f115e94b9cc9bae1758\library\std\src\sync\once.rs:217:20:
assertion failed: state_and_queue.addr() & STATE_MASK == RUNNING
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
error: process didn't exit successfully: `target-bisector-nightly-2024-07-17-x86_64-pc-windows-msvc\release\bevy_quickstart.exe` (exit code: 101)

Interestingly, this is the same error that I got with an entirely different setup: rust-lang/rustc_codegen_cranelift#1508 (comment)
which I assumed to be cranelift's fault, as I did not get that error using LLVM as a backend in that case.

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

Testing some more: this happens with either lto = "thin" and lto = true on both stable (1.79.0) and nightly.

Thanks for verifying that this indeed fails on stable.

from rust.

ChrisDenton avatar ChrisDenton commented on August 24, 2024

Ah, it's a very different error on stable. The one in the OP would not be possible.

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

That futex code isn't used by Windows on stable.

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

@workingjubilee fair enough, sorry.
I can personally confirm that cargo 1.81.0-nightly hits this backtrace:

Backtrace
thread 'main' panicked at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e\library\std\src\sync\once.rs:217:20:
internal error: entered unreachable code: state is never set to invalid values
stack backtrace:
   0: std::panicking::begin_panic_handler
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\panicking.rs:665
   1: core::panicking::panic_fmt
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\core\src\panicking.rs:74
   2: _guard_xfg_dispatch_icall_nop
   3: _guard_xfg_dispatch_icall_nop
   4: <bevy_quickstart::game::assets::HandleMap<bevy_quickstart::game::assets::ImageKey> as bevy_ecs::world::FromWorld>::from_world
   5: <bevy_quickstart::AppPlugin as bevy_app::plugin::Plugin>::build
   6: bevy_app::app::App::add_boxed_plugin
   7: <bevy_quickstart::AppSet as bevy_ecs::schedule::set::SystemSet>::dyn_hash
   8: <bevy_quickstart::AppSet as bevy_ecs::schedule::set::SystemSet>::dyn_hash
   9: <bevy_quickstart::AppSet as bevy_ecs::schedule::set::SystemSet>::dyn_hash
  10: std::rt::lang_start_internal::closure$2
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\rt.rs:141
  11: std::panicking::try::do_call
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\panicking.rs:557
  12: std::panicking::try
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\panicking.rs:521
  13: std::panic::catch_unwind
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\panic.rs:350
  14: std::rt::lang_start_internal
             at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e/library\std\src\rt.rs:141
  15: main
  16: invoke_main
             at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
  17: __scrt_common_main_seh
             at D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
  18: BaseThreadInitThunk
  19: RtlUserThreadStart

I assumed that futex was at fault because that is the only place where this error message appears in the repo.
Googling that error message verbatim tells me that the only other place it appears in is a library called rustix-futex-sync, which does not appear in my Cargo.lock.

from rust.

ChrisDenton avatar ChrisDenton commented on August 24, 2024

If two different implementations (in stable and nightly) are hitting an error then that strongly suggests this is a dylib/lto issue and not an issue with the code itself.

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

If two different implementations (in stable and nightly) are hitting an error then that strongly suggests this is a dylib/lto issue and not an issue with the code itself.

Looks like so far, the only person able to run into unreachable! on stable is @tgross35.
Are you sure it was unreachable! and not assertion failed: state_and_queue.addr() & STATE_MASK == RUNNING? I'm asking because that is the error I get when using the nightly that was published around the time of the last stable.

from rust.

ChrisDenton avatar ChrisDenton commented on August 24, 2024

I can reproduce a stable error reliably (at least on my machine) with https://github.com/ChrisDenton/bevy_dylab_crash/tree/main

     Running `target\release\bevy_quickstart.exe`
thread 'main' panicked at /rustc/129f3b9964af4d4a709d1383930ade12dfe7c081\library\std\src\sync\once.rs:208:20:
assertion failed: state_and_queue.addr() & STATE_MASK == RUNNING

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Didn't read close enough before, but that is indeed the same message I get on stable with https://github.com/TheBevyFlock/bevy_quickstart

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

Alright, that at least confirms that the unreachable! execution is indeed only happening on nightly.

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

About the state_and_queue.addr() & STATE_MASK == RUNNING: is that kind of error a user error (Bevy in this case) or a standard library bug?

from rust.

bash avatar bash commented on August 24, 2024

I can reproduce a stable error reliably (at least on my machine) with ChrisDenton/bevy_dylab_crash@main

Whoa that's a nice minimal example (well more minimal than the template I guess 😆).

I get the original error when I run this with the current nightly (2024-07-18):

     Running `target\release\bevy_quickstart.exe`
thread 'main' panicked at /rustc/5affbb17153bc69a9d5d8d2faa4e399a014a211e\library\std\src\sync\once.rs:217:20:
internal error: entered unreachable code: state is never set to invalid values

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

Cool! Now we've got an example that can toggle between both errors 😄

from rust.

ChrisDenton avatar ChrisDenton commented on August 24, 2024

Yeah, so I would return to my point above. These are using two very different implementations of Once so it's unlikely that there's a bug in the standard library code. More likely is that there's a dylib or lto (or both) issue that's causing the wrong memory address to be read.

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

@janhohenheim it's fine. there will be mistakes, but then someone has to state what should be done. and unfortunately with very alarming bugs like these, it is often very hard to determine how to even begin to fix the problem, so being excruciatingly precise can become the minimum.

so, the question arises: is there a previous version of rustc that does make this work?

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

@workingjubilee makes sense. I'll remember that next time I open a rustc issue :)
Unfortunately, going back in time with rustc versions is very difficult in this case as Bevy 0.14 depends on the newest stable. @bash is currently working on isolating the issue further to make it easier to downgrade the code in question.

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

huh, this is... weird.

which libraries are being built as dylibs?

from rust.

janhohenheim avatar janhohenheim commented on August 24, 2024

huh, this is... weird.

which libraries are being built as dylibs?

The whole dynamic linking business goes through bevy_dylib, which, as far as I understand, pulls in bevy_internal, which in turn pulls in the rest of the Bevy crates.

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

// If this assertion triggers, there's something wrong with commandline
// argument validation.
debug_assert!(
!(self.tcx.sess.opts.cg.linker_plugin_lto.enabled()
&& self.tcx.sess.target.is_like_windows
&& self.tcx.sess.opts.cg.prefer_dynamic)
);

can someone try this with s/debug_assert/assert/ right there?

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

can someone try this with s/debug_assert/assert/ right there?

Just finished. The new assertion doesn't hit (stage1), repro still crashes

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

@wesleywiser and @michaelwoerister were on the PR, may want to take a look.

It's interesting that the PR causing this behavior was intended to fix a similar bug, #81408

from rust.

workingjubilee avatar workingjubilee commented on August 24, 2024

I see. The assert is hit but passes. Does reverting the actual change fix this?

from rust.

tgross35 avatar tgross35 commented on August 24, 2024

Was already building 😆 yes, confirmed that reverting 296489c causes the repro to not crash.

from rust.

apiraino avatar apiraino commented on August 24, 2024

WG-prioritization assigning priority (Zulip discussion).

@rustbot label -I-prioritize +P-high

from rust.

Zoxc avatar Zoxc commented on August 24, 2024

#122790 fixes @bash's minimized example by reverting #103353.

from rust.

Zoxc avatar Zoxc commented on August 24, 2024

I see that Cargo was incorrectly passing -C linker-plugin-lto when using ThinLTO. That doesn't work with dylibs and we apparently don't correctly check that no dylibs are involved. With that addressed and #122790 and #129079 applied the bevy-template repo works with both rust-lld and link.

from rust.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.