Function at 0x417ef9
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x170
push ebx
push esi
push edi
mov edi, 0x478678
nop
lea eax, [ebp - 0x50]
push eax
push dword [0x48670c]
call sub.USER32.DLL_GetWindowRect
lea eax, [ebp - 0x40]
push eax
call fcn.00413f9e
pop ecx
push esi
push edi
lea esi, [ebp - 0x40]
lea edi, [ebp - 0x20]
cld
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
push esi
push edi
lea esi, [ebp - 0x50]
lea edi, [ebp - 0x10]
cld
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
sub dword [ebp - 0xc], 0x1a
push dword [0x492960]
call sub.USER32.DLL_IsWindowVisible
test eax, eax
je 0x417f72
push 0
push 0
push 0x278f
push dword [0x492960]
call sub.USER32.DLL_SendMessageA
sub dword [ebp - 0xc], eax
mov eax, dword [0x486750]
test eax, eax
jne 0x41925e
mov esi, 0
jmp 0x417f9c
lea eax, [esi*4]
mov eax, dword [eax + 0x486608]
push dword [eax + 0xc]
call sub.USER32.DLL_DestroyWindow
inc esi
cmp esi, dword [0x4866f8]
jl 0x417f86
mov esi, 0
jmp 0x417fc1
lea eax, [esi*4]
mov eax, dword [eax + 0x486680]
push dword [eax + 0xc]
call sub.USER32.DLL_DestroyWindow
inc esi
cmp esi, dword [0x4866fc]
jl 0x417fab
mov dword [0x4866fc], 0
mov dword [0x4866f8], 0
mov eax, dword [ebp + 8]
test eax, eax
js 0x417ffe
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov dword [eax + 0x10], 0xffffffff
mov eax, dword [ebp + 8]
test eax, eax
js 0x41802c
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 2
je 0x41802c
push 2
push dword [ebp + 8]
call fcn.0041534f
add esp, 8
mov dword [ebp - 0x168], 0xffffffff
mov esi, 0
mov dword [ebp - 0x164], 0xffffffff
jmp 0x418093
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 2
je 0x418092
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebp - 0x168]
jle 0x418092
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x168], eax
inc esi
cmp esi, dword [0x486704]
jl 0x418047
mov dword [ebp - 0x160], 0
mov esi, 0
jmp 0x4183e5
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0xd8], 0
mov ebx, 0
jmp 0x4181a7
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 2
je 0x4181a6
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, esi
jne 0x4181a6
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov ecx, dword [ebp - 0x160]
sub dword [eax + 0x10], ecx
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x418188
mov dword [ebp - 0x15c], 1
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x164], eax
cmp ebx, dword [ebp + 8]
je 0x418186
mov eax, dword [ebp - 0xd8]
inc dword [ebp - 0xd8]
lea eax, [eax*4]
mov dword [eax + ebp - 0x150], ebx
jmp 0x418192
mov dword [ebp - 0x158], 1
mov eax, dword [ebp - 0x5c]
inc dword [ebp - 0x5c]
lea eax, [eax*4]
mov dword [eax + ebp - 0xd4], ebx
inc ebx
cmp ebx, dword [0x486704]
jl 0x4180de
mov eax, dword [ebp - 0x15c]
test eax, eax
jne 0x4181d2
mov eax, dword [ebp - 0x158]
test eax, eax
jne 0x4181cd
inc dword [ebp - 0x160]
jmp 0x4183e4
push 0
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.004155f6
add esp, 0xc
mov eax, dword [ebp + 8]
test eax, eax
js 0x41828e
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov ecx, esi
sub ecx, dword [ebp - 0x160]
cmp eax, ecx
jne 0x41828e
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 2
je 0x41828e
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x41828e
push dword [ebp - 0x164]
lea eax, [ebp - 0x40]
push eax
push dword [ebp + 8]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00415902
add esp, 0x14
add dword [ebp - 0xd8], eax
push dword [ebp + 8]
push dword [ebp - 0x5c]
lea eax, [ebp - 0xd4]
push eax
call fcn.00415cde
add esp, 0xc
mov dword [ebp + 8], 0xffffffff
mov ebx, 0
jmp 0x4182b7
lea eax, [ebx*4]
mov eax, dword [eax + ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov dword [eax + 0x14], ebx
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x418295
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x1c]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00415f42
add esp, 0x10
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x418389
mov dword [ebp - 0x154], 0
mov ebx, 0
jmp 0x41833d
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x34]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
sub eax, dword [ecx + 0x2c]
imul eax, eax, 0x3e8
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
add dword [ebp - 0x154], eax
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x4182f7
mov ebx, 0
jmp 0x418384
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
je 0x418383
mov eax, dword [ebp - 0x154]
cdq
idiv dword [ebp - 0xd8]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
inc ebx
cmp ebx, dword [ebp - 0x5c]
jl 0x41834c
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
cmp eax, 2
je 0x4183c1
push 1
push 0
push dword [ebp - 0x150]
call fcn.00417e0a
add esp, 0xc
mov dword [ebp - 0x1c], 6
jmp 0x4183c8
mov dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x38]
add dword [ebp - 0x1c], eax
inc esi
cmp esi, dword [ebp - 0x168]
jle 0x4180af
mov eax, dword [ebp + 8]
test eax, eax
js 0x41841f
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 8
je 0x41841f
push 8
push dword [ebp + 8]
call fcn.0041534f
add esp, 8
mov dword [ebp - 0x168], 0xffffffff
mov esi, 0
mov dword [ebp - 0x164], 0xffffffff
jmp 0x418486
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 8
je 0x418485
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebp - 0x168]
jle 0x418485
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x168], eax
inc esi
cmp esi, dword [0x486704]
jl 0x41843a
mov dword [ebp - 0x160], 0
mov esi, 0
jmp 0x4187d8
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0xd8], 0
mov ebx, 0
jmp 0x41859a
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 8
je 0x418599
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, esi
jne 0x418599
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov ecx, dword [ebp - 0x160]
sub dword [eax + 0x10], ecx
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x41857b
mov dword [ebp - 0x15c], 1
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x164], eax
cmp ebx, dword [ebp + 8]
je 0x418579
mov eax, dword [ebp - 0xd8]
inc dword [ebp - 0xd8]
lea eax, [eax*4]
mov dword [eax + ebp - 0x150], ebx
jmp 0x418585
mov dword [ebp - 0x158], 1
mov eax, dword [ebp - 0x5c]
inc dword [ebp - 0x5c]
lea eax, [eax*4]
mov dword [eax + ebp - 0xd4], ebx
inc ebx
cmp ebx, dword [0x486704]
jl 0x4184d1
mov eax, dword [ebp - 0x15c]
test eax, eax
jne 0x4185c5
mov eax, dword [ebp - 0x158]
test eax, eax
jne 0x4185c0
inc dword [ebp - 0x160]
jmp 0x4187d7
push 0
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.004155f6
add esp, 0xc
mov eax, dword [ebp + 8]
test eax, eax
js 0x418681
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov ecx, esi
sub ecx, dword [ebp - 0x160]
cmp eax, ecx
jne 0x418681
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 8
je 0x418681
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x418681
push dword [ebp - 0x164]
lea eax, [ebp - 0x40]
push eax
push dword [ebp + 8]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00415902
add esp, 0x14
add dword [ebp - 0xd8], eax
push dword [ebp + 8]
push dword [ebp - 0x5c]
lea eax, [ebp - 0xd4]
push eax
call fcn.00415cde
add esp, 0xc
mov dword [ebp + 8], 0xffffffff
mov ebx, 0
jmp 0x4186aa
lea eax, [ebx*4]
mov eax, dword [eax + ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov dword [eax + 0x14], ebx
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x418688
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x14]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00415f42
add esp, 0x10
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x41877c
mov dword [ebp - 0x154], 0
mov ebx, 0
jmp 0x418730
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x34]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
sub eax, dword [ecx + 0x2c]
imul eax, eax, 0x3e8
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
add dword [ebp - 0x154], eax
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x4186ea
mov ebx, 0
jmp 0x418777
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
je 0x418776
mov eax, dword [ebp - 0x154]
cdq
idiv dword [ebp - 0xd8]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
inc ebx
cmp ebx, dword [ebp - 0x5c]
jl 0x41873f
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
cmp eax, 2
je 0x4187b4
push 1
push 1
push dword [ebp - 0x150]
call fcn.00417e0a
add esp, 0xc
mov dword [ebp - 0x14], 0xfffffffa
jmp 0x4187bb
mov dword [ebp - 0x14], 0
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x30]
add dword [ebp - 0x14], eax
inc esi
cmp esi, dword [ebp - 0x168]
jle 0x4184a2
mov dword [ebp - 0x168], 0xffffffff
mov eax, dword [ebp + 8]
test eax, eax
js 0x41881c
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 1
je 0x41881c
push 1
push dword [ebp + 8]
call fcn.0041682a
add esp, 8
mov esi, 0
mov dword [ebp - 0x164], 0xffffffff
jmp 0x418879
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 1
je 0x418878
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebp - 0x168]
jle 0x418878
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x168], eax
inc esi
cmp esi, dword [0x486704]
jl 0x41882d
mov dword [ebp - 0x160], 0
mov eax, dword [ebp + 8]
cmp eax, 0xfffffffe
jne 0x4188a5
push esi
push edi
lea esi, [ebp - 0x20]
lea edi, [ebp - 0x10]
cld
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
mov esi, 0
jmp 0x418beb
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0xd8], 0
mov ebx, 0
jmp 0x4189a7
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 1
je 0x4189a6
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, esi
jne 0x4189a6
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov ecx, dword [ebp - 0x160]
sub dword [eax + 0x10], ecx
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x418988
mov dword [ebp - 0x15c], 1
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x164], eax
cmp ebx, dword [ebp + 8]
je 0x418986
mov eax, dword [ebp - 0xd8]
inc dword [ebp - 0xd8]
lea eax, [eax*4]
mov dword [eax + ebp - 0x150], ebx
jmp 0x418992
mov dword [ebp - 0x158], 1
mov eax, dword [ebp - 0x5c]
inc dword [ebp - 0x5c]
lea eax, [eax*4]
mov dword [eax + ebp - 0xd4], ebx
inc ebx
cmp ebx, dword [0x486704]
jl 0x4188de
mov eax, dword [ebp - 0x15c]
test eax, eax
jne 0x4189d2
mov eax, dword [ebp - 0x158]
test eax, eax
jne 0x4189cd
inc dword [ebp - 0x160]
jmp 0x418bea
push 0
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00416ad1
add esp, 0xc
mov eax, dword [ebp + 8]
test eax, eax
js 0x418a8e
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov ecx, esi
sub ecx, dword [ebp - 0x160]
cmp eax, ecx
jne 0x418a8e
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 1
je 0x418a8e
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x418a8e
push dword [ebp - 0x164]
lea eax, [ebp - 0x20]
push eax
push dword [ebp + 8]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00416ddd
add esp, 0x14
add dword [ebp - 0xd8], eax
push dword [ebp + 8]
push dword [ebp - 0x5c]
lea eax, [ebp - 0xd4]
push eax
call fcn.004171ba
add esp, 0xc
mov dword [ebp + 8], 0xffffffff
mov ebx, 0
jmp 0x418ab7
lea eax, [ebx*4]
mov eax, dword [eax + ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov dword [eax + 0x14], ebx
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x418a95
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x20]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00417432
add esp, 0x14
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x418b8d
mov dword [ebp - 0x154], 0
mov ebx, 0
jmp 0x418b41
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x38]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
sub eax, dword [ecx + 0x30]
imul eax, eax, 0x3e8
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
add dword [ebp - 0x154], eax
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x418afb
mov ebx, 0
jmp 0x418b88
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
je 0x418b87
mov eax, dword [ebp - 0x154]
cdq
idiv dword [ebp - 0xd8]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
inc ebx
cmp ebx, dword [ebp - 0x5c]
jl 0x418b50
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
cmp eax, 2
je 0x418bc7
lea eax, [ebp - 0x20]
push eax
push 0
push dword [ebp - 0x150]
call fcn.00417d15
add esp, 0xc
mov dword [ebp - 0x20], 6
jmp 0x418bce
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x34]
add dword [ebp - 0x20], eax
inc esi
cmp esi, dword [ebp - 0x168]
jle 0x4188af
mov eax, dword [ebp + 8]
test eax, eax
js 0x418c25
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 4
je 0x418c25
push 4
push dword [ebp + 8]
call fcn.0041682a
add esp, 8
mov dword [ebp - 0x168], 0xffffffff
mov esi, 0
mov dword [ebp - 0x164], 0xffffffff
jmp 0x418c8c
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 4
je 0x418c8b
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, dword [ebp - 0x168]
jle 0x418c8b
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x168], eax
inc esi
cmp esi, dword [0x486704]
jl 0x418c40
mov dword [ebp - 0x160], 0
mov esi, 0
jmp 0x418fe4
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0xd8], 0
mov ebx, 0
jmp 0x418da0
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 4
je 0x418d9f
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
cmp eax, esi
jne 0x418d9f
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov ecx, dword [ebp - 0x160]
sub dword [eax + 0x10], ecx
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x418d81
mov dword [ebp - 0x15c], 1
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x164], eax
cmp ebx, dword [ebp + 8]
je 0x418d7f
mov eax, dword [ebp - 0xd8]
inc dword [ebp - 0xd8]
lea eax, [eax*4]
mov dword [eax + ebp - 0x150], ebx
jmp 0x418d8b
mov dword [ebp - 0x158], 1
mov eax, dword [ebp - 0x5c]
inc dword [ebp - 0x5c]
lea eax, [eax*4]
mov dword [eax + ebp - 0xd4], ebx
inc ebx
cmp ebx, dword [0x486704]
jl 0x418cd7
mov eax, dword [ebp - 0x15c]
test eax, eax
jne 0x418dcb
mov eax, dword [ebp - 0x158]
test eax, eax
jne 0x418dc6
inc dword [ebp - 0x160]
jmp 0x418fe3
push 0
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00416ad1
add esp, 0xc
mov eax, dword [ebp + 8]
test eax, eax
js 0x418e87
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
mov ecx, esi
sub ecx, dword [ebp - 0x160]
cmp eax, ecx
jne 0x418e87
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
and eax, 4
je 0x418e87
mov eax, dword [ebp + 8]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
jne 0x418e87
push dword [ebp - 0x164]
lea eax, [ebp - 0x20]
push eax
push dword [ebp + 8]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00416ddd
add esp, 0x14
add dword [ebp - 0xd8], eax
push dword [ebp + 8]
push dword [ebp - 0x5c]
lea eax, [ebp - 0xd4]
push eax
call fcn.004171ba
add esp, 0xc
mov dword [ebp + 8], 0xffffffff
mov ebx, 0
jmp 0x418eb0
lea eax, [ebx*4]
mov eax, dword [eax + ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov dword [eax + 0x14], ebx
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x418e8e
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x18]
push dword [ebp - 0xd8]
lea eax, [ebp - 0x150]
push eax
call fcn.00417432
add esp, 0x14
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x418f86
mov dword [ebp - 0x154], 0
mov ebx, 0
jmp 0x418f3a
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x38]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
sub eax, dword [ecx + 0x30]
imul eax, eax, 0x3e8
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
add dword [ebp - 0x154], eax
inc ebx
cmp ebx, dword [ebp - 0xd8]
jl 0x418ef4
mov ebx, 0
jmp 0x418f81
lea eax, [ebx*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
je 0x418f80
mov eax, dword [ebp - 0x154]
cdq
idiv dword [ebp - 0xd8]
lea ecx, [ebx*4]
mov edx, dword [0x486604]
mov ecx, dword [ecx + edx]
mov dword [ecx + 0x18], eax
inc ebx
cmp ebx, dword [ebp - 0x5c]
jl 0x418f49
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
cmp eax, 2
je 0x418fc0
lea eax, [ebp - 0x20]
push eax
push 1
push dword [ebp - 0x150]
call fcn.00417d15
add esp, 0xc
mov dword [ebp - 0x18], 0xfffffffa
jmp 0x418fc7
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x150]
lea eax, [eax*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x2c]
add dword [ebp - 0x18], eax
inc esi
cmp esi, dword [ebp - 0x168]
jle 0x418ca8
mov dword [ebp - 0x58], 0x1a
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x41903d
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x20]
push eax
push dword [edi]
call fcn.00414dc0
add esp, 8
push dword [edi]
call sub.USER32.DLL_IsWindowVisible
test eax, eax
jne 0x41902f
push 5
push dword [edi]
call sub.USER32.DLL_ShowWindow
mov eax, dword [ebp - 0x58]
add dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x14], eax
jmp 0x419051
push dword [edi]
call sub.USER32.DLL_IsWindowVisible
test eax, eax
je 0x419051
push 0
push dword [edi]
call sub.USER32.DLL_ShowWindow
push 0x472740
push 0
call fcn.0044115a
add esp, 8
test eax, eax
je 0x4190c9
mov eax, dword [0x46d224]
test eax, eax
jne 0x4190c9
push 0
push 0
push 0x278f
push dword [0x492960]
call sub.USER32.DLL_SendMessageA
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x20]
push eax
push dword [0x492960]
call fcn.00414dc0
add esp, 8
push dword [0x492960]
call sub.USER32.DLL_IsWindowVisible
test eax, eax
jne 0x4190bb
push 5
push dword [0x492960]
call sub.USER32.DLL_ShowWindow
mov eax, dword [ebp - 0x58]
add dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x14], eax
jmp 0x4190e5
push dword [0x492960]
call sub.USER32.DLL_IsWindowVisible
test eax, eax
je 0x4190e5
push 0
push dword [0x492960]
call sub.USER32.DLL_ShowWindow
lea eax, [ebp - 0x20]
push eax
push dword [0x48670c]
call fcn.00414dc0
add esp, 8
mov esi, 0
jmp 0x41912f
push 5
lea eax, [esi*4]
mov eax, dword [eax + 0x486608]
push dword [eax + 0xc]
call sub.USER32.DLL_ShowWindow
push 1
push 0
lea eax, [esi*4]
mov eax, dword [eax + 0x486608]
push dword [eax + 0xc]
call sub.USER32.DLL_InvalidateRect
inc esi
cmp esi, dword [0x4866f8]
jl 0x4190fe
mov esi, 0
jmp 0x419202
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax]
test eax, eax
je 0x419201
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
add eax, 0x2c
push eax
lea eax, [esi*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
push dword [eax + 0xc]
call fcn.00414dc0
add esp, 8
lea eax, [esi*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
push dword [eax + 0xc]
call sub.USER32.DLL_UpdateWindow
lea eax, [esi*4]
mov ecx, dword [0x486604]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 8]
test eax, eax
je 0x4191c6
mov eax, 0
jmp 0x4191cb
mov eax, 5
push eax
lea eax, [esi*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
mov eax, dword [eax + 0x10]
push dword [eax + 0xc]
call sub.USER32.DLL_ShowWindow
push 5
lea eax, [esi*4]
mov ecx, dword [0x486600]
mov eax, dword [eax + ecx]
push dword [eax + 0xc]
call sub.USER32.DLL_ShowWindow
inc esi
cmp esi, dword [0x486704]
jl 0x419141
mov esi, 0
jmp 0x419256
lea eax, [esi*4]
mov eax, dword [eax + 0x486680]
add eax, 0x18
push eax
lea eax, [esi*4]
mov eax, dword [eax + 0x486680]
push dword [eax + 0xc]
call fcn.00414dc0
add esp, 8
push 5
lea eax, [esi*4]
mov eax, dword [eax + 0x486680]
push dword [eax + 0xc]
call sub.USER32.DLL_ShowWindow
inc esi
cmp esi, dword [0x4866fc]
jl 0x419215
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret