Function at 0x414480
Capabilities:
Read .ini file

Disassembly:
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x47903d
push eax
mov eax, 0x5198
mov dword fs:[0], esp
call fcn.00457d20
mov eax, dword [0x491ac4]
push ebp
push esi
push edi
mov ebp, ecx
mov dword [esp + 0xc], eax
lea ecx, [ebp + 0xc4]
push 0
push ecx
mov dword [esp + 0x51b4], 0
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x414577
push eax
call dword [sym.imp.USER32.dll_GetParent]
mov esi, eax
mov eax, dword [0x4951c8]
test eax, eax
jne 0x41452a
mov eax, dword [0x4975e4]
test eax, eax
jne 0x41452a
lea edx, [esp + 0x10]
push 0x77
push edx
call fcn.004025c0
add esp, 8
push eax
lea ecx, [esp + 0x10]
mov byte [esp + 0x51b0], 1
call fcn.0046e29b
lea ecx, [esp + 0x10]
mov byte [esp + 0x51ac], 0
call fcn.0046e162
mov eax, dword [esp + 0xc]
push 0
push 0x40
push eax
call fcn.004722e6
test esi, esi
je 0x41455c
push esi
call dword [sym.imp.USER32.dll_IsIconic]
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
test eax, eax
je 0x414544
push 9
push esi
call edi
push 1
push esi
call edi
mov edi, dword [sym.imp.USER32.dll_SetForegroundWindow]
push esi
call edi
push esi
call dword [sym.imp.USER32.dll_GetLastActivePopup]
push eax
call edi
lea ecx, [esp + 0xc]
mov dword [esp + 0x51ac], 0xffffffff
call fcn.0046e162
xor eax, eax
jmp 0x4149f3
push str.CCProxy_startup
call fcn.00430470
mov cl, byte [0x493b50]
add esp, 4
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [esp + 0x319c]
push 0x493f48
push 0x1000
mov byte [esp + 0x31a4], cl
push edx
mov ecx, 0x400
xor eax, eax
lea edi, [esp + 0x31a9]
push 0x493b50
push 0x48e4a4
push str.System
rep stosd dword es:[edi], eax
call esi
mov dl, byte [0x493b50]
mov ecx, 0x400
xor eax, eax
lea edi, [esp + 0x41a1]
mov byte [esp + 0x41a0], dl
mov byte [esp + 0x98], dl
rep stosd dword es:[edi], eax
mov ecx, 0x41
lea edi, [esp + 0x99]
rep stosd dword es:[edi], eax
push 0x493f48
lea eax, [esp + 0x1d9c]
push 0x400
push eax
push str.English
push 0x48d194
push str.System
call esi
lea ecx, [esp + 0x1d98]
lea edx, [esp + 0x98]
push ecx
push 0x493e40
push str._sLanguage_s.ini
push edx
call fcn.00457c43
mov al, byte [0x493b50]
mov ecx, 0x400
mov byte [esp + 0xda4], al
xor eax, eax
lea edi, [esp + 0xda5]
add esp, 0x10
rep stosd dword es:[edi], eax
call fcn.004744d9
mov eax, dword [eax + 8]
lea ecx, [esp + 0xd94]
push 0x1000
push ecx
push 0x8048
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
push 0x48d174
lea edx, [esp + 0xd98]
push 0x48d170
push edx
call fcn.004085c0
push 0x48d16c
lea eax, [esp + 0xda4]
push 0x48d168
push eax
call fcn.004085c0
mov cl, byte [0x493b50]
add esp, 0x18
mov byte [esp + 0x2198], cl
mov ecx, 0x400
xor eax, eax
lea edi, [esp + 0x2199]
lea edx, [esp + 0x98]
rep stosd dword es:[edi], eax
push edx
lea eax, [esp + 0x219c]
push 0x1000
push eax
lea ecx, [esp + 0xda0]
lea edx, [esp + 0xda0]
push ecx
push edx
push str.String
call esi
mov al, byte [esp + 0x2198]
test al, al
je 0x41472e
lea edi, [esp + 0x2198]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0xd94]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push ebx
push 0x48d170
lea ecx, [esp + 0xd9c]
push 0x48d174
push ecx
call fcn.004085c0
push 0x48d168
lea edx, [esp + 0xda8]
push 0x48d16c
push edx
call fcn.004085c0
lea edi, [esp + 0xdb0]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x18
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x41a4]
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
lea eax, [esp + 0x41a4]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea esi, [esp + 0x31a0]
mov dl, byte [eax]
mov bl, byte [esi]
mov cl, dl
cmp dl, bl
jne 0x4147c1
test cl, cl
je 0x4147bd
mov dl, byte [eax + 1]
mov bl, byte [esi + 1]
mov cl, dl
cmp dl, bl
jne 0x4147c1
add eax, 2
add esi, 2
test cl, cl
jne 0x414799
xor eax, eax
jmp 0x4147c6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
pop ebx
jle 0x4147d2
mov ecx, ebp
call fcn.00413f20
mov eax, dword [0x494dc0]
test eax, eax
je 0x414872
mov eax, dword [0x494dc4]
test eax, eax
je 0x414872
push 0
lea ecx, [esp + 0x3c]
call fcn.00438730
lea ecx, [esp + 0x38]
mov byte [esp + 0x51ac], 2
call fcn.0046a607
cmp eax, 2
jne 0x41484d
lea ecx, [esp + 0x94]
mov byte [esp + 0x51ac], 3
call fcn.0046e162
lea ecx, [esp + 0x38]
mov byte [esp + 0x51ac], 0
call fcn.0046a2da
lea ecx, [esp + 0xc]
mov dword [esp + 0x51ac], 0xffffffff
call fcn.0046e162
xor eax, eax
jmp 0x4149f3
lea ecx, [esp + 0x94]
mov byte [esp + 0x51ac], 4
call fcn.0046e162
lea ecx, [esp + 0x38]
mov byte [esp + 0x51ac], 0
call fcn.0046a2da
lea ecx, [esp + 0x14]
call fcn.00474995
lea eax, [esp + 0x14]
mov ecx, ebp
push eax
mov byte [esp + 0x51b0], 5
call fcn.00474942
mov ecx, dword [esp + 0x18]
push ecx
call fcn.004426a0
add esp, 4
lea ecx, [esp + 0x1a0]
push 0
call fcn.00415620
lea edx, [esp + 0x1a0]
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x51ac], 6
mov dword [ebp + 0x1c], edx
call fcn.0046a607
lea ecx, [esp + 0xcc0]
mov byte [esp + 0x51ac], 0xc
call fcn.00435ba0
lea ecx, [esp + 0xc84]
mov byte [esp + 0x51ac], 0xb
call fcn.00472b2b
lea ecx, [esp + 0xbc0]
mov byte [esp + 0x51ac], 0xa
call fcn.004367b0
lea ecx, [esp + 0xb84]
mov byte [esp + 0x51ac], 9
call fcn.004689fe
lea eax, [esp + 0x238]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0xb40]
mov byte [esp + 0x51ac], 0x10
call fcn.00468a98
lea ecx, [esp + 0xb04]
mov byte [esp + 0x51ac], 0xf
call fcn.00468a98
lea ecx, [esp + 0xac8]
mov byte [esp + 0x51ac], 0xe
call fcn.00468a98
mov eax, dword [esp + 0xac4]
mov byte [esp + 0x51ac], 0xd
test eax, eax
mov esi, eax
je 0x41498d
mov ecx, dword [eax + 0x18]
push ecx
lea ecx, [esp + 0xa9c]
call fcn.00409c90
push esi
call fcn.0046e6a2
add esp, 4
lea ecx, [esp + 0x238]
mov byte [esp + 0x51ac], 8
call fcn.0046a2da
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x51ac], 7
call fcn.0044f010
lea ecx, [esp + 0x1a0]
mov byte [esp + 0x51ac], 5
call fcn.0046a2da
lea ecx, [esp + 0x14]
mov byte [esp + 0x51ac], 0
call fcn.004749f0
lea ecx, [esp + 0xc]
mov dword [esp + 0x51ac], 0xffffffff
call fcn.0046e162
mov eax, 1
mov ecx, dword [esp + 0x51a4]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
add esp, 0x51a4
ret