Function at 0x10015a10
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1004f870
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x10068470]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea eax, [ebp - 0x40]
push str.SettingsVisuals.ini
push eax
call fcn.1001e120
add esp, 8
cmp dword [eax + 0x14], 0x10
mov dword [ebp - 4], 0
jb 0x10015a5b
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
call fcn.10004b10
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 2
cmp edx, 0x10
jb 0x10015aae
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10015aa4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10015dc2
push edx
push ecx
call fcn.1002eda5
add esp, 8
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
push 0x200
cmovae edi, dword [ebp - 0x28]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.1002ed67
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 4
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Enable
push str.Crosshair
call ebx
push esi
call fcn.1003a514
test eax, eax
lea edi, [ebp - 0x28]
push 0x200
setne byte [0x10069b50]
cmp dword [ebp - 0x14], 0x10
cmovae edi, dword [ebp - 0x28]
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Dot
push str.Crosshair
call ebx
push esi
call fcn.1003a514
test eax, eax
lea edi, [ebp - 0x28]
push 0x200
setne byte [0x10069b51]
cmp dword [ebp - 0x14], 0x10
cmovae edi, dword [ebp - 0x28]
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Size
push str.Crosshair
call ebx
push esi
call fcn.1003a514
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
push 0x200
cmovae edi, dword [ebp - 0x28]
mov dword [0x10069b3c], eax
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Gap
push str.Crosshair
call ebx
push esi
call fcn.1003a514
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
push 0x200
cmovae edi, dword [ebp - 0x28]
mov dword [0x10069b34], eax
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Thickness
push str.Crosshair
call ebx
push esi
call fcn.1003a514
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
push 0x200
cmovae edi, dword [ebp - 0x28]
mov dword [0x10069b38], eax
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Dynamic
push str.Crosshair
call ebx
push esi
call fcn.1003a514
test eax, eax
lea edi, [ebp - 0x28]
push 0x200
setne byte [0x10069b53]
cmp dword [ebp - 0x14], 0x10
cmovae edi, dword [ebp - 0x28]
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Dynamic.Scale
push str.Crosshair
call ebx
push esi
call fcn.10039bc1
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
push 0x200
cmovae edi, dword [ebp - 0x28]
fstp dword [0x10069b30]
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Outline
push str.Crosshair
call ebx
push esi
call fcn.1003a514
test eax, eax
lea edi, [ebp - 0x28]
push 0x200
setne byte [0x10069b52]
cmp dword [ebp - 0x14], 0x10
cmovae edi, dword [ebp - 0x28]
call fcn.1002ed67
add esp, 8
mov esi, eax
push edi
push 0xc8
push esi
push 0x10050434
push str.Crosshair.Snipers
push str.Crosshair
call ebx
push esi
call fcn.1003a514
test eax, eax
setne byte [0x10069b54]
cmp dword [ebp - 0x14], 0x10
lea esi, [ebp - 0x28]
push 0x200
cmovae esi, dword [ebp - 0x28]
call fcn.1002ed67
add esp, 8
mov edi, eax
push esi
push 0xc8
push edi
push 0x10050434
push str.Crosshair.Color
push str.Crosshair
call ebx
push 0x10050f98
push edi
mov dword [0x10069b2c], edi
call fcn.10036955
add esp, 8
mov esi, 0x10069b40
nop dword [eax + eax]
test eax, eax
je 0x10015d76
push eax
call fcn.1003a514
push 0x10050f98
push 0
mov dword [esi], eax
call fcn.10036955
add esi, 4
add esp, 0xc
cmp esi, 0x10069b50
jle 0x10015d50
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x10015da6
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10015d9c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10015dc7
push edx
push ecx
call fcn.1002eda5
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002edb3
mov esp, ebp
pop ebp
ret
call fcn.10034fdd
call fcn.10034fdd
int3