Function at 0x14002a400
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push rbp
push r14
lea rbp, [rsp - 0xa48]
sub rsp, 0xb48
mov rax, qword [0x14035e2b0]
xor rax, rsp
mov qword [rbp + 0xa18], rax
mov r14, rdx
test rcx, rcx
je 0x14002a44b
test rdx, rdx
je 0x14002a441
mov r9b, 1
xor r8d, r8d
call fcn.1400229a0
jmp 0x14002ae7e
call fcn.140023510
jmp 0x14002ae7e
cmp dword [reloc.WS2_32.dll_closesocket], 0
mov qword [rsp + 0xb70], rbx
mov qword [rsp + 0xb40], rsi
mov qword [rsp + 0xb38], rdi
mov qword [rsp + 0xb30], r12
mov qword [rsp + 0xb28], r13
mov qword [rsp + 0xb20], r15
je 0x14002a4a1
call fcn.140028800
test al, al
je 0x14002a4a1
mov ecx, ntohs
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor edi, edi
mov ebx, edi
jmp 0x14002ae4b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x140577180]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, ebx
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor edi, edi
lea r15d, [rdi + 1]
test rsi, rsi
jne 0x14002a778
mov ecx, 0xa50
call fcn.1400306e0
mov rsi, rax
test rax, rax
je 0x14002ae98
xorps xmm0, xmm0
mov byte [rax], dil
xor eax, eax
mov word [rbp - 0x50], di
xor edx, edx
mov dword [rbp + 0x72], eax
mov r8d, 0xb0
mov word [rbp + 0x76], ax
lea rcx, [rbp + 0xb0]
mov qword [rbp + 0x80], rax
mov byte [rbp + 0x88], al
mov qword [rbp - 0x48], rdi
mov qword [rbp - 0x40], rdi
mov qword [rbp - 0x38], rdi
mov qword [rbp - 0x30], rdi
mov qword [rbp - 0x28], rdi
mov qword [rbp - 0x20], rdi
mov qword [rbp - 0x18], rdi
mov qword [rbp - 0x10], rdi
mov qword [rbp - 8], rdi
mov qword [rbp], rdi
mov qword [rbp + 8], rdi
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x18], rdi
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x28], rdi
mov qword [rbp + 0x30], rdi
mov qword [rbp + 0x38], rdi
mov qword [rbp + 0x40], rdi
mov dword [rbp + 0x48], 0x3e8
mov dword [rbp + 0x4c], 0x3e8
mov word [rbp + 0x50], 0xffff
movups xmmword [rbp + 0x52], xmm0
mov qword [rbp + 0x78], rdi
movups xmmword [rbp + 0x62], xmm0
mov qword [rbp + 0x90], rdi
mov qword [rbp + 0x98], rdi
mov qword [rbp + 0xa0], rdi
mov qword [rbp + 0xa8], rdi
call fcn.1401e1b90
mov qword [rbp + 0x160], r15
mov qword [rbp + 0x168], rdi
mov qword [rbp + 0x170], r15
mov qword [rbp + 0x178], rdi
mov qword [rbp + 0x180], r15
mov qword [rbp + 0x188], rdi
mov qword [rbp + 0x190], r15
mov qword [rbp + 0x198], rdi
mov qword [rbp + 0x1a0], r15
mov qword [rbp + 0x1a8], rdi
mov qword [rbp + 0x1b0], r15
mov qword [rbp + 0x1b8], rdi
mov qword [rbp + 0x1c0], r15
mov qword [rbp + 0x1c8], rdi
mov qword [rbp + 0x1d0], r15
mov qword [rbp + 0x1d8], rdi
mov qword [rbp + 0x1e0], r15
mov qword [rbp + 0x1e8], rdi
mov qword [rbp + 0x1f0], r15
mov qword [rbp + 0x1f8], rdi
mov qword [rbp + 0x200], r15
mov qword [rbp + 0x208], rdi
mov qword [rbp + 0x210], r15
mov qword [rbp + 0x218], rdi
mov qword [rbp + 0x220], r15
mov qword [rbp + 0x228], rdi
mov qword [rbp + 0x230], r15
mov qword [rbp + 0x238], rdi
mov qword [rbp + 0x240], r15
mov qword [rbp + 0x248], rdi
mov qword [rbp + 0x250], r15
mov qword [rbp + 0x258], rdi
mov qword [rbp + 0x260], r15
mov qword [rbp + 0x268], rdi
mov qword [rbp + 0x270], r15
mov qword [rbp + 0x278], rdi
mov qword [rbp + 0x280], r15
mov qword [rbp + 0x288], rdi
mov qword [rbp + 0x290], r15
mov qword [rbp + 0x298], rdi
mov qword [rbp + 0x2a0], r15
xor eax, eax
mov qword [rbp + 0x2a8], rdi
xor edx, edx
mov dword [rbp + 0x2e1], eax
mov r8d, 0x6d8
mov word [rbp + 0x2e5], ax
lea rcx, [rbp + 0x310]
mov byte [rbp + 0x2e7], al
mov qword [rbp + 0x2b0], r15
mov qword [rbp + 0x2b8], rdi
mov qword [rbp + 0x2c0], r15
mov qword [rbp + 0x2c8], rdi
mov qword [rbp + 0x2d0], r15
mov qword [rbp + 0x2d8], rdi
mov byte [rbp + 0x2e0], 6
mov qword [rbp + 0x2e8], rdi
mov qword [rbp + 0x2f0], rdi
mov qword [rbp + 0x2f8], rdi
mov qword [rbp + 0x300], rdi
mov qword [rbp + 0x308], rdi
call fcn.1401e1b90
lea rcx, [rsi + 8]
mov qword [rbp + 0x9e8], rdi
lea rdx, [rbp - 0x50]
mov byte [rbp + 0x9f0], dil
mov r8d, 0xa48
call fcn.1401e14e0
mov ecx, dword [0x140577180]
mov rdx, rsi
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
je 0x14002aeaa
add rsi, 8
cmp byte [rsi + 0x330], dil
je 0x14002a79f
xor edx, edx
mov rcx, rsi
call fcn.140030d00
mov rsi, rax
cmp byte [rax + 0x330], dil
jne 0x14002aabc
lea rbx, [0x140000000]
movabs rax, 0x7000000000000000
cmp r14, 0x1000
ja 0x14002a7cc
lea rax, [r14 + 7]
shr rax, 3
movzx r13d, byte [rax + rbx + 0x370080]
jmp 0x14002a82c
cmp r14, rax
jbe 0x14002a7d9
mov r13d, 0xe8
jmp 0x14002a82c
lea rax, [r14*2 - 1]
test rax, rax
je 0x14002aebc
bsr rdx, rax
mov ecx, edi
cmp edx, 6
lea eax, [rdx - 6]
cmovae ecx, eax
lea r8d, [rcx*4]
mov ecx, 4
cmp edx, 7
jb 0x14002a80e
lea ecx, [rdx - 3]
mov rax, 0xffffffffffffffff
lea rdx, [r14 - 1]
shl rax, cl
lea r13d, [r8 + 1]
and rdx, rax
shr rdx, cl
and edx, 3
add r13d, edx
cmp r13d, 0xe8
jae 0x14002aaa9
mov r12d, r13d
lea rcx, [rsi + 0x358]
mov rax, qword [rbx + r12*8 + 0x36f940]
mov qword [rsp + 0x40], rax
test rcx, rcx
je 0x14002aa28
cmp r14, 0x3800
ja 0x14002a934
lea rax, [r12 + r12*2]
lea r15, [rcx + rax*8]
mov rcx, qword [rcx + rax*8 + 8]
lea rax, [rcx + 8]
mov rbx, qword [rcx]
cmp cx, word [r15 + 0x18]
je 0x14002a88e
mov qword [r15 + 8], rax
inc qword [r15 + 0x10]
jmp 0x14002aa40
cmp cx, word [r15 + 0x1c]
je 0x14002a8a7
mov qword [r15 + 8], rax
mov word [r15 + 0x18], ax
inc qword [r15 + 0x10]
jmp 0x14002aa40
xor edx, edx
mov rcx, rsi
call fcn.140020d20
mov qword [rsp + 0x38], rax
mov rcx, rax
test rax, rax
jne 0x14002a8c6
mov rbx, rdi
jmp 0x14002aa40
mov rax, qword [0x140376270]
mov r9d, r13d
cmp word [rax + r12*2], di
jne 0x14002a8df
mov rdx, rcx
jmp 0x14002aa2d
lea r8, [r15 + 8]
mov byte [rsp + 0x20], 1
lea rdx, [rsi + 0x358]
mov rcx, rsi
call fcn.14005dcc0
mov rdx, qword [rsp + 0x38]
lea rax, [rsp + 0x31]
mov qword [rsp + 0x28], rax
lea r9, [r15 + 8]
lea r8, [rsi + 0x358]
mov dword [rsp + 0x20], r13d
mov rcx, rsi
call fcn.14005cc80
mov rbx, rax
cmp byte [rsp + 0x31], dil
jne 0x14002a885
mov rbx, rdi
jmp 0x14002aa40
cmp r14, qword [0x140376258]
ja 0x14002aa28
lea rax, [r12 + r12*2]
lea r12, [rcx + rax*8]
mov rcx, qword [rcx + rax*8 + 8]
lea rax, [rcx + 8]
mov rbx, qword [rcx]
cmp cx, word [r12 + 0x18]
je 0x14002a96c
mov qword [r12 + 8], rax
inc qword [r12 + 0x10]
jmp 0x14002aa40
cmp cx, word [r12 + 0x1c]
je 0x14002a989
mov qword [r12 + 8], rax
mov word [r12 + 0x18], ax
inc qword [r12 + 0x10]
jmp 0x14002aa40
xor edx, edx
mov rcx, rsi
call fcn.140020d20
mov qword [rsp + 0x38], rax
test rax, rax
jne 0x14002a9a5
mov rbx, rdi
jmp 0x14002aa40
mov r9d, r13d
mov byte [rsp + 0x20], dil
lea r8, [r12 + 8]
mov rcx, rsi
lea rdx, [rsi + 0x358]
call fcn.14005dcc0
movabs rax, 0x7000000000000000
cmp r14, rax
jbe 0x14002a9d5
mov r8, rdi
jmp 0x14002aa0b
lea rax, [r14*2 - 1]
test rax, rax
je 0x14002aebc
bsr rcx, rax
cmp rcx, 7
jae 0x14002a9f7
mov ecx, 4
jmp 0x14002a9fb
add rcx, 0xfffffffffffffffd
shl r15, cl
dec r15
lea r8, [r15 + r14]
not r15
and r8, r15
mov rdx, qword [rsp + 0x38]
xor r9d, r9d
mov rcx, rsi
call fcn.14005c180
mov rbx, rax
test rax, rax
jne 0x14002aa40
mov rbx, rdi
jmp 0x14002aa40
mov r9d, r13d
xor edx, edx
mov r8, r14
mov byte [rsp + 0x20], dil
mov rcx, rsi
call fcn.140059560
mov rbx, rax
test rbx, rbx
je 0x14002aaa9
mov r8, qword [rsp + 0x40]
lea rcx, [rsi + 0x338]
mov qword [rsp + 0x58], rcx
lea rax, [rsi + 8]
mov qword [rsp + 0x60], rax
lea rax, [rsi + 0x10]
mov qword [rsp + 0x68], rax
lea rax, [rsi + 0x340]
mov qword [rsp + 0x70], rax
mov byte [rsp + 0x50], 1
mov rdx, qword [rcx]
lea rax, [r8 + rdx]
mov qword [rcx], rax
mov rax, qword [rsp + 0x68]
mov rcx, qword [rax]
sub rcx, rdx
cmp r8, rcx
jb 0x14002ae4b
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140063e40
jmp 0x14002ae4b
mov ecx, ntohs
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
jmp 0x14002ae4b
cmp byte [0x1403671c9], dil
lea rbx, [0x140000000]
setne byte [rsp + 0x30]
cmp r14, 0x1000
ja 0x14002aaeb
lea rax, [r14 + 7]
shr rax, 3
movzx r12d, byte [rax + rbx + 0x370080]
jmp 0x14002aaf6
mov rcx, r14
call fcn.14002b460
mov r12d, eax
mov dword [rsp + 0x40], r12d
cmp r12d, 0xe8
jae 0x14002ae11
lea r8, [rbx + 0x36f940]
mov eax, r12d
lea r8, [r8 + rax*8]
mov rcx, qword [r8]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x38], r8
cmp byte [rsi + 1], dil
jle 0x14002abbb
movzx r8d, r15b
mov edx, edi
mov rcx, rsi
call fcn.1400213e0
mov rdx, rax
mov r13, rdi
test rax, rax
jne 0x14002ab52
cmp edi, dword [0x1405771f4]
jae 0x14002ae11
mov r8, qword [rsp + 0x38]
mov eax, r12d
test r13, r13
je 0x14002ad7e
cmp r14, 0x3800
ja 0x14002ac6b
lea rax, [rax + rax*2]
lea r15, [rax*8]
add r15, r13
mov rcx, qword [r15 + 8]
lea rax, [rcx + 8]
mov rbx, qword [rcx]
cmp cx, word [r15 + 0x18]
je 0x14002abcf
mov qword [r15 + 8], rax
movzx r13d, byte [rsp + 0x30]
test r13b, r13b
je 0x14002abb2
mov r8, qword [rsp + 0x38]
xor edx, edx
mov rcx, rbx
mov r8, qword [r8]
call fcn.1401e1b90
inc qword [r15 + 0x10]
jmp 0x14002ad9a
mov r13, rdi
cmp byte [rsi], dil
je 0x14002abca
lea r13, [rsi + 0x358]
mov rdx, rdi
jmp 0x14002ab5a
cmp cx, word [r15 + 0x1c]
je 0x14002abe1
mov qword [r15 + 8], rax
mov word [r15 + 0x18], ax
jmp 0x14002ab95
mov rcx, rsi
call fcn.140020d20
mov rbx, rax
test rax, rax
jne 0x14002abff
movzx r13d, byte [rsp + 0x30]
mov rbx, rdi
jmp 0x14002ad9a
mov rax, qword [0x140376270]
mov r9d, r12d
mov ecx, r12d
cmp word [rax + rcx*2], di
mov rcx, rsi
jne 0x14002ac1d
mov rdx, rbx
jmp 0x14002ad84
lea r8, [r15 + 8]
mov byte [rsp + 0x20], 1
mov rdx, r13
call fcn.14005dcc0
lea rax, [rsp + 0x32]
mov r8, r13
mov qword [rsp + 0x28], rax
lea r9, [r15 + 8]
mov rdx, rbx
mov dword [rsp + 0x20], r12d
mov rcx, rsi
call fcn.14005cc80
mov rbx, rax
cmp byte [rsp + 0x32], dil
jne 0x14002ab95
movzx r13d, byte [rsp + 0x30]
mov rbx, rdi
jmp 0x14002ad9a
cmp r14, qword [0x140376258]
ja 0x14002ad7e
lea rax, [rax + rax*2]
lea r12, [rax*8]
add r12, r13
mov rcx, qword [r12 + 8]
lea rax, [rcx + 8]
mov rbx, qword [rcx]
cmp cx, word [r12 + 0x18]
je 0x14002aca2
mov qword [r12 + 8], rax
jmp 0x14002acb5
cmp cx, word [r12 + 0x1c]
je 0x14002acd7
mov qword [r12 + 8], rax
mov word [r12 + 0x18], ax
movzx r13d, byte [rsp + 0x30]
test r13b, r13b
je 0x14002accd
mov r8, qword [r8]
xor edx, edx
mov rcx, rbx
call fcn.1401e1b90
inc qword [r12 + 0x10]
jmp 0x14002ad9a
mov rcx, rsi
call fcn.140020d20
mov rbx, rax
test rax, rax
jne 0x14002acf5
movzx r13d, byte [rsp + 0x30]
mov rbx, rdi
jmp 0x14002ad9a
mov r9d, dword [rsp + 0x40]
lea r8, [r12 + 8]
mov rdx, r13
mov byte [rsp + 0x20], dil
mov rcx, rsi
call fcn.14005dcc0
movabs rax, 0x7000000000000000
cmp r14, rax
jbe 0x14002ad23
mov r8, rdi
jmp 0x14002ad5c
lea rax, [r14*2 - 1]
test rax, rax
je 0x14002aebc
bsr rax, rax
cmp rax, 7
jae 0x14002ad45
mov eax, 4
jmp 0x14002ad49
add rax, 0xfffffffffffffffd
mov rcx, rax
shl r15, cl
dec r15
lea r8, [r15 + r14]
not r15
and r8, r15
movzx r13d, byte [rsp + 0x30]
mov rdx, rbx
movzx r9d, r13b
mov rcx, rsi
call fcn.14005c180
mov rbx, rax
test rax, rax
jne 0x14002ad9a
mov rbx, rdi
jmp 0x14002ad9a
mov r9d, r12d
mov rcx, rsi
movzx r13d, byte [rsp + 0x30]
mov r8, r14
mov byte [rsp + 0x20], r13b
call fcn.140059560
mov rbx, rax
test rbx, rbx
je 0x14002ae11
mov r15, qword [rsp + 0x48]
lea rcx, [rsi + 0x338]
mov qword [rbp - 0x80], rcx
lea rax, [rsi + 8]
mov qword [rbp - 0x78], rax
lea rax, [rsi + 0x10]
mov qword [rbp - 0x70], rax
lea rax, [rsi + 0x340]
mov qword [rbp - 0x68], rax
mov byte [rsp + 0x78], 1
mov rdx, qword [rcx]
lea rax, [r15 + rdx]
mov qword [rcx], rax
mov rax, qword [rbp - 0x70]
mov rcx, qword [rax]
sub rcx, rdx
cmp r15, rcx
jb 0x14002adf5
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.140063e40
test r13b, r13b
jne 0x14002ae1f
cmp byte [0x1403671c4], dil
je 0x14002ae1f
mov rdx, r15
mov rcx, rbx
call qword [0x140357088]
jmp 0x14002ae1f
mov ecx, ntohs
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, rdi
xor eax, eax
mov qword [rbp + 0xa00], rdi
lea r9, [rbp + 0xa00]
mov qword [rbp + 0xa08], r14
mov r8, rbx
mov qword [rbp + 0xa10], rax
mov rdx, rbx
lea ecx, [rax + 7]
call fcn.140038e10
mov r13, qword [rsp + 0xb28]
mov rax, rbx
mov rbx, qword [rsp + 0xb70]
mov r12, qword [rsp + 0xb30]
mov rdi, qword [rsp + 0xb38]
mov rsi, qword [rsp + 0xb40]
mov r15, qword [rsp + 0xb20]
mov rcx, qword [rbp + 0xa18]
xor rcx, rsp
call fcn.1401dee10
add rsp, 0xb48
pop r14
pop rbp
ret
lea rcx, str._jemalloc_:_Error_allocating_TSD_n
call fcn.14002eb70
call fcn.1401f3454
int3
lea rcx, str._jemalloc_:_Error_setting_TSD_n
call fcn.14002eb70
call fcn.1401f3454
int3
call fcn.1401f3454
int3