Function at 0x4217a0
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Get socket status
Receive data
Receive data on socket
Reference http user-agent string
Resolve dns
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a0c90
mov eax, dword fs:[0]
push eax
mov eax, 0x158c
call fcn.00470d10
mov eax, dword [0x4c8a00]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1578], ecx
mov dword [ebp - 4], 0
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x34]
call fcn.00414890
mov byte [ebp - 4], 1
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x40], 0
mov ecx, dword [ebp - 0x1578]
mov dword [ecx + 0x7c], 0xffffffff
mov dword [ebp - 0x38], 0xffffffff
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
lea edx, [ebp - 0x34]
push edx
mov ecx, dword [ebp - 0x1578]
add ecx, 0x14
call fcn.00420860
lea eax, [ebp + 0xc]
push eax
mov ecx, dword [ebp - 0x1578]
add ecx, 0x30
call fcn.00420860
mov ecx, dword [ebp - 0x1578]
add ecx, 0x30
call fcn.00423cf0
movzx ecx, al
test ecx, ecx
je 0x42195a
push 0
push 0x4b5b9c
mov ecx, dword [ebp - 0x1578]
add ecx, 0x14
call fcn.00423d10
mov dword [ebp - 0x11d8], eax
mov edx, dword [ebp - 0x11d8]
cmp edx, dword [0x4ad11c]
je 0x42195a
mov eax, dword [0x4ad11c]
push eax
mov ecx, dword [ebp - 0x11d8]
add ecx, 1
push ecx
mov edx, dword [ebp - 0x1578]
add edx, 0x14
push edx
lea eax, [ebp - 0x1400]
push eax
call fcn.004399b0
add esp, 0x10
mov dword [ebp - 0x157c], eax
mov ecx, dword [ebp - 0x157c]
mov dword [ebp - 0x1580], ecx
mov byte [ebp - 4], 2
mov edx, dword [ebp - 0x1580]
push edx
mov ecx, dword [ebp - 0x1578]
add ecx, 0x30
call fcn.00420860
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1400]
call fcn.004148d0
mov eax, dword [ebp - 0x11d8]
push eax
mov ecx, dword [ebp - 0x1578]
add ecx, 0x14
push ecx
lea edx, [ebp - 0x141c]
push edx
call fcn.00439960
add esp, 0xc
mov dword [ebp - 0x1584], eax
mov eax, dword [ebp - 0x1584]
mov dword [ebp - 0x1588], eax
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1588]
push ecx
mov ecx, dword [ebp - 0x1578]
add ecx, 0x14
call fcn.00420860
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x141c]
call fcn.004148d0
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x42197a
mov dword [ebp - 0x3c], 1
jmp 0x4229e4
lea ecx, [ebp - 0xc8]
call fcn.0041fd50
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.0041fd50
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.0041fd50
mov byte [ebp - 4], 6
lea edx, [ebp - 0x184]
push edx
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x144]
push ecx
lea edx, [ebp - 0xec]
push edx
lea eax, [ebp - 0xc8]
push eax
mov ecx, dword [ebp - 0x1578]
add ecx, 0x14
push ecx
mov ecx, dword [ebp - 0x1578]
call fcn.00421680
lea ecx, [ebp - 0x1a8]
call fcn.0043a5e0
mov byte [ebp - 4], 7
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x421a4a
mov dword [ebp - 0x3c], 1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
push 6
push 1
push 2
call sub.WS2_32.dll_socket
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffff
jne 0x421ab2
call sub.WS2_32.dll_WSAGetLastError
push eax
push str._connectAndSendData_:_socket_error__d.__r_n
call fcn.0046d987
add esp, 8
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x421b0e
mov dword [ebp - 0x3c], 1
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
mov edx, dword [ebp - 0x1578]
add edx, 0x14
push edx
lea eax, [ebp - 0x128]
push eax
call fcn.004309c0
add esp, 8
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xc8]
push ecx
lea edx, [ebp - 0x10c]
push edx
call fcn.004309c0
add esp, 8
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1578]
add eax, 0x30
push eax
lea ecx, [ebp - 0x11d4]
push ecx
call fcn.004309c0
add esp, 8
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x10c]
call fcn.00414fe0
push eax
call sub.WS2_32.dll_gethostbyname
mov dword [ebp - 0xf0], eax
cmp dword [ebp - 0xf0], 0
jne 0x421c07
call sub.WS2_32.dll_WSAGetLastError
push eax
push str._gethostbyname_:_socket_error__d.__r_n
call fcn.0046d987
add esp, 8
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x421c90
mov dword [ebp - 0x3c], 1
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
mov edx, 2
mov word [ebp - 0x194], dx
mov eax, dword [ebp - 0xf0]
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx]
mov eax, dword [edx]
mov dword [ebp - 0x190], eax
xor ecx, ecx
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x188], ecx
movzx edx, word [ebp - 0xd0]
push edx
call sub.WS2_32.dll_htons
mov word [ebp - 0x192], ax
push 0x10
lea eax, [ebp - 0x194]
push eax
mov ecx, dword [ebp - 0x38]
push ecx
call sub.WS2_32.dll_connect
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0xffffffff
jne 0x421d85
call sub.WS2_32.dll_WSAGetLastError
push eax
movzx edx, word [ebp - 0xd0]
push edx
lea ecx, [ebp - 0x10c]
call fcn.00414fe0
push eax
push str._connectAndSendData_:_connect__s:_d_error__d.__r_n
call fcn.0046d987
add esp, 0x10
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x421e0e
mov dword [ebp - 0x3c], 1
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
lea ecx, [ebp - 0x160]
call fcn.00423a40
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x11d4]
call fcn.00414880
movzx eax, al
test eax, eax
je 0x421e41
push 0x4b5c28
lea ecx, [ebp - 0x160]
call fcn.00423b10
jmp 0x421e51
push 0x4b5c30
lea ecx, [ebp - 0x160]
call fcn.00423b10
lea ecx, [ebp - 0x128]
push ecx
lea ecx, [ebp - 0x160]
call fcn.00423af0
push str._HTTP_1.1_r_n
lea ecx, [ebp - 0x160]
call fcn.00423b10
push str.Host:
lea ecx, [ebp - 0x160]
call fcn.00423b10
lea edx, [ebp - 0x10c]
push edx
lea ecx, [ebp - 0x160]
call fcn.00423af0
push 0x4b5c4c
lea ecx, [ebp - 0x160]
call fcn.00423b10
push str.Accept:___r_n
lea ecx, [ebp - 0x160]
call fcn.00423b10
push str.User_Agent:_Mozilla_5.0__Windows_NT_5.1__AppleWebKit_537.31__KHTML__like_Gecko__Chrome_26.0.1410.64_Safari_537.31_r_n
lea ecx, [ebp - 0x160]
call fcn.00423b10
push str.Connection:_Keep_Alive_r_n
lea ecx, [ebp - 0x160]
call fcn.00423b10
push 0x4b5cf0
lea ecx, [ebp - 0x160]
call fcn.00423b10
lea ecx, [ebp - 0x11d4]
call fcn.00414880
movzx eax, al
test eax, eax
jne 0x421f29
lea ecx, [ebp - 0x11d4]
call fcn.00423b30
push eax
push str.Content_Length:__d_r_n
lea ecx, [ebp - 0xac]
push ecx
call fcn.0046d791
add esp, 0xc
lea edx, [ebp - 0xac]
push edx
lea ecx, [ebp - 0x160]
call fcn.00423b10
push 0x4b5d3c
lea ecx, [ebp - 0x160]
call fcn.00423b10
lea eax, [ebp - 0x11d4]
push eax
lea ecx, [ebp - 0x160]
call fcn.00423af0
push 0
lea ecx, [ebp - 0x160]
call fcn.00414900
push eax
lea ecx, [ebp - 0x160]
call fcn.00414fe0
push eax
mov ecx, dword [ebp - 0x38]
push ecx
call sub.WS2_32.dll_send
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0xffffffff
jne 0x42200b
call sub.WS2_32.dll_WSAGetLastError
push eax
push str._connectAndSendData_:_send_error__d.__r_n
call fcn.0046d987
add esp, 8
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x160]
call fcn.00414850
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x4220a7
mov dword [ebp - 0x3c], 1
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x160]
call fcn.00414850
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
jmp 0x4229e4
lea ecx, [ebp - 0x17c]
call fcn.00423a40
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x11b4], 0x1000
mov esi, dword [ebp - 0x1578]
add esi, 0x64
call fcn.004163d0
mov esi, dword [ebp - 0x1578]
add esi, 0x54
call fcn.004163d0
mov byte [ebp - 0x11ac], 0
push 0xfff
push 0
lea edx, [ebp - 0x11ab]
push edx
call fcn.00470d40
add esp, 0xc
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0x180], 0xffffffff
mov dword [ebp - 0x11b0], 0xffffffff
mov dword [ebp - 0x11b8], 0
mov dword [ebp - 0x11e0], 0xa
mov dword [ebp - 0x11dc], 0x3e8
mov dword [ebp - 0x12ec], 0
cmp dword [ebp - 0x12ec], 0x40
jae 0x422167
mov eax, dword [ebp - 0x12ec]
mov ecx, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x12e8], ecx
mov edx, dword [ebp - 0x12ec]
add edx, 1
mov dword [ebp - 0x12ec], edx
xor eax, eax
jne 0x42213f
lea ecx, [ebp - 0x11e0]
push ecx
push 0
push 0
lea edx, [ebp - 0x12ec]
push edx
mov eax, dword [ebp - 0x38]
add eax, 1
push eax
call sub.WS2_32.dll_select
mov dword [ebp - 0x12f0], eax
cmp dword [ebp - 0x12f0], 0
jg 0x42219d
jmp 0x422955
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x4221bd
mov dword [ebp - 0x3c], 1
jmp 0x422955
lea ecx, [ebp - 0x12ec]
push ecx
mov edx, dword [ebp - 0x38]
push edx
call sub.WS2_32.dll___WSAFDIsSet
test eax, eax
je 0x422946
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x4221f5
mov dword [ebp - 0x3c], 1
jmp 0x422955
push 0x1000
push 0
lea eax, [ebp - 0x11ac]
push eax
call fcn.00470d40
add esp, 0xc
push 0
push 0x1000
lea ecx, [ebp - 0x11ac]
push ecx
mov edx, dword [ebp - 0x38]
push edx
call sub.WS2_32.dll_recv
mov dword [ebp - 0x12f8], eax
cmp dword [ebp - 0x12f8], 0
jg 0x422236
jmp 0x422955
cmp dword [ebp - 0x12f8], 0
jge 0x422244
jmp 0x422955
push 0
mov ecx, dword [ebp - 0x1578]
add ecx, 0xc
call fcn.004397c0
test eax, eax
jne 0x422264
mov dword [ebp - 0x3c], 1
jmp 0x422955
mov edi, dword [ebp - 0xcc]
add edi, dword [ebp - 0x12f8]
mov esi, dword [ebp - 0x1578]
add esi, 0x64
call fcn.00415e40
mov eax, dword [ebp - 0x12f8]
push eax
lea ecx, [ebp - 0x11ac]
push ecx
mov eax, dword [ebp - 0x1578]
add eax, 0x64
call fcn.00415820
add eax, dword [ebp - 0xcc]
push eax
call fcn.00479280
add esp, 0xc
mov edx, dword [ebp - 0xcc]
add edx, dword [ebp - 0x12f8]
mov dword [ebp - 0xcc], edx
mov eax, dword [ebp - 0x1578]
cmp dword [eax + 0x10], 0
je 0x4222f1
sub esp, 8
fldz
fstp qword [esp]
push 0
mov ecx, dword [ebp - 0x1578]
push ecx
mov edx, dword [ebp - 0x1578]
mov eax, dword [edx + 0x10]
mov ecx, dword [ebp - 0x1578]
mov ecx, dword [ecx + 0x10]
mov edx, dword [eax]
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x1578]
add eax, 0x64
call fcn.00415820
mov dword [ebp - 0x12fc], eax
mov ecx, dword [ebp - 0x12fc]
add ecx, dword [ebp - 0xcc]
mov dword [ebp - 0x1300], ecx
push str._r_n_r_n
mov edx, dword [ebp - 0x12fc]
push edx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x12f4], eax
cmp dword [ebp - 0x12f4], 0
je 0x4228a1
mov eax, dword [ebp - 0x12f4]
cmp eax, dword [ebp - 0x1300]
jae 0x4228a1
mov ecx, dword [ebp - 0x12f4]
add ecx, 4
mov dword [ebp - 0x12f4], ecx
mov edx, dword [ebp - 0x12f4]
mov dword [ebp - 0x11b8], edx
mov eax, dword [ebp - 0x1578]
cmp dword [eax + 0x7c], 0xffffffff
jne 0x422447
push str.HTTP_1.1
mov ecx, dword [ebp - 0x12fc]
push ecx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x1304], eax
cmp dword [ebp - 0x1304], 0
je 0x422447
mov edx, dword [ebp - 0x1304]
cmp edx, dword [ebp - 0x1300]
jae 0x422447
mov eax, dword [ebp - 0x1304]
add eax, 9
mov dword [ebp - 0x1304], eax
push 0x4b5d7c
mov ecx, dword [ebp - 0x1304]
push ecx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x1308], eax
cmp dword [ebp - 0x1308], 0
je 0x422447
mov edx, dword [ebp - 0x1308]
cmp edx, dword [ebp - 0x1300]
jae 0x422447
mov eax, dword [ebp - 0x1308]
sub eax, dword [ebp - 0x1304]
mov dword [ebp - 0x130c], eax
mov ecx, dword [ebp - 0x130c]
push ecx
mov edx, dword [ebp - 0x1304]
push edx
lea ecx, [ebp - 0x1328]
call fcn.00423a70
lea ecx, [ebp - 0x1328]
call fcn.00414fe0
push eax
call fcn.0046d97c
add esp, 4
mov ecx, dword [ebp - 0x1578]
mov dword [ecx + 0x7c], eax
lea ecx, [ebp - 0x1328]
call fcn.00414850
mov edx, dword [ebp - 0x1578]
cmp dword [edx + 0x7c], 0x12e
je 0x422469
mov eax, dword [ebp - 0x1578]
cmp dword [eax + 0x7c], 0x12d
jne 0x422548
lea ecx, [ebp - 0x17c]
call fcn.00414880
movzx ecx, al
test ecx, ecx
je 0x422548
push str.Location:
mov edx, dword [ebp - 0x12fc]
push edx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x132c], eax
cmp dword [ebp - 0x132c], 0
je 0x422548
mov eax, dword [ebp - 0x132c]
cmp eax, dword [ebp - 0x1300]
jae 0x422548
mov ecx, dword [ebp - 0x132c]
add ecx, 0xa
mov dword [ebp - 0x132c], ecx
push 0x4b5d8c
mov edx, dword [ebp - 0x132c]
push edx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x1330], eax
cmp dword [ebp - 0x1330], 0
je 0x422548
mov eax, dword [ebp - 0x1330]
cmp eax, dword [ebp - 0x1300]
jae 0x422548
mov ecx, dword [ebp - 0x1330]
sub ecx, dword [ebp - 0x132c]
mov dword [ebp - 0x1334], ecx
mov edx, dword [ebp - 0x1334]
push edx
mov eax, dword [ebp - 0x132c]
push eax
lea ecx, [ebp - 0x1350]
call fcn.00423a70
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x1350]
push ecx
lea ecx, [ebp - 0x17c]
call fcn.00423ab0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x1350]
call fcn.00414850
lea ecx, [ebp - 0x17c]
call fcn.00414880
movzx edx, al
test edx, edx
jne 0x4225c3
lea ecx, [ebp - 0x17c]
call fcn.00414fe0
push eax
lea eax, [ebp - 0x1438]
push eax
call fcn.00430960
add esp, 8
mov dword [ebp - 0x158c], eax
mov ecx, dword [ebp - 0x158c]
mov dword [ebp - 0x1590], ecx
mov byte [ebp - 4], 0xe
mov edx, dword [ebp - 0x1590]
push edx
lea ecx, [ebp - 0x34]
call fcn.00420860
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x1438]
call fcn.004148d0
mov ecx, dword [ebp - 0x1578]
add ecx, 0x30
call fcn.0043d390
mov dword [ebp - 0x14], 1
jmp 0x422955
cmp dword [ebp - 0x11b0], 0xffffffff
jne 0x4228a1
push str.Content_Length:
mov eax, dword [ebp - 0x12fc]
push eax
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x1354], eax
cmp dword [ebp - 0x1354], 0
je 0x422699
mov ecx, dword [ebp - 0x1354]
cmp ecx, dword [ebp - 0x1300]
jae 0x422699
mov edx, dword [ebp - 0x1354]
add edx, 0x10
mov dword [ebp - 0x1354], edx
push 0x4b5da4
mov eax, dword [ebp - 0x1354]
push eax
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x1358], eax
cmp dword [ebp - 0x1358], 0
je 0x422699
mov ecx, dword [ebp - 0x1358]
cmp ecx, dword [ebp - 0x1300]
jae 0x422699
mov edx, dword [ebp - 0x1358]
sub edx, dword [ebp - 0x1354]
mov dword [ebp - 0x135c], edx
mov eax, dword [ebp - 0x135c]
push eax
mov ecx, dword [ebp - 0x1354]
push ecx
lea ecx, [ebp - 0x1378]
call fcn.00423a70
lea ecx, [ebp - 0x1378]
call fcn.00414fe0
push eax
call fcn.0046d97c
add esp, 4
mov dword [ebp - 0x11b0], eax
lea ecx, [ebp - 0x1378]
call fcn.00414850
cmp dword [ebp - 0x11b0], 0xffffffff
jne 0x422754
push 0x4b5da8
mov edx, dword [ebp - 0x12f4]
push edx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x137c], eax
cmp dword [ebp - 0x137c], 0
je 0x422754
mov eax, dword [ebp - 0x137c]
cmp eax, dword [ebp - 0x1300]
jae 0x422754
mov ecx, dword [ebp - 0x137c]
sub ecx, dword [ebp - 0x12f4]
mov dword [ebp - 0x1380], ecx
mov edx, dword [ebp - 0x1380]
push edx
mov eax, dword [ebp - 0x12f4]
push eax
lea ecx, [ebp - 0x139c]
call fcn.00423a70
lea ecx, [ebp - 0x11b0]
push ecx
push 0x4b5dac
lea ecx, [ebp - 0x139c]
call fcn.00414fe0
push eax
call fcn.0046d8b8
add esp, 0xc
cmp eax, 1
jne 0x422749
mov edx, dword [ebp - 0x11b0]
add edx, 7
mov dword [ebp - 0x11b0], edx
mov eax, dword [ebp - 0x137c]
add eax, 2
mov dword [ebp - 0x11b8], eax
lea ecx, [ebp - 0x139c]
call fcn.00414850
cmp dword [ebp - 0x11b0], 0xffffffff
jne 0x4228a1
push str.Connection:
mov ecx, dword [ebp - 0x12fc]
push ecx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x13a0], eax
cmp dword [ebp - 0x13a0], 0
je 0x4228a1
mov edx, dword [ebp - 0x13a0]
cmp edx, dword [ebp - 0x1300]
jae 0x4228a1
mov eax, dword [ebp - 0x13a0]
add eax, 0xc
mov dword [ebp - 0x13a0], eax
push 0x4b5dc0
mov ecx, dword [ebp - 0x13a0]
push ecx
call fcn.0046d8e0
add esp, 8
mov dword [ebp - 0x13a4], eax
cmp dword [ebp - 0x13a4], 0
je 0x4228a1
mov edx, dword [ebp - 0x13a4]
cmp edx, dword [ebp - 0x1300]
jae 0x4228a1
mov eax, dword [ebp - 0x13a4]
sub eax, dword [ebp - 0x13a0]
mov dword [ebp - 0x13c4], eax
mov ecx, dword [ebp - 0x13c4]
push ecx
mov edx, dword [ebp - 0x13a0]
push edx
lea ecx, [ebp - 0x13c0]
call fcn.00423a70
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x13c0]
call fcn.00414fe0
push eax
lea eax, [ebp - 0x13e0]
push eax
call fcn.00430960
add esp, 8
mov byte [ebp - 4], 0x10
push str.CLOSE
lea ecx, [ebp - 0x1458]
call fcn.00414890
lea ecx, [ebp - 0x1458]
push ecx
lea edx, [ebp - 0x13e0]
push edx
call fcn.004397e0
add esp, 8
neg eax
sbb eax, eax
add eax, 1
mov byte [ebp - 0x1439], al
lea ecx, [ebp - 0x1458]
call fcn.004148d0
movzx eax, byte [ebp - 0x1439]
test eax, eax
je 0x422883
mov dword [ebp - 0x11b0], 0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x13e0]
call fcn.004148d0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x13c0]
call fcn.00414850
cmp dword [ebp - 0x11b8], 0
je 0x422944
cmp dword [ebp - 0x11b0], 0
jle 0x422944
mov ecx, dword [ebp - 0x11b8]
sub ecx, dword [ebp - 0x12fc]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x1300]
sub edx, dword [ebp - 0x12fc]
mov dword [ebp - 0x13e4], edx
mov eax, dword [ebp - 0x180]
add eax, dword [ebp - 0x11b0]
cmp dword [ebp - 0x13e4], eax
jl 0x422944
mov ecx, dword [ebp - 0x1578]
cmp dword [ecx + 0x7c], 0xc8
jne 0x422909
mov dword [ebp - 0x18], 1
mov esi, dword [ebp - 0x1578]
add esi, 0x54
mov edi, dword [ebp - 0x11b0]
call fcn.00415e40
mov edx, dword [ebp - 0x11b0]
push edx
mov eax, dword [ebp - 0x11b8]
push eax
mov eax, dword [ebp - 0x1578]
add eax, 0x54
call fcn.00415820
push eax
call fcn.00479280
add esp, 0xc
jmp 0x422955
jmp 0x422948
jmp 0x422955
mov ecx, 1
test ecx, ecx
jne 0x422121
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x17c]
call fcn.00414850
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x160]
call fcn.00414850
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x11d4]
call fcn.00414850
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x10c]
call fcn.00414850
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x128]
call fcn.00414850
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x1a8]
call fcn.0043a620
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x144]
call fcn.004148d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xec]
call fcn.004148d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xc8]
call fcn.004148d0
xor edx, edx
jne 0x421811
cmp dword [ebp - 0x38], 0xffffffff
je 0x422a16
mov eax, dword [ebp - 0x38]
push eax
call sub.WS2_32.dll_closesocket
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0xffffffff
jne 0x422a0f
call sub.WS2_32.dll_WSAGetLastError
push eax
push str._connectAndSendData_:_closesocket_error__d.__r_n
call fcn.0046d987
add esp, 8
mov dword [ebp - 0x38], 0xffffffff
mov ecx, dword [ebp - 0x1578]
cmp dword [ecx + 0x10], 0
je 0x422acd
cmp dword [ebp - 0x3c], 0
jne 0x422acd
cmp dword [ebp - 0x14], 0
jne 0x422acd
mov edx, dword [ebp - 0x1578]
add edx, 0xc
push edx
cmp dword [ebp - 0x18], 0
sete al
movzx ecx, al
push ecx
mov edx, dword [ebp - 0x1578]
push edx
lea eax, [ebp - 0x1474]
push eax
mov ecx, dword [ebp - 0x1578]
mov edx, dword [ecx + 0x10]
mov eax, dword [ebp - 0x1578]
mov ecx, dword [eax + 0x10]
mov edx, dword [edx]
mov eax, dword [edx]
call eax
mov dword [ebp - 0x1594], eax
mov ecx, dword [ebp - 0x1594]
mov dword [ebp - 0x1598], ecx
mov byte [ebp - 4], 0x11
mov edx, dword [ebp - 0x1598]
push edx
lea ecx, [ebp - 0x34]
call fcn.00420860
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1474]
call fcn.004148d0
lea ecx, [ebp - 0x34]
call fcn.00423cf0
movzx eax, al
test eax, eax
jne 0x422acd
mov ecx, dword [ebp - 0x1578]
add ecx, 0x30
call fcn.0043d390
mov dword [ebp - 0x14], 1
cmp dword [ebp - 0x14], 0
jne 0x4217fc
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x1478], ecx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x34]
call fcn.004148d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 0xc]
call fcn.004148d0
mov eax, dword [ebp - 0x1478]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0046c016
mov esp, ebp
pop ebp
ret 0x20