Function at 0x414090
Capabilities:
Read .ini file

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x508214
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 8
push esi
push edi
mov eax, dword [0x54e39c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x14], edi
mov ecx, dword [ebx + 0x14]
mov eax, dword [ebx + 8]
mov dword [ecx], 1
cmp eax, 0x42e
ja 0x414252
je 0x414130
sub eax, 0x2a1
je 0x414124
sub eax, 2
jne 0x41425e
push dword [edi + 0x354]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x41434d
push 0
push 0
push 0x10
push dword [edi + 0x354]
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x41434d
mov ecx, edi
call fcn.00415ca0
jmp 0x41434d
cmp dword [edi + 0x34c], 0
jne 0x414247
cmp dword [edi + 0x350], 0
jne 0x414247
call fcn.00407250
push dword [eax]
push 1
push str.protect_days
push str.general
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push 0x324
mov edi, eax
call fcn.0049c04a
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
push 0x324
push 0
push esi
mov dword [ebp - 4], 1
call fcn.004dd9e0
add esp, 0xc
mov ecx, esi
call fcn.0040e120
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebx + 0xc]
mov dword [ebp - 4], 0xffffffff
movaps xmm0, xmmword [0x538fa0]
push 0
mov dword [esi], vtable.CBlockRecordWnd.4.0
sub esp, 0x10
mov dword [esi + 0x14], vtable.CBlockRecordWnd.3.0
mov dword [esi + 0x24], vtable.CBlockRecordWnd.2.0
mov dword [esi + 0x28], vtable.CBlockRecordWnd.1.0
mov dword [esi + 0x2c], vtable.CBlockRecordWnd.0
mov dword [esi + 0x314], 0
mov dword [esi + 0x318], 0
mov dword [esi + 0x31c], 0
mov dword [esi + 0x320], ecx
mov dword [ecx + 0x34c], esi
mov dword [esi + 0x314], eax
mov eax, dword [ebx + 0x10]
mov dword [esi + 0x318], eax
mov eax, esp
push 0x88
push SysReAllocStringLen
push str.block_record
mov dword [esi + 0x31c], edi
mov ecx, dword [ecx + 0x34c]
push 0
movups xmmword [eax], xmm0
call fcn.0042c030
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x354], eax
mov ecx, dword [ecx + 0x34c]
call fcn.0042c560
mov ecx, dword [ebx + 0x14]
mov dword [ecx], 1
jmp 0x41434d
sub eax, 0x42f
je 0x414294
sub eax, 0x36
je 0x414269
mov dword [ecx], 0
jmp 0x41434d
lea esi, [edi + 0x320]
push ecx
mov ecx, esi
call fcn.00416500
lea eax, [edi + 0x318]
neg edi
sbb edi, edi
and edi, eax
mov eax, dword [ebx + 0x14]
mov dword [esi + 0xc], edi
mov dword [eax], 1
jmp 0x41434d
cmp dword [edi + 0x350], 0
jne 0x41434d
push 0x324
call fcn.0049c04a
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
push 0x324
push 0
push esi
mov dword [ebp - 4], 0
call fcn.004dd9e0
add esp, 0xc
mov ecx, esi
call fcn.0040e120
push 0
sub esp, 0x10
mov dword [esi], vtable.CRightMenuWnd.3.0
mov eax, esp
mov dword [esi + 0x14], vtable.CRightMenuWnd.1.0
mov dword [esi + 0x24], vtable.CRightMenuWnd.4.0
mov ecx, esi
mov dword [esi + 0x28], vtable.CRightMenuWnd.2.0
push 0x88
push SysReAllocStringLen
mov dword [esi + 0x2c], vtable.CRightMenuWnd.0
mov dword [esi + 0x318], 0
mov dword [ebp - 4], 0xffffffff
movaps xmm0, xmmword [0x538fb0]
mov dword [esi + 0x31c], 0
mov dword [esi + 0x320], 0
push str.tray_menu
mov dword [esi + 0x314], edi
push 0
mov dword [edi + 0x350], esi
movups xmmword [eax], xmm0
call fcn.0042c030
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10