Function at 0x22dad2eb0
Capabilities:
Get thread local storage value

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x60
lea rax, [0x22dd116d9]
lea rdi, [0x22dd116cb]
movq xmm1, rax
movq xmm0, rdi
mov eax, dword [rdx + 4]
punpcklqdq xmm0, xmm1
mov dword [rcx + 0x20c], eax
mov rsi, rcx
mov rbp, rdx
mov dword [rcx + 0x208], 0x30001
cmp dword [0x22ddd96ec], 1
mov qword [rsp + 0x58], 0
movups xmmword [rsp + 0x48], xmm0
je 0x22dad2f24
mov r8d, 0x40
lea rdx, [0x22dd11068]
lea rcx, [0x22dd11190]
call qword [sym.imp.msvcrt.dll__wassert]
mov ecx, dword [0x22ddd96f0]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rcx, rsi
mov r14, rax
call fcn.22dad2a10
lea rcx, [0x22dd116e4]
call qword [rsi + 0x270]
lea rcx, [0x22dd116f2]
mov qword [rsi + 0x240], rax
call qword [rsi + 0x270]
cmp qword [rsi + 0x240], 0
mov qword [rsi + 0x248], rax
je 0x22dad30e8
test rax, rax
je 0x22dad30e8
mov ecx, 0x1f02
call rax
mov r13, rax
test rax, rax
je 0x22dad3270
lea rdi, [rsp + 0x40]
mov ebx, 0xd
lea r12, [0x22dd116bd]
jmp 0x22dad2fb8
mov r12, qword [rdi + 8]
add rdi, 8
test r12, r12
je 0x22dad2fd7
mov rcx, r12
call sub.msvcrt.dll_strlen
mov rbx, rax
mov r8, rbx
mov rdx, r12
mov rcx, r13
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x22dad2fa0
mov dword [rsi + 0x208], 0x30002
add r13, rbx
lea rax, [rsi + 0x218]
lea r9, [rsi + 0x214]
mov rcx, r13
mov qword [rsp + 0x20], rax
lea r8, [rsi + 0x210]
lea rdx, [0x22dd1177d]
call fcn.22dad1bf0
mov r12d, eax
test eax, eax
je 0x22dad30b8
mov eax, dword [rsi + 0x210]
mov r8d, dword [rbp + 8]
cmp eax, r8d
jl 0x22dad3260
je 0x22dad31f0
cmp eax, 2
jle 0x22dad3120
lea rcx, [0x22dd11855]
call qword [rsi + 0x270]
mov qword [rsi + 0x238], rax
test rax, rax
je 0x22dad30e8
cmp dword [rsi + 0x208], 0x30001
jne 0x22dad3298
mov eax, dword [rsi + 0x210]
cmp eax, 2
jle 0x22dad3139
lea rdx, [rsp + 0x3c]
mov ecx, 0x821e
call qword [rsi + 0x240]
mov eax, dword [rsp + 0x3c]
test al, 1
je 0x22dad308b
mov dword [rsi + 0x21c], 1
test al, 2
je 0x22dad334d
mov dword [rsi + 0x220], 1
test al, 8
je 0x22dad30ab
mov dword [rsi + 0x224], 1
mov eax, dword [rsi + 0x210]
jmp 0x22dad3130
cmp dword [rsi + 0x208], 0x30001
je 0x22dad3240
lea rdx, str.No_version_found_in_OpenGL_ES_version_string
mov ecx, 0x10008
call fcn.22dad20f0
mov rcx, r14
call fcn.22dad2a10
jmp 0x22dad3104
lea rdx, str.Entry_point_retrieval_is_broken
mov ecx, 0x10008
call fcn.22dad20f0
mov rcx, r14
xor r12d, r12d
call fcn.22dad2a10
mov eax, r12d
add rsp, 0x60
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
cmp dword [rsi + 0x208], 0x30001
jne 0x22dad3298
cmp eax, 3
jg 0x22dad32c0
cmp eax, 3
je 0x22dad32b1
lea rcx, str.GL_ARB_robustness
call fcn.22dad2c90
test eax, eax
je 0x22dad317c
lea rdx, [rsp + 0x3c]
mov ecx, 0x8256
call qword [rsi + 0x240]
mov eax, dword [rsp + 0x3c]
cmp eax, 0x8252
je 0x22dad338d
cmp eax, 0x8261
je 0x22dad333e
lea rcx, str.GL_KHR_context_flush_control
call fcn.22dad2c90
test eax, eax
je 0x22dad31b2
lea rdx, [rsp + 0x3c]
mov ecx, 0x82fb
call qword [rsi + 0x240]
mov eax, dword [rsp + 0x3c]
test eax, eax
jne 0x22dad3301
mov dword [rsi + 0x230], 0x35002
lea rcx, [0x22dd118cc]
call qword [rsi + 0x270]
mov ecx, 0x4000
call rax
mov eax, dword [rsi + 0x30]
test eax, eax
je 0x22dad31d6
mov rcx, rsi
call qword [rsi + 0x258]
mov rcx, r14
mov r12d, 1
call fcn.22dad2a10
jmp 0x22dad3104
mov edx, dword [rsi + 0x214]
mov r9d, dword [rbp + 0xc]
cmp edx, r9d
jge 0x22dad3024
nop dword [rax + rax]
cmp dword [rsi + 0x208], 0x30001
mov dword [rsp + 0x28], edx
mov dword [rsp + 0x20], eax
je 0x22dad32eb
lea rdx, str.Requested_OpenGL_ES_version__i._i__got_version__i._i
mov ecx, 0x10007
call fcn.22dad20f0
jmp 0x22dad30f9
lea rdx, str.No_version_found_in_OpenGL_version_string
mov ecx, 0x10008
call fcn.22dad20f0
jmp 0x22dad30d9
mov edx, dword [rsi + 0x214]
mov r9d, dword [rbp + 0xc]
jmp 0x22dad3208
cmp dword [rbp], 0x30001
je 0x22dad3377
lea rdx, str.OpenGL_ES_version_string_retrieval_is_broken
mov ecx, 0x10008
call fcn.22dad20f0
jmp 0x22dad30f9
lea rcx, str.GL_EXT_robustness
call fcn.22dad2c90
test eax, eax
je 0x22dad317c
jmp 0x22dad3152
cmp dword [rsi + 0x214], 1
jle 0x22dad3142
nop
lea rdx, [rsp + 0x3c]
mov ecx, 0x9126
call qword [rsi + 0x240]
mov eax, dword [rsp + 0x3c]
test al, 2
jne 0x22dad332f
test al, 1
je 0x22dad331b
mov dword [rsi + 0x228], 0x32001
jmp 0x22dad3142
lea rdx, str.Requested_OpenGL_version__i._i__got_version__i._i
mov ecx, 0x10007
call fcn.22dad20f0
jmp 0x22dad30f9
cmp eax, 0x82fc
jne 0x22dad31b2
mov dword [rsi + 0x230], 0x35001
jmp 0x22dad31b2
lea rcx, [0x22dd11876]
call fcn.22dad2c90
test eax, eax
je 0x22dad3142
mov dword [rsi + 0x228], 0x32002
jmp 0x22dad3142
mov dword [rsi + 0x22c], 0x31001
jmp 0x22dad317c
lea rcx, [0x22dd11862]
call fcn.22dad2c90
test eax, eax
je 0x22dad336e
mov edx, dword [rbp + 0x14]
test edx, edx
je 0x22dad336e
mov dword [rsi + 0x220], 1
mov eax, dword [rsp + 0x3c]
jmp 0x22dad309d
lea rdx, str.OpenGL_version_string_retrieval_is_broken
mov ecx, 0x10008
call fcn.22dad20f0
jmp 0x22dad30f9
mov dword [rsi + 0x22c], 0x31002
jmp 0x22dad317c