Function at 0x100c6d60
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
push 0
push str.title
push edi
call fcn.10096aa0
push 0
push 0x1fff0000
push 0x1011e104
push edi
mov dword [ebp - 0x20], eax
call fcn.10096720
push 0
push 0x1fff0000
push 0x1011e108
push edi
mov dword [ebp - 0x10], eax
call fcn.10096720
push 0
push 0
push str.width
push edi
mov dword [ebp - 4], eax
call fcn.10096720
push 0
push 0
push str.height
push edi
mov dword [ebp - 8], eax
call fcn.10096720
add esp, 0x4c
mov dword [ebp - 0xc], eax
push 0
push str.parent
push edi
call fcn.100969a0
push 0
push 0
push str.flags
push edi
mov dword [ebp - 0x1c], eax
call fcn.10096720
add esp, 0x1c
mov ebx, eax
xor esi, esi
jmp 0x100c6e00
cmp dword [esi + 0x10165860], 0
mov eax, dword [esi + 0x10165858]
je 0x100c6e21
push 1
push eax
push edi
call fcn.10096340
add esp, 0xc
test eax, eax
jne 0x100c6e37
jmp 0x100c6e31
push 0
push eax
push edi
call fcn.10096340
add esp, 0xc
test eax, eax
je 0x100c6e37
or ebx, dword [esi + 0x1016585c]
add esi, 0xc
cmp esi, 0xcc
jb 0x100c6e00
mov ecx, dword [0x1016cda4]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
test ecx, ecx
jne 0x100c6e72
push 0x20
call fcn.10001750
add esp, 4
test eax, eax
js 0x100c6e8d
mov ecx, dword [0x1016cda4]
test ecx, ecx
je 0x100c6e8d
test ebx, 0xc0000
je 0x100c6ead
test byte [ecx + 0x1b8], 2
jne 0x100c6e96
push 4
call fcn.10063810
add esp, 4
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x1c]
test edx, edx
je 0x100c6ed3
lea eax, [ecx + 0x194]
cmp dword [edx], eax
jne 0x100c6ed3
and ebx, 0xffffff2e
mov edx, ebx
and edx, 0xe0000
lea eax, [edx - 1]
test edx, eax
je 0x100c6ee9
push edx
push str.Conflicting_window_type_flags_specified:_0x_.8x
call fcn.100638c0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Tooltip_and_popup_menu_windows_must_specify_a_parent_window
call fcn.100638c0
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x100c6efc
push ecx
call eax
mov ecx, dword [0x1016cda4]
add esp, 4
mov eax, dword [ebp - 8]
mov edx, 1
mov esi, dword [ebp - 0x10]
cmp eax, edx
mov edi, esi
cmovl eax, edx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0xc]
cmp eax, edx
cmovl eax, edx
mov edx, dword [ebp - 4]
mov dword [ebp - 0xc], eax
and edi, 0xffff0000
mov eax, edx
and eax, 0xffff0000
cmp edi, 0x1fff0000
je 0x100c6f56
cmp eax, 0x1fff0000
je 0x100c6f4e
cmp edi, 0x2fff0000
je 0x100c6f56
cmp eax, 0x2fff0000
jne 0x100c701b
cmp edi, 0x2fff0000
jne 0x100c6f5d
movzx esi, si
test esi, esi
jne 0x100c6f72
cmp eax, 0x1fff0000
je 0x100c6f6b
cmp eax, 0x2fff0000
jne 0x100c6f7f
movzx esi, dx
test esi, esi
je 0x100c6f7f
push esi
call fcn.100c9080
add esp, 4
test eax, eax
jns 0x100c6f86
call fcn.100c94f0
mov esi, eax
xor eax, eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x30]
push eax
push esi
call fcn.100c8d60
add esp, 8
cmp edi, 0x2fff0000
je 0x100c6fb1
cmp edi, 0x1fff0000
jne 0x100c6fd2
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 8]
cdq
sub eax, edx
mov esi, eax
xor eax, eax
sar esi, 1
add esi, dword [ebp - 0x30]
cmp edi, 0x1fff0000
mov dword [ebp - 0x10], esi
sete al
mov dword [ebp - 0x14], eax
mov edi, dword [ebp - 4]
mov ecx, edi
and ecx, 0xffff0000
cmp ecx, 0x2fff0000
je 0x100c6ff5
cmp ecx, 0x1fff0000
je 0x100c6ff5
mov ecx, dword [0x1016cda4]
jmp 0x100c701e
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0xc]
cdq
sub eax, edx
mov edi, eax
xor eax, eax
sar edi, 1
add edi, dword [ebp - 0x2c]
cmp ecx, 0x1fff0000
mov ecx, dword [0x1016cda4]
sete al
mov dword [ebp - 0x18], eax
jmp 0x100c701e
mov edi, dword [ebp - 4]
mov edx, ebx
and edx, 0x30000002
lea eax, [edx - 1]
test edx, eax
je 0x100c7044
push edx
push str.Conflicting_window_graphics_flags_specified:_0x_.8x
call fcn.100638c0
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
test edx, edx
jne 0x100c705c
push edx
push str.SDL_VIDEO_EXTERNAL_CONTEXT
call fcn.10088500
mov ecx, dword [0x1016cda4]
add esp, 8
test bl, 2
je 0x100c709f
cmp dword [ecx + 0xbc], 0
jne 0x100c7087
push dword [ecx]
push str.OpenGL
push str._s_support_is_either_not_configured_in_SDL_or_not_available_in_current_SDL_video_driver___s__or_platform
call fcn.100638c0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
call fcn.100c8340
add esp, 4
test eax, eax
js 0x100c6e8d
mov ecx, dword [0x1016cda4]
test ebx, 0x10000000
je 0x100c70e5
cmp dword [ecx + 0xe8], 0
jne 0x100c70cd
push dword [ecx]
push str.Vulkan
push str._s_support_is_either_not_configured_in_SDL_or_not_available_in_current_SDL_video_driver___s__or_platform
call fcn.100638c0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0
call fcn.100cdb30
add esp, 4
test eax, eax
js 0x100c6e8d
mov ecx, dword [0x1016cda4]
test ebx, 0x20000000
je 0x100c7113
cmp dword [ecx + 0xec], 0
jne 0x100c7113
push dword [ecx]
push str.Metal
push str._s_support_is_either_not_configured_in_SDL_or_not_available_in_current_SDL_video_driver___s__or_platform
call fcn.100638c0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x10c
push 1
call fcn.10091300
mov esi, eax
add esp, 8
test esi, esi
je 0x100c6e8d
mov eax, dword [0x1016cda4]
add eax, 0x194
mov dword [esi], eax
call fcn.10001330
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x10]
mov dword [esi + 0x10], eax
mov dword [esi + 0x50], eax
mov dword [esi + 0x60], eax
mov eax, dword [ebp - 8]
mov dword [esi + 0x18], eax
mov dword [esi + 0x58], eax
mov dword [esi + 0x68], eax
mov eax, dword [ebp - 0xc]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x5c], eax
mov dword [esi + 0x6c], eax
mov eax, dword [ebp - 0x14]
mov dword [esi + 0x74], eax
mov eax, dword [ebp - 0x18]
mov dword [esi + 0x14], edi
mov dword [esi + 0x54], edi
mov dword [esi + 0x64], edi
mov dword [esi + 0x78], eax
test bl, 1
je 0x100c720c
mov eax, dword [0x1016cda4]
test eax, eax
jne 0x100c7192
push str.Video_subsystem_has_not_been_initialized
jmp 0x100c71bb
add eax, 0x194
cmp dword [esi], eax
jne 0x100c71b6
test byte [esi + 0x38], 1
je 0x100c71ab
mov eax, dword [esi + 0x98]
test eax, eax
jne 0x100c71c5
push esi
call fcn.100c8f70
add esp, 4
jmp 0x100c71c5
push str.Invalid_window
call fcn.100638c0
add esp, 4
xor eax, eax
push eax
call fcn.100c9080
mov ecx, eax
add esp, 4
test ecx, ecx
jns 0x100c71d8
xor eax, eax
jmp 0x100c71e6
mov eax, dword [0x1016cda4]
mov eax, dword [eax + 0x188]
mov eax, dword [eax + ecx*4]
lea ecx, [ebp - 0x30]
push ecx
push dword [eax]
call fcn.100c8d60
mov eax, dword [ebp - 0x30]
add esp, 8
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0x2c]
mov dword [esi + 0x14], eax
mov eax, dword [ebp - 0x28]
mov dword [esi + 0x18], eax
mov eax, dword [ebp - 0x24]
mov dword [esi + 0x1c], eax
mov eax, ebx
mov dword [esi + 0x40], 0x3f800000
and eax, 0xf00ea07a
mov dword [esi + 0xb4], 0x3f800000
or eax, 8
mov dword [esi + 0x38], eax
mov eax, dword [0x1016cda4]
push esi
mov eax, dword [eax + 0x18c]
mov dword [esi + 0xf8], eax
mov dword [esi + 0xcc], 0
call fcn.100c9020
mov ecx, dword [0x1016cda4]
add esp, 4
mov dword [esi + 0x4c], eax
mov eax, dword [ecx + 0x18c]
test eax, eax
je 0x100c7267
mov dword [eax + 0xf4], esi
mov edx, dword [ebp - 0x1c]
mov dword [ecx + 0x18c], esi
test edx, edx
je 0x100c729c
mov dword [esi + 0xfc], edx
mov eax, dword [edx + 0x100]
mov dword [esi + 0x108], eax
mov eax, dword [edx + 0x100]
test eax, eax
je 0x100c7296
mov dword [eax + 0x104], esi
mov dword [edx + 0x100], esi
mov eax, dword [ecx + 0x24]
test eax, eax
je 0x100c72c9
push dword [ebp + 8]
push esi
push ecx
call eax
add esp, 0xc
test eax, eax
jns 0x100c72c3
push esi
call fcn.100c7600
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x1016cda4]
mov edi, dword [ebp - 0x20]
test edi, edi
je 0x100c7330
test ecx, ecx
jne 0x100c72db
push str.Video_subsystem_has_not_been_initialized
jmp 0x100c7328
lea eax, [ecx + 0x194]
cmp dword [esi], eax
jne 0x100c7323
test dword [esi + 0x38], 0xc0000
je 0x100c72f5
push str.Operation_invalid_on_popup_windows
jmp 0x100c7328
mov eax, dword [esi + 8]
cmp edi, eax
je 0x100c7330
push eax
call fcn.10091350
push edi
call fcn.100ba680
mov dword [esi + 8], eax
add esp, 8
mov eax, dword [0x1016cda4]
mov ecx, dword [eax + 0x28]
test ecx, ecx
je 0x100c7330
push esi
push eax
call ecx
add esp, 8
jmp 0x100c7330
push str.Invalid_window
call fcn.100638c0
add esp, 4
push ebx
push esi
call fcn.100c7a10
push esi
call fcn.100c6890
add esp, 0xc
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret