Function at 0x22dc09c10
Capabilities:
Get thread local storage value
Resolve function by parsing pe exports

Disassembly:
push r12
push rdi
push rsi
push rbx
sub rsp, 0x88
movaps xmmword [rsp + 0x40], xmm6
movaps xmmword [rsp + 0x50], xmm7
movaps xmmword [rsp + 0x60], xmm8
movaps xmmword [rsp + 0x70], xmm9
movd xmm5, edx
movd xmm6, ecx
mov rsi, r8
mov ecx, 3
lea r8, [0x22dd9310c]
lea rdx, str.Initializing_raylib__s
punpckldq xmm6, xmm5
call fcn.22dce62c0
lea rdx, str.Supported_raylib_modules:
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______rcore:....._loaded__mandatory_
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______rlgl:......_loaded__mandatory_
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______rshapes:..._loaded__optional_
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______rtextures:._loaded__optional_
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______rtext:....._loaded__optional_
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______rmodels:..._loaded__optional_
mov ecx, 3
call fcn.22dce62c0
lea rdx, str.______raudio:...._loaded__optional_
mov ecx, 3
call fcn.22dce62c0
mov rbx, qword [0x22ddac700]
test rsi, rsi
je 0x22dc09cf6
cmp byte [rsi], 0
jne 0x22dc0a030
xor eax, eax
lea rdi, [rbx + 0xa8]
mov ecx, 0xfa
movaps xmm7, xmmword [0x22dd93fb0]
rep stosq qword [rdi], rax
mov rax, qword [0x22dd94010]
movaps xmm8, xmmword [0x22dd93fc0]
movq qword [rbx + 0x2c], xmm6
movaps xmm9, xmmword [0x22dd93fd0]
mov rdx, qword [0x22ddacb20]
movss xmm6, dword [0x22dd93fa0]
movups xmmword [rbx + 0x5c], xmm7
mov qword [rbx + 0x53c], rax
mov rax, qword [0x22ddae310]
movups xmmword [rbx + 0x4c], xmm6
movups xmmword [rbx + 0x6c], xmm8
movups xmmword [rbx + 0x7c], xmm9
mov dword [rdi], 0
mov dword [rbx + 0xa8], 0x100
mov dword [rbx + 0x554], 1
mov dword [rbx + 0x5f0], 0xffffffff
mov qword [rax], rdx
call fcn.22dae0890
test eax, eax
je 0x22dc0a040
mov rsi, qword [0x22ddae300]
mov r9d, dword [rsi]
test r9d, r9d
je 0x22dc0a680
mov r8d, dword [rsi + 0x410]
test r8d, r8d
je 0x22dc0a68c
mov rax, qword [rsi + 0x408]
mov rcx, qword [rax]
test rcx, rcx
je 0x22dc0a68c
call fcn.22dad5980
mov ecx, dword [rbx + 0x2c]
mov edx, dword [rax]
mov dword [rbx + 0x24], edx
mov eax, dword [rax + 4]
mov dword [rbx + 0x28], eax
test ecx, ecx
jne 0x22dc09ddd
mov dword [rbx + 0x2c], edx
mov edx, dword [rbx + 0x30]
test edx, edx
jne 0x22dc09de7
mov dword [rbx + 0x30], eax
call fcn.22dad6200
mov eax, dword [rbx + 0x10]
test al, 2
je 0x22dc09df7
mov byte [rbx + 0x15], 1
test al, 0x80
je 0x22dc0a640
xor edx, edx
mov ecx, 0x20004
call fcn.22dad6340
test byte [rbx + 0x10], 8
je 0x22dc0a628
xor edx, edx
mov ecx, 0x20005
call fcn.22dad6340
test byte [rbx + 0x10], 4
je 0x22dc0a610
mov edx, 1
mov ecx, 0x20003
call fcn.22dad6340
mov eax, dword [rbx + 0x10]
test ah, 2
je 0x22dc09e48
and ah, 0xfd
mov dword [rbx + 0x10], eax
test ah, 4
je 0x22dc09e53
and ah, 0xfb
mov dword [rbx + 0x10], eax
test ah, 8
je 0x22dc0a5f8
xor edx, edx
mov ecx, 0x20001
call fcn.22dad6340
test byte [rbx + 0x11], 0x10
je 0x22dc0a5e0
mov edx, 1
mov ecx, 0x20007
call fcn.22dad6340
test byte [rbx + 0x10], 0x10
je 0x22dc0a5c8
mov edx, 1
mov ecx, 0x2000a
call fcn.22dad6340
test byte [rbx + 0x11], 0x20
je 0x22dc0a5b0
mov edx, 1
mov ecx, 0x2200c
call fcn.22dad6340
test byte [rbx + 0x11], 0x40
je 0x22dc0a570
mov edx, 1
mov ecx, 0x2000d
call fcn.22dad6340
test byte [rbx + 0x10], 0x20
jne 0x22dc0a586
mov edx, 3
mov ecx, 0x22002
call fcn.22dad6340
mov edx, 3
mov ecx, 0x22003
call fcn.22dad6340
mov edx, 0x32001
mov ecx, 0x22008
call fcn.22dad6340
xor edx, edx
mov ecx, 0x22006
call fcn.22dad6340
xor ecx, ecx
call fcn.22dad9380
cmp byte [rbx + 0x15], 0
je 0x22dc0a090
mov eax, dword [rbx + 0x24]
mov edx, dword [rbx + 0x2c]
mov dword [rsp + 0x30], 0
mov ecx, dword [rbx + 0x30]
shr edx, 1
shr eax, 1
sub eax, edx
mov edx, 0
cmovs eax, edx
mov edx, dword [rbx + 0x28]
shr ecx, 1
shr edx, 1
movd xmm0, eax
mov eax, dword [rsi]
sub edx, ecx
mov ecx, 0
cmovs edx, ecx
movd xmm4, edx
punpckldq xmm0, xmm4
movq qword [rbx + 0x1c], xmm0
test eax, eax
je 0x22dc0afc3
mov r12d, dword [rsi + 0x410]
test r12d, r12d
je 0x22dc0ade0
mov rax, qword [rsi + 0x408]
mov rcx, qword [rax]
lea rdx, [rsp + 0x30]
call fcn.22dadc6c0
mov ecx, dword [rsp + 0x30]
test ecx, ecx
jle 0x22dc09fcb
lea rcx, [rcx + rcx*2]
mov edx, dword [rbx + 0x2c]
mov r9d, dword [rbx + 0x30]
lea rcx, [rax + rcx*8]
nop word cs:[rax + rax]
mov r8d, dword [rax]
cmp r8d, edx
jb 0x22dc09fc2
cmp dword [rax + 4], r9d
jae 0x22dc0aaf0
add rax, 0x18
cmp rcx, rax
jne 0x22dc09fb0
mov r9d, dword [rbx + 0x28]
mov r8d, dword [rbx + 0x24]
lea rdx, str.SYSTEM:_Closest_fullscreen_videomode:__i_x__i
mov ecx, 4
call fcn.22dce6140
mov eax, dword [rbx + 0x24]
mov r8d, dword [rbx + 0x2c]
mov edx, dword [rbx + 0x28]
cmp eax, r8d
jb 0x22dc0a7d0
mov r9d, dword [rbx + 0x30]
mov rcx, qword [rbx + 0x2c]
cmp edx, r9d
jb 0x22dc0a7d4
cmp eax, r8d
ja 0x22dc0a6d0
cmp edx, r9d
ja 0x22dc0a6d0
mov qword [rbx + 0x3c], rcx
mov qword [rbx + 0x44], 0
jmp 0x22dc0a8e2
mov qword [rbx + 8], rsi
jmp 0x22dc09cf6
lea rdx, str.GLFW:_Failed_to_initialize_GLFW
mov ecx, 4
call fcn.22dce6140
mov byte [rbx + 0x14], 0
movaps xmm6, xmmword [rsp + 0x40]
mov ecx, 6
lea rdx, str.Failed_to_initialize_Graphic_Device
movaps xmm7, xmmword [rsp + 0x50]
movaps xmm8, xmmword [rsp + 0x60]
movaps xmm9, xmmword [rsp + 0x70]
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop r12
jmp fcn.22db29430
mov edx, dword [rbx + 0x30]
mov ecx, dword [rbx + 0x2c]
cmp edx, dword [rbx + 0x28]
je 0x22dc0a6a8
mov rax, qword [rbx + 8]
lea r8, [0x22dd9310a]
mov qword [rsp + 0x20], 0
mov r9d, 0
test rax, rax
cmovne r8, rax
call fcn.22dae18e0
mov qword [rbx], rax
mov r12, rax
test rax, rax
je 0x22dc0a658
movq xmm0, qword [rbx + 0x2c]
mov eax, dword [rsi]
mov edx, dword [rbx + 0x24]
mov r8d, dword [rbx + 0x28]
pshufd xmm3, xmm0, 0xe5
movd ecx, xmm0
movd r9d, xmm3
test eax, eax
je 0x22dc0af92
cmp qword [r12 + 0x50], 0
je 0x22dc0af18
movq qword [rbx + 0x3c], xmm0
test r12, r12
je 0x22dc0a658
test eax, eax
je 0x22dc0ab08
mov rax, qword [0x22ddae140]
mov qword [r12 + 0x2d8], rax
mov rax, qword [0x22ddae130]
mov qword [r12 + 0x300], rax
mov rax, qword [rbx]
test rax, rax
je 0x22dc0ab58
mov rdx, qword [0x22ddae120]
mov qword [rax + 0x2f8], rdx
mov rdx, rax
mov rcx, qword [0x22ddae110]
mov qword [rax + 0x2f0], rcx
mov rcx, qword [0x22ddae100]
mov qword [rdx + 0x350], rcx
mov rcx, qword [0x22ddad020]
mov qword [rax + 0x338], rcx
mov rcx, qword [0x22ddac840]
mov qword [rdx + 0x340], rcx
mov rcx, qword [0x22ddad300]
mov qword [rax + 0x318], rcx
mov rcx, qword [0x22ddad310]
mov qword [rdx + 0x320], rcx
mov rcx, qword [0x22ddad320]
mov qword [rax + 0x330], rcx
mov rcx, rax
mov rax, qword [0x22ddac850]
mov qword [rdx + 0x328], rax
call fcn.22dad2a10
mov r9d, dword [rsi]
test r9d, r9d
je 0x22dc0a940
cmp dword [rsi + 0x162c], 1
je 0x22dc0a1fc
mov r8d, 0x40
lea rdx, str.C:Users_vivio.nimblepkgs2_nimraylib_now_0.15.0_f136f0da2803a36acc6b869bbc8b621193f1849ccsources_raylib_mangledexternal_glfw_src_win32_thread.c
lea rcx, str.tls__win32.allocated__GLFW_TRUE
call qword [sym.imp.msvcrt.dll__wassert]
mov ecx, dword [rsi + 0x1630]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
test rax, rax
je 0x22dc0afad
xor ecx, ecx
call qword [rax + 0x260]
mov ecx, dword [rbx + 0x10]
test cl, 0x40
jne 0x22dc0a958
mov edx, dword [rbx + 0x2c]
mov eax, dword [rbx + 0x30]
and ch, 0x20
jne 0x22dc0a985
mov dword [rbx + 0x3c], edx
mov ecx, 3
mov edi, 0xbf800000
mov dword [rbx + 0x34], edx
lea rdx, str.DISPLAY:_Device_initialized_successfully
mov dword [rbx + 0x40], eax
mov dword [rbx + 0x38], eax
call fcn.22dce62c0
mov r9d, dword [rbx + 0x28]
mov r8d, dword [rbx + 0x24]
lea rdx, str.______Display_size:__i_x__i
mov ecx, 3
call fcn.22dce62c0
mov r9d, dword [rbx + 0x30]
mov r8d, dword [rbx + 0x2c]
lea rdx, str.______Screen_size:___i_x__i
mov ecx, 3
call fcn.22dce62c0
mov r9d, dword [rbx + 0x40]
mov r8d, dword [rbx + 0x3c]
lea rdx, str.______Render_size:___i_x__i
mov ecx, 3
call fcn.22dce62c0
mov r9d, dword [rbx + 0x48]
mov r8d, dword [rbx + 0x44]
lea rdx, str.______Viewport_offsets:__i___i
mov ecx, 3
call fcn.22dce62c0
mov rcx, qword [0x22ddb2680]
call fcn.22dbf5c80
mov edx, dword [rbx + 0x38]
mov ecx, dword [rbx + 0x34]
call fcn.22dbf69d0
mov eax, dword [rbx + 0x48]
movq xmm0, qword [rbx + 0x34]
mov r9d, dword [rbx + 0x38]
mov edx, eax
movq qword [rbx + 0x3c], xmm0
movd r8d, xmm0
shr edx, 0x1f
add edx, eax
mov eax, dword [rbx + 0x44]
sar edx, 1
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
mov rax, qword [0x22ddb2630]
sar ecx, 1
call qword [rax]
mov eax, dword [rbx + 0x40]
mov rbx, qword [0x22ddac700]
pxor xmm0, xmm0
pxor xmm4, xmm4
movss xmm2, dword [0x22dd94018]
cvtsi2sd xmm0, rax
mov edx, dword [rbx + 0x3c]
mov rax, qword [0x22ddadb80]
movaps xmm3, xmm2
cvtsi2ss xmm4, rdx
lea rdx, [rax + 0x50]
mov qword [rax + 0x9c], rdi
movabs rdi, 0xbf800000c0000000
mov qword [rax + 0xb8], rdi
movabs rdi, 0x3f80000000000000
movapd xmm1, xmm0
cvtsd2ss xmm0, xmm0
xorpd xmm1, xmmword [0x22dd94000]
xorps xmm0, xmmword [0x22dd93ff0]
mov qword [rax + 0x94], 0
cvtsd2ss xmm1, xmm1
divss xmm3, xmm4
mov dword [rax + 0xa8], 0
mov qword [rax + 0xb0], 0
mov qword [rax + 0xc0], 0
mov qword [rax + 0xc8], rdi
mov qword [rax + 0x48], rdx
mov dword [rax + 0x44], 0x1700
movaps xmmword [rax + 0x50], xmm6
movaps xmmword [rax + 0x60], xmm7
movaps xmmword [rax + 0x70], xmm8
movaps xmmword [rax + 0x80], xmm9
divss xmm2, xmm1
movss dword [rax + 0x90], xmm3
divss xmm0, xmm1
movss dword [rax + 0xa4], xmm2
movss dword [rax + 0xac], xmm0
test byte [rbx + 0x11], 2
jne 0x22dc0aa60
mov ecx, 1
mov byte [rbx + 0x14], 1
call sub.WINMM.dll_timeBeginPeriod
mov edx, dword [rsi]
test edx, edx
je 0x22dc0a790
mov eax, dword [rsi + 0x1670]
test eax, eax
jne 0x22dc0aa90
call qword [rsi + 0x24a8]
mov eax, eax
sub rax, qword [rsi + 0x1668]
pxor xmm0, xmm0
cvtsi2sd xmm0, rax
jns 0x22dc0a450
mov rdx, rax
and eax, 1
pxor xmm0, xmm0
shr rdx, 1
or rdx, rax
cvtsi2sd xmm0, rdx
addsd xmm0, xmm0
mov rax, qword [rsi + 0x1678]
pxor xmm1, xmm1
cvtsi2sd xmm1, rax
test rax, rax
jns 0x22dc0a47e
mov rdx, rax
and eax, 1
pxor xmm1, xmm1
shr rdx, 1
or rdx, rax
cvtsi2sd xmm1, rdx
addsd xmm1, xmm1
divsd xmm0, xmm1
movsd qword [rbx + 0x888], xmm0
xor ecx, ecx
call qword [sym.imp.msvcrt.dll__time64]
mov ecx, eax
call sub.msvcrt.dll_srand
mov r8, qword [0x22ddae4e0]
xor eax, eax
mov ecx, 0x200
mov edx, 0xfff
mov rdi, r8
rep stosq qword [rdi], rax
mov rcx, r8
call qword [sym.imp.msvcrt.dll__getcwd]
mov qword [rbx + 0xa0], rax
call fcn.22db20490
mov rsi, qword [0x22ddae4f0]
movaps xmm1, xmmword [0x22dd94010]
mov rax, qword [rsi + 0x20]
mov ecx, dword [rsi + 0xc]
movdqa xmm5, xmmword [rsi + 0x10]
movups xmm0, xmmword [rax + 0x5f0]
mov rax, qword [0x22ddb2e60]
addps xmm1, xmm0
addps xmm0, xmmword [0x22dd94020]
mov dword [rax], ecx
movups xmmword [rax + 4], xmm5
mov rax, qword [0x22ddb2e70]
shufps xmm1, xmm0, 0xe4
movaps xmmword [rax], xmm1
test byte [rbx + 0x11], 0x20
jne 0x22dc0a7a8
mov eax, dword [rbx + 0x2c]
pxor xmm0, xmm0
pxor xmm1, xmm1
cvtsi2ss xmm0, rax
mov rax, qword [0x22ddac700]
mov edx, dword [rax + 0x30]
cvtsi2ss xmm1, rdx
unpcklps xmm0, xmm1
movq xmm1, qword [0x22dd94030]
mulps xmm0, xmm1
movlps qword [rax + 0x544], xmm0
movaps xmm6, xmmword [rsp + 0x40]
movaps xmm7, xmmword [rsp + 0x50]
movaps xmm8, xmmword [rsp + 0x60]
movaps xmm9, xmmword [rsp + 0x70]
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop r12
ret
xor edx, edx
mov ecx, 0x2000d
call fcn.22dad6340
test byte [rbx + 0x10], 0x20
je 0x22dc09ed6
lea rdx, str.DISPLAY:_Trying_to_enable_MSAA_x4
mov ecx, 3
call fcn.22dce62c0
mov edx, 4
mov ecx, 0x2100d
call fcn.22dad6340
jmp 0x22dc09ed6
xor edx, edx
mov ecx, 0x2200c
call fcn.22dad6340
jmp 0x22dc09eb3
xor edx, edx
mov ecx, 0x2000a
call fcn.22dad6340
jmp 0x22dc09e9a
xor edx, edx
mov ecx, 0x20007
call fcn.22dad6340
jmp 0x22dc09e81
mov edx, 1
mov ecx, 0x20001
call fcn.22dad6340
jmp 0x22dc09e68
xor edx, edx
mov ecx, 0x20003
call fcn.22dad6340
jmp 0x22dc09e3a
mov edx, 1
mov ecx, 0x20005
call fcn.22dad6340
jmp 0x22dc09e21
mov edx, 1
mov ecx, 0x20004
call fcn.22dad6340
jmp 0x22dc09e0b
mov r10d, dword [rsi]
test r10d, r10d
je 0x22dc0a665
call fcn.22dae0600
lea rdx, str.GLFW:_Failed_to_initialize_Window
mov ecx, 4
call fcn.22dce6140
jmp 0x22dc0a051
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
lea rdx, str.GLFW:_Failed_to_get_primary_monitor
mov ecx, 4
call fcn.22dce6140
jmp 0x22dc0a051
cmp dword [rbx + 0x24], ecx
jne 0x22dc0a09f
xor edx, edx
mov ecx, 0x20006
call fcn.22dad6340
mov edx, dword [rbx + 0x30]
mov ecx, dword [rbx + 0x2c]
jmp 0x22dc0a09f
mov dword [rsp + 0x28], edx
mov ecx, 3
lea rdx, str.DISPLAY:_Upscaling_required:_Screen_size___ix_i__smaller_than_display_size___ix_i_
mov dword [rsp + 0x20], eax
call fcn.22dce62c0
mov eax, dword [rbx + 0x2c]
mov ecx, dword [rbx + 0x24]
test eax, eax
jne 0x22dc0ad90
mov edx, dword [rbx + 0x28]
mov dword [rbx + 0x2c], ecx
mov eax, ecx
mov dword [rbx + 0x30], edx
mov r8d, edx
pxor xmm0, xmm0
pxor xmm1, xmm1
pxor xmm2, xmm2
cvtsi2ss xmm1, rdx
mov edx, eax
cvtsi2ss xmm0, rcx
divss xmm0, xmm1
pxor xmm1, xmm1
cvtsi2ss xmm1, rdx
mov edx, r8d
cvtsi2ss xmm2, rdx
movaps xmm3, xmm1
divss xmm3, xmm2
comiss xmm3, xmm0
jb 0x22dc0af4d
divss xmm1, xmm0
movss xmm2, dword [0x22dd93ff0]
movss xmm0, dword [0x22dd93fe0]
mov dword [rbx + 0x44], 0
andps xmm2, xmm1
orps xmm0, xmm2
addss xmm0, xmm1
cvttss2si edx, xmm0
movd xmm0, eax
movd xmm5, edx
sub edx, r8d
punpckldq xmm0, xmm5
mov dword [rbx + 0x48], edx
movq qword [rbx + 0x3c], xmm0
jmp 0x22dc0a8e2
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
pxor xmm0, xmm0
jmp 0x22dc0a482
mov r8d, 0x2601
mov edx, 0x2801
call fcn.22dbf5120
mov ecx, dword [rsi + 0xc]
mov r8d, 0x2601
mov edx, 0x2800
call fcn.22dbf5120
jmp 0x22dc0a517
mov r9d, dword [rbx + 0x30]
mov dword [rsp + 0x28], edx
mov ecx, 4
lea rdx, str.DISPLAY:_Downscaling_required:_Screen_size___ix_i__is_bigger_than_display_size___ix_i_
mov dword [rsp + 0x20], eax
call fcn.22dce6140
mov eax, dword [rbx + 0x2c]
mov r8d, dword [rbx + 0x24]
pxor xmm4, xmm4
movq xmm3, qword [rbx + 0x24]
pxor xmm2, xmm2
pxor xmm1, xmm1
pxor xmm0, xmm0
mov rbx, qword [0x22ddac700]
cvtsi2ss xmm4, rax
mov eax, r8d
cvtsi2ss xmm2, rax
pshufd xmm5, xmm3, 0xe5
movd r9d, xmm5
mov eax, dword [rbx + 0x30]
cvtsi2ss xmm1, rax
mov eax, r9d
cvtsi2ss xmm0, rax
divss xmm2, xmm4
divss xmm0, xmm1
comiss xmm0, xmm2
jb 0x22dc0aaa8
mulss xmm1, xmm2
movss xmm4, dword [0x22dd93ff0]
movss xmm0, dword [0x22dd93fe0]
movd edi, xmm5
andps xmm4, xmm1
orps xmm0, xmm4
addss xmm0, xmm1
cvttss2si eax, xmm0
pxor xmm0, xmm0
sub edi, eax
movd xmm1, edi
movabs rax, 0x3f80000000000000
mov qword [rbx + 0x50], 0
punpckldq xmm0, xmm1
lea rdx, str.DISPLAY:_Downscale_matrix_generated__content_will_be_rendered_at___ix_i_
mov qword [rbx + 0x58], 0
mov ecx, 4
mov qword [rbx + 0x64], 0
mov qword [rbx + 0x6c], 0
mov qword [rbx + 0x74], 0x3f800000
mov qword [rbx + 0x7c], 0
mov qword [rbx + 0x84], rax
movq qword [rbx + 0x44], xmm0
movq qword [rbx + 0x3c], xmm3
movss dword [rbx + 0x4c], xmm2
movss dword [rbx + 0x60], xmm2
call fcn.22dce6140
mov edi, dword [rsi]
test edi, edi
je 0x22dc0b014
mov r11d, dword [rsi + 0x410]
test r11d, r11d
je 0x22dc0adf0
mov rax, qword [rsi + 0x408]
mov r9, qword [rax]
mov rax, qword [rbx + 8]
mov edx, dword [rbx + 0x28]
lea r8, [0x22dd9310a]
mov ecx, dword [rbx + 0x24]
mov qword [rsp + 0x20], 0
test rax, rax
cmovne r8, rax
call fcn.22dae18e0
mov qword [rbx], rax
mov r12, rax
mov eax, dword [rsi]
jmp 0x22dc0a109
mov ecx, 0x10001
xor edx, edx
call fcn.22dad20f0
mov ecx, dword [rbx + 0x10]
test cl, 0x40
je 0x22dc0a225
mov ecx, 1
call fcn.22dad2c00
lea rdx, str.DISPLAY:_Trying_to_enable_VSYNC
mov ecx, 3
call fcn.22dce62c0
mov ecx, dword [rbx + 0x10]
mov edx, dword [rbx + 0x2c]
mov eax, dword [rbx + 0x30]
and ch, 0x20
je 0x22dc0a234
mov rdi, qword [rbx]
test rdi, rdi
je 0x22dc0afd6
mov r8d, dword [rsi]
test r8d, r8d
je 0x22dc0ada8
lea rdx, [rsp + 0x30]
mov rcx, qword [rdi + 0x358]
call qword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x3c]
pxor xmm3, xmm3
pxor xmm2, xmm2
cvtsi2ss xmm3, eax
cvtsi2ss xmm2, edx
mov ecx, dword [rbx + 0x30]
pxor xmm1, xmm1
pxor xmm0, xmm0
movaps xmm4, xmm2
mov rbx, qword [0x22ddac700]
movabs rdi, 0x3f80000000000000
cvtsi2ss xmm1, rcx
mov ecx, dword [rbx + 0x2c]
mov qword [rbx + 0x50], 0
mov qword [rbx + 0x58], 0
cvtsi2ss xmm0, rcx
mov qword [rbx + 0x64], 0
mov qword [rbx + 0x6c], 0
mov qword [rbx + 0x74], 0x3f800000
mov qword [rbx + 0x7c], 0
divss xmm4, xmm0
mov qword [rbx + 0x84], rdi
divss xmm0, xmm2
movss dword [rbx + 0x4c], xmm4
movaps xmm4, xmm3
divss xmm4, xmm1
divss xmm1, xmm3
movss dword [rbx + 0x60], xmm4
unpcklps xmm0, xmm1
movlps qword [rbx + 0x53c], xmm0
jmp 0x22dc0a234
mov rdi, qword [rbx]
test rdi, rdi
je 0x22dc0aff5
mov ecx, dword [rsi]
test ecx, ecx
je 0x22dc0adc8
mov rcx, qword [rdi + 0x358]
mov edx, 6
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x22dc0a3f7
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rsp + 0x30]
jmp 0x22dc0a425
mulss xmm0, xmm4
movss xmm2, dword [0x22dd93ff0]
movss xmm1, dword [0x22dd93fe0]
mov edi, r8d
andps xmm2, xmm0
orps xmm1, xmm2
pxor xmm2, xmm2
addss xmm1, xmm0
cvttss2si eax, xmm1
pxor xmm1, xmm1
sub edi, eax
mov eax, eax
cvtsi2ss xmm2, rax
movd xmm0, edi
divss xmm2, xmm4
jmp 0x22dc0a878
mov dword [rbx + 0x24], r8d
mov r9d, dword [rax + 4]
mov dword [rbx + 0x28], r9d
jmp 0x22dc09fd3
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov r12, qword [rbx]
test r12, r12
jne 0x22dc0ab36
mov r8d, 0x41c
lea rdx, [0x22dd92c48]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
mov eax, dword [rsi]
test eax, eax
jne 0x22dc0a129
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rdx, qword [rbx]
test rdx, rdx
jne 0x22dc0ab74
nop dword [rax]
lea rdx, [0x22dd92c48]
mov r8d, 0x411
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor edx, edx
mov r9d, dword [rsi]
test r9d, r9d
je 0x22dc0aef8
mov rcx, qword [0x22ddae120]
mov rax, qword [rbx]
mov qword [rdx + 0x2f8], rcx
test rax, rax
jne 0x22dc0b050
mov r8d, 0x406
lea rdx, [0x22dd92c48]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor eax, eax
mov r8d, dword [rsi]
test r8d, r8d
je 0x22dc0aed8
mov rcx, qword [0x22ddae110]
mov rdx, qword [rbx]
mov qword [rax + 0x2f0], rcx
test rdx, rdx
jne 0x22dc0b048
lea rdx, [0x22dd92ff0]
mov r8d, 0x39d
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor edx, edx
mov ecx, dword [rsi]
test ecx, ecx
je 0x22dc0ae60
mov rcx, qword [0x22ddae100]
mov rax, qword [rbx]
mov qword [rdx + 0x350], rcx
test rax, rax
jne 0x22dc0b028
mov r8d, 0x353
lea rdx, [0x22dd92ff0]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor eax, eax
mov edx, dword [rsi]
test edx, edx
je 0x22dc0ae40
mov rcx, qword [0x22ddad020]
mov rdx, qword [rbx]
mov qword [rax + 0x338], rcx
test rdx, rdx
jne 0x22dc0b040
lea rdx, [0x22dd92ff0]
mov r8d, 0x35d
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor edx, edx
mov eax, dword [rsi]
test eax, eax
je 0x22dc0ae20
mov rcx, qword [0x22ddac840]
mov rax, qword [rbx]
mov qword [rdx + 0x340], rcx
test rax, rax
jne 0x22dc0b038
mov r8d, 0x372
lea rdx, [0x22dd92ff0]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor eax, eax
mov r12d, dword [rsi]
test r12d, r12d
je 0x22dc0ae00
mov rcx, qword [0x22ddad300]
mov rdx, qword [rbx]
mov qword [rax + 0x318], rcx
test rdx, rdx
jne 0x22dc0b030
lea rdx, [0x22dd92ff0]
mov r8d, 0x37d
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor edx, edx
mov edi, dword [rsi]
test edi, edi
je 0x22dc0aeb8
mov rcx, qword [0x22ddad310]
mov rax, qword [rbx]
mov qword [rdx + 0x320], rcx
test rax, rax
jne 0x22dc0b060
mov r8d, 0x393
lea rdx, [0x22dd92ff0]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor eax, eax
mov r11d, dword [rsi]
test r11d, r11d
je 0x22dc0ae98
mov rcx, qword [0x22ddad320]
mov rdx, qword [rbx]
mov qword [rax + 0x330], rcx
test rdx, rdx
jne 0x22dc0b058
lea rdx, [0x22dd92ff0]
mov r8d, 0x388
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
xor edx, edx
mov r10d, dword [rsi]
test r10d, r10d
je 0x22dc0ae80
mov rcx, qword [rbx]
jmp 0x22dc0a1ba
mov r8d, dword [rbx + 0x30]
test r8d, r8d
je 0x22dc0a6f7
mov edx, dword [rbx + 0x28]
jmp 0x22dc0a705
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
pxor xmm2, xmm2
xor eax, eax
xor edx, edx
movaps xmm3, xmm2
jmp 0x22dc0a9c7
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
jmp 0x22dc0a3f7
xor ecx, ecx
jmp 0x22dc09f85
xor r9d, r9d
jmp 0x22dc0a906
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rdx, qword [rbx]
test rdx, rdx
jne 0x22dc0acfa
jmp 0x22dc0acde
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rax, qword [rbx]
test rax, rax
jne 0x22dc0acb8
jmp 0x22dc0ac9c
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rdx, qword [rbx]
test rdx, rdx
jne 0x22dc0ac78
jmp 0x22dc0ac5c
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rax, qword [rbx]
test rax, rax
jne 0x22dc0ac38
jmp 0x22dc0ac1c
mov ecx, 0x10001
xor edx, edx
call fcn.22dad20f0
mov rcx, qword [rbx]
jmp 0x22dc0a1c8
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rdx, qword [rbx]
test rdx, rdx
jne 0x22dc0ad7c
jmp 0x22dc0ad60
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rax, qword [rbx]
test rax, rax
jne 0x22dc0ad3a
jmp 0x22dc0ad1e
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rdx, qword [rbx]
test rdx, rdx
jne 0x22dc0abf8
jmp 0x22dc0abdc
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
mov rax, qword [rbx]
test rax, rax
jne 0x22dc0abb6
jmp 0x22dc0ab9a
shr r9d, 1
shr r8d, 1
mov eax, 0
shr ecx, 1
shr edx, 1
sub r8d, r9d
sub edx, ecx
mov rcx, r12
cmovs edx, eax
test r8d, r8d
cmovs r8d, eax
call fcn.22dae28c0
movq xmm0, qword [rbx + 0x2c]
mov r12, qword [rbx]
mov eax, dword [rsi]
jmp 0x22dc0a104
mulss xmm0, xmm2
movss xmm2, dword [0x22dd93ff0]
movss xmm1, dword [0x22dd93fe0]
movd xmm5, r8d
mov dword [rbx + 0x48], 0
andps xmm2, xmm0
orps xmm1, xmm2
addss xmm1, xmm0
cvttss2si edx, xmm1
movd xmm0, edx
sub edx, eax
punpckldq xmm0, xmm5
mov dword [rbx + 0x44], edx
movq qword [rbx + 0x3c], xmm0
jmp 0x22dc0a8e2
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
movq xmm0, qword [rbx + 0x2c]
mov r12, qword [rbx]
mov eax, dword [rsi]
jmp 0x22dc0a104
lea rdx, str.Cannot_set_swap_interval_without_a_current_OpenGL_or_OpenGL_ES_context
mov ecx, 0x10002
call fcn.22dad20f0
jmp 0x22dc0a219
mov ecx, 0x10001
xor edx, edx
call fcn.22dad20f0
xor ecx, ecx
jmp 0x22dc09f85
mov r8d, 0x293
lea rdx, [0x22dd92c48]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
jmp 0x22dc0a991
mov r8d, 0x2e0
lea rdx, [0x22dd92c48]
lea rcx, [0x22dd92d64]
call qword [sym.imp.msvcrt.dll__wassert]
jmp 0x22dc0aa6c
xor edx, edx
mov ecx, 0x10001
call fcn.22dad20f0
xor r9d, r9d
jmp 0x22dc0a906
mov rdx, rax
jmp 0x22dc0a171
mov rax, rdx
jmp 0x22dc0a19b
mov rdx, rax
jmp 0x22dc0a18d
mov rax, rdx
jmp 0x22dc0a17f
mov rax, rdx
jmp 0x22dc0a163
mov rdx, rax
jmp 0x22dc0a155
mov rcx, rdx
jmp 0x22dc0a1ba
mov rdx, rax
jmp 0x22dc0a1a9