	.file	"extr_wgl_context.c__glfwInitWGL.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	"opengl32.dll"
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC1:
	.string	"WGL: Failed to load opengl32.dll"
	.section	.rodata.str1.1
.LC2:
	.string	"wglCreateContext"
.LC3:
	.string	"wglDeleteContext"
.LC4:
	.string	"wglGetProcAddress"
.LC5:
	.string	"wglGetCurrentDC"
.LC6:
	.string	"wglGetCurrentContext"
.LC7:
	.string	"wglMakeCurrent"
.LC8:
	.string	"wglShareLists"
	.section	.rodata.str1.8
	.align 8
.LC9:
	.string	"WGL: Failed to set pixel format for dummy context"
	.align 8
.LC10:
	.string	"WGL: Failed to create dummy context"
	.align 8
.LC11:
	.string	"WGL: Failed to make dummy context current"
	.section	.rodata.str1.1
.LC12:
	.string	"wglGetExtensionsStringEXT"
.LC13:
	.string	"wglGetExtensionsStringARB"
.LC14:
	.string	"wglCreateContextAttribsARB"
.LC15:
	.string	"wglSwapIntervalEXT"
.LC16:
	.string	"wglGetPixelFormatAttribivARB"
.LC17:
	.string	"WGL_ARB_multisample"
.LC18:
	.string	"WGL_ARB_framebuffer_sRGB"
.LC19:
	.string	"WGL_EXT_framebuffer_sRGB"
.LC20:
	.string	"WGL_ARB_create_context"
	.section	.rodata.str1.8
	.align 8
.LC21:
	.string	"WGL_ARB_create_context_profile"
	.align 8
.LC22:
	.string	"WGL_EXT_create_context_es2_profile"
	.align 8
.LC23:
	.string	"WGL_ARB_create_context_robustness"
	.align 8
.LC24:
	.string	"WGL_ARB_create_context_no_error"
	.section	.rodata.str1.1
.LC25:
	.string	"WGL_EXT_swap_control"
.LC26:
	.string	"WGL_EXT_colorspace"
.LC27:
	.string	"WGL_ARB_pixel_format"
.LC28:
	.string	"WGL_ARB_context_flush_control"
	.text
	.p2align 4
	.globl	_glfwInitWGL
	.type	_glfwInitWGL, @function
_glfwInitWGL:
.LFB0:
	.cfi_startproc
	endbr64
	push	r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	push	r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	push	r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	push	rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	sub	rsp, 40
	.cfi_def_cfa_offset 80
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR 24[rsp], rax
	xor	eax, eax
	cmp	QWORD PTR _glfw[rip+136], 0
	je	.L2
.L10:
	mov	eax, DWORD PTR GLFW_TRUE[rip]
