Function at 0x10054440
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x29c
mov eax, dword [0x100ae8c8]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0xc]
push edi
push 0x64
lea eax, [ebp - 0x68]
push 0
push eax
mov dword [ebp - 0x29c], ebx
call sub.MSVCR100.dll_memset
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0xc
push ebx
push 0xbb8
push esi
push 0x10092e4c
push str._shop
push str.config
mov byte [esi], 0
call edi
cmp byte [esi], 0
jne 0x100544b0
push ebx
push 0x7530
push esi
push 0x10092e4c
push str._ShopArray
push str.config
call edi
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x100544b5
sub eax, edx
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
je 0x100544d8
mov ecx, dword [0x1019a7ac]
push 0
push 0
push 0x1009
push ecx
call edi
push 0x1009e920
push esi
call dword [sym.imp.MSVCR100.dll_strtok]
mov esi, eax
add esp, 8
mov dword [ebp - 0x294], esi
test esi, esi
je 0x100546f8
jmp 0x10054506
mov esi, dword [ebp - 0x294]
mov eax, esi
lea edx, [eax + 1]
jmp 0x10054510
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10054510
sub eax, edx
push 0x10094b74
push esi
mov dword [ebp - 0x298], eax
xor ebx, ebx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
je 0x100546cb
lea esi, [ebp - 0x1c8]
mov edi, edi
mov edx, esi
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x10054544
push 0x10094b74
push 0
inc ebx
add esi, 0x32
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
jne 0x10054540
cmp ebx, 5
je 0x10054574
cmp ebx, 6
jne 0x100546c5
mov edx, dword [0x1019a7ac]
push 0
push 0
push 0x1004
push edx
call edi
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x196]
push ecx
push eax
push 1
mov ecx, 0x1019a78c
call sub.mfc100.dll_Ordinal_7211
mov ecx, 0x10094b60
lea eax, [ebp - 0x164]
lea ecx, [ecx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100545d0
test dl, dl
je 0x100545cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100545d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x100545b0
xor eax, eax
jmp 0x100545d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x100545f0
mov edx, dword [0x1019a7ac]
push 0x10092e4c
push 1
push eax
push eax
push 0x1004
push edx
jmp 0x10054609
mov ecx, dword [0x1019a7ac]
lea eax, [ebp - 0x164]
push eax
push 1
push 0
push 0
push 0x1004
push ecx
call edi
dec eax
push eax
mov ecx, 0x1019a78c
call sub.mfc100.dll_Ordinal_12440
mov eax, dword [0x1019a7ac]
lea edx, [ebp - 0x132]
push edx
push 2
push 0
push 0
push 0x1004
push eax
call edi
dec eax
push eax
mov ecx, 0x1019a78c
call sub.mfc100.dll_Ordinal_12440
mov edx, dword [0x1019a7ac]
lea ecx, [ebp - 0x100]
push ecx
push 3
push 0
push 0
push 0x1004
push edx
call edi
dec eax
push eax
mov ecx, 0x1019a78c
call sub.mfc100.dll_Ordinal_12440
mov eax, dword [0x1019a7ac]
push 0
push 0
push 0x1004
push eax
call edi
lea ecx, [ebp - 0x1c8]
push ecx
lea esi, [eax - 1]
call dword [sym.imp.MSVCR100.dll_atoi]
add esp, 4
neg eax
sbb eax, eax
neg eax
push eax
push esi
mov ecx, 0x1019a78c
call sub.mfc100.dll_Ordinal_12170
cmp ebx, 6
jne 0x100546c5
mov eax, dword [0x1019a7ac]
lea edx, [ebp - 0xce]
push edx
push 4
push 0
push 0
push 0x1004
push eax
call edi
dec eax
push eax
mov ecx, 0x1019a78c
call sub.mfc100.dll_Ordinal_12440
mov esi, dword [ebp - 0x294]
mov ecx, dword [ebp - 0x298]
lea edx, [ecx + esi + 1]
push 0x1009e920
push edx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x294], eax
test eax, eax
jne 0x10054500
mov ebx, dword [ebp - 0x29c]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push ebx
push 0xc8
lea eax, [ebp - 0x290]
push eax
push 0x10094b60
push str.D18CEDIT5
push str.config
call esi
lea ecx, [ebp - 0x290]
push ecx
mov ecx, 0x1019a8e8
call sub.mfc100.dll_Ordinal_12868
push ebx
push 0xc8
lea edx, [ebp - 0x290]
push edx
push str.10000
push str.D18CEDIT8
push str.config
call esi
lea eax, [ebp - 0x290]
push eax
mov ecx, 0x1019aba0
call sub.mfc100.dll_Ordinal_12868
push ebx
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D18CHECK1
push str.config
call esi
mov edi, dword [sym.imp.MSVCR100.dll_atoi]
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push ebx
push 0x64
mov dword [0x1019a9f0], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D18CHECK2
push str.config
call esi
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push ebx
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D18CHECK3
push str.config
mov dword [0x1019aa88], eax
call esi
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push ebx
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D18CHECK4
push str.config
mov dword [0x1019a9ec], eax
call esi
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push ebx
mov dword [0x1019aa90], eax
push 0x64
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D18CHECK5
push str.config
call esi
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push ebx
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str._CHECK6
push str.config
mov dword [0x1019ac14], eax
call esi
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push ebx
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D18EDIT3
push str.config
mov dword [0x1019ac18], eax
call esi
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push ebx
push 0x64
mov dword [0x1019a9f4], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D18EDIT4
push str.config
call esi
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push ebx
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D18EDIT6
push str.config
mov dword [0x1019a9e8], eax
call esi
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push ebx
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D18EDIT7
push str.config
mov dword [0x1019aa84], eax
call esi
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push 0
mov ecx, 0x1019a6f8
mov dword [0x1019aa8c], eax
call sub.mfc100.dll_Ordinal_13219
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086746
mov esp, ebp
pop ebp
ret