Function at 0x140049660
Capabilities:
Get thread local storage value

Disassembly:
push rsi
sub rsp, 0x90
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
mov rdx, qword [rcx]
mov qword [rsp + 0x70], rdx
mov rcx, rdx
add rcx, r8
mov qword [rsp + 0x78], rcx
mov rax, rcx
xor rax, rdx
mov r9, rcx
xor r9, r8
xor r9, 0xffffffffffffffff
mov rdx, r8
and rdx, r9
shl rdx, 1
sub rdx, r8
sub rcx, rdx
and rax, rcx
movabs rcx, 0xb0d78721a707972e
movabs rdx, 0xb0d78721a707972e
xor rcx, rdx
cmp rax, rcx
jge 0x1400496d7
call fcn.14000f24b
jmp 0x140049adf
mov rax, qword [rsp + 0x78]
cmp rax, 0
jge 0x1400496f6
mov rcx, r8
mov rdx, r8
call fcn.14001a720
jmp 0x140049adf
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
call fcn.140031520
mov rax, qword [rsp + 0x58]
cmp rax, 0
jle 0x140049adf
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
mov r8, rax
xor r8, 0xffffffffffffffff
movabs rdx, 0x2e69a055d0e94edd
movabs r9, 0xd1965faa2f16b122
xor rdx, r9
xor r8, rdx
and r8, 0xffffffffffffffff
shl r8, 1
sub r8, 0xffffffffffffffff
mov rdx, rax
sub rdx, r8
mov qword [rsp + 0x38], rdx
add rcx, 8
mov qword [rsp + 0x40], rcx
cmp rax, 0
setl al
mov byte [rsp + 0x4f], al
xor eax, eax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov eax, dword [0x1402744b8]
xor edx, edx
div dword [0x1402744bc]
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5756311
mov ecx, 0xffffffff
xor ecx, 0x80671598
or eax, edx
or ecx, 0x80671598
xor eax, 0xffffffff
and eax, ecx
mov edx, 0x59f7984f
xor edx, 0xa60867b0
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xfd66f9a3
and ecx, edx
or eax, 0xfd66f9a3
mov edx, 0xa20907dc
xor edx, 0x5df6f823
xor eax, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xf8595189
mov edx, 0xffffffff
xor edx, 0xf8595189
and ecx, edx
or eax, ecx
mov ecx, 0x13aab858
xor ecx, 0x7576a3f4
cmp eax, ecx
je 0x140049ae8
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x30]
mov r9d, dword [0x1402744c0]
xor r9d, 0xde675fc6
mov r11d, dword [0x1402744c4]
mov esi, r11d
xor esi, 0xffffffff
mov r10d, r9d
and r10d, esi
mov eax, r9d
or eax, esi
mov esi, 0xb5c34d1d
xor esi, 0x4a3cb2e2
xor eax, esi
imul eax, r10d
mov r10d, r9d
and r10d, r11d
or r9d, r11d
imul r9d, r10d
add r9d, eax
mov eax, r9d
xor eax, 0xffffffff
mov r10d, 0xd9b14299
xor r10d, 0x264ebd66
xor r9d, r10d
or eax, r9d
mov r9d, 0xffffffff
xor r9d, 0xbfd4b7fd
mov r10d, 0x3fab509d
xor r10d, 0x807fe760
mov r11d, 0xa514f058
xor r11d, 0x5aeb0fa7
xor r10d, r11d
or r9d, r10d
xor eax, 0xffffffff
xor r9d, 0xffffffff
or eax, r9d
add eax, 0x5bf9422d
and eax, eax
xor eax, 0xffffffff
mov r9d, 0x3bbff1f7
xor r9d, 0x16093c6e
mov r10d, 0xbb64a17a
xor r10d, 0x449b5e85
xor r9d, r10d
mov r10d, 0xffffffff
xor r10d, 0x2db6cd99
or r9d, r10d
and eax, r9d
xor eax, 0xffffffff
add rcx, r8
mov qword [rsp + 0x20], rcx
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x2f], cl
cmp eax, 0xd8863237
je 0x140049811
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140049926
jmp 0x140049930
call fcn.14000f24b
jmp 0x140049adf
mov eax, dword [0x1402744c8]
mov ecx, dword [0x1402744cc]
add eax, 0xfc687994
sub eax, ecx
mov ecx, 0xec0debb0
xor ecx, 0x10659224
sub eax, ecx
mov ecx, 0xeae65c54
xor ecx, 0x73fa1183
mov edx, 0x36072089
xor edx, 0xc9f8df76
xor ecx, edx
add eax, ecx
add eax, 1
sub eax, 0xa04f70d2
xor eax, 0xffffffff
mov edx, 0xa40d725d
xor edx, 0x2f672270
mov ecx, 0x324891c4
xor ecx, 0xcdb76e3b
xor edx, ecx
mov ecx, 0x39648943
xor ecx, 0xca014602
mov r8d, 0xea62bed1
xor r8d, 0x159d412e
xor ecx, r8d
or eax, edx
or ecx, 0xf365cf41
mov edx, 0x3ed79785
xor edx, 0xc128687a
xor eax, edx
and eax, ecx
cmp eax, 0x322757f7
jbe 0x140049af1
mov eax, dword [0x1402744d0]
xor edx, edx
div dword [0x1402744d4]
mov ecx, 0x35738734
xor ecx, 0xbc91bc1f
xor edx, edx
div ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xc1167040
and ecx, 0xc1167040
mov edx, 0xcd3add0a
xor edx, 0x32c522f5
xor ecx, edx
mov edx, 0x352cb300
xor edx, 0xcad34cff
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x9d1c5938
xor ecx, 0xee461fbf
imul eax, ecx
cmp eax, 0xd891dfbb
ja 0x140049af1
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140049a53
jmp 0x140049a40
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x68]
cmp rax, qword [rcx]
jl 0x140049a60
mov rcx, rdx
call fcn.1400292ad
jmp 0x140049adf
mov rdx, qword [rsp + 0x30]
mov rax, qword [rsp + 0x60]
mov r8, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
add rcx, 8
shl r8, 4
add rcx, r8
shl rdx, 4
add rax, rdx
mov rdx, qword [rax]
mov qword [rsp + 0x80], rdx
mov rax, qword [rax + 8]
mov qword [rsp + 0x88], rax
lea rdx, [rsp + 0x80]
call fcn.140033c40
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x58]
movabs rdx, 0xa60af18e2198fa27
movabs r8, 0xa60af18e2198fa26
xor rdx, r8
add rax, rdx
cmp rax, rcx
mov qword [rsp + 0x50], rax
and al, 0x50
jne 0x140049771
add rsp, 0x90
pop rsi
ret
xchg ebp, eax
sbb al, 0xdc
js 0x140049ad6
and ch, bh
invalid
adc esi, dword [rcx]
imul ebp, dword [rdi - 0x12f17], 0x1f0f66ff
add byte [rax], r8b