Function at 0x45c210
Capabilities:
Check if file exists
Get geographical location

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x340
mov eax, dword [0x58f860]
xor eax, ebp
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x340], ecx
lea ecx, [ebp - 0x1c]
call fcn.0042e050
push 0
push ecx
mov ecx, esp
push str.SoftwareRuanMeiMagicTray
call fcn.0041c8a0
push SysReAllocString
lea ecx, [ebp - 0x1c]
call fcn.0042e1a0
push ecx
mov ecx, esp
push 0x554518
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.ConfigPath
call fcn.0041c8a0
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 0x1c]
call fcn.0042e400
push str.TrayClock.xml
lea ecx, [ebp - 4]
push ecx
lea edx, [ebp - 0xa8]
push edx
call fcn.0041ca60
add esp, 0xc
mov ecx, eax
call fcn.0041cb20
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
mov dword [ebp - 0xa4], eax
lea ecx, [ebp - 0xa8]
call fcn.0040f740
cmp dword [ebp - 0xa4], 0
je 0x45cf31
lea ecx, [ebp - 0x90]
call fcn.0042e050
push 1
push ecx
mov ecx, esp
push 0x55a860
call fcn.0041c8a0
push SysReAllocString
lea ecx, [ebp - 0x90]
call fcn.0042e1a0
lea ecx, [ebp - 0x78]
call fcn.0040f2c0
push ecx
mov ecx, esp
push str.TrayClock
call fcn.0041c8a0
push ecx
mov eax, esp
push str.TrayClock.xml
lea ecx, [ebp - 4]
push ecx
push eax
call fcn.0041ca60
add esp, 0xc
lea ecx, [ebp - 0x78]
call fcn.00441fd0
push ecx
mov ecx, esp
push str.FormatString
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
lea edx, [ebp - 0x94]
push edx
lea ecx, [ebp - 0x78]
call fcn.004469f0
push ecx
mov ecx, esp
lea eax, [ebp - 0x94]
push eax
call fcn.0041c880
push ecx
mov ecx, esp
push str.DateTimeLine
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
lea ecx, [ebp - 0x90]
call fcn.00452f50
push ecx
mov ecx, esp
push str.FormatString2
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0xdc]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.DateTimeLine2
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
lea eax, [ebp - 0x94]
push eax
call fcn.0041c880
push ecx
mov ecx, esp
push 0x55c540
call fcn.0041c8a0
lea ecx, [ebp - 0x90]
call fcn.00452f50
push ecx
mov ecx, esp
push str.FormatIndex
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
lea ecx, [ebp - 0xfc]
push ecx
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0xfc]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.DateTimeLineIndex
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.FormatIndex2
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x114]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.DateTimeLineIndex2
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c8b4
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Show
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.ShowSwitch
call fcn.0041c8a0
lea eax, [ebp - 0x12c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x12c]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.Switch
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchTime
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.TimeCount
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchTime
call fcn.0041c8a0
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x144]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.TimeCount
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchTime
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.TimeCount_Weather
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchTime
call fcn.0041c8a0
lea eax, [ebp - 0x15c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x15c]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.TimeCount_Weather
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchTime
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push 0x558be0
lea eax, [ebp - 0x94]
push eax
call fcn.0041cac0
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x45c6bd
push ecx
mov ecx, esp
push 0x558be8
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Value
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.WeekFirstDay
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
jmp 0x45c6ee
push ecx
mov ecx, esp
push 0x558be0
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Value
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.WeekFirstDay
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Show
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.FlowShowTime
call fcn.0041c8a0
lea edx, [ebp - 0x18c]
push edx
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x18c]
call fcn.0040f740
push ecx
mov ecx, esp
lea eax, [ebp - 0x94]
push eax
call fcn.0041c880
push ecx
mov ecx, esp
push str.Show
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.FlowShowTime
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Time
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.FlowShowTime
call fcn.0041c8a0
lea ecx, [ebp - 0x1a4]
push ecx
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x1a4]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.Time
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.FlowShowTime
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Order
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchOrder
call fcn.0041c8a0
lea eax, [ebp - 0x1bc]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x1bc]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.Order
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SwitchOrder
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push 0x55cc58
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55c96c
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Sound_TimeInterval
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push 0x558bb8
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Upper
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Sound_TimeInterval
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.CityCode
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
lea eax, [ebp - 0x1ec]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x1ec]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.CityCode
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Province
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
lea eax, [ebp - 0x204]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x204]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.Province
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.City
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x21c]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.City
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Region
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
lea eax, [ebp - 0x234]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x234]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.Region
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.UserSetLocation
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Space
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
lea eax, [ebp - 0x24c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x24c]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.Space
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.TryTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
lea eax, [ebp - 0x264]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x264]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.TryCount
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.Play
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
lea eax, [ebp - 0x27c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x27c]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.PlayWeatherSound
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.WhenRefresh
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x294]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.WhenRefresh
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.PlaySpace
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
lea eax, [ebp - 0x2ac]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x2ac]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.PlayTimeSpace
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.RefreshWeather
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.NoPlaySoundWhenFullScreen
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.OpenPlaySound
call fcn.0041c8a0
lea eax, [ebp - 0x2c4]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x2c4]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.PlayWhenFull
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Timekeeping
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.RemindTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.WeatherRemind
call fcn.0041c8a0
lea eax, [ebp - 0x2dc]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x2dc]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.RemindTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.WeatherRemind
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.SunriseTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SunSetTimeTomorrow
call fcn.0041c8a0
lea eax, [ebp - 0x2f4]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x2f4]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.SunriseTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SunriseSunset
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.SunsetTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SunSetTimeTomorrow
call fcn.0041c8a0
lea eax, [ebp - 0x30c]
push eax
lea ecx, [ebp - 0x78]
call fcn.004469f0
push eax
lea ecx, [ebp - 0x94]
call fcn.0041c8e0
lea ecx, [ebp - 0x30c]
call fcn.0040f740
push ecx
mov ecx, esp
lea edx, [ebp - 0x94]
push edx
call fcn.0041c880
push ecx
mov ecx, esp
push str.SunsetTime
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SunriseSunset
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push 0x5556b0
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Name
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.SoundPack
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push 0x555698
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Name
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.WeatherIconPack
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
push ecx
mov ecx, esp
push str.true
call fcn.0041c8a0
push ecx
mov ecx, esp
push str.Changed
call fcn.0041c8a0
push ecx
mov ecx, esp
push 0x55bed4
call fcn.0041c8a0
mov ecx, 0x591448
call fcn.0045bf10
lea ecx, [ebp - 0x94]
call fcn.0040f740
lea ecx, [ebp - 0x78]
call fcn.0040fc90
lea ecx, [ebp - 0x90]
call fcn.0042e110
lea ecx, [ebp - 4]
call fcn.0040f740
lea ecx, [ebp - 0x1c]
call fcn.0042e110
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.00512610
mov esp, ebp
pop ebp
ret