Function at 0x10051430
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x250
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 0xc8
lea ecx, [ebp - 0xcc]
push 0
push ecx
mov dword [ebp - 0x234], eax
call sub.MSVCR100.dll_memset
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0xc
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2CHECK1
push str.config
call edi
mov ebx, dword [sym.imp.MSVCR100.dll_atoi]
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2CHECK3
push str.config
mov dword [0x10191854], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
push 0x64
mov dword [0x1019185c], eax
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2CHECK6
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2CHECK8
push str.config
mov dword [0x10191868], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2CHECK9
push str.config
mov dword [0x10191918], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
mov dword [0x10191928], eax
push 0x64
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2CHECK10
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2CHECK11
push str.config
mov dword [0x10191a08], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2CHECK12
push str.config
mov dword [0x10191a04], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
push 0x64
mov dword [0x10191bc8], eax
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2CHECK13
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2CHECK14
push str.config
mov dword [0x101919ec], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2CHECK15
push str.config
mov dword [0x10191930], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
mov dword [0x101919fc], eax
push 0x64
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2CHECK16
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2CHECK17
push str.config
mov dword [0x10191a00], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2CHEC19
push str.config
mov dword [0x1019192c], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
push 0x64
mov dword [0x101919f4], eax
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2CHECK20
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2CHECK22
push str.config
mov dword [0x101919f0], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2CHECK23
push str.config
mov dword [0x10192d24], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
push 0x64
mov dword [0x10191b30], eax
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2CHECK27
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2COMBO1
push str.config
mov dword [0x10191bcc], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push 0xbb8
mov ecx, 0x101917c0
mov dword [0x10191bc0], eax
call sub.mfc100.dll_Ordinal_4785
mov ecx, dword [0x10191bc0]
mov edx, dword [eax + 0x20]
push 0
push ecx
push 0x14e
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [0x1019188c]
push 0
push 0
push 0x14b
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [0x1019188c]
push 0x10094f88
push 0
push 0x143
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [0x1019188c]
push 0x10094f7c
push 0
push 0x143
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [0x1019188c]
push 0x10094f70
push 0
push 0x143
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [0x1019188c]
push 0x10094f64
push 0
push 0x143
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str._D2COMBO3
push str.config
call edi
lea eax, [ebp - 0xcc]
lea ecx, [eax + 1]
jmp 0x10051880
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x10051880
sub eax, ecx
je 0x100518a6
mov ecx, dword [0x1019188c]
lea eax, [ebp - 0xcc]
push eax
push 0
push 0x143
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2COMBO3
push str.config
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push 0xbba
mov ecx, 0x101917c0
mov dword [0x10191bc4], eax
call sub.mfc100.dll_Ordinal_4785
mov ecx, dword [0x10191bc4]
mov edx, dword [eax + 0x20]
push 0
push ecx
push 0x14e
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 0x64
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2COMBO4
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push 0xbbb
mov ecx, 0x101917c0
mov dword [0x101919e4], eax
call sub.mfc100.dll_Ordinal_4785
mov edx, dword [0x101919e4]
mov eax, dword [eax + 0x20]
push 0
push edx
push 0x14e
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2COMBO5
push str.config
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push 0xbbc
mov ecx, 0x101917c0
mov dword [0x101919e8], eax
call sub.mfc100.dll_Ordinal_4785
mov ecx, dword [0x101919e8]
mov edx, dword [eax + 0x20]
push 0
push ecx
push 0x14e
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 0x64
lea eax, [ebp - 0xcc]
push eax
push 0x10092e4c
push str.D2COMBO6
push str.config
call edi
lea eax, [ebp - 0xcc]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x100519c3
sub eax, ecx
cmp eax, 1
jbe 0x100519e2
lea ecx, [ebp - 0xcc]
push ecx
mov ecx, 0x10192d2c
call sub.mfc100.dll_Ordinal_12868
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094df0
push str.D2COMBO7
push str.config
call edi
push 0xbbe
mov ecx, 0x101917c0
call sub.mfc100.dll_Ordinal_4785
push 0
push 0
mov dword [ebp - 0x23c], eax
mov eax, dword [eax + 0x20]
push 0x14b
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [ebp - 0x23c]
mov eax, dword [edx + 0x20]
lea ecx, [ebp - 0xcc]
push ecx
push 0
push 0x143
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x23c]
mov edx, dword [ecx + 0x20]
push 0
push 0
push 0x14e
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push esi
push 0x64
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2EDIT1
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
mov dword [ebp - 0x238], eax
fild dword [ebp - 0x238]
push 0x10094b88
push str.D2EDIT2
push str.config
fstp dword [0x10191920]
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
mov dword [ebp - 0x238], eax
fild dword [ebp - 0x238]
push 0x10094b88
push str.D2EDIT3
push str.config
fstp dword [0x10191924]
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
mov dword [0x1019191c], eax
push 0x64
lea eax, [ebp - 0xcc]
push eax
push 0x10094b88
push str.D2EDIT5
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
mov ecx, 0x10191a0c
call sub.mfc100.dll_Ordinal_12868
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x1009fed0
push str.D2EDIT6
push str.config
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x1009c884
push str.D2EDIT7
push str.config
mov dword [0x10191dd8], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
push 0x64
mov dword [0x10191ddc], eax
lea eax, [ebp - 0xcc]
push eax
push 0x1009ca80
push str.D2EDIT8
push str.config
call edi
lea ecx, [ebp - 0xcc]
push ecx
call ebx
add esp, 4
push esi
push 0x64
lea edx, [ebp - 0xcc]
push edx
push 0x10094b88
push str.D2EDIT9
push str.config
mov dword [0x10191de0], eax
call edi
lea eax, [ebp - 0xcc]
push eax
call ebx
add esp, 4
push esi
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x10094b88
push str.D2EDIT10
push str.config
mov dword [0x10191de4], eax
call edi
lea edx, [ebp - 0xcc]
push edx
call ebx
add esp, 4
push esi
push 0xbb8
mov dword [0x10192d28], eax
mov eax, dword [ebp - 0x234]
push eax
push 0x10092e4c
push str.D2LIST1
push str.config
mov byte [eax], 0
call edi
mov eax, dword [0x10192cd0]
push 0
push 0
push 0x1009
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x234]
push 0x1009e9c8
push ecx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x230], eax
test eax, eax
je 0x10051cac
jmp 0x10051c60
mov edx, dword [0x10192cd0]
push 0
push 0
push 0x1004
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x230]
push 0
push 0
push 0
push 0
push ecx
push eax
push 1
mov ecx, 0x10192cb0
call sub.mfc100.dll_Ordinal_7211
push 0x1009e9c8
push 0
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x230], eax
test eax, eax
jne 0x10051c60
mov edx, dword [0x10192cd0]
push 0
push 0
push 0x1004
push edx
mov dword [ebp - 0x230], 0
call dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
jle 0x10051d07
mov eax, dword [ebp - 0x230]
push 1
push eax
mov ecx, 0x10192cb0
call sub.mfc100.dll_Ordinal_12170
mov ecx, dword [0x10192cd0]
inc dword [ebp - 0x230]
push 0
push 0
push 0x1004
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [ebp - 0x230], eax
jl 0x10051cd0
mov ecx, 0x101a20fc
call fcn.10001040
mov ecx, 0x101a20cc
call fcn.10001040
mov eax, dword [ebp - 0x234]
push esi
push 0xbb8
push eax
push 0x10092e4c
push 0x1009f3f8
push str.config
mov byte [eax], 0
call edi
mov edx, dword [ebp - 0x234]
push 0x1009e968
push edx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
je 0x10051d80
push eax
mov ecx, 0x101a20fc
call fcn.10001150
push 0
mov ecx, 0x101a20cc
call fcn.100011f0
push 0x1009e968
push 0
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
jne 0x10051d55
mov eax, dword [ebp - 0x234]
push esi
push 0xc8
push eax
push 0x10092e4c
push str.jiad
push str.config
mov byte [eax], 0
call edi
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x250], eax
xor eax, eax
mov dword [ebp - 0x230], 0xffffffff
cmp byte [0x100eaf28], al
jbe 0x10051dd4
mov byte [eax + 0x100eae88], 0
movzx ecx, byte [0x100eaf28]
inc eax
cmp eax, ecx
jl 0x10051dc1
mov edx, dword [ebp - 0x234]
mov eax, edx
lea ecx, [eax + 1]
mov dword [ebp - 0x238], ecx
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10051de5
sub eax, dword [ebp - 0x238]
mov ecx, eax
xor eax, eax
mov dword [ebp - 0x248], ecx
mov dword [ebp - 0x23c], eax
test ecx, ecx
jle 0x10051fa9
mov ecx, 0x100ea3e8
sub ecx, 0xf
mov dword [ebp - 0x24c], ecx
lea ecx, [ebp - 0xf1]
sub ecx, 0x100ea3e8
jmp 0x10051e36
mov edx, dword [ebp - 0x234]
cmp byte [edx + eax], 0x7c
jne 0x10051f96
inc dword [ebp - 0x230]
add dword [ebp - 0x24c], 0xf
sub ecx, 0xf
mov byte [edx + eax], 0
cmp byte [0x100eaf28], 0
mov dword [ebp - 0x238], ecx
mov dword [ebp - 0x244], 0xffffffff
mov dword [ebp - 0x240], 0
jbe 0x10051eb5
mov edx, dword [ebp - 0x250]
push edx
call ebx
mov ecx, dword [ebp - 0x240]
movzx edx, word [ecx*2 + 0x100ead48]
add esp, 4
cmp edx, eax
jne 0x10051e9d
mov eax, ecx
mov dword [ebp - 0x244], eax
mov eax, dword [ebp - 0x240]
movzx ecx, byte [0x100eaf28]
inc eax
mov dword [ebp - 0x240], eax
cmp eax, ecx
jl 0x10051e77
mov ecx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x230]
cmp ecx, eax
jne 0x10051ed1
mov byte [eax + 0x100eae88], 1
jmp 0x10051f7a
test ecx, ecx
js 0x10051f7a
movzx edx, word [eax*2 + 0x100ead48]
mov eax, dword [ebp - 0x24c]
mov dword [ebp - 0x250], edx
mov edx, dword [ebp - 0x238]
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x10051ef3
mov eax, dword [ebp - 0x244]
mov cx, word [eax*2 + 0x100ead48]
mov edx, dword [ebp - 0x230]
mov word [edx*2 + 0x100ead48], cx
mov edx, dword [ebp - 0x24c]
mov ecx, eax
shl ecx, 4
sub ecx, eax
lea eax, [ecx + 0x100ea3e8]
mov dword [ebp - 0x240], eax
sub edx, eax
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x10051f34
mov edx, dword [ebp - 0x230]
mov ax, word [ebp - 0x250]
mov ecx, dword [ebp - 0x244]
mov byte [edx + 0x100eae88], 1
mov edx, dword [ebp - 0x240]
mov word [ecx*2 + 0x100ead48], ax
lea eax, [ebp - 0x100]
mov ecx, eax
sub edx, ecx
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x10051f70
mov edx, dword [ebp - 0x234]
mov eax, dword [ebp - 0x23c]
lea ecx, [edx + eax + 1]
mov dword [ebp - 0x250], ecx
mov ecx, dword [ebp - 0x238]
inc eax
mov dword [ebp - 0x23c], eax
cmp eax, dword [ebp - 0x248]
jl 0x10051e30
mov eax, dword [ebp - 0x234]
push esi
push 0xbb8
push eax
push 0x10092e4c
push str.D51LIST1
push str.config
mov byte [eax], 0
call edi
mov ecx, 0x101a1e04
call fcn.10001040
mov ecx, 0x101a203c
call fcn.10001040
mov ecx, 0x101a2048
call fcn.10001040
mov edx, dword [ebp - 0x234]
push 0x1009e9c8
push edx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
je 0x10052038
push eax
mov ecx, 0x101a1e04
call fcn.10001150
push 0
mov ecx, 0x101a203c
call fcn.100011f0
push 0
mov ecx, 0x101a2048
call fcn.100011f0
push 0x1009e9c8
push 0
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
jne 0x10052001
mov eax, dword [ebp - 0x234]
push esi
push 0xbb8
push eax
push 0x10092e4c
push str.zhfz
mov byte [0x100b1f0d], 0
push str.config
mov byte [eax], 0
call edi
mov eax, dword [ebp - 0x234]
push 0x1009e968
push eax
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x230], eax
test eax, eax
je 0x100521df
mov esi, dword [ebp - 0x230]
mov eax, esi
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x10052090
sub eax, edx
push 0x1009e9c8
push esi
mov dword [ebp - 0x248], eax
xor edi, edi
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
je 0x100521b2
lea esi, [ebp - 0x22c]
mov edi, edi
mov edx, esi
sub edx, eax
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x100520c4
push 0x1009e9c8
push 0
inc edi
add esi, 0x32
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
test eax, eax
jne 0x100520c0
cmp edi, 6
jne 0x100521b2
movzx eax, byte [0x100b1f0d]
lea edx, [eax + eax*4]
lea ecx, [ebp - 0x22c]
lea edx, [edx*4 + 0x100b1b38]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10052106
lea ecx, [ebp - 0x1fa]
push ecx
call ebx
add esp, 4
test eax, eax
movzx eax, byte [0x100b1f0d]
setne dl
mov byte [eax + 0x100b1c00], dl
movzx eax, byte [0x100b1f0d]
lea edx, [eax + eax*4]
lea ecx, [ebp - 0x1c8]
lea edx, [edx*4 + 0x100b1c0a]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10052145
movzx eax, byte [0x100b1f0d]
lea edx, [eax + eax*4]
lea ecx, [ebp - 0x196]
lea edx, [edx*4 + 0x100b1cd2]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10052166
movzx eax, byte [0x100b1f0d]
lea edx, [eax + eax*4]
lea ecx, [ebp - 0x164]
lea edx, [edx*4 + 0x100b1d9a]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x10052187
lea ecx, [ebp - 0x132]
push ecx
call ebx
movzx edx, byte [0x100b1f0d]
add esp, 4
mov word [edx*2 + 0x100b1e62], ax
inc byte [0x100b1f0d]
mov eax, dword [ebp - 0x230]
mov ecx, dword [ebp - 0x248]
lea edx, [ecx + eax + 1]
push 0x1009e968
push edx
call dword [sym.imp.MSVCR100.dll_strtok]
add esp, 8
mov dword [ebp - 0x230], eax
test eax, eax
jne 0x10052083
mov eax, dword [0x101917e0]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
pop edi
pop esi
pop ebx
cmp eax, 1
jne 0x100521ff
push 0
mov ecx, 0x101917c0
call sub.mfc100.dll_Ordinal_13219
mov ecx, 0x101917c0
call fcn.1000b080
mov ecx, 0x101917c0
call fcn.1001a740
mov ecx, 0x101917c0
call fcn.1000b100
mov ecx, 0x101917c0
call fcn.1000b000
mov ecx, 0x101917c0
call fcn.1000baa0
mov ecx, 0x101917c0
call fcn.1000baa0
mov ecx, 0x101917c0
call fcn.1000b650
mov ecx, 0x101917c0
call fcn.1000b8c0
mov ecx, 0x101917c0
call fcn.1001a740
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10086786
mov esp, ebp
pop ebp
ret