.L1:
	mov	rcx, QWORD PTR 24[rsp]
	xor	rcx, QWORD PTR fs:40
	jne	.L12
	add	rsp, 40
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	pop	rbp
	.cfi_def_cfa_offset 32
	pop	r12
	.cfi_def_cfa_offset 24
	pop	r13
	.cfi_def_cfa_offset 16
	pop	r14
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L2:
	.cfi_restore_state
	lea	rdi, .LC0[rip]
	call	LoadLibraryA@PLT
	mov	QWORD PTR _glfw[rip+136], rax
	mov	rdi, rax
	test	rax, rax
	je	.L13
	lea	rsi, .LC2[rip]
	mov	r12, rsp
	call	GetProcAddress@PLT
	mov	rdi, QWORD PTR _glfw[rip+136]
	lea	rsi, .LC3[rip]
	mov	QWORD PTR _glfw[rip+192], rax
	call	GetProcAddress@PLT
	mov	rdi, QWORD PTR _glfw[rip+136]
	lea	rsi, .LC4[rip]
	mov	QWORD PTR _glfw[rip+184], rax
	call	GetProcAddress@PLT
	mov	rdi, QWORD PTR _glfw[rip+136]
	lea	rsi, .LC5[rip]
	mov	QWORD PTR _glfw[rip+176], rax
	call	GetProcAddress@PLT
	mov	rdi, QWORD PTR _glfw[rip+136]
	lea	rsi, .LC6[rip]
	mov	QWORD PTR _glfw[rip+168], rax
	call	GetProcAddress@PLT
	mov	rdi, QWORD PTR _glfw[rip+136]
	lea	rsi, .LC7[rip]
	mov	QWORD PTR _glfw[rip+160], rax
	call	GetProcAddress@PLT
	mov	rdi, QWORD PTR _glfw[rip+136]
	lea	rsi, .LC8[rip]
	mov	QWORD PTR _glfw[rip+152], rax
	call	GetProcAddress@PLT
	mov	edi, DWORD PTR _glfw[rip+200]
	mov	QWORD PTR _glfw[rip+144], rax
	call	GetDC@PLT
	mov	esi, 20
	mov	rdi, r12
	mov	ebp, eax
	call	ZeroMemory@PLT
	mov	rsi, r12
	mov	edi, ebp
	movabs	rax, 4294967316
	mov	QWORD PTR [rsp], rax
	mov	eax, DWORD PTR PFD_DRAW_TO_WINDOW[rip]
	or	eax, DWORD PTR PFD_SUPPORT_OPENGL[rip]
	or	eax, DWORD PTR PFD_DOUBLEBUFFER[rip]
	mov	DWORD PTR 12[rsp], 24
	mov	DWORD PTR 8[rsp], eax
	mov	eax, DWORD PTR PFD_TYPE_RGBA[rip]
	mov	DWORD PTR 16[rsp], eax
	call	ChoosePixelFormat@PLT
	mov	rdx, r12
	mov	edi, ebp
	mov	esi, eax
	call	SetPixelFormat@PLT
	test	eax, eax
	je	.L14
	mov	edi, ebp
	call	wglCreateContext@PLT
	mov	r12d, eax
	test	eax, eax
	je	.L15
	xor	eax, eax
	call	wglGetCurrentDC@PLT
	mov	r14d, eax
	xor	eax, eax
	call	wglGetCurrentContext@PLT
	mov	esi, r12d
	mov	edi, ebp
	mov	r13d, eax
	call	wglMakeCurrent@PLT
	test	eax, eax
	je	.L16
	lea	rdi, .LC12[rip]
	call	wglGetProcAddress@PLT
	lea	rdi, .LC13[rip]
	mov	QWORD PTR _glfw[rip+128], rax
	call	wglGetProcAddress@PLT
	lea	rdi, .LC14[rip]
	mov	QWORD PTR _glfw[rip+120], rax
	call	wglGetProcAddress@PLT
	lea	rdi, .LC15[rip]
	mov	QWORD PTR _glfw[rip+112], rax
	call	wglGetProcAddress@PLT
	lea	rdi, .LC16[rip]
	mov	QWORD PTR _glfw[rip+104], rax
	call	wglGetProcAddress@PLT
	lea	rdi, .LC17[rip]
	mov	QWORD PTR _glfw[rip+96], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC18[rip]
	mov	QWORD PTR _glfw[rip+88], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC19[rip]
	mov	QWORD PTR _glfw[rip+80], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC20[rip]
	mov	QWORD PTR _glfw[rip+72], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC21[rip]
	mov	QWORD PTR _glfw[rip+64], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC22[rip]
	mov	QWORD PTR _glfw[rip+56], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC23[rip]
	mov	QWORD PTR _glfw[rip+48], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC24[rip]
	mov	QWORD PTR _glfw[rip+40], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC25[rip]
	mov	QWORD PTR _glfw[rip+32], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC26[rip]
	mov	QWORD PTR _glfw[rip+24], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC27[rip]
	mov	QWORD PTR _glfw[rip+16], rax
	call	extensionSupportedWGL@PLT
	lea	rdi, .LC28[rip]
	mov	QWORD PTR _glfw[rip+8], rax
	call	extensionSupportedWGL@PLT
	mov	edi, r14d
	mov	esi, r13d
	mov	QWORD PTR _glfw[rip], rax
	call	wglMakeCurrent@PLT
	mov	edi, r12d
	call	wglDeleteContext@PLT
	jmp	.L10
	.p2align 4,,10
	.p2align 3
.L15:
	mov	edi, DWORD PTR GLFW_PLATFORM_ERROR[rip]
	lea	rsi, .LC10[rip]
	call	_glfwInputErrorWin32@PLT
	mov	eax, DWORD PTR GLFW_FALSE[rip]
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L13:
	mov	edi, DWORD PTR GLFW_PLATFORM_ERROR[rip]
	lea	rsi, .LC1[rip]
	call	_glfwInputErrorWin32@PLT
	mov	eax, DWORD PTR GLFW_FALSE[rip]
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L14:
	mov	edi, DWORD PTR GLFW_PLATFORM_ERROR[rip]
	lea	rsi, .LC9[rip]
	call	_glfwInputErrorWin32@PLT
	mov	eax, DWORD PTR GLFW_FALSE[rip]
	jmp	.L1
	.p2align 4,,10
	.p2align 3
.L16:
	mov	edi, DWORD PTR GLFW_PLATFORM_ERROR[rip]
	lea	rsi, .LC11[rip]
	call	_glfwInputErrorWin32@PLT
	mov	esi, r13d
	mov	edi, r14d
	call	wglMakeCurrent@PLT
	mov	edi, r12d
	call	wglDeleteContext@PLT
	mov	eax, DWORD PTR GLFW_FALSE[rip]
	jmp	.L1
.L12:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	_glfwInitWGL, .-_glfwInitWGL
	.comm	_glfw,208,32
	.comm	PFD_TYPE_RGBA,4,4
	.comm	PFD_SUPPORT_OPENGL,4,4
	.comm	PFD_DRAW_TO_WINDOW,4,4
	.comm	PFD_DOUBLEBUFFER,4,4
	.comm	GLFW_TRUE,4,4
	.comm	GLFW_PLATFORM_ERROR,4,4
	.comm	GLFW_FALSE,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_wgl_context.c__glfwInitWGL.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"opengl32.dll\000"
	.align	2
.LC1:
	.ascii	"WGL: Failed to load opengl32.dll\000"
	.align	2
.LC2:
	.ascii	"wglCreateContext\000"
	.align	2
.LC3:
	.ascii	"wglDeleteContext\000"
	.align	2
.LC4:
	.ascii	"wglGetProcAddress\000"
	.align	2
.LC5:
	.ascii	"wglGetCurrentDC\000"
	.align	2
.LC6:
	.ascii	"wglGetCurrentContext\000"
	.align	2
.LC7:
	.ascii	"wglMakeCurrent\000"
	.align	2
.LC8:
	.ascii	"wglShareLists\000"
	.align	2
.LC9:
	.ascii	"WGL: Failed to set pixel format for dummy context\000"
	.align	2
.LC10:
	.ascii	"WGL: Failed to create dummy context\000"
	.align	2
.LC11:
	.ascii	"WGL: Failed to make dummy context current\000"
	.align	2
.LC12:
	.ascii	"wglGetExtensionsStringEXT\000"
	.align	2
.LC13:
	.ascii	"wglGetExtensionsStringARB\000"
	.align	2
.LC14:
	.ascii	"wglCreateContextAttribsARB\000"
	.align	2
.LC15:
	.ascii	"wglSwapIntervalEXT\000"
	.align	2
.LC16:
	.ascii	"wglGetPixelFormatAttribivARB\000"
	.align	2
.LC17:
	.ascii	"WGL_ARB_multisample\000"
	.align	2
.LC18:
	.ascii	"WGL_ARB_framebuffer_sRGB\000"
	.align	2
.LC19:
	.ascii	"WGL_EXT_framebuffer_sRGB\000"
	.align	2
.LC20:
	.ascii	"WGL_ARB_create_context\000"
	.align	2
.LC21:
	.ascii	"WGL_ARB_create_context_profile\000"
	.align	2
