Function at 0x4169fd
Capabilities:
Find taskbar
Get common file path
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x41f5e1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x354
push ebx
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x18]
mov dword [esp + 0x20], esi
call sub.MFC42.DLL_CString::CString_2
mov ecx, 0x80
xor eax, eax
lea edi, [esp + 0x164]
xor ebp, ebp
rep stosd dword es:[edi], eax
lea eax, [esp + 0x164]
push 0x200
push eax
mov dword [esp + 0x374], ebp
call dword [sym.imp.KERNEL32.DLL_GetSystemDirectoryA]
lea ecx, [esp + 0x164]
lea edx, [esp + 0x18]
push ecx
push str._s_receivereg.dat
push edx
call sub.MFC42.DLL_CString::Format
mov eax, dword [esp + 0x24]
add esp, 0xc
add esi, 0x44c
push eax
push 0x104
push 0x104
mov ecx, esi
call sub.MFC42.DLL_CString::GetBuffer
push eax
push ebp
push str.QQNum
push str.Setting
call dword [sym.imp.KERNEL32.DLL_GetPrivateProfileStringA]
push 0xffffffffffffffff
mov ecx, esi
call sub.MFC42.DLL_CString::ReleaseBuffer
push ebp
push str.Shell_TrayWnd
mov dword [esp + 0x2c], ebp
call dword [sym.imp.USER32.dll_FindWindowA]
mov esi, dword [sym.imp.USER32.dll_FindWindowExA]
push ebp
push str.TrayNotifyWnd
push ebp
push eax
call esi
push ebp
push str.SysPager
push ebp
push eax
call esi
push ebp
push str.ToolbarWindow32
push ebp
push eax
call esi
push ebp
mov ebx, eax
push ebp
push 0x418
push ebx
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [esp + 0x28]
mov edi, eax
push ecx
push ebx
mov dword [esp + 0x34], edi
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov edx, dword [esp + 0x28]
push edx
push ebp
push 0x38
call dword [sym.imp.KERNEL32.DLL_OpenProcess]
push 4
mov ebp, eax
push 0x3000
push 0x1000
push 0
push ebp
call dword [sym.imp.KERNEL32.DLL_VirtualAllocEx]
mov esi, eax
xor eax, eax
cmp edi, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], eax
jle 0x416c97
mov eax, dword [esp + 0x14]
push esi
push eax
push 0x417
push ebx
call dword [sym.imp.USER32.dll_SendMessageA]
mov edi, dword [sym.imp.KERNEL32.DLL_ReadProcessMemory]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x3c]
push 0x14
push edx
push esi
push ebp
call edi
mov edx, dword [esp + 0x44]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x50]
push 0x18
push ecx
push edx
push ebp
call edi
mov ecx, dword [esp + 0x4c]
lea eax, [esp + 0x34]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov edx, dword [esp + 0x3c]
push esi
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x68]
push edx
push 0x42d
push ebx
rep stosd dword es:[edi], eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x64]
push eax
push 0x100
push ecx
push esi
push ebp
call dword [sym.imp.KERNEL32.DLL_ReadProcessMemory]
lea edx, [esp + 0x64]
push 0x4288ec
push edx
call dword [sym.imp.MSVCRT.dll_strstr]
add esp, 8
test eax, eax
je 0x416c67
lea eax, [esp + 0x64]
lea ecx, [esp + 0x10]
push eax
call sub.MFC42.DLL_CString::CString_1
push 0x28
lea ecx, [esp + 0x14]
mov byte [esp + 0x370], 1
call sub.MFC42.DLL_CString::ReverseFind
push 0x29
lea ecx, [esp + 0x14]
mov edi, eax
call sub.MFC42.DLL_CString::ReverseFind
test edi, edi
jl 0x416c56
cmp eax, edi
jle 0x416c56
sub eax, edi
lea ecx, [esp + 0x30]
dec eax
inc edi
push eax
push edi
push ecx
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Mid
mov edx, dword [esp + 0x20]
push eax
mov byte [esp + 0x370], 2
lea edi, [edx + 0x448]
mov ecx, edi
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x30]
mov byte [esp + 0x36c], 1
call sub.MFC42.DLL_CString::CString
mov ecx, edi
call sub.MFC42.DLL_CString::TrimLeft
mov ecx, edi
call sub.MFC42.DLL_CString::TrimRight
mov eax, dword [esp + 0x20]
mov edi, dword [edi]
add eax, 0x44c
mov eax, dword [eax]
push eax
push edi
call dword [sym.imp.MSVCRT.dll__mbscmp]
add esp, 8
test eax, eax
je 0x416c7e
lea ecx, [esp + 0x10]
mov byte [esp + 0x36c], 0
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x2c]
inc eax
cmp eax, ecx
mov dword [esp + 0x14], eax
jl 0x416b1a
jmp 0x416c97
lea ecx, [esp + 0x10]
mov dword [esp + 0x24], 1
mov byte [esp + 0x36c], 0
call sub.MFC42.DLL_CString::CString
push 0x8000
push 0
push esi
push ebp
call dword [sym.imp.KERNEL32.DLL_VirtualFreeEx]
push ebp
call dword [sym.imp.KERNEL32.DLL_CloseHandle]
lea ecx, [esp + 0x18]
mov dword [esp + 0x36c], 0xffffffff
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x364]
mov eax, dword [esp + 0x24]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x360
ret