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

Disassembly:
push rsi
push rdi
sub rsp, 0x38
mov rsi, rcx
mov ecx, dword [0x140251b48]
test ecx, ecx
je 0x140209df2
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jb 0x140209d22
mov rdi, rax
cmp qword [rax + 8], 0
jne 0x140209dec
mov ecx, dword [0x140251b48]
test ecx, ecx
je 0x140209e14
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
je 0x140209e31
mov rdi, rax
test rax, rax
jne 0x140209d98
mov rax, qword [0x14031ef28]
movzx eax, byte [rax]
mov ecx, 0x18
mov edx, 8
call fcn.14000ea30
test rax, rax
je 0x140209e50
mov rdi, rax
lea rax, [0x140251b30]
mov qword [rdi], rax
mov qword [rdi + 8], 0
mov ecx, dword [0x140251b48]
test ecx, ecx
je 0x140209e3d
dec ecx
mov rdx, rdi
call sub.KERNEL32.dll_TlsSetValue
test rsi, rsi
je 0x140209db2
mov rax, qword [rsi]
mov qword [rsi], 0
test rax, rax
je 0x140209db4
mov rax, qword [rsi + 8]
jmp 0x140209db4
xor eax, eax
mov rdx, qword [rdi + 8]
mov rcx, qword [rdi + 0x10]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x30], rcx
mov qword [rdi + 8], 1
mov qword [rdi + 0x10], rax
test rdx, rdx
je 0x140209dec
test rcx, rcx
je 0x140209dec
lock dec qword [rcx]
jne 0x140209dec
lea rcx, [rsp + 0x30]
call fcn.1401c0f30
add rdi, 0x10
jmp 0x140209e33
lea rcx, [0x140251b30]
call fcn.140200490
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jae 0x140209d14
jmp 0x140209d22
lea rcx, [0x140251b30]
call fcn.140200490
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
jne 0x140209d41
xor edi, edi
mov rax, rdi
add rsp, 0x38
pop rdi
pop rsi
ret
lea rcx, [0x140251b30]
call fcn.140200490
mov ecx, eax
jmp 0x140209d90
mov ecx, 8
mov edx, 0x18
call fcn.140226c80
ud2

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

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rsi, rcx
mov ecx, dword [0x140251b68]
test ecx, ecx
je 0x140209e9f
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jb 0x140209eb8
cmp byte [rax + 8], 0
je 0x140209eb8
add rax, 9
jmp 0x140209f60
lea rcx, case.0x1401e54b1.169
call fcn.140200490
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 2
jae 0x140209e90
mov ecx, dword [0x140251b68]
test ecx, ecx
je 0x140209f41
dec ecx
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
je 0x140209f5e
mov rdi, rax
test rax, rax
jne 0x140209f1e
mov rax, qword [0x14031ef28]
movzx eax, byte [rax]
mov ecx, 0x10
mov edx, 8
call fcn.14000ea30
test rax, rax
je 0x140209f77
mov rdi, rax
lea rax, case.0x1401e54b1.169
mov qword [rdi], rax
mov byte [rdi + 8], 0
mov ecx, dword [0x140251b68]
test ecx, ecx
je 0x140209f67
dec ecx
mov rdx, rdi
call sub.KERNEL32.dll_TlsSetValue
xor ecx, ecx
test rsi, rsi
je 0x140209f34
cmp byte [rsi], 0
mov byte [rsi], 0
movzx eax, byte [rsi + 1]
cmove eax, ecx
mov ecx, eax
lea rax, [rdi + 9]
mov byte [rdi + 8], 1
mov byte [rdi + 9], cl
jmp 0x140209f60
lea rcx, case.0x1401e54b1.169
call fcn.140200490
mov ecx, eax
call sub.KERNEL32.dll_TlsGetValue
cmp rax, 1
jne 0x140209ed3
xor eax, eax
add rsp, 0x28
pop rdi
pop rsi
ret
lea rcx, case.0x1401e54b1.169
call fcn.140200490
mov ecx, eax
jmp 0x140209f16
mov ecx, 8
mov edx, 0x10
call fcn.140226c80
ud2