Function at 0x402078
Capabilities:
Print debug messages
Read .ini file

Disassembly:
sub esp, 0x5c8
push ebx
push ebp
mov ebp, 0x4076a0
push esi
mov eax, ebp
push edi
test eax, eax
mov ebx, ecx
je 0x4023e1
and byte [esp + 0x1d8], 0
mov ecx, 0xff
xor eax, eax
lea edi, [esp + 0x1d9]
rep stosd dword es:[edi], eax
and byte [esp + 0x18], 0
push 0x1f
stosw word es:[edi], ax
stosb byte es:[edi], al
pop ecx
xor eax, eax
lea edi, [esp + 0x19]
cmp byte [0x407bb8], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov esi, str.webex.ini
push esi
jne 0x402131
call edi
mov edx, eax
push ebp
mov dword [esp + 0x14], edx
call edi
mov ecx, dword [esp + 0x10]
lea eax, [ecx + eax + 2]
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
pop ecx
mov ebp, eax
push esi
mov dword [esp + 0x14], ebp
call edi
mov edx, eax
push 0x4076a0
mov dword [esp + 0x18], edx
call edi
mov ecx, dword [esp + 0x14]
lea eax, [ecx + eax + 2]
push eax
push 0
push ebp
call sub.MSVCRT.dll_memset
add esp, 0xc
push esi
push 0x4076a0
push str._s_s
push ebp
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
jmp 0x40218b
call edi
push 0x407bb8
mov ebp, eax
call edi
lea eax, [eax + ebp + 1]
push eax
call sub.MSVCRT.dll_void____cdecl_operator_new_unsigned_int_
pop ecx
mov dword [esp + 0x10], eax
push esi
call edi
mov ebp, 0x407bb8
mov edx, eax
push ebp
mov dword [esp + 0x18], edx
call edi
mov ecx, dword [esp + 0x14]
lea eax, [ecx + eax + 1]
push eax
push 0
push dword [esp + 0x18]
call sub.MSVCRT.dll_memset
add esp, 0xc
push esi
push ebp
push 0x4070c8
push dword [esp + 0x1c]
call dword [sym.imp.USER32.dll_wsprintfA]
mov ebp, dword [esp + 0x20]
add esp, 0x10
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringA]
push ebp
call esi
lea eax, [esp + 0x98]
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_FindFirstFileA]
cmp eax, 0xffffffff
je 0x4023da
test eax, eax
je 0x4023da
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push ebp
lea eax, [ebx + 0x24]
push 0x104
mov ebp, 0x407df0
push eax
push ebp
mov edi, str.WebEx
push str.LocalRoot
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x328]
push 0x200
push eax
push ebp
push str.GpcUrlRoot
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x128]
push 0x200
push eax
push ebp
push str.LocalRootVer
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x528]
push 0x80
push eax
push ebp
push str.GpcExtVer
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x5a8]
push 0x80
push eax
push ebp
push str.GpcDecVer
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x628]
push 0x104
push eax
push ebp
push str.SectionName
push edi
call esi
push dword [esp + 0x10]
lea eax, [esp + 0x1dc]
push 0x400
push eax
push ebp
push str.BasicDownIniName
push edi
call esi
lea eax, [esp + 0x1d8]
push eax
lea eax, [ebx + 0x328]
push eax
lea eax, [ebx + 0x72c]
push 0x407278
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebx + 0xb2c]
push dword [esp + 0x10]
push 0x400
push eax
push ebp
push str.FullGpcIniFileURL
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x212c]
push 0x104
push eax
push ebp
push str.HOST
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x152c]
push 0x200
push eax
push ebp
push str.DownloadMsgTitle
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0xf2c]
push 0x100
push eax
push ebp
push str.GpcProgressBarTitle
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x112c]
push 0x100
push eax
push ebp
push str.MessageTitle
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x132c]
push 0x100
push eax
push ebp
push str.DownloadLocalSetting
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x172c]
push 0x200
push eax
push ebp
push str.SupportDeltaDown
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x1d2c]
push 0x200
push eax
push ebp
push str.MeetingID
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x192c]
push 0x400
push eax
push ebp
push str.LoggingURL
push edi
call esi
push dword [esp + 0x10]
lea eax, [ebx + 0x1f2c]
push 0x200
push eax
push ebp
push str.SessionID
push edi
call esi
push dword [esp + 0x10]
lea eax, [esp + 0x1c]
push 0x80
push eax
push ebp
push str.nodownload
push edi
call esi
push dword [esp + 0x10]
call sub.MSVCRT.dll_void___cdecl_operator_delete_void__
cmp byte [esp + 0x1c], 0
pop ecx
je 0x4023d5
lea eax, [esp + 0x18]
push 0x407204
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x4023d5
and dword [ebx + 0x224c], eax
push 1
pop eax
jmp 0x4023e3
push str.Quit_SC_atmgr_GetParameters_wrong_ini
call esi
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c8
ret