Function at 0x465ec0
Capabilities:
Connect socket
Receive data
Receive data on socket
Resolve function by parsing pe exports
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 0x4ad4c7
push eax
mov eax, 0x155c
mov dword fs:[0], esp
call fcn.004a2ae0
mov al, byte [esp + 3]
push ebx
push ebp
push esi
xor ebx, ebx
push edi
push ebx
lea ecx, [esp + 0x1c]
mov byte [esp + 0x1c], al
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov cl, byte [esp + 0x13]
push ebx
mov byte [esp + 0x2c], cl
lea ecx, [esp + 0x2c]
mov dword [esp + 0x1578], ebx
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov edi, str._index.html
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str._index.html
lea ecx, [esp + 0x30]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov dl, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1578], 1
mov byte [esp + 0x3c], dl
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov esi, dword [esp + 0x157c]
or ecx, 0xffffffff
mov edi, esi
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push esi
lea ecx, [esp + 0x40]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov al, byte [esp + 0x13]
push ebx
lea ecx, [esp + 0x4c]
mov byte [esp + 0x1578], 2
mov byte [esp + 0x4c], al
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
mov edi, str.http:__www.360.cn_
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push str.http:__www.360.cn_
lea ecx, [esp + 0x50]
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::assign_char_const___unsigned_int_]
mov eax, dword [esp + 0x24]
mov byte [esp + 0x1574], 3
cmp eax, 0x400
jae 0x465fc8
push ebx
push 0x400
lea ecx, [esp + 0x20]
call dword [sym.imp.MSVCP60.dll_private:_bool___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Grow_unsigned_int__bool_]
mov eax, dword [esp + 0x2c]
cmp eax, ebx
jne 0x465fd5
mov eax, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
push eax
lea ecx, [esp + 0x1c]
push str.GET__s_HTTP_1.1_r_n
push ecx
call fcn.00465320
add esp, 0xc
lea edx, [esp + 0x18]
push str.Accept:___r_n
push edx
call fcn.00465320
add esp, 8
lea eax, [esp + 0x18]
push str.User_Agent:_Mozilla_4.0_compatible_MSIE_5.00_Windows_98__r_n
push eax
call fcn.00465320
mov eax, dword [0x4d3a50]
add esp, 8
push eax
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea ecx, [esp + 0x1c]
push str.Host:__s_r_n
push ecx
call fcn.00465320
add esp, 0xc
lea edx, [esp + 0x18]
push str.Connection:_Close_r_n
push edx
call fcn.00465320
add esp, 8
lea eax, [esp + 0x18]
push esi
push str.DPUName:__s_r_n
push eax
call fcn.00465320
add esp, 0xc
lea ecx, [esp + 0x18]
push str.Cache_Control:_no_cache_r_n
push ecx
call fcn.00465320
add esp, 8
lea edx, [esp + 0x18]
push 0x4c9098
push edx
call fcn.00465320
add esp, 8
push ebx
push 1
push 2
call dword [sym.imp.WS2_32.dll_socket]
mov ebp, eax
cmp ebp, ebx
jl 0x466246
xor eax, eax
push 0x50
mov dword [esp + 0x74], eax
mov word [esp + 0x74], 2
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
call dword [sym.imp.WS2_32.dll_htons]
mov ecx, dword [0x4d3a50]
lea edx, [esp + 0x70]
push 0x10
push edx
push ebp
mov word [esp + 0x7e], ax
mov dword [esp + 0x80], ecx
call dword [sym.imp.WS2_32.dll_connect]
test eax, eax
jge 0x4660dd
push ebp
call dword [sym.imp.WS2_32.dll_closesocket]
jmp 0x466246
mov esi, dword [sym.imp.WS2_32.dll_setsockopt]
lea eax, [esp + 0x80]
push 4
push eax
push 0x1006
push 0xffff
push ebp
mov dword [esp + 0x94], 0x2710
call esi
lea ecx, [esp + 0x58]
push 4
push ecx
push 0x80
push 0xffff
push ebp
mov word [esp + 0x6c], bx
mov word [esp + 0x6e], bx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebx
mov ebx, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
je 0x466133
mov ebx, eax
mov edi, dword [esp + 0x20]
xor esi, esi
test edi, edi
jle 0x46615d
mov edx, edi
lea eax, [esi + ebx]
sub edx, esi
push 0
push edx
push eax
push ebp
call dword [sym.imp.WS2_32.dll_send]
test eax, eax
jle 0x4660d1
add esi, eax
cmp esi, edi
jl 0x46613d
mov ecx, 0x4ff
xor eax, eax
lea edi, [esp + 0x16d]
mov byte [esp + 0x16c], 0
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0x84]
xor esi, esi
stosb byte es:[edi], al
call fcn.0047d500
xor edi, edi
mov byte [esp + 0x1574], 4
mov dword [esp + 0x6c], edi
xor ebx, ebx
mov dword [esp + 0x14], edi
mov ecx, 0x1400
lea eax, [esp + esi + 0x16c]
sub ecx, esi
push 0
push ecx
push eax
push ebp
call dword [sym.imp.WS2_32.dll_recv]
test eax, eax
jle 0x466223
add esi, eax
test edi, edi
jne 0x466202
lea edx, [esp + 0x16c]
push esi
push edx
lea ecx, [esp + 0x8c]
call fcn.0047d7c0
lea ecx, [esp + 0x84]
call fcn.00453c50
mov edi, eax
test edi, edi
je 0x466202
lea ecx, [esp + 0x84]
call fcn.0047ee10
lea ecx, [esp + 0x84]
mov ebx, eax
call fcn.0043f0f0
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add eax, ebx
cmp esi, eax
jb 0x46619a
test edi, edi
je 0x46619a
mov ecx, dword [esp + 0x14]
add ecx, ebx
cmp esi, ecx
jne 0x466223
test ebx, ebx
mov esi, 1
ja 0x466227
mov esi, dword [esp + 0x6c]
push ebp
call dword [sym.imp.WS2_32.dll_closesocket]
test esi, esi
jne 0x4662a0
lea ecx, [esp + 0x84]
mov byte [esp + 0x1574], 3
call fcn.0047d620
push 1
lea ecx, [esp + 0x4c]
mov byte [esp + 0x1578], 2
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x1578], 1
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x2c]
mov byte [esp + 0x1578], 0
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
push 1
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1578], 0xffffffff
call dword [sym.imp.MSVCP60.dll_private:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Tidy_bool_]
xor eax, eax
jmp 0x46653d
mov edx, dword [esp + 0x14]
push 0x4c9098
push str.Servers:
lea eax, [esp + edx + 0x174]
push eax
mov byte [eax + ebx], 0
lea eax, [esp + 0x68]
push eax
call fcn.00465440
add esp, 0x10
mov ebp, dword [esp + 0x60]
test ebp, ebp
jne 0x4662d5
mov ebp, dword [sym.imp.MSVCP60.dll_char_const__private:_static_char_const____cdecl_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::_Nullstr_void_::_2::_C]
mov ebx, dword [esp + 0x1580]
mov ecx, 8
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
push 0x2c
push ebp
xor edi, edi
call dword [sym.imp.MSVCRT.dll_strchr]
mov esi, eax
xor edx, edx
add esp, 8
cmp esi, edx
je 0x466330
push ebp
mov byte [esi], 0
call dword [sym.imp.WS2_32.dll_inet_addr]
mov dword [ebx], eax
inc edi
add ebx, 4
cmp edi, 8
lea ebp, [esi + 1]
jge 0x466327
push 0x2c
push ebp
call dword [sym.imp.MSVCRT.dll_strchr]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4662fd
mov ebx, dword [esp + 0x1580]
xor edx, edx
mov eax, dword [ebx]
mov ecx, dword [esp + 0x60]
cmp eax, edx
jne 0x466441
cmp ecx, edx
je 0x46635f
mov al, byte [ecx - 1]
dec ecx
test al, al
je 0x466354
cmp al, 0xff
je 0x466354
dec al
mov byte [ecx], al
jmp 0x46635f
push ecx
call fcn.00442ac0
add esp, 4
xor edx, edx
lea ecx, [esp + 0x84]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov byte [esp + 0x1574], 3
call fcn.0047d620
mov ecx, dword [esp + 0x4c]
xor esi, esi
cmp ecx, esi
je 0x4663a5
mov al, byte [ecx - 1]
test al, al
je 0x46639b
cmp al, 0xff
je 0x46639b
dec al
mov byte [ecx - 1], al
jmp 0x4663a5
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x4c], esi
cmp ecx, esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
je 0x4663d5
mov al, byte [ecx - 1]
test al, al
je 0x4663cb
cmp al, 0xff
je 0x4663cb
dec al
mov byte [ecx - 1], al
jmp 0x4663d5
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x3c], esi
cmp ecx, esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
je 0x466405
mov al, byte [ecx - 1]
test al, al
je 0x4663fb
cmp al, 0xff
je 0x4663fb
dec al
mov byte [ecx - 1], al
jmp 0x466405
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2c], esi
cmp ecx, esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
je 0x46643a
mov al, byte [ecx - 1]
test al, al
je 0x466430
cmp al, 0xff
je 0x466430
dec al
mov byte [ecx - 1], al
xor eax, eax
jmp 0x46653d
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
xor eax, eax
jmp 0x46653d
cmp ecx, edx
je 0x466462
mov al, byte [ecx - 1]
dec ecx
test al, al
je 0x466457
cmp al, 0xff
je 0x466457
dec al
mov byte [ecx], al
jmp 0x466462
push ecx
call fcn.00442ac0
add esp, 4
xor edx, edx
lea ecx, [esp + 0x84]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov byte [esp + 0x1574], 3
call fcn.0047d620
mov ecx, dword [esp + 0x4c]
xor esi, esi
cmp ecx, esi
je 0x4664a8
mov al, byte [ecx - 1]
test al, al
je 0x46649e
cmp al, 0xff
je 0x46649e
dec al
mov byte [ecx - 1], al
jmp 0x4664a8
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x4c], esi
cmp ecx, esi
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
je 0x4664d8
mov al, byte [ecx - 1]
test al, al
je 0x4664ce
cmp al, 0xff
je 0x4664ce
dec al
mov byte [ecx - 1], al
jmp 0x4664d8
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x3c], esi
cmp ecx, esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
je 0x466508
mov al, byte [ecx - 1]
test al, al
je 0x4664fe
cmp al, 0xff
je 0x4664fe
dec al
mov byte [ecx - 1], al
jmp 0x466508
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x2c], esi
cmp ecx, esi
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], esi
je 0x466538
mov al, byte [ecx - 1]
test al, al
je 0x46652e
cmp al, 0xff
je 0x46652e
dec al
mov byte [ecx - 1], al
jmp 0x466538
dec ecx
push ecx
call fcn.00442ac0
add esp, 4
mov eax, 1
mov ecx, dword [esp + 0x156c]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1568
ret