Function at 0x446c60
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [0x49d1cc]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x49f808], 0
mov dword [ebp - 0x10], str.libEGL.dll
mov dword [ebp - 0xc], str.EGL.dll
mov dword [ebp - 8], 0
je 0x446ca1
mov eax, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045b938
mov esp, ebp
pop ebp
ret
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
xor esi, esi
mov eax, str.libEGL.dll
push eax
call edi
mov dword [0x49f808], eax
test eax, eax
jne 0x446ce9
mov eax, dword [ebp + esi*4 - 0xc]
inc esi
test eax, eax
jne 0x446cb0
push str.EGL:_Library_not_found
push 0x10006
call fcn.0043d050
add esp, 8
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045b938
mov esp, ebp
pop ebp
ret
push 3
push 0x478944
push dword [ebp + esi*4 - 0x10]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 0xc
neg eax
sbb eax, eax
push str.eglGetConfigAttrib
push dword [0x49f808]
inc eax
mov dword [0x49f7ec], eax
call esi
push str.eglGetConfigs
push dword [0x49f808]
mov dword [0x49f80c], eax
call esi
push str.eglGetDisplay
push dword [0x49f808]
mov dword [0x49f810], eax
call esi
push str.eglGetError
push dword [0x49f808]
mov dword [0x49f814], eax
call esi
push str.eglInitialize
push dword [0x49f808]
mov dword [0x49f818], eax
call esi
push str.eglTerminate
push dword [0x49f808]
mov dword [0x49f81c], eax
call esi
push str.eglBindAPI
push dword [0x49f808]
mov dword [0x49f820], eax
call esi
push str.eglCreateContext
push dword [0x49f808]
mov dword [0x49f824], eax
call esi
push str.eglDestroySurface
push dword [0x49f808]
mov dword [0x49f828], eax
call esi
push str.eglDestroyContext
push dword [0x49f808]
mov dword [0x49f82c], eax
call esi
push str.eglCreateWindowSurface
push dword [0x49f808]
mov dword [0x49f830], eax
call esi
push str.eglMakeCurrent
push dword [0x49f808]
mov dword [0x49f834], eax
call esi
push str.eglSwapBuffers
push dword [0x49f808]
mov dword [0x49f838], eax
call esi
push str.eglSwapInterval
push dword [0x49f808]
mov dword [0x49f83c], eax
call esi
push str.eglQueryString
push dword [0x49f808]
mov dword [0x49f840], eax
call esi
push str.eglGetProcAddress
push dword [0x49f808]
mov dword [0x49f844], eax
call esi
cmp dword [0x49f80c], 0
mov dword [0x49f848], eax
je 0x446fd7
cmp dword [0x49f810], 0
je 0x446fd7
mov ecx, dword [0x49f814]
test ecx, ecx
je 0x446fd7
cmp dword [0x49f818], 0
je 0x446fd7
cmp dword [0x49f81c], 0
je 0x446fd7
cmp dword [0x49f820], 0
je 0x446fd7
cmp dword [0x49f824], 0
je 0x446fd7
cmp dword [0x49f828], 0
je 0x446fd7
cmp dword [0x49f82c], 0
je 0x446fd7
cmp dword [0x49f830], 0
je 0x446fd7
cmp dword [0x49f834], 0
je 0x446fd7
cmp dword [0x49f838], 0
je 0x446fd7
cmp dword [0x49f83c], 0
je 0x446fd7
cmp dword [0x49f840], 0
je 0x446fd7
cmp dword [0x49f844], 0
je 0x446fd7
test eax, eax
je 0x446fd7
push 0
call ecx
mov dword [0x49f7e0], eax
test eax, eax
jne 0x446f3c
call dword [0x49f818]
push eax
call fcn.004473a0
push eax
push str.EGL:_Failed_to_get_EGL_display:__s
push 0x10006
call fcn.0043d050
add esp, 0x10
call fcn.00447030
pop edi
xor eax, eax
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045b938
mov esp, ebp
pop ebp
ret
push 0x49f7e8
push 0x49f7e4
push eax
call dword [0x49f81c]
test eax, eax
jne 0x446f65
call dword [0x49f818]
push eax
call fcn.004473a0
push eax
push str.EGL:_Failed_to_initialize_EGL:__s
jmp 0x446f18
push str.EGL_KHR_create_context
call fcn.00447370
push str.EGL_KHR_create_context_no_error
mov dword [0x49f7f0], eax
call fcn.00447370
push str.EGL_KHR_gl_colorspace
mov dword [0x49f7f4], eax
call fcn.00447370
push str.EGL_KHR_get_all_proc_addresses
mov dword [0x49f7f8], eax
call fcn.00447370
push str.EGL_KHR_context_flush_control
mov dword [0x49f7fc], eax
call fcn.00447370
push str.EGL_EXT_present_opaque
mov dword [0x49f800], eax
call fcn.00447370
add esp, 0x18
mov dword [0x49f804], eax
mov eax, 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0045b938
mov esp, ebp
pop ebp
ret
push str.EGL:_Failed_to_load_required_entry_points
push 0x10008
call fcn.0043d050
mov eax, dword [0x49f7e0]
add esp, 8
test eax, eax
je 0x447003
push eax
call dword [0x49f820]
mov dword [0x49f7e0], 0
mov eax, dword [0x49f808]
test eax, eax
je 0x44701d
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov dword [0x49f808], 0
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
xor ecx, ebp
pop esi
call fcn.0045b938
mov esp, ebp
pop ebp
ret