Function at 0x140070a40
Capabilities:
Link many functions at runtime

Disassembly:
push rdi
sub rsp, 0x90
lea rdi, [rsp + 0x20]
mov ecx, 0x1c
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x140154f00]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x38], 0
lea rax, str.libEGL.dll
mov qword [rsp + 0x58], rax
lea rax, str.EGL.dll
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], 0
cmp qword [0x140157bc0], 0
je 0x140070aaa
mov eax, 1
jmp 0x140071032
mov dword [rsp + 0x20], 0
jmp 0x140070abe
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
movsxd rax, dword [rsp + 0x20]
cmp qword [rsp + rax*8 + 0x58], 0
je 0x140070af0
movsxd rax, dword [rsp + 0x20]
mov rcx, qword [rsp + rax*8 + 0x58]
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [0x140157bc0], rax
cmp qword [0x140157bc0], 0
je 0x140070aee
jmp 0x140070af0
jmp 0x140070ab4
cmp qword [0x140157bc0], 0
jne 0x140070b12
lea rdx, str.EGL:_Library_not_found
mov ecx, 0x10006
call fcn.1400616d0
xor eax, eax
jmp 0x140071032
movsxd rax, dword [rsp + 0x20]
mov r8d, 3
lea rdx, [0x14014fc54]
mov rcx, qword [rsp + rax*8 + 0x58]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncmp]
test eax, eax
jne 0x140070b40
mov dword [rsp + 0x80], 1
jmp 0x140070b4b
mov dword [rsp + 0x80], 0
mov eax, dword [rsp + 0x80]
mov dword [0x140157b80], eax
lea rdx, str.eglGetConfigAttrib
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157bc8], rax
lea rdx, str.eglGetConfigs
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157bd0], rax
lea rdx, str.eglGetDisplay
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157bd8], rax
lea rdx, str.eglGetError
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157be0], rax
lea rdx, str.eglInitialize
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157be8], rax
lea rdx, str.eglTerminate
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157bf0], rax
lea rdx, str.eglBindAPI
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157bf8], rax
lea rdx, str.eglCreateContext
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c00], rax
lea rdx, str.eglDestroySurface
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c08], rax
lea rdx, str.eglDestroyContext
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c10], rax
lea rdx, str.eglCreateWindowSurface
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c18], rax
lea rdx, str.eglMakeCurrent
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c20], rax
lea rdx, str.eglSwapBuffers
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c28], rax
lea rdx, str.eglSwapInterval
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c30], rax
lea rdx, str.eglQueryString
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c38], rax
lea rdx, str.eglGetProcAddress
mov rcx, qword [0x140157bc0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140157c40], rax
cmp qword [0x140157bc8], 0
je 0x140070db4
cmp qword [0x140157bd0], 0
je 0x140070db4
cmp qword [0x140157bd8], 0
je 0x140070db4
cmp qword [0x140157be0], 0
je 0x140070db4
cmp qword [0x140157be8], 0
je 0x140070db4
cmp qword [0x140157bf0], 0
je 0x140070db4
cmp qword [0x140157bf8], 0
je 0x140070db4
cmp qword [0x140157c00], 0
je 0x140070db4
cmp qword [0x140157c08], 0
je 0x140070db4
cmp qword [0x140157c10], 0
je 0x140070db4
cmp qword [0x140157c18], 0
je 0x140070db4
cmp qword [0x140157c20], 0
je 0x140070db4
cmp qword [0x140157c28], 0
je 0x140070db4
cmp qword [0x140157c30], 0
je 0x140070db4
cmp qword [0x140157c38], 0
je 0x140070db4
cmp qword [0x140157c40], 0
jne 0x140070dd1
lea rdx, str.EGL:_Failed_to_load_required_entry_points
mov ecx, 0x10008
call fcn.1400616d0
call fcn.140071070
xor eax, eax
jmp 0x140071032
mov edx, 0x3055
xor ecx, ecx
call qword [0x140157c38]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
je 0x140070e02
call qword [0x140157be0]
cmp eax, 0x3000
jne 0x140070e02
mov dword [0x140157b98], 1
cmp dword [0x140157b98], 0
je 0x140070ec7
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_EXT_platform_base
call fcn.140067fe0
mov dword [0x140157b9c], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_EXT_platform_x11
call fcn.140067fe0
mov dword [0x140157ba0], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_EXT_platform_wayland
call fcn.140067fe0
mov dword [0x140157ba4], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_ANGLE_platform_angle
call fcn.140067fe0
mov dword [0x140157ba8], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_ANGLE_platform_angle_opengl
call fcn.140067fe0
mov dword [0x140157bac], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_ANGLE_platform_angle_d3d
call fcn.140067fe0
mov dword [0x140157bb0], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_ANGLE_platform_angle_vulkan
call fcn.140067fe0
mov dword [0x140157bb4], eax
mov rdx, qword [rsp + 0x48]
lea rcx, str.EGL_ANGLE_platform_angle_metal
call fcn.140067fe0
mov dword [0x140157bb8], eax
cmp dword [0x140157b9c], 0
je 0x140070ef8
lea rcx, str.eglGetPlatformDisplayEXT
call qword [0x140157c40]
mov qword [0x140157c48], rax
lea rcx, str.eglCreatePlatformWindowSurfaceEXT
call qword [0x140157c40]
mov qword [0x140157c50], rax
lea rcx, [rsp + 0x38]
call fcn.1400643f0
mov dword [0x140157b68], eax
cmp dword [0x140157b68], 0
je 0x140070f33
call fcn.140064510
mov r8, qword [rsp + 0x38]
mov rdx, rax
mov ecx, dword [0x140157b68]
call qword [0x140157c48]
mov qword [0x140157b70], rax
jmp 0x140070f48
call fcn.140064510
mov rcx, rax
call qword [0x140157bd8]
mov qword [0x140157b70], rax
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
cmp qword [0x140157b70], 0
jne 0x140070f8a
call qword [0x140157be0]
mov ecx, eax
call fcn.140071dc0
mov r8, rax
lea rdx, str.EGL:_Failed_to_get_EGL_display:__s
mov ecx, 0x10006
call fcn.1400616d0
call fcn.140071070
xor eax, eax
jmp 0x140071032
lea r8, [0x140157b7c]
lea rdx, [0x140157b78]
mov rcx, qword [0x140157b70]
call qword [0x140157be8]
test eax, eax
jne 0x140070fd3
call qword [0x140157be0]
mov ecx, eax
call fcn.140071dc0
mov r8, rax
lea rdx, str.EGL:_Failed_to_initialize_EGL:__s
mov ecx, 0x10006
call fcn.1400616d0
call fcn.140071070
xor eax, eax
jmp 0x140071032
lea rcx, str.EGL_KHR_create_context
call fcn.1400723d0
mov dword [0x140157b84], eax
lea rcx, str.EGL_KHR_create_context_no_error
call fcn.1400723d0
mov dword [0x140157b88], eax
lea rcx, str.EGL_KHR_gl_colorspace
call fcn.1400723d0
mov dword [0x140157b8c], eax
lea rcx, str.EGL_KHR_get_all_proc_addresses
call fcn.1400723d0
mov dword [0x140157b90], eax
lea rcx, str.EGL_KHR_context_flush_control
call fcn.1400723d0
mov dword [0x140157b94], eax
mov eax, 1
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.14008e5a8
mov rax, rdi
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.14008da00
add rsp, 0x90
pop rdi
ret