Function at 0x41f0b0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56c5ce
mov eax, dword fs:[0]
push eax
sub esp, 0x64c
mov eax, dword [0x5d60f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x658], ecx
mov eax, dword [0x5dbac4]
test eax, eax
jne 0x41f121
push 0x240
call fcn.00425c09
add esp, 4
mov dword [ebp - 0x654], eax
mov dword [ebp - 4], 0
test eax, eax
je 0x41f113
mov ecx, eax
call fcn.004200c0
jmp 0x41f115
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x5dbac4], eax
mov ecx, eax
call fcn.00423410
mov edi, eax
lea eax, [ebp - 0x64c]
push eax
mov dword [ebp - 0x650], edi
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push edi
push 0xffffffffffffffff
push str.LastUpdDay
push str.Setting
call esi
push edi
push 0xffffffffffffffff
push str.SoftUpdHour
push str.Setting
mov dword [ebp - 0x654], eax
call esi
push dword [ebp - 0x650]
mov edi, eax
push 0xffffffffffffffff
push str.SoftUpdMinute
push str.Setting
call esi
mov esi, eax
cmp edi, 0xffffffff
je 0x41f18d
cmp esi, 0xffffffff
jne 0x41f23d
push 0x11
push 8
call fcn.004253c0
mov edi, eax
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x22c], ax
lea eax, [ebp - 0x22a]
push eax
call fcn.0054cbd0
push edi
lea eax, [ebp - 0x22c]
push 0x57ce00
push eax
call fcn.0054d433
add esp, 0x20
lea eax, [ebp - 0x22c]
push dword [ebp - 0x650]
push eax
push str.SoftUpdHour
push str.Setting
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
push 0x3c
push 0
call fcn.004253c0
mov esi, eax
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x434], ax
lea eax, [ebp - 0x432]
push eax
call fcn.0054cbd0
push esi
lea eax, [ebp - 0x434]
push 0x57ce00
push eax
call fcn.0054d433
add esp, 0x20
lea eax, [ebp - 0x434]
push dword [ebp - 0x650]
push eax
push str.SoftUpdMinute
push str.Setting
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
movzx eax, word [ebp - 0x646]
mov ecx, dword [ebp - 0x654]
cmp ecx, eax
je 0x41f479
dec eax
cmp eax, ecx
jne 0x41f279
movzx eax, word [ebp - 0x644]
cmp eax, edi
jne 0x41f273
movzx eax, word [ebp - 0x642]
cmp eax, esi
jl 0x41f479
jmp 0x41f279
jle 0x41f479
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x63c], ax
lea eax, [ebp - 0x63a]
push eax
call fcn.0054cbd0
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x434], ax
lea eax, [ebp - 0x432]
push eax
call fcn.0054cbd0
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x22c], ax
lea eax, [ebp - 0x22a]
push eax
call fcn.0054cbd0
add esp, 0x24
call fcn.0041f930
mov ecx, eax
call fcn.004233f0
lea edx, [ebp - 0x22c]
sub edx, eax
movzx ecx, word [eax]
lea eax, [eax + 2]
mov word [edx + eax - 2], cx
test cx, cx
jne 0x41f2e1
lea edi, [ebp - 0x22c]
add edi, 0xfffffffe
lea ebx, [ebx]
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x41f300
mov ecx, 6
mov esi, str.WnPicUpd.exe
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea edi, [ebp - 0x63c]
add edi, 0xfffffffe
mov ax, word [edi + 2]
lea edi, [edi + 2]
test ax, ax
jne 0x41f323
mov eax, dword [0x57cea8]
lea edx, [ebp - 0x22c]
mov dword [edi], eax
mov esi, edx
mov edi, edi
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x41f340
lea edi, [ebp - 0x63c]
sub edx, esi
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x41f356
mov ecx, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [ebp - 0x63c]
add ecx, 0xfffffffe
lea esp, [esp]
mov ax, word [ecx + 2]
lea ecx, [ecx + 2]
test ax, ax
jne 0x41f380
mov eax, dword [0x57cfa8]
mov dword [ecx], eax
mov ax, word [0x57cfac]
mov word [ecx + 4], ax
xor ecx, ecx
nop
movzx eax, word [ecx + str.RunAuto]
lea ecx, [ecx + 2]
mov word [ebp + ecx - 0x436], ax
test ax, ax
jne 0x41f3a0
lea edx, [ebp - 0x434]
mov esi, edx
nop
mov ax, word [edx]
add edx, 2
test ax, ax
jne 0x41f3c0
lea edi, [ebp - 0x63c]
sub edx, esi
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x41f3d6
mov ecx, edx
xor eax, eax
shr ecx, 2
xorps xmm0, xmm0
rep movsd dword es:[edi], dword [esi]
mov word [ebp - 0x24], ax
mov ecx, edx
mov word [ebp - 0x12], ax
and ecx, 3
movzx eax, word [ebp - 0x646]
push eax
lea eax, [ebp - 0x24]
push 0x57ce00
rep movsb byte es:[edi], byte [esi]
push eax
movdqu xmmword [ebp - 0x22], xmm0
call fcn.0054d433
mov esi, dword [ebp - 0x650]
add esp, 0xc
mov edi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
push esi
push 0x57cfc0
push str.SoftUpdHour
push str.Setting
call edi
push esi
push 0x57cfc0
push str.SoftUpdMinute
push str.Setting
call edi
push esi
lea eax, [ebp - 0x24]
push eax
push str.LastUpdDay
push str.Setting
call edi
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, dword [ebp - 0x658]
lea eax, [ebp - 0x63c]
push eax
call fcn.0041f740
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0054c733
mov esp, ebp
pop ebp
ret