Function at 0x480d40
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
push esi
push edi
lea edi, [ebp - 0x44]
mov ecx, 0x11
mov eax, 0xcccccccc
rep stosd dword es:[edi], eax
mov eax, dword [0x4bf380]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x56dae0], 0
je 0x480d74
mov eax, 1
jmp 0x48115d
mov esi, esp
push str.opengl32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
cmp esi, esp
call fcn.00486698
mov dword [0x56dae0], eax
cmp dword [0x56dae0], 0
jne 0x480daf
push str.WGL:_Failed_to_load_opengl32.dll
push 0x10008
call fcn.0047eea0
add esp, 8
xor eax, eax
jmp 0x48115d
mov esi, esp
push str.wglCreateContext
mov eax, dword [0x56dae0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56dae4], eax
mov esi, esp
push str.wglDeleteContext
mov ecx, dword [0x56dae0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56dae8], eax
mov esi, esp
push str.wglGetProcAddress
mov edx, dword [0x56dae0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56daec], eax
mov esi, esp
push str.wglGetCurrentDC
mov eax, dword [0x56dae0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56daf0], eax
mov esi, esp
push str.wglGetCurrentContext
mov ecx, dword [0x56dae0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56daf4], eax
mov esi, esp
push str.wglMakeCurrent
mov edx, dword [0x56dae0]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56daf8], eax
mov esi, esp
push str.wglShareLists
mov eax, dword [0x56dae0]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp esi, esp
call fcn.00486698
mov dword [0x56dafc], eax
mov esi, esp
mov ecx, dword [0x56ccb8]
push ecx
call dword [sym.imp.USER32.dll_GetDC]
cmp esi, esp
call fcn.00486698
mov dword [ebp - 0x44], eax
push 0x28
push 0
lea edx, [ebp - 0x30]
push edx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x28
mov word [ebp - 0x30], ax
mov ecx, 1
mov word [ebp - 0x2e], cx
mov dword [ebp - 0x2c], 0x25
mov byte [ebp - 0x28], 0
mov byte [ebp - 0x27], 0x18
mov esi, esp
lea edx, [ebp - 0x30]
push edx
mov edi, esp
lea eax, [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x44]
push ecx
call dword [sym.imp.GDI32.dll_ChoosePixelFormat]
cmp edi, esp
call fcn.00486698
push eax
mov edx, dword [ebp - 0x44]
push edx
call dword [sym.imp.GDI32.dll_SetPixelFormat]
cmp esi, esp
call fcn.00486698
test eax, eax
jne 0x480f22
push str.WGL:_Failed_to_set_pixel_format_for_dummy_context
push 0x10008
call fcn.0047eea0
add esp, 8
xor eax, eax
jmp 0x48115d
mov esi, esp
mov eax, dword [ebp - 0x44]
push eax
call dword [0x56dae4]
cmp esi, esp
call fcn.00486698
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jne 0x480f57
push str.WGL:_Failed_to_create_dummy_context
push 0x10008
call fcn.0047eea0
add esp, 8
xor eax, eax
jmp 0x48115d
mov esi, esp
call dword [0x56daf0]
cmp esi, esp
call fcn.00486698
mov dword [ebp - 0x40], eax
mov esi, esp
call dword [0x56daf4]
cmp esi, esp
call fcn.00486698
mov dword [ebp - 0x38], eax
mov esi, esp
mov ecx, dword [ebp - 0x3c]
push ecx
mov edx, dword [ebp - 0x44]
push edx
call dword [0x56daf8]
cmp esi, esp
call fcn.00486698
test eax, eax
jne 0x480fd9
push str.WGL:_Failed_to_make_dummy_context_current
push 0x10008
call fcn.0047eea0
add esp, 8
mov esi, esp
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x40]
push ecx
call dword [0x56daf8]
cmp esi, esp
call fcn.00486698
mov esi, esp
mov edx, dword [ebp - 0x3c]
push edx
call dword [0x56dae8]
cmp esi, esp
call fcn.00486698
xor eax, eax
jmp 0x48115d
mov esi, esp
push str.wglGetExtensionsStringEXT
call dword [0x56daec]
cmp esi, esp
call fcn.00486698
mov dword [0x56db08], eax
mov esi, esp
push str.wglGetExtensionsStringARB
call dword [0x56daec]
cmp esi, esp
call fcn.00486698
mov dword [0x56db0c], eax
mov esi, esp
push str.wglCreateContextAttribsARB
call dword [0x56daec]
cmp esi, esp
call fcn.00486698
mov dword [0x56db10], eax
mov esi, esp
push str.wglSwapIntervalEXT
call dword [0x56daec]
cmp esi, esp
call fcn.00486698
mov dword [0x56db00], eax
mov esi, esp
push str.wglGetPixelFormatAttribivARB
call dword [0x56daec]
cmp esi, esp
call fcn.00486698
mov dword [0x56db04], eax
push str.WGL_ARB_multisample
call fcn.00482ca0
add esp, 4
mov dword [0x56db1c], eax
push str.WGL_ARB_framebuffer_sRGB
call fcn.00482ca0
add esp, 4
mov dword [0x56db20], eax
push str.WGL_EXT_framebuffer_sRGB
call fcn.00482ca0
add esp, 4
mov dword [0x56db24], eax
push str.WGL_ARB_create_context
call fcn.00482ca0
add esp, 4
mov dword [0x56db2c], eax
push str.WGL_ARB_create_context_profile
call fcn.00482ca0
add esp, 4
mov dword [0x56db30], eax
push str.WGL_EXT_create_context_es2_profile
call fcn.00482ca0
add esp, 4
mov dword [0x56db34], eax
push str.WGL_ARB_create_context_robustness
call fcn.00482ca0
add esp, 4
mov dword [0x56db38], eax
push str.WGL_ARB_create_context_no_error
call fcn.00482ca0
add esp, 4
mov dword [0x56db3c], eax
push str.WGL_EXT_swap_control
call fcn.00482ca0
add esp, 4
mov dword [0x56db14], eax
push str.WGL_EXT_colorspace
call fcn.00482ca0
add esp, 4
mov dword [0x56db18], eax
push str.WGL_ARB_pixel_format
call fcn.00482ca0
add esp, 4
mov dword [0x56db28], eax
push str.WGL_ARB_context_flush_control
call fcn.00482ca0
add esp, 4
mov dword [0x56db40], eax
mov esi, esp
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x40]
push ecx
call dword [0x56daf8]
cmp esi, esp
call fcn.00486698
mov esi, esp
mov edx, dword [ebp - 0x3c]
push edx
call dword [0x56dae8]
cmp esi, esp
call fcn.00486698
mov eax, 1
push edx
mov ecx, ebp
push eax
lea edx, [0x481188]
call fcn.00486644
pop eax
pop edx
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00485c99
add esp, 0x44
cmp ebp, esp
call fcn.00486698
mov esp, ebp
pop ebp
ret