Function at 0x14001d970
Capabilities:
Encode data using xor
Get thread local storage value

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x80], rcx
mov eax, dword [0x1402a8c98]
imul eax, dword [0x1402a8c9c]
xor eax, 0x294971d3
mov ecx, 0xb2dcb715
xor ecx, 0x3bf7a382
add eax, ecx
sub eax, 0x7ef579a2
sub eax, 0x892b1497
or eax, 0xa22173d4
cmp eax, 0xfec3d7d
jbe 0x14001dd5c
mov eax, dword [0x1402a8ca0]
mov ecx, dword [0x1402a8ca4]
xor ecx, 0x284a4708
xor edx, edx
div ecx
mov ecx, 0xcaefb538
xor edx, edx
div ecx
mov ecx, 0x272bca58
xor ecx, 0x8a4e79dd
sub eax, ecx
mov ecx, 0x65e9ffb5
xor ecx, 0x95ffae27
sub eax, ecx
add eax, 0xad65b385
mov ecx, 0x66f3f04a
xor edx, edx
div ecx
mov dword [rsp + 0x5c], eax
mov ecx, dword [0x1402d10b0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rsp + 0x80]
mov rdx, rax
mov eax, dword [rsp + 0x5c]
mov qword [rsp + 0x60], rdx
mov rcx, qword [rcx]
mov qword [rsp + 0x68], rcx
mov rcx, qword [rcx]
mov qword [rsp + 0x70], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x7f], cl
cmp eax, 0x2f0442ca
je 0x14001d9b8
mov rax, qword [rsp + 0x68]
mov cl, byte [rsp + 0x7f]
test cl, 1
mov qword [rsp + 0x50], rax
jne 0x14001dbbe
jmp 0x14001da65
mov eax, dword [0x1402a8ca8]
mov edx, dword [0x1402a8cac]
xor edx, 0xd6368d04
xor ecx, ecx
sub ecx, edx
sub eax, ecx
or eax, 0x7e230cee
mov ecx, 0x9f680d04
xor ecx, 0xb531b3dc
or eax, ecx
sub eax, 0xdbb2cac6
cmp eax, 0x7da263af
je 0x14001dd65
mov rcx, qword [rsp + 0x80]
mov eax, dword [0x1402a8cb0]
xor edx, edx
div dword [0x1402a8cb4]
mov edx, eax
mov rax, qword [rsp + 0x70]
mov r8d, 0x819b8abf
xor r8d, 0x7e647540
mov r9d, edx
xor r9d, r8d
and r9d, 0x734ba717
mov r10d, 0xffffffff
xor r10d, 0x734ba717
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0x734ba717
or edx, 0x734ba717
imul edx, r9d
add edx, r8d
mov r8d, 0x34f070a
xor r8d, 0x807f22b4
sub edx, r8d
sub edx, 0x7701404
add edx, 0x833025be
mov r8d, 0xa8472f0f
xor r8d, 0x57b8d0f0
mov r9d, edx
xor r9d, r8d
and r9d, 0x6c59178b
mov r10d, 0xffffffff
xor r10d, 0x6c59178b
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r9d, edx
and r9d, 0x6c59178b
or edx, 0x6c59178b
imul edx, r9d
add edx, r8d
mov dword [rsp + 0x48], edx
mov edx, 0x92fecd38
xor edx, 0x6df5a5e7
mov dword [rsp + 0x44], edx
call rax
mov rdx, qword [rsp + 0x60]
mov ecx, dword [rsp + 0x44]
mov eax, dword [rsp + 0x48]
cmp byte [rdx + 0x60], 0
sete dl
mov byte [rsp + 0x4f], dl
cmp eax, ecx
jae 0x14001dd65
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x14001dbae
jmp 0x14001dd54
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov eax, dword [0x1402a8cb8]
xor eax, 0xded9cdea
mov edx, dword [0x1402a8cbc]
xor edx, 0x11083d03
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0xff213a8
xor ecx, 0xfb38921b
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0x83cbe880
add ecx, eax
add ecx, 1
mov edx, 0xb2675ce6
xor edx, 0x4d98a319
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xf502607f
or eax, edx
xor ecx, 0xffffffff
mov edx, 0x9e4e256b
xor edx, 0x6b4c4514
mov r8d, 0x95186c9c
xor r8d, 0x6ae79363
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x822edbbc
jae 0x14001dd6e
mov rax, qword [rsp + 0x38]
mov r9d, dword [str.6YX_]
mov ecx, 0x97e0e2d9
xor ecx, 0xae8225bf
xor r9d, ecx
mov r8d, dword [0x1402a8cc4]
mov ecx, r9d
xor ecx, 0xffffffff
and ecx, 0x1eb870a1
mov r10d, 0xffffffff
xor r10d, 0x1eb870a1
and r9d, r10d
mov edx, r8d
xor edx, 0xffffffff
mov r11d, 0x7833e63e
xor r11d, 0x668b969f
and edx, r11d
and r8d, r10d
or ecx, r9d
or edx, r8d
xor ecx, edx
imul ecx, ecx, 0x122afd2b
mov edx, 0x44c504d0
xor edx, 0xb697d1be
add ecx, edx
mov edx, ecx
and edx, 0x48bd508b
shl edx, 1
add ecx, 0x48bd508b
sub ecx, edx
mov dword [rsp + 0x34], ecx
mov ecx, 0xa4fee833
xor ecx, 0x4cfd55f6
mov dword [rsp + 0x30], ecx
movsx rdx, word [rax + 0x10]
mov qword [rsp + 0x28], rdx
mov ecx, 0x10
call fcn.14000eb10
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x28]
movabs r8, 0x3767d3878c9803e0
movabs r9, 0xc8982c787367fc1f
xor r8, r9
xor rax, r8
add rcx, rax
add rcx, 1
call fcn.14001a8c0
mov ecx, dword [rsp + 0x30]
mov eax, dword [rsp + 0x34]
cmp eax, ecx
jae 0x14001dc61
jmp 0x14001dd54
add rsp, 0x88
ret
scasd eax, dword [rdi]
cmp dword [rdx + 0x3f], esi
jmp 0x14001d9b8
sub al, 0xaf
invalid
invalid