Function at 0x100523f0
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1bc
mov eax, dword [0x100ae8c8]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push 0x64
lea ecx, [ebp - 0x68]
push 0
push ecx
mov dword [ebp - 0x1ac], eax
call sub.MSVCR100.dll_memset
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0xc
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3CHECK1
push str.config
call ebx
mov edi, dword [sym.imp.MSVCR100.dll_atoi]
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3CHECK2
push str.config
mov dword [0x10192e6c], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
push 0x64
mov dword [0x10192e70], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3CHECK3
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3CHECK4
push str.config
mov dword [0x10192e88], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3CHECK5
push str.config
mov dword [0x10192ea4], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
mov dword [0x10192ea0], eax
push 0x64
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3CHECK6
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3CHECK7
push str.config
mov dword [0x10192e9c], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3CHECK8
push str.config
mov dword [0x10192e8c], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
push 0x64
mov dword [0x10192e90], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3CHECK9
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3CHECK10
push str.config
mov dword [0x10192e94], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3CHECK11
push str.config
mov dword [0x10192e98], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
mov dword [0x101931ac], eax
push 0x64
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3CHECK12
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3CHECK13
push str.config
mov dword [0x10192fd0], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3CHECK14
push str.config
mov dword [0x10192fd4], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
push 0x64
mov dword [0x10192fd8], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3CHECK15
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3CHECK16
push str.config
mov dword [0x10192fdc], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3CHECK18
push str.config
mov dword [0x101931b0], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
push 0x64
mov dword [0x101938f4], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3COMBO1
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3COMBO2
push str.config
mov dword [0x10192e78], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3COMBO3
push str.config
mov dword [0x10192e80], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
push 0x64
mov dword [0x10192e7c], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3COMBO4
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0x68]
push edx
push 0x10094b60
push str.D3COMBO5
push str.config
mov dword [0x10192e84], eax
call ebx
lea eax, [ebp - 0x68]
push eax
call edi
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push 0x10094b60
push str.D3EDIT1
push str.config
mov dword [0x10192fcc], eax
call ebx
lea edx, [ebp - 0x68]
push edx
call edi
add esp, 4
push esi
push 0x64
mov dword [0x10192e74], eax
lea eax, [ebp - 0x68]
push eax
push 0x10094b60
push str.D3EDIT2
push str.config
call ebx
lea ecx, [ebp - 0x68]
push ecx
call edi
add esp, 4
push esi
push 0xbb8
mov dword [0x10192ea8], eax
mov eax, dword [ebp - 0x1ac]
push eax
push 0x10092e4c
push str.D3LIST1
push str.config
mov byte [eax], 0
call ebx
mov edx, dword [0x10192ecc]
push 0
push 0
push 0x184
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x1ac]
push 0x1009e980
push eax
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
je 0x10052839
mov edi, edi
mov ecx, dword [0x10192ecc]
push eax
push 0
push 0x180
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0x1009e980
push 0
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
jne 0x10052810
mov eax, dword [ebp - 0x1ac]
push esi
push 0xbb8
push eax
push 0x10092e4c
push str._huang
push str.config
mov byte [eax], 0
call ebx
mov edx, dword [ebp - 0x1ac]
push 0x1009e920
push edx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x1b4], eax
test eax, eax
je 0x100529a5
jmp 0x10052886
mov eax, dword [ebp - 0x1b4]
mov ecx, eax
lea edx, [ecx + 1]
mov dword [ebp - 0x1b0], edx
mov dl, byte [ecx]
inc ecx
test dl, dl
jne 0x10052891
sub ecx, dword [ebp - 0x1b0]
push 0x10094b74
push eax
mov dword [ebp - 0x1bc], ecx
mov dword [ebp - 0x1b0], 0
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
je 0x10052978
lea ecx, [ebp - 0x1a8]
mov dword [ebp - 0x1b8], ecx
mov edx, dword [ebp - 0x1b8]
sub edx, eax
lea esp, [esp]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x100528e0
inc dword [ebp - 0x1b0]
add dword [ebp - 0x1b8], 0x50
push 0x10094b74
push 0
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
jne 0x100528d1
cmp dword [ebp - 0x1b0], 4
jne 0x10052978
lea edx, [ebp - 0x108]
push edx
lea eax, [ebp - 0x1a8]
push 1
push eax
call edi
add esp, 4
push eax
mov ecx, 0x10192fe0
call sub.mfc100.dll_Ordinal_12440
lea ecx, [ebp - 0xb8]
push ecx
lea edx, [ebp - 0x1a8]
push 2
push edx
call edi
add esp, 4
push eax
mov ecx, 0x10192fe0
call sub.mfc100.dll_Ordinal_12440
lea eax, [ebp - 0x158]
push eax
call edi
add esp, 4
push eax
lea ecx, [ebp - 0x1a8]
push ecx
call edi
add esp, 4
push eax
mov ecx, 0x10192fe0
call sub.mfc100.dll_Ordinal_12170
mov edx, dword [ebp - 0x1b4]
mov eax, dword [ebp - 0x1bc]
lea ecx, [eax + edx + 1]
push 0x1009e920
push ecx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x1b4], eax
test eax, eax
jne 0x10052880
mov eax, dword [ebp - 0x1ac]
push esi
push 0xbb8
push eax
push 0x10092e4c
push str.D3LIST2
push str.config
mov byte [eax], 0
call ebx
mov edx, dword [ebp - 0x1ac]
mov ebx, dword [sym.imp.MSVCR100.dll_strtok]
push 0x1009e980
push edx
call ebx
add esp, 8
xor esi, esi
test eax, eax
je 0x10052a06
push eax
call edi
add esp, 4
push eax
push esi
mov ecx, 0x10193e6c
call sub.mfc100.dll_Ordinal_12170
push 0x1009e980
push 0
call ebx
add esp, 8
inc esi
test eax, eax
jne 0x100529e3
mov eax, dword [0x10192df8]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
pop edi
pop esi
pop ebx
cmp eax, 1
jne 0x10052a26
push 0
mov ecx, 0x10192dd8
call sub.mfc100.dll_Ordinal_13219
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086746
mov esp, ebp
pop ebp
ret