Function at 0x4364b0
Capabilities:
Hide graphical window

Disassembly:
sub esp, 0x84
push ebx
push ebp
mov ebp, dword [esp + 0x90]
push esi
push edi
push 0
push ebp
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov esi, eax
mov edi, dword [esp + 0x9c]
mov ebx, dword [esp + 0xa0]
cmp edi, 7
ja 0x436517
cmp edi, 7
je 0x4364ff
mov eax, edi
sub eax, 2
jne 0x4369a8
push 0
push 0
push ebp
call dword [sym.imp.USER32.dll_SetWindowLongA]
jmp 0x4369a8
mov eax, dword [esi + 0x44]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x4369a8
mov eax, dword [esi + 0x1c]
test eax, eax
jmp 0x436973
cmp edi, 0xf
ja 0x436601
je 0x436557
cmp edi, 8
jne 0x4369a8
mov dword [esp + 0x14], 0xc
mov ecx, dword [esi + 4]
push 2
push ecx
call fcn.00403b50
lea edx, [esp + 0x14]
push edx
push 0xc
push eax
call fcn.004058e0
mov dword [esi + 0x14], 0
jmp 0x4369a8
lea eax, [esp + 0x54]
push eax
push ebp
call dword [sym.imp.USER32.dll_BeginPaint]
lea ecx, [esp + 0x5c]
lea edx, [esp + 0x2c]
push ecx
push edx
mov dword [esp + 0x1c], 0xb
call dword [sym.imp.USER32.dll_CopyRect]
mov ecx, dword [esi + 4]
lea eax, [esp + 0x10]
push eax
push 0
push 0x22
push ecx
call fcn.00403b80
cmp dword [esp + 0x10], 1
je 0x4365d0
lea edx, [esp + 0x44]
push edx
push ebp
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ebx, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x48]
add ebx, eax
add edx, eax
mov eax, dword [esp + 0x38]
add edi, ecx
add eax, ecx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], edi
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], eax
mov eax, dword [esi + 0x20]
test eax, eax
je 0x4365e6
mov ecx, dword [esi]
lea eax, [esp + 0x14]
push eax
push 0xb
push ecx
call fcn.00402bfb
lea edx, [esp + 0x54]
push edx
push ebp
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
cmp edi, 0x14
ja 0x43662b
je 0x436955
cmp edi, 0x10
jne 0x4369a8
push ebp
call dword [sym.imp.USER32.dll_DestroyWindow]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
cmp edi, 0x111
ja 0x436721
je 0x4366ce
cmp edi, 0x102
jne 0x4369a8
test esi, esi
je 0x4369a8
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x14], 0xa
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x14]
test eax, eax
je 0x43668d
mov edx, dword [esi + 0x28]
mov ecx, ebx
and ecx, 0xff
mov dword [esi + 0x14], 0
shl ecx, 8
add edx, ecx
mov eax, edx
mov dword [esi + 0x28], edx
mov dword [esp + 0x20], eax
jmp 0x4366ba
push ebx
call dword [sym.imp.KERNEL32.dll_IsDBCSLeadByte]
test eax, eax
je 0x4366a7
mov dword [esi + 0x14], 1
mov dword [esi + 0x28], ebx
jmp 0x4369a8
mov ecx, ebx
mov dword [esi + 0x14], 0
and ecx, 0xff
mov dword [esp + 0x20], ecx
mov eax, dword [esi]
lea edx, [esp + 0x14]
push edx
push 0xa
push eax
call fcn.00402bfb
jmp 0x4369a8
mov eax, dword [esi + 0x34]
test eax, eax
je 0x4369a8
mov ecx, ebx
shr ecx, 0x10
jne 0x4369a8
cmp bx, 7
ja 0x4369a8
push 0
push ebx
push 0x7ec1
push ebp
call dword [sym.imp.USER32.dll_PostMessageA]
mov eax, dword [esi + 0x34]
test eax, eax
je 0x43670b
push eax
call dword [sym.imp.USER32.dll_DestroyMenu]
mov dword [esi + 0x34], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
cmp edi, 0x11f
ja 0x4368e2
je 0x436898
cmp edi, 0x112
jne 0x4369a8
mov eax, ebx
and eax, 0xfff0
sub eax, 0xf020
je 0x436829
sub eax, 0x40
je 0x4367e7
sub eax, 0xc0
je 0x436794
cmp ebx, 0x1000
jne 0x4369a8
mov edx, dword [esi + 4]
mov eax, dword [0x445c90]
push edx
push sym.DEMO32.EXE_PlayerAbout
push ebp
push 0x39
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
mov eax, dword [0x445c84]
test eax, eax
je 0x4367b3
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4367b3
mov ecx, dword [0x445c84]
push 9
push ecx
jmp 0x4367b6
push 9
push ebp
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi + 0x24]
test eax, eax
je 0x436955
mov edx, dword [esi + 4]
push 5
push edx
call fcn.00403980
push eax
call fcn.00403018
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
mov eax, dword [0x445c30]
test eax, eax
je 0x436955
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x436955
mov eax, dword [0x445c3c]
mov ecx, dword [0x445c30]
push 0
push 0
push eax
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
mov eax, dword [0x445c84]
test eax, eax
je 0x436848
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x436848
mov edx, dword [0x445c84]
push 6
push edx
jmp 0x43684b
push 6
push ebp
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi + 4]
push 5
push eax
mov dword [esi + 0x24], 0
call fcn.00403980
mov edi, eax
test edi, edi
je 0x436955
push edi
call fcn.00402faa
cmp eax, 0xa
jne 0x436955
push edi
mov dword [esi + 0x24], 1
call fcn.00403064
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
mov eax, dword [esi + 0x34]
test eax, eax
je 0x4369a8
mov ecx, ebx
shr ecx, 0x10
cmp ecx, 0xffff
jne 0x4369a8
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x4369a8
push 0
push 0xffffffffffffffff
push 0x7ec1
push ebp
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
cmp edi, 0x311
ja 0x436982
je 0x436951
cmp edi, 0x200
jb 0x4369a8
cmp edi, 0x206
ja 0x4369a8
mov eax, dword [esi + 4]
lea edx, [esp + 0x10]
push edx
push 0
push 0x22
push eax
call fcn.00403b80
cmp dword [esp + 0x10], 1
jne 0x436939
mov ecx, dword [esp + 0xa4]
push 0
push ecx
push ebx
push edi
push ebp
push esi
call fcn.00436c90
add esp, 0x18
jmp 0x4369a8
mov edx, dword [esp + 0xa4]
push 1
push edx
push ebx
push edi
push ebp
push esi
call fcn.00436c90
add esp, 0x18
jmp 0x4369a8
cmp ebx, ebp
jne 0x436964
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10
mov eax, dword [esi + 0x44]
mov dword [esi + 0x1c], 1
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x4369a8
push 0
push 0
push ebp
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x4369a8
cmp edi, 0x7ec1
jne 0x4369a8
cmp ebx, 0xffffffff
jne 0x436993
or eax, ebx
jmp 0x43699a
mov eax, ebx
and eax, 0xffff
mov ecx, dword [esi + 0x3c]
mov edx, dword [esi + 0x38]
push eax
push ecx
push edx
call fcn.0043b570
mov eax, dword [esp + 0xa4]
push eax
push ebx
push edi
push ebp
call dword [sym.imp.USER32.dll_DefWindowProcA]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x84
ret 0x10