Function at 0x469410
Capabilities:
Read .ini file

Disassembly:
sub esp, 0x14
push ebx
push ebp
push esi
mov esi, ecx
mov ebx, 0xa
push edi
cmp byte [esi + 0x152], bl
je 0x469463
lea edi, [esi + 0x124]
push str.H27UCG8T2MYR
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x469463
push str.MT29F64G08CBAAA
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x469463
push str.JS29F64G08AAME1
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
je 0x4697c3
mov al, byte [esi + 0x156]
test al, al
jne 0x4697c3
mov eax, dword [0x4e5bb8]
xor ebp, ebp
push eax
push ebp
push str.IgnoreBinCap
push str.Debug
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
jne 0x4697c3
mov eax, dword [esi + 8]
mov cl, byte [eax + 0x1e4]
cmp cl, 4
jne 0x4694ac
mov ecx, esi
call fcn.00446160
jmp 0x469609
cmp cl, 2
jne 0x4694d3
mov edx, dword [eax + 0x1f0]
lea ebp, [esi + 0x3a8]
mov ecx, 0x14
xor eax, eax
mov edi, ebp
shl edx, 0xb
rep stosd dword es:[edi], eax
mov dword [ebp], edx
jmp 0x469609
cmp byte [esi + 0x152], bl
jne 0x46950c
mov ecx, 9
lea edi, [esi + 0x3a8]
mov ebp, ebx
mov eax, 1
add edi, 4
shl eax, cl
lea edx, [eax + eax*2]
shl edx, 4
add edx, eax
lea edx, [edx + edx*4]
shl edx, 9
mov dword [edi - 4], edx
dec ecx
dec ebp
jne 0x4694e8
jmp 0x469609
lea edi, [esi + 0x124]
push str.H27UCG8T2MYR
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x469549
push str.MT29F64G08CBAAA
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
jne 0x469549
push str.JS29F64G08AAME1
mov ecx, edi
call sub.MFC42.DLL_CString::Find_1
cmp eax, 0xffffffff
je 0x469609
mov dword [esi + 0x3a8], 0xf50000
mov dword [esi + 0x3ac], 0xef0000
mov dword [esi + 0x3b0], 0xebf800
mov dword [esi + 0x3b4], 0xd0c800
mov dword [esi + 0x3b8], 0xb2f000
mov dword [esi + 0x3bc], 0x951800
mov dword [esi + 0x3c0], 0x7a8800
mov dword [esi + 0x3c4], 0x780800
mov dword [esi + 0x3c8], 0x5dc800
mov dword [esi + 0x3cc], 0x3c0800
mov dword [esi + 0x3d0], 0x2ee800
mov dword [esi + 0x3d4], 0x1e0800
mov dword [esi + 0x3d8], 0xf0800
mov dword [esi + 0x3dc], 0x78800
mov dword [esi + 0x3e0], 0x3c800
mov dword [esi + 0x3e4], 0x1e800
mov dword [esi + 0x3e8], 0xf800
mov dword [esi + 0x3ec], 0x7000
mov dword [esi + 0x3f0], ebp
mov dword [esi + 0x3f4], ebp
mov al, byte [esi + 0xec]
test al, al
jne 0x46961c
xor edi, edi
mov ebx, 1
jmp 0x46965b
cmp byte [esi + 0xf2], 1
jne 0x469657
mov al, byte [esi + 0xa0]
test al, al
jne 0x469645
test byte [esi + 0x105], 1
je 0x469641
mov edi, 1
mov ebx, edi
jmp 0x46965b
test al, al
je 0x469657
test byte [esi + 0x107], 1
je 0x469657
mov edi, 1
mov ebx, edi
jmp 0x46965b
xor edi, edi
xor ebx, ebx
mov ecx, esi
call fcn.004693e0
mov al, byte [esi + 0xec]
mov cl, byte [esi + 0x838]
mov edx, dword [esp + 0x28]
push eax
push ecx
push edx
mov ecx, esi
call fcn.00469a90
lea ebp, [esi + 0x3a8]
mov ecx, esi
push ebp
push eax
mov dword [esp + 0x24], eax
call fcn.00469bd0
mov cl, byte [esi + 0xec]
mov byte [esp + 0x14], al
test edi, edi
mov byte [esp + 0x18], cl
je 0x4696cf
test ebx, ebx
je 0x4696cf
test al, al
jne 0x4696cf
mov dl, byte [esi + 0x838]
mov eax, dword [esp + 0x28]
push 0
push edx
push eax
mov ecx, esi
call fcn.00469a90
push ebp
push eax
mov ecx, esi
call fcn.00469bd0
test al, al
jne 0x4696cf
mov byte [esp + 0x18], al
mov al, byte [esp + 0x14]
mov dl, byte [esi + 0x838]
cmp al, 0x14
mov byte [esp + 0x13], dl
jae 0x4697c3
mov ecx, dword [esp + 0x1c]
mov eax, dword [ebp]
mov dword [esp + 0x1c], ecx
xor ecx, ecx
mov dword [esp + 0x20], ecx
fild qword [esp + 0x1c]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
fild qword [esp + 0x1c]
fmul qword [0x4c40c0]
fcompp
fnstsw ax
test ah, 1
jne 0x4697c3
mov eax, dword [esp + 0x14]
and eax, 0xff
cmp dword [esi + eax*4 + 0x3a8], ecx
je 0x4697c3
mov bl, 4
cmp dl, bl
mov byte [esp + 0x1c], bl
jbe 0x469778
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x28]
push edi
push ecx
push edx
mov ecx, esi
call fcn.00469a90
push ebp
push eax
mov ecx, esi
call fcn.00469bd0
cmp al, byte [esp + 0x14]
je 0x469770
mov al, byte [esi + 0x838]
inc bl
cmp bl, al
mov byte [esp + 0x1c], bl
jb 0x46973d
jmp 0x469774
mov byte [esp + 0x13], bl
mov dl, byte [esp + 0x13]
cmp dl, byte [esi + 0x838]
je 0x4697c3
mov al, byte [esi + 0x34]
mov ebp, dword [esi + 0x16c]
test al, al
mov byte [esp + 0x1c], al
jbe 0x4697c3
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
and ebx, 0xff
xor ecx, ecx
test ebp, ebp
jbe 0x4697be
mov al, byte [edi + ecx]
cmp al, dl
jbe 0x4697b9
cmp al, byte [esi + 0x838]
ja 0x4697b9
or al, 0x50
mov byte [edi + ecx], al
inc ecx
cmp ecx, ebp
jb 0x4697a5
add edi, ebp
dec ebx
jne 0x46979f
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x14
ret 4