Function at 0x180182280
Capabilities:
Get thread local storage value

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
xor ebx, ebx
mov rbp, r9
mov r15, r8
mov r14, rdx
mov r12, rcx
mov rsi, rbx
test r9, r9
je 0x1801823dd
cmp dword [r9 + 8], 5
jne 0x1801823d6
mov eax, dword [r9 + 0x34]
imul eax, dword [r9 + 0x30]
cmp eax, 1
jne 0x1801823bd
mov rcx, qword [r9 + 0x28]
lea rdx, [rsp + 0x78]
mov rax, qword [rcx]
call qword [rax + 0x58]
test byte [rax], 0x40
je 0x1801823bd
mov r9, qword [r12 + 0x120]
mov r8d, 0x200
mov rdx, r14
mov rcx, r12
mov qword [rsp + 0x60], r13
call fcn.180117880
mov r13, rax
test rax, rax
je 0x180182372
mov ecx, dword [0x18025e63c]
test ecx, ecx
jns 0x18018231a
mov rax, rbx
jmp 0x180182320
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 0x180182372
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], r13
mov dword [rdi + 0x38], 1
mov dword [rdi + 0x3c], 1
jmp 0x18018237e
mov byte [r12 + 0x468], 1
mov rdi, rbx
mov r13, qword [rsp + 0x60]
test rdi, rdi
je 0x180182530
mov rcx, qword [rbp + 0x28]
xor r9d, r9d
xor r8d, r8d
mov rdx, rdi
call fcn.180119300
test al, al
jne 0x1801823e2
lea rdx, [rbp + 0x68]
lea r9, [0x180047498]
mov r8d, 0xbcc
mov rcx, r12
call fcn.18010c480
jmp 0x1801823e2
lea rdx, [rbp + 0x68]
lea r9, [0x180047480]
mov r8d, 0xbcb
mov rcx, r12
call fcn.18010c480
xor eax, eax
jmp 0x180182555
mov rdi, qword [rsp + 0x78]
mov ecx, 0x98
call fcn.180071960
mov rsi, rax
test rax, rax
je 0x18018252d
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], 0xb
mov eax, dword [r12 + 0x490]
mov dword [rsi + 0x90], eax
inc dword [r12 + 0x490]
mov rax, qword [rsp + 0x80]
mov qword [rsi + 0x40], rax
mov qword [rsi + 0x60], r15
mov rax, qword [r14]
mov qword [rsi + 0x68], rax
mov rax, qword [r14 + 8]
mov qword [rsi + 0x70], rax
mov rax, qword [r14 + 0x10]
mov qword [rsi + 0x78], rax
mov rax, qword [r14 + 0x18]
mov qword [rsi + 0x80], rax
mov rax, qword [r14 + 0x20]
mov qword [rsi + 0x88], rax
test rbp, rbp
je 0x1801824ee
mov r9, rbp
mov r8, rdi
mov rdx, r14
mov rcx, r12
mov byte [rsp + 0x20], bl
call fcn.18017e580
mov qword [rsi + 0x38], rax
test rax, rax
je 0x180182530
mov ecx, 0x30
call fcn.180071960
test rax, rax
je 0x180182530
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 0x180182552
mov rsi, rbx
mov byte [r12 + 0x468], 1
test rsi, rsi
je 0x180182552
add dword [rsi + 0x20], 0xffffffff
jne 0x180182552
mov r8, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [r8]
mov rax, rbx
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret