Function at 0x1400395c0
Capabilities:
Link many functions at runtime

Disassembly:
push rdi
sub rsp, 0x50
mov rax, qword [0x1400cf028]
xor rax, rsp
mov qword [rsp + 0x48], rax
cmp qword [0x1400d65a0], 0
je 0x1400395f7
mov eax, 1
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14002d570
add rsp, 0x50
pop rdi
ret
lea rcx, str.opengl32.dll
call sub.KERNEL32.dll_LoadLibraryA
mov qword [0x1400d65a0], rax
test rax, rax
jne 0x140039635
lea rdx, str.WGL:_Failed_to_load_opengl32.dll
mov ecx, 0x10008
call fcn.140037160
xor eax, eax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14002d570
add rsp, 0x50
pop rdi
ret
lea rdx, str.wglCreateContext
mov qword [rsp + 0x70], rsi
mov rcx, rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d65a0]
lea rdx, str.wglDeleteContext
mov qword [0x1400d65a8], rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d65a0]
lea rdx, [0x1400c7890]
mov qword [0x1400d65b0], rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d65a0]
lea rdx, [0x140073f40]
mov qword [0x1400d65b8], rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d65a0]
lea rdx, str.wglGetCurrentContext
mov qword [0x1400d65c0], rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d65a0]
lea rdx, str.wglMakeCurrent
mov qword [0x1400d65c8], rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d65a0]
lea rdx, str.wglShareLists
mov qword [0x1400d65d0], rax
call sub.KERNEL32.dll_GetProcAddress
mov rcx, qword [0x1400d5490]
mov qword [0x1400d65d8], rax
call qword [sym.imp.USER32.dll_GetDC]
xorps xmm0, xmm0
lea rdx, [rsp + 0x20]
movups xmmword [rsp + 0x20], xmm0
mov rsi, rax
mov dword [rsp + 0x20], 0x10028
xor eax, eax
mov dword [rsp + 0x24], 0x25
mov rcx, rsi
mov qword [rsp + 0x40], rax
movups xmmword [rsp + 0x30], xmm0
mov word [rsp + 0x28], 0x1800
lea edi, [rax + 1]
call qword [sym.imp.GDI32.dll_ChoosePixelFormat]
lea r8, [rsp + 0x20]
mov rcx, rsi
mov edx, eax
call qword [sym.imp.GDI32.dll_SetPixelFormat]
test eax, eax
jne 0x140039764
lea rdx, str.WGL:_Failed_to_set_pixel_format_for_dummy_context
mov ecx, 0x10008
call fcn.140037160
xor eax, eax
jmp 0x14003994d
mov rcx, rsi
mov qword [rsp + 0x60], rbx
call qword [0x1400d65a8]
mov rbx, rax
test rax, rax
jne 0x140039792
lea rdx, str.WGL:_Failed_to_create_dummy_context
mov ecx, 0x10008
call fcn.140037160
xor eax, eax
jmp 0x140039948
mov qword [rsp + 0x68], rbp
mov qword [rsp + 0x78], r14
call qword [0x1400d65c0]
mov rbp, rax
call qword [0x1400d65c8]
mov rdx, rbx
mov rcx, rsi
mov r14, rax
call qword [0x1400d65d0]
test eax, eax
jne 0x1400397eb
lea rdx, str.WGL:_Failed_to_make_dummy_context_current
mov ecx, 0x10008
call fcn.140037160
mov rdx, r14
mov rcx, rbp
call qword [0x1400d65d0]
mov rcx, rbx
call qword [0x1400d65b0]
xor eax, eax
jmp 0x14003993e
lea rcx, [0x140074018]
call qword [0x1400d65b8]
lea rcx, [0x140074038]
mov qword [0x1400d65f0], rax
call qword [0x1400d65b8]
lea rcx, [0x140074058]
mov qword [0x1400d65f8], rax
call qword [0x1400d65b8]
lea rcx, [0x140074078]
mov qword [0x1400d6600], rax
call qword [0x1400d65b8]
lea rcx, [0x140074090]
mov qword [0x1400d65e0], rax
call qword [0x1400d65b8]
lea rcx, [0x1400740b0]
mov qword [0x1400d65e8], rax
call fcn.140039f30
lea rcx, [0x1400740c8]
mov dword [0x1400d6610], eax
call fcn.140039f30
lea rcx, [0x1400740e8]
mov dword [0x1400d6614], eax
call fcn.140039f30
lea rcx, [0x140074108]
mov dword [0x1400d6618], eax
call fcn.140039f30
lea rcx, [0x140074120]
mov dword [0x1400d6620], eax
call fcn.140039f30
lea rcx, [0x140074140]
mov dword [0x1400d6624], eax
call fcn.140039f30
lea rcx, [0x140074168]
mov dword [0x1400d6628], eax
call fcn.140039f30
lea rcx, [0x140074190]
mov dword [0x1400d662c], eax
call fcn.140039f30
lea rcx, [0x1400741b0]
mov dword [0x1400d6630], eax
call fcn.140039f30
lea rcx, [0x1400741c8]
mov dword [0x1400d6608], eax
call fcn.140039f30
lea rcx, [0x1400741e0]
mov dword [0x1400d660c], eax
call fcn.140039f30
lea rcx, [0x1400741f8]
mov dword [0x1400d661c], eax
call fcn.140039f30
mov rdx, r14
mov dword [0x1400d6634], eax
mov rcx, rbp
call qword [0x1400d65d0]
mov rcx, rbx
call qword [0x1400d65b0]
mov eax, edi
mov rbp, qword [rsp + 0x68]
mov r14, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14002d570
add rsp, 0x50
pop rdi
ret