Function at 0x4a8860
Capabilities:
Check if file exists
Get common file path

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4ccecb
push eax
mov eax, 0x16fc
mov dword fs:[0], esp
call fcn.00495c50
push ebx
push ebp
mov ebp, dword [sym.imp.SHLWAPI.dll_StrCmpIW]
push esi
mov esi, dword [esp + 0x1718]
push edi
push str.LoginIntenetFav
mov ebx, ecx
lea edi, [esi + 0x20c]
push edi
call ebp
test eax, eax
jne 0x4a88b9
mov eax, dword [esi + 0x428]
mov ecx, dword [esi + 0x424]
push eax
push ecx
mov ecx, ebx
call fcn.004a2450
push str.OptionLoginFav
push edi
call ebp
test eax, eax
jne 0x4a88e4
mov edx, dword [esi + 0x428]
mov eax, dword [esi + 0x424]
push edx
push eax
mov ecx, ebx
call fcn.004a2650
mov eax, 1
jmp 0x4a9095
push str.ExitIntenetFav
push edi
call ebp
test eax, eax
jne 0x4a8901
mov ecx, ebx
call fcn.004a2920
mov eax, 1
jmp 0x4a9095
push str.SetAutoSyncFav
push edi
call ebp
test eax, eax
jne 0x4a892f
mov ecx, dword [esi + 0x424]
push ecx
call dword [sym.imp.MSVCRT.dll__wtoi]
add esp, 4
mov ecx, ebx
push eax
call fcn.004a7dc0
mov eax, 1
jmp 0x4a9095
push str.MergeIntenetFav
push edi
call ebp
test eax, eax
jne 0x4a894c
mov ecx, ebx
call fcn.004a1c90
mov eax, 1
jmp 0x4a9095
push str.getNetFavUsername
push edi
call ebp
test eax, eax
jne 0x4a89b8
add ebx, 0x28
push ebx
call dword [sym.imp.MSVCRT.dll_wcslen]
lea ebp, [eax + eax + 2]
mov dword [esp + 0x14], eax
push ebp
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov ecx, ebp
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esi + 0x414], edi
add esp, 8
rep stosd dword es:[edi], eax
mov ecx, edx
push ebx
and ecx, 3
push 0x4de3ac
rep stosb byte es:[edi], al
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + 0x414]
push eax
push ecx
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
mov dword [esi + 0x420], ebp
mov eax, 1
jmp 0x4a9095
push str.getAutoState
push edi
call ebp
test eax, eax
jne 0x4a89ee
mov ecx, ebx
call fcn.004a7ed0
push 0x28
mov ebx, eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov edi, eax
mov ecx, 0xa
xor eax, eax
mov dword [esi + 0x414], edi
push ebx
rep stosd dword es:[edi], eax
jmp 0x4a906b
push str.getIsLogin
push edi
call ebp
test eax, eax
jne 0x4a8a12
mov ecx, ebx
call fcn.004a7eb0
push 0x28
mov ebx, eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
jmp 0x4a8ce8
push str.getIsFirstTheworld
push edi
call ebp
test eax, eax
jne 0x4a8a6d
xor ebx, ebx
mov ecx, 0x81
lea edi, [esp + 0x1a]
mov word [esp + 0x18], bx
rep stosd dword es:[edi], eax
push str.bookmarks.dat
lea ecx, [esp + 0x1c]
push 0x104
push ecx
stosw word es:[edi], ax
call fcn.00496500
add esp, 0xc
lea edx, [esp + 0x18]
push edx
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmp eax, 1
je 0x4a8a5e
mov ebx, 1
push 0x28
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
jmp 0x4a8ce8
push str.GetMergeState
push edi
call ebp
test eax, eax
jne 0x4a8ab1
mov ecx, ebx
call fcn.004a2b20
push 0x28
mov ebx, eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov edi, eax
mov ecx, 0xa
xor eax, eax
mov dword [esi + 0x414], edi
push ebx
rep stosd dword es:[edi], eax
mov ecx, dword [esi + 0x414]
push 0x4de804
push 0x13
push ecx
jmp 0x4a9079
push str.GetCurFavSource
push edi
call ebp
test eax, eax
jne 0x4a8b17
lea edx, [esp + 0x10]
mov dword [esp + 0x10], eax
push edx
call fcn.004a9d50
add esp, 4
mov ecx, ebx
call fcn.004a7f90
mov ebx, eax
cmp ebx, 2
jne 0x4a8af7
cmp dword [esp + 0x10], 3
jne 0x4a8b08
push 0x28
mov ebx, 3
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
jmp 0x4a8ce8
cmp ebx, 1
jne 0x4a8b08
cmp dword [esp + 0x10], 2
jne 0x4a8b08
mov ebx, 4
push 0x28
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
jmp 0x4a8ce8
push str.ReloadFav
push edi
call ebp
test eax, eax
jne 0x4a8b5b
push eax
call dword [sym.imp.USER32.dll_InSendMessageEx]
and eax, 9
cmp al, 1
jne 0x4a8b39
push 0
call dword [sym.imp.USER32.dll_ReplyMessage]
mov ecx, dword [esi + 0x424]
push ecx
call dword [sym.imp.MSVCRT.dll__wtoi]
add esp, 4
mov ecx, ebx
push eax
call fcn.004a8040
mov eax, 1
jmp 0x4a9095
push str.UpFavToServer
push edi
call ebp
test eax, eax
jne 0x4a8b80
mov edx, dword [esi + 0x41c]
mov ecx, ebx
push edx
push eax
call fcn.004a85f0
mov eax, 1
jmp 0x4a9095
push str.DownFavToClient
push edi
call ebp
test eax, eax
jne 0x4a8ba6
mov eax, dword [esi + 0x41c]
mov ecx, ebx
push eax
push 1
call fcn.004a85f0
mov eax, 1
jmp 0x4a9095
push str.ImportIeFavToSelf
push edi
call ebp
test eax, eax
jne 0x4a8bca
mov ecx, dword [esi + 0x41c]
push ecx
mov ecx, ebx
call fcn.004a8750
mov eax, 1
jmp 0x4a9095
push str.ExportFav
push edi
call ebp
test eax, eax
jne 0x4a8bee
mov edx, dword [esi + 0x41c]
mov ecx, ebx
push edx
call fcn.004a87f0
mov eax, 1
jmp 0x4a9095
push str.IsFavImpact
push edi
call ebp
test eax, eax
jne 0x4a8c12
mov ecx, ebx
call fcn.0041b6a0
push 0x28
mov ebx, eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
jmp 0x4a8ce8
push str.SetMergeMode
push edi
call ebp
test eax, eax
jne 0x4a8c40
mov ecx, dword [esi + 0x424]
push ecx
call dword [sym.imp.MSVCRT.dll__wtoi]
add esp, 4
mov ecx, ebx
push eax
call fcn.004a7fa0
mov eax, 1
jmp 0x4a9095
push str.GetAutoLogin
push edi
call ebp
test eax, eax
jne 0x4a8c91
lea edx, [esp + 0x10]
mov dword [esp + 0x10], 1
push edx
call fcn.004a9c60
push 0x28
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 8
mov edi, eax
mov ecx, 0xa
xor eax, eax
mov dword [esi + 0x414], edi
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x414]
push eax
push 0x4de804
push 0x13
push ecx
jmp 0x4a9079
push str.SetAutoLogin
push edi
call ebp
test eax, eax
jne 0x4a8cbd
mov edx, dword [esi + 0x424]
push edx
call dword [sym.imp.MSVCRT.dll__wtoi]
push eax
call fcn.004a9c00
add esp, 8
mov eax, 1
jmp 0x4a9095
push str.GetLastSyncTime
push edi
call ebp
test eax, eax
jne 0x4a8d0d
call fcn.004aa7d0
mov ecx, eax
call fcn.004b0e50
push eax
call dword [sym.imp.MSVCRT.dll__wtoi]
push 0x28
mov ebx, eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 8
mov edi, eax
mov ecx, 0xa
xor eax, eax
mov dword [esi + 0x414], edi
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x414]
push ebx
push 0x4de804
push 0x13
push eax
jmp 0x4a9079
push str.SetFavouritePath
push edi
call ebp
test eax, eax
jne 0x4a8d43
mov ecx, dword [esi + 0x428]
push ecx
call fcn.004b7a40
add esp, 4
test eax, eax
je 0x4a908c
push 3
mov ecx, ebx
call fcn.004a8040
mov eax, 1
jmp 0x4a9095
push str.GetFavouritePath
push edi
call ebp
test eax, eax
jne 0x4a8e0a
mov ecx, 0x81
lea edi, [esp + 0x1a]
mov word [esp + 0x18], ax
lea edx, [esp + 0x18]
rep stosd dword es:[edi], eax
push 0x103
push edx
stosw word es:[edi], ax
call fcn.004a9ca0
mov edi, dword [sym.imp.MSVCRT.dll_wcslen]
lea eax, [esp + 0x20]
push eax
call edi
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x4a8db8
push eax
lea ecx, [esp + 0x1c]
push 6
push ecx
push eax
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
test eax, eax
je 0x4a8db8
lea edx, [esp + 0x18]
push 0x104
push edx
call fcn.004a9c80
lea eax, [esp + 0x20]
push eax
call edi
add esp, 0xc
mov ebp, eax
lea ebx, [ebp + ebp + 2]
push ebx
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov ecx, ebx
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esi + 0x414], edi
add esp, 4
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov ecx, dword [esi + 0x414]
lea eax, [esp + 0x18]
push eax
push 0x4de3ac
push ebp
push ecx
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
mov dword [esi + 0x420], ebx
mov eax, 1
jmp 0x4a9095
push str.SelectFavBarPath
push edi
call ebp
test eax, eax
jne 0x4a8e67
lea ecx, [esp + 0x220]
call fcn.0049faf0
mov edx, dword [esi + 0x41c]
push 0
push 0
push 2
push edx
lea ecx, [esp + 0x230]
mov dword [esp + 0x1724], 0
call fcn.0049fcd0
lea ecx, [esp + 0x220]
mov dword [esp + 0x1714], 0xffffffff
call fcn.0049fba0
mov eax, 1
jmp 0x4a9095
push str.SetFavBarPath
push edi
call ebp
test eax, eax
je 0x4a908c
push str.GetFavBarPath
push edi
call ebp
test eax, eax
jne 0x4a8f07
mov ecx, 0x81
lea edi, [esp + 0x1a]
mov word [esp + 0x18], ax
push 0x103
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x1c]
push eax
call fcn.004a9cc0
lea ecx, [esp + 0x20]
push ecx
call dword [sym.imp.MSVCRT.dll_wcslen]
mov ebp, eax
lea ebx, [ebp + ebp + 2]
push ebx
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
mov ecx, ebx
mov edi, eax
mov edx, ecx
xor eax, eax
shr ecx, 2
mov dword [esi + 0x414], edi
add esp, 0x10
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
mov ecx, dword [esi + 0x414]
lea eax, [esp + 0x18]
push eax
push 0x4de3ac
push ebp
push ecx
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
mov dword [esi + 0x420], ebx
mov eax, 1
jmp 0x4a9095
push str.GetAddFavButtonVisble
push edi
call ebp
test eax, eax
jne 0x4a8f67
lea edx, [esp + 0x10]
mov ecx, 0x5cbf90
push edx
push str.ShowAddButton
push 0x4ee538
mov dword [esp + 0x1c], 1
call fcn.00498170
push 0x28
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov edi, eax
mov ecx, 0xa
xor eax, eax
mov dword [esi + 0x414], edi
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esi + 0x414]
push eax
push 0x4de804
push 0x13
push ecx
jmp 0x4a9079
push str.SetAddFavButtonVisble
push edi
call ebp
test eax, eax
jne 0x4a8fdc
mov edx, dword [esi + 0x424]
push edx
call dword [sym.imp.MSVCRT.dll__wtoi]
add esp, 4
mov esi, eax
lea eax, [esp + 0x10]
mov ecx, 0x5cbf90
push eax
push str.ShowAddButton
push 0x4ee538
mov dword [esp + 0x1c], 1
call fcn.00498170
cmp esi, dword [esp + 0x10]
je 0x4a908c
push esi
push str.ShowAddButton
push 0x4ee538
mov ecx, 0x5cbf90
call fcn.00498190
push esi
call fcn.004aa7d0
mov ecx, eax
call fcn.004b9a70
mov eax, 1
jmp 0x4a9095
push str.SetNetButtonVisble
push edi
call ebp
test eax, eax
jne 0x4a9031
mov ecx, dword [esi + 0x424]
push ecx
call dword [sym.imp.MSVCRT.dll__wtoi]
lea edx, [esp + 0x14]
mov esi, eax
push edx
mov dword [esp + 0x18], 0
call fcn.004a9e10
mov eax, dword [esp + 0x18]
add esp, 8
cmp esi, eax
je 0x4a908c
push esi
call fcn.004a9df0
add esp, 4
push esi
call fcn.004aa7d0
mov ecx, eax
call fcn.004b9a60
mov eax, 1
jmp 0x4a9095
push str.GetNetButtonVisble
push edi
call ebp
test eax, eax
jne 0x4a9093
mov dword [esp + 0x14], eax
lea eax, [esp + 0x14]
push eax
call fcn.004a9e10
push 0x28
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
add esp, 8
mov edi, eax
mov ecx, 0xa
xor eax, eax
mov dword [esi + 0x414], edi
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x14]
push ecx
mov edx, dword [esi + 0x414]
push 0x4de804
push 0x13
push edx
call dword [sym.imp.MSVCRT.dll__snwprintf]
add esp, 0x10
mov dword [esi + 0x420], 0x28
mov eax, 1
jmp 0x4a9095
xor eax, eax
mov ecx, dword [esp + 0x170c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1708
ret 4