Function at 0x40d0e5
Capabilities:
Get common file path
Get startup folder
Read .ini file

Disassembly:
mov eax, 0x43df02
call fcn.0041e498
sub esp, 0x108
push ebx
push esi
mov ebx, ecx
push edi
mov dword [ebp - 0x14], ebx
call fcn.00403987
and dword [ebp - 4], 0
lea ecx, [ebx + 0x318]
call fcn.00403987
lea ecx, [ebx + 0x368]
call fcn.0040397c
lea ecx, [ebx + 0x36c]
mov byte [ebp - 4], 1
call fcn.0040397c
lea ecx, [ebx + 0x370]
mov byte [ebp - 4], 2
call fcn.0040397c
push 0x41
mov esi, 0x4551d4
pop ecx
xor eax, eax
push esi
push eax
mov edi, esi
push eax
push 0x8005
push eax
rep stosd dword es:[edi], eax
mov byte [ebp - 4], 3
mov dword [ebx], 0x44248c
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
mov edi, esi
or ecx, 0xffffffff
xor eax, eax
push 5
repne scasb al, byte es:[edi]
dec edi
pop ecx
mov esi, 0x44f4c0
push 0x44f4d4
rep movsd dword es:[edi], dword [esi]
mov esi, 0x4551d4
push esi
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebx + 0x374]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
push 1
lea eax, [ebp - 0x114]
pop edi
mov dword [ebx + 0xc8], 7
push esi
push 0x64
push eax
push 0x44f4e0
push 0x44f4e4
push 0x44f4ec
mov dword [0x4552d8], edi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
cmp eax, edi
lea ecx, [ebx + 0x3c8]
mov dword [ecx], eax
je 0x40d1fc
test eax, eax
je 0x40d1fc
push edi
push 0x44f4f4
push 0x44f4fc
push ecx
mov ecx, ebx
call fcn.0040e200
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov esi, 0x4551d4
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44f504
push 0x44f508
push 0x44f514
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
cmp eax, 1
lea ecx, [ebx + 0x3cc]
mov dword [ecx], eax
je 0x40d254
test eax, eax
je 0x40d254
push 0
push 0x44f51c
push 0x44f528
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44f530
push 0x44f534
push 0x44f540
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
cmp eax, 1
lea ecx, [ebx + 0x3d0]
mov dword [ecx], eax
je 0x40d2a1
test eax, eax
je 0x40d2a1
push 0
push 0x44f548
push 0x44f554
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0xff
push eax
push 0x4552dc
push 0x44f55c
push 0x44f568
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edi, [ebp - 0x114]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x40d2f4
push 0xff0000
push 0x44f574
lea eax, [ebx + 0xcc]
push 0x44f580
push eax
mov ecx, ebx
call fcn.0040e242
jmp 0x40d307
lea eax, [ebp - 0x114]
push eax
call fcn.0041ecb0
pop ecx
mov dword [ebx + 0xcc], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push esi
push 5
push 0x44f58c
push 0x44f598
call edi
lea ecx, [ebx + 0xd4]
cmp eax, 1
mov dword [ecx], eax
jl 0x40d32e
cmp eax, 0xa
jle 0x40d342
push 5
push 0x44f5a4
push 0x44f5b0
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
push 1
push 0x44f5bc
push 0x44f5c8
call edi
lea ecx, [ebx + 0xdc]
cmp al, 1
mov byte [ecx], al
je 0x40d375
cmp al, 2
je 0x40d375
push 1
push 0x44f5d4
push 0x44f5e0
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 0
push 0x44f5ec
push 0x44f5f8
call edi
lea ecx, [ebx + 0xe0]
cmp eax, 1
mov dword [ecx], eax
je 0x40d3ae
cmp eax, 2
je 0x40d3ae
test eax, eax
je 0x40d3ae
push 0
push 0x44f604
push 0x44f610
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
push 2
push 0x44f61c
push 0x44f628
call edi
lea ecx, [ebx + 0xe8]
cmp al, 1
mov byte [ecx], al
je 0x40d3e1
cmp al, 2
je 0x40d3e1
push 2
push 0x44f634
push 0x44f640
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 0
push 0x44f64c
push 0x44f65c
call edi
lea ecx, [ebx + 0xe9]
cmp al, 1
mov byte [ecx], al
je 0x40d414
test al, al
je 0x40d414
push 0
push 0x44f668
push 0x44f678
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 0x258
push 0x44f684
push 0x44f690
call edi
lea ecx, [ebx + 0xec]
cmp eax, 0xc8
mov dword [ecx], eax
jl 0x40d43c
cmp eax, 0x7d0
jle 0x40d453
push 0x258
push 0x44f69c
push 0x44f6a8
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
push 0x12c
push 0x44f6b4
push 0x44f6c0
call edi
lea ecx, [ebx + 0xf4]
cmp eax, 0x64
mov dword [ecx], eax
jl 0x40d479
cmp eax, 0x5dc
jle 0x40d490
push 0x12c
push 0x44f6cc
push 0x44f6d8
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
push 0x1e0
push 0x44f6e4
push 0x44f6f0
call edi
lea ecx, [ebx + 0xe4]
test ax, 0x1e0
mov dword [ecx], eax
jne 0x40d4c7
push 0x1e0
push 0x44f6fc
push 0x44f708
push ecx
mov ecx, ebx
call fcn.0040e200
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
and dword [ebx + 0x3c4], 0
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x4552e0
push 0x44f714
push 0x44f724
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
cmp eax, 1
lea ecx, [ebx + 0x3d4]
mov dword [ecx], eax
je 0x40d521
test eax, eax
je 0x40d521
push 0
push 0x44f730
push 0x44f740
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x4552e4
push 0x44f74c
push 0x44f75c
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
cmp eax, 1
lea ecx, [ebx + 0x3d8]
mov dword [ecx], eax
je 0x40d56e
test eax, eax
je 0x40d56e
push 0
push 0x44f768
push 0x44f778
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x4552e8
push 0x44f784
push 0x44f794
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x3dc], eax
lea edi, [ebp - 0x114]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x40d5cc
push 1
push 0x44f7a0
lea eax, [ebx + 0x3dc]
push 0x44f7b0
push eax
mov ecx, ebx
call fcn.0040e200
mov ecx, dword [ebx + 0xe4]
mov eax, 0x1e0
mov edx, ecx
and edx, eax
cmp edx, eax
jne 0x40d5e5
inc dword [ebx + 0x3c4]
mov eax, ecx
and eax, 6
cmp al, 6
jne 0x40d5f4
inc dword [ebx + 0x3c4]
mov eax, ecx
and eax, 1
cmp al, 1
jne 0x40d603
inc dword [ebx + 0x3c4]
and ecx, 8
cmp cl, 8
jne 0x40d611
inc dword [ebx + 0x3c4]
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44f7bc
push 0x44f7c0
push 0x44f7cc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x364], eax
lea ecx, [ebx + 0x364]
test eax, eax
jne 0x40d669
push esi
push 0x44f7d8
push str.PenTimes
push 0x44f7e8
mov dword [ecx], 0x3c
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
push esi
push 2
push 0x44f7f4
push 0x44f800
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
lea ecx, [ebx + 0xeb]
cmp al, 1
mov byte [ecx], al
je 0x40d6a4
cmp al, 2
je 0x40d6a4
cmp al, 4
je 0x40d6a4
push 2
push 0x44f80c
push 0x44f818
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
lea eax, [ebp - 0x114]
push 0xff
push eax
push 0x4552ec
push 0x44f824
push 0x44f830
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edi, [ebp - 0x114]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x40d6f7
push 0xc0c0c0
push 0x44f838
lea eax, [ebx + 0xf8]
push 0x44f844
push eax
mov ecx, ebx
call fcn.0040e242
jmp 0x40d70a
lea eax, [ebp - 0x114]
push eax
call fcn.0041ecb0
pop ecx
mov dword [ebx + 0xf8], eax
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push esi
push 2
push 0x44f84c
push 0x44f858
call edi
lea ecx, [ebx + 0xfc]
cmp al, 1
mov byte [ecx], al
je 0x40d747
cmp al, 2
je 0x40d747
cmp al, 4
je 0x40d747
push 2
push 0x44f860
push 0x44f86c
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 0
push 0x44f874
push 0x44f880
call edi
lea ecx, [ebx + 0xfd]
cmp al, 1
mov byte [ecx], al
je 0x40d77a
test al, al
je 0x40d77a
push 0
push 0x44f888
push 0x44f894
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 0xffffffffffffffff
push str.InitX
push 0x44f8a4
call edi
push esi
push 0xffffffffffffffff
push str.InitY
push 0x44f8b4
mov dword [ebx + 0x100], eax
call edi
mov ecx, dword [ebx + 0x100]
mov dword [ebx + 0x104], eax
cmp ecx, dword [ebx + 0x374]
jl 0x40d7ca
cmp eax, dword [ebx + 0x378]
jl 0x40d7ca
cmp ecx, dword [ebx + 0x37c]
jg 0x40d7ca
cmp eax, dword [ebx + 0x380]
jle 0x40d7e2
mov eax, dword [ebx + 0x37c]
cdq
sub eax, edx
sar eax, 1
and dword [ebx + 0x104], 0
mov dword [ebx + 0x100], eax
push esi
push 0
push 0x44f8bc
push 0x44f8c4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
lea edi, [ebx + 0x109]
push esi
push 0xff
push edi
push 0x44f8dc
push 0x44f904
push 0x44f918
mov byte [ebx + 0x108], al
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
jne 0x40d84d
mov edi, str.0_1_2_3_4_5_6_7_8_9_10_11_12_13_14_15
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
lea edi, [ebx + 0x109]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebx + 0x208]
push 0x4551d4
push 0xff
push eax
push 0x44f948
push 0x44f954
push str.Flybar
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edi, str.0_1_5_15
or ecx, 0xffffffff
xor eax, eax
push 0x4551d4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 1
mov eax, ecx
mov esi, edi
lea edi, [ebx + 0x208]
push 0x44f974
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x44f980
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
cmp eax, 1
mov dword [ebx + 0x308], eax
je 0x40d8d9
test eax, eax
je 0x40d8d9
push 1
push 0x44f988
lea eax, [ebx + 0x108]
push 0x44f994
push eax
mov ecx, ebx
call fcn.0040e284
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov esi, 0x4551d4
push esi
push 0
push 0x44f99c
push 0x44f9b0
call edi
push esi
push 0
push 0x44f9b8
push 0x44f9c4
mov dword [ebx + 0x30c], eax
call edi
lea ecx, [ebx + 0x310]
test al, al
mov byte [ecx], al
je 0x40d92c
cmp al, 1
je 0x40d92c
push 0
push 0x44f9cc
push 0x44f9d8
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 1
push 0x44f9e0
push 0x44f9ec
call edi
lea ecx, [ebx + 0x311]
test al, al
mov byte [ecx], al
je 0x40d95f
cmp al, 1
je 0x40d95f
push 1
push str.LearnFlag
push 0x44fa00
push ecx
mov ecx, ebx
call fcn.0040e284
push esi
push 1
push 0x44fa08
push 0x44fa14
call edi
movzx eax, al
lea ecx, [ebx + 0x360]
cmp eax, 1
mov dword [ecx], eax
je 0x40d996
test eax, eax
je 0x40d996
push 1
push 0x44fa1c
push 0x44fa28
push ecx
mov ecx, ebx
call fcn.0040e200
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fa30
push 0x44fa34
push 0x44fa44
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
test eax, eax
pop ecx
mov dword [ebx + 0x398], eax
jne 0x40da1a
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fa50
push 0x44fa54
push 0x44fa60
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x394], eax
lea ecx, [ebx + 0x394]
test eax, eax
jne 0x40da1a
push 1
push 0x44fa6c
push 0x44fa7c
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fa88
push 0x44fa8c
push 0x44fa94
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
cmp eax, 1
pop ecx
mov dword [ebx + 0x3a4], eax
je 0x40da6b
test eax, eax
je 0x40da6b
push 1
push 0x44faa0
lea eax, [ebx + 0x394]
push 0x44faa8
push eax
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fab4
push 0x44fab8
push 0x44fac4
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x3ac], eax
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fad0
push 0x44fad4
push 0x44fae4
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x3b0], eax
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44faf0
push 0x44faf4
push 0x44fafc
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
cmp dword [ebx + 0x3ac], 0
pop ecx
lea ecx, [ebx + 0x3b4]
mov dword [ecx], eax
jne 0x40db25
cmp dword [ebx + 0x3b0], 0
jne 0x40db25
test eax, eax
jne 0x40db25
push 1
pop eax
push eax
push 0x44fb08
push 0x44fb10
mov dword [ecx], eax
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
push 1
push 0x44fb1c
push 0x44fb28
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
lea ecx, [ebx + 0x314]
test eax, eax
mov dword [ecx], eax
je 0x40db5d
cmp eax, 1
je 0x40db5d
push 1
push str.DisplayBoardWnd
push 0x44fb40
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fb48
push 0x44fb4c
push 0x44fb58
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x318], eax
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fb68
push 0x44fb6c
push 0x44fb78
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x31c], eax
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fb88
push 0x44fb8c
push 0x44fb98
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
add eax, dword [ebx + 0x318]
pop ecx
push esi
push 0xa
mov dword [ebx + 0x320], eax
lea eax, [ebp - 0x114]
push eax
push 0x44fba8
push 0x44fbac
push 0x44fbb8
call edi
mov eax, dword [ebx + 0x31c]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
add eax, dword [ebp - 0x10]
pop ecx
mov dword [ebx + 0x324], eax
mov eax, dword [ebx + 0x318]
cmp eax, dword [ebx + 0x374]
jl 0x40dc50
cmp eax, dword [ebx + 0x37c]
jg 0x40dc50
mov eax, dword [ebp - 0x10]
cmp eax, dword [ebx + 0x378]
jl 0x40dc50
cmp eax, dword [ebx + 0x380]
jle 0x40dc72
mov eax, dword [ebx + 0x37c]
cdq
sub eax, edx
sar eax, 1
mov dword [ebx + 0x318], eax
mov eax, dword [ebx + 0x380]
cdq
sub eax, edx
sar eax, 1
mov dword [ebx + 0x31c], eax
lea ecx, [ebx + 0x318]
call fcn.00401709
cmp eax, 0xa
jle 0x40dcb8
lea ecx, [ebx + 0x318]
call fcn.00401709
cmp eax, dword [ebx + 0x37c]
jg 0x40dcb8
lea ecx, [ebx + 0x318]
call fcn.0040170f
cmp eax, 0xa
jle 0x40dcb8
lea ecx, [ebx + 0x318]
call fcn.0040170f
cmp eax, dword [ebx + 0x380]
jle 0x40dcda
mov eax, dword [ebx + 0x318]
add eax, 0x12c
mov dword [ebx + 0x320], eax
mov eax, dword [ebx + 0x31c]
add eax, 0xc8
mov dword [ebx + 0x324], eax
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fbc8
push 0x44fbcc
push 0x44fbd8
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x328], eax
lea ecx, [ebx + 0x328]
test eax, eax
je 0x40dd2b
cmp eax, 1
je 0x40dd2b
push 1
push 0x44fbe8
push 0x44fbf4
push ecx
mov ecx, ebx
call fcn.0040e200
and dword [ebx + 0x32c], 0
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fc04
push 0x44fc08
push 0x44fc14
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x330], eax
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fc24
push 0x44fc28
push 0x44fc34
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
cmp eax, 1
lea ecx, [ebx + 0x334]
mov dword [ecx], eax
jl 0x40dd9a
cmp eax, 3
jle 0x40ddae
push 2
push 0x44fc3c
push 0x44fc48
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fc50
push 0x44fc54
push 0x44fc64
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x338], eax
lea ecx, [ebx + 0x338]
test eax, eax
jl 0x40ddeb
cmp eax, 0xf
jle 0x40ddff
push 0xc
push 0x44fc6c
push 0x44fc7c
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fc84
push 0x44fc88
push 0x44fc90
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
test eax, eax
pop ecx
mov dword [ebx + 0x33c], eax
jl 0x40de36
cmp eax, 5
jle 0x40de50
push 0
push 0x44fc98
lea eax, [ebx + 0x33c]
push 0x44fca0
push eax
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0xa
push eax
push 0x44fca8
push 0x44fcac
push 0x44fcbc
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
test eax, eax
pop ecx
mov dword [ebx + 0x340], eax
jl 0x40de8b
cmp dword [ebx + 0x33c], 0x19
jle 0x40dea5
push 0
push 0x44fcc8
lea eax, [ebx + 0x33c]
push 0x44fcd8
push eax
mov ecx, ebx
call fcn.0040e200
push esi
push 0
push 0x44fce4
push 0x44fcf0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
lea ecx, [ebx + 0x344]
test eax, eax
mov dword [ecx], eax
je 0x40dedd
cmp eax, 1
je 0x40dedd
push 0
push 0x44fcfc
push 0x44fd08
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fd14
push 0x44fd18
push 0x44fd24
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x34c], eax
lea ecx, [ebx + 0x34c]
test eax, eax
je 0x40df2e
cmp eax, 1
je 0x40df2e
push 1
push 0x44fd30
push 0x44fd3c
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fd48
push 0x44fd4c
push 0x44fd5c
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x354], eax
lea ecx, [ebx + 0x354]
test eax, eax
je 0x40df7f
cmp eax, 1
je 0x40df7f
push 1
push 0x44fd68
push 0x44fd78
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fd84
push 0x44fd88
push 0x44fda0
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x358], eax
lea ecx, [ebx + 0x358]
test eax, eax
je 0x40dfd0
cmp eax, 1
je 0x40dfd0
push 1
push 0x44fdac
push 0x44fdc4
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fdd0
push 0x44fdd4
push 0x44fde0
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x348], eax
lea ecx, [ebx + 0x348]
test eax, eax
je 0x40e026
cmp eax, 1
je 0x40e026
cmp eax, 2
je 0x40e026
push 0
push 0x44fdec
push 0x44fdf8
push ecx
mov ecx, ebx
call fcn.0040e200
push esi
lea eax, [ebp - 0x114]
push 0x64
push eax
push 0x44fe04
push 0x44fe08
push 0x44fe14
call edi
lea eax, [ebp - 0x114]
push eax
call fcn.0041ed3b
pop ecx
mov dword [ebx + 0x35c], eax
lea ecx, [ebx + 0x35c]
test eax, eax
je 0x40e077
cmp eax, 1
je 0x40e077
push 0
push 0x44fe20
push 0x44fe2c
push ecx
mov ecx, ebx
call fcn.0040e200
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
push esi
push 0x96
push 0x44fe38
push 0x44fe44
call edi
cmp eax, 0xa
mov dword [ebx + 0x384], eax
jl 0x40e0a1
cmp eax, 0x2710
jle 0x40e0be
push 0x96
push 0x44fe50
lea eax, [ebx + 0x384]
push 0x44fe5c
push eax
mov ecx, ebx
call fcn.0040e200
push esi
push 0x15e
push 0x44fe68
push 0x44fe74
call edi
mov dword [ebx + 0x388], eax
mov eax, dword [ebx + 0x384]
cmp eax, 0xa
jl 0x40e0e8
cmp eax, 0x2710
jle 0x40e105
push 0x15e
push 0x44fe80
lea eax, [ebx + 0x384]
push 0x44fe8c
push eax
mov ecx, ebx
call fcn.0040e200
push esi
push 0x514
push 0x44fe98
push 0x44fea4
call edi
cmp eax, 0xa
mov dword [ebx + 0x38c], eax
jl 0x40e129
cmp eax, 0x4e20
jle 0x40e146
push 0x514
push 0x44feb0
lea eax, [ebx + 0x384]
push 0x44febc
push eax
mov ecx, ebx
call fcn.0040e200
push esi
mov esi, 0x3e8
push esi
push 0x44fec8
push 0x44fed4
call edi
cmp eax, 0xa
mov dword [ebx + 0x390], eax
jl 0x40e16b
cmp eax, 0x4e20
jle 0x40e184
push esi
push 0x44fee0
lea eax, [ebx + 0x384]
push 0x44feec
push eax
mov ecx, ebx
call fcn.0040e200
mov ecx, ebx
call fcn.0040e2c9
mov ecx, dword [ebp - 0xc]
pop edi
mov eax, ebx
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret