Skip to content

Instantly share code, notes, and snippets.

@sandersaares
Created February 2, 2024 06:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sandersaares/4bfe3ca0cd098c77f974f5741f88e6eb to your computer and use it in GitHub Desktop.
Save sandersaares/4bfe3ca0cd098c77f974f5741f88e6eb to your computer and use it in GitHub Desktop.
Pi censorship: C# assembly code

.NET 8.0.1 (8.0.123.58001), X64 RyuJIT AVX2

; CensoredPi.PiCensorship.InPlaceBytes()
       sub       rsp,48
       xor       eax,eax
       mov       [rsp+28],rax
       vxorps    xmm4,xmm4,xmm4
       vmovdqa   xmmword ptr [rsp+30],xmm4
       mov       [rsp+40],rax
       mov       dword ptr [rsp+28],0FFFFFFFF
       lea       rcx,[rsp+28]
       call      qword ptr [7FF8D40453F8]; System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[[CensoredPi.PiCensorship+<InPlaceBytes>d__0, CensoredPi]](<InPlaceBytes>d__0 ByRef)
       mov       rax,[rsp+30]
       test      rax,rax
       je        short M00_L01
M00_L00:
       add       rsp,48
       ret
M00_L01:
       lea       rcx,[rsp+30]
       call      qword ptr [7FF8D40449F0]
       jmp       short M00_L00
; Total bytes of code 73
; System.Threading.Tasks.Task.GetAwaiter()
       mov       rax,rcx
       ret
; Total bytes of code 4
; System.Runtime.CompilerServices.TaskAwaiter.GetResult()
       mov       rcx,[rcx]
       mov       edx,[rcx+34]
       and       edx,11000000
       cmp       edx,1000000
       jne       short M02_L00
       ret
M02_L00:
       xor       edx,edx
       jmp       qword ptr [7FF8D40448E8]
; Total bytes of code 29
; System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[[CensoredPi.PiCensorship+<InPlaceBytes>d__0, CensoredPi]](<InPlaceBytes>d__0 ByRef)
       push      rbp
       push      rbx
       sub       rsp,48
       lea       rbp,[rsp+50]
       mov       [rbp-30],rsp
       mov       rbx,rcx
       cmp       [rbx],bl
       mov       rax,gs:[58]
       mov       rax,[rax+40]
       cmp       dword ptr [rax+188],2
       jl        short M03_L04
       mov       rax,[rax+190]
       mov       rax,[rax+10]
       test      rax,rax
       je        short M03_L04
       mov       rax,[rax]
       add       rax,10
M03_L00:
       mov       rax,[rax+18]
       test      rax,rax
       jne       short M03_L01
       call      qword ptr [7FF8D3BDD1D0]; System.Threading.Thread.InitializeCurrentThread()
M03_L01:
       mov       [rbp-10],rax
       mov       rdx,[rax+8]
       mov       [rbp-18],rdx
       mov       rax,[rax+10]
       mov       [rbp-20],rax
       mov       rcx,rbx
       call      qword ptr [7FF8D40452F0]; CensoredPi.PiCensorship+<InPlaceBytes>d__0.MoveNext()
       nop
       mov       rax,[rbp-20]
       mov       rcx,[rbp-10]
       cmp       rax,[rcx+10]
       jne       short M03_L05
M03_L02:
       mov       r8,[rcx+8]
       mov       rdx,[rbp-18]
       cmp       rdx,r8
       je        short M03_L03
       call      qword ptr [7FF8D40455C0]
M03_L03:
       nop
       add       rsp,48
       pop       rbx
       pop       rbp
       ret
M03_L04:
       mov       ecx,2
       call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
       jmp       short M03_L00
M03_L05:
       lea       rcx,[rcx+10]
       mov       rdx,rax
       call      CORINFO_HELP_ASSIGN_REF
       mov       rcx,[rbp-10]
       jmp       short M03_L02
       push      rbp
       push      rbx
       sub       rsp,28
       mov       rbp,[rcx+20]
       mov       [rsp+20],rbp
       lea       rbp,[rbp+50]
       mov       rdx,[rbp-20]
       mov       rcx,[rbp-10]
       cmp       rdx,[rcx+10]
       je        short M03_L06
       lea       rcx,[rcx+10]
       call      CORINFO_HELP_ASSIGN_REF
       mov       rcx,[rbp-10]
M03_L06:
       mov       r8,[rcx+8]
       mov       rdx,[rbp-18]
       cmp       rdx,r8
       je        short M03_L07
       call      qword ptr [7FF8D40455C0]
M03_L07:
       nop
       add       rsp,28
       pop       rbx
       pop       rbp
       ret
; Total bytes of code 254
; System.Threading.Thread.InitializeCurrentThread()
       push      rbx
       sub       rsp,20
       call      qword ptr [7FF933567C20]
       mov       rbx,rax
       call      qword ptr [7FF933554470]
       lea       rcx,[rax+18]
       mov       rdx,rbx
       call      qword ptr [7FF933552D30]; CORINFO_HELP_ASSIGN_REF
       mov       rax,rbx
       add       rsp,20
       pop       rbx
       ret
; Total bytes of code 42
; CensoredPi.PiCensorship+<InPlaceBytes>d__0.MoveNext()
       push      rbp
       push      r14
       push      rdi
       push      rsi
       push      rbx
       sub       rsp,0B0
       vzeroupper
       lea       rbp,[rsp+0D0]
       vxorps    xmm4,xmm4,xmm4
       vmovdqa   xmmword ptr [rbp-0A0],xmm4
       vmovdqa   xmmword ptr [rbp-90],xmm4
       mov       rax,0FFFFFFFFFFFFFFA0
