Function at 0x551ca8
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x9d1
push 0
push 0
dec ecx
jne 0x551cb1
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x552555
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x4143bc]
call fcn.00403284
mov esi, eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3ec]
lea eax, [ebp - 0x4e50]
mov ecx, 0x55256c
call fcn.004043c4
mov eax, dword [ebp - 0x4e50]
call fcn.0040453c
push eax
push 0x4e1f
lea eax, [ebp - 0x4e49]
push eax
push 0x55257c
push 0x552580
push 0x5525a0
call sub.kernel32.dll_GetPrivateProfileStringA
lea eax, [ebp - 0xc]
lea edx, [ebp - 0x4e49]
mov ecx, 0x4e21
call fcn.0040430c
mov edx, esi
mov eax, dword [ebp - 0xc]
call fcn.004f2468
mov eax, dword [ebx + 0x2e0]
call fcn.0048751c
mov dword [ebp - 0x10], eax
lea ecx, [ebp - 0x4e54]
mov eax, dword [ebx + 0x2e0]
mov eax, dword [eax + 0x1f0]
mov edx, dword [ebp - 0x10]
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x4e54]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x50]
inc eax
jne 0x551e11
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3ec]
lea eax, [ebp - 0x4e58]
mov ecx, 0x55256c
call fcn.004043c4
mov ecx, dword [ebp - 0x4e58]
mov dl, 1
mov eax, dword [0x4c228c]
call fcn.004c2334
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x4e5c]
mov eax, dword [ebx + 0x2e0]
mov eax, dword [eax + 0x1f0]
mov edx, dword [ebp - 0x10]
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x4e5c]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x34]
lea edx, [ebp - 8]
mov eax, esi
call fcn.004f4bb0
lea edx, [ebp - 0x4e60]
mov eax, dword [ebp - 8]
call fcn.0040bd9c
mov eax, dword [ebp - 0x4e60]
push eax
mov ecx, 0x5525b0
mov edx, 0x5525d8
mov eax, dword [ebp - 4]
mov esi, dword [eax]
call dword [esi + 4]
mov eax, dword [ebp - 4]
call fcn.004032b4
mov eax, dword [ebx + 0x2e8]
mov edx, dword [eax]
call dword [edx + 0xb4]
cmp al, 1
jne 0x55251d
lea ecx, [ebp - 0x14]
mov eax, dword [ebx + 0x2e0]
mov eax, dword [eax + 0x1f0]
mov edx, dword [ebp - 0x10]
mov esi, dword [eax]
call dword [esi + 0xc]
mov edx, dword [ebp - 0x14]
mov eax, 0x5525e8
call fcn.00404664
mov esi, eax
lea eax, [ebp - 0x1c]
push eax
mov ecx, esi
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x14]
call fcn.00404580
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 0x14]
call fcn.00404378
mov ecx, eax
lea edx, [esi + 1]
mov eax, dword [ebp - 0x14]
call fcn.00404580
mov eax, dword [ebp - 0x10]
sub eax, 1
jb 0x551e94
je 0x5520ad
dec eax
je 0x5522e7
jmp 0x55251d
mov eax, dword [ebx + 0x2ec]
mov edx, dword [eax]
call dword [edx + 0xb4]
cmp al, 1
jne 0x551f72
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dd254
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x4e64]
mov edx, 4
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x4e64]
push eax
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dd254
call fcn.004d9be8
mov ecx, eax
mov eax, ebx
pop edx
call fcn.005525ec
mov byte [ebx + 0x315], al
cmp byte [ebx + 0x315], 0
jne 0x55251d
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x410]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x414]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x40c]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x418]
push eax
lea eax, [ebp - 0x4e68]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x3fc]
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3f8]
mov eax, 1
call fcn.005601a0
jmp 0x55251d
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
call fcn.004d9d40
mov esi, eax
dec esi
cmp esi, 0
jl 0x55201f
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
mov edx, esi
call fcn.004d9d70
call fcn.004d9be8
mov edx, eax
lea ecx, [ebp - 0x18]
mov eax, dword [0x663a80]
mov eax, dword [eax]
call fcn.005554b4
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x18]
call fcn.00404488
jne 0x552015
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
mov edx, esi
call fcn.004d9d70
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x4e6c]
mov edx, 4
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x4e6c]
mov ecx, esi
mov eax, ebx
call fcn.005525ec
mov byte [ebx + 0x315], al
dec esi
cmp esi, 0xffffffff
jne 0x551f96
cmp byte [ebx + 0x315], 0
jne 0x55251d
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dbd78
dec eax
jne 0x55251d
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x410]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x414]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x40c]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x418]
push eax
lea eax, [ebp - 0x4e70]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x3fc]
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3f8]
mov eax, 1
call fcn.005601a0
jmp 0x55251d
mov eax, dword [ebx + 0x2f0]
mov edx, dword [eax]
call dword [edx + 0xb4]
cmp al, 1
jne 0x55221f
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
call fcn.004d9d40
mov esi, eax
dec esi
cmp esi, 0
jl 0x552191
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
mov edx, esi
call fcn.004d9d70
call fcn.004d9be8
mov edx, eax
lea ecx, [ebp - 0x24]
mov eax, dword [0x663a80]
mov eax, dword [eax]
call fcn.005554b4
lea eax, [ebp - 0x24]
push eax
mov edx, dword [ebp - 0x24]
mov eax, 0x5525e8
call fcn.00404664
mov ecx, eax
dec ecx
mov edx, 1
mov eax, dword [ebp - 0x24]
call fcn.00404580
mov eax, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
call fcn.00404488
jne 0x552187
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
mov edx, esi
call fcn.004d9d70
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x4e74]
mov edx, 4
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x4e74]
mov ecx, esi
mov eax, ebx
call fcn.005525ec
mov byte [ebx + 0x315], al
dec esi
cmp esi, 0xffffffff
jne 0x5520e7
cmp byte [ebx + 0x315], 0
jne 0x55251d
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dbd78
dec eax
jne 0x55251d
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x410]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x414]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x40c]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x418]
push eax
lea eax, [ebp - 0x4e78]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x3fc]
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3f8]
mov eax, 1
call fcn.005601a0
jmp 0x55251d
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dd254
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x4e7c]
mov edx, 4
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x4e7c]
push eax
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dd254
call fcn.004d9be8
mov ecx, eax
mov eax, ebx
pop edx
call fcn.005525ec
mov byte [ebx + 0x315], al
cmp byte [ebx + 0x315], 0
jne 0x55251d
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x410]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x414]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x40c]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x418]
push eax
lea eax, [ebp - 0x4e80]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x3fc]
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3f8]
mov eax, 1
call fcn.005601a0
jmp 0x55251d
mov eax, dword [ebx + 0x2f0]
mov edx, dword [eax]
call dword [edx + 0xb4]
cmp al, 1
jne 0x55245e
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
call fcn.004d9d40
mov esi, eax
dec esi
cmp esi, 0
jl 0x5523d0
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
mov edx, esi
call fcn.004d9d70
call fcn.004d9be8
mov edx, eax
lea ecx, [ebp - 0x28]
mov eax, dword [0x663a80]
mov eax, dword [eax]
call fcn.005554b4
lea eax, [ebp - 0x28]
push eax
mov edx, dword [ebp - 0x28]
mov eax, 0x5525e8
call fcn.00404664
inc eax
push eax
mov eax, dword [ebp - 0x28]
call fcn.00404378
mov ecx, eax
mov eax, dword [ebp - 0x28]
pop edx
call fcn.00404580
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x28]
call fcn.00404488
jne 0x5523c6
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
mov eax, dword [eax + 0x20c]
mov edx, esi
call fcn.004d9d70
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x4e84]
mov edx, 4
mov edi, dword [eax]
call dword [edi + 0xc]
mov edx, dword [ebp - 0x4e84]
mov ecx, esi
mov eax, ebx
call fcn.005525ec
mov byte [ebx + 0x315], al
dec esi
cmp esi, 0xffffffff
jne 0x552321
cmp byte [ebx + 0x315], 0
jne 0x55251d
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dbd78
dec eax
jne 0x55251d
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x410]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x414]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x40c]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x418]
push eax
lea eax, [ebp - 0x4e88]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x3fc]
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3f8]
mov eax, 1
call fcn.005601a0
jmp 0x55251d
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dd254
mov eax, dword [eax + 8]
lea ecx, [ebp - 0x4e8c]
mov edx, 4
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp - 0x4e8c]
push eax
mov eax, dword [0x663a80]
mov eax, dword [eax]
mov eax, dword [eax + 0x2d0]
call fcn.004dd254
call fcn.004d9be8
mov ecx, eax
mov eax, ebx
pop edx
call fcn.005525ec
mov byte [ebx + 0x315], al
cmp byte [ebx + 0x315], 0
jne 0x55251d
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x410]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x414]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x40c]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov eax, dword [eax + 0x418]
push eax
lea eax, [ebp - 0x4e90]
push eax
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov ecx, dword [eax + 0x3fc]
mov eax, dword [0x663c7c]
mov eax, dword [eax]
mov edx, dword [eax + 0x3f8]
mov eax, 1
call fcn.005601a0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x55255c
lea eax, [ebp - 0x4e90]
mov edx, 0x11
call fcn.00404100
lea eax, [ebp - 0x28]
mov edx, 6
call fcn.00404100
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00404100
ret