Function at 0x457680
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x492789
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x68
mov dword [ebp - 0x6c], ecx
mov byte [ebp - 0x10], 0
xor eax, eax
mov byte [ebp - 0xf], al
push 0x4a8e98
push 2
lea ecx, [ebp - 0x10]
push ecx
push 0x4a8eb8
push str.USE_LocalContents
push 0x4a8ed0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x10]
push edx
push 0x4a8ed8
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax + 0x70]
call fcn.0040d750
push eax
call fcn.0040b4f0
add esp, 0xc
movsx ecx, byte [ebp - 0x10]
cmp ecx, 0x59
je 0x4576fa
movsx edx, byte [ebp - 0x10]
cmp edx, 0x79
jne 0x457b64
mov eax, dword [ebp - 0x6c]
mov dword [eax + 0xec], 0
lea ecx, [ebp - 0x30]
push ecx
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx edx, word [ebp - 0x2c]
mov dword [ebp - 0x38], edx
cmp dword [ebp - 0x38], 0
jne 0x457725
mov dword [ebp - 0x38], 7
mov eax, dword [ebp - 0x38]
sub eax, 1
mov dword [ebp - 0x38], eax
lea ecx, [ebp - 0x48]
call fcn.00417eb0
mov dword [ebp - 4], 0
mov byte [ebp - 0x34], 0
xor ecx, ecx
mov byte [ebp - 0x33], cl
mov byte [ebp - 0x50], 0
xor edx, edx
mov byte [ebp - 0x4f], dl
mov byte [ebp - 0x20], 0
xor eax, eax
mov dword [ebp - 0x1f], eax
mov word [ebp - 0x1b], ax
mov byte [ebp - 0x19], al
mov byte [ebp - 0x3c], 0
xor ecx, ecx
mov byte [ebp - 0x3b], cl
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x14], 0
lea ecx, [ebp - 0x44]
call fcn.00417eb0
mov byte [ebp - 4], 1
movzx edx, word [ebp - 0x26]
push edx
movzx eax, word [ebp - 0x28]
push eax
push str._02d_02d
lea ecx, [ebp - 0x44]
push ecx
call fcn.00404380
add esp, 0x10
lea ecx, [ebp - 0x44]
call fcn.0045e910
push eax
call fcn.004725e8
add esp, 4
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.004095a0
push 0x4a8f04
push 0
push str.LocalContentsCount
push str.Common
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x54], 1
jmp 0x4577eb
mov edx, dword [ebp - 0x54]
add edx, 1
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x18]
jg 0x457a01
mov ecx, dword [ebp - 0x54]
push ecx
push 0x4a8f40
lea edx, [ebp - 0x48]
push edx
call fcn.00404380
add esp, 0xc
push 0x4a8f54
push 2
lea eax, [ebp - 0x34]
push eax
push 0x4a8f74
push str.PLAY_YN
lea ecx, [ebp - 0x48]
call fcn.0045e910
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx ecx, byte [ebp - 0x34]
cmp ecx, 0x4e
je 0x457842
movsx edx, byte [ebp - 0x34]
cmp edx, 0x6e
jne 0x457868
lea eax, [ebp - 0x34]
push eax
mov ecx, dword [ebp - 0x48]
push ecx
push str.__s_:PLAY_YN_
mov edx, dword [ebp - 0x6c]
mov ecx, dword [edx + 0x70]
call fcn.0040d750
push eax
call fcn.0040b4f0
add esp, 0x10
jmp 0x4577e2
push 0x4a8fb0
push 2
lea eax, [ebp - 0x50]
push eax
push 0x4a8fd0
push str.USE_WeekSchedule
lea ecx, [ebp - 0x48]
call fcn.0045e910
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx ecx, byte [ebp - 0x50]
cmp ecx, 0x59
je 0x45789e
movsx edx, byte [ebp - 0x50]
cmp edx, 0x79
jne 0x457909
push 0x4a8fe8
push 8
lea eax, [ebp - 0x20]
push eax
push str.YYYYYYY
push str.WeekScheduleCondition
lea ecx, [ebp - 0x48]
call fcn.0045e910
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x38]
movsx edx, byte [ebp + ecx - 0x20]
cmp edx, 0x4e
je 0x4578dc
mov eax, dword [ebp - 0x38]
movsx ecx, byte [ebp + eax - 0x20]
cmp ecx, 0x6e
jne 0x457909
mov edx, dword [ebp - 0x38]
add edx, 1
push edx
lea eax, [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0x48]
push ecx
push 0x4a9028
mov edx, dword [ebp - 0x6c]
mov ecx, dword [edx + 0x70]
call fcn.0040d750
push eax
call fcn.0040b4f0
add esp, 0x14
jmp 0x4577e2
push str.C:_sk_odtiniLocalContents.INI
push 2
lea eax, [ebp - 0x3c]
push eax
push 0x4a90a8
push str.USE_TimeSchedule
lea ecx, [ebp - 0x48]
call fcn.0045e910
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
movsx ecx, byte [ebp - 0x3c]
cmp ecx, 0x59
je 0x45793f
movsx edx, byte [ebp - 0x3c]
cmp edx, 0x79
jne 0x4579bc
push 0x4a90c0
push 0
push str.TimeConditionFrom
lea ecx, [ebp - 0x48]
call fcn.0045e910
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x4c], eax
push 0x4a90f4
push 0x960
push str.TimeConditionTo
lea ecx, [ebp - 0x48]
call fcn.0045e910
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x4c]
jl 0x45798e
mov ecx, dword [ebp - 0x40]
cmp ecx, dword [ebp - 0x14]
jle 0x4579bc
mov edx, dword [ebp - 0x40]
push edx
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [ebp - 0x4c]
push ecx
mov edx, dword [ebp - 0x48]
push edx
push str.__s_:
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax + 0x70]
call fcn.0040d750
push eax
call fcn.0040b4f0
add esp, 0x18
jmp 0x4577e2
push str..htm
lea ecx, [ebp - 0x48]
push ecx
lea edx, [ebp - 0x64]
push edx
call fcn.00417d10
add esp, 0xc
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x74], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x74]
push ecx
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.004095f0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x64]
call fcn.00417ed0
jmp 0x4577e2
mov dword [ebp - 0x58], 0
jmp 0x457a13
mov edx, dword [ebp - 0x58]
add edx, 1
mov dword [ebp - 0x58], edx
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.0042a450
cmp dword [ebp - 0x58], eax
jge 0x457a5d
mov eax, dword [ebp - 0x58]
push eax
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.004095c0
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp - 0x58]
add edx, 1
push edx
push 0x4a917c
mov eax, dword [ebp - 0x6c]
mov ecx, dword [eax + 0x70]
call fcn.0040d750
push eax
call fcn.0040b4f0
add esp, 0x10
jmp 0x457a0a
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.0042a450
test eax, eax
jle 0x457b49
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.0042a450
mov ecx, dword [ebp - 0x6c]
mov dword [ecx + 0x1ec], eax
push 0
mov ecx, dword [ebp - 0x6c]
call fcn.00457b80
mov dword [ebp - 0x5c], eax
push 0
mov ecx, dword [ebp - 0x6c]
add ecx, 0xd8
call fcn.004095c0
push eax
push str.C:SK_ODTAD_
lea edx, [ebp - 0x60]
push edx
call fcn.00417db0
add esp, 0xc
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x5c]
push eax
mov ecx, dword [ebp - 0x60]
push ecx
push 0x4a91a8
mov edx, dword [ebp - 0x6c]
mov ecx, dword [edx + 0x70]
call fcn.0040d750
push eax
call fcn.0040b4f0
add esp, 0x10
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x60]
call fcn.0045e910
push eax
mov ecx, dword [ebp - 0x6c]
add ecx, 0xf0
call fcn.00431b80
push 0
mov eax, dword [ebp - 0x5c]
imul eax, eax, 0x3e8
push eax
push 0x4ba
mov ecx, dword [ebp - 0x6c]
call fcn.004183c0
mov dword [ebp - 0x68], 1
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x60]
call fcn.00417ed0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x44]
call fcn.00417ed0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.00417ed0
mov eax, dword [ebp - 0x68]
jmp 0x457b66
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x44]
call fcn.00417ed0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x48]
call fcn.00417ed0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret