Function at 0x415e54
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push esi
mov esi, ecx
push edi
lea edi, [esi + 0x5c]
mov eax, dword [edi + 0x10]
sub eax, dword [edi + 0xc]
mov ecx, 0xbc
cdq
idiv ecx
test eax, eax
jne 0x415e7a
xor al, al
jmp 0x416197
push ebx
xor ebx, ebx
push ebx
mov ecx, esi
call fcn.00409f09
push edi
push dword [edi + 0xc]
lea ecx, [ebp - 0x14]
call fcn.00407106
push edi
push dword [edi + 0x10]
jmp 0x415eb6
push ebx
lea ecx, [ebp - 0x14]
call fcn.004127d8
mov ecx, eax
add ecx, 4
call fcn.0040a0ad
lea ecx, [ebp - 0x14]
call fcn.004098c8
push edi
push dword [edi + 0x10]
lea ecx, [ebp - 0xc]
call fcn.00407106
lea eax, [ebp - 0xc]
push eax
lea ecx, [ebp - 0x14]
call fcn.00406828
test al, al
je 0x415e97
lea eax, [esi + 0xf4]
cmp byte [eax], bl
je 0x415f92
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push ebx
mov byte [eax], bl
mov eax, dword [esi + 8]
push 0x15
push eax
call edi
mov ebx, dword [sym.imp.USER32.dll_ShowWindow]
push eax
call ebx
mov eax, dword [esi + 8]
push 0
push 0xf
push eax
call edi
push eax
call ebx
mov eax, dword [esi + 8]
push 0
push 0xe
push eax
call edi
push eax
call ebx
mov ecx, dword [esi + 0xcc]
movzx ecx, byte [ecx + 0x461]
mov eax, dword [esi + 8]
push ecx
push 0x1f6
push eax
call edi
push eax
call ebx
mov ecx, dword [esi + 0xcc]
movzx ecx, byte [ecx + 0x460]
mov eax, dword [esi + 8]
push ecx
push 0x1f7
push eax
call edi
push eax
call ebx
mov ecx, dword [esi + 0xcc]
mov eax, dword [ecx + 0x120]
mov ebx, dword [esi + 8]
cdq
push 1
push dword [esi + 0xa4]
sub eax, edx
push dword [esi + 0xa0]
sar eax, 1
add eax, dword [esi + 0x8c]
push eax
mov eax, dword [ecx + 0x11c]
cdq
sub eax, edx
sar eax, 1
add eax, dword [esi + 0x88]
push eax
push 0x1f5
push ebx
call edi
push eax
call dword [sym.imp.USER32.dll_MoveWindow]
lea edi, [esi + 0xec]
mov eax, dword [edi]
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x10], eax
lea eax, [esi + 0x5c]
push eax
push dword [eax + 0x10]
lea ecx, [ebp - 0xc]
call fcn.00407106
mov eax, dword [ebp - 0xc]
lea ebx, [esi + 0xe4]
mov dword [ebx], eax
mov eax, dword [ebp - 8]
and dword [ebp - 8], 0
mov dword [ebx + 4], eax
mov eax, dword [esi + 0xcc]
cmp dword [eax + 0xdc], 0
mov byte [ebp - 1], 0
mov byte [ebp - 2], 0
jle 0x416155
lea eax, [esi + 0x5c]
push eax
push dword [eax + 0x10]
lea ecx, [ebp - 0x1c]
call fcn.00407106
lea eax, [ebp - 0x1c]
push eax
mov ecx, edi
call fcn.00406828
test al, al
jne 0x41614b
mov ecx, edi
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x2a0], 0
jne 0x41612f
lea eax, [esi + 0x5c]
push eax
push dword [eax + 0x10]
lea ecx, [ebp - 0x24]
call fcn.00407106
lea eax, [ebp - 0x24]
push eax
mov ecx, ebx
call fcn.00406828
test al, al
je 0x4160b9
mov eax, dword [edi]
mov dword [ebx], eax
mov eax, dword [edi + 4]
mov ecx, edi
mov dword [ebx + 4], eax
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x140], 0
je 0x4160b9
mov ecx, edi
call fcn.004127d8
add eax, 4
push eax
mov ecx, esi
call fcn.0041589c
cmp byte [ebp - 1], 0
mov eax, dword [edi]
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x10], eax
jne 0x416099
mov ecx, edi
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x2a8], 0
je 0x416099
mov byte [ebp - 1], 1
cmp byte [ebp - 2], 0
jne 0x4160b9
mov ecx, edi
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x2a9], 0
je 0x4160b9
mov byte [ebp - 2], 1
mov ecx, edi
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x140], 0
jne 0x41614b
mov ecx, edi
call fcn.004127d8
add eax, 4
push eax
mov ecx, esi
call fcn.0041589c
cmp byte [ebp - 1], 0
mov eax, dword [edi]
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 4]
mov dword [ebp - 0x10], eax
jne 0x41610c
mov ecx, edi
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x2a8], 0
je 0x41610c
mov byte [ebp - 1], 1
cmp byte [ebp - 2], 0
jne 0x41612c
mov ecx, edi
call fcn.004127d8
mov eax, dword [eax + 0xb8]
cmp byte [eax + 0x2a9], 0
je 0x41612c
mov byte [ebp - 2], 1
inc dword [ebp - 8]
mov ecx, edi
call fcn.004098c8
mov eax, dword [esi + 0xcc]
mov ecx, dword [ebp - 8]
cmp ecx, dword [eax + 0xdc]
jl 0x415fe2
cmp byte [ebp - 1], 0
je 0x416155
mov al, 1
jmp 0x416162
mov eax, dword [esi + 0xcc]
movzx eax, byte [eax + 0x460]
push eax
mov ecx, esi
call fcn.00415013
cmp byte [ebp - 2], 0
pop ebx
je 0x416175
mov al, 1
jmp 0x416182
mov eax, dword [esi + 0xcc]
movzx eax, byte [eax + 0x461]
push eax
mov ecx, esi
call fcn.00415039
mov eax, dword [ebp - 0x14]
mov dword [edi], eax
mov eax, dword [ebp - 0x10]
mov dword [edi + 4], eax
mov al, 1
pop edi
pop esi
leave
ret