Function at 0x428330
Capabilities:
Connect socket
Create process on windows
Get graphical window text
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header
Set socket configuration

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4b1a5e
push eax
mov eax, 0x19150
mov dword fs:[0], esp
call fcn.004acd20
push ebx
push ebp
push esi
push edi
mov esi, ecx
call sub.MFC42.DLL_AfxGetModuleState
mov eax, dword [eax + 4]
lea ecx, [esp + 0x14]
mov edi, dword [eax + 0x20]
mov dword [esp + 0x44], edi
call sub.MFC42.DLL_CString::CString_2
lea ecx, [esp + 0x10]
mov dword [esp + 0x19168], 0
call sub.MFC42.DLL_CString::CString_2
add edi, 0x648
push 7
push 0x4e098c
mov ecx, edi
mov byte [esp + 0x19170], 1
call sub.MFC42.DLL_CString::Find_3
mov ebp, eax
cmp ebp, 0xffffffff
jne 0x4283bc
push 0x30
push 0x4e2640
push 0x4e2c38
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x4289a0
lea eax, [ebp - 7]
lea ecx, [esp + 0x20]
push eax
push 7
push ecx
mov ecx, edi
call sub.MFC42.DLL_CString::Mid_1
mov ebx, 2
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x1916c], bl
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x20]
mov byte [esp + 0x19168], 1
call sub.MFC42.DLL_CString::CString
lea edx, [esp + 0x20]
push ebp
push edx
mov ecx, edi
call sub.MFC42.DLL_CString::Mid
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x1916c], 3
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x20]
mov byte [esp + 0x19168], 1
call sub.MFC42.DLL_CString::CString
mov eax, dword [esp + 0x10]
push eax
call sub.WS2_32.dll_gethostbyname
mov edi, eax
test edi, edi
jne 0x42844d
push 0x30
push 0x4e2640
push 0x4e2c14
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x4289a0
push 0
push 1
push ebx
call sub.WS2_32.dll_socket
mov ebp, eax
cmp ebp, 0xffffffff
mov dword [esp + 0x2c], ebp
je 0x4289a0
mov word [esp + 0x4c], bx
mov ecx, dword [edi + 0xc]
push 0x50
mov edx, dword [ecx]
mov eax, dword [edx]
mov dword [esp + 0x54], eax
call sub.WS2_32.dll_htons
lea ecx, [esp + 0x4c]
push 0x10
push ecx
push ebp
mov word [esp + 0x5a], ax
call sub.WS2_32.dll_connect
or edi, 0xffffffff
cmp eax, edi
jne 0x4284c9
push ebp
call sub.WS2_32.dll_closesocket
mov ecx, esi
call sub.MFC42.DLL_CDialog::OnCancel
mov al, byte [esi + 0xa0]
test al, al
jne 0x42856d
push 0x30
push 0x4e2640
push 0x4e2bf4
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x42856d
mov al, byte [esi + 0xa0]
test al, al
je 0x4284de
push ebp
call sub.WS2_32.dll_closesocket
jmp 0x42856d
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::CString_2
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push edx
push eax
lea ecx, [esp + 0x24]
push str.GET__s_HTTP_1.0_r_nAccept:___r_nHost:__s_r_n_r_n
push ecx
mov byte [esp + 0x19178], 4
call sub.MFC42.DLL_CString::Format_1
mov eax, dword [esp + 0x2c]
add esp, 0x10
mov ecx, dword [eax - 8]
push 0
push ecx
push eax
push ebp
call sub.WS2_32.dll_send
cmp eax, edi
jne 0x42854c
push ebp
call sub.WS2_32.dll_closesocket
mov ecx, esi
call sub.MFC42.DLL_CDialog::OnCancel
mov al, byte [esi + 0xa0]
test al, al
jne 0x42855c
push 0x30
push 0x4e2640
push 0x4e2ba4
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x42855c
mov al, byte [esi + 0xa0]
test al, al
je 0x42858a
push ebp
call sub.WS2_32.dll_closesocket
lea ecx, [esp + 0x1c]
mov byte [esp + 0x19168], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x19168], 0
call sub.MFC42.DLL_CString::CString
mov dword [esp + 0x19168], edi
jmp 0x4289bc
lea edx, [esp + 0x48]
push 4
push edx
push 0x1006
push 0xffff
push ebp
mov dword [esp + 0x5c], 0x15f90
call sub.WS2_32.dll_setsockopt
lea ecx, [esp + 0x18]
call sub.MFC42.DLL_CString::CString_2
xor edi, edi
mov byte [esp + 0x19168], 5
xor ebx, ebx
push 0
lea eax, [esp + 0x164]
push 1
push eax
push ebp
call sub.WS2_32.dll_recv
test eax, eax
jge 0x4285d9
mov edi, 1
mov cl, byte [esp + 0x160]
cmp cl, 0xa
je 0x4285ed
cmp cl, 0xd
je 0x4285f8
inc ebx
jmp 0x4285f8
test ebx, ebx
jne 0x4285f6
mov edi, 1
xor ebx, ebx
mov cl, byte [esi + 0xa0]
test cl, cl
jne 0x428642
lea ecx, [esp + 0x160]
mov byte [esp + eax + 0x160], 0
push ecx
lea ecx, [esp + 0x1c]
call fcn.004ac20a
test edi, edi
je 0x4285be
mov eax, dword [esp + 0x18]
mov cl, byte [eax + 9]
mov byte [esp + 0x30], cl
mov cl, byte [eax + 0xa]
mov byte [esp + 0x31], cl
mov al, byte [eax + 0xb]
mov byte [esp + 0x32], al
mov al, byte [esi + 0xa0]
test al, al
je 0x42864d
push ebp
call sub.WS2_32.dll_closesocket
jmp 0x42897e
mov ebx, dword [sym.imp.MSVCRT.dll_atoi]
lea edx, [esp + 0x30]
push edx
call ebx
add esp, 4
cmp eax, 0xc8
je 0x428697
push ebp
call sub.WS2_32.dll_closesocket
mov ecx, esi
call sub.MFC42.DLL_CDialog::OnCancel
mov al, byte [esi + 0xa0]
test al, al
jne 0x42897e
push 0x30
push 0x4e2640
push 0x4e2b84
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x42897e
push str.Content_Length:
lea ecx, [esp + 0x1c]
call sub.MFC42.DLL_CString::Find_2
mov edi, eax
cmp edi, 0xffffffff
jne 0x4286df
push ebp
call sub.WS2_32.dll_closesocket
mov ecx, esi
call sub.MFC42.DLL_CDialog::OnCancel
mov al, byte [esi + 0xa0]
test al, al
jne 0x42897e
push 0x30
push 0x4e2640
push 0x4e2b50
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x42897e
add edi, 0x10
lea ecx, [esp + 0x18]
push edi
push 0xd
call sub.MFC42.DLL_CString::Find
sub eax, edi
lea ecx, [esp + 0x18]
push eax
lea eax, [esp + 0x24]
push edi
push eax
call sub.MFC42.DLL_CString::Mid_1
mov eax, dword [eax]
push eax
call ebx
add esp, 4
lea ecx, [esp + 0x20]
mov ebx, eax
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
call sub.MFC42.DLL_CString::CString_2
push ebx
lea ecx, [esp + 0x28]
push 0x4e2b34
push ecx
mov byte [esp + 0x19174], 6
call sub.MFC42.DLL_CString::Format_1
mov edx, dword [esp + 0x30]
add esp, 0xc
mov ecx, esi
push edx
push 0x503
call sub.MFC42.DLL_CWnd::SetDlgItemTextA
mov eax, dword [esi + 0x80]
push ebx
push 0
push 0x406
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
lea ecx, [esp + 0x5c]
push 0x104
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [esp + 0x5c]
push 0x5c
push edx
call dword [sym.imp.MSVCRT.dll_strrchr]
add esp, 8
lea ecx, [esp + 0x28]
mov byte [eax + 1], 0
call sub.MFC42.DLL_CString::CString_2
lea eax, [esp + 0x5c]
lea ecx, [esp + 0x28]
push eax
push 0x4e2b24
push ecx
mov byte [esp + 0x19174], 7
call sub.MFC42.DLL_CString::Format_1
add esp, 0xc
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CFile::CFile
mov edx, dword [esp + 0x28]
xor ebp, ebp
push ebp
push 0x1001
push edx
lea ecx, [esp + 0x40]
mov byte [esp + 0x19174], 8
call sub.MFC42.DLL_CFile::Open
test eax, eax
je 0x428901
lea ecx, [esp + 0x20]
call sub.MFC42.DLL_CString::CString_2
mov ecx, dword [esp + 0x2c]
push ebp
lea eax, [esp + 0x164]
push 0x18fff
push eax
push ecx
mov byte [esp + 0x19178], 9
call sub.WS2_32.dll_recv
mov edi, eax
cmp edi, 0xffffffff
je 0x42889a
test edi, edi
je 0x4288e7
mov al, byte [esi + 0xa0]
test al, al
jne 0x4288ca
mov edx, dword [esi + 0x80]
add ebp, edi
push 0
push ebp
push 0x402
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
push ebx
push ebp
lea eax, [esp + 0x2c]
push 0x4e2b08
push eax
call sub.MFC42.DLL_CString::Format_1
mov ecx, dword [esp + 0x34]
add esp, 0x10
push ecx
push 0x503
mov ecx, esi
call sub.MFC42.DLL_CWnd::SetDlgItemTextA
lea edx, [esp + 0x160]
push edi
push edx
lea ecx, [esp + 0x3c]
call sub.MFC42.DLL_CFile::Write
test edi, edi
jle 0x4288e7
mov ecx, dword [esp + 0x2c]
push 0
lea eax, [esp + 0x164]
push 0x18fff
push eax
push ecx
call sub.WS2_32.dll_recv
mov edi, eax
cmp edi, 0xffffffff
jne 0x42880e
mov edx, dword [esp + 0x2c]
push edx
call sub.WS2_32.dll_closesocket
mov ecx, esi
call sub.MFC42.DLL_CDialog::OnCancel
mov al, byte [esi + 0xa0]
test al, al
jne 0x4288d4
push 0x30
push 0x4e2640
push 0x4e2ae4
mov ecx, esi
call sub.MFC42.DLL_CWnd::MessageBoxA
jmp 0x4288d4
mov eax, dword [esp + 0x2c]
push eax
call sub.WS2_32.dll_closesocket
lea ecx, [esp + 0x20]
mov byte [esp + 0x19168], 8
call sub.MFC42.DLL_CString::CString
jmp 0x42894b
lea ecx, [esp + 0x34]
call sub.MFC42.DLL_CFile::Close
lea ecx, [esp + 0x20]
mov byte [esp + 0x19168], 8
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x2c]
push ecx
call sub.WS2_32.dll_closesocket
mov al, byte [esi + 0xa0]
test al, al
jne 0x42894b
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0xd0]
mov eax, dword [esp + 0x28]
push 5
push 0
push 0
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov ecx, dword [esp + 0x44]
push 0
push 0
push 0x10
mov edx, dword [ecx + 0x20]
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
lea ecx, [esp + 0x34]
mov byte [esp + 0x19168], 7
call fcn.004ac390
lea ecx, [esp + 0x28]
mov byte [esp + 0x19168], 6
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x24]
mov byte [esp + 0x19168], 5
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x18]
mov byte [esp + 0x19168], 4
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x1c]
mov byte [esp + 0x19168], 1
call sub.MFC42.DLL_CString::CString
lea ecx, [esp + 0x10]
mov byte [esp + 0x19168], 0
call sub.MFC42.DLL_CString::CString
mov dword [esp + 0x19168], 0xffffffff
lea ecx, [esp + 0x14]
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x19160]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1915c
ret