Function at 0x40f49b
Capabilities:
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x411208
push 0x4105f0
mov eax, dword fs:[0]
push eax
push ecx
push ecx
mov eax, 0x2838
call fcn.00410e30
mov eax, dword [0x412054]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x1c], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov edx, dword [ebp + 8]
mov dword [ebp - 0x2838], edx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2828], eax
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x2820], ecx
mov dword [ebp - 0x2848], ecx
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x2830], eax
mov dword [ebp - 0x284c], eax
xor edi, edi
mov esi, edi
mov dword [ebp - 0x2824], esi
mov dword [ebp - 0x282c], edi
mov ebx, edi
mov dword [ebp - 0x2834], ebx
mov dword [ecx], edi
mov dword [eax], edi
push dword [ebp - 0x2828]
push 0x1000
lea eax, [ebp - 0x201c]
push eax
push 0x407f84
push edi
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
cmp eax, 0xffe
jne 0x40f56c
push dword [ebp - 0x2828]
push dword [ebp - 0x2838]
push 0x408368
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
xor eax, eax
jmp 0x40f77f
cmp word [ebp - 0x201c], bx
je 0x40f5c2
mov ebx, dword [ebp - 0x2830]
lea eax, [ebp - 0x201c]
lea esi, [eax + esi*2]
push 0x4083e0
push esi
call dword [sym.imp.msvcrt.dll_wcsstr]
pop ecx
pop ecx
cmp esi, eax
jne 0x40f598
inc dword [ebx]
mov esi, dword [ebp - 0x2824]
lea eax, [esi + esi]
inc esi
cmp word [ebp + eax - 0x201c], di
jne 0x40f59e
mov dword [ebp - 0x2824], esi
cmp word [ebp + esi*2 - 0x201c], di
jne 0x40f57b
mov ebx, dword [ebp - 0x2834]
mov eax, dword [ebp - 0x2830]
mov eax, dword [eax]
test eax, eax
jne 0x40f5d4
inc eax
jmp 0x40f77f
xor ecx, ecx
push 0x18
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00410315
pop ecx
mov ecx, dword [ebp - 0x2820]
mov dword [ecx], eax
mov esi, edi
mov dword [ebp - 4], edi
lea eax, [ebp - 0x201c]
lea eax, [eax + esi*2]
cmp word [eax], di
je 0x40f75c
push 0x4083e0
push eax
call dword [sym.imp.msvcrt.dll_wcsstr]
pop ecx
pop ecx
lea ecx, [ebp - 0x201c]
lea ecx, [ecx + esi*2]
cmp ecx, eax
je 0x40f639
lea eax, [esi + esi]
inc esi
mov dword [ebp - 0x2844], esi
cmp word [ebp + eax - 0x201c], di
jne 0x40f623
jmp 0x40f5f6
push dword [ebp - 0x2828]
push 0x400
lea eax, [ebp - 0x281c]
push eax
push 0x407f84
push ecx
push dword [ebp - 0x2838]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push 0x408310
lea eax, [ebp - 0x281c]
push eax
call dword [sym.imp.msvcrt.dll_wcstok]
pop ecx
pop ecx
mov dword [ebp - 0x2824], eax
test eax, eax
jne 0x40f68c
push 0x4083f8
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x40f765
push 0x408310
push edi
call dword [sym.imp.msvcrt.dll_wcstok]
pop ecx
pop ecx
mov dword [ebp - 0x283c], eax
test eax, eax
jne 0x40f6ab
push 0x408440
jmp 0x40f680
push 0x408310
push edi
call dword [sym.imp.msvcrt.dll_wcstok]
pop ecx
pop ecx
test eax, eax
je 0x40f6cc
push eax
push 0x408490
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x40f686
imul ecx, dword [ebp - 0x282c], 0x18
mov dword [ebp - 0x2840], ecx
mov eax, dword [ebp - 0x2820]
mov eax, dword [eax]
add eax, ecx
push eax
push dword [ebp - 0x2824]
call dword [sym.imp.OLE32.dll_CLSIDFromString]
test eax, eax
js 0x40f701
push dword [ebp - 0x2824]
push 0x4084f8
jmp 0x40f6c3
mov eax, dword [ebp - 0x2820]
mov eax, dword [eax]
mov edx, dword [ebp - 0x2840]
add edx, 0x10
add edx, eax
mov ecx, dword [ebp - 0x283c]
call fcn.0040f90a
test eax, eax
jne 0x40f730
push dword [ebp - 0x283c]
push 0x408558
jmp 0x40f6c3
mov eax, dword [ebp - 0x282c]
inc eax
mov dword [ebp - 0x282c], eax
mov dword [ebp - 0x2850], eax
lea eax, [esi + esi]
inc esi
mov dword [ebp - 0x2844], esi
cmp word [ebp + eax - 0x201c], di
jne 0x40f743
jmp 0x40f5f6
xor ebx, ebx
inc ebx
mov dword [ebp - 0x2834], ebx
mov dword [ebp - 4], 0xfffffffe
mov esi, dword [ebp - 0x2830]
mov eax, dword [ebp - 0x2820]
call fcn.0040f7b5
mov eax, ebx
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00410620
leave
ret 0x10