Function at 0x1801828f0
Capabilities:
Get thread local storage value

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x20], rsi
mov dword [r11 + 0x18], r8d
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rbp, qword [rsp + 0x88]
xor ebx, ebx
mov r15, r9
mov r14d, r8d
mov r13, rdx
mov r12, rcx
mov rdi, rbx
mov rsi, rbx
test rbp, rbp
je 0x180182a37
cmp dword [rbp + 8], 5
jne 0x180182bcd
mov eax, dword [rbp + 0x34]
imul eax, dword [rbp + 0x30]
cmp eax, 1
jne 0x180182bb4
mov rcx, qword [rbp + 0x28]
lea rdx, [r11 + 0x30]
mov rax, qword [rcx]
call qword [rax + 0x58]
test byte [rax], 0x40
je 0x180182bb4
mov r9, qword [r12 + 0xc0]
mov r8d, 0x200
mov rdx, r13
mov rcx, r12
call fcn.180117880
mov r14, rax
test rax, rax
je 0x1801829ee
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x180182996
mov rax, rbx
jmp 0x18018299c
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, qword [rax + 8]
mov edx, 0x40
lea r8d, [rdx - 0x30]
call fcn.180243b70
mov rdi, rax
test rax, rax
je 0x1801829ee
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbx
mov dword [rax + 0x28], 0xffffffff
mov dword [rdi + 8], 8
lea rax, [0x1800434e0]
mov qword [rdi], rax
mov qword [rdi + 0x30], r14
mov dword [rdi + 0x38], 1
mov dword [rdi + 0x3c], 1
jmp 0x1801829fa
mov byte [r12 + 0x468], 1
mov rdi, rbx
test rdi, rdi
je 0x180182bd4
mov rcx, qword [rbp + 0x28]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
call fcn.180119300
test al, al
jne 0x180182a32
lea rdx, [rbp + 0x68]
lea r9, [0x180047458]
mov r8d, 0xbcc
mov rcx, r12
call fcn.18010c480
mov r14d, dword [rsp + 0x70]
mov ecx, 0x98
call fcn.180071960
mov rsi, rax
test rax, rax
je 0x180182bd1
mov dword [rax + 8], 3
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbx
mov dword [rax + 0x20], 1
mov qword [rsi + 0x30], rbx
mov qword [rsi + 0x38], rbx
mov qword [rsi + 0x40], rbx
mov qword [rsi + 0x48], rbx
mov qword [rsi + 0x50], rbx
mov qword [rsi + 0x58], rbx
mov qword [rsi + 0x60], rbx
lea rax, [0x1800418e8]
mov qword [rsi], rax
mov qword [rsi + 0x68], rbx
mov dword [rsi + 0x70], 0xffffffff
mov dword [rsi + 0x74], 0xffffffff
mov dword [rsi + 0x78], 0xffffffff
mov dword [rsi + 0x7c], 0xffffffff
mov dword [rsi + 0x80], 0xffffffff
mov dword [rsi + 0x84], ebx
mov qword [rsi + 0x88], rbx
mov dword [rsi + 0x90], ebx
mov dword [rsi + 0x28], r14d
mov eax, dword [r12 + 0x490]
mov dword [rsi + 0x90], eax
inc dword [r12 + 0x490]
mov rax, qword [rsp + 0x80]
mov qword [rsi + 0x30], rax
mov rax, qword [rsp + 0x98]
mov qword [rsi + 0x60], r15
mov qword [rsi + 0x40], rax
mov rax, qword [r13]
mov qword [rsi + 0x68], rax
mov rax, qword [r13 + 8]
mov qword [rsi + 0x70], rax
mov rax, qword [r13 + 0x10]
mov qword [rsi + 0x78], rax
mov rax, qword [r13 + 0x18]
mov qword [rsi + 0x80], rax
mov rax, qword [r13 + 0x20]
mov qword [rsi + 0x88], rax
test rbp, rbp
je 0x180182b51
mov r9, rbp
mov r8, rdi
mov rdx, r13
mov rcx, r12
mov byte [rsp + 0x20], bl
call fcn.18017e580
mov qword [rsi + 0x38], rax
test rax, rax
je 0x180182bd4
mov r9, qword [rsp + 0x90]
test r9, r9
je 0x180182b75
xor r8d, r8d
mov rdx, r13
mov rcx, r12
call fcn.180181990
mov qword [rsi + 0x58], rax
test rax, rax
je 0x180182bd4
mov ecx, 0x30
call fcn.180071960
test rax, rax
je 0x180182bd4
lea rcx, [0x180041858]
mov qword [rax + 0x18], rbx
mov dword [rax + 8], 1
mov qword [rax], rcx
lea rcx, [0x180047364]
mov dword [rax + 0x20], 1
mov qword [rax + 0x10], rsi
mov rbx, rax
mov qword [rax + 0x28], rcx
jmp 0x180182bf6
lea rdx, [rbp + 0x68]
lea r9, [0x180047480]
mov r8d, 0xbcb
mov rcx, r12
call fcn.18010c480
xor eax, eax
jmp 0x180182bf9
mov rsi, rbx
mov byte [r12 + 0x468], 1
test rsi, rsi
je 0x180182bf6
add dword [rsi + 0x20], 0xffffffff
jne 0x180182bf6
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [r8]
mov rax, rbx
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret