Function at 0x407fe1
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push esi
push edi
call fcn.00401000
push eax
call fcn.004145a8
add esp, 4
call fcn.00404181
mov dword [0x4222f8], 0
mov dword [0x4222fc], 0
push 2
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [0x42230c], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [0x422308], eax
push str.icon
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_LoadIconA]
mov dword [0x422304], eax
mov ecx, dword [ebp + 8]
mov dword [0x422300], ecx
mov dword [0x4222f4], 0x4083e7
mov dword [0x422314], 0x42108c
mov dword [0x422310], 0
mov dword [0x4222f0], 0x23
push 0x4222f0
call dword [sym.imp.USER32.dll_RegisterClassA]
and eax, 0xffff
test eax, eax
jne 0x40808f
xor eax, eax
jmp 0x4083df
call dword [sym.imp.USER32.dll_CreateMenu]
mov dword [ebp - 8], eax
call dword [sym.imp.USER32.dll_CreateMenu]
mov dword [ebp - 0xc], eax
push 0x421094
push 1
push 0
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.USER32.dll_AppendMenuA]
push 0x42109c
push 2
push 0
mov eax, dword [ebp - 0xc]
push eax
call dword [sym.imp.USER32.dll_AppendMenuA]
push 0x4210a0
mov ecx, dword [ebp - 0xc]
push ecx
push 0x10
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.USER32.dll_AppendMenuA]
call dword [sym.imp.USER32.dll_CreateMenu]
mov dword [ebp - 0xc], eax
push 0x4210ac
push 3
push 0
mov eax, dword [ebp - 0xc]
push eax
call dword [sym.imp.USER32.dll_AppendMenuA]
push 0x4210b0
push 4
push 0
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.USER32.dll_AppendMenuA]
push 0x4210b4
mov edx, dword [ebp - 0xc]
push edx
push 0x10
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.USER32.dll_AppendMenuA]
call dword [sym.imp.USER32.dll_CreateMenu]
mov dword [ebp - 0xc], eax
push 0x4210bc
push 5
push 0
mov ecx, dword [ebp - 0xc]
push ecx
call dword [sym.imp.USER32.dll_AppendMenuA]
push 0x4210c0
push 6
push 0
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.USER32.dll_AppendMenuA]
push 0x4210c4
mov eax, dword [ebp - 0xc]
push eax
push 0x10
mov ecx, dword [ebp - 8]
push ecx
call dword [sym.imp.USER32.dll_AppendMenuA]
push str.np_go.mid
push 0x80000000
mov edx, dword [0x4225a0]
push edx
mov eax, dword [0x422220]
push eax
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x422470], eax
push str.winer.mid
push 0x80000000
mov ecx, dword [0x4225a0]
push ecx
mov edx, dword [0x422220]
push edx
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x422474], eax
push str.yabo5.mid
push 0x80000000
mov eax, dword [0x4225a0]
push eax
mov ecx, dword [0x422220]
push ecx
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x4221f0], eax
push str.yabo6.mid
push 0x80000000
mov edx, dword [0x4225a0]
push edx
mov eax, dword [0x422220]
push eax
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x4221f4], eax
push str.yabo7.mid
push 0x80000000
mov ecx, dword [0x4225a0]
push ecx
mov edx, dword [0x422220]
push edx
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x4221f8], eax
push str.Opyabou.mid
push 0x80000000
mov eax, dword [0x4225a0]
push eax
mov ecx, dword [0x422220]
push ecx
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x4221d4], eax
push str.Yabou2.mid
push 0x80000000
mov edx, dword [0x4225a0]
push edx
mov eax, dword [0x422220]
push eax
call sub.MSVFW32.dll_MCIWndCreateA
add esp, 0x10
mov dword [0x4221d0], eax
cmp dword [0x422488], 1
jne 0x408278
push 0xf
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [ebp - 0x10], eax
jmp 0x40827f
mov dword [ebp - 0x10], 0
push 0
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 8]
push edx
push 0
push 0x21
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [0x422484]
lea esi, [ecx + eax*2]
push 0xf
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edi, eax
add edi, dword [ebp - 0x10]
push 4
call dword [sym.imp.USER32.dll_GetSystemMetrics]
add edi, esi
add eax, edi
push eax
push 0x20
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov edx, dword [0x422480]
lea eax, [edx + eax*2]
push eax
push 0x80000000
push 0x80000000
push 0xca0000
push 0x42112c
push str.YABOU
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x422220], eax
call fcn.00404c01
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 2
jne 0x408319
push 0
push str.yabou.dat
mov ecx, dword [0x422220]
push ecx
call fcn.00401079
add esp, 0xc
xor eax, eax
jmp 0x4083df
cmp dword [ebp - 4], 1
jne 0x40833c
push 0
push 0x421170
mov edx, dword [0x422220]
push edx
call fcn.00401079
add esp, 0xc
xor eax, eax
jmp 0x4083df
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [0x422220]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
call fcn.00407f1e
push 0
push 0
push 0x10
mov edx, dword [0x422470]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x10
mov eax, dword [0x422474]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x10
mov ecx, dword [0x4221f0]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x10
mov edx, dword [0x4221f4]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x10
mov eax, dword [0x4221f8]
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x10
mov ecx, dword [0x4221d4]
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 0
push 0x10
mov edx, dword [0x4221d0]
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
call fcn.00405571
mov eax, dword [0x4222c0]
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0x10