Function at 0x4976bf
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x59d15f
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
mov dword [ebp - 0x34], ecx
call fcn.0040fa80
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp + 8]
mov dword [eax + 0x11c], ecx
push 1
mov edx, dword [ebp + 8]
push edx
push 0x406
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax + 0xe0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::EnableMenuItem_unsigned_int__int__int_]
push 1
mov ecx, dword [ebp - 0x34]
add ecx, 0x860
call fcn.0041cca0
movsx ecx, al
cmp ecx, 0x33
jge 0x497755
push 3
mov ecx, dword [ebp - 0x34]
add ecx, 0x860
call fcn.0041cca0
movsx edx, al
cmp edx, 0x37
jge 0x497755
push 1
mov eax, dword [ebp + 8]
push eax
push 0x409
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + 0xe0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::EnableMenuItem_unsigned_int__int__int_]
lea ecx, [ebp - 0x28]
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x14]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x20]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x34]
call fcn.00405b20
add eax, 0x260
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
call fcn.00405b90
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
je 0x4977dd
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x18]
push ecx
mov ecx, dword [ebp - 0x30]
call fcn.004a6bb0
push 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp + 8]
xor ecx, ecx
cmp eax, dword [edx + 0x34]
setge cl
push ecx
mov edx, dword [ebp - 0x10]
xor eax, eax
mov ax, word [edx + 4]
push eax
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ecx + 0xe4]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::EnableMenuItem_unsigned_int__int__int_]
jmp 0x497797
push 1
push 0
push 0
mov edx, dword [ebp - 0x1c]
mov ecx, dword [edx + 0xe4]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::EnableMenuItem_unsigned_int__int__int_]
push 0x5ef29c
push 0
push str.ProtectCustomVertKey
call fcn.0040acc0
mov ecx, eax
add ecx, 0x108
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x2c], eax
push 1
mov eax, dword [ebp + 8]
xor ecx, ecx
cmp eax, dword [ebp - 0x2c]
setge cl
push ecx
push 0x803d
mov edx, dword [ebp - 0x1c]
mov ecx, dword [edx + 0xe0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::EnableMenuItem_unsigned_int__int__int_]
lea ecx, [ebp - 0x24]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 3
mov eax, dword [ebp + 8]
push eax
push 0x5ef2c0
lea ecx, [ebp - 0x24]
push ecx
call sub.MFC42.DLL_CString::Format
add esp, 0xc
push 0x5ef2c4
lea ecx, [ebp - 0x24]
call fcn.00403d90
push eax
push str.AccessLevel
push 0x5ef2dc
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x24]
call fcn.0058df86
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x20]
call fcn.0058df86
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.0058df86
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x28]
call fcn.0058df86
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4