Function at 0x140009d10
Capabilities:
Get thread local storage value

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov edx, 0x7e1
mov qword [rsp + 0x38], 0
mov rsi, rcx
lea rcx, section..data
call sym.newObj
movdqu xmm0, xmmword [0x140069400]
mov qword [rsp + 0x38], rax
mov r15, rax
movups xmmword [rax], xmm0
test rsi, rsi
je 0x140009fe7
mov r14, qword [rsi]
xor edi, edi
add rsi, 0x10
test r14, r14
jle 0x140009fe7
nop dword [rax + rax]
mov rax, qword [rsi + 8]
cmp rax, 0xfffffffffffffff6
je 0x14000a028
cmp rax, 0xffffffffffffff9c
je 0x14000a000
xor r12d, r12d
test r15, r15
je 0x140009d93
mov r12, qword [r15]
mov r9, qword [rsi + 0x10]
test r9, r9
je 0x140009e52
movsx edx, byte [r9]
test dl, dl
je 0x140009e52
lea r13, [r9 + 1]
lea rbx, [rsp + 0x38]
nop dword [rax]
mov rcx, r15
call sym.addChar
mov rcx, rbx
mov r15, rax
call sym.isOnStack__system_5845
test al, al
jne 0x140009e38
test r15, r15
je 0x140009dd9
add qword [r15 - 0x10], 8
mov rax, qword [rsp + 0x38]
cmp rax, 0xfff
jbe 0x140009e38
mov rcx, qword [rax - 0x10]
lea r10, [rax - 0x10]
mov qword [rsp + 0x20], r10
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140009e38
mov ebp, dword [0x1400af708]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x2c], eax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, dword [rsp + 0x2c]
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rdx, qword [rsp + 0x20]
lea rcx, [rbp + 0x50]
call sym.addZCT__system_5813
nop dword [rax]
add r13, 1
mov qword [rsp + 0x38], r15
movsx edx, byte [r13 - 1]
test dl, dl
jne 0x140009db8
mov rax, qword [rsi + 8]
test rax, rax
jle 0x140009eb9
mov rcx, r15
mov edx, 1
lea rbx, [rsp + 0x38]
call sym.resizeString
mov r8d, 0x28
mov rcx, rbx
mov qword [rsp + 0x38], rax
mov rdx, qword [rax]
mov word [rax + rdx + 0x10], r8w
add qword [rax], 1
mov rdx, qword [rsi + 8]
call sym.addInt__stdZprivateZdigitsutils_167
mov rcx, qword [rsp + 0x38]
mov edx, 1
call sym.resizeString
mov r9d, 0x29
mov qword [rsp + 0x38], rax
mov rdx, qword [rax]
mov word [rax + rdx + 0x10], r9w
add qword [rax], 1
mov r15, qword [rsp + 0x38]
xor eax, eax
test r15, r15
je 0x140009ec3
mov rax, qword [r15]
sub r12, rax
mov eax, 1
mov ebx, 1
lea rbp, [r12 + 0x19]
test rbp, rbp
cmovle rbp, rax
nop dword [rax]
mov rcx, r15
mov edx, 0x20
add rbx, 1
call sym.addChar
mov qword [rsp + 0x38], rax
mov r15, rax
cmp rbp, rbx
jge 0x140009ee0
mov r9, qword [rsi]
test r9, r9
je 0x140009fae
movsx edx, byte [r9]
test dl, dl
je 0x140009fae
lea r13, [r9 + 1]
lea rbx, [rsp + 0x38]
nop
mov rcx, r15
call sym.addChar
mov rcx, rbx
mov r15, rax
call sym.isOnStack__system_5845
test al, al
jne 0x140009f98
test r15, r15
je 0x140009f41
add qword [r15 - 0x10], 8
mov rax, qword [rsp + 0x38]
cmp rax, 0xfff
jbe 0x140009f98
mov rcx, qword [rax - 0x10]
lea r12, [rax - 0x10]
lea rdx, [rcx - 8]
mov qword [rax - 0x10], rdx
cmp rdx, 7
ja 0x140009f98
mov ebp, dword [0x1400af708]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov ecx, dword [rsp + 0x20]
mov rbp, rax
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rbp + 0x50]
mov rdx, r12
call sym.addZCT__system_5813
nop dword [rax]
add r13, 1
mov qword [rsp + 0x38], r15
movsx edx, byte [r13 - 1]
test dl, dl
jne 0x140009f20
mov edx, 1
mov rcx, r15
call sym.resizeString
mov ecx, 0xa
mov qword [rsp + 0x38], rax
mov rdx, qword [rax]
mov word [rax + rdx + 0x10], cx
add qword [rax], 1
add rdi, 1
mov r15, qword [rsp + 0x38]
add rsi, 0x18
cmp r14, rdi
jne 0x140009d70
mov rax, r15
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov edx, 3
mov rcx, r15
call sym.resizeString
mov qword [rsp + 0x38], rax
mov rdx, qword [rax]
mov dword [rax + rdx + 0x10], 0xa5d5d
add qword [rax], 3
jmp 0x140009fd1
mov edx, 0x11
mov rcx, r15
movabs rbx, 0x3a6d6f7266206465
call sym.resizeString
mov r10d, 0xa
movabs rcx, 0x7369617265725b5b
mov qword [rsp + 0x38], rax
mov rdx, qword [rax]
lea rdx, [rax + rdx + 0x10]
mov qword [rdx], rcx
mov qword [rdx + 8], rbx
mov word [rdx + 0x10], r10w
add qword [rax], 0x11
jmp 0x140009fd1