Function at 0x432869
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
push ebx
push esi
lea eax, [ebp - 0x20]
push edi
mov esi, ecx
push eax
push dword [esi + 0x69c]
call dword [sym.imp.USER32.dll_GetClientRect]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
sub edi, dword [ebp - 0x1c]
sub ebx, dword [ebp - 0x20]
push 0
push 0x9f
push dword [esi + 0x698]
mov dword [ebp - 8], edi
call dword [sym.imp.USER32.dll_GetMenuState]
test al, 1
jne 0x43290d
shr eax, 3
and al, 1
mov byte [ebp - 1], al
je 0x43290d
lea eax, [ebp - 0x30]
push eax
push dword [esi + 0x6a8]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edi, dword [ebp - 0x24]
push 0x40
sub edi, dword [ebp - 0x2c]
dec edi
dec edi
push edi
push ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push 0
push dword [esi + 0x6a8]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [ebp - 0x1c]
push 0x40
push 1
push ebx
lea eax, [edi + eax - 3]
push eax
push dword [ebp - 0x20]
push 0
push dword [esi + 0x6ac]
call dword [sym.imp.USER32.dll_SetWindowPos]
sub dword [ebp - 8], edi
add dword [ebp - 0x1c], edi
mov edi, dword [ebp - 8]
jmp 0x43291b
push 0
push dword [esi + 0x6a8]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x40
push edi
push ebx
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push 0
push dword [esi + 0x6a0]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp byte [esi + 0xf1c], 0
jne 0x432958
push 0x40
push edi
xor edi, edi
push ebx
push edi
push edi
push edi
push dword [esi + 0x6a4]
call dword [sym.imp.USER32.dll_SetWindowPos]
push edi
push edi
jmp 0x432cef
cmp byte [esi + 0xb9e], 0
jne 0x432a58
cmp byte [esi + 0xb9b], 0
je 0x43299a
push 0
push 0
push dword [esi + 0x6a0]
mov byte [esi + 0xc80], 1
call dword [sym.imp.USER32.dll_ShowScrollBar]
push 0
push 1
push dword [esi + 0x6a0]
call dword [sym.imp.USER32.dll_ShowScrollBar]
jmp 0x432b45
xor eax, eax
cmp edi, dword [esi + 0xc88]
mov edi, dword [sym.imp.USER32.dll_ShowScrollBar]
setl al
push eax
push 1
push dword [esi + 0x6a0]
call edi
xor eax, eax
cmp ebx, dword [esi + 0xc84]
setl al
push eax
push 0
push dword [esi + 0x6a0]
call edi
lea eax, [ebp - 0x20]
push eax
push dword [esi + 0x6a0]
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
sub eax, dword [ebp - 0x1c]
sub ebx, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, dword [esi + 0xc88]
setl cl
push ecx
push 1
push dword [esi + 0x6a0]
call edi
xor eax, eax
cmp ebx, dword [esi + 0xc84]
setl al
push eax
push 0
push dword [esi + 0x6a0]
call edi
lea eax, [ebp - 0x20]
push eax
push dword [esi + 0x6a0]
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
sub eax, dword [ebp - 0x1c]
sub ebx, dword [ebp - 0x20]
cmp eax, dword [esi + 0xc88]
mov dword [ebp - 8], eax
jl 0x432a47
cmp ebx, dword [esi + 0xc84]
jl 0x432a47
xor eax, eax
jmp 0x432a4a
xor eax, eax
inc eax
mov edi, dword [ebp - 8]
mov byte [esi + 0xc80], al
jmp 0x432b45
push dword [esi + 0x69c]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x432b3e
mov edi, dword [sym.imp.USER32.dll_ShowScrollBar]
xor ebx, ebx
push ebx
push ebx
push dword [esi + 0x6a0]
call edi
push ebx
push 1
push dword [esi + 0x6a0]
call edi
lea eax, [ebp - 0x20]
push eax
push dword [esi + 0x6a0]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ebx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x14]
sub ebx, dword [ebp - 0x20]
sub edi, dword [ebp - 0x1c]
cmp ebx, 1
mov dword [ebp - 8], edi
jl 0x432d07
cmp edi, 1
jl 0x432d07
mov ecx, dword [esi + 0x21c]
imul ecx, ecx, 0x190
mov eax, ecx
cdq
idiv edi
mov edi, dword [esi + 0x218]
imul edi, edi, 0x190
mov dword [ebp - 0x10], eax
mov eax, edi
cdq
idiv ebx
mov edx, dword [ebp - 0x10]
cmp eax, edx
jle 0x432aeb
mov dword [ebp - 0xc], eax
jmp 0x432af0
mov dword [ebp - 0xc], edx
mov eax, edx
lea ecx, [ecx + eax - 1]
mov dword [ebp - 0x10], ecx
lea ecx, [edi + eax - 1]
mov eax, ecx
cdq
idiv dword [ebp - 0xc]
mov edi, eax
mov eax, dword [ebp - 0x10]
cdq
idiv dword [ebp - 0xc]
cmp edi, ebx
mov dword [esi + 0xc84], edi
mov dword [esi + 0xc88], eax
jg 0x432b1f
cmp eax, dword [ebp - 8]
jle 0x432b28
inc dword [ebp - 0xc]
inc ecx
inc dword [ebp - 0x10]
jmp 0x432afb
push dword [ebp - 0xc]
lea ecx, [esi + 0xb88]
push 0x190
call fcn.004423f8
mov edi, dword [ebp - 8]
and byte [esi + 0xc80], 0
mov ecx, dword [esi + 0xc84]
cmp ebx, ecx
jle 0x432b5a
mov eax, ebx
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
jmp 0x432b5d
mov eax, dword [ebp - 0x20]
mov ecx, dword [esi + 0xc88]
mov dword [ebp - 0x10], eax
cmp edi, ecx
jle 0x432b75
mov eax, edi
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
jmp 0x432b78
mov eax, dword [ebp - 0x1c]
mov edx, dword [esi + 0xc84]
cmp ebx, edx
jl 0x432b84
mov ebx, edx
cmp edi, ecx
mov dword [esi + 0xc78], ebx
jl 0x432b90
mov edi, ecx
push 0x40
push edi
push ebx
push eax
push dword [ebp - 0x10]
mov dword [esi + 0xc7c], edi
xor edi, edi
push edi
push dword [esi + 0x6a4]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi + 0xc84]
mov edx, dword [esi + 0xc88]
cmp byte [esi + 0xb9e], 0
mov dword [esi + 0xc6c], eax
mov dword [esi + 0xc74], edx
jne 0x432c8e
mov ecx, dword [esi + 0xc78]
cmp ecx, edi
jg 0x432bde
xor ecx, ecx
mov ebx, dword [esi + 0xc68]
mov edi, eax
sub edi, ecx
cmp ebx, edi
jge 0x432bf0
mov ecx, ebx
jmp 0x432c00
mov edi, dword [esi + 0xc78]
test edi, edi
jg 0x432bfc
xor edi, edi
mov ecx, eax
sub ecx, edi
test ecx, ecx
jge 0x432c0a
and dword [ebp - 0xc], 0
jmp 0x432c34
mov ecx, dword [esi + 0xc78]
test ecx, ecx
jg 0x432c16
xor ecx, ecx
mov edi, eax
sub edi, ecx
cmp ebx, edi
jge 0x432c23
mov dword [ebp - 0xc], ebx
jmp 0x432c34
mov ecx, dword [esi + 0xc78]
test ecx, ecx
jg 0x432c2f
xor ecx, ecx
sub eax, ecx
mov dword [ebp - 0xc], eax
mov ebx, dword [esi + 0xc7c]
test ebx, ebx
jle 0x432c42
mov eax, ebx
jmp 0x432c44
xor eax, eax
mov edi, dword [esi + 0xc70]
mov ecx, edx
sub ecx, eax
cmp edi, ecx
jge 0x432c56
mov eax, edi
jmp 0x432c64
test ebx, ebx
jle 0x432c5e
mov ecx, ebx
jmp 0x432c60
xor ecx, ecx
mov eax, edx
sub eax, ecx
test eax, eax
jge 0x432c6c
xor edi, edi
jmp 0x432c91
test ebx, ebx
jle 0x432c74
mov eax, ebx
jmp 0x432c76
xor eax, eax
mov ecx, edx
sub ecx, eax
cmp edi, ecx
jl 0x432c91
test ebx, ebx
jle 0x432c86
mov eax, ebx
jmp 0x432c88
xor eax, eax
sub edx, eax
mov edi, edx
jmp 0x432c91
mov dword [ebp - 0xc], edi
lea eax, [ebp - 0x40]
push eax
push dword [esi + 0x6a4]
call dword [sym.imp.USER32.dll_GetClientRect]
xor eax, eax
push 2
push eax
lea ecx, [ebp - 0x40]
push eax
mov ebx, dword [ebp - 0xc]
push ecx
push eax
mov eax, dword [esi + 0xc70]
sub eax, edi
push eax
mov eax, dword [esi + 0xc68]
sub eax, ebx
push eax
push dword [esi + 0x6a4]
call dword [sym.imp.USER32.dll_ScrollWindowEx]
cmp byte [esi + 0xb9e], 0
mov dword [esi + 0xc68], ebx
mov dword [esi + 0xc70], edi
jne 0x432ceb
mov ecx, esi
call fcn.004354db
jmp 0x432cfb
push 0
push 0
push dword [esi + 0x6a4]
call dword [sym.imp.USER32.dll_InvalidateRect]
push dword [esi + 0x6a4]
call dword [sym.imp.USER32.dll_UpdateWindow]
pop edi
pop esi
pop ebx
leave
ret