Function at 0x457e80
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x509718
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4c8
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov ecx, 0x658670
push 0
push esi
mov dword [ebp - 0x18], edi
call fcn.0041c6d0
test eax, eax
jne 0x457ecd
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
xor ecx, ecx
mov dword [edi + 8], 0x11
mov word [ebp - 0x2cc], cx
lea ecx, [ebp - 0x50]
push 0x10000603
push ecx
lea ecx, [eax + 0x34]
mov dword [edi + 0xc], esi
call fcn.00422080
mov eax, dword [eax]
mov dword [ebp - 4], 0
test eax, eax
je 0x457f02
mov eax, dword [eax]
jmp 0x457f04
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x5c], 0
push eax
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x58], 0
movdqu xmmword [ebp - 0x6c], xmm0
mov dword [ebp - 0x54], 0
call fcn.00425ca0
lea ecx, [ebp - 0x50]
call fcn.00433490
lea ecx, [ebp - 0x4c]
call fcn.00402b50
mov dword [ebp - 0x4c], vtable.CMultiLevelRegistryKey.0
mov byte [ebp - 4], 3
xor ecx, ecx
jmp 0x457f50
movzx eax, word [ecx + str.SoftwareSynapticsSynTPEnhTray]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x2ce], ax
test ax, ax
jne 0x457f50
mov ebx, dword [ebp - 0x68]
lea ecx, [ebp - 0x2cc]
push ebx
call fcn.0040a510
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x457fcf
xor ecx, ecx
movzx eax, word [ecx + str.SoftwareSynapticsSynTPEnh]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x2ce], ax
test ax, ax
jne 0x457f96
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
je 0x458cc1
push 0
push 0
lea eax, [edi + 0x9b4]
push eax
push str.UseOEMTrayIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x9b8]
push eax
push str.StickOnlyIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x9bc]
push eax
push str.TouchPadOnlyIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x9c0]
push eax
push str.DualDeviceIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x94c]
push eax
push str.AnimatedIconColorId
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x950]
push eax
push str.AnimatedIconMaskId
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0xc9c]
push eax
push str.ShowAnimatedChiralIcons
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
lea eax, [edi + 0x830]
push eax
push eax
push str.TPNotificationTitleID
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
lea eax, [edi + 0x834]
push eax
push eax
push str.TPDisabledNotificationMessageID
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
lea eax, [edi + 0x838]
push eax
push eax
push str.TPEnabledNotificationMessageID
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x9c8]
push eax
push str.ShowPhysicalButtonWhenSwapped
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x9cc]
push eax
push str.NoStickLaunchSynapticsPropertiesFlags
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 8]
push eax
push str.TrayIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x814]
push eax
push str.UseNewSizeOfNotifyIconData
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0x840]
push eax
push str.GuardTrayIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0xca0]
push eax
push str.ShowDriverInfo
lea ecx, [ebp - 0x4c]
call fcn.004baa70
xor ecx, ecx
jmp 0x458150
movzx eax, word [ecx + str.SoftwareSynapticsSynTPEnhPopupConfig]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x2ce], ax
test ax, ax
jne 0x458150
push ebx
lea ecx, [ebp - 0x2cc]
call fcn.0040a510
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x4581c4
xor ecx, ecx
movzx eax, word [ecx + str.SoftwareSynapticsSynTPEnhPopupConfig]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x2ce], ax
test ax, ax
jne 0x458193
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
push 0
push 0
lea eax, [edi + 0xc90]
push eax
push str.ShowPressToSelect
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0xca4]
push eax
push str.DisablePopupMenuOnRClick
lea ecx, [ebp - 0x4c]
call fcn.004baa70
push 0
push 0
lea eax, [edi + 0xca8]
push eax
push str.DisablePopupMenuOnLClick
lea ecx, [ebp - 0x4c]
call fcn.004baa70
mov ecx, edi
call fcn.00459f30
push 0
push 3
mov ecx, 0x658670
call fcn.0041c880
test eax, eax
jne 0x45823a
push eax
push 3
mov ecx, 0x658670
call fcn.0041c780
test eax, eax
jne 0x45823a
xor ecx, ecx
jmp 0x45823f
mov ecx, 1
xor eax, eax
mov dword [ebp - 0xc4], 0
test ecx, ecx
mov dword [ebp - 0xc0], 0x45bff0
xorps xmm0, xmm0
mov dword [ebp - 0xbc], 0
sete al
mov dword [ebp - 0xb8], 0
mov dword [edi + 0xc98], eax
lea eax, [ebp - 0xc4]
mov ebx, dword [0x657be0]
push eax
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0xb4], ebx
movdqu xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0xa0], str.SynTPEnhTrayWndClass
call dword [sym.imp.USER32.dll_RegisterClassW]
test ax, ax
jne 0x4582b4
push str.Failed_to_register_window_class._n
jmp 0x458cb2
push 0
mov esi, dword [sym.imp.USER32.dll_CreateWindowExW]
push ebx
push 0
push 0
push 0
push 0
push 0xfffffe70
push 0xfffffe70
push SysReAllocString
push str.Touchpad_driver_tray_icon_window
push str.SynTPEnhTrayWndClass
push 0x80
call esi
mov dword [edi + 0x10], eax
test eax, eax
jne 0x4582f6
push str.Couldnt_create_associated_tray_window__n
jmp 0x458cb2
push 0x7f00
push 0
mov dword [ebp - 0x9c], 0x30
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0x45b600
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x88], ebx
mov dword [ebp - 0x84], 0
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp - 0x80], eax
lea eax, [ebp - 0x9c]
push eax
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], str.SynTPEnhTFPWndClass
mov dword [ebp - 0x70], 0
call dword [sym.imp.USER32.dll_RegisterClassExW]
push 0
push ebx
push 0
push 0
push 0xa
push 0xfa
push 0
push 0
push SysReAllocString
push str.Forcepad_driver_tray_window
push str.SynTPEnhTFPWndClass
push 0x88
call esi
mov dword [edi + 0x934], eax
test eax, eax
jne 0x4583b6
push str.Couldnt_create_forcepad_tray_window__n
push eax
push str.CTPTrayAction::Init
call fcn.004cb3a0
add esp, 0xc
push dword [edi + 0x10]
call dword [sym.imp.USER32.dll_GetDC]
mov esi, dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push eax
call esi
push dword [edi + 0x10]
mov dword [edi + 0x92c], eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call esi
cmp dword [edi + 0x92c], 0
mov dword [edi + 0x930], eax
je 0x458cad
test eax, eax
je 0x458cad
cmp dword [edi + 0x3e8], 0
mov dword [edi + 0x938], 1
je 0x45850d
push 0
push 1
push 1
push dword [edi + 0x3e4]
push dword [edi + 0x3e0]
call dword [sym.imp.GDI32.dll_CreateBitmap]
push dword [edi + 0x3e4]
mov dword [edi + 0x944], eax
push dword [edi + 0x3e0]
push dword [edi + 0x10]
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [edi + 0x948], eax
mov dword [edi + 0x958], eax
movzx eax, word [edi + 0x950]
push eax
push ebx
call dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x458503
cmp dword [edi + 0x944], 0
je 0x458503
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push eax
push dword [edi + 0x92c]
call esi
push dword [edi + 0x944]
mov ebx, eax
push dword [edi + 0x930]
call esi
push 0xcc0020
push 0x20
push 0x20
push 0
push 0
mov edi, eax
mov eax, dword [ebp - 0x18]
push dword [eax + 0x92c]
push dword [eax + 0x3e4]
push dword [eax + 0x3e0]
push 0
push 0
push dword [eax + 0x930]
call dword [sym.imp.GDI32.dll_StretchBlt]
mov esi, eax
mov eax, dword [ebp - 0x18]
push ebx
mov ebx, dword [sym.imp.GDI32.dll_SelectObject]
push dword [eax + 0x92c]
call ebx
push edi
mov edi, dword [ebp - 0x18]
push dword [edi + 0x930]
call ebx
push dword [ebp - 0x14]
call dword [sym.imp.GDI32.dll_DeleteObject]
test esi, esi
jne 0x458544
push str.Couldnt_stretch_pad_mask__n
jmp 0x458cb2
push str.Couldnt_create_pad_bitmaps__n
jmp 0x458cb2
movzx eax, word [edi + 0x950]
push eax
push ebx
call dword [sym.imp.USER32.dll_LoadBitmapW]
push 0x20
push 0x20
push dword [edi + 0x10]
mov dword [edi + 0x944], eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [edi + 0x948], eax
mov dword [edi + 0x958], eax
jmp 0x458547
mov ebx, dword [ebp - 0x20]
push 0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x2cc]
mov dword [ebp - 0x1c], 0x67
push str.SoftwareSynapticsSynTPEnhTray
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x4585b5
push eax
push eax
push str.SoftwareSynapticsSynTPEnh
lea ecx, [ebp - 0x2cc]
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
je 0x458cc1
push 0
lea eax, [ebp - 0x1c]
push eax
push eax
push str.TrayIconStaticId
lea ecx, [ebp - 0x4c]
call fcn.004baa70
cmp dword [ebp - 0x1c], 0x67
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push 0
jne 0x4585ee
push 0x14
push 0x14
push 1
push 0x67
push ebx
call dword [sym.imp.USER32.dll_LoadImageW]
mov dword [edi + 0x968], eax
jmp 0x458656
push 0
lea eax, [ebp - 0x10]
mov dword [ebp - 0x14], ebx
push eax
lea eax, [ebp - 0x4d4]
mov dword [ebp - 0x20], 0
push eax
push str.TrayIconResource
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x10], 0x208
call fcn.004bb340
test eax, eax
je 0x458636
lea eax, [ebp - 0x4d4]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], 1
jmp 0x458638
mov eax, ebx
movzx ecx, word [ebp - 0x1c]
push ecx
push eax
call esi
cmp dword [ebp - 0x20], 0
mov dword [edi + 0x968], eax
je 0x458656
mov eax, dword [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0x6f
push ebx
call esi
mov esi, dword [sym.imp.USER32.dll_LoadImageW]
push 0
push 0x10
push 0x10
mov dword [edi + 0x964], eax
movzx eax, word [edi + 0x9c0]
push 1
push eax
push ebx
call esi
push 0
push 0x10
push 0x10
mov dword [edi + 0x970], eax
movzx eax, word [edi + 0x9b8]
push 1
push eax
push ebx
call esi
push 0
push 0x10
push 0x10
mov dword [edi + 0x96c], eax
movzx eax, word [edi + 0x9bc]
push 1
push eax
push ebx
call esi
mov esi, dword [sym.imp.USER32.dll_LoadBitmapW]
mov dword [edi + 0x974], eax
movzx eax, word [edi + 0x94c]
push eax
push ebx
call esi
push 0x6d
push ebx
mov dword [edi + 0x954], eax
call esi
push 0x6e
push ebx
mov dword [edi + 0x95c], eax
call esi
mov dword [edi + 0x960], eax
mov esi, 0xdf
lea eax, [edi + 0x978]
mov dword [ebp - 0x10], eax
mov edi, eax
nop
movzx eax, si
push eax
push ebx
call dword [sym.imp.USER32.dll_LoadIconW]
inc esi
mov dword [edi], eax
lea edi, [edi + 4]
cmp esi, 0xe2
jle 0x4586f0
mov eax, dword [ebp - 0x18]
mov esi, 0xe3
add eax, 0x988
mov edi, eax
movzx eax, si
push eax
push ebx
call dword [sym.imp.USER32.dll_LoadIconW]
inc esi
mov dword [edi], eax
lea edi, [edi + 4]
cmp esi, 0xe6
jle 0x458718
mov edi, dword [ebp - 0x18]
cmp dword [edi + 0x954], 0
je 0x458ca6
cmp dword [edi + 0x95c], 0
je 0x458ca6
cmp dword [edi + 0x960], 0
je 0x458ca6
cmp dword [edi + 0x944], 0
je 0x458ca6
cmp dword [edi + 0x948], 0
je 0x458ca6
cmp dword [edi + 0x958], 0
je 0x458ca6
push 0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x2cc]
mov dword [ebp + 8], 0x208
push str.SoftwareIBMIBM_ThinkPad_UltraNav_WizardPath
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x4587e8
push eax
push eax
push str.SoftwareIBMIBM_ThinkPad_UltraNav_WizardPath
lea ecx, [ebp - 0x2cc]
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
push 0
push str.C:Program_FilesThinkPadUltraNav_Wizard
lea eax, [ebp + 8]
push eax
lea esi, [edi + 0xec0]
push esi
push 0x50daec
lea ecx, [ebp - 0x4c]
call fcn.004bb340
test eax, eax
je 0x45882f
add esi, 0xfffffffe
mov edi, edi
mov ax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x458810
mov edi, esi
mov ecx, 6
mov esi, str.UNAVWIZ.EXE
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov edi, dword [ebp - 0x18]
push 0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x2cc]
mov dword [ebp + 8], 0x208
push str.SoftwareIBMIBM_ThinkPad_UltraNav_TrayIconPath
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x458895
push eax
push eax
push str.SoftwareIBMIBM_ThinkPad_UltraNav_TrayIconPath
lea ecx, [ebp - 0x2cc]
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
push 0
push str.C:Program_FilesThinkPadUltraNav_TrayIcon
lea eax, [ebp + 8]
push eax
lea esi, [edi + 0x10c8]
push esi
push 0x50daec
lea ecx, [ebp - 0x4c]
call fcn.004bb340
test eax, eax
je 0x4588dd
add esi, 0xfffffffe
jmp 0x4588c0
mov ax, word [esi + 2]
add esi, 2
test ax, ax
jne 0x4588c0
mov edi, esi
mov ecx, 7
mov esi, str.UNavTray.EXE
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x18]
mov esi, dword [sym.imp.GDI32.dll_CreateSolidBrush]
push 0x2008000
call esi
push 0x200ff00
mov dword [edi + 0x99c], eax
call esi
push 0x2ffffff
mov dword [edi + 0x9a0], eax
call esi
push 0x2ff0000
mov dword [edi + 0x9a4], eax
call esi
push 0x2ffff00
mov dword [edi + 0x9a8], eax
call esi
push 0x2ffffff
mov dword [edi + 0x9ac], eax
call esi
mov dword [edi + 0x9b0], eax
mov eax, dword [edi + 0x94c]
sub eax, 0x69
je 0x458997
sub eax, 0x4e
jne 0x4589e8
push 0x10
cmp dword [edi + 0x3e8], eax
je 0x458989
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 0x16
call dword [eax + 0x88]
push eax
mov eax, dword [edi]
mov ecx, edi
push 3
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 9
call dword [eax + 0x88]
push eax
call dword [sym.imp.GDI32.dll_CreateEllipticRgn]
jmp 0x4589e2
push 0x16
push 3
push 9
call dword [sym.imp.GDI32.dll_CreateEllipticRgn]
jmp 0x4589e2
cmp dword [edi + 0x3e8], 0
push 0x14
je 0x4589d6
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 0x1b
call dword [eax + 0x88]
push eax
mov eax, dword [edi]
mov ecx, edi
push 2
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 4
call dword [eax + 0x88]
push eax
jmp 0x4589dc
push 0x1b
push 2
push 4
call dword [sym.imp.GDI32.dll_CreateRectRgn]
mov dword [edi + 0x998], eax
cmp dword [edi + 0x998], 0
jne 0x4589fb
push str.Couldnt_create_clip_region__n
jmp 0x458cb2
push 0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x2cc]
push str.SoftwareSynapticsSynTPEnhTray
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x458a5a
push eax
push eax
push str.SoftwareSynapticsSynTPEnh
lea ecx, [ebp - 0x2cc]
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
push 0
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 1
push eax
lea eax, [ebp - 0x14]
push eax
push str.ShowDisableIcon
lea ecx, [ebp - 0x4c]
call fcn.004baa70
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x4c]
push 0
mov dword [edi + 0x828], eax
lea eax, [ebp + 8]
push 0
push eax
lea eax, [edi + 0x404]
mov dword [ebp + 8], 0x208
push eax
push str.DoubleClickTrayActionPath
call fcn.004bb340
push 0
push 0
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x208
push eax
lea eax, [edi + 0x60c]
push eax
push str.ShowAboutActionPath
lea ecx, [ebp - 0x4c]
call fcn.004bb340
push 0
push 0
lea eax, [ebp + 8]
mov dword [ebp + 8], 0x208
push eax
lea eax, [edi + 0x12d0]
push eax
push str.ShowModeSwitchMessageResourcePath
lea ecx, [ebp - 0x4c]
call fcn.004bb340
push 0
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x14]
push eax
push str.ShowScrollMessageResourceID
lea ecx, [ebp - 0x4c]
call fcn.004baa70
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x14d8], eax
lea eax, [ebp - 0x10]
push 0
push eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], 0
push eax
push str.ShowVolumeControlMessageResourceID
call fcn.004baa70
mov eax, dword [ebp - 0x14]
push ecx
mov ecx, esp
mov dword [edi + 0x14dc], eax
push 0x50daec
call fcn.0040c140
push dword [edi + 0xc]
mov eax, dword [edi]
lea ecx, [edi + 0x20]
push dword [edi + 0x10]
push ecx
push ebx
mov ecx, edi
call dword [eax + 0x70]
test eax, eax
je 0x458cc1
mov esi, dword [edi]
lea ebx, [edi + 0x20]
mov eax, esi
mov ecx, edi
push ebx
call dword [eax + 0x74]
push eax
mov ecx, edi
call dword [esi + 0x7c]
mov esi, dword [edi]
mov ecx, edi
mov eax, esi
push ebx
call dword [eax + 0x78]
push eax
mov ecx, edi
call dword [esi + 0x7c]
push 0
push dword [ebp - 0x68]
lea ecx, [ebp - 0x2cc]
push str.SoftwareSynapticsSynTPCplControls01TabGeneral41ForceClickSlider
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
test eax, eax
jne 0x458be1
push eax
push eax
push str.SoftwareSynapticsSynTPCplControls01TabGeneral41ForceClickSlider
lea ecx, [ebp - 0x2cc]
call fcn.004097a0
push 0
push 1
push 0
lea eax, [ebp - 0x2cc]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x4c]
call fcn.004bd990
push 0
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0
push eax
lea eax, [ebp - 0x14]
push eax
push str.Min_Range
lea ecx, [ebp - 0x4c]
call fcn.004baa70
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x4c]
mov dword [edi + 0x14e0], eax
lea eax, [ebp - 0x10]
push 0
push eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], 0x400
push eax
push str.Max_Range
call fcn.004baa70
mov eax, dword [ebp - 0x14]
mov ecx, dword [edi + 0x14e0]
mov dword [edi + 0x14e4], eax
cmp ecx, eax
jne 0x458c42
inc eax
mov dword [edi + 0x14e4], eax
jmp 0x458c50
jbe 0x458c50
mov dword [edi + 0x14e0], eax
mov dword [edi + 0x14e4], ecx
mov eax, dword [edi + 0x934]
test eax, eax
je 0x458c9f
push 0
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
push 0x530
push dword [edi + 0x934]
mov ecx, edi
call fcn.00456de0
lea esi, [edi + 0x14e8]
push esi
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x458c9f
push 1
push eax
push eax
push dword [edi + 0x14ec]
push dword [esi]
push eax
push dword [edi + 0x934]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov esi, 1
jmp 0x458cc3
push str.Couldnt_create_pad_or_button_bitmap__n
jmp 0x458cb2
push str.Couldnt_create_device_contexts__n
push 0
push str.CTPTrayAction::Init
call fcn.004cb3a0
add esp, 0xc
xor esi, esi
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 2
mov dword [ebp - 0x4c], vtable.CMultiLevelRegistryKey.0
call fcn.00402cb0
lea ecx, [ebp - 0x6c]
call fcn.0041d740
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 4