Function at 0x478128
Capabilities:
Hide graphical window

Disassembly:
push ebx
push esi
push edi
push ebp
mov esi, 0x4d4294
mov ebp, 0x4d2d00
push 0x7f02
push 0
call sub.USER32.dll_LoadCursorA
push eax
call sub.USER32.dll_SetCursor
mov edi, eax
call fcn.00474788
cmp dword [0x4d12a4], 0
jne 0x47815d
call fcn.0045ff7c
mov eax, dword [0x4d2c6c]
test eax, eax
je 0x478175
push 0
push 1
push 0x111
push eax
call sub.USER32.dll_SendMessageA
mov eax, dword [0x4cc16c]
test eax, eax
je 0x4781ac
mov ebx, eax
test ebx, ebx
je 0x4781ac
mov eax, dword [ebx + 0xc8]
push eax
call sub.USER32.dll_DestroyWindow
push ebx
call fcn.0042dab0
test eax, eax
je 0x4781a2
mov ebx, dword [ebx + 0x16c]
jmp 0x4781a8
mov ebx, dword [0x4cc16c]
test ebx, ebx
jne 0x478184
push 0
mov eax, dword [0x4d429c]
push eax
call sub.USER32.dll_ShowWindow
cmp dword [esi], 0
je 0x4781ee
jmp 0x4781ce
push 0
push 0
push 0x10
mov edx, dword [eax]
push edx
call sub.USER32.dll_SendMessageA
mov ecx, dword [esi]
mov eax, dword [ecx + 0x744]
test eax, eax
jne 0x4781c0
push 0
push 0
push 0x10
mov edx, dword [esi]
mov ecx, dword [edx]
push ecx
call sub.USER32.dll_SendMessageA
xor eax, eax
mov dword [esi], eax
call fcn.0045f8c8
call fcn.0045f6d8
push 0
call fcn.0048051c
call fcn.0045f5ec
call fcn.00433788
call fcn.0047f540
call fcn.00415034
mov edx, dword [0x4d3e44]
push edx
call fcn.004b1134
push 1
call fcn.0045c9cc
call fcn.0045c764
call fcn.004089bc
call fcn.0048fac8
push 1
call fcn.00407638
push 1
call fcn.0048be3c
push 1
call fcn.004b4ca0
push 1
call fcn.0049cffc
mov eax, dword [0x4d0f2c]
test eax, eax
je 0x478260
push eax
call sub.USER32.dll_DestroyMenu
xor edx, edx
mov dword [0x4d0f2c], edx
mov eax, dword [0x4d0f30]
test eax, eax
je 0x478277
push eax
call sub.USER32.dll_DestroyMenu
xor edx, edx
mov dword [0x4d0f30], edx
cmp dword [0x4d2294], 0
je 0x478294
push 0x4e4b90
push 5
call fcn.0048c310
cmp dword [esi], 0
je 0x4782b9
jmp 0x4782a1
push eax
call fcn.004b5da0
mov ecx, dword [esi]
mov eax, dword [ecx + 0x744]
test eax, eax
jne 0x47829b
mov edx, dword [esi]
push edx
call fcn.004b5da0
xor ecx, ecx
mov dword [esi], ecx
mov eax, dword [0x4cd17c]
test eax, eax
je 0x4782c9
push eax
call fcn.004c749c
pop ecx
xor edx, edx
mov dword [0x4cd17c], edx
call fcn.00406ffc
call fcn.0048b854
call fcn.0049bdec
push 1
call fcn.004aa8d4
call fcn.0047f35c
call fcn.00437bd0
call fcn.004b3bf4
mov ecx, dword [0x4d2e98]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4d2e98], eax
mov edx, dword [0x4d0c98]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4d0c98], ecx
mov eax, dword [0x4ca610]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4ca610], edx
mov ecx, dword [0x4cf0a8]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4cf0a8], eax
mov edx, dword [0x4cf0ac]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4cf0ac], ecx
mov eax, dword [0x4d2338]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4d2338], edx
mov ecx, dword [0x4d3e2c]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4d3e2c], eax
mov edx, dword [0x4cd988]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4cd988], ecx
mov eax, dword [0x4d0324]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4d0324], edx
mov ecx, dword [0x4d3818]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4d3818], eax
mov edx, dword [0x4caa04]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4caa04], ecx
mov eax, dword [0x4cb37c]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4cb37c], edx
mov ecx, dword [0x4d15ac]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4d15ac], eax
mov edx, dword [0x4d210c]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4d210c], ecx
mov eax, dword [0x4cde00]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4cde00], edx
mov ecx, dword [0x4ccd44]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4ccd44], eax
mov edx, dword [0x4ca198]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4ca198], ecx
mov eax, dword [0x4ca88c]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4ca88c], edx
mov ecx, dword [0x4cca90]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4cca90], eax
mov edx, dword [0x4ccfa8]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4ccfa8], ecx
mov eax, dword [0x4ccfac]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4ccfac], edx
mov ecx, dword [0x4d0f44]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4d0f44], eax
mov edx, dword [0x4cf0f8]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4cf0f8], ecx
mov eax, dword [0x4cb384]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4cb384], edx
mov ecx, dword [0x4cd07c]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4cd07c], eax
mov edx, dword [0x4cb680]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4cb680], ecx
mov eax, dword [0x4d240c]
push eax
call fcn.0046f8e0
xor edx, edx
mov dword [0x4d240c], edx
mov ecx, dword [0x4ce10c]
push ecx
call fcn.0046f8e0
xor eax, eax
mov dword [0x4ce10c], eax
mov edx, dword [0x4d4930]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4d4930], ecx
mov eax, dword [0x4ca684]
test eax, eax
je 0x478536
push eax
call fcn.004b5da0
xor edx, edx
mov dword [0x4ca684], edx
mov eax, dword [0x4cfda4]
test eax, eax
je 0x47854e
push eax
call fcn.004c749c
pop ecx
xor edx, edx
mov dword [0x4cfda4], edx
push 1
call fcn.0049bb58
push 1
call fcn.00406d00
push 1
call fcn.004b4b8c
push 1
call fcn.0044cd00
call fcn.004a2684
push 1
call fcn.0043bdcc
jmp 0x478588
push 0
push eax
call fcn.0049e694
mov eax, dword [ebp]
test eax, eax
jne 0x478580
jmp 0x478599
push 0
push eax
call fcn.0044a9ac
mov eax, dword [0x4ce3ec]
test eax, eax
jne 0x478591
jmp 0x4785ac
push 0
push eax
call fcn.004110c4
mov eax, dword [0x4caddc]
test eax, eax
jne 0x4785a4
jmp 0x4785bd
push eax
call fcn.004482dc
mov eax, dword [0x4cdf74]
test eax, eax
jne 0x4785b7
mov eax, dword [0x4cded0]
cmp eax, 0xffffffff
je 0x4785e0
push eax
call sub.WSOCK32.dll_closesocket
mov dword [0x4cded0], 0xffffffff
mov eax, dword [0x4ce60c]
cmp eax, 0xffffffff
je 0x4785fa
push eax
call sub.WSOCK32.dll_closesocket
mov dword [0x4ce60c], 0xffffffff
mov eax, dword [0x4ce610]
cmp eax, 0xffffffff
je 0x478614
push eax
call sub.WSOCK32.dll_closesocket
mov dword [0x4ce610], 0xffffffff
mov eax, dword [0x4cdf1c]
cmp eax, 0xffffffff
je 0x47862e
push eax
call sub.WSOCK32.dll_closesocket
mov dword [0x4cdf1c], 0xffffffff
mov eax, dword [0x4cdf20]
cmp eax, 0xffffffff
je 0x478648
push eax
call sub.WSOCK32.dll_closesocket
mov dword [0x4cdf20], 0xffffffff
mov eax, dword [0x4d147c]
cmp eax, 0xffffffff
je 0x478662
push eax
call sub.WSOCK32.dll_closesocket
mov dword [0x4d147c], 0xffffffff
mov eax, dword [0x4cab84]
test eax, eax
jl 0x478672
push eax
call fcn.004bfe44
pop ecx
mov dword [0x4cab84], 0xffffffff
mov edx, dword [0x4d34f8]
push edx
call fcn.0046f8e0
xor ecx, ecx
mov dword [0x4d34f8], ecx
push 0
push 0
push 0
push 0x4d138a
call sub.WINMM.dll_mciSendStringA
push 0
push 0
push 0
push 0x4d1399
call sub.WINMM.dll_mciSendStringA
push edi
call sub.USER32.dll_SetCursor
pop ebp
pop edi
pop esi
pop ebx
ret