Function at 0x1400b36a0
Capabilities:
Allocate thread local storage

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x98
movaps xmmword [rsp + 0x80], xmm6
mov rbx, rdx
mov rdi, rcx
mov rax, qword [0x1401c1028]
xor rax, rsp
mov qword [rsp + 0x78], rax
lea rsi, [rcx + 0x40]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400b3716
cmp byte [rdi + 0x1470], 0
je 0x1400b3727
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14014c9b0
mov rcx, rsi
movaps xmm6, xmmword [rsp + 0x80]
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rcx, rsi
call fcn.1400b5960
cmp byte [rdi + 0x1470], 0
jne 0x1400b36e7
call fcn.140086130
cmp byte [rbx + 2], 1
sete byte [rdi + 4]
sete al
cmp byte [rbx + 3], 1
sete dl
cmp qword [0x1401c3590], 0xffffffffffffffff
setne cl
and cl, dl
mov byte [rdi + 0x10], cl
cmp byte [rbx + 0x10], 1
sete byte [rdi + 0x11]
cmp byte [rbx + 4], 1
sete byte [rdi + 0x12]
jne 0x1400b389b
movabs r14, 0xaaaaaaaaaaaaaaaa
mov rax, qword [rbx + 8]
mov qword [rdi + 0x1930], rax
lea r12, [rdi + 0x1938]
mov qword [rdi + 0x1940], rax
mov qword [rsp + 0x28], r12
mov byte [rsp + 0x30], 1
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x70], r14
lea rcx, [rsp + 0x70]
mov edx, 8
call fcn.1400561d0
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x70], r14
lea rcx, [rsp + 0x70]
mov edx, 8
call fcn.1400561d0
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x48], rax
lea r15, [rsp + 0x50]
cmp byte [rdi + 0x19b8], 0
je 0x1400b37eb
mov byte [rdi + 0x19b8], 0
mov qword [rdi + 0x1970], r12
mov byte [rdi + 0x1978], 1
xorps xmm6, xmm6
movaps xmmword [rdi + 0x1980], xmm6
mov qword [rdi + 0x1990], 0
mov qword [rsp + 0x70], r14
lea rcx, [rsp + 0x70]
mov edx, 8
call fcn.1400561d0
mov rax, qword [rsp + 0x70]
mov qword [rdi + 0x1988], rax
mov qword [rsp + 0x70], r14
lea rcx, [rsp + 0x70]
mov edx, 8
call fcn.1400561d0
mov rax, qword [rsp + 0x70]
mov qword [rdi + 0x1990], rax
movups xmmword [rdi + 0x1998], xmm6
mov qword [rdi + 0x19a8], 0
movups xmmword [r15], xmm6
mov qword [r15 + 0x10], 0
mov qword [rdi + 0x19b0], 0
mov qword [rsp + 0x68], 0
mov byte [rdi + 0x19b8], 1
lea rcx, [rsp + 0x28]
call fcn.1400f9510
movzx eax, byte [rdi + 4]
movzx ecx, byte [rdi + 0x10]
jmp 0x1400b38a8
cmp byte [rdi + 0x19b8], 0
jne 0x1400b3a43
test cl, cl
je 0x1400b38bd
test al, al
jne 0x1400b3a40
mov dword [rdi + 0x14], 0
jmp 0x1400b38d7
mov dword [rdi + 0x14], 0
test al, al
je 0x1400b38d7
mov qword [rdi + 8], 4
mov dword [rdi + 0x14], 4
cmp byte [rbx + 1], 0
setne byte [rdi]
xorps xmm0, xmm0
movaps xmmword [rdi + 0x1450], xmm0
movaps xmmword [rdi + 0x1460], xmm0
lea rax, [0x1401a95c7]
mov qword [rdi + 0x1448], rax
mov rax, rdi
not rax
mov qword [rdi + 0x1920], rax
lea r14, [rdi + 0x48]
mov edx, 0x10
xor r15d, r15d
lea r12, [0x140195308]
nop dword [rax]
mov rcx, r14
call fcn.1400e35e0
mov rdx, qword [r12 + r15*8 + 8]
inc r15
add r14, 0x28
cmp rdx, 1
jne 0x1400b3920
cmp r15, 0x7f
ja 0x1400b3971
dec r15
nop word cs:[rax + rax]
mov rcx, r14
mov edx, 1
call fcn.1400e35e0
mov qword [r14], 0
inc r15
add r14, 0x28
cmp r15, 0x7f
jb 0x1400b3950
lea rcx, [0x1401c36a0]
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x1400b398d
cmp byte [0x1401d3658], 0
je 0x1400b39a2
jmp 0x1400b39e0
lea rcx, [0x1401c36a0]
call fcn.1400b5960
cmp byte [0x1401d3658], 0
jne 0x1400b39e0
cmp qword [0x1401d9250], 0
jne 0x1400b3a46
call qword [sym.imp.KERNEL32.dll_TlsAlloc]
cmp eax, 0xffffffff
je 0x1400b3a49
mov dword [0x1401d3600], eax
mov dword [0x1401d9258], eax
lea rax, [0x1400b4760]
mov qword [0x1401d9250], rax
mov byte [0x1401d3658], 1
lea rcx, [0x1401c36a0]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
cmp byte [rbx], 1
sete byte [rdi + 3]
jne 0x1400b39fe
mov rcx, rdi
call fcn.1400b4970
mov byte [rdi + 0x1470], 1
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov cl, 1
xor eax, eax
lock cmpxchg byte [0x1401d35fc], cl
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.14014c9b0
movaps xmm6, xmmword [rsp + 0x80]
add rsp, 0x98
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
int3
int3
int3
int3