Function at 0x140020f00
Capabilities:
Link many functions at runtime
Register raw input devices

Disassembly:
push rbp
push rbx
push rdi
push r13
lea rbp, [rsp - 0x148]
sub rsp, 0x248
mov r13, rcx
lea rax, str.starting_fullscreen
lea rcx, str.starting_windowed
mov rbx, rdx
cmp byte [r13 + 0x10], 0
cmovne rcx, rax
call fcn.140014910
xor eax, eax
mov dword [rbp - 0x40], 0x2c
mov qword [rbp - 0x30], rax
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
lea rax, [0x140253710]
xor edi, edi
mov qword [rbx + 0x10], rax
xorps xmm0, xmm0
xor eax, eax
mov edx, 0x7f00
mov qword [rbp - 0x1c], rax
xor ecx, ecx
mov eax, dword [rbp - 0x18]
movups xmmword [rbp - 0x3c], xmm0
mov dword [0x140253758], eax
movups xmmword [rbp - 0x2c], xmm0
movups xmm0, xmmword [rbp - 0x40]
movups xmm1, xmmword [rbp - 0x30]
movaps xmmword [0x140253730], xmm0
movsd xmm0, qword [rbp - 0x20]
movsd qword [0x140253750], xmm0
xorps xmm0, xmm0
movaps xmmword [0x140253740], xmm1
mov rax, qword [rbx + 0x10]
mov byte [rax + 0x4c], 0
lea rax, [0x1400208b0]
mov qword [rbp + 0x18], rax
mov rax, qword [0x140253770]
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x20], rdi
mov qword [rbp + 0x30], rdi
movdqa xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x58], rdi
mov dword [rbp + 0x10], 0x50
mov dword [rbp + 0x14], 0x23
call qword [sym.imp.USER32.dll_LoadCursorA]
mov qword [rbp + 0x38], rax
lea rcx, [rbp + 0x10]
lea rax, str.DummyWndClass
mov qword [rbp + 0x50], rax
call qword [sym.imp.USER32.dll_RegisterClassExA]
test ax, ax
jne 0x140021022
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.RegisterClassEx_failed__dummy_window_
call fcn.1400201f0
xor al, al
add rsp, 0x248
pop r13
pop rdi
pop rbx
pop rbp
ret
mov rax, qword [0x140253770]
lea r8, str.dummy_window
mov rdx, qword [rbp + 0x50]
mov r9d, 0x6000000
mov qword [rsp + 0x58], rdi
xor ecx, ecx
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x40], rdi
mov dword [rsp + 0x38], 0x80000000
mov dword [rsp + 0x30], 0x80000000
mov dword [rsp + 0x28], 0x80000000
mov dword [rsp + 0x20], 0x80000000
mov qword [rsp + 0x230], r15
call qword [sym.imp.USER32.dll_CreateWindowExA]
mov r15, rax
test rax, rax
jne 0x1400210a1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.CreateWindow_failed__dummy_window_
call fcn.1400201f0
xor al, al
jmp 0x140022ede
mov rcx, r15
call qword [sym.imp.USER32.dll_GetDC]
mov rdi, rax
test rax, rax
jne 0x1400210cd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.GetDC_failed__dummy_window_
call fcn.1400201f0
xor al, al
jmp 0x140022ede
xor eax, eax
mov qword [rsp + 0x288], rsi
xorps xmm0, xmm0
mov qword [rsp + 0x238], r14
movups xmmword [rsp + 0x60], xmm0
lea rdx, [rsp + 0x60]
mov rcx, rdi
movups xmmword [rsp + 0x70], xmm0
lea r14d, [rax + 0x28]
mov qword [rbp - 0x80], rax
mov dword [rsp + 0x60], 0x10028
mov dword [rsp + 0x64], 0x25
mov word [rsp + 0x68], 0x2000
mov word [rsp + 0x77], 0x818
mov byte [rsp + 0x7a], al
call qword [sym.imp.GDI32.dll_ChoosePixelFormat]
mov esi, eax
test eax, eax
jne 0x140021145
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.ChoosePixelFormat_failed__dummy_window_
call fcn.1400201f0
xor al, al
jmp 0x140022ece
lea r9, [rsp + 0x60]
mov r8d, r14d
mov edx, esi
mov rcx, rdi
call qword [sym.imp.GDI32.dll_DescribePixelFormat]
test eax, eax
jne 0x140021177
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.DescribePixelFormat_failed__dummy_window_
call fcn.1400201f0
xor al, al
jmp 0x140022ece
lea r8, [rsp + 0x60]
mov edx, esi
mov rcx, rdi
call qword [sym.imp.GDI32.dll_SetPixelFormat]
test eax, eax
jne 0x1400211a6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.SetPixelFormat_failed__dummy_window_
call fcn.1400201f0
xor al, al
jmp 0x140022ece
mov rcx, rdi
mov qword [rsp + 0x240], r12
call qword [sym.imp.OPENGL32.dll_wglCreateContext]
mov r12, rax
test rax, rax
jne 0x1400211d1
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.wglCreateContext_failed__dummy_window_
jmp 0x140022ebd
mov rdx, r12
mov rcx, rdi
call qword [sym.imp.OPENGL32.dll_wglMakeCurrent]
test eax, eax
jne 0x1400211f3
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.wglMakeCurrent_failed__dummy_window_
jmp 0x140022ebd
lea rcx, str.wglChoosePixelFormatARB
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov r14, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021243
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021230
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
xor r14d, r14d
jmp 0x140021243
lea rdx, str.wglChoosePixelFormatARB
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
lea rcx, str.wglCreateContextAttribsARB
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rsi, rax
lea rcx, [rax - 4]
cmp rcx, 0xfffffffffffffffa
jbe 0x140021292
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002127f
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
xor esi, esi
jmp 0x140021292
lea rdx, str.wglCreateContextAttribsARB
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test r14, r14
je 0x140022eb0
test rsi, rsi
je 0x140022eb0
lea rax, [0x1400208c0]
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x68], rax
xorps xmm0, xmm0
mov rax, qword [0x140253770]
mov edx, 0x7f00
xor ecx, ecx
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x80], 0
movdqa xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa8], 0
mov dword [rbp + 0x60], 0x50
mov dword [rbp + 0x64], 0x23
call qword [sym.imp.USER32.dll_LoadCursorA]
mov qword [rbp + 0x88], rax
lea rcx, [rbp + 0x60]
lea rax, str.WndClass
mov qword [rbp + 0xa0], rax
call qword [sym.imp.USER32.dll_RegisterClassExA]
test ax, ax
jne 0x140021334
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.RegisterClassEx_failed
jmp 0x140022ebd
movsx ecx, word [r13 + 0xe]
xor r10d, r10d
movsx edx, word [r13 + 0xc]
movsx r8d, word [r13 + 0xa]
movsx r9d, word [r13 + 8]
mov rax, qword [0x140253770]
mov qword [rsp + 0x58], r10
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x40], r10
mov dword [rsp + 0x38], ecx
xor ecx, ecx
mov dword [rsp + 0x30], edx
mov rdx, qword [rbp + 0xa0]
mov dword [rsp + 0x28], r8d
mov r8, qword [r13]
mov dword [rsp + 0x20], r9d
mov r9d, 0x6cf0000
call qword [sym.imp.USER32.dll_CreateWindowExA]
mov rcx, qword [rbx + 0x10]
mov qword [rcx + 8], rax
mov rax, qword [rbx + 0x10]
mov rcx, qword [rax + 8]
test rcx, rcx
jne 0x1400213b8
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.CreateWindow_failed
jmp 0x140022ebd
call qword [sym.imp.USER32.dll_GetDC]
mov rcx, qword [rbx + 0x10]
mov qword [rcx + 0x10], rax
mov rcx, qword [rbx + 0x10]
cmp qword [rcx + 0x10], 0
jne 0x1400213e3
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.GetDC_failed
jmp 0x140022ebd
movdqa xmm0, xmmword [0x14005de30]
lea rax, [rbp + 0x178]
movdqa xmm1, xmmword [0x14005de60]
lea rdx, [rbp + 0xe0]
movdqa xmmword [rbp + 0xe0], xmm0
mov r9d, 1
movdqa xmm0, xmmword [0x14005de40]
xor r8d, r8d
movdqa xmmword [rbp + 0xf0], xmm1
movdqa xmm1, xmmword [0x14005de50]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x170]
movdqa xmmword [rbp + 0x100], xmm0
movdqa xmmword [rbp + 0x110], xmm1
mov dword [rbp + 0x120], 0x2023
mov qword [rbp + 0x124], 8
mov rcx, qword [rcx + 0x10]
mov qword [rsp + 0x20], rax
call r14
test eax, eax
jne 0x14002147d
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.wglChoosePixelFormatARB_failed
jmp 0x140022ebd
cmp dword [rbp + 0x178], 0
jne 0x140021497
mov edx, 0xffffffff
lea rcx, str.wglChoosePixelFormatARB_found_0_formats
jmp 0x140022ebf
mov rcx, qword [rbx + 0x10]
lea r9, [rbp + 0xb0]
mov edx, dword [rbp + 0x170]
xor eax, eax
xorps xmm0, xmm0
mov qword [rbp + 0xd0], rax
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
mov rcx, qword [rcx + 0x10]
lea r8d, [rax + 0x28]
call qword [sym.imp.GDI32.dll_DescribePixelFormat]
test eax, eax
jne 0x1400214e6
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.DescribePixelFormat_failed
jmp 0x140022ebd
mov rcx, qword [rbx + 0x10]
lea r8, [rbp + 0xb0]
mov edx, dword [rbp + 0x170]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.GDI32.dll_SetPixelFormat]
test eax, eax
jne 0x140021517
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.SetPixelFormat_failed
jmp 0x140022ebd
mov eax, dword [r13 + 0x14]
lea r8, [rbp - 0x78]
mov rcx, qword [rbx + 0x10]
xor r14d, r14d
cmp byte [r13 + 0x1c], r14b
mov dword [rbp - 0x74], eax
mov eax, dword [r13 + 0x18]
mov dword [rbp - 0x6c], eax
mov eax, r14d
setne al
mov dword [rbp - 0x78], 0x2091
mov dword [rbp - 0x5c], eax
xor edx, edx
mov dword [rbp - 0x70], 0x2092
mov dword [rbp - 0x68], 0x9126
mov dword [rbp - 0x64], 1
mov dword [rbp - 0x60], 0x2094
mov dword [rbp - 0x58], r14d
mov rcx, qword [rcx + 0x10]
call rsi
mov rcx, qword [rbx + 0x10]
mov qword [rcx + 0x18], rax
mov rax, qword [rbx + 0x10]
cmp qword [rax + 0x18], r14
jne 0x140021590
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.wglCreateContextAttribsARB_failed
jmp 0x140022ebd
xor edx, edx
xor ecx, ecx
call qword [sym.imp.OPENGL32.dll_wglMakeCurrent]
mov rcx, r12
call qword [sym.imp.OPENGL32.dll_wglDeleteContext]
mov rdx, rdi
mov rcx, r15
call qword [sym.imp.USER32.dll_ReleaseDC]
mov rcx, r15
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.OPENGL32.dll_wglMakeCurrent]
test eax, eax
jne 0x1400215e0
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.wglMakeCurrent_failed
jmp 0x140022ebd
lea rcx, str.wglSwapIntervalEXT
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021630
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002161d
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021630
lea rdx, str.wglSwapIntervalEXT
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140253778], rcx
lea rcx, str.wglGetSwapIntervalEXT
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021687
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021674
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021687
lea rdx, str.wglGetSwapIntervalEXT
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140253768], rcx
lea rcx, str.glGetStringi
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400216de
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400216cb
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400216de
lea rdx, str.glGetStringi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d50], rcx
lea rcx, str.glGetInteger64v
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002172c
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002171c
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x14002172c
lea rdx, str.glGetInteger64v
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glVertexAttribPointer
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002177c
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021769
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002177c
lea rdx, str.glVertexAttribPointer
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e30], rcx
lea rcx, str.glEnableVertexAttribArray
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400217d3
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400217c0
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400217d3
lea rdx, str.glEnableVertexAttribArray
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251dc0], rcx
lea rcx, str.glDisableVertexAttribArray
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002182a
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021817
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002182a
lea rdx, str.glDisableVertexAttribArray
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e20], rcx
lea rcx, str.glUniform1f
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021878
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021868
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021878
lea rdx, str.glUniform1f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform2f
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400218bf
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400218af
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x1400218bf
lea rdx, str.glUniform2f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform3f
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021906
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400218f6
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021906
lea rdx, str.glUniform3f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform4f
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002194d
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002193d
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x14002194d
lea rdx, str.glUniform4f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform1i
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021994
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021984
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021994
lea rdx, str.glUniform1i
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform2i
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400219db
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400219cb
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x1400219db
lea rdx, str.glUniform2i
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform3i
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021a22
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021a12
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021a22
lea rdx, str.glUniform3i
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform4i
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021a69
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021a59
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021a69
lea rdx, str.glUniform4i
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform1fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021ab9
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021aa6
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021ab9
lea rdx, str.glUniform1fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e50], rcx
lea rcx, str.glUniform2fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021b10
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021afd
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021b10
lea rdx, str.glUniform2fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e08], rcx
lea rcx, str.glUniform3fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021b67
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021b54
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021b67
lea rdx, str.glUniform3fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d30], rcx
lea rcx, str.glUniform4fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021bbe
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021bab
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021bbe
lea rdx, str.glUniform4fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e00], rcx
lea rcx, str.glUniform1iv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021c15
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021c02
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021c15
lea rdx, str.glUniform1iv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e10], rcx
lea rcx, str.glUniform2iv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021c63
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021c53
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021c63
lea rdx, str.glUniform2iv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform3iv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021caa
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021c9a
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021caa
lea rdx, str.glUniform3iv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniform4iv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021cf1
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021ce1
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021cf1
lea rdx, str.glUniform4iv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniformMatrix2fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021d38
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021d28
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021d38
lea rdx, str.glUniformMatrix2fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniformMatrix3fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021d7f
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021d6f
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140021d7f
lea rdx, str.glUniformMatrix3fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glUniformMatrix4fv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021dcf
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021dbc
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021dcf
lea rdx, str.glUniformMatrix4fv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e28], rcx
lea rcx, str.glActiveTexture
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021e26
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021e13
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021e26
lea rdx, str.glActiveTexture
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251de8], rcx
lea rcx, str.glGetShaderiv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021e7d
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021e6a
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021e7d
lea rdx, str.glGetShaderiv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d20], rcx
lea rcx, str.glGetShaderInfoLog
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021ed4
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021ec1
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021ed4
lea rdx, str.glGetShaderInfoLog
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d98], rcx
lea rcx, str.glGetProgramiv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021f2b
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021f18
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021f2b
lea rdx, str.glGetProgramiv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251dd0], rcx
lea rcx, str.glGetProgramInfoLog
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021f82
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021f6f
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021f82
lea rdx, str.glGetProgramInfoLog
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251db8], rcx
lea rcx, str.glGetActiveAttrib
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140021fd9
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140021fc6
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140021fd9
lea rdx, str.glGetActiveAttrib
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d88], rcx
lea rcx, str.glCreateShader
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022030
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002201d
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022030
lea rdx, str.glCreateShader
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d40], rcx
lea rcx, str.glShaderSource
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022087
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022074
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022087
lea rdx, str.glShaderSource
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e40], rcx
lea rcx, str.glCompileShader
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400220de
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400220cb
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400220de
lea rdx, str.glCompileShader
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d78], rcx
lea rcx, str.glDetachShader
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022135
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022122
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022135
lea rdx, str.glDetachShader
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d60], rcx
lea rcx, str.glDeleteShader
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002218c
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022179
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002218c
lea rdx, str.glDeleteShader
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251da8], rcx
lea rcx, str.glCreateProgram
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400221e3
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400221d0
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400221e3
lea rdx, str.glCreateProgram
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e18], rcx
lea rcx, str.glAttachShader
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002223a
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022227
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002223a
lea rdx, str.glAttachShader
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d38], rcx
lea rcx, str.glLinkProgram
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022291
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002227e
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022291
lea rdx, str.glLinkProgram
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d68], rcx
lea rcx, str.glGetAttribLocation
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400222e8
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400222d5
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400222e8
lea rdx, str.glGetAttribLocation
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e48], rcx
lea rcx, str.glGetActiveUniform
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002233f
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002232c
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002233f
lea rdx, str.glGetActiveUniform
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251dc8], rcx
lea rcx, str.glGetUniformLocation
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022396
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022383
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022396
lea rdx, str.glGetUniformLocation
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d58], rcx
lea rcx, str.glDeleteProgram
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400223ed
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400223da
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400223ed
lea rdx, str.glDeleteProgram
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d18], rcx
lea rcx, str.glUseProgram
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022444
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022431
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022444
lea rdx, str.glUseProgram
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d28], rcx
lea rcx, str.glGenBuffers
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002249b
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022488
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002249b
lea rdx, str.glGenBuffers
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d80], rcx
lea rcx, str.glDeleteBuffers
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400224f2
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400224df
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400224f2
lea rdx, str.glDeleteBuffers
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251dd8], rcx
lea rcx, str.glBindBuffer
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022549
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022536
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022549
lea rdx, str.glBindBuffer
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e38], rcx
lea rcx, str.glBindBufferBase
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022597
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022587
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022597
lea rdx, str.glBindBufferBase
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glBufferData
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400225e7
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400225d4
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400225e7
lea rdx, str.glBufferData
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251db0], rcx
lea rcx, str.glBufferSubData
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002263e
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002262b
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002263e
lea rdx, str.glBufferSubData
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251df0], rcx
lea rcx, str.glDrawBuffers
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022695
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022682
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022695
lea rdx, str.glDrawBuffers
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251df8], rcx
lea rcx, str.glGenVertexArrays
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400226ec
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400226d9
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400226ec
lea rdx, str.glGenVertexArrays
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251cf0], rcx
lea rcx, str.glDeleteVertexArrays
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022743
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022730
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022743
lea rdx, str.glDeleteVertexArrays
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251ce0], rcx
lea rcx, str.glBindVertexArray
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002279a
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022787
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002279a
lea rdx, str.glBindVertexArray
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d08], rcx
lea rcx, str.glDebugMessageCallbackARB
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400227f1
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400227de
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400227f1
lea rdx, str.glDebugMessageCallbackARB
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251e58], rcx
lea rcx, str.glGenerateMipmap
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002283f
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002282f
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x14002283f
lea rdx, str.glGenerateMipmap
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glGenQueries
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002288f
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002287c
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x14002288f
lea rdx, str.glGenQueries
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d90], rcx
lea rcx, str.glDeleteQueries
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400228e6
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400228d3
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x1400228e6
lea rdx, str.glDeleteQueries
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d70], rcx
lea rcx, str.glGetQueryiv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022934
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022924
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022934
lea rdx, str.glGetQueryiv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glBeginQuery
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x14002297b
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x14002296b
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x14002297b
lea rdx, str.glBeginQuery
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glEndQuery
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x1400229c2
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400229b2
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x1400229c2
lea rdx, str.glEndQuery
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glQueryCounter
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022a12
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x1400229ff
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022a12
lea rdx, str.glQueryCounter
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251da0], rcx
lea rcx, str.glGetQueryObjectiv
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022a69
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022a56
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022a69
lea rdx, str.glGetQueryObjectiv
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d48], rcx
lea rcx, str.glGetQueryObjecti64v
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022ab7
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022aa7
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022ab7
lea rdx, str.glGetQueryObjecti64v
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glGetQueryObjectui64v
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022b07
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022af4
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022b07
lea rdx, str.glGetQueryObjectui64v
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251de0], rcx
lea rcx, str.glTexImage2DMultisample
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022b55
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022b45
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022b55
lea rdx, str.glTexImage2DMultisample
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glTexImage3D
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022b9c
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022b8c
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022b9c
lea rdx, str.glTexImage3D
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glTexSubImage3D
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022be3
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022bd3
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022be3
lea rdx, str.glTexSubImage3D
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, str.glFenceSync
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022c33
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022c20
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022c33
lea rdx, str.glFenceSync
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251ce8], rcx
lea rcx, str.glDeleteSync
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022c8a
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022c77
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022c8a
lea rdx, str.glDeleteSync
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251cf8], rcx
lea rcx, str.glClientWaitSync
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022ce1
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022cce
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022ce1
lea rdx, str.glClientWaitSync
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d00], rcx
lea rcx, str.glBlendEquation
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
mov rcx, rax
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022d38
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022d25
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
mov rcx, r14
jmp 0x140022d38
lea rdx, str.glBlendEquation
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov qword [0x140251d10], rcx
lea rcx, str.glBlendEquationSeparate
call qword [sym.imp.OPENGL32.dll_wglGetProcAddress]
add rax, 0xfffffffffffffffc
cmp rax, 0xfffffffffffffffa
jbe 0x140022d86
lea rcx, str.opengl32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
test rax, rax
jne 0x140022d76
lea rcx, str.loading_opengl32.dll_failed
call fcn.140015000
jmp 0x140022d86
lea rdx, str.glBlendEquationSeparate
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rbx + 0x10]
mov edx, dword [0x140253760]
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [rbx + 0x10]
lea rdx, [rcx + 0x20]
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetWindowPlacement]
test eax, eax
je 0x140022db8
mov rax, qword [rbx + 0x10]
mov byte [rax + 0x4c], 1
cmp byte [r13 + 0x10], r14b
je 0x140022dc6
mov rcx, rbx
call fcn.140023110
mov rcx, qword [rbx + 0x10]
lea rdx, [rbp - 0x10]
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
jne 0x140022dee
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.GetWindowRect_failed
jmp 0x140022ebd
movzx eax, word [rbp - 0x10]
lea rdx, [rbp]
mov rcx, qword [rbx + 0x10]
mov word [rbx + 2], ax
movzx eax, word [rbp - 0xc]
mov word [rbx + 4], ax
mov rcx, qword [rcx + 8]
call qword [sym.imp.USER32.dll_GetClientRect]
test eax, eax
jne 0x140022e26
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.GetClientRect_failed
jmp 0x140022ebd
movzx eax, word [rbp + 8]
mov word [rbx + 6], ax
movzx eax, word [rbp + 0xc]
mov word [rbx + 8], ax
call qword [sym.imp.USER32.dll_GetFocus]
mov rcx, qword [rbx + 0x10]
mov edx, 1
xorps xmm0, xmm0
cmp rax, qword [rcx + 8]
lea r8d, [rdx + 0xf]
movups xmmword [rbp - 0x50], xmm0
sete al
mov word [rbx + 0xb], 1
lea rcx, [rbp - 0x50]
mov byte [rbx + 0xa], al
mov dword [rbp - 0x50], 0x20001
call qword [sym.imp.USER32.dll_RegisterRawInputDevices]
test eax, eax
jne 0x140022e84
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.RegisterRawInputDevices_failed__mouse_
jmp 0x140022ebd
mov rax, qword [rbx + 0x10]
lea rdx, [rbp + 0x180]
mov byte [rbx], 1
lea rcx, str.after_create_window
mov qword [rbp + 0x180], pe_nt_image_headers64
mov byte [rax], 1
call fcn.140017ca0
mov al, 1
jmp 0x140022ec6
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.wglGetProcAddress_failed__dummy_window_
mov edx, eax
call fcn.1400201f0
xor al, al
mov r12, qword [rsp + 0x240]
mov r14, qword [rsp + 0x238]
mov rsi, qword [rsp + 0x288]
mov r15, qword [rsp + 0x230]
add rsp, 0x248
pop r13
pop rdi
pop rbx
pop rbp
ret