Function at 0x47f670
Capabilities:
Create thread
Get session user name

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50a930
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x748
push esi
push edi
push str.User32.dll
mov edi, ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov ecx, edi
mov dword [edi + 0x14cc], eax
call fcn.0047bed0
push 0
lea ecx, [ebp - 0x100]
mov dword [ebp - 0x18], 1
call fcn.004b90e0
push 0
push 0
push 0
push str.SoftwareSynapticsSynTPEnh
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x100]
mov dword [ebp - 4], 0
call fcn.004bcca0
test eax, eax
je 0x47f71c
push 0
lea eax, [ebp - 0x18]
push eax
push eax
push str.UseSetProcessDPIAware
lea ecx, [ebp - 0xfc]
call fcn.004cbcf0
test eax, eax
jne 0x47f71c
test byte [0x652fc0], 1
je 0x47f71c
push str.Unable_to_open_registry_n
push 1
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
lea ecx, [ebp - 0xfc]
call fcn.004cb8e0
cmp dword [ebp - 0x18], 1
jne 0x47f787
cmp dword [edi + 0x14cc], 0
je 0x47f787
push 1
call fcn.00486bc0
add esp, 4
test eax, eax
jne 0x47f787
test byte [0x652fc0], 4
je 0x47f761
push str.SetProcessDpiAwarenessHelper_failed_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
call fcn.00486b80
test eax, eax
jne 0x47f787
test byte [0x652fc0], 4
je 0x47f787
push str.SetProcessDPIAwareHelper_failed_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
lea eax, [ebp - 0x60]
mov dword [ebp - 0x60], 8
push eax
mov dword [ebp - 0x5c], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov ecx, edi
call fcn.0047e830
mov ecx, edi
call fcn.0047ccc0
push 0
push 1
push str.SoftwareSynapticsSynTPEnhZoneConfig
push SysReAllocString
lea ecx, [ebp - 0x11c]
call fcn.004b9150
push 0
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x14]
mov dword [ebp - 0x10], 0
push eax
push str.IsUsingZoneFlags
lea ecx, [ebp - 0x118]
call fcn.004cbcf0
cmp dword [ebp - 0x14], 0
jne 0x47f80c
mov ecx, edi
call fcn.0047d3e0
push 0
push 1
push str.IsUsingZoneFlags
lea ecx, [ebp - 0x118]
call fcn.004cc170
lea ecx, [ebp - 0x118]
call fcn.004cb8e0
push 0x50f8e4
push 0x523c6c
lea eax, [ebp - 0x134]
push 0
push eax
call fcn.004c8bc0
add esp, 0x10
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x134]
mov byte [ebp - 4], 2
push eax
mov ecx, 0x652d20
call fcn.0040a2f0
cmp dword [ebp - 0x120], 8
mov byte [ebp - 4], 1
jb 0x47f866
push dword [ebp - 0x134]
call fcn.004cf489
add esp, 4
call fcn.004a5470
lea ecx, [ebp - 0x8c]
call fcn.00402b50
mov dword [ebp - 0x8c], vtable.CMultiLevelRegistryKey.0
push 0
push 1
push 0
push str.SoftwareSynapticsSynTPEnh
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 3
call fcn.004bd990
test eax, eax
je 0x48054f
push 0
push 1
push 1
push str.SoftwareSynapticsSynTPEnh
push SysReAllocString
lea ecx, [ebp - 0x8c]
call fcn.004bd990
test eax, eax
je 0x48054f
push 0
push 0
push str.SoftwareSynapticsSynTPEnh
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x58]
call fcn.004b9150
push 0
lea eax, [ebp - 0x14]
mov byte [ebp - 4], 4
push eax
lea eax, [ebp - 0x10]
mov dword [ebp - 0x14], 0
push eax
push str.ApplyPTPEnableDisable
lea ecx, [ebp - 0x54]
call fcn.004cbcf0
xor eax, eax
mov dword [ebp - 0x14], 0
cmp dword [ebp - 0x10], eax
lea ecx, [ebp - 0x54]
push 0
setne al
mov dword [edi + 0x1558], eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x10]
push eax
push str.IgnoreFirstTPOnOffOSDAfterSessionChange
call fcn.004cbcf0
xor eax, eax
lea ecx, [ebp - 0x54]
cmp dword [ebp - 0x10], eax
push 0
setne al
mov dword [edi + 0x8c0], eax
lea eax, [edi + 0x8c4]
push 0
push eax
push str.ChangeCursorIconDuringTPONOFF
call fcn.004cbcf0
cmp dword [edi + 0x8c0], 0
je 0x47f967
mov dword [edi + 0x1564], 0
push ebx
push 0
lea eax, [edi + 0x7bc]
push eax
push eax
push str.SwapLeftRightEdgePullZoneIfLanguageIsRTL
lea ecx, [ebp - 0x54]
call fcn.004cbcf0
push 0
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x10]
push eax
push str.AutoRotationFlag
lea ecx, [ebp - 0x8c]
call fcn.004baa70
mov eax, dword [ebp - 0x10]
lea ebx, [edi + 0x10]
push 0
push 0
mov dword [edi + 0x8a0], eax
lea ecx, [ebp - 0x8c]
lea eax, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0x80
push eax
push ebx
push str.WM_TOUCHPADON_OEMOSD_String
call fcn.004bb340
push 0
push 0
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], 0x80
push ecx
lea eax, [edi + 0x90]
push eax
push str.WM_TOUCHPADOFF_OEMOSD_String
lea ecx, [ebp - 0x8c]
call fcn.004bb340
push 0
push 0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x80
push eax
lea eax, [edi + 0x110]
push eax
push str.OEM_OSD_ProgramWindow
lea ecx, [ebp - 0x8c]
call fcn.004bb340
push 0
push 0
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x80
push eax
lea eax, [edi + 0x190]
push eax
push str.OEM_OSD_ProgramFilePath
lea ecx, [ebp - 0x8c]
call fcn.004bb340
push 0
push 0
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0x80
push eax
lea eax, [edi + 0x398]
push eax
push str.OEM_OSD_RegKeyPath
lea ecx, [ebp - 0x8c]
call fcn.004bb340
push 0
push 0
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x80
push eax
lea eax, [edi + 0x5a0]
push eax
push str.OEM_OSD_RegValueName
lea ecx, [ebp - 0x8c]
call fcn.004bb340
lea esi, [edi + 0x7a8]
push 0
push esi
push esi
push str.OEM_OSD_Program_NotRunInInit
lea ecx, [ebp - 0x8c]
call fcn.004baa70
cmp dword [esi], 0
je 0x47fab3
mov dword [edi + 0x1568], 0
push 0
lea esi, [edi + 0x7ac]
push esi
push esi
push str.SendMsgOffOnToOEMOSD_Feature
lea ecx, [ebp - 0x8c]
call fcn.004baa70
mov eax, dword [0x652fc0]
test al, 4
je 0x47fb2e
push ebx
push str.m_szWM_TOUCHPADON_OEMOSD___s_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
mov eax, dword [0x652fc0]
add esp, 0x10
test al, 4
je 0x47fb2e
lea eax, [edi + 0x90]
push eax
push str.m_szWM_TOUCHPADOFF_OEMOSD___s_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
mov eax, dword [0x652fc0]
add esp, 0x10
test al, 4
je 0x47fb2e
push dword [esi]
push str.m_dwSendMessageOffOnToOEMOSD___x_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0x10
mov esi, dword [sym.imp.USER32.dll_RegisterWindowMessageW]
push ebx
call esi
mov dword [edi + 0x7b0], eax
lea eax, [edi + 0x90]
push eax
call esi
mov dword [edi + 0x7b4], eax
mov eax, dword [0x652fc0]
test al, 4
je 0x47fb92
push dword [edi + 0x7b0]
push str.m_dwWM_TOUCHPADON_OEMOSD___x_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
mov eax, dword [0x652fc0]
add esp, 0x10
test al, 4
je 0x47fb92
push dword [edi + 0x7b4]
push str.m_dwWM_TOUCHPADOFF_OEMOSD___x_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0x10
push 0
lea ecx, [ebp - 0xa8]
call fcn.004b90e0
push 0
push 0
push 0
push str.SoftwareSynapticsSynTPInstall
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 5
call fcn.004bcca0
test eax, eax
je 0x47fc0a
push 0
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x10]
push eax
push str.SynHidMini
lea ecx, [ebp - 0xa4]
call fcn.004cbcf0
cmp dword [ebp - 0x10], 0
je 0x47fc0a
push 0
push 0
push 0
push str.SoftwareSynapticsSynHidMiniPortInstall
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0xa8]
call fcn.004bcca0
mov dword [edi + 0x155c], eax
push 0
push 0
push 0
push str.SoftwareSynapticsSynTPCpl
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0xa8]
call fcn.004bcca0
test eax, eax
je 0x47fc64
push 0
lea eax, [edi + 0x1490]
push eax
push eax
push str.UIStyle
lea ecx, [ebp - 0xa4]
call fcn.004cbcf0
test eax, eax
jne 0x47fc64
test byte [0x652fc0], 1
je 0x47fc64
push str.Unable_to_open_registry_n
push 1
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
push 0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
push eax
push eax
push str.ScrollMethod
lea ecx, [ebp - 0x54]
call fcn.004cbcf0
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x54]
push 0
mov dword [edi + 0x149c], eax
lea eax, [edi + 0x14a0]
push eax
push eax
push str.SynapticsScrollMethodSpeedFactor
call fcn.004cbcf0
push 0
lea eax, [edi + 0x8c8]
push eax
push eax
push str.AdjustPointingSpeedBaseOnDesktopRes
lea ecx, [ebp - 0x54]
call fcn.004cbcf0
push 0
call fcn.004c7a40
add esp, 4
cmp eax, 9
jl 0x47fd84
push str.DwmApi.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [edi + 0x14d0], eax
test eax, eax
jne 0x47fd03
mov dword [edi + 8], eax
mov dword [edi + 0xc], eax
test byte [0x652fc0], 2
je 0x47fd24
push str.Loading_DwmApi.dll_failed_n
push 2
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
jmp 0x47fd24
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.DwmIsCompositionEnabled
push eax
call esi
push str.DwmGetWindowAttribute
push dword [edi + 0x14d0]
mov dword [edi + 8], eax
call esi
mov dword [edi + 0xc], eax
lea esi, [edi + 0x914]
push esi
push dword [edi + 0x910]
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
push 0
push edi
push 0x47efb0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
lea ebx, [edi + 0x918]
push ebx
push dword [esi]
call dword [sym.imp.KERNEL32.dll_ProcessIdToSessionId]
test byte [0x652fc0], 2
je 0x47fd84
push dword [ebx]
push dword [esi]
push str.ProcessId_d__SessionId_d_n
push 2
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0x14
push 0
lea eax, [edi + 0x1540]
push eax
push eax
push str.SynTPEnhExePriorityLevel
lea ecx, [ebp - 0x54]
call fcn.004cbcf0
push 0
lea ecx, [ebp - 0xe4]
call fcn.004b90e0
push 0
push 0
push 0
push str.SoftwareSynapticsSynTPEnhShortcutConfig
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 6
call fcn.004bcca0
test eax, eax
je 0x47fdfc
mov eax, dword [edi + 0x1560]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push 0
push eax
lea eax, [ebp - 0x10]
push eax
push str.ShowForcePadDesktopShortcut
call fcn.004cbcf0
xor eax, eax
cmp dword [ebp - 0x10], eax
setne al
mov dword [edi + 0x1560], eax
push 0
push 0
push 0
push str.SoftwareSynapticsOEM
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0xe4]
call fcn.004bcca0
test eax, eax
je 0x47fe4c
mov eax, dword [edi + 0x1560]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x14]
push 0
push eax
lea eax, [ebp - 0x10]
push eax
push str.ShowForcePadDesktopShortcut
call fcn.004cbcf0
xor eax, eax
cmp dword [ebp - 0x10], eax
setne al
mov dword [edi + 0x1560], eax
push 2
mov ecx, edi
call fcn.00484c30
lea eax, [ebp - 0x8c]
mov ecx, edi
push eax
call fcn.0047e7e0
mov ecx, edi
call fcn.00480a10
mov eax, dword [edi]
mov ecx, edi
push 2
call dword [eax + 4]
mov dword [edi + 0x14b4], eax
test eax, eax
jne 0x47fe96
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_get_plugin_action__n
push 1
jmp 0x480513
mov eax, dword [edi + 0x7ec]
lea esi, [edi + 0x7ec]
mov ecx, esi
call dword [eax + 0xc]
test eax, eax
jne 0x47feb5
push str.Failed_to_load_API_dll__n
jmp 0x480511
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x28]
test eax, eax
je 0x48050c
test byte [0x652fc0], 4
je 0x47fee2
push eax
push str.call_m_cSynTPAPI.GetNumPlugIns___x_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0x10
push 0
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], 0
push eax
lea eax, [ebp - 0x10]
push eax
push str.DisplayRotationAngleFromSensorInfo
lea ecx, [ebp - 0x54]
call fcn.004cbcf0
mov eax, dword [ebp - 0x10]
mov ecx, edi
mov dword [edi + 0x898], eax
call fcn.0047dec0
mov ecx, edi
call fcn.004890e0
test byte [0x652fc0], 4
je 0x47ff34
push str.SynTPEnh::Init:_will_call_m_cSynTPAPI.UpdateTPList_FALSE__n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
mov eax, dword [esi]
mov ecx, esi
push 1
push 0
call dword [eax + 0x24]
test eax, eax
jne 0x47ff56
push str.Failed_to_update_the_touchpad_list._Most_likely_causeis_that_one_or_more_plugins_is_configured_improperly._n
push eax
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
test byte [0x652fc0], 4
je 0x47ff79
push dword [edi + 0x910]
push str.SynTPEnh::Init:_will_call_m_cSynTPAPI.RegisterPlugInT_SynTP___x__FALSE__n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0x10
mov eax, dword [esi]
mov ecx, esi
push 0
push dword [edi + 0x910]
push 0x513b48
call dword [eax + 0x10]
test eax, eax
je 0x480505
mov eax, dword [0x652fc0]
test al, 4
je 0x47ffd5
push dword [edi + 0x910]
push str.call_m_cSynTPAPI.RegisterPlugInT_SynTP___x__FALSE__OK_n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
mov eax, dword [0x652fc0]
add esp, 0x10
test al, 4
je 0x47ffd5
push str.SynTPEnh::Init:_will_call_m_cSynTPAPI.StartPlugIns___n
push 3
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x88]
test eax, eax
je 0x47fff5
test byte [0x652fc0], 4
je 0x480012
push str.m_cSynTPAPI.StartPlugIns___OK_n
push 3
jmp 0x480005
test byte [0x652fc0], 1
je 0x480012
push str.One_or_more_plugins_failed_to_start__oh_well__maybe_later._n
push 1
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
lea ecx, [edi + 0x15c8]
call fcn.00425940
test eax, eax
jne 0x48003a
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_init_action_list_or_touchpad_list_n
push 1
jmp 0x480513
mov ecx, edi
call fcn.004807a0
lea ecx, [edi + 0xb3c]
call fcn.0040ad40
test eax, eax
jne 0x480069
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_create_cursor_tracking_window__n
push 1
jmp 0x480513
mov eax, dword [edi]
mov ecx, edi
push 3
call dword [eax + 4]
mov dword [edi + 0x14b8], eax
test eax, eax
jne 0x480095
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_get_scroll_action__n
push 1
jmp 0x480513
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 4]
mov dword [edi + 0x14c4], eax
test eax, eax
jne 0x4800c1
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_get_frame_action__n
push 1
jmp 0x480513
mov eax, dword [edi]
mov ecx, edi
push 0xc
call dword [eax + 4]
mov dword [edi + 0x14d4], eax
test eax, eax
jne 0x4800ed
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_get_touch_action__n
push 1
jmp 0x480513
mov eax, dword [edi]
mov ecx, edi
push 0xd
call dword [eax + 4]
mov dword [edi + 0x14c8], eax
test eax, eax
jne 0x480119
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_get_one_finger_touchbar_action__n
push 1
jmp 0x480513
push 0
call fcn.004c7a40
add esp, 4
cmp eax, 8
jne 0x480180
push 0
push 0
push str.SoftwareSynapticsSynTPEnh
push SysReAllocString
lea ecx, [ebp - 0xc8]
call fcn.004b9150
push 0
lea eax, [ebp - 0x10]
mov byte [ebp - 4], 7
push eax
push eax
push str.XP64VideoOn
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x10], 1
call fcn.004cbcf0
xor eax, eax
mov byte [ebp - 4], 6
cmp dword [ebp - 0x10], eax
lea ecx, [ebp - 0xc8]
setne al
mov dword [edi + 0x154c], eax
call fcn.004b93f0
call fcn.004c66e0
mov ecx, dword [edi + 0x14c4]
push eax
call fcn.00412ba0
push dword [edi + 0x14b8]
mov ecx, dword [edi + 0x14b4]
call fcn.00447de0
test eax, eax
jne 0x4801b0
push str.Couldnt_init_plugin_action_n
jmp 0x480511
mov ecx, edi
call fcn.00427790
test eax, eax
je 0x4801df
mov ecx, edi
call fcn.00480650
test eax, eax
jne 0x4801df
test byte [0x652fc0], 1
je 0x480520
push str.Failed_to_initialize_IBM_feature._n
push 1
jmp 0x480513
lea eax, [ebp - 0xac]
push eax
push 0
push edi
push 0x487350
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, edi
call fcn.00482b20
push 1
mov ecx, edi
call fcn.00480e40
test eax, eax
jne 0x480229
test byte [0x652fc0], 1
je 0x480229
push str.Failed_to_load_user_config__n
push 1
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
cmp dword [edi + 0x7d8], 0
je 0x480255
push 1
push 0
lea ecx, [edi + 0x15c8]
call fcn.0041c880
test eax, eax
je 0x480255
test byte [edi + 0x8dc], 1
je 0x480255
mov ecx, edi
call fcn.00487110
mov ecx, 0x658670
call fcn.0047dcc0
test eax, eax
je 0x48028e
test byte [edi + 0x8e0], 1
je 0x48028e
mov ecx, 0x658670
call fcn.0047dcc0
mov ecx, eax
call fcn.0047db90
mov dword [edi + 0x7c8], eax
test eax, eax
je 0x48028e
mov ecx, edi
call fcn.00486e80
mov ecx, edi
call fcn.00485c40
test eax, eax
jne 0x4802b1
push 0x4837f0
push 0x64
push 0xfffe
push dword [0x6579b8]
call dword [sym.imp.USER32.dll_SetTimer]
push 0
push 0
push 0
push str.SoftwareSynapticsSynTPEnh
lea esi, [edi + 0x14fc]
lea ecx, [ebp - 0xa8]
mov dword [esi], 0
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.004bcca0
test eax, eax
je 0x480339
push 0
push esi
push esi
push str.MonitorScreenSaver
lea ecx, [ebp - 0xa4]
call fcn.004cbcf0
test eax, eax
je 0x480339
cmp dword [esi], 0
je 0x480339
push 0
push str.SynTPEnhWndClass
call dword [sym.imp.USER32.dll_FindWindowW]
lea ecx, [edi + 0x1500]
mov ebx, eax
call fcn.00479de0
lea ecx, [edi + 0x1500]
call fcn.00479e40
call fcn.004c9150
test eax, eax
je 0x480339
push 0
push ebx
push 0
push str.SynSSHookRun.exe
call fcn.004ca950
add esp, 0x10
push 0
push 0
push 0x5253f8
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x150]
call fcn.004b9150
mov eax, dword [edi + 0x14a4]
lea ecx, [ebp - 0x14c]
push 0
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push 0
push eax
push str.EnableLUA
mov byte [ebp - 4], 8
call fcn.004cbcf0
test eax, eax
je 0x480384
mov eax, dword [ebp - 0x20]
mov dword [edi + 0x14a4], eax
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0x101
push eax
lea eax, [ebp - 0x354]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
lea eax, [ebp - 0x354]
push eax
push str..pipe_s00781D6E_0417_44d2_8082_9257B2CA9E0A
lea eax, [ebp - 0x754]
push 0x200
push eax
call fcn.004d1718
push 0x50f8e4
push 0x523c6c
lea eax, [ebp - 0xc4]
push 0
push eax
call fcn.004c8bc0
add esp, 0x20
lea ecx, [ebp - 0xc4]
cmp dword [eax + 0x10], 0
setne bl
call fcn.004090f0
test bl, bl
je 0x480433
push 0x50f8e4
push 0x523c6c
lea eax, [ebp - 0xc4]
push 0
push eax
call fcn.004c8bc0
add esp, 0x10
cmp dword [eax + 0x14], 8
jb 0x48040d
mov eax, dword [eax]
push eax
lea eax, [ebp - 0x754]
push eax
push str._s_s
push 0x200
push eax
call fcn.004d1718
add esp, 0x14
lea ecx, [ebp - 0xc4]
call fcn.004090f0
lea eax, [ebp - 0x754]
push 0x3d
push eax
call fcn.00402960
add esp, 8
mov dword [edi + 0x1554], eax
test eax, eax
je 0x480459
lea ecx, [edi + 4]
push ecx
mov ecx, eax
call fcn.00402030
lea esi, [edi + 0x90c]
push 0x50daec
push esi
call fcn.0049c940
add esp, 8
test eax, eax
js 0x48047e
mov ecx, dword [esi]
test ecx, ecx
je 0x48047e
call fcn.0049ca40
jmp 0x48049b
test byte [0x652fc0], 1
je 0x48049b
push str.Failed_to_create_the_WMI_event_object__n
push 1
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
call fcn.00452760
cmp dword [eax + 4], 0
je 0x4804b2
call fcn.00452760
mov ecx, eax
call fcn.00479970
lea ecx, [edi + 0x15c8]
call fcn.0042ab50
push 0
call fcn.004c7a40
add esp, 4
cmp eax, 0xb
je 0x4804db
push 0
call fcn.004c7a40
add esp, 4
cmp eax, 0xc
jne 0x4804e6
lea ecx, [edi + 0x15c8]
call fcn.00430ac0
push 1
mov ecx, edi
call fcn.0047b2c0
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 6
mov esi, 1
call fcn.004b93f0
jmp 0x480522
push str.Failed_to_register_our_plugins__n
jmp 0x480511
push str.Failed_to_init_plugin_list__n
push 0
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
xor esi, esi
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 5
call fcn.004b93f0
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 4
call fcn.004b93f0
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 3
call fcn.004b93f0
pop ebx
jmp 0x48056e
test byte [0x652fc0], 1
je 0x48056c
push str.Failed_to_init_registry_key__n
push 1
push str.CSynTPEnh::Init
call fcn.004cb3a0
add esp, 0xc
xor esi, esi
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 1
mov dword [ebp - 0x8c], vtable.CMultiLevelRegistryKey.0
call fcn.00402cb0
lea ecx, [ebp - 0x11c]
mov byte [ebp - 4], 0
call fcn.004b93f0
lea ecx, [ebp - 0x100]
mov dword [ebp - 4], 0xffffffff
call fcn.004b93f0
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret