Function at 0x468dc8
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov ebx, dword [ebp + 8]
mov edi, 0x4f670c
mov esi, 0x4f7dec
cmp byte [ebx + 0x4cc], 0
jne 0x468e02
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x10]
push eax
lea edx, [edi + 7]
push edx
push edi
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 1
jne 0x468e6b
lea ecx, [ebx + 4]
push ecx
lea eax, [edi + 0x1d]
push eax
push 0x50f250
call sub.USER32.dll_wsprintfA
add esp, 0xc
push esi
push 0x64
push 0x50f1ec
lea edx, [edi + 0x29]
push edx
push 0x50f250
lea ecx, [edi + 0x22]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
push 0x50f1ec
call fcn.00401318
pop ecx
test eax, eax
ja 0x469093
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x3e]
push eax
lea edx, [edi + 0x34]
push edx
lea ecx, [edi + 0x2d]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 2
jne 0x468eb9
cmp byte [ebx + 0x4cd], 2
jne 0x468e9b
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x5c]
push eax
lea edx, [edi + 0x52]
push edx
lea ecx, [edi + 0x4b]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x78]
push eax
lea edx, [edi + 0x70]
push edx
lea ecx, [edi + 0x69]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 3
jne 0x468f19
cmp byte [ebx + 0x4cd], 1
jne 0x468ef2
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x93]
push eax
lea edx, [edi + 0x8c]
push edx
lea ecx, [edi + 0x85]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0xae]
push eax
lea edx, [edi + 0xa7]
push edx
lea ecx, [edi + 0xa0]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 4
jne 0x468f49
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0xc9]
push eax
lea edx, [edi + 0xc2]
push edx
lea ecx, [edi + 0xbb]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 5
jne 0x468f79
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0xe6]
push eax
lea edx, [edi + 0xdd]
push edx
lea ecx, [edi + 0xd6]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 6
jne 0x468fa9
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x104]
push eax
lea edx, [edi + 0xfa]
push edx
lea ecx, [edi + 0xf3]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 7
jne 0x468fd9
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x121]
push eax
lea edx, [edi + 0x118]
push edx
lea ecx, [edi + 0x111]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 8
jne 0x469009
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x13d]
push eax
lea edx, [edi + 0x135]
push edx
lea ecx, [edi + 0x12e]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
cmp byte [ebx + 0x4cc], 9
jne 0x469071
cmp byte [0x524194], 0
je 0x46904d
push edi
mov esi, 0x50f1ec
mov edi, 0x524194
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
mov byte [0x524194], 0
jmp 0x469093
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x15a]
push eax
lea edx, [edi + 0x151]
push edx
lea ecx, [edi + 0x14a]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
jmp 0x469093
push esi
push 0x64
push 0x50f1ec
lea eax, [edi + 0x177]
push eax
lea edx, [edi + 0x16e]
push edx
lea ecx, [edi + 0x167]
push ecx
call sub.KERNEL32.dll_GetPrivateProfileStringA
xor esi, esi
mov dword [ebp - 8], 1
push 0x2c
push 0x50f1ec
call fcn.00401278
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x469101
mov eax, dword [ebp - 4]
mov byte [eax], 0
inc dword [ebp - 4]
mov edx, dword [ebp - 4]
cmp byte [edx], 0
je 0x4690f6
push 0x2c
mov ecx, dword [ebp - 4]
push ecx
call fcn.00401278
add esp, 8
test eax, eax
je 0x4690ea
mov byte [eax], 0
inc eax
cmp byte [eax], 0
je 0x4690ea
push eax
call fcn.00409a14
pop ecx
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
push eax
call fcn.00409a14
pop ecx
mov esi, eax
test esi, esi
jg 0x46911f
mov esi, 0x19c
jmp 0x46911f
push edi
lea esi, [edi + 0x184]
mov edi, 0x50f1ec
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
mov esi, 0x19c
mov dword [ebp - 8], 1
lea eax, [ebx + 0x604]
push esi
mov esi, eax
mov edi, 0x50f1ec
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
xor eax, eax
mov dword [ebx + 0x66c], eax
cmp esi, 0x64
jle 0x469167
add dword [ebx + 0x66c], 0x64
sub esi, 0x64
cmp esi, 0x64
jg 0x469158
mov dword [ebx + 0x668], esi
mov edx, dword [ebp - 8]
mov dword [ebx + 0x670], edx
mov eax, 1
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret 4