Function at 0x1002b710
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a0c1b
mov eax, dword fs:[0]
push eax
sub esp, 0x2dc
mov eax, dword [0x100b9040]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov al, byte [0x100a4b2f]
mov byte [ebp - 0x114], al
push 0x103
push 0
lea ecx, [ebp - 0x113]
push ecx
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea edx, [ebp - 0x114]
push edx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
nop
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x240]
call fcn.10013290
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x240]
push ecx
call fcn.1002bf30
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x240]
call fcn.100128f0
nop
movzx edx, byte [ebp - 0x12d]
push edx
push 0x100a5964
lea ecx, [ebp - 0x270]
call fcn.1002c0a0
mov ecx, eax
call fcn.10009930
mov dword [ebp - 0x1cc], eax
call fcn.1002d3d0
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x1cc]
push eax
mov ecx, dword [ebp - 0x1d0]
push ecx
lea edx, [ebp - 0x12c]
push edx
call fcn.1002d3e0
add esp, 0xc
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x148], eax
movzx eax, byte [ebp - 0x12e]
push eax
push 0x100a5970
lea ecx, [ebp - 0x218]
call fcn.10017ee0
mov ecx, eax
call fcn.1000a950
mov dword [ebp - 0x14c], eax
movzx ecx, byte [ebp - 0x12f]
push ecx
push str.DXType
lea ecx, [ebp - 0x220]
call fcn.1002c1f0
mov ecx, eax
call fcn.1000a950
mov dword [ebp - 0x150], eax
mov edx, dword [ebp - 0x148]
push edx
push 0
mov eax, dword [ebp - 0x14c]
push eax
mov ecx, dword [ebp - 0x150]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccb4], eax
cmp dword [0x100bccb4], 0
jge 0x1002b88e
mov dword [0x100bccb4], 0
cmp dword [0x100bccb4], 1
jle 0x1002b8a1
mov dword [0x100bccb4], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x154], eax
movzx edx, byte [ebp - 0x130]
push edx
push 0x100a5980
lea ecx, [ebp - 0x264]
call fcn.1002c370
mov ecx, eax
call fcn.10001d50
mov dword [ebp - 0x158], eax
movzx eax, byte [ebp - 0x131]
push eax
push 0x100a598c
lea ecx, [ebp - 0x1f0]
call fcn.1002c2d0
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x15c], eax
mov ecx, dword [ebp - 0x154]
push ecx
push 0
mov edx, dword [ebp - 0x158]
push edx
mov eax, dword [ebp - 0x15c]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccb8], eax
cmp dword [0x100bccb8], 0
jge 0x1002b931
mov dword [0x100bccb8], 0
cmp dword [0x100bccb8], 1
jle 0x1002b944
mov dword [0x100bccb8], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x160], eax
movzx ecx, byte [ebp - 0x132]
push ecx
push 0x100a5994
lea ecx, [ebp - 0x2a8]
call fcn.10003150
mov ecx, eax
call fcn.10001ef0
mov dword [ebp - 0x164], eax
movzx edx, byte [ebp - 0x133]
push edx
push 0x100a59a4
lea ecx, [ebp - 0x210]
call fcn.1002c4a0
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x160]
push eax
push 1
mov ecx, dword [ebp - 0x164]
push ecx
mov edx, dword [ebp - 0x168]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccbc], eax
cmp dword [0x100bccbc], 0
jge 0x1002b9d4
mov dword [0x100bccbc], 0
cmp dword [0x100bccbc], 1
jle 0x1002b9e7
mov dword [0x100bccbc], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x16c], eax
movzx eax, byte [ebp - 0x134]
push eax
push 0x100a59ac
lea ecx, [ebp - 0x288]
call fcn.1002c5e0
mov ecx, eax
call fcn.10009930
mov dword [ebp - 0x170], eax
movzx ecx, byte [ebp - 0x135]
push ecx
push 0x100a59b8
lea ecx, [ebp - 0x1d8]
call fcn.1002c540
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x174], eax
mov edx, dword [ebp - 0x16c]
push edx
push 1
mov eax, dword [ebp - 0x170]
push eax
mov ecx, dword [ebp - 0x174]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccc4], eax
cmp dword [0x100bccc4], 0
jge 0x1002ba77
mov dword [0x100bccc4], 0
cmp dword [0x100bccc4], 1
jle 0x1002ba8a
mov dword [0x100bccc4], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x178], eax
movzx edx, byte [ebp - 0x136]
push edx
push 0x100a59c0
lea ecx, [ebp - 0x2b8]
call fcn.1002c7d0
mov ecx, eax
call fcn.10009c80
mov dword [ebp - 0x17c], eax
movzx eax, byte [ebp - 0x137]
push eax
push 0x100a59d0
lea ecx, [ebp - 0x1e0]
call fcn.1002c730
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x180], eax
mov ecx, dword [ebp - 0x178]
push ecx
push 1
mov edx, dword [ebp - 0x17c]
push edx
mov eax, dword [ebp - 0x180]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccc8], eax
cmp dword [0x100bccc8], 0
jge 0x1002bb1a
mov dword [0x100bccc8], 0
cmp dword [0x100bccc8], 1
jle 0x1002bb2d
mov dword [0x100bccc8], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x184], eax
movzx ecx, byte [ebp - 0x138]
push ecx
push 0x100a59d8
lea ecx, [ebp - 0x24c]
call fcn.1002ca20
mov ecx, eax
call fcn.10009310
mov dword [ebp - 0x188], eax
movzx edx, byte [ebp - 0x139]
push edx
push 0x100a59e4
lea ecx, [ebp - 0x1e8]
call fcn.1002c980
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x184]
push eax
push 0
mov ecx, dword [ebp - 0x188]
push ecx
mov edx, dword [ebp - 0x18c]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccc0], eax
cmp dword [0x100bccc0], 0
jge 0x1002bbbd
mov dword [0x100bccc0], 0
cmp dword [0x100bccc0], 0x18
jle 0x1002bbd0
mov dword [0x100bccc0], 0x18
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x190], eax
movzx eax, byte [ebp - 0x13a]
push eax
push 0x100a59ec
lea ecx, [ebp - 0x298]
call fcn.1002cbd0
mov ecx, eax
call fcn.10002090
mov dword [ebp - 0x194], eax
movzx ecx, byte [ebp - 0x13b]
push ecx
push 0x100a59f8
lea ecx, [ebp - 0x208]
call fcn.1002cb30
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x198], eax
mov edx, dword [ebp - 0x190]
push edx
push 0
mov eax, dword [ebp - 0x194]
push eax
mov ecx, dword [ebp - 0x198]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bcccc], eax
cmp dword [0x100bcccc], 0
jge 0x1002bc60
mov dword [0x100bcccc], 0
cmp dword [0x100bcccc], 0x14
jle 0x1002bc73
mov dword [0x100bcccc], 0x14
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x19c], eax
movzx edx, byte [ebp - 0x13c]
push edx
push 0x100a5a00
lea ecx, [ebp - 0x27c]
call fcn.1000bee0
mov ecx, eax
call fcn.10009930
mov dword [ebp - 0x1a0], eax
movzx eax, byte [ebp - 0x13d]
push eax
push 0x100a5a0c
lea ecx, [ebp - 0x228]
call fcn.1002cd40
mov ecx, eax
call fcn.1000a950
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x19c]
push ecx
push 1
mov edx, dword [ebp - 0x1a0]
push edx
mov eax, dword [ebp - 0x1a4]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccd0], eax
cmp dword [0x100bccd0], 0
jge 0x1002bd03
mov dword [0x100bccd0], 0
cmp dword [0x100bccd0], 1
jle 0x1002bd16
mov dword [0x100bccd0], 0
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x1a8], eax
movzx ecx, byte [ebp - 0x13e]
push ecx
push 0x100a5a14
lea ecx, [ebp - 0x1f8]
call fcn.1002cfd0
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x1ac], eax
movzx edx, byte [ebp - 0x13f]
push edx
push 0x100a5a1c
lea ecx, [ebp - 0x2c8]
call fcn.1002ce20
mov ecx, eax
call fcn.10009c80
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x1a8]
push eax
push 0
mov ecx, dword [ebp - 0x1ac]
push ecx
mov edx, dword [ebp - 0x1b0]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccd4], eax
cmp dword [0x100bccd4], 0
jge 0x1002bda6
mov dword [0x100bccd4], 0
cmp dword [0x100bccd4], 1
jle 0x1002bdb9
mov dword [0x100bccd4], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x1b4], eax
movzx eax, byte [ebp - 0x140]
push eax
push 0x100a5a2c
lea ecx, [ebp - 0x258]
call fcn.1002d220
mov ecx, eax
call fcn.10009310
mov dword [ebp - 0x1b8], eax
movzx ecx, byte [ebp - 0x141]
push ecx
push 0x100a5a38
lea ecx, [ebp - 0x2d8]
call fcn.1002d070
mov ecx, eax
call fcn.10009c80
mov dword [ebp - 0x1bc], eax
mov edx, dword [ebp - 0x1b4]
push edx
push 0
mov eax, dword [ebp - 0x1b8]
push eax
mov ecx, dword [ebp - 0x1bc]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccd8], eax
cmp dword [0x100bccd8], 0
jge 0x1002be49
mov dword [0x100bccd8], 0
cmp dword [0x100bccd8], 1
jle 0x1002be5c
mov dword [0x100bccd8], 1
lea ecx, [ebp - 0x12c]
call fcn.10011d10
mov dword [ebp - 0x1c0], eax
movzx edx, byte [ebp - 0x142]
push edx
push 0x100a5a48
lea ecx, [ebp - 0x200]
call fcn.1002d330
mov ecx, eax
call fcn.10009280
mov dword [ebp - 0x1c4], eax
movzx eax, byte [ebp - 0x143]
push eax
push 0x100a5a50
lea ecx, [ebp - 0x2e8]
call fcn.1000c530
mov ecx, eax
call fcn.10009c80
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1c0]
push ecx
push 0
mov edx, dword [ebp - 0x1c4]
push edx
mov eax, dword [ebp - 0x1c8]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x100bccdc], eax
cmp dword [0x100bccdc], 0
jge 0x1002beec
mov dword [0x100bccdc], 0
cmp dword [0x100bccdc], 1
jle 0x1002beff
mov dword [0x100bccdc], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x12c]
call fcn.100128f0
nop
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1009dd14
mov esp, ebp
pop ebp
ret