Function at 0x403be0
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x3cb8
call fcn.004473e0
mov eax, dword [esp + 0x3cc4]
push ebx
mov ebx, dword [esp + 0x3ccc]
push ebp
mov ebp, dword [sym.imp.MSVCRT.dll__snwprintf]
push esi
push edi
mov dword [esp + 0x10], ecx
push eax
push 0x463604
lea ecx, [ebx + 0x210]
push 0x103
push ecx
call ebp
mov dx, word [0x4d6e34]
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x642]
mov word [esp + 0x640], dx
push 0
rep stosd dword es:[edi], eax
mov ecx, dword [0x4d5dd4]
push 0x104
stosw word es:[edi], ax
lea eax, [esp + 0x648]
push eax
push ecx
call fcn.0040ef90
mov dx, word [0x4d6e34]
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x242]
mov word [esp + 0x240], dx
mov word [esp + 0x448], dx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x81
xor eax, eax
lea edi, [esp + 0x44a]
mov esi, dword [esp + 0x3cf0]
rep stosd dword es:[edi], eax
lea edx, [esp + 0x240]
push 0x104
stosw word es:[edi], ax
mov eax, dword [esp + 0x3cf0]
push edx
push str.path
push esi
push eax
call fcn.00426960
mov ecx, dword [esp + 0x44]
add esp, 0x34
lea edx, [esp + 0x220]
lea eax, [ecx + 0x62904]
push esi
push edx
push eax
push 0x4637f8
lea eax, [ebx + 0x620]
push 0x103
push eax
call ebp
mov cx, word [0x4d6e34]
xor eax, eax
mov word [esp + 0x850], cx
mov ecx, 0x411
lea edi, [esp + 0x852]
lea edx, [esp + 0x850]
rep stosd dword es:[edi], eax
push 0x824
push edx
stosw word es:[edi], ax
mov eax, dword [esp + 0x3cec]
push 0x4637f0
push esi
push eax
call fcn.00426960
add esp, 0x2c
lea edi, [ebx + 0xa30]
lea ecx, [esp + 0x838]
push ecx
push 0x463604
push 0x823
push edi
call ebp
add esp, 0x10
lea eax, [ebx + 8]
mov dword [esp + 0x14], eax
push esi
push 0x463604
push 0x103
push eax
call ebp
add esp, 0x10
lea edx, [esp + 0x220]
lea eax, [esp + 0x630]
lea ecx, [esp + 0x428]
push esi
push edx
push eax
push 0x4637f8
push 0x103
push ecx
call ebp
add esp, 0x18
lea edx, [esp + 0x220]
lea eax, [esp + 0x630]
lea ecx, [ebx + 0x418]
push esi
push edx
push eax
push 0x4637f8
push 0x103
push ecx
call ebp
lea edx, [esp + 0x1898]
push 0
push edx
push edi
call fcn.0040a660
add esp, 0x24
test eax, eax
je 0x403f71
mov eax, dword [esp + 0x3ccc]
push 0
push 0x4637e8
push esi
push eax
call fcn.00426ab0
mov ecx, dword [esp + 0x3cdc]
push 0
push str.issd
push esi
push ecx
mov dword [ebx], eax
call fcn.00426ab0
add esp, 0x20
mov dword [ebx + 0x1a78], eax
push edi
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
push eax
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x224]
add eax, 0x62904
push edx
push eax
push 0x4637f8
add ebx, 0x828
push 0x103
push ebx
call ebp
mov ecx, dword [esp + 0x3ce4]
push 0
push str.needfile
push esi
push ecx
call fcn.00426ab0
add esp, 0x28
cmp eax, 1
jne 0x403e5c
lea edx, [esp + 0x428]
push 0
push edx
call fcn.0040ef80
add esp, 8
test eax, eax
je 0x403f71
lea eax, [esp + 0x428]
push 0
push eax
call fcn.0040ef80
add esp, 8
test eax, eax
jne 0x403e84
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3cb8
ret 0x10
mov cx, word [0x4d6e34]
xor eax, eax
mov word [esp + 0x18], cx
mov ecx, 0x81
lea edi, [esp + 0x1a]
lea edx, [esp + 0x18]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0x104
lea eax, [esp + 0x42c]
push edx
push eax
call fcn.0040f070
add esp, 0xc
test eax, eax
je 0x403ecf
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.MSVCRT.dll_wcslen]
add esp, 4
test eax, eax
jne 0x403ef9
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
add edx, 0x62b0c
lea eax, [esp + 0x18]
push edx
push 0x104
push eax
push 0x4d6e34
push ecx
push 0x4637b8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov esi, dword [esp + 0x3cd4]
lea edx, [esp + 0x18]
push edx
push esi
call fcn.00406440
add esp, 8
test eax, eax
jle 0x403f57
lea eax, [esp + 0x18]
push eax
push esi
call fcn.004062f0
add esp, 8
test eax, eax
push 0x4dc548
jle 0x403f30
push 0x4637b4
jmp 0x403f35
push 0x4637b0
push str.must
push str.MustUpdate
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3cb8
ret 0x10
push 0x4dc548
push 0x4637b0
push str.must
push str.MustUpdate
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3cb8
ret 0x10