Function at 0x40df63
Capabilities:
Delete file
Get common file path
Get startup folder
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2f8
mov eax, dword [0x433eb0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [ebp - 0x2e8], eax
xor eax, eax
push 0x206
mov word [ebp - 0x28c], ax
xor esi, esi
lea eax, [ebp - 0x28a]
push esi
push eax
call fcn.004137b0
add esp, 0xc
lea eax, [ebp - 0x28c]
push eax
push esi
push esi
push 0x1c
push esi
call dword [sym.imp.SHELL32.dll_SHGetFolderPathW]
push str.UCBrowserUser_DataUserStats.ini
lea eax, [ebp - 0x28c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
xor eax, eax
mov word [ebp - 0x2e4], ax
lea edi, [ebp - 0x2e2]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [ebp - 0x2b8], ax
lea edi, [ebp - 0x2b6]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov dword [ebp - 0x2f0], esi
lea edi, [ebp - 0x2ec]
stosd dword es:[edi], eax
mov dword [ebp - 0x2f8], esi
lea edi, [ebp - 0x2f4]
stosd dword es:[edi], eax
lea eax, [ebp - 0x2e4]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
lea eax, [ebp - 0x2f0]
push eax
lea eax, [ebp - 0x2e4]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
lea eax, [ebp - 0x28c]
push eax
push esi
push str.Year
mov ebx, str.InstallTime
push ebx
call edi
mov word [ebp - 0x2b8], ax
lea eax, [ebp - 0x28c]
push eax
push esi
push str.Month
push ebx
call edi
mov word [ebp - 0x2b6], ax
lea eax, [ebp - 0x28c]
push eax
push esi
push str.DayOfWeek
push ebx
call edi
mov word [ebp - 0x2b4], ax
lea eax, [ebp - 0x28c]
push eax
push esi
push 0x42b600
push ebx
call edi
mov word [ebp - 0x2b2], ax
lea eax, [ebp - 0x28c]
push eax
push esi
push str.Hour
push ebx
call edi
mov word [ebp - 0x2b0], ax
lea eax, [ebp - 0x28c]
push eax
push esi
push str.Minute
push ebx
call edi
mov word [ebp - 0x2ae], ax
lea eax, [ebp - 0x28c]
push eax
push esi
push str.Second
push ebx
call edi
mov ecx, dword [ebp - 0x2e8]
mov ebx, 0x430230
push ebx
mov word [ebp - 0x2ac], ax
call fcn.00402a10
lea eax, [ebp - 0x2f8]
push eax
lea eax, [ebp - 0x2b8]
push eax
call dword [sym.imp.KERNEL32.dll_SystemTimeToFileTime]
push 7
pop edi
test eax, eax
je 0x40e1ea
xor eax, eax
push 0x3e
mov word [ebp - 0x84], ax
lea eax, [ebp - 0x82]
push esi
push eax
call fcn.004137b0
mov ecx, dword [ebp - 0x2ec]
sub ecx, dword [ebp - 0x2f4]
add esp, 0xc
push 0xa
push 0x20
lea eax, [ebp - 0x84]
push eax
xor eax, eax
xor ebx, ebx
sub eax, dword [ebp - 0x2f8]
push esi
sbb ecx, ebx
add eax, dword [ebp - 0x2f0]
push 0x23c34600
adc ecx, ebx
push ecx
push eax
call fcn.00415db0
push edx
push eax
call fcn.00413a32
xor eax, eax
mov word [ebp - 0x2a8], ax
add esp, 0x14
lea eax, [ebp - 0x84]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.timespan
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
mov ebx, 0x430230
jmp 0x40e1fa
mov ecx, dword [ebp - 0x2e8]
push str.timespan
call fcn.00406fb0
xor eax, eax
push 0x3e
mov word [ebp - 0x44], ax
lea eax, [ebp - 0x42]
push esi
push eax
call fcn.004137b0
add esp, 0xc
lea eax, [ebp - 0x28c]
push eax
push 0x20
lea eax, [ebp - 0x44]
push eax
push ebx
push str.Foreground
push str.TimeSpan
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x40e2d9
lea eax, [ebp - 0x44]
push eax
call fcn.00415d60
pop ecx
push esi
push 0x3c
push edx
push eax
call fcn.00415db0
push 0xa
push 0x20
lea ecx, [ebp - 0x44]
push ecx
push edx
push eax
call fcn.00413a32
xor eax, eax
mov word [ebp - 0x2a8], ax
add esp, 0x14
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.foreground
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
jmp 0x40e2e9
mov ecx, dword [ebp - 0x2e8]
push str.foreground
call fcn.00406fb0
lea eax, [ebp - 0x28c]
push eax
push 0x20
lea eax, [ebp - 0x44]
push eax
push ebx
push str.Background
push str.TimeSpan
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x40e3b3
lea eax, [ebp - 0x44]
push eax
call fcn.00415d60
pop ecx
push esi
push 0x3c
push edx
push eax
call fcn.00415db0
push 0xa
push 0x20
lea ecx, [ebp - 0x44]
push ecx
push edx
push eax
call fcn.00413a32
xor eax, eax
mov word [ebp - 0x2a8], ax
add esp, 0x14
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.background
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
jmp 0x40e3c3
mov ecx, dword [ebp - 0x2e8]
push str.background
call fcn.00406fb0
lea eax, [ebp - 0x28c]
push eax
push 0x20
lea eax, [ebp - 0x44]
push eax
push ebx
push str.Initiative
push str.Startup
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x40e463
xor eax, eax
mov word [ebp - 0x2a8], ax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.initiative
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
jmp 0x40e473
mov ecx, dword [ebp - 0x2e8]
push str.initiative
call fcn.00406fb0
lea eax, [ebp - 0x28c]
push eax
push 0x20
lea eax, [ebp - 0x44]
push eax
push ebx
push str.Passive
push str.Startup
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x40e513
xor eax, eax
mov word [ebp - 0x2a8], ax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.passive
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
jmp 0x40e523
mov ecx, dword [ebp - 0x2e8]
push str.passive
call fcn.00406fb0
lea eax, [ebp - 0x28c]
push eax
push 0x20
lea eax, [ebp - 0x44]
push eax
push ebx
push str.Mode
push str.Startup
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x40e5c3
xor eax, eax
mov word [ebp - 0x2a8], ax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.laststart
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
jmp 0x40e5d3
mov ecx, dword [ebp - 0x2e8]
push str.laststart
call fcn.00406fb0
lea eax, [ebp - 0x28c]
push eax
push 0x20
lea eax, [ebp - 0x44]
push eax
push ebx
push str.Amount
push str.Bookmark
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
je 0x40e673
xor eax, eax
mov word [ebp - 0x2a8], ax
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x2a8]
mov dword [ebp - 0x294], edi
mov dword [ebp - 0x298], esi
call fcn.00402a10
lea eax, [ebp - 0x2a8]
push eax
lea eax, [ebp - 0x2d4]
push str.bookmarkamount
push eax
call fcn.00407630
add esp, 0xc
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00405c10
push esi
push 1
lea ecx, [ebp - 0x2d4]
call fcn.00402b00
mov ecx, dword [ebp - 0x2e8]
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x2a8]
push eax
call fcn.00405ec0
push esi
push 1
lea ecx, [ebp - 0x2a8]
call fcn.00402b00
jmp 0x40e683
mov ecx, dword [ebp - 0x2e8]
push str.bookmarkamount
call fcn.00406fb0
lea eax, [ebp - 0x28c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
mov al, 1
pop ebx
call fcn.004134fa
leave
ret 4