M05_L00:
       vmovdqa   xmmword ptr [rbp+rax-20],xmm4
       vmovdqa   xmmword ptr [rbp+rax-10],xmm4
       vmovdqa   xmmword ptr [rax+rbp],xmm4
       add       rax,30
       jne       short M05_L00
       mov       [rbp-0B0],rsp
       mov       [rbp+10],rcx
       mov       rbx,rcx
       mov       ecx,[rbx]
       test      ecx,ecx
       je        near ptr M05_L09
       mov       rcx,235F88061B8
       mov       rcx,[rcx]
       mov       rax,235F8801430
       mov       rax,[rax]
       vxorps    xmm0,xmm0,xmm0
       vmovdqu   xmmword ptr [rbp-78],xmm0
       mov       [rbp-98],rcx
       mov       [rbp-0A0],rax
       xor       ecx,ecx
       mov       [rbp-68],rcx
       mov       dword ptr [rbp-88],0FFFFFFFF
       lea       rcx,[rbp-0A0]
       call      qword ptr [7FF8D4047690]; System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[[CensoredPi.PiCensorship+<InPlaceWriteCensoredDigitsOfPiAsUtf8BytesAsync>d__1, CensoredPi]](<InPlaceWriteCensoredDigitsOfPiAsUtf8BytesAsync>d__1 ByRef)
       mov       rcx,[rbp-78]
       mov       rdx,235F8801E88
       cmp       rcx,[rdx]
       jne       short M05_L03
       mov       eax,[rbp-70]
       xor       esi,esi
M05_L01:
       mov       [rbp-30],rsi
       mov       [rbp-28],eax
       mov       word ptr [rbp-24],0
       mov       byte ptr [rbp-22],1
       mov       rdi,[rbp-30]
       test      rdi,rdi
       jne       near ptr M05_L06
       jmp       near ptr M05_L11
M05_L02:
       mov       rdx,r14
       mov       rcx,offset MT_System.Threading.Tasks.Task`1[[System.Int32, System.Private.CoreLib]]
       call      qword ptr [7FF8D3BD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       test      rax,rax
       je        near ptr M05_L10
       mov       ecx,[rax+34]
       and       ecx,11000000
       cmp       ecx,1000000
       je        near ptr M05_L12
       mov       rcx,rax
       xor       edx,edx
       call      qword ptr [7FF8D40448E8]
       jmp       near ptr M05_L12
M05_L03:
       mov       rsi,[rbp-78]
       test      rsi,rsi
       jne       short M05_L04
       mov       rcx,offset MT_System.Threading.Tasks.Task`1[[System.Int32, System.Private.CoreLib]]
       call      CORINFO_HELP_NEWSFAST
       mov       rsi,rax
       mov       rcx,rsi
       call      qword ptr [7FF8D3E3C090]
       mov       [rbp-78],rsi
M05_L04:
       test      rsi,rsi
       jne       short M05_L05
       mov       ecx,9
       call      qword ptr [7FF8D3E65AE8]
       int       3
M05_L05:
       xor       eax,eax
       jmp       near ptr M05_L01
