Function at 0x140063f90
Capabilities:
Get system information on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x3b8
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x320], xmm6
and rsp, 0xffffffffffffff80
mov qword [rsp + 0x60], rcx
mov r14, qword [rdx + 0x10]
test r14, r14
mov qword [rsp + 0x38], rdx
jne 0x140064307
lea rdx, str.RAYON_NUM_THREADSRAYON_RS_NUM_CPUSThe_global_thread_pool_has_already_been_initialized.The_current_thread_is_already_part_of_another_thread_pool._b
lea rcx, [rsp + 0x180]
mov r8d, 0x11
call fcn.14007ad00
movzx eax, byte [rsp + 0x198]
cmp al, 2
je 0x1400641b1
mov r8, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x188]
mov r9, qword [rsp + 0x190]
test al, al
jne 0x1400640ac
test r9, r9
je 0x1400640ba
lea rdx, [r8 + r9]
mov r11, r8
jmp 0x140064048
add r11, 2
cmp r10, rdx
cmovne r10, r11
nop word cs:[rax + rax]
mov r11, r10
cmp r10, rdx
je 0x1400640ac
lea r10, [r11 + 1]
movzx ebx, byte [r11]
test bl, bl
jns 0x140064040
cmp bl, 0xe0
jb 0x140064029
cmp bl, 0xed
jne 0x140064080
cmp r10, rdx
je 0x1400640ac
lea r10, [r11 + 2]
cmp r10, rdx
je 0x1400640ac
cmp byte [r11 + 1], 0x9f
ja 0x140064199
add r11, 3
mov r10, r11
jmp 0x140064040
add r11, 2
cmp r10, rdx
cmove r11, r10
xor r10d, r10d
cmp r11, rdx
setne r10b
add r10, r11
cmp bl, 0xf0
jb 0x140064040
xor r11d, r11d
cmp r10, rdx
setne r11b
add r10, r11
jmp 0x140064040
test r8, r8
je 0x1400641b1
test r9, r9
jne 0x1400640ec
xor esi, esi
test rcx, rcx
je 0x1400640d0
mov rcx, qword [0x1400f0220]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
test sil, sil
je 0x1400641b1
test r14, r14
mov rdx, qword [rsp + 0x38]
je 0x1400642ca
jmp 0x140064307
movzx eax, byte [r8]
cmp eax, 0x2d
je 0x140064105
cmp eax, 0x2b
jne 0x140064110
dec r9
je 0x1400640ba
lea r10, [r8 + 1]
jmp 0x140064113
mov r10, r8
cmp r9, 1
je 0x1400640ba
jmp 0x140064113
mov r10, r8
cmp r9, 0x11
jae 0x14006414d
xor eax, eax
xor r14d, r14d
nop
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x1400640ba
lea r11, [r14 + r14*4]
mov edx, edx
lea r14, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x140064120
mov sil, 1
test rcx, rcx
jne 0x1400640c1
jmp 0x1400640d0
xor r11d, r11d
mov esi, 0xa
xor r14d, r14d
nop dword [rax + rax]
cmp r9, r11
je 0x14006413f
movzx edi, byte [r10 + r11]
mov rax, r14
mul rsi
seto dl
add edi, 0xffffffd0
cmp edi, 9
ja 0x1400640ba
test dl, dl
jne 0x1400640ba
mov r14, rax
mov eax, edi
inc r11
add r14, rax
jae 0x140064160
jmp 0x1400640ba
cmp al, 2
je 0x1400641b1
test rcx, rcx
je 0x1400641b1
mov rcx, qword [0x1400f0220]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
lea rdx, [0x1400da701]
lea rcx, [rsp + 0x180]
mov r8d, 0x11
call fcn.14007ad00
movzx eax, byte [rsp + 0x198]
cmp al, 2
je 0x1400642ca
mov r8, qword [rsp + 0x180]
mov rcx, qword [rsp + 0x188]
mov r9, qword [rsp + 0x190]
test al, al
jne 0x1400642bc
test r9, r9
jne 0x140064234
xor esi, esi
mov rdx, qword [rsp + 0x38]
test rcx, rcx
je 0x140064220
mov rcx, qword [0x1400f0220]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdx, qword [rsp + 0x38]
test r14, r14
setne al
test sil, al
je 0x1400642ca
jmp 0x140064307
lea rdx, [r8 + r9]
mov r11, r8
jmp 0x140064258
add r11, 2
cmp r10, rdx
cmovne r10, r11
nop dword [rax + rax]
mov r11, r10
cmp r10, rdx
je 0x1400642bc
lea r10, [r11 + 1]
movzx ebx, byte [r11]
test bl, bl
jns 0x140064250
cmp bl, 0xe0
jb 0x14006423d
cmp bl, 0xed
jne 0x140064290
cmp r10, rdx
je 0x1400642bc
lea r10, [r11 + 2]
cmp r10, rdx
je 0x1400642bc
cmp byte [r11 + 1], 0x9f
ja 0x140065369
add r11, 3
mov r10, r11
jmp 0x140064250
add r11, 2
cmp r10, rdx
cmove r11, r10
xor r10d, r10d
cmp r11, rdx
setne r10b
add r10, r11
cmp bl, 0xf0
jb 0x140064250
xor r11d, r11d
cmp r10, rdx
setne r11b
add r10, r11
jmp 0x140064250
test r8, r8
mov rdx, qword [rsp + 0x38]
jne 0x140065161
xorps xmm0, xmm0
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x190], xmm0
movaps xmmword [rsp + 0x180], xmm0
lea rcx, [rsp + 0x180]
call sub.kernel32.dll_GetSystemInfo
mov rdx, qword [rsp + 0x38]
mov r14d, dword [rsp + 0x1a0]
cmp r14d, 1
adc r14d, 0
cmp r14, 0xffff
mov r12d, 0xffff
cmovb r12, r14
movzx r15d, byte [rdx + 0x59]
xorps xmm6, xmm6
movups xmmword [rsp + 0x188], xmm6
movups xmmword [rsp + 0x1a0], xmm6
mov qword [rsp + 0x180], 8
mov qword [rsp + 0x198], 8
lea rcx, [rsp + 0x180]
mov rdx, r12
call fcn.1400a7270
mov rax, qword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x1a8]
sub rax, rdx
cmp rax, r12
jae 0x140064380
lea rcx, [rsp + 0x198]
mov r8, r12
call fcn.1400a7330
lea rdi, [rsp + 0x78]
mov qword [rsp + 0x40], r12
jmp 0x1400643be
mov r13, qword [rsp + 0x198]
mov rax, r14
shl rax, 4
mov qword [r13 + rax], rsi
mov byte [r13 + rax + 8], bl
lea rsi, [r14 + 1]
mov qword [rsp + 0x1a8], rsi
dec r12
je 0x1400645d1
test r15b, r15b
je 0x1400643e0
mov rcx, rdi
call fcn.140065470
mov rsi, qword [rsp + 0x78]
lock inc qword [rsi]
jg 0x14006451f
jmp 0x1400653a0
movzx eax, byte [0x1400f02c0]
mov rax, qword [0x1400f0220]
test rax, rax
je 0x1400643fc
mov rsi, qword [sym.imp.kernel32.dll_HeapAlloc]
jmp 0x140064419
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
mov rsi, qword [sym.imp.kernel32.dll_HeapAlloc]
je 0x1400653b5
mov qword [0x1400f0220], rax
mov r8d, 0x400
mov rcx, rax
xor edx, edx
call rsi
test rax, rax
je 0x1400653b5
mov r14, rax
movzx eax, byte [0x1400f02c0]
mov rax, qword [0x1400f0220]
test rax, rax
jne 0x14006445b
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400653c6
mov qword [0x1400f0220], rax
mov r8d, 0x10
mov rcx, rax
xor edx, edx
call rsi
test rax, rax
je 0x1400653c6
mov rbx, rax
mov qword [rax], r14
mov qword [rax + 8], 0x40
movzx eax, byte [0x1400f02c0]
mov rax, qword [0x1400f0220]
test rax, rax
jne 0x1400644a8
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400653a4
mov qword [0x1400f0220], rax
mov r8d, 0x200
mov rcx, rax
xor edx, edx
call rsi
test rax, rax
je 0x1400653a4
mov rcx, rax
and rcx, 0xffffffffffffff80
lea rsi, [rcx + 0x80]
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 1
mov qword [rcx + 0x88], 1
mov qword [rcx + 0x100], rbx
movaps xmmword [rcx + 0x180], xmm6
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x88], 0x40
mov byte [rsp + 0x90], 1
lock inc qword [rsi]
jle 0x1400653a0
movzx ebx, byte [rsp + 0x90]
movups xmm0, xmmword [rsp + 0x78]
movups xmm1, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm1
mov rdx, qword [rsp + 0x190]
cmp rdx, qword [rsp + 0x188]
jne 0x14006456b
lea rcx, [rsp + 0x180]
call fcn.14000ca80
mov rdx, qword [rsp + 0x190]
mov rax, qword [rsp + 0x180]
mov rcx, rdx
shl rcx, 5
movaps xmm0, xmmword [rsp + 0x120]
movaps xmm1, xmmword [rsp + 0x130]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsp + 0x190], rdx
mov r14, qword [rsp + 0x1a8]
cmp r14, qword [rsp + 0x1a0]
jne 0x140064390
lea rcx, [rsp + 0x198]
mov rdx, r14
call fcn.14004db00
mov r14, qword [rsp + 0x1a8]
jmp 0x140064390
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x48], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x188], xmm0
movups xmmword [rsp + 0x1a0], xmm0
mov qword [rsp + 0x180], 8
mov qword [rsp + 0x198], 8
lea rcx, [rsp + 0x180]
mov rdi, qword [rsp + 0x40]
mov rdx, rdi
call fcn.1400a7270
mov rax, qword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x1a8]
sub rax, rdx
cmp rax, rdi
jae 0x1400646ab
lea rcx, [rsp + 0x198]
mov r8, rdi
call fcn.1400a7330
jmp 0x1400646ab
mov rdx, qword [rsp + 0x198]
mov rcx, r15
shl rcx, 4
mov qword [rdx + rcx], r12
mov byte [rdx + rcx + 8], bl
inc r15
mov qword [rsp + 0x1a8], r15
dec rdi
je 0x140064777
lea rcx, [rsp + 0x78]
call fcn.140065470
mov r12, qword [rsp + 0x78]
lock inc qword [r12]
jle 0x1400653a0
movzx ebx, byte [rsp + 0x90]
movups xmm0, xmmword [rsp + 0x78]
movups xmm1, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm1
mov rdx, qword [rsp + 0x190]
cmp rdx, qword [rsp + 0x188]
jne 0x140064711
lea rcx, [rsp + 0x180]
call fcn.14000ca80
mov rdx, qword [rsp + 0x190]
mov rax, qword [rsp + 0x180]
mov rcx, rdx
shl rcx, 5
movaps xmm0, xmmword [rsp + 0x120]
movaps xmm1, xmmword [rsp + 0x130]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmmword [rax + rcx], xmm0
inc rdx
mov qword [rsp + 0x190], rdx
mov r15, qword [rsp + 0x1a8]
cmp r15, qword [rsp + 0x1a0]
jne 0x140064680
lea rcx, [rsp + 0x198]
mov rdx, r15
call fcn.14004db00
mov r15, qword [rsp + 0x1a8]
jmp 0x140064680
mov r8, qword [rsp + 0x1a0]
movups xmm0, xmmword [rsp + 0x180]
movaps xmmword [rsp + 0x360], xmm0
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x370], rax
test rsi, rsi
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0x108], r8
mov qword [rsp + 0x100], rdx
je 0x140064824
movabs rax, 0x1c71c71c71c71c8
cmp rsi, rax
jae 0x140065460
lea rax, [rsi*8]
lea rdi, [rax + rax*8]
test rdi, rdi
mov rbx, qword [rsp + 0x40]
je 0x14006483e
movzx eax, byte [0x1400f02c0]
mov rcx, qword [0x1400f0220]
test rcx, rcx
jne 0x14006480a
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14006481a
mov rcx, rax
mov qword [0x1400f0220], rax
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
jne 0x140064843
mov ecx, 8
jmp 0x140065434
mov eax, 8
mov qword [rsp + 0xe0], rax
xor r14d, r14d
mov rbx, qword [rsp + 0x40]
jmp 0x1400648e6
mov eax, 8
mov r12, rsi
shl r12, 4
add r12, r13
lea rcx, [rsp + 0x186]
lea rdx, [rsp + 0x7e]
movabs r8, 0xfffffffffffffff
and r14, r8
inc r14
xorps xmm0, xmm0
mov qword [rsp + 0xe0], rax
mov r8, rax
mov r9, r13
nop dword [rax + rax]
mov r10, qword [r9]
movzx r11d, byte [r9 + 8]
movups xmmword [rcx], xmm0
mov word [rcx + 0x10], 0
movups xmmword [rdx], xmm0
mov qword [r8], 0
mov word [r8 + 8], 0
movups xmm1, xmmword [rsp + 0x180]
movups xmmword [r8 + 0xa], xmm1
mov rdi, qword [rsp + 0x190]
mov qword [r8 + 0x1a], rdi
movups xmm1, xmmword [rsp + 0x78]
movups xmmword [r8 + 0x22], xmm1
mov rdi, qword [rsp + 0x86]
mov qword [r8 + 0x30], rdi
mov qword [r8 + 0x38], r10
mov byte [r8 + 0x40], r11b
add r8, 0x48
add r9, 0x10
cmp r9, r12
jne 0x140064880
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x140064902
mov rcx, qword [0x1400f0220]
xor edx, edx
mov r8, r13
call qword [sym.imp.kernel32.dll_HeapFree]
mov rdi, rbx
shl rdi, 7
movzx eax, byte [0x1400f02c0]
mov rcx, qword [0x1400f0220]
test rcx, rcx
jne 0x140064935
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14006542f
mov rcx, rax
mov qword [0x1400f0220], rax
lea r8, [rdi + 0x80]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14006542f
mov r13, rax
and r13, 0xffffffffffffff80
mov qword [r13 + 0x78], rax
sub r13, 0xffffffffffffff80
cmp rbx, 1
jne 0x140064966
xor ecx, ecx
jmp 0x1400649c5
mov ecx, eax
and ecx, 0x7f
mov edx, ebx
and edx, 0xfffe
sub rax, rcx
add rax, 0x110
xor ecx, ecx
nop
mov qword [rax - 0x90], 0
mov word [rax - 0x88], 0
mov qword [rax - 0x80], 0
add rcx, 2
mov qword [rax - 0x10], 0
mov word [rax - 8], 0
mov qword [rax], 0
add rax, 0x100
cmp rdx, rcx
jne 0x140064980
test bl, 1
je 0x1400649e3
shl rcx, 7
mov qword [r13 + rcx], 0
mov word [r13 + rcx + 8], 0
mov qword [r13 + rcx + 0x10], 0
movzx eax, byte [0x1400f02c0]
mov rcx, qword [0x1400f0220]
test rcx, rcx
jne 0x140064a0f
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14006543e
mov rcx, rax
mov qword [0x1400f0220], rax
mov r8d, 0x5f0
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14006543e
mov rdi, rax
mov r8d, 0x5f0
mov rcx, rax
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x8f], rax
movaps xmm0, xmmword [rsp + 0x360]
movups xmmword [rsp + 0x7f], xmm0
mov rax, qword [rsp + 0x38]
mov r12, qword [rax + 0x18]
mov rcx, qword [rax + 0x20]
mov qword [rsp + 0x40], rcx
mov qword [rax + 0x18], 0
mov rcx, qword [rax + 0x38]
mov qword [rsp + 0x48], rcx
mov rcx, qword [rax + 0x40]
mov qword [rsp + 0xf8], rcx
mov qword [rax + 0x38], 0
mov rcx, qword [rax + 0x48]
mov qword [rsp + 0xf0], rcx
mov rcx, qword [rax + 0x50]
mov qword [rsp + 0xe8], rcx
mov qword [rax + 0x48], 0
movups xmm0, xmmword [rsp + 0x78]
mov rax, qword [rsp + 0x87]
mov qword [rsp + 0x18f], rax
mov rax, qword [rsp + 0x8f]
mov qword [rsp + 0x197], rax
movaps xmmword [rsp + 0x180], xmm0
movzx eax, byte [0x1400f02c0]
mov rcx, qword [0x1400f0220]
test rcx, rcx
jne 0x140064b06
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x14006544f
mov rcx, rax
mov qword [0x1400f0220], rax
mov r8d, 0x300
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x14006544f
mov rcx, rax
and rcx, 0xffffffffffffff80
mov qword [rcx + 0x78], rax
mov qword [rcx + 0x80], 1
mov qword [rcx + 0x88], 1
mov qword [rcx + 0x100], 0
mov qword [rcx + 0x108], rdi
mov qword [rcx + 0x180], 0
mov qword [rcx + 0x188], rdi
mov qword [rcx + 0x200], r12
mov rax, qword [rsp + 0x40]
mov qword [rcx + 0x208], rax
mov rax, qword [rsp + 0x48]
mov qword [rcx + 0x210], rax
mov rax, qword [rsp + 0xf8]
mov qword [rcx + 0x218], rax
mov rax, qword [rsp + 0xf0]
mov qword [rcx + 0x220], rax
mov rax, qword [rsp + 0xe8]
mov qword [rcx + 0x228], rax
mov qword [rcx + 0x230], 0
mov byte [rcx + 0x238], 0
movaps xmm0, xmmword [rsp + 0x180]
movups xmmword [rcx + 0x239], xmm0
movups xmm0, xmmword [rsp + 0x18f]
movups xmmword [rcx + 0x248], xmm0
mov qword [rcx + 0x258], 1
mov qword [rcx + 0x260], r13
mov qword [rcx + 0x268], rbx
mov qword [rcx + 0x270], rbx
mov qword [rcx + 0x278], 0
mov rax, qword [rsp + 0xe0]
mov qword [rcx + 0x280], rax
mov qword [rcx + 0x288], rsi
mov qword [rcx + 0x290], r14
mov rdx, qword [rsp + 0x118]
mov r14, rdx
shl r14, 5
xorps xmm0, xmm0
movups xmmword [rsp + 0x160], xmm0
movups xmmword [rsp + 0x170], xmm0
mov r9, qword [rsp + 0x70]
mov qword [rsp + 0x120], r9
mov rax, qword [rsp + 0x110]
mov qword [rsp + 0x128], rax
lea rax, [r9 + r14]
mov qword [rsp + 0x130], r9
mov qword [rsp + 0x138], rax
mov r11, qword [rsp + 0x100]
mov qword [rsp + 0x140], r11
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x148], rax
shl r15, 4
add r15, r11
mov qword [rsp + 0x150], r11
mov qword [rsp + 0x158], r15
lea rax, [rcx + 0x80]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], rax
test rdx, rdx
mov r8, qword [rsp + 0x38]
mov r10, qword [rsp + 0x68]
je 0x140065029
add r10, 0x10
add r9, 0x20
xor edi, edi
jmp 0x140064d1a
lea rcx, [rsp + 0x78]
call fcn.140062bf0
test rax, rax
jne 0x14006517a
mov r10, qword [rsp + 0x68]
add r10, 0xfffffffffffffff0
mov r9, qword [rsp + 0x70]
add r9, 0x20
mov rdi, r12
mov r11, rsi
add r14, 0xffffffffffffffe0
mov r8, qword [rsp + 0x38]
je 0x140065029
mov qword [rsp + 0x130], r9
movzx r15d, byte [r9 - 8]
cmp r15b, 2
je 0x140065029
lea rax, [r9 - 0x20]
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x190], rcx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x180], xmm0
mov ecx, dword [r9 - 7]
mov edx, dword [r9 - 4]
lea rsi, [rsp + 0x199]
mov dword [rsi + 3], edx
mov dword [rsi], ecx
mov byte [rsp + 0x198], r15b
test r10, r10
je 0x14006500e
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x70], r9
lea rcx, [r9 - 7]
lea rsi, [r11 + 0x10]
mov qword [rsp + 0x150], rsi
mov rbx, qword [r11]
movzx r13d, byte [r11 + 8]
mov rdx, qword [rax + 0x10]
mov qword [rsp + 0x390], rdx
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x380], xmm0
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
mov dword [rsp + 0x5b], ecx
mov dword [rsp + 0x58], eax
lea r12, [rdi + 1]
mov qword [rsp + 0x178], r12
mov rdx, qword [r8 + 0x28]
test rdx, rdx
je 0x140064df0
mov rax, qword [r8 + 0x30]
lea rcx, [rsp + 0x180]
mov r8, rdi
call qword [rax + 0x20]
mov r8, qword [rsp + 0x38]
jmp 0x140064dfc
mov qword [rsp + 0x180], 0
mov rax, qword [r8]
mov rcx, qword [r8 + 8]
mov r9, qword [rsp + 0x40]
lock inc qword [r9]
jle 0x1400653a0
mov rdx, qword [rsp + 0x190]
lea r10, [rsp + 0xc0]
mov qword [r10 + 0x10], rdx
movups xmm0, xmmword [rsp + 0x180]
movups xmmword [r10], xmm0
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rcx
mov rax, qword [rsp + 0x390]
lea rcx, [rsp + 0x98]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x380]
movups xmmword [rcx], xmm0
mov byte [rsp + 0xb0], r15b
mov eax, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x5b]
mov dword [r10 - 0xc], ecx
mov dword [r10 - 0xf], eax
mov qword [rsp + 0x88], rbx
mov byte [rsp + 0x90], r13b
mov qword [rsp + 0xb8], r9
mov qword [rsp + 0xd8], rdi
test rdi, rdi
jne 0x140064ce0
cmp byte [r8 + 0x58], 0
je 0x140064ce0
mov eax, dword [0x1400f02c4]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x98], 0
jne 0x140065194
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0x78]
call fcn.140062700
movzx eax, byte [0x1400f02c0]
mov rax, qword [0x1400f0220]
test rax, rax
jne 0x140064f06
call qword [sym.imp.kernel32.dll_GetProcessHeap]
test rax, rax
je 0x1400653a4
mov qword [0x1400f0220], rax
mov r8d, 0x200
mov rcx, rax
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapAlloc]
test rax, rax
je 0x1400653a4
mov rdi, rax
and rdi, 0xffffffffffffff80
mov qword [rdi + 0x78], rax
sub rdi, 0xffffffffffffff80
mov r8d, 0x180
mov rcx, rdi
lea rdx, [rsp + 0x180]
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [0x1400f02c4]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x98], 0
jne 0x1400653d7
mov eax, dword [0x1400f02c4]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov qword [rax + 0x98], rdi
mov rax, qword [rsp + 0x40]
cmp qword [rax + 0x210], 0
je 0x14006538e
mov rdi, qword [rax + 0x200]
mov rcx, rdi
call qword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
mov rax, qword [0x1400f02b8]
shl rax, 1
test rax, rax
jne 0x140064ff1
xor r15d, r15d
movzx eax, byte [rdi + 8]
test al, al
jne 0x1400653f1
mov byte [rdi + 9], 1
lea rcx, [rdi + 0x10]
call qword [sym.imp.kernel32.dll_WakeAllConditionVariable]
test r15b, r15b
jne 0x140064fe3
mov rax, qword [0x1400f02b8]
shl rax, 1
test rax, rax
jne 0x140064fff
mov rcx, rdi
call qword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
jmp 0x140064cf3
call fcn.1400a7ca0
mov r15d, eax
xor r15b, 1
jmp 0x140064fb5
call fcn.1400a7ca0
test al, al
jne 0x140064fe3
mov byte [rdi + 8], 1
jmp 0x140064fe3
mov rax, qword [rsp + 0x180]
lock dec qword [rax]
jne 0x140065029
lea rcx, [rsp + 0x180]
call fcn.14000c590
lea rcx, [rsp + 0x120]
call fcn.1400655e0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
mov qword [rdx + 8], rax
mov qword [rdx], 3
mov rdi, qword [rcx + 0x18]
test rdi, rdi
je 0x140065090
mov rsi, qword [rcx + 0x20]
mov rcx, rdi
call qword [rsi]
mov rcx, qword [rsp + 0x38]
cmp qword [rsi + 8], 0
je 0x140065090
cmp qword [rsi + 0x10], 0x11
jb 0x140065079
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1400f0220]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rcx + 0x28]
test rdi, rdi
je 0x1400650d0
mov rsi, qword [rcx + 0x30]
mov rcx, rdi
call qword [rsi]
mov rcx, qword [rsp + 0x38]
cmp qword [rsi + 8], 0
je 0x1400650d0
cmp qword [rsi + 0x10], 0x11
jb 0x1400650b9
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1400f0220]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rcx + 0x38]
test rdi, rdi
je 0x140065110
mov rsi, qword [rcx + 0x40]
mov rcx, rdi
call qword [rsi]
mov rcx, qword [rsp + 0x38]
cmp qword [rsi + 8], 0
je 0x140065110
cmp qword [rsi + 0x10], 0x11
jb 0x1400650f9
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1400f0220]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rcx + 0x48]
test rdi, rdi
je 0x140065146
mov rsi, qword [rcx + 0x50]
mov rcx, rdi
call qword [rsi]
cmp qword [rsi + 8], 0
je 0x140065146
cmp qword [rsi + 0x10], 0x11
jb 0x140065134
mov rdi, qword [rdi - 8]
mov rcx, qword [0x1400f0220]
xor edx, edx
mov r8, rdi
call qword [sym.imp.kernel32.dll_HeapFree]
movaps xmm6, xmmword [rbp + 0x320]
lea rsp, [rbp + 0x338]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
test r9, r9
jne 0x1400652ab
xor esi, esi
test rcx, rcx
jne 0x14006420c
jmp 0x140064220
mov rcx, qword [rsp + 0x60]
mov qword [rcx], 2
mov qword [rcx + 8], rax
mov rsi, qword [rsp + 0x40]
jmp 0x14006521d
mov rax, qword [rsp + 0x60]
mov qword [rax], 1
mov r8, qword [rsp + 0xc0]
test r8, r8
je 0x1400651c7
cmp qword [rsp + 0xc8], 0
je 0x1400651c7
mov rcx, qword [0x1400f0220]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
mov rax, qword [rsp + 0x98]
lock dec qword [rax]
jne 0x1400651e2
lea rcx, [rsp + 0x98]
call fcn.14000c590
mov rax, qword [rsp + 0x88]
lock dec qword [rax]
jne 0x1400651fd
lea rcx, [rsp + 0x88]
call fcn.14000c590
mov rax, qword [rsp + 0xb8]
lock dec qword [rax]
jne 0x140065218
lea rcx, [rsp + 0xb8]
call fcn.1400629a0
mov rsi, qword [rsp + 0x50]
lea rcx, [rsp + 0x120]
call fcn.1400655e0
lock dec qword [rsi + 0x1d8]
jne 0x14006528c
mov rcx, rsi
mov rax, qword [rsi + 0x210]
test rax, rax
je 0x14006528c
mov rsi, qword [rcx + 0x200]
add rcx, 0x1e0
shl rax, 3
lea rbx, [rax + rax*8]
xor r14d, r14d
xor edi, edi
jmp 0x14006526c
add r14, 0x48
inc rdi
cmp rbx, r14
je 0x14006528c
mov eax, 3
xchg qword [rsi + r14 + 0x30], rax
cmp rax, 2
jne 0x140065260
mov rdx, rdi
mov r15, rcx
call fcn.1400623a0
mov rcx, r15
jmp 0x140065260
mov rax, qword [rsp + 0x50]
lock dec qword [rax]
jne 0x1400652a1
lea rcx, [rsp + 0x50]
call fcn.1400629a0
mov rcx, qword [rsp + 0x38]
jmp 0x140065050
movzx eax, byte [r8]
cmp eax, 0x2d
je 0x1400652c8
cmp eax, 0x2b
jne 0x1400652d7
dec r9
je 0x14006516a
lea r10, [r8 + 1]
jmp 0x1400652da
mov r10, r8
cmp r9, 1
je 0x140064200
jmp 0x1400652da
mov r10, r8
cmp r9, 0x11
jae 0x14006531b
xor eax, eax
xor r14d, r14d
nop word cs:[rax + rax]
movzx edx, byte [r10 + rax]
add edx, 0xffffffd0
cmp edx, 9
ja 0x140064200
lea r11, [r14 + r14*4]
mov edx, edx
lea r14, [rdx + r11*2]
inc rax
cmp r9, rax
jne 0x1400652f0
mov sil, 1
jmp 0x140064202
xor r11d, r11d
mov esi, 0xa
xor r14d, r14d
nop word cs:[rax + rax]
cmp r9, r11
je 0x140065313
movzx edi, byte [r10 + r11]
mov rax, r14
mul rsi
seto dl
add edi, 0xffffffd0
cmp edi, 9
ja 0x140064200
test dl, dl
jne 0x140064200
mov r14, rax
mov eax, edi
inc r11
add r14, rax
jae 0x140065330
jmp 0x140064200
cmp al, 2
je 0x1400642ca
test rcx, rcx
je 0x1400642ca
mov rcx, qword [0x1400f0220]
xor edx, edx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x1400642ca
lea r8, [0x1400da500]
xor ecx, ecx
xor edx, edx
call fcn.1400a4430
ud2
ud2
mov ecx, 0x80
mov edx, 0x180
call fcn.1400a42a0
ud2
mov ecx, 8
mov edx, 0x400
call fcn.1400a42a0
ud2
mov ecx, 8
mov edx, 0x10
call fcn.1400a42a0
ud2
lea rcx, str.assertion_failed:_t.get__.is_null__
lea r8, [0x1400da590]
mov edx, 0x23
call fcn.1400a4530
ud2
mov qword [rsp + 0x180], rdi
mov byte [rsp + 0x188], r15b
lea rax, str.C:Userswilliamcanin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rayon_core_1.12.0_srclatch.rs
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x1400da358]
lea r8, [rsp + 0x180]
mov edx, 0x2b
call fcn.1400a48c0
ud2
mov ecx, 0x80
mov rdx, rdi
call fcn.1400a42a0
ud2
mov ecx, 8
mov edx, 0x5f0
call fcn.1400a42a0
ud2
mov ecx, 0x80
mov edx, 0x280
call fcn.1400a42a0
ud2
call fcn.14003bdd0
ud2