Function at 0x14015b650
Capabilities:
Link many functions at runtime

Disassembly:
push rdi
sub rsp, 0x70
lea rdi, [rsp + 0x20]
mov ecx, 0x14
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x140277430]
xor rax, rsp
mov qword [rsp + 0x68], rax
lea rax, str.libEGL.dll
mov qword [rsp + 0x38], rax
lea rax, str.EGL.dll
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 0
cmp qword [0x14027b0a0], 0
je 0x14015b6ab
mov eax, 1
jmp 0x14015bac9
mov dword [rsp + 0x20], 0
jmp 0x14015b6bf
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
movsxd rax, dword [rsp + 0x20]
cmp qword [rsp + rax*8 + 0x38], 0
je 0x14015b6f1
movsxd rax, dword [rsp + 0x20]
mov rcx, qword [rsp + rax*8 + 0x38]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x14027b0a0], rax
cmp qword [0x14027b0a0], 0
je 0x14015b6ef
jmp 0x14015b6f1
jmp 0x14015b6b5
cmp qword [0x14027b0a0], 0
jne 0x14015b713
lea rdx, str.EGL:_Library_not_found
mov ecx, 0x10006
call fcn.14014dad0
xor eax, eax
jmp 0x14015bac9
movsxd rax, dword [rsp + 0x20]
mov r8d, 3
lea rdx, [0x140272020]
mov rcx, qword [rsp + rax*8 + 0x38]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x14015b73e
mov dword [rsp + 0x60], 1
jmp 0x14015b746
mov dword [rsp + 0x60], 0
mov eax, dword [rsp + 0x60]
mov dword [0x14027b080], eax
lea rdx, str.eglGetConfigAttrib
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0a8], rax
lea rdx, str.eglGetConfigs
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0b0], rax
lea rdx, str.eglGetDisplay
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0b8], rax
lea rdx, str.eglGetError
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0c0], rax
lea rdx, str.eglInitialize
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0c8], rax
lea rdx, str.eglTerminate
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0d0], rax
lea rdx, str.eglBindAPI
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0d8], rax
lea rdx, str.eglCreateContext
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0e0], rax
lea rdx, str.eglDestroySurface
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0e8], rax
lea rdx, str.eglDestroyContext
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0f0], rax
lea rdx, str.eglCreateWindowSurface
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b0f8], rax
lea rdx, str.eglMakeCurrent
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b100], rax
lea rdx, str.eglSwapBuffers
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b108], rax
lea rdx, str.eglSwapInterval
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b110], rax
lea rdx, str.eglQueryString
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b118], rax
lea rdx, str.eglGetProcAddress
mov rcx, qword [0x14027b0a0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14027b120], rax
cmp qword [0x14027b0a8], 0
je 0x14015b9ac
cmp qword [0x14027b0b0], 0
je 0x14015b9ac
cmp qword [0x14027b0b8], 0
je 0x14015b9ac
cmp qword [0x14027b0c0], 0
je 0x14015b9ac
cmp qword [0x14027b0c8], 0
je 0x14015b9ac
cmp qword [0x14027b0d0], 0
je 0x14015b9ac
cmp qword [0x14027b0d8], 0
je 0x14015b9ac
cmp qword [0x14027b0e0], 0
je 0x14015b9ac
cmp qword [0x14027b0e8], 0
je 0x14015b9ac
cmp qword [0x14027b0f0], 0
je 0x14015b9ac
cmp qword [0x14027b0f8], 0
je 0x14015b9ac
cmp qword [0x14027b100], 0
je 0x14015b9ac
cmp qword [0x14027b108], 0
je 0x14015b9ac
cmp qword [0x14027b110], 0
je 0x14015b9ac
cmp qword [0x14027b118], 0
je 0x14015b9ac
cmp qword [0x14027b120], 0
jne 0x14015b9c9
lea rdx, str.EGL:_Failed_to_load_required_entry_points
mov ecx, 0x10008
call fcn.14014dad0
call fcn.14015bb00
xor eax, eax
jmp 0x14015bac9
xor ecx, ecx
call qword [0x14027b0b8]
mov qword [0x14027b070], rax
cmp qword [0x14027b070], 0
jne 0x14015ba0f
call qword [0x14027b0c0]
mov ecx, eax
call fcn.14015c8a0
mov r8, rax
lea rdx, str.EGL:_Failed_to_get_EGL_display:__s
mov ecx, 0x10006
call fcn.14014dad0
call fcn.14015bb00
xor eax, eax
jmp 0x14015bac9
lea r8, [0x14027b07c]
lea rdx, [0x14027b078]
mov rcx, qword [0x14027b070]
call qword [0x14027b0c8]
test eax, eax
jne 0x14015ba58
call qword [0x14027b0c0]
mov ecx, eax
call fcn.14015c8a0
mov r8, rax
lea rdx, str.EGL:_Failed_to_initialize_EGL:__s
mov ecx, 0x10006
call fcn.14014dad0
call fcn.14015bb00
xor eax, eax
jmp 0x14015bac9
lea rcx, str.EGL_KHR_create_context
call fcn.14015ceb0
mov dword [0x14027b084], eax
lea rcx, str.EGL_KHR_create_context_no_error
call fcn.14015ceb0
mov dword [0x14027b088], eax
lea rcx, str.EGL_KHR_gl_colorspace
call fcn.14015ceb0
mov dword [0x14027b08c], eax
lea rcx, str.EGL_KHR_get_all_proc_addresses
call fcn.14015ceb0
mov dword [0x14027b090], eax
lea rcx, str.EGL_KHR_context_flush_control
call fcn.14015ceb0
mov dword [0x14027b094], eax
lea rcx, str.EGL_EXT_present_opaque
call fcn.14015ceb0
mov dword [0x14027b098], eax
mov eax, 1
mov rdi, rax
mov rcx, rsp
lea rdx, [0x1401f8f70]
call fcn.1401e8e04
mov rax, rdi
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1401e8350
add rsp, 0x70
pop rdi
ret