M05_L06:
       mov       rdx,rdi
       mov       rcx,offset MT_System.Threading.Tasks.Task`1[[System.Int32, System.Private.CoreLib]]
       call      qword ptr [7FF8D3BD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       test      rax,rax
       je        short M05_L07
       xor       esi,esi
       test      dword ptr [rax+34],1600000
       setne     sil
       jmp       short M05_L08
M05_L07:
       mov       rcx,rdi
       movsx     rdx,word ptr [rbp-24]
       mov       r11,7FF8D3A90518
       call      qword ptr [r11]
       xor       esi,esi
       test      eax,eax
       setne     sil
M05_L08:
       test      esi,esi
       jne       short M05_L11
       xor       eax,eax
       mov       [rbx],eax
       lea       rdi,[rbx+10]
       lea       rsi,[rbp-30]
       call      CORINFO_HELP_ASSIGN_BYREF
       movsq
       lea       rdx,[rbx+8]
       mov       rcx,rbx
       call      qword ptr [7FF8D40969A0]
       mov       rdx,rax
       lea       rcx,[rbp-30]
       call      qword ptr [7FF8D40969B8]
       jmp       short M05_L13
M05_L09:
       vmovdqu   xmm0,xmmword ptr [rbx+10]
       vmovdqu   xmmword ptr [rbp-30],xmm0
       xor       edx,edx
       mov       [rbx+10],rdx
       mov       [rbx+18],rdx
       mov       dword ptr [rbx],0FFFFFFFF
       jmp       short M05_L11
M05_L10:
       mov       rcx,r14
       movsx     rdx,word ptr [rbp-24]
       mov       r11,7FF8D3A90520
       call      qword ptr [r11]
       jmp       short M05_L12
M05_L11:
       mov       r14,[rbp-30]
       test      r14,r14
       jne       near ptr M05_L02
M05_L12:
       mov       dword ptr [rbx],0FFFFFFFE
       lea       rcx,[rbx+8]
       cmp       qword ptr [rcx],0
       jne       short M05_L14
       mov       rdx,235F8800850
       mov       rdx,[rdx]
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
M05_L13:
       nop
       add       rsp,0B0
       pop       rbx
       pop       rsi
       pop       rdi
       pop       r14
       pop       rbp
       ret
M05_L14:
       mov       rcx,[rcx]
       xor       edx,edx
       call      qword ptr [7FF8D40967C0]
       jmp       short M05_L13
       push      rbp
       push      r14
       push      rdi
       push      rsi
       push      rbx
       sub       rsp,30
       vzeroupper
       mov       rbp,[rcx+20]
       mov       [rsp+20],rbp
       lea       rbp,[rbp+0D0]
       mov       rcx,[rbp+10]
       mov       dword ptr [rcx],0FFFFFFFE
       add       rcx,8
       call      qword ptr [7FF8D4044A20]
       lea       rax,[M05_L13]
       add       rsp,30
       pop       rbx
       pop       rsi
       pop       rdi
       pop       r14
       pop       rbp
       ret
; Total bytes of code 679
; System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[[CensoredPi.PiCensorship+<InPlaceWriteCensoredDigitsOfPiAsUtf8BytesAsync>d__1, CensoredPi]](<InPlaceWriteCensoredDigitsOfPiAsUtf8BytesAsync>d__1 ByRef)
       push      rbp
       push      rbx
       sub       rsp,48
       lea       rbp,[rsp+50]
       mov       [rbp-30],rsp
       mov       rbx,rcx
       cmp       [rbx],bl
       mov       rax,gs:[58]
       mov       rax,[rax+40]
       cmp       dword ptr [rax+188],2
       jl        short M06_L04
       mov       rax,[rax+190]
       mov       rax,[rax+10]
       test      rax,rax
       je        short M06_L04
       mov       rax,[rax]
       add       rax,10
M06_L00:
       mov       rax,[rax+18]
       test      rax,rax
       jne       short M06_L01
       call      qword ptr [7FF8D3BDD1D0]; System.Threading.Thread.InitializeCurrentThread()
M06_L01:
       mov       [rbp-10],rax
       mov       rdx,[rax+8]
       mov       [rbp-18],rdx
       mov       rax,[rax+10]
       mov       [rbp-20],rax
       mov       rcx,rbx
       call      qword ptr [7FF8D4047630]; CensoredPi.PiCensorship+<InPlaceWriteCensoredDigitsOfPiAsUtf8BytesAsync>d__1.MoveNext()
       nop
       mov       rax,[rbp-20]
       mov       rcx,[rbp-10]
       cmp       rax,[rcx+10]
       jne       short M06_L05
M06_L02:
       mov       r8,[rcx+8]
       mov       rdx,[rbp-18]
       cmp       rdx,r8
       je        short M06_L03
       call      qword ptr [7FF8D40455C0]
M06_L03:
       nop
       add       rsp,48
       pop       rbx
       pop       rbp
       ret
M06_L04:
       mov       ecx,2
       call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_NOCTOR_OPTIMIZED
       jmp       short M06_L00
M06_L05:
       lea       rcx,[rcx+10]
       mov       rdx,rax
       call      CORINFO_HELP_ASSIGN_REF
       mov       rcx,[rbp-10]
       jmp       short M06_L02
       push      rbp
       push      rbx
       sub       rsp,28
       mov       rbp,[rcx+20]
       mov       [rsp+20],rbp
       lea       rbp,[rbp+50]
       mov       rdx,[rbp-20]
       mov       rcx,[rbp-10]
       cmp       rdx,[rcx+10]
       je        short M06_L06
       lea       rcx,[rcx+10]
       call      CORINFO_HELP_ASSIGN_REF
       mov       rcx,[rbp-10]
M06_L06:
       mov       r8,[rcx+8]
       mov       rdx,[rbp-18]
       cmp       rdx,r8
       je        short M06_L07
       call      qword ptr [7FF8D40455C0]
M06_L07:
       nop
       add       rsp,28
       pop       rbx
       pop       rbp
       ret
; Total bytes of code 254
; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       mov       rax,rdx
       test      rax,rax
       je        short M07_L00
       cmp       [rax],rcx
       jne       short M07_L01
M07_L00:
       ret
M07_L01:
       mov       rdx,[rax]
       mov       rdx,[rdx+10]
M07_L02:
       cmp       rdx,rcx
       je        short M07_L04
       test      rdx,rdx
       je        short M07_L03
       mov       rdx,[rdx+10]
       cmp       rdx,rcx
       je        short M07_L04
       test      rdx,rdx
       je        short M07_L03
       mov       rdx,[rdx+10]
       cmp       rdx,rcx
       je        short M07_L04
       test      rdx,rdx
       je        short M07_L03
       mov       rdx,[rdx+10]
       cmp       rdx,rcx
       je        short M07_L04
       test      rdx,rdx
       je        short M07_L03
       mov       rdx,[rdx+10]
       jmp       short M07_L02
M07_L03:
       xor       eax,eax
M07_L04:
       ret
; Total bytes of code 82
; CensoredPi.PiCensorship+<InPlaceWriteCensoredDigitsOfPiAsUtf8BytesAsync>d__1.MoveNext()
       push      rbp
       push      r15
       push      r14
       push      r13
       push      r12
       push      rdi
       push      rsi
       push      rbx
       sub       rsp,0F8
       vzeroupper
       lea       rbp,[rsp+130]
       vxorps    xmm4,xmm4,xmm4
       mov       rax,0FFFFFFFFFFFFFF70
M08_L00:
       vmovdqa   xmmword ptr [rbp+rax-40],xmm4
       vmovdqa   xmmword ptr [rbp+rax-30],xmm4
       vmovdqa   xmmword ptr [rbp+rax-20],xmm4
       add       rax,30
       jne       short M08_L00
       mov       [rbp-100],rsp
       mov       [rbp+10],rcx
       mov       rbx,rcx
       mov       ecx,[rbx+18]
       mov       [rbp-3C],ecx
       cmp       dword ptr [rbp-3C],0
       je        near ptr M08_L15
       cmp       dword ptr [rbp-3C],1
       je        near ptr M08_L31
       mov       rcx,[rbx]
       mov       rax,[rbx+8]
       test      rax,rax
       je        near ptr M08_L28
       mov       edx,[rax+8]
       mov       r8d,edx
       xor       r10d,r10d
       mov       r9d,2
       cmp       r9d,r8d
       ja        near ptr M08_L29
       cmp       r10d,r9d
       ja        near ptr M08_L29
       sub       r9d,r10d
       mov       r8d,r10d
       mov       r11d,r9d
       add       r8,r11
       cmp       r8,rdx
       ja        near ptr M08_L30
       lea       rsi,[rbp-60]
       mov       r8,[rbx+38]
       mov       rdx,r8
       mov       [rbp-0F0],rdx
       mov       r8,offset MT_System.IO.Stream+NullStream
       cmp       [rcx],r8
       jne       short M08_L05
       nop       dword ptr [rax]
       test      rdx,rdx
       je        short M08_L01
       cmp       dword ptr [rdx+20],0
       jne       short M08_L04
M08_L01:
       vxorps    xmm0,xmm0,xmm0
       vmovdqu   xmmword ptr [rbp-70],xmm0
M08_L02:
       mov       rdx,[rbp-70]
       mov       rcx,rsi
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       movsx     rdx,word ptr [rbp-68]
       mov       [rsi+8],dx
       movzx     edx,byte ptr [rbp-66]
       mov       [rsi+0A],dl
M08_L03:
       vmovdqu   xmm0,xmmword ptr [rbp-60]
       vmovdqu   xmmword ptr [rbp-50],xmm0
       mov       rsi,[rbp-50]
       test      rsi,rsi
       je        near ptr M08_L08
       mov       rdx,rsi
       mov       rcx,offset MT_System.Threading.Tasks.Task
       call      qword ptr [7FF8D3BD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       test      rax,rax
       jne       near ptr M08_L14
       jmp       short M08_L06
M08_L04:
       lea       rcx,[rbp-70]
       call      qword ptr [7FF8D4047300]
       jmp       short M08_L02
       nop       word ptr [rax+rax]
M08_L05:
       mov       [rbp-0D0],rax
       mov       [rbp-0C8],r10d
       mov       [rbp-0C4],r9d
       mov       rdx,rsi
       lea       r8,[rbp-0D0]
       mov       r9,[rbp-0F0]
       mov       rax,[rcx]
       mov       rax,[rax+60]
       call      qword ptr [rax]
       jmp       short M08_L03
       nop       dword ptr [rax]
M08_L06:
       mov       rcx,rsi
       mov       rdx,offset MT_System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1+StateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[System.Threading.AsyncOverSyncWithIoCancellation+<InvokeAsync>d__7`1[[System.ValueTuple`4[[Microsoft.Win32.SafeHandles.SafeFileHandle, System.Private.CoreLib],[System.ReadOnlyMemory`1[[System.Byte, System.Private.CoreLib]], System.Private.CoreLib],[System.Int64, System.Private.CoreLib],[System.IO.Strategies.OSFileStreamStrategy, System.Private.CoreLib]], System.Private.CoreLib]], System.Private.CoreLib]]
       cmp       [rcx],rdx
       je        near ptr M08_L13
       movsx     rdx,word ptr [rbp-48]
       mov       r11,7FF8D3A90528
       call      qword ptr [r11]
