Function at 0xd284770
Capabilities:
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xcd8
mov eax, dword [0xd2b0418]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 0x14]
push edi
mov edi, dword [ebp + 8]
mov dword [ebp - 0xc84], edi
cmp eax, 0x86
ja 0xd2847c4
je 0xd2847af
cmp eax, 0xc
je 0xd2847af
cmp eax, 0x15
je 0xd2847af
cmp eax, 0x19
jne 0xd2847fa
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
sub eax, 0x110
je 0xd2848ba
sub eax, 1
jne 0xd2847fa
push 8
push edi
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov esi, eax
mov eax, dword [esi + 4]
mov dword [ebp - 0xc80], eax
movzx eax, word [ebp + 0x10]
sub eax, 1
je 0xd28480f
sub eax, 1
je 0xd2848b2
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10
push 0x438
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edx, dword [ebp - 0xc80]
mov ecx, dword [esi]
mov esi, dword [ecx + 4]
mov ebx, eax
mov eax, dword [edx + 0x10]
test eax, eax
je 0xd284839
push eax
call dword [sym.imp.msvcrt.dll_free]
add esp, 4
push 0
push 0
push 0x188
push ebx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 0xffffffff
je 0xd2848a5
push 0x104
lea ecx, [ebp - 0x30c]
push ecx
push eax
push ebx
call fcn.0d283770
lea eax, [ebp - 0x30c]
lea edx, [eax + 2]
lea ebx, [ebx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0xd284870
mov ecx, dword [esi + 0x7c]
sub eax, edx
lea edx, [esi + 0x6c]
push edx
sar eax, 1
push eax
lea eax, [ebp - 0x30c]
push eax
push ecx
call fcn.0d29f000
mov edx, dword [ebp - 0xc80]
push 0
mov dword [edx + 0x10], eax
push edi
jmp 0xd284d52
mov eax, dword [ebp - 0xc80]
mov dword [eax + 0x10], 0
push 0
push edi
jmp 0xd284d52
push esi
push 8
push edi
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov edi, dword [esi]
mov ecx, dword [ebp - 0xc84]
mov esi, dword [esi + 4]
mov ebx, dword [edi + 4]
push ecx
mov dword [ebp - 0xc98], edi
mov dword [ebp - 0xc80], esi
mov dword [ebp - 0xc90], ebx
call fcn.0d280b10
mov edx, dword [esi + 0xc]
push edx
lea eax, [ebp - 0x30c]
push 0x104
push eax
call sub.msvcrt.dll_wcscpy_s
mov ecx, dword [0xd2aaea0]
push ecx
lea edx, [ebp - 0x30c]
push 0x104
push edx
call sub.msvcrt.dll_wcscat_s
mov eax, dword [0xd2aaea4]
push eax
lea ecx, [ebp - 0x30c]
push 0x104
push ecx
call sub.msvcrt.dll_wcscat_s
mov edx, dword [edi + 4]
mov ecx, dword [edx + 0x2c]
add esp, 0x24
test ecx, ecx
je 0xd284983
cmp word [ecx], 0
je 0xd284983
mov eax, ecx
lea edx, [eax + 2]
mov dword [ebp - 0xc8c], edx
lea esp, [esp]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0xd284950
sub eax, dword [ebp - 0xc8c]
sar eax, 1
cmp word [ecx + eax*2 - 2], 0x5c
jne 0xd284983
mov eax, dword [esi + 0xc]
push eax
push ecx
push str._s_s.inf
push 0x104
lea ecx, [ebp - 0x614]
push ecx
jmp 0xd284999
mov edx, dword [esi + 0xc]
push edx
push ecx
push 0xd2aae70
push 0x104
lea eax, [ebp - 0x614]
push eax
call sub.msvcrt.dll_swprintf_s
mov edi, dword [edi + 4]
movzx ecx, byte [edi + 0xa9]
mov edx, dword [edi + 0xac]
mov eax, dword [edx + ecx*4 + 0x1c]
add esp, 0x14
push eax
lea ecx, [ebp - 0xa74]
push 0x104
push ecx
call sub.msvcrt.dll_wcscpy_s
mov edx, dword [0xd2aae48]
push edx
lea eax, [ebp - 0xa74]
push eax
call dword [sym.imp.msvcrt.dll_wcsstr]
add esp, 0x14
test eax, eax
je 0xd2849e7
xor ecx, ecx
mov word [eax], cx
mov edx, dword [ebp - 0xc84]
push 0x438
push edx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
mov esi, eax
push 0x184
push esi
mov dword [ebp - 0xc8c], esi
call edi
mov edx, dword [ebx + 0x58]
push 0
push 0x3c
lea eax, [ebp - 0xcd8]
push eax
mov eax, dword [ebx + 0x54]
push 0
lea ecx, [ebp - 0x30c]
push ecx
push edx
push eax
mov dword [ebp - 0xc94], 1
call sub.msjet40.dll_Ordinal_137
mov dword [ebp - 0xc88], eax
test eax, eax
jl 0xd284a65
mov ecx, dword [ebp - 0xcd4]
mov edx, dword [ebx + 0x54]
push 0
push 0x80000000
push ecx
push edx
call sub.msjet40.dll_Ordinal_156
mov dword [ebp - 0xc88], eax
xor ecx, ecx
mov word [ebp - 0x40c], cx
test eax, eax
jl 0xd284bf3
mov ecx, dword [ebp - 0xccc]
push 0
push 0
lea edx, [ebp - 0xc9c]
push edx
mov edx, dword [ebp - 0xcd4]
push 0x80
lea eax, [ebp - 0x104]
push eax
mov eax, dword [ebx + 0x54]
push ecx
push edx
push eax
call sub.msjet40.dll_Ordinal_167
mov edi, eax
mov dword [ebp - 0xc88], edi
test edi, edi
jl 0xd284ba8
mov eax, dword [ebp - 0xc9c]
cmp eax, 0x80
jae 0xd284acd
shr eax, 1
xor ecx, ecx
mov word [ebp + eax*2 - 0x104], cx
lea edx, [ebp - 0x40c]
push edx
lea eax, [ebp - 0x104]
push eax
call dword [sym.imp.msvcrt.dll__wcsicmp]
add esp, 8
test eax, eax
je 0xd284bbd
mov ecx, dword [ebp - 0xc98]
mov edi, dword [ecx + 0x30]
lea edx, [ebp - 0x104]
push edx
push 0
push 0x180
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0x104]
push eax
lea ecx, [ebp - 0x40c]
push 0x80
push ecx
call sub.msvcrt.dll_wcscpy_s
add esp, 0xc
lea ebx, [edi + 0x1518]
push ebx
call fcn.0d28d790
mov esi, eax
test esi, esi
jne 0xd284b54
mov esi, dword [ebp - 0xc84]
mov eax, esi
call fcn.0d280e10
test eax, eax
je 0xd284c41
push ebx
call fcn.0d28d790
mov esi, eax
lea eax, [ebp - 0x104]
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0xd284b60
sub eax, edx
push esi
lea edx, [ebp - 0x104]
sar eax, 1
push edx
call fcn.0d280db0
test eax, eax
je 0xd284c63
mov eax, dword [ebp - 0xc80]
push esi
add eax, 0x14
push eax
call fcn.0d28d650
mov edi, dword [ebp - 0xc88]
mov ebx, dword [ebp - 0xc90]
mov esi, dword [ebp - 0xc8c]
jmp 0xd284bbd
cmp edi, 0xfffff9bd
jne 0xd284bbd
cmp dword [ebp - 0xc94], 0
jne 0xd284c88
mov dword [ebp - 0xc94], 0
test edi, edi
jl 0xd284bed
mov ecx, dword [ebp - 0xcd4]
mov edx, dword [ebx + 0x54]
push 0
push 1
push ecx
push edx
call sub.msjet40.dll_Ordinal_156
mov dword [ebp - 0xc88], eax
test eax, eax
jge 0xd284a76
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0xcd4]
mov ecx, dword [ebx + 0x54]
push eax
push ecx
push ebx
call fcn.0d2946f0
push 0
push 0
push 0x18b
push esi
call edi
test eax, eax
jle 0xd284d30
push 0
push 0
push 0x186
push esi
call edi
mov ecx, dword [ebp - 0xc80]
mov eax, dword [ecx + 0x10]
test eax, eax
je 0xd284ca7
push eax
push 0xffffffffffffffff
push 0x18c
push esi
call edi
jmp 0xd284d30
push esi
call fcn.0d29dc60
mov eax, dword [ebp - 0xcd4]
push eax
mov eax, dword [ebp - 0xc90]
mov ecx, dword [eax + 0x54]
push ecx
push eax
call fcn.0d2946f0
jmp 0xd284d4f
mov eax, dword [ebp - 0xc90]
mov edx, dword [ebp - 0xcd4]
mov ecx, dword [eax + 0x54]
push edx
push ecx
push eax
call fcn.0d2946f0
mov edx, dword [ebp - 0xc84]
push 0
push edx
jmp 0xd284d52
mov eax, dword [ebp - 0xcd4]
mov ecx, dword [ebx + 0x54]
push eax
push ecx
push ebx
call fcn.0d2946f0
mov edx, dword [ebp - 0xc84]
push 0
push edx
jmp 0xd284d52
add ecx, 0x14
push ecx
call fcn.0d28d810
mov esi, eax
test esi, esi
je 0xd284d30
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea esp, [esp]
mov edx, dword [esi + 8]
mov eax, dword [0xd2aae98]
push edx
push eax
push 0xd2720a8
lea ecx, [ebp - 0x86c]
push 0x12c
push ecx
call sub.msvcrt.dll_swprintf_s
add esp, 0x14
lea edx, [ebp - 0x614]
push edx
push 0x104
lea eax, [ebp - 0xc7c]
push eax
push 0xd2b0464
push 0
lea ecx, [ebp - 0x86c]
push ecx
call edi
test eax, eax
ja 0xd284d18
push esi
call fcn.0d28da40
mov esi, eax
test esi, esi
jne 0xd284cc0
jmp 0xd284d30
mov edx, dword [esi + 8]
mov eax, dword [ebp - 0xc8c]
push edx
push 0xffffffffffffffff
push 0x18c
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0xc88]
test eax, eax
jge 0xd284d58
cmp eax, 0xfffff9bd
je 0xd284d58
mov esi, dword [ebp - 0xc84]
push eax
push ebx
push esi
call fcn.0d2793b0
push 0
push esi
call dword [sym.imp.USER32.dll_EndDialog]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
mov eax, 1
pop ebx
call fcn.0d2a6cd9
mov esp, ebp
pop ebp
ret 0x10