Function at 0x40d2b7
Capabilities:
Hide graphical window

Disassembly:
mov eax, 0x528209
call fcn.0051f0b4
mov eax, dword [ebp + 8]
sub esp, 0x24
push ebx
xor ebx, ebx
push esi
cmp eax, ebx
je 0x40d2f3
cmp eax, 2
je 0x40d2f3
cmp eax, 3
je 0x40d2f3
xor esi, esi
inc esi
cmp eax, esi
je 0x40d2f6
cmp eax, 7
je 0x40d2f6
cmp eax, 0xc
je 0x40d2f6
cmp eax, 0xd
je 0x40d2f6
xor eax, eax
jmp 0x40d2f6
xor esi, esi
inc esi
mov ecx, dword [0x569b94]
cmp ecx, eax
je case.0x40d37b.10
cmp ecx, 2
je 0x40d382
cmp ecx, 3
jne 0x40d324
mov ecx, dword [edi + 0x624]
cmp ecx, ebx
je 0x40d324
add ecx, 0x2f8
cmp dword [ecx], ebx
je 0x40d324
mov dword [ecx], ebx
mov dword [0x569b94], eax
mov dword [edi + 0x124], eax
lea eax, [ebp - 0x30]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x30]
push 0x60
pop edx
sub eax, edx
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0x148]
dec ecx
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x18], ecx
cmp eax, ebx
je 0x40d36c
push ebx
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [edi + 0x124]
cmp eax, 0xc
ja case.0x40d37b.10
jmp dword [eax*4 + 0x40d943]
mov ecx, dword [edi + 0x628]
jmp 0x40d314
push 0xf9060
call fcn.0040753c
push eax
call fcn.00455e6c
push dword [edi + 4]
call fcn.0040753c
mov esi, eax
call fcn.00455895
test eax, eax
je 0x40d3af
mov ebx, eax
cmp dword [0x569b98], 0
je 0x40d3e6
mov eax, dword [edi + 0x14c]
and dword [0x569b98], 0
mov dword [ebp + 0xc], eax
call fcn.0040753c
mov esi, eax
mov ecx, esi
call fcn.00455917
mov dword [esi + 0x1c], eax
test eax, eax
je 0x40d3e6
push dword [ebp + 0xc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x50]
mov dword [edi + 0x91c], ebx
jmp case.0x40d37b.4
push 0xfb770
call fcn.0040753c
push eax
call fcn.00455e6c
cmp dword [edi + 0x62c], ebx
mov ebx, dword [sym.imp.USER32.dll_IsWindow]
jne 0x40d4c8
push 0x4b38
call fcn.004ea1a3
pop ecx
mov dword [ebp + 0xc], eax
and dword [ebp - 4], 0
test eax, eax
je 0x40d431
push eax
call fcn.00446c05
jmp 0x40d433
xor eax, eax
or dword [ebp - 4], 0xffffffff
mov dword [edi + 0x62c], eax
mov dword [eax + 0xe4], 0x73
mov eax, dword [edi + 0x62c]
add eax, 4
push dword [eax]
call ebx
test eax, eax
jne 0x40d468
mov ecx, dword [edi + 0x62c]
mov eax, dword [ecx]
push 0
push dword [edi + 4]
call dword [eax + 0x10]
mov eax, dword [edi + 0x62c]
mov dword [eax + 0x1a0], esi
mov eax, dword [edi + 0x62c]
mov dword [edi + 0x8f8], esi
xor esi, esi
cmp eax, esi
je 0x40d4a2
push dword [eax + 4]
call ebx
test eax, eax
je 0x40d4a2
mov eax, dword [edi + 0x62c]
cmp dword [eax + 0x98], esi
je 0x40d4a2
call fcn.00447c2d
mov eax, dword [edi + 0x62c]
cmp eax, esi
je 0x40d8dd
push dword [eax + 4]
call ebx
test eax, eax
je 0x40d8dd
mov eax, dword [edi + 0x62c]
jmp 0x40d8bc
call fcn.00454258
lea edx, [edi + 0x904]
lea ecx, [edi + 0x914]
mov dword [ecx], eax
cmp eax, dword [edx]
je 0x40d468
mov eax, dword [edi + 0x62c]
mov dword [eax + 0x1a0], esi
mov eax, dword [ecx]
mov dword [edx], eax
mov eax, esi
mov esi, dword [edi + 0x62c]
call fcn.0044721c
xor esi, esi
inc esi
jmp 0x40d474
push 0x1053b0
call fcn.0040753c
push eax
call fcn.00455e6c
cmp dword [edi + 0x630], ebx
jne 0x40d553
push 0xa4
call fcn.004ea1a3
pop ecx
mov dword [ebp + 0xc], eax
mov dword [ebp - 4], esi
test eax, eax
je 0x40d539
push eax
call fcn.0045a282
jmp 0x40d53b
xor eax, eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x20]
push ecx
push dword [edi + 4]
mov dword [edi + 0x630], eax
call fcn.0045a37e
jmp 0x40d5ac
call fcn.00454258
lea edx, [edi + 0x900]
lea ecx, [edi + 0x914]
mov dword [ecx], eax
cmp eax, dword [edx]
je 0x40d5ac
mov eax, dword [edi + 0x630]
mov eax, dword [eax + 0x94]
mov dword [eax + 0x1a0], esi
mov eax, dword [ecx]
mov dword [edx], eax
mov eax, dword [edi + 0x630]
lea ebx, [eax + 0x94]
mov eax, dword [ebx]
test eax, eax
je 0x40d5ac
push dword [eax + 4]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x40d5ac
mov esi, dword [ebx]
push 0xc
pop eax
call fcn.0044721c
xor esi, esi
inc esi
mov eax, dword [edi + 0x630]
mov eax, dword [eax + 0x94]
mov dword [eax + 0x1a0], esi
mov eax, dword [edi + 0x630]
jmp 0x40d8b6
push 0xfde80
call fcn.0040753c
push eax
call fcn.00455e6c
mov eax, dword [edi + 0x628]
xor ebx, ebx
cmp eax, ebx
jne 0x40d65b
push 0x308
call fcn.004ea1a3
pop ecx
mov dword [ebp + 8], eax
mov dword [ebp - 4], 2
cmp eax, ebx
je 0x40d606
push eax
call fcn.004575c0
jmp 0x40d608
xor eax, eax
or dword [ebp - 4], 0xffffffff
push 0x65
mov dword [edi + 0x628], eax
pop ecx
mov dword [eax + 0x304], ecx
mov eax, dword [edi + 0x628]
mov dword [eax + 0x2d4], ecx
cmp dword [ebp + 0xc], ebx
je 0x40d638
mov eax, dword [edi + 0x628]
mov dword [eax + 0x2d0], ebx
mov eax, dword [edi + 0x628]
mov ecx, dword [edi + 4]
mov dword [eax + 0x300], ecx
lea eax, [ebp - 0x20]
push eax
push dword [edi + 4]
mov eax, dword [edi + 0x628]
call fcn.00457828
jmp 0x40d6b1
mov ecx, dword [edi + 4]
mov dword [eax + 0x300], ecx
call fcn.00454258
lea ecx, [edi + 0x914]
lea edx, [edi + 0x910]
cmp eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edi + 0x628]
mov eax, dword [eax + 0x2a4]
je 0x40d69e
mov dword [eax + 0x1a0], esi
mov eax, dword [ecx]
push dword [edi + 0x628]
mov dword [edx], eax
call fcn.0045808e
jmp 0x40d6a4
mov dword [eax + 0x1a0], ebx
mov eax, dword [edi + 0x628]
mov byte [eax + 0x2fc], 1
mov eax, dword [edi + 0x628]
mov dword [0x571234], 2
jmp 0x40d8b6
push 0x100590
call fcn.0040753c
push eax
call fcn.00455e6c
mov eax, dword [edi + 0x624]
xor ebx, ebx
cmp eax, ebx
jne 0x40d758
push 0x308
call fcn.004ea1a3
pop ecx
mov dword [ebp + 8], eax
mov dword [ebp - 4], 3
cmp eax, ebx
je 0x40d703
push eax
call fcn.004575c0
jmp 0x40d705
xor eax, eax
or dword [ebp - 4], 0xffffffff
push 0x64
mov dword [edi + 0x624], eax
pop ecx
mov dword [eax + 0x304], ecx
mov eax, dword [edi + 0x624]
mov dword [eax + 0x2d4], ecx
cmp dword [ebp + 0xc], ebx
je 0x40d735
mov eax, dword [edi + 0x624]
mov dword [eax + 0x2d0], ebx
mov eax, dword [edi + 0x624]
mov ecx, dword [edi + 4]
mov dword [eax + 0x300], ecx
lea eax, [ebp - 0x20]
push eax
push dword [edi + 4]
mov eax, dword [edi + 0x624]
call fcn.00457828
jmp 0x40d7ae
mov ecx, dword [edi + 4]
mov dword [eax + 0x300], ecx
call fcn.00454258
lea ecx, [edi + 0x914]
lea edx, [edi + 0x90c]
cmp eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edi + 0x624]
mov eax, dword [eax + 0x2a4]
je 0x40d79b
mov dword [eax + 0x1a0], esi
mov eax, dword [ecx]
push dword [edi + 0x624]
mov dword [edx], eax
call fcn.0045808e
jmp 0x40d7a1
mov dword [eax + 0x1a0], ebx
mov eax, dword [edi + 0x624]
mov byte [eax + 0x2fc], 1
mov eax, dword [edi + 0x624]
mov dword [0x571234], 3
jmp 0x40d8b6
push 0x102ca0
call fcn.0040753c
push eax
call fcn.00455e6c
mov eax, dword [edi + 0x634]
xor ebx, ebx
cmp eax, ebx
jne 0x40d85a
push 0x308
call fcn.004ea1a3
pop ecx
mov dword [ebp + 8], eax
mov dword [ebp - 4], 4
cmp eax, ebx
je 0x40d800
push eax
call fcn.004575c0
jmp 0x40d802
xor eax, eax
or dword [ebp - 4], 0xffffffff
mov dword [edi + 0x634], eax
mov dword [eax + 0x304], 0x72
mov eax, dword [edi + 0x634]
mov dword [eax + 0x2d4], 0x66
cmp dword [ebp + 0xc], ebx
je 0x40d837
mov eax, dword [edi + 0x634]
mov dword [eax + 0x2d0], ebx
mov eax, dword [edi + 0x634]
mov ecx, dword [edi + 4]
mov dword [eax + 0x300], ecx
lea eax, [ebp - 0x20]
push eax
push dword [edi + 4]
mov eax, dword [edi + 0x634]
call fcn.00457828
jmp 0x40d8b0
mov ecx, dword [edi + 4]
mov dword [eax + 0x300], ecx
call fcn.00454258
lea ecx, [edi + 0x914]
lea edx, [edi + 0x908]
cmp eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edi + 0x634]
mov eax, dword [eax + 0x2a4]
je 0x40d89d
mov dword [eax + 0x1a0], esi
mov eax, dword [ecx]
push dword [edi + 0x634]
mov dword [edx], eax
call fcn.0045808e
jmp 0x40d8a3
mov dword [eax + 0x1a0], ebx
mov eax, dword [edi + 0x634]
mov byte [eax + 0x2fc], 1
mov eax, dword [edi + 0x634]
mov dword [edi + 0x8f8], esi
mov ebx, dword [eax + 4]
mov ecx, dword [edi + 0x61c]
mov esi, edi
call fcn.0040ddfb
xor esi, esi
cmp ebx, esi
jne 0x40d8ef
push 5
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x105
push esi
push esi
push dword [edi + 4]
call dword [sym.imp.USER32.dll_RedrawWindow]
jmp case.0x40d37b.10
push esi
xor eax, eax
mov esi, edi
mov dword [edi + 0x148], ebx
call fcn.00409b3a
push 5
push dword [edi + 0x148]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0
push 0x7f6
push dword [edi + 0x148]
call dword [sym.imp.USER32.dll_SendMessageW]
push dword [edi + 0x148]
call dword [sym.imp.USER32.dll_SetFocus]
call fcn.00435b21
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 8