Function at 0x43ec18
Capabilities:
Connect to http server
Create http request

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2ac
mov eax, dword [0x5025d0]
xor eax, esp
mov dword [esp + 0x2a8], eax
mov eax, dword [ebp + 0x18]
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
xor ebx, ebx
push 0x13c
mov dword [esp + 0x14], eax
lea eax, [esp + 0x50]
push ebx
push eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x20], ebx
mov dword [esp + 0x54], ebx
call fcn.004a8c80
add esp, 0xc
mov byte [esp + 0x188], bl
push 7
xor eax, eax
pop ecx
lea edi, [esp + 0x189]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
call fcn.0049a965
cmp dword [ebp + 8], ebx
mov dword [esp + 0x18], eax
je 0x43ec97
mov esi, 0x5fbda4
call fcn.0043f3cc
xor eax, eax
jmp 0x43f2fc
cmp dword [0x5fbda8], ebx
je 0x43eca5
push esi
jmp 0x43f2ec
push 0xc
push ebx
push 0x5fbda4
call fcn.004a8c80
add esp, 0xc
call fcn.00440ecc
test eax, eax
je 0x43ec90
call fcn.0043e670
cmp dword [ebp + 0xc], ebx
mov dword [esp + 0x24], eax
je 0x43ecd7
push str._nPhase_1...
call fcn.004499ca
pop ecx
mov esi, dword [ebp + 0x14]
mov dword [esp + 0x1c], ebx
push ebx
push ebx
push ebx
push 1
push 0x4c9ed8
call dword [sym.imp.WININET.dll_InternetOpenA]
cmp eax, ebx
mov dword [0x5fbda4], eax
mov edi, str._nTIME_OUT__n
jne 0x43ed6a
cmp esi, ebx
jbe 0x43ed0d
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, esi
jae 0x43ed5e
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43ed19
cmp dword [eax], ebx
jne 0x43ed5e
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp + 0xc], ebx
je 0x43ed34
push 0x4c73c0
call fcn.004499ca
pop ecx
cmp esi, ebx
jbe 0x43ed45
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, esi
jae 0x43ed5e
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43ed51
cmp dword [eax], ebx
jne 0x43ed5e
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], 3
jl 0x43ecde
jmp 0x43ed6a
cmp dword [ebp + 0xc], ebx
je 0x43ed6a
push edi
call fcn.004499ca
pop ecx
cmp esi, ebx
jbe 0x43ed7b
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, esi
jae 0x43ed87
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43ed9c
cmp dword [eax], ebx
je 0x43ed9c
cmp dword [ebp + 0xc], ebx
je 0x43ec86
push edi
call fcn.004499ca
pop ecx
jmp 0x43ec86
cmp dword [0x5fbda4], ebx
je 0x43efae
cmp dword [ebp + 0xc], ebx
je 0x43edc4
push 0x4dd4b8
call fcn.004499ca
mov dword [esp], str._nPhase_2...IC1..
call fcn.004499ca
pop ecx
mov edi, dword [sym.imp.WININET.dll_InternetConnectA]
push ebx
push dword [esp + 0x28]
mov esi, str.PAULA
push 1
push str.PAULAWAULA
push esi
push 0x15
lea eax, [esp + 0x1a0]
push eax
push dword [0x5fbda4]
call edi
cmp dword [ebp + 0x14], ebx
mov dword [0x5fbda8], eax
jbe 0x43ee06
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x14]
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43ee25
cmp dword [eax], ebx
je 0x43ee25
cmp dword [ebp + 0xc], ebx
je 0x43ec86
push str._nTIME_OUT__n
jmp 0x43ed91
mov eax, dword [0x5fbda8]
cmp eax, ebx
mov dword [esp + 0x14], ebx
je 0x43ee49
push ebx
push ebx
lea ecx, [esp + 0x50]
push ecx
push str._PAULA_LiveUpdate_DownLoad_
push eax
call dword [sym.imp.WININET.dll_FtpFindFirstFileA]
mov dword [esp + 0x14], eax
cmp dword [ebp + 0x14], ebx
jbe 0x43ee5c
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x14]
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43ee68
cmp dword [eax], ebx
jne 0x43ee12
cmp dword [esp + 0x14], ebx
jne 0x43efda
cmp dword [esp + 0x24], 0x8000000
mov eax, dword [0x5fbda8]
je 0x43ef22
cmp eax, ebx
je 0x43ee9e
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 0x19
mov dword [0x5fbda8], ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
push 0x8000000
push 1
push str.PAULAWAULA
push esi
push 0x15
lea eax, [esp + 0x1a0]
push eax
push dword [0x5fbda4]
call edi
cmp eax, ebx
mov dword [0x5fbda8], eax
mov dword [esp + 0x14], ebx
je 0x43eee2
push ebx
push ebx
lea ecx, [esp + 0x50]
push ecx
push str._PAULA_LiveUpdate_DownLoad_
push eax
call dword [sym.imp.WININET.dll_FtpFindFirstFileA]
mov dword [esp + 0x14], eax
cmp dword [ebp + 0x14], ebx
jbe 0x43eef9
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x14]
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43ef09
cmp dword [eax], ebx
jne 0x43ee12
cmp dword [esp + 0x14], ebx
je 0x43efc4
push 0x8000000
call fcn.0043e7b3
jmp 0x43efbd
cmp eax, ebx
je 0x43ef3b
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 0x19
mov dword [0x5fbda8], ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
push ebx
push ebx
push 1
push str.PAULAWAULA
push esi
push 0x15
lea eax, [esp + 0x1a0]
push eax
push dword [0x5fbda4]
call edi
cmp eax, ebx
mov dword [0x5fbda8], eax
mov dword [esp + 0x14], ebx
je 0x43ef7b
push ebx
push ebx
lea ecx, [esp + 0x50]
push ecx
push str._PAULA_LiveUpdate_DownLoad_
push eax
call dword [sym.imp.WININET.dll_FtpFindFirstFileA]
mov dword [esp + 0x14], eax
cmp dword [ebp + 0x14], ebx
jbe 0x43ef92
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x14]
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43efa2
cmp dword [eax], ebx
jne 0x43ee12
cmp dword [esp + 0x14], ebx
je 0x43efc4
push ebx
jmp 0x43ef18
cmp dword [ebp + 0xc], ebx
je 0x43efc4
push str.FAILED_
call fcn.004499ca
cmp dword [esp + 0x18], ebx
pop ecx
jne 0x43efda
mov eax, dword [0x5fbda8]
cmp eax, ebx
je 0x43efe7
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [0x5fbda8], ebx
mov eax, dword [0x5fbda8]
cmp eax, ebx
jne 0x43f231
cmp dword [0x5fbeb4], ebx
jne 0x43f076
cmp dword [0x5fbeb0], ebx
jne 0x43f076
cmp dword [ebp + 0xc], ebx
je 0x43f00b
push str._nAttempting_backup_server...
call fcn.004499ca
pop ecx
cmp dword [ebp + 0x14], ebx
jbe 0x43f022
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x14]
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43f032
cmp dword [eax], ebx
jne 0x43ee12
mov esi, 0x5fbda4
mov dword [0x5fbeb4], 1
call fcn.0043f3cc
push dword [esp + 0x10]
call fcn.0049a965
mov edx, dword [ebp + 0x14]
mov ecx, dword [esp + 0x1c]
add ecx, edx
sub ecx, eax
push ecx
push dword [esp + 0x28]
push dword [ebp + 0xc]
push ebx
call fcn.0043ec18
add esp, 0x14
mov dword [0x5fbeb4], ebx
jmp 0x43f2fc
cmp eax, ebx
jne 0x43f231
cmp dword [ebp + 0xc], ebx
je 0x43f08e
push str..FAILED.._n____...Attempting_IC_SAT..
call fcn.004499ca
pop ecx
mov eax, dword [0x5fbda4]
cmp eax, ebx
je 0x43f0a4
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [0x5fbda4], ebx
cmp dword [ebp + 0x14], ebx
jbe 0x43f0bb
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, dword [ebp + 0x14]
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43f0cb
cmp dword [eax], ebx
jne 0x43ee12
cmp dword [0x5fbeb0], ebx
jne 0x43ec90
push 0x103
lea eax, [esp + 0x1ad]
push ebx
push eax
mov byte [esp + 0x1b4], bl
call fcn.004a8c80
xor eax, eax
mov word [esp + 0x44], bx
lea edi, [esp + 0x46]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosw word es:[edi], ax
xor eax, eax
mov word [esp + 0x34], bx
lea edi, [esp + 0x36]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
add esp, 0xc
stosw word es:[edi], ax
push str.StoreId.dat
lea edi, [esp + 0x1ac]
call fcn.00442cbc
mov dword [esp], 0x875
lea eax, [esp + 0x2c]
push str..Network.c
push eax
call fcn.0049b356
add esp, 0xc
test eax, eax
je 0x43ec90
lea eax, [esp + 0x38]
push eax
mov ecx, edi
call fcn.00447ab4
test eax, eax
pop ecx
je 0x43ec90
sub esp, 0x10
mov edi, esp
lea esi, [esp + 0x48]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
sub esp, 0x10
lea esi, [esp + 0x48]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0049a0b2
push eax
call fcn.004aa7c7
add esp, 0x24
cmp eax, 0x6ddd00
jle 0x43ec90
cmp dword [ebp + 0xc], ebx
je 0x43f19e
push str._nAttempting_to_establish_INet_connection...
call fcn.004499ca
pop ecx
mov eax, dword [esp + 0x18]
mov edi, dword [ebp + 0x14]
lea esi, [eax + edi]
call fcn.0049a965
mov ecx, esi
sub ecx, eax
push ecx
push dword [ebp + 0xc]
mov ecx, dword [esp + 0x18]
push 0x1b7740
call fcn.0043f96f
add esp, 0xc
test eax, eax
je 0x43ec90
cmp dword [ebp + 0xc], ebx
je 0x43f1de
push str._nTrying_FTP_connection_process_again...
call fcn.004499ca
pop ecx
cmp edi, ebx
jbe 0x43f1f3
call fcn.0049a965
sub eax, dword [esp + 0x18]
cmp eax, edi
jae 0x43ee12
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x43f203
cmp dword [eax], ebx
jne 0x43ee12
push eax
mov dword [0x5fbeb0], 1
call fcn.0049a965
sub esi, eax
push esi
push dword [esp + 0x28]
push dword [ebp + 0xc]
push ebx
call fcn.0043ec18
add esp, 0x14
mov dword [0x5fbeb0], ebx
jmp 0x43f2fc
cmp dword [ebp + 0xc], ebx
je 0x43f24d
push str..OK.
call fcn.004499ca
mov dword [esp], str._nEnumerating_FTP_server_root_directory...
call fcn.004499ca
pop ecx
push 0x896
mov ecx, str..Network.c
call fcn.0047a4b3
cmp eax, ebx
pop ecx
mov dword [0x5fbdac], eax
je 0x43ec86
lea edx, [esp + 0x74]
call fcn.00477a16
test eax, eax
jne 0x43f2cb
test byte [esp + 0x48], 0x10
jne 0x43f2cb
cmp byte [esp + 0x74], 0x2e
je 0x43f2cb
test byte [esp + 0x48], 6
jne 0x43f2cb
lea eax, [esp + 0x74]
push eax
mov esi, str._AltHT
call fcn.00477b57
test eax, eax
pop ecx
jne 0x43f2af
lea ecx, [esp + 0x74]
call fcn.0043e9c3
inc ebx
cmp ebx, 1
jle 0x43f2cb
lea eax, [esp + 0x74]
push eax
push dword [0x5fbdac]
call fcn.0047a83c
test eax, eax
pop ecx
pop ecx
jne 0x43f2cb
inc dword [0x5fbeb8]
lea eax, [esp + 0x48]
push eax
push dword [esp + 0x18]
call dword [sym.imp.WININET.dll_InternetFindNextFileA]
test eax, eax
jne 0x43f26a
push dword [esp + 0x14]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push dword [esp + 0x20]
mov ebx, 0x5fbda4
call fcn.0043f311
mov eax, dword [0x5fbda8]
pop ecx
mov ecx, dword [esp + 0x2b4]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004a8565
mov esp, ebp
pop ebp
ret