Function at 0x14000f1a9
Capabilities:
Get thread local storage value

Disassembly:
push rsi
sub rsp, 0x150
mov qword [rsp + 0x118], rdx
mov qword [rsp + 0x120], rcx
mov rax, rdx
add rax, 8
mov qword [rsp + 0x128], rax
mov rax, qword [rdx + 8]
mov qword [rsp + 0x130], rax
mov r8, rax
add r8, qword [rcx + 0x2080]
mov qword [rcx + 0x2080], r8
mov rcx, qword [rdx]
movabs r8, 0x260cccc1c82e4fd9
movabs r9, 0xd9f3333e37d1b027
xor r8, r9
and rcx, r8
mov qword [rsp + 0x138], rcx
mov qword [rdx], rcx
movabs r8, 0x46b0284d90c8804f
movabs r9, 0x46b0284d90c8804f
xor r8, r9
cmp rcx, r8
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], rdx
je 0x14000f864
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x118]
sub rdx, rcx
mov qword [rsp + 0xf0], rdx
movabs rcx, 0x4f2de326bcc63dc1
movabs r8, 0x4f2de326bcc63dcd
xor rcx, r8
mov r8, rdx
sar r8, cl
mov qword [rsp + 0xf8], r8
add rax, 0x20a0
mov qword [rsp + 0x100], rax
movabs rcx, 0x405f56ffe96472bb
movabs r8, 0x405f56ffe96472ae
xor rcx, r8
sar rdx, cl
mov qword [rsp + 0x108], rdx
movabs r8, 0x3c9a66ac1bfa1bb7
movabs rcx, 0x3c9a66ac1bfa1b48
xor r8, rcx
mov rcx, rdx
and rcx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x411161ba07e0bea3
movabs r9, 0xbeee9e45f81f415c
xor r8, r9
xor rdx, r8
movabs r8, 0x572fb6907841747a
movabs r9, 0x572fb69078417485
xor r8, r9
movabs r9, 0x8451e7f2467e52e3
movabs r10, 0x7bae180db981ad1c
xor r9, r10
xor r8, r9
or rdx, r8
and rcx, rdx
movabs rdx, 0xab4ffbc9c792ff32
movabs r8, 0x54b00436386d00cd
xor rdx, r8
xor rcx, rdx
shl rcx, 3
add rax, rcx
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0x110]
mov rdx, qword [rdx]
mov qword [rsp + 0xe8], rdx
cmp rdx, 0
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
je 0x14000f864
mov rax, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x108]
cmp qword [rax + 8], rcx
mov qword [rsp + 0x110], rax
jne 0x14000f358
mov rax, qword [rsp + 0x118]
mov r8, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0xe8]
movabs rcx, 0xcebdab739bc52dc4
movabs r9, 0xcebdab739bc52dc2
xor rcx, r9
shr r8, cl
mov rcx, qword [rsp + 0xf8]
and r8, 7
mov rdx, qword [rdx + r8*8 + 0x10]
movabs r9, 0x43f505c517283fc3
movabs r8, 0x43f505c517283ffc
xor r9, r8
mov r8, rcx
xor r8, r9
xor r8, 0xffffffffffffffff
movabs r9, 0x2c2c98a9c4b283b2
movabs r10, 0x2c2c98a9c4b2838d
xor r9, r10
or rcx, r9
and rcx, r8
mov r9d, 1
shl r9, cl
mov rcx, qword [rsp + 0x130]
or rdx, rdx
xor rdx, 0xffffffffffffffff
movabs r10, 0x9b049d36b34fa9b2
movabs r8, 0x64fb62c94cb0564d
xor r10, r8
mov r8, r9
xor r8, r10
movabs r10, 0x4a7fdb17364f2d0
movabs r11, 0xfb58024e8c9b0d2f
xor r10, r11
xor r9, r10
and r8, r9
movabs r9, 0xba7df3ab3cc04393
movabs r10, 0x45820c54c33fbc6c
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
movabs r8, 0xcb738ff0ffbe08d3
movabs r9, 0xcb738ff0ffbe08d3
xor r8, r9
cmp rdx, r8
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
je 0x14000f864
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0xf0]
mov r8, qword [rdx]
mov rdx, r8
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8d, 1
or r8, 1
movabs r9, 0xc32a7c98000c2753
movabs r10, 0x3cd58367fff3d8ac
xor r9, r10
xor r8, r9
or rdx, r8
xor rdx, 0xffffffffffffffff
cmp rdx, 0
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
jne 0x14000f864
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x130]
mov rdx, qword [rsp + 0xf0]
mov r8, rdx
add r8, 8
mov qword [rsp + 0xe0], r8
mov rdx, qword [rdx + 8]
add rdx, 0xfffffffffffff04f
cmp rdx, 0x3efff04f
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
jae 0x14000f864
mov rdx, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x120]
call fcn.14000ec60
mov r8, qword [rsp + 0x128]
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0x118]
mov rax, qword [rsp + 0x100]
mov r8, qword [r8]
add r8, qword [rcx]
mov qword [rsp + 0xc0], r8
mov qword [rcx], r8
mov rcx, rdx
sar rcx, 0xc
mov qword [rsp + 0xc8], rcx
movabs rcx, 0xc2f041751a5a8098
movabs r8, 0xc2f041751a5a808d
xor rcx, r8
sar rdx, cl
mov qword [rsp + 0xd0], rdx
mov rcx, rdx
and rcx, 0xff
shl rcx, 3
add rax, rcx
mov qword [rsp + 0xd8], rax
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xd8]
mov rcx, qword [rcx]
mov qword [rsp + 0xb0], rcx
cmp rcx, 0
mov qword [rsp + 0xb8], rax
je 0x14000f7bf
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xd0]
cmp qword [rax + 8], rcx
mov qword [rsp + 0xd8], rax
jne 0x14000f628
mov rax, qword [rsp + 0xe0]
mov r8, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xc8]
mov rdx, rcx
shr rdx, 6
movabs r9, 0x14a3e229a47a02de
movabs r10, 0xeb5c1dd65b85fd21
xor r9, r10
xor rdx, r9
mov r9, 0xffffffffffffffff
xor r9, 7
movabs r10, 0x4086f58d1fa94ee3
movabs r11, 0x9ce9f5ab3ea3bf06
xor r10, r11
movabs r11, 0x2877af04bdb4516b
movabs rsi, 0xd78850fb424bae94
xor r11, rsi
xor r10, r11
or rdx, r9
movabs r9, 0xb73f2352aa17b519
movabs r11, 0x6b5023748b1d44fc
xor r9, r11
or r9, r10
xor rdx, 0xffffffffffffffff
and rdx, r9
mov r9, qword [r8 + rdx*8 + 0x10]
or rcx, rcx
xor rcx, 0xffffffffffffffff
movabs r8, 0x9b31f06b6d661c15
movabs r10, 0x9b31f06b6d661c2a
xor r8, r10
movabs r10, 0x796a0be5feeeb5b8
movabs r11, 0x8695f41a01114a47
xor r10, r11
xor r8, r10
mov r10, 0xffffffffffffffff
xor r10, 0x3f
and r8, r10
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
movabs r10, 0x356b662afa638091
movabs r8, 0x356b662afa638090
xor r10, r8
shl r10, cl
mov rcx, qword [rsp + 0xb0]
xor r10, 0xffffffffffffffff
movabs r8, 0x5c72e02217517bb0
movabs r11, 0xa38d1fdde8ae844f
xor r8, r11
xor r10, r8
mov r8, r9
xor r8, r10
and r8, r9
mov qword [rcx + rdx*8 + 0x10], r8
mov rax, qword [rax]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xb8]
movabs rdx, 0x7ec289fa2d4ab156
movabs r8, 0x7ec289fa124ab156
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
jle 0x14000f864
mov rdx, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0x120]
movabs r8, 0x3dcf5b2d24bfec2b
movabs rax, 0x3dcf5b2d1bbfec2b
xor r8, rax
call fcn.14000c054
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rsp + 0xf0]
mov qword [rsp + 0xa8], rax
call fcn.14000c3e7
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov rax, qword [rsp + 0x120]
mov rcx, qword [rsp + 0x140]
mov r8, qword [rsp + 0x148]
mov qword [rsp + 0x68], r8
mov qword [rsp + 0x70], rcx
mov rdx, r8
add rdx, 8
mov qword [rsp + 0x78], rdx
movabs rdx, 0x966ef3796ee55ad8
movabs r9, 0x966ef3796ee55ad8
xor rdx, r9
sub rdx, rcx
xor ecx, ecx
sub rcx, r8
add rdx, rcx
movabs rcx, 0x99921c7c661f4636
movabs r8, 0x99921c7c661f4636
xor rcx, r8
sub rcx, rdx
mov qword [rsp + 0x80], rcx
mov rdx, rcx
sar rdx, 0xc
mov qword [rsp + 0x88], rdx
add rax, 0x20a0
sar rcx, 0x15
mov qword [rsp + 0x90], rcx
movabs rdx, 0x1f9242f050a3c8
movabs r8, 0x1f9242f050a337
xor rdx, r8
and rcx, rdx
shl rcx, 3
add rax, rcx
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax]
mov qword [rsp + 0x60], rax
cmp rax, 0
je 0x14000fc8e
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x90]
cmp qword [rax + 8], rcx
mov qword [rsp + 0xa0], rax
jne 0x14000f928
mov rdx, qword [rsp + 0x88]
mov rax, qword [rsp + 0x60]
mov rcx, rdx
shr rcx, 6
movabs r8, 0xaddada69b609514d
movabs r9, 0x5225259649f6aeb2
xor r8, r9
xor rcx, r8
movabs r9, 0x658a36c685fe4e0
movabs r8, 0x658a36c685fe4e7
xor r9, r8
movabs r8, 0xad2cb21b459e7dff
movabs r10, 0x52d34de4ba618200
xor r8, r10
xor r9, r8
movabs r8, 0x6023c0f29f97b776
movabs r10, 0x94cd923e966bb63a
xor r8, r10
movabs r10, 0x186bbd4dfdc3126f
movabs r11, 0xe79442b2023ced90
xor r10, r11
xor r8, r10
or rcx, r9
movabs r9, 0xf4ee52cc09fc014c
or r8, r9
xor rcx, 0xffffffffffffffff
and rcx, r8
mov qword [rsp + 0x50], rcx
mov rax, qword [rax + rcx*8 + 0x10]
mov r8, 0xffffffffffffffff
xor r8, 0x3f
mov rcx, rdx
xor rcx, r8
and rcx, rdx
movabs rdx, 0xbbe6c3c8867e3fbf
movabs r8, 0xbbe6c3c8867e3fbe
xor rdx, r8
shl rdx, cl
mov qword [rsp + 0x58], rdx
xor rax, 0xffffffffffffffff
movabs rcx, 0xdf7014c6ce3efb79
movabs r8, 0x208feb3931c10486
xor rcx, r8
xor rdx, rcx
movabs rcx, 0x9ec001a1c0894323
movabs r8, 0xc51d7af78b24d993
xor rcx, r8
movabs r8, 0xe87631fa23761403
movabs r9, 0x1789ce05dc89ebfc
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x5bdd7b564bad9ab0
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
je 0x14000fc8e
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
or rax, rax
movabs rcx, 0xce497846ad1a9c57
movabs rdx, 0x31b687b952e563a8
xor rcx, rdx
xor rax, rcx
mov ecx, 1
or rcx, 1
movabs rdx, 0x9ac6310f3cc26a5e
movabs r8, 0x6539cef0c33d95a1
xor rdx, r8
xor rcx, rdx
or rax, rcx
movabs rcx, 0x92cd12c467045a27
movabs rdx, 0x6d32ed3b98fba5d8
xor rcx, rdx
xor rax, rcx
movabs rcx, 0x5632dc6e06d16413
movabs rdx, 0x5632dc6e06d16413
xor rcx, rdx
cmp rax, rcx
jne 0x14000fc8e
mov rcx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x80]
mov rdx, rax
add rdx, 8
mov qword [rsp + 0x48], rdx
mov rax, qword [rax + 8]
sub rax, 0xfb1
setge al
sub rcx, 0x3f000000
setl cl
and al, cl
test al, 1
jne 0x14000fb7c
jmp 0x14000fc8e
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x120]
call fcn.14000ec60
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x78]
mov rax, qword [rsp + 0x98]
mov r9, qword [rdx]
mov rdx, qword [rcx]
mov r8, rdx
and r8, r9
shl r8, 1
xor rdx, r9
add rdx, r8
mov qword [rsp + 0x38], rdx
mov qword [rcx], rdx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
cmp rcx, 0
mov qword [rsp + 0x30], rax
je 0x14000fc30
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x90]
cmp qword [rax + 8], rcx
mov qword [rsp + 0x40], rax
jne 0x14000fbc6
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x50]
mov r9, qword [rsp + 0x58]
mov r8, qword [rcx + rdx*8 + 0x10]
xor r9, 0xffffffffffffffff
and r8, r9
mov qword [rcx + rdx*8 + 0x10], r8
mov rax, qword [rax]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x30]
movabs rcx, 0x970057f77a1b3b71
movabs rdx, 0x970057f7451b3b71
xor rcx, rdx
cmp rax, rcx
jle 0x14000fc8e
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x68]
movabs r8, 0x2202f56339a75177
movabs rax, 0x2202f56306a75177
xor r8, rax
call fcn.14000c054
mov rcx, qword [rsp + 0x120]
mov rdx, rax
call fcn.14000c3e7
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x120]
add rsp, 0x150
pop rsi
jmp fcn.14000c3e7