Function at 0x403b30
Capabilities:
Get socket status
Receive data
Receive data on socket
Send data
Send data on socket
Send http request
Send http request with host header

Disassembly:
mov eax, 0xccb0
call fcn.0040ce80
push ebx
push ebp
push esi
lea eax, [esp + 0x14]
push edi
xor ebx, ebx
push eax
mov byte [esp + 0x16], bl
call fcn.0040c91f
lea ecx, [esp + 0x1c]
push ecx
call fcn.0040dafe
push eax
push str._y_m_d_H_M_S
lea edx, [esp + 0xcc]
push 0x80
push edx
call fcn.0040dfea
mov esi, dword [esp + 0xccdc]
add esp, 0x18
mov ax, word [esi + 0x14]
mov ecx, dword [esi + 0x10]
cmp ax, 0x50
jne 0x403ba5
push ecx
call sub.WSOCK32.dll_inet_ntoa
push eax
lea eax, [esp + 0x2c0]
push 0x41c758
push eax
call fcn.0040d799
add esp, 0xc
jmp 0x403bc7
and eax, 0xffff
push eax
push ecx
call sub.WSOCK32.dll_inet_ntoa
push eax
lea ecx, [esp + 0x2c4]
push str._s:_d
push ecx
call fcn.0040d799
add esp, 0x10
mov al, byte [0xba81b2]
mov edx, dword [esi + 0x20]
cmp al, bl
mov eax, dword [esi + 0x1c]
push edx
lea ecx, [esi + 0x162c]
push eax
lea edx, [esp + 0xc4]
push ecx
push edx
je 0x403c06
lea eax, [esp + 0x2cc]
lea ecx, [esp + 0x24c]
push eax
push str.http:___s_R_s_FileX_Stat_s_CID_dPID_d
push ecx
call fcn.0040d799
add esp, 0x1c
jmp 0x403c1b
lea eax, [esp + 0x24c]
push str._R_s_FileX_Stat_s_CID_dPID_d
push eax
call fcn.0040d799
add esp, 0x18
lea ecx, [esp + 0x2bc]
lea edx, [esp + 0x23c]
push ecx
push edx
lea eax, [esp + 0x4cc8]
push str.GET__s_HTTP_1.1_r_nAccept:___r_nAccept_Language:_en_us_r_nUser_Agent:_Mozilla_4.0__compatible__MSIE_8.0__Windows_NT_5.1__Trident_4.0__GTB6__.NET_CLR_1.1.4322__.NET_CLR_2.0.50727__.NET_CLR_3.0.4506.2152__.NET_CLR_3.5.30729__r_nAccept_Encoding:_gzip__deflate_r_nHost:__s_r_nConnection:_Keep_Alive_r_nCache_Control:_no_cache_r_n_r_n
push eax
call fcn.0040d799
lea edi, [esp + 0x4cd0]
or ecx, 0xffffffff
xor eax, eax
add esp, 0x10
repne scasb al, byte es:[edi]
mov al, byte [0xba81b2]
mov dword [esp + 0x54], ebx
not ecx
dec ecx
cmp al, bl
mov edi, ecx
je 0x403c78
mov ecx, dword [0xba80ac]
mov dx, word [0xba80b0]
mov dword [esp + 0x50], ecx
mov word [esp + 0x4a], dx
jmp 0x403c88
mov eax, dword [esi + 0x10]
mov cx, word [esi + 0x14]
mov dword [esp + 0x50], eax
mov word [esp + 0x4a], cx
lea edx, [esp + 0x44]
push 1
push edx
call fcn.00403fd0
add esp, 8
test al, al
je 0x403f9b
mov ecx, dword [esp + 0x60]
push ebx
lea eax, [esp + 0x4cc4]
push edi
push eax
push ecx
call sub.WSOCK32.dll_send
cmp eax, edi
jne 0x403fa8
mov byte [esp + 0x13], bl
xor ebp, ebp
mov edx, dword [esp + 0x60]
lea eax, [esp + 0x1c]
push eax
push ebx
lea ecx, [esp + 0x3c4]
push ebx
push ecx
push 1
mov dword [esp + 0x3d0], 1
mov dword [esp + 0x3d4], edx
mov dword [esp + 0x30], 0xf
mov dword [esp + 0x34], ebx
call sub.WSOCK32.dll_select
cmp eax, 0xffffffff
je 0x403e3a
cmp eax, ebx
je 0x403fa8
mov ecx, dword [esp + 0x60]
mov edx, 0x2000
sub edx, ebp
push ebx
lea eax, [esp + ebp + 0xcc4]
push edx
push eax
push ecx
call sub.WSOCK32.dll_recv
mov esi, eax
cmp esi, 0xffffffff
je 0x403f85
cmp esi, ebx
je 0x403f85
mov al, byte [esp + 0x13]
add ebp, esi
cmp al, bl
jne 0x403e2d
lea edx, [esp + 0xcc0]
push str._r_n_r_n
push edx
mov byte [esp + ebp + 0xcc8], bl
call fcn.0040de00
mov edx, eax
add esp, 8
cmp edx, ebx
je 0x403cc1
mov edi, str._r_n_r_n
or ecx, 0xffffffff
xor eax, eax
lea esi, [esp + 0xcc0]
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea edi, [esp + 0x4c0]
mov eax, ecx
lea ecx, [esp + 0xcc0]
sub edx, ecx
mov byte [esp + 0x13], 1
add eax, edx
mov ecx, eax
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
mov edx, ebp
and ecx, 3
sub edx, eax
rep movsb byte es:[edi], byte [esi]
mov ecx, edx
mov byte [esp + eax + 0x4c0], bl
lea esi, [esp + eax + 0xcc0]
mov eax, ecx
lea edi, [esp + 0xcc0]
mov ebp, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x4c0]
push ecx
call sym.Sure_XLite.exe__WS_RetCode_4
cmp eax, 0xc8
jne 0x403e44
lea edx, [esp + 0x13c]
lea eax, [esp + 0x4c0]
push edx
push str.Content_Length:
push eax
call sym.Sure_XLite.exe__WS_HeadParse_12
test eax, eax
jne 0x403fa8
lea ecx, [esp + 0x13c]
push ecx
call fcn.0040dfdf
add esp, 4
cmp eax, 0x10000
mov dword [esp + 0x14], eax
jg 0x403fa8
jmp 0x403e31
mov eax, dword [esp + 0x14]
cmp ebp, eax
je 0x403e61
jmp 0x403cc1
push str.Hub_Socket_Error
jmp 0x403fa0
cmp eax, 0x194
jne 0x403fa8
mov edx, dword [esp + 0xccc4]
mov dword [edx], 7
jmp 0x403fa8
mov ecx, eax
lea esi, [esp + 0xcc0]
mov edx, ecx
lea edi, [esp + 0x2cc0]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push 0x20
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov byte [esp + eax + 0x2cc4], bl
lea eax, [esp + 0x28]
push eax
push str.State
lea ecx, [esp + 0x2ccc]
push ebx
push ecx
call sym.Sure_XLite.exe__WS_XMLparm_20
lea edx, [esp + 0x24]
push str.Ready
push edx
call fcn.0040eb50
add esp, 8
test eax, eax
jne 0x403ed1
mov eax, dword [esp + 0xccc4]
mov bl, 1
mov dword [eax], 2
mov dword [eax + 4], 0x64
jmp 0x403fac
lea eax, [esp + 0x24]
push str.Transcode
push eax
call fcn.0040eb50
add esp, 8
test eax, eax
jne 0x403f5e
mov esi, dword [esp + 0xccc4]
lea ecx, [esp + 0x13c]
push 0x100
push ecx
push str.QPos
lea edx, [esp + 0x2ccc]
push ebx
push edx
mov dword [esi], 1
call sym.Sure_XLite.exe__WS_XMLparm_20
lea eax, [esp + 0x13c]
push eax
call fcn.0040dfdf
add esp, 4
lea ecx, [esp + 0x13c]
lea edx, [esp + 0x2cc0]
mov dword [esi + 8], eax
push 0x100
push ecx
push 0x41c574
push ebx
push edx
call sym.Sure_XLite.exe__WS_XMLparm_20
lea eax, [esp + 0x13c]
push eax
call fcn.0040dfdf
add esp, 4
mov dword [esi + 4], eax
mov bl, 1
jmp 0x403fac
lea ecx, [esp + 0x24]
push 0x41c56c
push ecx
call fcn.0040eb50
add esp, 8
test eax, eax
jne 0x403f81
mov edx, dword [esp + 0xccc4]
mov dword [edx], 7
mov bl, 1
jmp 0x403fac
call sub.WSOCK32.dll_WSAGetLastError
push eax
push esi
push str.Rprt_HUB_Socket_Nob_d_Err_d
call sym.Sure_XLite.exe_xLogMsg
add esp, 0xc
jmp 0x403fa8
push str.FileStat_Connection_to_HUB_Error
call sym.Sure_XLite.exe_xLogMsg
add esp, 4
mov bl, byte [esp + 0x12]
mov eax, dword [esp + 0x60]
push eax
call sub.WSOCK32.dll_closesocket
neg bl
sbb ebx, ebx
pop edi
neg ebx
dec ebx
pop esi
mov eax, ebx
pop ebp
pop ebx
add esp, 0xccb0
ret