M08_L07:
       test      eax,eax
       je        near ptr M08_L63
M08_L08:
       mov       rsi,[rbp-50]
       test      rsi,rsi
       jne       near ptr M08_L10
M08_L09:
       mov       rdx,[rbx+8]
       test      rdx,rdx
       je        near ptr M08_L28
       mov       ecx,[rdx+8]
       mov       esi,2
       mov       edi,ecx
       cmp       edi,ecx
       ja        near ptr M08_L29
       cmp       esi,edi
       ja        near ptr M08_L29
       sub       edi,esi
       mov       ecx,esi
       mov       eax,edi
       add       rcx,rax
       mov       eax,[rdx+8]
       cmp       rcx,rax
       ja        near ptr M08_L30
       lea       rcx,[rbx+40]
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       mov       [rbx+48],esi
       mov       [rbx+4C],edi
       xor       ecx,ecx
       mov       [rbx+1C],ecx
       mov       byte ptr [rbx+20],30
       mov       rcx,235F8801E80
       mov       r14,[rcx]
       mov       rcx,235F88005D0
       mov       r15,[rcx]
       mov       rcx,7FF8D3B15120
       mov       edx,34
       call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_DYNAMICCLASS
       mov       rcx,[rax]
       test      rcx,rcx
       je        near ptr M08_L16
       mov       eax,[rcx+8]
       cmp       eax,8
       jbe       near ptr M08_L16
       mov       r13,[rcx+90]
       test      r13,r13
       je        near ptr M08_L16
       xor       eax,eax
       mov       [rcx+90],rax
       cmp       byte ptr [r15+9D],0
       je        short M08_L11
       mov       rcx,r13
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       esi,eax
       mov       edi,[r13+8]
       mov       rcx,r14
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       r9d,eax
       mov       dword ptr [rsp+20],8
       mov       edx,esi
       mov       r8d,edi
       mov       rcx,r15
       call      qword ptr [7FF8D3E6EB80]
       jmp       short M08_L11
