Function at 0xd2813a0
Capabilities:
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xb30
mov eax, dword [0xd2b0418]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
mov ebx, edx
mov edx, dword [ecx + 4]
cmp byte [edx + 0xa8], 0x15
push esi
mov esi, 1
mov dword [ebp - 0xb24], eax
mov dword [ebp - 0xb30], ebx
mov dword [ebp - 0xb2c], esi
mov dword [ebp - 0xb28], esi
push 0x104
jne 0xd2813f8
lea eax, [ebp - 0x6bc]
push eax
push 0xadfe
jmp 0xd281404
lea ecx, [ebp - 0x6bc]
push ecx
push 0xae15
call fcn.0d29fa20
lea edx, [ebp - 0x6bc]
push edx
call dword [sym.imp.USER32.dll_CharLowerW]
push 1
push str.NDX_u
lea eax, [ebp - 0x25c]
push 0x12c
push eax
mov dword [ebp - 0xb20], esi
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
jmp 0xd281440
push edi
push 0x104
lea ecx, [ebp - 0x8c4]
push ecx
push 0xd2b0464
lea edx, [ebp - 0x25c]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
jbe 0xd2814a5
push edi
push 0
lea eax, [ebp - 0x25c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov esi, eax
mov eax, dword [ebp - 0xb20]
inc eax
movzx ecx, ax
push ecx
push str.NDX_u
lea edx, [ebp - 0x25c]
push 0x12c
push edx
mov dword [ebp - 0xb20], eax
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
test esi, esi
jne 0xd281440
push 1
push str.MDX_u
lea eax, [ebp - 0x25c]
push 0x12c
push eax
mov dword [ebp - 0xb20], 1
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
test esi, esi
je 0xd281744
push edi
push 0x104
lea ecx, [ebp - 0x8c4]
push ecx
push 0xd2b0464
lea edx, [ebp - 0x25c]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
jbe 0xd28154b
push edi
push 0
lea eax, [ebp - 0x25c]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov esi, eax
mov eax, dword [ebp - 0xb20]
inc eax
movzx ecx, ax
push ecx
push str.MDX_u
lea edx, [ebp - 0x25c]
push 0x12c
push edx
mov dword [ebp - 0xb20], eax
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
test esi, esi
jne 0xd2814d2
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 4
test esi, esi
je 0xd281744
mov eax, dword [ebp - 0xb24]
add eax, 0x14
push eax
call fcn.0d28d810
mov ebx, eax
test ebx, ebx
je 0xd2815e9
mov ecx, dword [ebx + 8]
mov edx, dword [0xd2aae98]
push ecx
push edx
push 0xd2720a8
lea eax, [ebp - 0x4b4]
push 0x12c
push eax
call sub.msvcrt.dll_swprintf_s
add esp, 0x14
push edi
push 0x104
lea ecx, [ebp - 0x8c4]
push ecx
push 0xd2b0464
push 0
lea edx, [ebp - 0x4b4]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
test eax, eax
jbe 0xd2815c9
push edi
push 0
push 0
lea eax, [ebp - 0x4b4]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov esi, eax
push ebx
call fcn.0d28da40
mov ebx, eax
test esi, esi
jne 0xd281564
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 4
test esi, esi
je 0xd281744
mov ecx, dword [ebp - 0xb24]
add ecx, 0x1c
push ecx
call fcn.0d28d810
mov ebx, eax
test ebx, ebx
je 0xd2816f1
mov eax, dword [ebx + 8]
push 0x102
lea edx, [ebp - 0x460]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
push eax
call sub.msvcrt.dll__wsplitpath_s
add esp, 0x24
lea ecx, [ebp - 0x460]
push ecx
call dword [sym.imp.USER32.dll_CharLowerW]
lea edx, [ebp - 0x460]
push edx
lea eax, [ebp - 0x6bc]
push eax
call dword [sym.imp.msvcrt.dll_wcsstr]
add esp, 8
test eax, eax
je 0xd281682
mov esi, dword [ebp - 0xb2c]
movzx eax, si
push eax
push str.NDX_u
lea ecx, [ebp - 0x25c]
push 0x12c
push ecx
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
inc esi
mov dword [ebp - 0xb2c], esi
jmp 0xd2816ac
mov esi, dword [ebp - 0xb28]
movzx eax, si
push eax
push str.MDX_u
lea edx, [ebp - 0x25c]
push 0x12c
push edx
call sub.msvcrt.dll_swprintf_s
add esp, 0x10
inc esi
mov dword [ebp - 0xb28], esi
mov eax, dword [ebx + 8]
mov edx, dword [ebp - 0xb30]
push edi
push eax
lea ecx, [ebp - 0x25c]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
push ebx
mov esi, eax
mov dword [ebp - 0xb20], ebx
call fcn.0d28da40
mov ebx, eax
test esi, esi
jne 0xd281602
mov eax, esi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 4
test esi, esi
je 0xd281744
mov eax, dword [ebp - 0xb24]
mov eax, dword [eax + 0x10]
test eax, eax
je 0xd281744
mov ecx, dword [0xd2aae98]
push eax
push ecx
push 0xd2720a8
lea edx, [ebp - 0xb1c]
push 0x12c
push edx
call sub.msvcrt.dll_swprintf_s
mov eax, dword [ebp - 0xb20]
mov ecx, dword [eax + 8]
add esp, 0x14
push edi
push ecx
lea edx, [ebp - 0x25c]
push edx
lea eax, [ebp - 0xb1c]
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov esi, eax
mov ecx, dword [ebp - 4]
mov eax, esi
pop esi
xor ecx, ebp
pop ebx
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 4