Function at 0x100011b8
Capabilities:
Get common file path
Query or enumerate registry value
Read .ini file

Disassembly:
sub esp, 0x208
push 0x10064140
push 0x800
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
lea eax, [esp + 0x204]
push eax
push 0xf003f
push 0
push str.SoftwareToMMTi_Systems3D_Analyze_
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x100011fa
mov byte [0x10063140], 0
jmp 0x1000124a
mov dword [esp + 0x100], 0xff
lea edx, [esp]
xor ecx, ecx
lea eax, [esp + 0x100]
push eax
push edx
push ecx
push ecx
push str.Current_Directory
push dword [esp + 0x218]
call dword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
je 0x10001234
mov byte [0x10063140], 0
jmp 0x1000124a
lea eax, [esp]
push eax
push 0x10056290
push 0x10063140
call fcn.1004665a
add esp, 0xc
push 0x10063140
push 0x10063940
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.config_DX.ini
push 0x10063140
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0x10056380
push 0x10063140
call fcn.1004670e
add esp, 8
test eax, eax
je 0x10002168
push eax
call fcn.1004676d
pop ecx
push 0x10063140
push 0
push str.WireFrameMode
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657a0], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.WireFrameMode
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.DisableDrawing
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657b4], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.DisableDrawing
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.FrameCounter
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657b8], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.FrameCounter
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceWindowed
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065700], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceWindowed
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceSoftwareTnL
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657bc], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceSoftwareTnL
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.GMDfix
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006579c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.GMDfix
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.PerfLogging
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657b0], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.PerfLogging
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.DisableTextures
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657ac], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.DisableTextures
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceSmallTexture
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065798], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceSmallTexture
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.EmulateHardwareTnL
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065794], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulateHardwareTnL
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.DisableStateSwitches
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065790], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.DisableStateSwitches
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.EmulateCubeMaps
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006578c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulateCubeMaps
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.RubyNV40
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065784], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.RubyNV40
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.RubyATi
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065788], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.RubyATi
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.EmulatePS
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065780], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulatePS
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.EmulateBumpMapping
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006577c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulateBumpMapping
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.CountDown
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10060120], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.CountDown
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [0x10060120]
test eax, eax
jg 0x100017aa
mov dword [0x10060120], 1
push 0x10063140
push 0
push str.EmulateMaxTxt
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065778], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulateMaxTxt
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.EmulateDX81
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065774], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulateDX81
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.DebugLog
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657c0], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.DebugLog
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceVsync
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065768], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceVsync
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Force100hz
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006576c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Force100hz
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceREF
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065764], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceREF
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Force16zb1
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065754], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Force16zb1
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [0x10065754]
test eax, eax
jne 0x10001a13
push 0x10063140
push 0
push str.Force16zb2
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065758], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Force16zb2
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Force32zb3
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006575c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Force32zb3
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [0x1006575c]
test eax, eax
jne 0x10001ab4
push 0x10063140
push 0
push str.Force32zb4
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065760], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Force32zb4
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Forcezb
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006574c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Forcezb
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [0x1006574c]
test eax, eax
jne 0x10001b55
push 0x10063140
push 0
push str.Forcewb
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065750], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Forcewb
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.DisableLighting
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065748], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.DisableLighting
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceShader11
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065740], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceShader11
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceShader14
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065744], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceShader14
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.DisableTwoSidedStencil
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006573c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.DisableTwoSidedStencil
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.EmulateDXT
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065738], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.EmulateDXT
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.SaveShaders
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100657a8], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.SaveShaders
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.SkipShader11
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006572c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.SkipShader11
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.SkipShader14
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065730], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.SkipShader14
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.SkipShader20
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065734], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.SkipShader20
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ppShader
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065724], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ppShader
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ppShader2
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065728], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ppShader2
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
mov eax, dword [0x10065724]
test eax, eax
je 0x10001eb5
mov eax, dword [0x10065728]
test eax, eax
je 0x10001eb5
mov dword [0x10065724], 0
push 0x10063140
push 0
push str.VoodooFlicker
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065720], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.VoodooFlicker
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.KyroZBStencil
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006571c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.KyroZBStencil
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Color1
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065704], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Color1
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Color2
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065708], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Color2
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ForceAniso
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100656fc], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ForceAniso
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ModTextures
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065718], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ModTextures
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.ModShaders
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x1006570c], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.ModShaders
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Vendor
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065710], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Vendor
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push 0x10063140
push 0
push str.Device
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x10065714], eax
lea edx, [esp + 0x104]
push 0xa
push edx
push eax
call fcn.10050554
add esp, 0xc
lea eax, [esp + 0x104]
push 0x10063140
push eax
push str.Device
push str.3DAnalyze
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
add esp, 0x208
ret
push 0x10064140
push 0x10063140
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x10064140
push 0x10063940
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push str.config_DX.ini
push 0x10063140
call dword [sym.imp.KERNEL32.dll_lstrcatA]
jmp 0x1000128b