Function at 0x489b42
Capabilities:
Hide graphical window

Disassembly:
push 0x84
mov eax, 0x4bf16b
call fcn.004b6a29
mov ebx, ecx
mov ecx, dword [ebx + 8]
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
push 1
mov dword [ebp - 0x64], eax
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x78], esi
push edx
call dword [eax]
and dword [ebp - 4], 0
cmp dword [ebp - 0x18], 8
mov edx, dword [ebp - 0x2c]
jae 0x489b83
lea edx, [ebp - 0x2c]
mov ecx, dword [ebx + 0xc]
call fcn.004896fb
push 0x2e
mov dword [ebp - 0x60], eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
cmp byte [ebp - 0x64], 0
lea eax, [eax*2 + 0x13]
mov dword [ebp - 0x7c], eax
je 0x489bb8
push 0x47
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x60]
add ecx, 6
add ecx, eax
jmp 0x489bd9
push 0x2d
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [ebp - 0x60]
mov edx, 0x4e9aa0
lea esi, [ecx + eax*2]
mov ecx, dword [ebx + 0xc]
call fcn.004896fb
lea ecx, [esi + eax*2]
mov esi, dword [ebp - 0x78]
push 0x10
mov dword [ebp - 0x60], ecx
xor ecx, ecx
cmp dword [ebx + 0x14], 0xc0
pop eax
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x6c], ecx
jl 0x489bfb
push 0x20
mov dword [ebp - 0x6c], 0x12c
jmp 0x489c1e
cmp dword [ebx + 0x14], 0x90
jl 0x489c0f
push 0x18
mov dword [ebp - 0x6c], 0xc8
jmp 0x489c1e
cmp dword [ebx + 0x14], 0x78
jl 0x489c22
push 0x14
mov dword [ebp - 0x6c], 0x64
pop eax
mov dword [ebp - 0x68], eax
cmp byte [ebp - 0x64], cl
je 0x489c30
add eax, 6
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x18], 8
mov dword [esi], ecx
mov eax, dword [ebx + 4]
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x2c]
jae 0x489c44
lea eax, [ebp - 0x2c]
push ecx
push ecx
mov dword [ebp - 0x80], eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
mov eax, dword [ebp - 0x64]
push edi
push dword [ebp - 0x70]
movzx eax, al
push dword [ebp - 0x7c]
neg eax
push dword [ebp - 0x60]
sbb eax, eax
push 2
push 2
and eax, 0x1083
or eax, 0x44010000
push eax
push dword [ebp - 0x80]
push str.Button
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
cmp byte [ebp - 0x64], 0
mov dword [esi], eax
je 0x489d1d
push 0x65
pop esi
sub edi, 0xe8
je 0x489cbe
dec edi
je 0x489cbb
dec edi
je 0x489cb7
sub edi, 5
je 0x489cb3
dec edi
je 0x489caf
dec edi
jne 0x489cbe
push 0x68
jmp 0x489cbd
push 0x69
jmp 0x489cbd
push 0x67
jmp 0x489cbd
push 0x6a
jmp 0x489cbd
push 0x66
pop esi
push str.COMCTL32
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
je 0x489cd8
mov ecx, eax
call fcn.00489ad2
xor edi, edi
jmp 0x489cdc
xor edi, edi
mov eax, edi
cmp eax, 0x60000
sbb eax, eax
and eax, 0x1000
add eax, 0x40
push eax
mov eax, dword [ebp - 0x68]
push eax
push eax
mov eax, dword [ebp - 0x6c]
add eax, esi
push edi
movzx eax, ax
push eax
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.USER32.dll_LoadImageW]
mov esi, dword [ebp - 0x78]
push eax
push edi
push 0xf7
push dword [esi]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x489d1f
xor edi, edi
push edi
push dword [ebx + 0xc]
push 0x30
push dword [esi]
call dword [sym.imp.USER32.dll_SendMessageW]
push 4
push dword [esi]
call dword [sym.imp.USER32.dll_ShowWindow]
cmp byte [ebp - 0x64], 0
jne 0x489da4
lea eax, [ebp - 0x74]
mov dword [ebp - 0x74], edi
push eax
push edi
push 0x1601
push dword [esi]
mov dword [ebp - 0x70], edi
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp - 0x74], 0
jle 0x489da4
mov ecx, dword [ebx + 0xc]
mov edx, 0x4e9aa0
mov esi, dword [ebp - 0x70]
mov dword [ebp - 0x90], edi
mov dword [ebp - 0x8c], edi
call fcn.004896fb
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov dword [ebp - 0x84], esi
mov edi, esp
lea esi, [ebp - 0x90]
lea eax, [ecx + eax*2]
mov dword [ebp - 0x88], eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x78]
mov ecx, esi
call fcn.00430f16
xor edi, edi
push 0x30
lea eax, [ebp - 0x5c]
push edi
push eax
call fcn.004936a0
add esp, 0xc
mov dword [ebp - 0x5c], 0x30
mov dword [ebp - 0x58], 0x11
push edi
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov ecx, dword [ebx + 4]
or dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x3c], eax
mov eax, dword [esi]
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x4c]
push eax
push ecx
mov dword [ebp - 0x54], ecx
call dword [sym.imp.USER32.dll_GetClientRect]
lea eax, [ebp - 0x5c]
push eax
push edi
push 0x432
push dword [ebx + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
push edi
push 1
push 0x401
push dword [ebx + 0x28]
call dword [sym.imp.USER32.dll_SendMessageW]
push edi
push 1
lea ecx, [ebp - 0x2c]
call fcn.0040f05a
mov eax, esi
call fcn.004b69d8
ret 0x10