M08_L10:
       mov       rdx,rsi
       mov       rcx,offset MT_System.Threading.Tasks.Task
       call      qword ptr [7FF8D3BD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       test      rax,rax
       jne       short M08_L12
       mov       rcx,rsi
       movsx     rdx,word ptr [rbp-48]
       mov       r11,7FF8D3A90530
       call      qword ptr [r11]
       jmp       near ptr M08_L09
M08_L11:
       mov       rdx,r13
       lea       rcx,[rbx+10]
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       mov       rdx,[rbx+10]
       test      rdx,rdx
       je        near ptr M08_L28
       mov       ecx,[rdx+8]
       mov       eax,ecx
       xor       esi,esi
       mov       edi,1000
       cmp       edi,eax
       ja        near ptr M08_L29
       cmp       esi,edi
       ja        near ptr M08_L29
       sub       edi,esi
       mov       eax,esi
       mov       r8d,edi
       add       rax,r8
       cmp       rax,rcx
       ja        near ptr M08_L30
       lea       rcx,[rbx+50]
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       mov       [rbx+58],esi
       mov       [rbx+5C],edi
       jmp       near ptr M08_L31
M08_L12:
       mov       ecx,[rax+34]
       and       ecx,11000000
       cmp       ecx,1000000
       je        near ptr M08_L09
       mov       rcx,rax
       xor       edx,edx
       call      qword ptr [7FF8D40448E8]
       jmp       near ptr M08_L09
M08_L13:
       movsx     rdx,word ptr [rbp-48]
       add       rcx,18
       call      qword ptr [7FF8D404D380]
       jmp       near ptr M08_L07
M08_L14:
       test      dword ptr [rax+34],1600000
       jne       near ptr M08_L08
       jmp       near ptr M08_L63
M08_L15:
       vmovdqu   xmm0,xmmword ptr [rbx+60]
       vmovdqu   xmmword ptr [rbp-50],xmm0
       xor       eax,eax
       mov       [rbx+60],rax
       mov       [rbx+68],rax
       mov       dword ptr [rbp-3C],0FFFFFFFF
       mov       dword ptr [rbx+18],0FFFFFFFF
       jmp       near ptr M08_L08
M08_L16:
       mov       rax,[r14+10]
       cmp       dword ptr [rax+8],8
       jbe       near ptr M08_L24
       mov       rax,[rax+50]
       test      rax,rax
       je        near ptr M08_L25
       mov       rsi,[rax+8]
       call      qword ptr [7FF8D3BDDC98]; System.Threading.Thread.GetCurrentProcessorNumber()
       mov       [rbp-0F4],eax
       mov       rcx,7FF8D3B15120
       mov       edx,2CF
       call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
       mov       eax,[rbp-0F4]
       xor       edx,edx
       div       dword ptr [7FF8D3B15C2C]
       mov       edi,edx
       xor       r12d,r12d
       jmp       short M08_L22
M08_L17:
       cmp       edi,[rsi+8]
       jae       short M08_L19
       mov       ecx,edi
       mov       r13,[rsi+rcx*8+10]
       cmp       [r13],r13b
       xor       eax,eax
       mov       [rbp-0D8],rax
       mov       rcx,r13
       call      System.Threading.Monitor.Enter(System.Object)
       mov       rcx,[r13+8]
       mov       eax,[r13+10]
       dec       eax
       cmp       [rcx+8],eax
       jbe       short M08_L18
       mov       edx,eax
       mov       rdx,[rcx+rdx*8+10]
       mov       [rbp-0D8],rdx
       mov       r8d,eax
       xor       r10d,r10d
       mov       [rcx+r8*8+10],r10
       mov       [r13+10],eax
M08_L18:
       mov       rcx,r13
       call      System.Threading.Monitor.Exit(System.Object)
       mov       r13,[rbp-0D8]
       test      r13,r13
       je        short M08_L20
       jmp       short M08_L23
M08_L19:
       call      CORINFO_HELP_RNGCHKFAIL
M08_L20:
       inc       edi
       cmp       [rsi+8],edi
       jne       short M08_L21
       xor       edi,edi
M08_L21:
       inc       r12d
M08_L22:
       cmp       [rsi+8],r12d
       jg        short M08_L17
       xor       r13d,r13d
M08_L23:
       test      r13,r13
       je        short M08_L25
       cmp       byte ptr [r15+9D],0
       je        near ptr M08_L11
       mov       rcx,r13
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       esi,eax
       mov       edi,[r13+8]
       mov       rcx,r14
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       r9d,eax
       mov       dword ptr [rsp+20],8
       mov       edx,esi
       mov       r8d,edi
       mov       rcx,r15
       call      qword ptr [7FF8D3E6EB80]
       jmp       near ptr M08_L11
M08_L24:
       mov       ecx,1000
       mov       rdx,23580207320
       call      qword ptr [7FF8D3F5D8C0]; System.ArgumentOutOfRangeException.ThrowIfNegative[[System.Int32, System.Private.CoreLib]](Int32, System.String)
M08_L25:
       mov       edx,1000
       mov       rcx,offset MT_System.Byte[]
       mov       r8d,10
       call      System.GC.AllocateNewArray(IntPtr, Int32, GC_ALLOC_FLAGS)
       mov       r13,rax
       cmp       byte ptr [r15+9D],0
       je        near ptr M08_L11
       cmp       [r13],r13b
       mov       rcx,r13
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       esi,eax
       mov       edi,[r13+8]
       mov       rcx,r14
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       r9d,eax
       mov       dword ptr [rsp+20],0FFFFFFFF
       mov       edx,esi
       mov       r8d,edi
       mov       rcx,r15
       call      qword ptr [7FF8D3E6EB80]
       mov       edi,[r13+8]
       mov       rcx,r14
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       rcx,r15
       mov       edx,esi
       mov       r8d,edi
       mov       r9d,eax
       mov       rax,[r14+10]
       cmp       dword ptr [rax+8],8
       jle       short M08_L26
       mov       eax,2
       jmp       short M08_L27
M08_L26:
       mov       eax,1
M08_L27:
       mov       dword ptr [rsp+20],0FFFFFFFF
       mov       [rsp+28],eax
       call      qword ptr [7FF8D3E6EB98]
       jmp       near ptr M08_L11
M08_L28:
       mov       ecx,2
       call      qword ptr [7FF8D3E65AE8]
       int       3
M08_L29:
       call      qword ptr [7FF8D4047A08]
       int       3
M08_L30:
       call      qword ptr [7FF8D3E657B8]
       int       3
M08_L31:
       cmp       dword ptr [rbp-3C],1
       je        near ptr M08_L61
       jmp       near ptr M08_L46
M08_L32:
       mov       r12d,[rbx+4C]
       cmp       r12d,1000
       jle       near ptr M08_L44
       mov       esi,1000
M08_L33:
       lea       rcx,[rbx+40]
       cmp       esi,[rcx+0C]
       ja        near ptr M08_L43
       mov       rdx,[rcx]
       mov       edi,[rcx+8]
       mov       r12,[rbx+50]
       mov       r14d,[rbx+58]
       mov       r13d,[rbx+5C]
       xor       ecx,ecx
       xor       r15d,r15d
       mov       [rbp-0E0],rdx
       test      rdx,rdx
       je        short M08_L35
       mov       rcx,[rdx]
       test      dword ptr [rcx],80000000
       je        near ptr M08_L57
       lea       rcx,[rdx+10]
       mov       r15d,[rdx+8]
M08_L34:
       and       edi,7FFFFFFF
       mov       edx,edi
       mov       r8d,esi
       add       r8,rdx
       mov       eax,r15d
       cmp       r8,rax
       ja        near ptr M08_L43
       add       rcx,rdx
       mov       r15d,esi
M08_L35:
       mov       rdi,rcx
       xor       ecx,ecx
       xor       eax,eax
       test      r12,r12
       je        short M08_L37
       mov       rcx,[r12]
       test      dword ptr [rcx],80000000
       je        near ptr M08_L58
       lea       rcx,[r12+10]
       mov       eax,[r12+8]
M08_L36:
       and       r14d,7FFFFFFF
       mov       edx,r14d
       mov       r8d,r13d
       add       r8,rdx
       mov       eax,eax
       cmp       r8,rax
       ja        near ptr M08_L43
       add       rcx,rdx
       mov       eax,r13d
M08_L37:
       cmp       r15d,eax
       ja        near ptr M08_L59
       mov       r8d,r15d
       mov       rdx,rdi
       call      qword ptr [7FF8D3C85B78]; System.Buffer.Memmove(Byte ByRef, Byte ByRef, UIntPtr)
       lea       rcx,[rbx+40]
       mov       edx,esi
       mov       eax,[rcx+0C]
       mov       edi,eax
       sub       edi,edx
       mov       r8d,edi
       add       rdx,r8
       cmp       rdx,rax
       ja        near ptr M08_L43
       mov       rdx,[rcx]
       mov       r12d,esi
       add       r12d,[rcx+8]
       lea       rcx,[rbx+40]
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       mov       [rbx+48],r12d
       mov       [rbx+4C],edi
       mov       r14d,[rbx+1C]
       lea       rcx,[rbx+50]
       cmp       esi,[rcx+0C]
       ja        near ptr M08_L43
       mov       rdx,[rcx]
       mov       edi,[rcx+8]
       xor       r13d,r13d
       xor       r12d,r12d
       mov       rcx,rdx
       test      rcx,rcx
       je        short M08_L39
       mov       rdx,[rcx]
       test      dword ptr [rdx],80000000
       je        near ptr M08_L60
       lea       r13,[rcx+10]
       mov       r12d,[rcx+8]
M08_L38:
       mov       ecx,edi
       and       ecx,7FFFFFFF
       mov       edx,esi
       add       rdx,rcx
       mov       eax,r12d
       cmp       rdx,rax
       ja        near ptr M08_L43
       add       r13,rcx
       mov       r12d,esi
M08_L39:
       mov       rcx,r13
       lea       rdx,[rbx+20]
       xor       eax,eax
       xor       r8d,r8d
       test      r12d,r12d
       jle       short M08_L42
M08_L40:
       mov       r10d,r8d
       add       r10,rcx
       movzx     r9d,byte ptr [r10]
       movzx     r11d,byte ptr [rdx]
       cmp       r9d,r11d
       setl      r11b
       movzx     r11d,r11b
       mov       [rdx],r9b
       test      r11d,r11d
       je        short M08_L41
       inc       eax
       mov       byte ptr [r10],2A
M08_L41:
       inc       r8d
       cmp       r8d,r12d
       jl        short M08_L40
M08_L42:
       add       r14d,eax
       mov       [rbx+1C],r14d
       mov       rcx,[rbx]
       lea       rdx,[rbx+50]
       cmp       esi,[rdx+0C]
       ja        short M08_L43
       mov       rax,[rdx]
       mov       r8d,[rdx+8]
       lea       r14,[rbp-60]
       mov       r9,[rbx+38]
       mov       rdx,offset MT_System.IO.Stream+NullStream
       cmp       [rcx],rdx
       jne       near ptr M08_L54
       test      r9,r9
       je        short M08_L47
       cmp       dword ptr [r9+20],0
       jne       near ptr M08_L56
       jmp       short M08_L47
M08_L43:
       call      qword ptr [7FF8D3E657B8]
       int       3
M08_L44:
       mov       esi,r12d
       jmp       near ptr M08_L33
M08_L45:
       mov       rcx,rsi
       movsx     rdx,word ptr [rbp-48]
       mov       r11,7FF8D3A90540
       call      qword ptr [r11]
M08_L46:
       cmp       dword ptr [rbx+4C],0
       jne       near ptr M08_L32
       jmp       near ptr M08_L64
M08_L47:
       vxorps    xmm0,xmm0,xmm0
       vmovdqu   xmmword ptr [rbp-0B0],xmm0
M08_L48:
       mov       rdx,[rbp-0B0]
       mov       rcx,r14
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       movsx     rdx,word ptr [rbp-0A8]
       mov       [r14+8],dx
       movzx     edx,byte ptr [rbp-0A6]
       mov       [r14+0A],dl
M08_L49:
       vmovdqu   xmm0,xmmword ptr [rbp-60]
       vmovdqu   xmmword ptr [rbp-50],xmm0
       mov       rsi,[rbp-50]
       test      rsi,rsi
       je        short M08_L51
       mov       rdx,rsi
       mov       rcx,offset MT_System.Threading.Tasks.Task
       call      qword ptr [7FF8D3BD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       test      rax,rax
       jne       near ptr M08_L53
       mov       rcx,rsi
       mov       rdx,offset MT_System.Runtime.CompilerServices.PoolingAsyncValueTaskMethodBuilder`1+StateMachineBox`1[[System.Threading.Tasks.VoidTaskResult, System.Private.CoreLib],[System.Threading.AsyncOverSyncWithIoCancellation+<InvokeAsync>d__7`1[[System.ValueTuple`4[[Microsoft.Win32.SafeHandles.SafeFileHandle, System.Private.CoreLib],[System.ReadOnlyMemory`1[[System.Byte, System.Private.CoreLib]], System.Private.CoreLib],[System.Int64, System.Private.CoreLib],[System.IO.Strategies.OSFileStreamStrategy, System.Private.CoreLib]], System.Private.CoreLib]], System.Private.CoreLib]]
       cmp       [rcx],rdx
       je        short M08_L52
       movsx     rdx,word ptr [rbp-48]
       mov       r11,7FF8D3A90538
       call      qword ptr [r11]
M08_L50:
       test      eax,eax
       je        near ptr M08_L55
M08_L51:
       mov       rsi,[rbp-50]
       test      rsi,rsi
       je        near ptr M08_L46
       mov       rdx,rsi
       mov       rcx,offset MT_System.Threading.Tasks.Task
       call      qword ptr [7FF8D3BD4360]; System.Runtime.CompilerServices.CastHelpers.IsInstanceOfClass(Void*, System.Object)
       test      rax,rax
       je        near ptr M08_L45
       mov       ecx,[rax+34]
       and       ecx,11000000
       cmp       ecx,1000000
       je        near ptr M08_L46
       mov       rcx,rax
       xor       edx,edx
       call      qword ptr [7FF8D40448E8]
       jmp       near ptr M08_L46
M08_L52:
       movsx     rdx,word ptr [rbp-48]
       add       rcx,18
       call      qword ptr [7FF8D404D380]
       jmp       short M08_L50
M08_L53:
       test      dword ptr [rax+34],1600000
       jne       short M08_L51
       jmp       short M08_L55
M08_L54:
       mov       [rbp-0D0],rax
       mov       [rbp-0C8],r8d
       mov       [rbp-0C4],esi
       mov       rdx,r14
       lea       r8,[rbp-0D0]
       mov       rax,[rcx]
       mov       rax,[rax+60]
       call      qword ptr [rax]
       jmp       near ptr M08_L49
M08_L55:
       mov       dword ptr [rbp-3C],1
       mov       dword ptr [rbx+18],1
       lea       rdi,[rbx+60]
       lea       rsi,[rbp-50]
       call      CORINFO_HELP_ASSIGN_BYREF
       movsq
       lea       rdx,[rbx+28]
       mov       rcx,rbx
       call      qword ptr [7FF8D4096A30]
       mov       rdx,rax
       lea       rcx,[rbp-50]
       call      qword ptr [7FF8D4096A48]
       jmp       near ptr M08_L62
M08_L56:
       lea       rcx,[rbp-0B0]
       mov       rdx,r9
       call      qword ptr [7FF8D4047300]
       jmp       near ptr M08_L48
M08_L57:
       lea       rdx,[rbp-80]
       mov       rcx,[rbp-0E0]
       mov       rax,[rcx]
       mov       rax,[rax+40]
       call      qword ptr [rax+28]
       mov       rcx,[rbp-80]
       mov       r15d,[rbp-78]
       jmp       near ptr M08_L34
M08_L58:
       lea       rdx,[rbp-90]
       mov       rcx,r12
       mov       rax,[r12]
       mov       rax,[rax+40]
       call      qword ptr [rax+28]
       mov       rcx,[rbp-90]
       mov       eax,[rbp-88]
       jmp       near ptr M08_L36
M08_L59:
       call      qword ptr [7FF8D3E657D0]
       int       3
M08_L60:
       lea       rdx,[rbp-0A0]
       mov       rax,[rcx]
       mov       rax,[rax+40]
       call      qword ptr [rax+28]
       mov       r13,[rbp-0A0]
       mov       r12d,[rbp-98]
       jmp       near ptr M08_L38
M08_L61:
       vmovdqu   xmm0,xmmword ptr [rbx+60]
       vmovdqu   xmmword ptr [rbp-50],xmm0
       xor       ecx,ecx
       mov       [rbx+60],rcx
       mov       [rbx+68],rcx
       mov       dword ptr [rbp-3C],0FFFFFFFF
       mov       dword ptr [rbx+18],0FFFFFFFF
       jmp       near ptr M08_L51
M08_L62:
       mov       rcx,rsp
       call      M08_L67
       jmp       short M08_L65
M08_L63:
       xor       eax,eax
       mov       [rbx+18],eax
       lea       rdi,[rbx+60]
       lea       rsi,[rbp-50]
       call      CORINFO_HELP_ASSIGN_BYREF
       movsq
       lea       rdx,[rbx+28]
       mov       rcx,rbx
       call      qword ptr [7FF8D4096A30]
       mov       rdx,rax
       lea       rcx,[rbp-50]
       call      qword ptr [7FF8D4096A48]
       jmp       short M08_L65
M08_L64:
       mov       rcx,rsp
       call      M08_L67
       nop
       mov       rcx,[rbp+10]
       mov       edx,[rcx+1C]
       mov       dword ptr [rcx+18],0FFFFFFFE
       xor       eax,eax
       mov       [rcx+40],rax
       mov       [rcx+48],rax
       mov       [rcx+10],rax
       mov       [rcx+50],rax
       mov       [rcx+58],rax
       add       rcx,28
       cmp       qword ptr [rcx],0
       jne       short M08_L66
       mov       [rcx+8],edx
       mov       rdx,235F8801E88
       mov       rdx,[rdx]
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
M08_L65:
       nop
       add       rsp,0F8
       pop       rbx
       pop       rsi
       pop       rdi
       pop       r12
       pop       r13
       pop       r14
       pop       r15
       pop       rbp
       ret
M08_L66:
       mov       rcx,[rcx]
       call      qword ptr [7FF8D40952C0]
       jmp       short M08_L65
M08_L67:
       push      rbp
       push      r15
       push      r14
       push      r13
       push      r12
       push      rdi
       push      rsi
       push      rbx
       sub       rsp,38
       vzeroupper
       mov       rbp,[rcx+30]
       mov       [rsp+30],rbp
       lea       rbp,[rbp+130]
       cmp       dword ptr [rbp-3C],0
       jge       near ptr M08_L86
       mov       rcx,235F8801E80
       mov       rbx,[rcx]
       mov       rcx,[rbp+10]
       mov       r12,[rcx+10]
       test      r12,r12
       jne       short M08_L68
       mov       ecx,2
       call      qword ptr [7FF8D3E65AE8]
       int       3
M08_L68:
       mov       edx,[r12+8]
       dec       edx
       or        edx,0F
       xor       esi,esi
       lzcnt     esi,edx
       xor       esi,1F
       add       esi,0FFFFFFFD
       mov       rcx,7FF8D3B15120
       mov       edx,34
       call      CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE_DYNAMICCLASS
       mov       rcx,[rax]
       test      rcx,rcx
       jne       short M08_L69
       mov       rcx,rbx
       call      qword ptr [7FF8D404D680]; System.Buffers.SharedArrayPool`1[[System.Byte, System.Private.CoreLib]].InitializeTlsBucketsAndTrimming()
       mov       rcx,rax
M08_L69:
       xor       r14d,r14d
       mov       r13d,1
       cmp       [rcx+8],esi
       jbe       near ptr M08_L81
       mov       r14d,1
       mov       edx,10
       shlx      edx,edx,esi
       cmp       [r12+8],edx
       je        short M08_L70
       mov       rcx,offset MT_System.ArgumentException
       call      CORINFO_HELP_NEWSFAST
       mov       rbx,rax
       call      qword ptr [7FF8D407CAE0]
       mov       rsi,rax
       mov       ecx,1D3
       mov       rdx,7FF8D3A84000
       call      CORINFO_HELP_STRCNS
       mov       r8,rax
       mov       rdx,rsi
       mov       rcx,rbx
       call      qword ptr [7FF8D3BDF750]
       mov       rcx,rbx
       call      CORINFO_HELP_THROW
M08_L70:
       mov       edx,esi
       shl       rdx,4
       lea       rdi,[rcx+rdx+10]
       mov       r15,[rdi]
       mov       rcx,rdi
       mov       rdx,r12
       call      CORINFO_HELP_CHECKED_ASSIGN_REF
       xor       ecx,ecx
       mov       [rdi+8],ecx
       test      r15,r15
       je        near ptr M08_L81
       mov       rcx,[rbx+10]
       cmp       esi,[rcx+8]
       jae       short M08_L72
       mov       edx,esi
       mov       rax,[rcx+rdx*8+10]
       test      rax,rax
       jne       short M08_L71
       mov       rcx,rbx
       mov       edx,esi
       call      qword ptr [7FF8D404D608]
M08_L71:
       mov       rdi,[rax+8]
       call      qword ptr [7FF8D3BDDC98]; System.Threading.Thread.GetCurrentProcessorNumber()
       mov       [rbp-0F4],eax
       mov       rcx,7FF8D3B15120
       mov       edx,2CF
       call      CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
       mov       eax,[rbp-0F4]
       xor       edx,edx
       div       dword ptr [7FF8D3B15C2C]
       mov       r13d,edx
       xor       eax,eax
       jmp       near ptr M08_L79
M08_L72:
       call      CORINFO_HELP_RNGCHKFAIL
M08_L73:
       cmp       r13d,[rdi+8]
       jae       short M08_L72
       mov       ecx,r13d
       mov       rdx,[rdi+rcx*8+10]
       mov       [rbp-0E8],rdx
       cmp       [rdx],dl
       xor       r8d,r8d
       mov       [rbp-0BC],r8d
       mov       rcx,rdx
       call      System.Threading.Monitor.Enter(System.Object)
       mov       rax,[rbp-0E8]
       mov       rcx,[rax+8]
       mov       r10d,[rax+10]
       mov       [rbp-0C0],r10d
       cmp       [rcx+8],r10d
       jbe       short M08_L75
       test      r10d,r10d
       jne       short M08_L76
       xor       edx,edx
       mov       [rax+14],edx
M08_L74:
       movsxd    rdx,r10d
       mov       r8,r15
       call      CORINFO_HELP_ARRADDR_ST
       mov       ecx,[rbp-0C0]
       inc       ecx
       mov       rax,[rbp-0E8]
       mov       [rax+10],ecx
       mov       dword ptr [rbp-0BC],1
M08_L75:
       mov       rcx,rax
       call      System.Threading.Monitor.Exit(System.Object)
       mov       ecx,[rbp-0BC]
       test      ecx,ecx
       je        short M08_L77
       mov       ecx,1
       jmp       short M08_L80
M08_L76:
       jmp       short M08_L74
M08_L77:
       inc       r13d
       cmp       [rdi+8],r13d
       jne       short M08_L78
       xor       r13d,r13d
M08_L78:
       mov       eax,[rbp-0B8]
       inc       eax
M08_L79:
       mov       [rbp-0B8],eax
       cmp       [rdi+8],eax
       jg        near ptr M08_L73
       xor       ecx,ecx
M08_L80:
       mov       r13d,ecx
M08_L81:
       mov       rcx,235F88005D0
       mov       rdi,[rcx]
       cmp       byte ptr [rdi+9D],0
       je        near ptr M08_L86
       cmp       dword ptr [r12+8],0
       je        near ptr M08_L86
       mov       rcx,r12
       mov       rax,[r12]
       mov       rax,[rax+40]
       call      qword ptr [rax+18]
       mov       r15d,eax
       mov       eax,[r12+8]
       mov       [rbp-0B4],eax
       mov       rcx,rbx
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       mov       [rsp+20],eax
       mov       rcx,rdi
       mov       r8d,r15d
       mov       r9d,[rbp-0B4]
       mov       edx,3
       call      qword ptr [7FF8D3C87678]
       test      r13d,r14d
       jne       short M08_L86
       mov       rcx,r12
       mov       rax,[r12]
       mov       rax,[rax+40]
       call      qword ptr [rax+18]
       mov       r15d,eax
       mov       r13d,[r12+8]
       mov       rcx,rbx
       call      System.Runtime.CompilerServices.RuntimeHelpers.GetHashCode(System.Object)
       test      r14d,r14d
       jne       short M08_L82
       mov       ecx,0FFFFFFFF
       jmp       short M08_L83
M08_L82:
       mov       ecx,esi
M08_L83:
       mov       edx,r15d
       mov       r8d,r13d
       mov       r9d,eax
       test      r14d,r14d
       jne       short M08_L84
       mov       eax,1
       jmp       short M08_L85
M08_L84:
       xor       eax,eax
M08_L85:
       mov       [rsp+20],ecx
       mov       [rsp+28],eax
       mov       rcx,rdi
       call      qword ptr [7FF8D3E6EBF8]
M08_L86:
       nop
       add       rsp,38
       pop       rbx
       pop       rsi
       pop       rdi
       pop       r12
       pop       r13
       pop       r14
       pop       r15
       pop       rbp
       ret
       push      rbp
       push      r15
       push      r14
       push      r13
       push      r12
       push      rdi
       push      rsi
       push      rbx
       sub       rsp,38
       vzeroupper
       mov       rbp,[rcx+30]
       mov       [rsp+30],rbp
       lea       rbp,[rbp+130]
       mov       rbx,[rbp+10]
       mov       dword ptr [rbx+18],0FFFFFFFE
       xor       ecx,ecx
       mov       [rbx+40],rcx
       mov       [rbx+48],rcx
       mov       [rbx+10],rcx
       mov       [rbx+50],rcx
       mov       [rbx+58],rcx
       lea       rcx,[rbx+28]
       call      qword ptr [7FF8D4046CE8]
       lea       rax,[M08_L65]
       add       rsp,38
       pop       rbx
       pop       rsi
       pop       rdi
       pop       r12
       pop       r13
       pop       r14
       pop       r15
       pop       rbp
       ret
; Total bytes of code 3575
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment