Function at 0x43ff60
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xfffff8dc
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x16b8], edx
mov dword [ebp - 0x16b4], edx
mov dword [ebp - 0x14b0], edx
mov edi, eax
xor eax, eax
push ebp
push 0x4404c5
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 0x11b], 0
lea eax, [ebp - 0x11b]
mov edx, dword [0x47b2f4]
mov cl, 0x12
call fcn.00403044
mov eax, dword [0x47b2f4]
mov word [eax], 0x2d01
cmp byte [ebp - 0x11b], 0
je 0x44049c
mov edx, 0x4404d4
lea eax, [ebp - 0x14ac]
call fcn.00403038
lea edx, [ebp - 0x11b]
lea eax, [ebp - 0x14ac]
mov cl, 0x1a
call fcn.00403008
lea edx, [ebp - 0x14ac]
lea eax, [ebp - 0x108]
call fcn.00403038
mov byte [ebp - 0x33b], 0
push 0
push 0x4404e0
push 0x4404e0
push 0x4404e0
mov ecx, dword [0x47b404]
xor edx, edx
lea eax, [ebp - 0x108]
call fcn.00424674
mov esi, eax
test esi, esi
jne 0x440041
mov eax, dword [0x47b4c0]
mov eax, dword [eax]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
call fcn.00424d90
mov esi, eax
test esi, esi
jle 0x44008f
lea ecx, [ebp - 0x16b0]
mov eax, dword [0x47b404]
mov edx, esi
call fcn.00423e94
lea eax, [ebp - 0x16b0]
lea edx, [ebp - 0x15b0]
call fcn.0041c150
lea edx, [ebp - 0x15b0]
lea eax, [ebp - 0x14b0]
call fcn.00404e58
mov edx, dword [ebp - 0x14b0]
lea eax, [ebp - 0x33b]
call fcn.00409294
jmp 0x440479
lea edx, [ebp - 0x108]
mov eax, dword [0x47b404]
call fcn.00424e78
cmp byte [ebp - 0x108], 1
jbe 0x4400f2
cmp byte [ebp - 0x107], 0x45
jne 0x4400f2
cmp byte [ebp - 0x106], 0x2d
jne 0x4400f2
lea edx, [ebp - 0x15b0]
lea eax, [ebp - 0x108]
call fcn.0041c150
lea edx, [ebp - 0x15b0]
lea eax, [ebp - 0x16b4]
call fcn.00404e58
mov edx, dword [ebp - 0x16b4]
lea eax, [ebp - 0x33b]
call fcn.00409294
jmp 0x440479
mov edx, dword [0x47b378]
lea eax, [ebp - 0x16ec]
call fcn.00403038
mov edx, dword [0x47b404]
lea eax, [ebp - 0x16ec]
mov cl, 0x33
call fcn.00403008
lea edx, [ebp - 0x16ec]
lea eax, [ebp - 0x1724]
call fcn.00403038
mov edx, 0x4404e4
lea eax, [ebp - 0x1724]
mov cl, 0x37
call fcn.00403008
lea edx, [ebp - 0x1724]
lea eax, [ebp - 0x16b8]
call fcn.00404e58
mov edx, dword [ebp - 0x16b8]
lea eax, [ebp - 0x1490]
call fcn.00402e0c
mov edx, 1
lea eax, [ebp - 0x1490]
call fcn.00403548
call fcn.00402874
test eax, eax
je 0x440189
lea eax, [ebp - 0x33b]
mov edx, 0x4404f4
call fcn.00409294
jmp 0x440479
push 0
push 0
push 0
push 0
mov eax, dword [edi + 0xc]
push eax
push 0
mov eax, dword [0x47c664]
push eax
push 0
mov eax, 0x440518
mov ecx, 0x80800110
xor edx, edx
call fcn.004075d0
mov dword [0x4bf400], eax
push 0x43f774
push 0xfffffffffffffffc
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SetWindowLongA
mov dword [0x4bf404], eax
mov byte [ebp - 0x108], 0
xor eax, eax
mov dword [ebp - 0x1343], eax
xor eax, eax
mov dword [ebp - 0x133f], eax
xor esi, esi
lea edx, [ebp - 0x1343]
lea eax, [ebp - 0x1490]
call fcn.004355b0
mov esi, eax
call fcn.00402874
test eax, eax
je 0x44024d
lea eax, [ebp - 0x33b]
mov edx, 0x44052c
call fcn.00409294
push 0
push 0
push 0x184
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
push 0
push 0
push 0x10
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_PostMessageA
lea eax, [ebp - 0x1490]
call fcn.00402fb0
call fcn.00402874
test eax, eax
jmp 0x440479
test esi, esi
jl 0x44026c
mov ebx, dword [0x47b1dc]
jmp 0x44025a
inc ebx
cmp byte [ebx], 0x20
je 0x440259
lea eax, [ebp - 0x33b]
mov edx, ebx
call fcn.004092b8
test esi, esi
jge 0x4401e5
lea eax, [ebp - 0x33b]
call fcn.004091fc
inc eax
call fcn.00402688
mov ebx, eax
lea edx, [ebp - 0x33b]
mov eax, ebx
call fcn.00409238
mov byte [ebp - 0x33b], 0
push ebx
push 0
push 0x180
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
mov dword [0x4bf40c], ebx
lea eax, [ebp - 0x1490]
call fcn.00402fb0
call fcn.00402874
test eax, eax
mov eax, dword [edi + 0x43b]
call fcn.0040f1e4
mov edx, eax
mov eax, dword [edi + 0x43b]
call fcn.0040f204
lea eax, [ebp - 0x13b]
push eax
mov ebx, dword [edi + 0x43b]
mov eax, ebx
call fcn.0040f1e4
push eax
push 0x198
mov eax, dword [ebx + 0xc]
push eax
call sub.user32.dll_SendMessageA
lea eax, [ebp - 0x12b]
push eax
mov eax, dword [edi + 0x43b]
mov eax, dword [eax + 0xc]
push eax
call sub.user32.dll_GetClientRect
mov ecx, dword [0x47b39c]
mov eax, dword [ebp - 0x123]
sub eax, dword [ebp - 0x12b]
mov edx, dword [0x4bf40c]
call fcn.004206a0
mov ebx, eax
xor edx, edx
mov eax, ebx
call fcn.004074f8
push eax
push 0
push 0x1a0
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
push 6
call sub.user32.dll_GetSystemMetrics
add eax, eax
add ebx, eax
mov eax, dword [ebp - 0x12b]
sub dword [ebp - 0x123], eax
mov eax, dword [ebp - 0x11f]
mov esi, dword [ebp - 0x127]
sub eax, esi
mov edx, dword [ebp - 0x12f]
sub eax, edx
inc eax
cmp ebx, eax
jle 0x4403d1
mov ecx, dword [ebp - 0x137]
sub ecx, esi
cmp eax, ecx
jge 0x4403c0
mov eax, dword [ebp - 0x137]
sub eax, dword [ebp - 0x127]
mov dword [ebp - 0x11f], eax
cmp ebx, eax
jge 0x4403ac
mov dword [ebp - 0x11f], ebx
mov eax, dword [ebp - 0x137]
sub eax, dword [ebp - 0x11f]
mov dword [ebp - 0x127], eax
jmp 0x4403de
mov eax, edx
dec eax
mov dword [ebp - 0x127], eax
sub dword [ebp - 0x11f], eax
jmp 0x4403de
dec edx
mov dword [ebp - 0x127], edx
mov dword [ebp - 0x11f], ebx
mov eax, dword [ebp - 0x12b]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0x127]
mov dword [ebp - 4], eax
lea eax, [ebp - 8]
push eax
mov eax, dword [edi + 0x43b]
mov eax, dword [eax + 0xc]
push eax
call sub.user32.dll_ClientToScreen
push 0xffffffffffffffff
mov eax, dword [ebp - 0x11f]
push eax
mov eax, dword [ebp - 0x123]
push eax
mov eax, dword [ebp - 4]
push eax
mov eax, dword [ebp - 8]
push eax
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_MoveWindow
push 0
push 0
push 0x186
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SendMessageA
push 5
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [edi + 0x53]
mov dword [0x4bf408], eax
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_SetFocus
push 0
push 0
push 0x1015
mov eax, dword [0x4bf400]
push eax
call sub.user32.dll_PostMessageA
mov eax, dword [edi + 0x10]
mov eax, dword [eax + 0xc]
mov dword [0x4bf400], eax
cmp byte [ebp - 0x33b], 0
je 0x44049c
push 0
mov eax, dword [0x47b5cc]
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x33b]
push eax
mov eax, dword [edi + 0xc]
push eax
call sub.user32.dll_MessageBoxA_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4404cc
lea eax, [ebp - 0x16b8]
mov edx, 2
call fcn.00404c18
lea eax, [ebp - 0x14b0]
call fcn.00404bf4
ret