.LC22:
	.ascii	"WGL_EXT_create_context_es2_profile\000"
	.align	2
.LC23:
	.ascii	"WGL_ARB_create_context_robustness\000"
	.align	2
.LC24:
	.ascii	"WGL_ARB_create_context_no_error\000"
	.align	2
.LC25:
	.ascii	"WGL_EXT_swap_control\000"
	.align	2
.LC26:
	.ascii	"WGL_EXT_colorspace\000"
	.align	2
.LC27:
	.ascii	"WGL_ARB_pixel_format\000"
	.align	2
.LC28:
	.ascii	"WGL_ARB_context_flush_control\000"
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC29:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	_glfwInitWGL
	.syntax unified
	.arm
	.fpu softvfp
	.type	_glfwInitWGL, %function
_glfwInitWGL:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, lr}
	ldr	r3, .L17
	ldr	r4, .L17+4
	sub	sp, sp, #28
	ldr	r3, [r3]
	str	r3, [sp, #20]
	mov	r3,#0
	ldr	r3, [r4, #68]
	cmp	r3, #0
	beq	.L2
.L10:
	ldr	r3, .L17+8
	ldr	r0, [r3]
.L1:
	ldr	r3, .L17
	ldr	r2, [r3]
	ldr	r3, [sp, #20]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L12
	add	sp, sp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, pc}
.L2:
	ldr	r0, .L17+12
	bl	LoadLibraryA
	cmp	r0, #0
	str	r0, [r4, #68]
	beq	.L13
	ldr	r1, .L17+16
	bl	GetProcAddress
	mov	r3, r0
	ldr	r1, .L17+20
	ldr	r0, [r4, #68]
	str	r3, [r4, #96]
	bl	GetProcAddress
	mov	r3, r0
	ldr	r1, .L17+24
	ldr	r0, [r4, #68]
	str	r3, [r4, #92]
	bl	GetProcAddress
	mov	r3, r0
	ldr	r1, .L17+28
	ldr	r0, [r4, #68]
	str	r3, [r4, #88]
	bl	GetProcAddress
	mov	r3, r0
	ldr	r1, .L17+32
	ldr	r0, [r4, #68]
	str	r3, [r4, #84]
	bl	GetProcAddress
	mov	r3, r0
	ldr	r1, .L17+36
	ldr	r0, [r4, #68]
	str	r3, [r4, #80]
	bl	GetProcAddress
	mov	r3, r0
	ldr	r1, .L17+40
	ldr	r0, [r4, #68]
	str	r3, [r4, #76]
	bl	GetProcAddress
	mov	r3, r0
	ldr	r0, [r4, #100]
	str	r3, [r4, #72]
	bl	GetDC
	mov	r1, #20
	mov	r5, r0
	mov	r0, sp
	bl	ZeroMemory
	mov	lr, #20
	mov	ip, #1
	mov	r2, #24
	ldr	r1, .L17+44
	ldr	r3, .L17+48
	ldr	r0, [r1]
	ldr	r3, [r3]
	ldr	r1, .L17+52
	orr	r3, r3, r0
	ldr	r0, [r1]
	ldr	r1, .L17+56
	orr	r3, r3, r0
	ldr	r1, [r1]
	mov	r0, r5
	str	r1, [sp, #16]
	mov	r1, sp
	str	r3, [sp, #8]
	str	lr, [sp]
	str	ip, [sp, #4]
	str	r2, [sp, #12]
	bl	ChoosePixelFormat
	mov	r2, sp
	mov	r1, r0
	mov	r0, r5
	bl	SetPixelFormat
	cmp	r0, #0
	beq	.L14
	mov	r0, r5
	bl	wglCreateContext
	subs	r6, r0, #0
	beq	.L15
	bl	wglGetCurrentDC
	mov	r7, r0
	bl	wglGetCurrentContext
	mov	r3, r0
	mov	r1, r6
	mov	r0, r5
	mov	r5, r3
	bl	wglMakeCurrent
	cmp	r0, #0
	beq	.L16
	ldr	r0, .L17+60
	bl	wglGetProcAddress
	mov	r3, r0
	ldr	r0, .L17+64
	str	r3, [r4, #64]
	bl	wglGetProcAddress
	mov	r3, r0
	ldr	r0, .L17+68
	str	r3, [r4, #60]
	bl	wglGetProcAddress
	mov	r3, r0
	ldr	r0, .L17+72
	str	r3, [r4, #56]
	bl	wglGetProcAddress
	mov	r3, r0
	ldr	r0, .L17+76
	str	r3, [r4, #52]
	bl	wglGetProcAddress
	mov	r3, r0
	ldr	r0, .L17+80
	str	r3, [r4, #48]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+84
	str	r3, [r4, #44]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+88
	str	r3, [r4, #40]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+92
	str	r3, [r4, #36]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+96
	str	r3, [r4, #32]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+100
	str	r3, [r4, #28]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+104
	str	r3, [r4, #24]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+108
	str	r3, [r4, #20]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+112
	str	r3, [r4, #16]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+116
	str	r3, [r4, #12]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+120
	str	r3, [r4, #8]
	bl	extensionSupportedWGL
	mov	r3, r0
	ldr	r0, .L17+124
	str	r3, [r4, #4]
	bl	extensionSupportedWGL
	mov	r3, r0
	mov	r1, r5
	mov	r0, r7
	str	r3, [r4]
	bl	wglMakeCurrent
	mov	r0, r6
	bl	wglDeleteContext
	b	.L10
.L15:
	ldr	r3, .L17+128
	ldr	r1, .L17+132
	ldr	r0, [r3]
	bl	_glfwInputErrorWin32
	ldr	r3, .L17+136
	ldr	r0, [r3]
	b	.L1
.L13:
	ldr	r3, .L17+128
	ldr	r1, .L17+140
	ldr	r0, [r3]
	bl	_glfwInputErrorWin32
	ldr	r3, .L17+136
	ldr	r0, [r3]
	b	.L1
.L14:
	ldr	r3, .L17+128
	ldr	r1, .L17+144
	ldr	r0, [r3]
	bl	_glfwInputErrorWin32
	ldr	r3, .L17+136
	ldr	r0, [r3]
	b	.L1
.L16:
	ldr	r3, .L17+128
	ldr	r1, .L17+148
	ldr	r0, [r3]
	bl	_glfwInputErrorWin32
	mov	r1, r5
	mov	r0, r7
	bl	wglMakeCurrent
	mov	r0, r6
	bl	wglDeleteContext
	ldr	r3, .L17+136
	ldr	r0, [r3]
	b	.L1
.L12:
	bl	__stack_chk_fail
.L18:
	.align	2
.L17:
	.word	.LC29
	.word	_glfw
	.word	GLFW_TRUE
	.word	.LC0
	.word	.LC2
	.word	.LC3
	.word	.LC4
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	PFD_SUPPORT_OPENGL
	.word	PFD_DRAW_TO_WINDOW
	.word	PFD_DOUBLEBUFFER
	.word	PFD_TYPE_RGBA
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.word	.LC16
	.word	.LC17
	.word	.LC18
	.word	.LC19
	.word	.LC20
	.word	.LC21
	.word	.LC22
	.word	.LC23
	.word	.LC24
	.word	.LC25
	.word	.LC26
	.word	.LC27
	.word	.LC28
	.word	GLFW_PLATFORM_ERROR
	.word	.LC10
	.word	GLFW_FALSE
	.word	.LC1
	.word	.LC9
	.word	.LC11
	.size	_glfwInitWGL, .-_glfwInitWGL
	.comm	_glfw,104,4
	.comm	PFD_TYPE_RGBA,4,4
	.comm	PFD_SUPPORT_OPENGL,4,4
	.comm	PFD_DRAW_TO_WINDOW,4,4
	.comm	PFD_DOUBLEBUFFER,4,4
	.comm	GLFW_TRUE,4,4
	.comm	GLFW_PLATFORM_ERROR,4,4
	.comm	GLFW_FALSE,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
