Function at 0x14000e9c4
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x250
mov rax, qword [0x140023128]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov r9d, dword [0x140024448]
lea rbp, [0x14001ee84]
mov r12d, 0x20
mov r8, rbp
mov edx, r12d
mov rdi, rcx
call fcn.140011da0
or rsi, 0xffffffffffffffff
mov rax, rsi
xor r13d, r13d
inc rax
cmp word [rdi + rax*2], r13w
jne 0x14000ea21
cmp eax, dword [rdi + 0x704]
jle 0x14000ea39
mov dword [rdi + 0x704], eax
mov r9d, dword [0x140024410]
lea rcx, [rdi + 0x40]
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rdi + rax*2 + 0x40], r13w
jne 0x14000ea52
cmp eax, dword [rdi + 0x708]
jle 0x14000ea6b
mov dword [rdi + 0x708], eax
mov r9d, dword [0x140024438]
lea rbx, [rdi + 0x80]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ea8a
cmp eax, dword [rdi + 0x70c]
jle 0x14000eaa2
mov dword [rdi + 0x70c], eax
mov r9d, dword [0x140024458]
lea rbx, [rdi + 0xc0]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000eac1
cmp eax, dword [rdi + 0x710]
jle 0x14000ead9
mov dword [rdi + 0x710], eax
mov r9d, dword [0x140024400]
lea rbx, [rdi + 0x100]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000eaf8
cmp eax, dword [rdi + 0x714]
jle 0x14000eb10
mov dword [rdi + 0x714], eax
mov r9d, dword [0x140024480]
lea rbx, [rdi + 0x140]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000eb2f
cmp eax, dword [rdi + 0x718]
jle 0x14000eb47
mov dword [rdi + 0x718], eax
mov r9d, dword [0x14002444c]
lea rbx, [rdi + 0x180]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000eb66
cmp eax, dword [rdi + 0x704]
jle 0x14000eb7e
mov dword [rdi + 0x704], eax
mov r9d, dword [0x140024414]
lea rbx, [rdi + 0x1c0]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000eb9d
cmp eax, dword [rdi + 0x708]
jle 0x14000ebb5
mov dword [rdi + 0x708], eax
mov r9d, dword [0x14002443c]
lea rbx, [rdi + 0x200]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ebd4
cmp eax, dword [rdi + 0x70c]
jle 0x14000ebec
mov dword [rdi + 0x70c], eax
mov r9d, dword [0x14002445c]
lea rbx, [rdi + 0x240]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ec0b
cmp eax, dword [rdi + 0x710]
jle 0x14000ec23
mov dword [rdi + 0x710], eax
mov r9d, dword [0x140024404]
lea rbx, [rdi + 0x280]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ec42
cmp eax, dword [rdi + 0x714]
jle 0x14000ec5a
mov dword [rdi + 0x714], eax
mov r9d, dword [0x140024484]
lea rbx, [rdi + 0x2c0]
mov rcx, rbx
mov r8, rbp
mov rdx, r12
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ec79
cmp eax, dword [rdi + 0x718]
jle 0x14000ec91
mov dword [rdi + 0x718], eax
lea rbx, [rdi + 0x300]
mov rdx, rbx
lea rcx, [0x140024448]
call fcn.140019384
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ecaa
cmp eax, dword [rdi + 0x704]
jle 0x14000ecc2
mov dword [rdi + 0x704], eax
lea rbx, [rdi + 0x340]
mov rdx, rbx
lea rcx, [0x140024410]
call fcn.140019384
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ecdb
cmp eax, dword [rdi + 0x708]
jle 0x14000ecf3
mov dword [rdi + 0x708], eax
lea rbx, [rdi + 0x380]
mov rdx, rbx
lea rcx, [0x140024438]
call fcn.140019384
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ed0c
cmp eax, dword [rdi + 0x70c]
jle 0x14000ed24
mov dword [rdi + 0x70c], eax
lea rbx, [rdi + 0x3c0]
mov rdx, rbx
lea rcx, [0x140024458]
call fcn.140019384
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ed3d
cmp eax, dword [rdi + 0x710]
jle 0x14000ed55
mov dword [rdi + 0x710], eax
lea rbx, [rdi + 0x400]
mov rdx, rbx
lea rcx, [0x140024400]
call fcn.140019384
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ed6e
cmp eax, dword [rdi + 0x714]
jle 0x14000ed86
mov dword [rdi + 0x714], eax
lea rbx, [rdi + 0x440]
mov rdx, rbx
lea rcx, [0x140024480]
call fcn.140019384
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000ed9f
cmp eax, dword [rdi + 0x718]
jle 0x14000edb7
mov dword [rdi + 0x718], eax
cmp dword [0x1400245d0], r13d
jne 0x14000edc9
lea rcx, [0x140024478]
jmp 0x14000edeb
mov ecx, dword [0x140023188]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
nop dword [rax + rax]
lea rcx, [0x140024478]
test rax, rax
je 0x14000edeb
lea rcx, [rax + 0x10]
call fcn.140011f0c
cmp dword [0x1400245d0], r13d
movsxd rbp, eax
jne 0x14000ee05
lea rcx, [0x140024428]
jmp 0x14000ee25
mov ecx, dword [0x140023188]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
nop dword [rax + rax]
test rax, rax
lea rcx, [0x140024428]
cmovne rcx, rax
call fcn.140011f0c
cmp dword [0x1400245d0], r13d
movsxd rbx, eax
jne 0x14000ee3f
lea rcx, [0x1400243e0]
jmp 0x14000ee61
mov ecx, dword [0x140023188]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
nop dword [rax + rax]
lea rcx, [0x1400243e0]
test rax, rax
je 0x14000ee61
lea rcx, [rax + 8]
call fcn.140011f0c
movsxd r15, eax
mov r14, rbp
sub r14, r15
sub r14, rbx
cmp dword [0x1400245d0], r13d
je 0x14000ef76
lea rcx, [0x140024478]
call fcn.140011f0c
mov ecx, 2
mov ebx, eax
call fcn.140008fac
add ebx, eax
lea rcx, [0x140024428]
movsxd rbp, ebx
call fcn.140011f0c
xor ecx, ecx
mov ebx, eax
call fcn.140008fac
add eax, ebx
lea rcx, [0x1400243e0]
cdqe
mov r15, rbp
cmp rax, rbp
cmovb r15, rax
call fcn.140011f0c
mov ecx, 1
mov ebx, eax
call fcn.140008fac
add eax, ebx
mov r14, rbp
sub r14, r15
cdqe
cmp rax, r14
mov r12, r14
cmovb r12, rax
test rbp, rbp
je 0x14000ef09
lea rcx, [0x140024478]
call fcn.140011f0c
cdqe
xor edx, edx
imul rax, r15
div rbp
jmp 0x14000ef0c
mov rax, r13
mov ebx, eax
test rbp, rbp
je 0x14000ef2c
lea rcx, [0x140024478]
call fcn.140011f0c
cdqe
xor edx, edx
imul rax, r12
div rbp
jmp 0x14000ef2f
mov rax, r13
mov r15d, eax
test rbp, rbp
je 0x14000ef50
lea rcx, [0x140024478]
call fcn.140011f0c
cdqe
xor edx, edx
imul rax, r14
div rbp
jmp 0x14000ef53
mov rax, r13
mov r14d, eax
mov ecx, 0x7fffffff
mov eax, ebx
mov r12d, 0x20
and eax, ecx
mov dword [0x14002442c], eax
mov eax, r15d
and eax, ecx
mov dword [0x1400243e4], eax
mov rcx, qword [0x140023f08]
lea r8, [rsp + 0x40]
mov r9d, 0x100
mov word [rsp + 0x40], r13w
lea edx, [r9 - 0x4b]
call qword [sym.imp.USER32.dll_LoadStringW]
nop dword [rax + rax]
mov r9d, 0x88888889
mov eax, 0x10624dd3
imul ebp
lea rbp, [rdi + 0x480]
mov r8d, edx
sar r8d, 6
mov eax, r8d
shr eax, 0x1f
add r8d, eax
mov eax, r9d
imul r8d
lea ecx, [r8 + rdx]
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov eax, r9d
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, ecx, 0x3c
mov r9d, edx
sub r8d, eax
imul eax, edx, 0x3c
mov dword [rsp + 0x28], r8d
mov rdx, r12
lea r8, [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x20], ecx
mov rcx, rbp
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbp + rax*2], r13w
jne 0x14000f011
cmp eax, dword [rdi + 0x704]
jle 0x14000f02a
mov dword [rdi + 0x704], eax
mov r9d, 0x88888889
lea rbp, [rdi + 0x4c0]
mov eax, 0x10624dd3
imul ebx
mov r8d, edx
sar r8d, 6
mov eax, r8d
shr eax, 0x1f
add r8d, eax
mov eax, r9d
imul r8d
lea ecx, [r8 + rdx]
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov eax, r9d
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, ecx, 0x3c
mov r9d, edx
sub r8d, eax
imul eax, edx, 0x3c
mov dword [rsp + 0x28], r8d
mov rdx, r12
lea r8, [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x20], ecx
mov rcx, rbp
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbp + rax*2], r13w
jne 0x14000f09d
cmp eax, dword [rdi + 0x708]
jle 0x14000f0b6
mov dword [rdi + 0x708], eax
mov eax, 0x10624dd3
lea rbp, [rdi + 0x580]
imul r15d
mov r15d, 0x88888889
mov r8d, edx
sar r8d, 6
mov eax, r8d
shr eax, 0x1f
add r8d, eax
mov eax, r15d
imul r8d
lea ecx, [r8 + rdx]
sar ecx, 5
mov eax, ecx
shr eax, 0x1f
add ecx, eax
mov eax, r15d
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, ecx, 0x3c
mov r9d, edx
sub r8d, eax
imul eax, edx, 0x3c
mov dword [rsp + 0x28], r8d
mov rdx, r12
lea r8, [rsp + 0x40]
sub ecx, eax
mov dword [rsp + 0x20], ecx
mov rcx, rbp
call fcn.140011da0
mov rcx, rsi
inc rcx
cmp word [rbp + rcx*2], r13w
jne 0x14000f12a
cmp ecx, dword [rdi + 0x714]
jle 0x14000f143
mov dword [rdi + 0x714], ecx
mov eax, 0x10624dd3
lea rbp, [rdi + 0x5c0]
imul r14d
mov r9d, edx
sar r9d, 6
mov eax, r9d
shr eax, 0x1f
add r9d, eax
mov eax, r15d
imul r9d
mov eax, r15d
lea r8d, [r9 + rdx]
sar r8d, 5
mov ecx, r8d
shr ecx, 0x1f
add r8d, ecx
mov rcx, rbp
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, r8d, 0x3c
sub r9d, eax
imul eax, edx, 0x3c
mov dword [rsp + 0x28], r9d
mov r9d, edx
mov rdx, r12
sub r8d, eax
mov dword [rsp + 0x20], r8d
lea r8, [rsp + 0x40]
call fcn.140011da0
mov rax, rsi
inc rax
cmp word [rbp + rax*2], r13w
jne 0x14000f1b9
cmp eax, dword [rdi + 0x718]
jle 0x14000f1d2
mov dword [rdi + 0x718], eax
cmp dword [0x14002456c], r13d
jne 0x14000f2e0
test rbx, rbx
je 0x14000f2e0
mov rcx, qword [0x140024418]
test rcx, rcx
je 0x14000f2e0
xorps xmm0, xmm0
test rbx, rbx
js 0x14000f207
cvtsi2sd xmm0, rbx
jmp 0x14000f21c
mov rax, rbx
and ebx, 1
shr rax, 1
or rax, rbx
cvtsi2sd xmm0, rax
addsd xmm0, xmm0
divsd xmm0, qword [0x14001fa68]
movsd xmm3, qword [0x14001fa70]
xorps xmm2, xmm2
cvtsi2sd xmm2, rcx
xor ecx, ecx
movaps xmm1, xmm2
divsd xmm1, xmm0
comisd xmm1, xmm3
jb 0x14000f25a
subsd xmm1, xmm3
comisd xmm1, xmm3
jae 0x14000f25a
movabs rax, 0x8000000000000000
mov rcx, rax
divsd xmm0, qword [0x14001fa60]
lea rbx, [rdi + 0x600]
mov rdx, rbx
mulsd xmm2, qword [0x14001fa58]
cvttsd2si rax, xmm1
divsd xmm2, xmm0
add rax, rcx
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x38], rax
cvtpd2ps xmm0, xmm2
movss dword [rsp + 0x30], xmm0
call fcn.14000f3d8
mov rax, rsi
inc rax
cmp word [rbx + rax*2], r13w
jne 0x14000f29c
cmp eax, dword [rdi + 0x71c]
jle 0x14000f2b4
mov dword [rdi + 0x71c], eax
lea rbx, [rdi + 0x680]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.14000f318
inc rsi
cmp word [rbx + rsi*2], r13w
jne 0x14000f2c8
cmp esi, dword [rdi + 0x71c]
jle 0x14000f2e0
mov dword [rdi + 0x71c], esi
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.140001800
lea r11, [rsp + 0x250]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret