Function at 0x406295
Capabilities:
Read .ini file

Disassembly:
push 0x444
mov eax, 0x5581ca
call fcn.0052faf2
xor ebx, ebx
mov esi, ecx
mov edi, edx
mov dword [ebp - 0x44c], ebx
mov dword [ebp - 0x438], edi
cmp dword [esi], ebx
jne 0x4062ce
call fcn.0042b589
push eax
mov ecx, edi
call fcn.0040217f
mov eax, edi
jmp 0x406596
call fcn.0042b589
push eax
lea ecx, [ebp - 0x43c]
call fcn.0040217f
mov dword [ebp - 4], 1
call fcn.0042b589
push eax
lea ecx, [ebp - 0x434]
call fcn.0040217f
lea eax, [ebp - 0x218]
push eax
mov byte [ebp - 4], 2
call fcn.00428e77
mov dword [esp], 0x5889c8
push 0x5889e8
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x434]
push 0x5889f4
push eax
call fcn.004034f1
push 0x588a04
lea eax, [ebp - 0x434]
push eax
lea eax, [ebp - 0x42c]
push eax
call fcn.004016d7
add esp, 0x20
mov byte [ebp - 4], 3
push dword [ebp - 0x42c]
mov eax, dword [esi]
mov eax, dword [eax + 4]
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push ebx
push str.MajorNum
push eax
call edi
push dword [ebp - 0x42c]
mov dword [ebp - 0x424], eax
mov eax, dword [esi]
mov eax, dword [eax + 4]
push ebx
push str.MinorNum
push eax
call edi
cmp dword [ebp - 0x424], 2
jne 0x40638c
cmp eax, 0x46
jge 0x406395
cmp dword [ebp - 0x424], 3
jl 0x4063e7
call fcn.0042b589
push eax
lea ecx, [ebp - 0x430]
call fcn.0040217f
mov byte [ebp - 4], 4
mov ecx, dword [esi + 4]
mov eax, dword [ecx]
call dword [eax + 0x20]
mov eax, dword [eax + 0x14]
push ecx
sub eax, 0x10
mov dword [ebp - 0x428], esp
mov edi, esp
push eax
call fcn.00401e83
pop ecx
push dword [ebp - 0x438]
add eax, 0x10
push esi
mov dword [edi], eax
call fcn.00406071
mov ecx, dword [ebp - 0x430]
add ecx, 0xfffffff0
jmp 0x406561
call fcn.0042b589
push eax
lea ecx, [ebp - 0x430]
call fcn.0040217f
mov byte [ebp - 4], 5
call fcn.0042b589
push eax
lea ecx, [ebp - 0x448]
call fcn.0040217f
lea eax, [ebp - 0x420]
push eax
mov byte [ebp - 4], 6
call fcn.00428e50
pop ecx
call fcn.0042b589
push eax
lea ecx, [ebp - 0x424]
call fcn.0040217f
push str.Resources
lea eax, [ebp - 0x420]
push eax
lea eax, [ebp - 0x424]
push 0x588938
push eax
mov byte [ebp - 4], 7
call fcn.004034f1
mov dword [ebp - method.CLcMgrStub.virtual_0], vtable.CLcMgrStub.0
mov dword [ebp - 0x440], ebx
add esp, 0xc
mov byte [ebp - 4], 8
mov ecx, esp
mov dword [ebp - 0x428], esp
push str.string
call fcn.00401daf
mov byte [ebp - 4], 9
mov edi, dword [ebp - 0x424]
push ecx
add edi, 0xfffffff0
mov dword [ebp - 0x450], esp
mov esi, esp
push edi
call fcn.00401e83
add eax, 0x10
mov dword [esi], eax
pop ecx
lea esi, [ebp - 0x444]
mov byte [ebp - 4], 8
call fcn.0040da1c
push str.MSG.LowVersionDriver.Error
lea ebx, [ebp - 0x428]
call fcn.0040da71
push eax
lea ecx, [ebp - 0x430]
mov byte [ebp - 4], 0xa
call fcn.00401ee1
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x428]
add ecx, 0xfffffff0
call fcn.004021a7
push str.MSG.WindowsTitle
lea ebx, [ebp - 0x428]
call fcn.0040da71
push eax
lea ecx, [ebp - 0x448]
mov byte [ebp - 4], 0xb
call fcn.00401ee1
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x428]
add ecx, 0xfffffff0
call fcn.004021a7
mov esi, dword [ebp - 0x448]
mov ebx, dword [ebp - 0x430]
push 0x30
push esi
push ebx
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, dword [ebp - 0x438]
push 0x587cac
call fcn.00401daf
lea ecx, [ebp - 0x444]
mov dword [ebp - 0x44c], 1
mov byte [ebp - 4], 7
call fcn.0040da0b
mov ecx, edi
call fcn.004021a7
lea ecx, [esi - 0x10]
call fcn.004021a7
lea ecx, [ebx - 0x10]
call fcn.004021a7
mov ecx, dword [ebp - 0x42c]
add ecx, 0xfffffff0
call fcn.004021a7
mov ecx, dword [ebp - 0x434]
add ecx, 0xfffffff0
call fcn.004021a7
mov ecx, dword [ebp - 0x43c]
add ecx, 0xfffffff0
call fcn.004021a7
mov eax, dword [ebp - 0x438]
call fcn.0052fb75
ret