Function at 0x1400ffb9c
Capabilities:
Link many functions at runtime

Disassembly:
jmp 0x1402ecc30
push rdi
sub rsp, 0x90
lea rdi, [rsp + 0x20]
mov ecx, 0x1c
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x1404d4b80]
xor rax, rsp
mov qword [rsp + 0x80], rax
cmp qword [0x1404e9648], 0
je 0x1402ecc70
mov eax, 1
jmp 0x1402ecfd4
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x1404e9648], rax
cmp qword [0x1404e9648], 0
jne 0x1402ecca6
lea rdx, str.WGL:_Failed_to_load_opengl32.dll
mov ecx, 0x10008
call fcn.1400fd6df
xor eax, eax
jmp 0x1402ecfd4
lea rdx, str.wglCreateContext
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9650], rax
lea rdx, str.wglDeleteContext
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9658], rax
lea rdx, str.wglGetProcAddress
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9660], rax
lea rdx, str.wglGetCurrentDC
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9668], rax
lea rdx, str.wglGetCurrentContext
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9670], rax
lea rdx, str.wglMakeCurrent
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9678], rax
lea rdx, str.wglShareLists
mov rcx, qword [0x1404e9648]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1404e9680], rax
mov rcx, qword [0x1404e87a8]
call qword [sym.imp.USER32.dll_GetDC]
mov qword [rsp + 0x70], rax
mov r8d, 0x28
xor edx, edx
lea rcx, [rsp + 0x28]
call fcn.1400ff769
mov eax, 0x28
mov word [rsp + 0x28], ax
mov eax, 1
mov word [rsp + 0x2a], ax
mov dword [rsp + 0x2c], 0x25
mov byte [rsp + 0x30], 0
mov byte [rsp + 0x31], 0x18
lea rdx, [rsp + 0x28]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.GDI32.dll_ChoosePixelFormat]
lea r8, [rsp + 0x28]
mov edx, eax
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.GDI32.dll_SetPixelFormat]
test eax, eax
jne 0x1402ecdeb
lea rdx, str.WGL:_Failed_to_set_pixel_format_for_dummy_context
mov ecx, 0x10008
call fcn.1400fd6df
xor eax, eax
jmp 0x1402ecfd4
mov rcx, qword [rsp + 0x70]
call qword [0x1404e9650]
mov qword [rsp + 0x60], rax
cmp qword [rsp + 0x60], 0
jne 0x1402ece1b
lea rdx, str.WGL:_Failed_to_create_dummy_context
mov ecx, 0x10008
call fcn.1400fd6df
xor eax, eax
jmp 0x1402ecfd4
call qword [0x1404e9668]
mov qword [rsp + 0x68], rax
call qword [0x1404e9670]
mov qword [rsp + 0x58], rax
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x70]
call qword [0x1404e9678]
test eax, eax
jne 0x1402ece78
lea rdx, str.WGL:_Failed_to_make_dummy_context_current
mov ecx, 0x10008
call fcn.1400fd6df
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x68]
call qword [0x1404e9678]
mov rcx, qword [rsp + 0x60]
call qword [0x1404e9658]
xor eax, eax
jmp 0x1402ecfd4
lea rcx, str.wglGetExtensionsStringEXT
call qword [0x1404e9660]
mov qword [0x1404e9698], rax
lea rcx, str.wglGetExtensionsStringARB
call qword [0x1404e9660]
mov qword [0x1404e96a0], rax
lea rcx, str.wglCreateContextAttribsARB
call qword [0x1404e9660]
mov qword [0x1404e96a8], rax
lea rcx, str.wglSwapIntervalEXT
call qword [0x1404e9660]
mov qword [0x1404e9688], rax
lea rcx, str.wglGetPixelFormatAttribivARB
call qword [0x1404e9660]
mov qword [0x1404e9690], rax
lea rcx, str.WGL_ARB_multisample
call fcn.1402eec80
mov dword [0x1404e96b8], eax
lea rcx, str.WGL_ARB_framebuffer_sRGB
call fcn.1402eec80
mov dword [0x1404e96bc], eax
lea rcx, str.WGL_EXT_framebuffer_sRGB
call fcn.1402eec80
mov dword [0x1404e96c0], eax
lea rcx, str.WGL_ARB_create_context
call fcn.1402eec80
mov dword [0x1404e96c8], eax
lea rcx, str.WGL_ARB_create_context_profile
call fcn.1402eec80
mov dword [0x1404e96cc], eax
lea rcx, str.WGL_EXT_create_context_es2_profile
call fcn.1402eec80
mov dword [0x1404e96d0], eax
lea rcx, str.WGL_ARB_create_context_robustness
call fcn.1402eec80
mov dword [0x1404e96d4], eax
lea rcx, str.WGL_ARB_create_context_no_error
call fcn.1402eec80
mov dword [0x1404e96d8], eax
lea rcx, str.WGL_EXT_swap_control
call fcn.1402eec80
mov dword [0x1404e96b0], eax
lea rcx, str.WGL_EXT_colorspace
call fcn.1402eec80
mov dword [0x1404e96b4], eax
lea rcx, str.WGL_ARB_pixel_format
call fcn.1402eec80
mov dword [0x1404e96c4], eax
lea rcx, str.WGL_ARB_context_flush_control
call fcn.1402eec80
mov dword [0x1404e96dc], eax
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x68]
call qword [0x1404e9678]
mov rcx, qword [rsp + 0x60]
call qword [0x1404e9658]
mov eax, 1
mov rdi, rax
mov rcx, rsp
lea rdx, [0x14037e560]
call fcn.1400ffd95
mov rax, rdi
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400fe37d
add rsp, 0x90
pop rdi
ret