Function at 0x40d850
Capabilities:
Read .ini file

Disassembly:
mov eax, 0x1000c
call fcn.00422eb0
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x10008], eax
push ebx
push ebp
add ecx, 0xfffffbe0
push esi
push edi
cmp ecx, 0xd
ja case.0x40d715.1066
jmp dword [ecx*4 + 0x40d9be]
xor eax, eax
push 0xfffc
push eax
mov word [esp + 0x1c], ax
lea eax, [esp + 0x1e]
push eax
call fcn.00412740
add esp, 0xc
mov ecx, str.234568
call fcn.0040ca67
lea edx, [esp + 0x14]
mov ecx, eax
call fcn.0040f3d7
cmp word [esp + 0x14], 0
je case.0x40d715.1066
lea eax, [esp + 0x14]
push eax
push 0x42a
push dword [0x49fefc]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x48fef0
lea eax, [esp + 0x18]
push eax
push str.EncPath
push str.MAIN
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
jmp case.0x40d715.1066
xor eax, eax
push 0xfffc
push eax
mov word [esp + 0x1c], ax
lea eax, [esp + 0x1e]
push eax
call fcn.00412740
add esp, 0xc
mov ecx, str.234568
call fcn.0040ca67
lea edx, [esp + 0x14]
mov ecx, eax
call fcn.0040f3d7
cmp word [esp + 0x14], 0
je case.0x40d715.1066
lea eax, [esp + 0x14]
push eax
push 0x42b
push dword [0x49fefc]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push 0x48fef0
lea eax, [esp + 0x18]
push eax
push str.DecPath
jmp 0x40d783
mov esi, 0x48fef0
mov ebx, 0x42a3c4
push esi
push 0
push ebx
mov edi, str.MAIN
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push esi
test eax, eax
jne 0x40d84d
push 0x42a0d8
push ebx
push edi
jmp 0x40d788
mov esi, 0x48fef0
mov ebx, 0x42a0d8
push esi
push 0
push ebx
mov edi, str.MAIN
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push esi
test eax, eax
je 0x40d84d
push 0x42a3c4
jmp 0x40d820
push ebx
jmp 0x40d820
mov ebx, str.234568
mov esi, 0x48fef0
mov edi, str.MAIN
push esi
push 0
push ebx
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push esi
test eax, eax
je 0x40d81b
jmp 0x40d846
mov ebx, 0x42a3e4
jmp 0x40d855
mov ebx, 0x42a3e8
jmp 0x40d855
mov ebx, 0x42a3ec
jmp 0x40d855
mov ebx, 0x42a3f0
jmp 0x40d855
mov ebx, 0x42a088
jmp 0x40d855
mov esi, 0x48fef0
xor ebx, ebx
push esi
push ebx
mov ebp, 0x42a3f4
mov edi, str.MAIN
push ebp
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push esi
test eax, eax
je 0x40d8e9
push 0x42a3c4
push ebp
push edi
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push ebx
push 0x42a
push dword [0x49fefc]
call edi
mov esi, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call esi
push ebx
push 0x42c
jmp 0x40d997
push 0x42a0d8
push ebp
push edi
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push 1
push 0x42a
push dword [0x49fefc]
call edi
mov esi, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call esi
push 1
jmp 0x40d8df
mov esi, 0x48fef0
xor ebx, ebx
push esi
push ebx
mov ebp, 0x42b334
mov edi, str.MAIN
push ebp
push edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push esi
test eax, eax
je 0x40d965
push 0x42a3c4
push ebp
push edi
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push ebx
push 0x42b
push dword [0x49fefc]
call edi
mov esi, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call esi
push ebx
jmp 0x40d992
push 0x42a0d8
push ebp
push edi
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push 1
push 0x42b
push dword [0x49fefc]
call edi
mov esi, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call esi
push 1
push 0x42d
push dword [0x49fefc]
call edi
push eax
call esi
mov ecx, dword [esp + 0x10018]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
inc eax
call fcn.00411b03
add esp, 0x1000c
ret