Function at 0x5416e4
Capabilities:
Act as tcp client
Connect socket
Connect tcp socket
Create tcp socket
Receive data
Receive data on socket
Send data
Send data on socket
Send http request

Disassembly:
push ecx
mov eax, 0x850
call fcn.006021b0
mov ecx, dword [esp + 0x850]
mov edx, dword [esp + 0x858]
movzx ecx, word [esp + 0x864]
xor al, al
mov dword [edx], 0xffffffff
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov dword [esp + 4], edi
mov dword [esp], ebp
mov bl, al
jmp 0x541722
mov bl, 1
push 6
push 1
push 2
call sub.WSOCK32.dll_socket
mov ebp, eax
push 0x10
push dword [esp + 0x860]
push ebp
call sub.WSOCK32.dll_connect
cmp eax, 0xffffffff
je 0x541c56
lea ecx, [esp + 0x1c]
movzx edx, word [esp + 0x864]
push edx
push dword [esp + 0x864]
push str.CONNECT__s:_d_HTTP_1.0_r_n
push ecx
call fcn.00602336
add esp, 0x10
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x54177f
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x541777
lea edx, [esp + 0x1c]
push 0
push eax
push edx
push ebp
call sub.WSOCK32.dll_send
mov esi, eax
cmp esi, 0xffffffff
je 0x541c43
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x5417ae
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x5417a6
cmp esi, eax
jne 0x541c1e
push 0x74ed50
mov ecx, dword [0x65f510]
call fcn.004f3970
mov ecx, dword [0x65e7cc]
mov dword [esp + 0x14], ecx
mov word [esp + 0x18], ax
lea edx, [esp + 0x18]
push edx
call fcn.004e853c
mov esi, eax
test esi, esi
je 0x5419b2
lea ecx, [esp + 0x81c]
push 0xa
call fcn.004ff268
lea edx, [esp + 0x81c]
push 1
push edx
mov ecx, esi
call fcn.004f7954
mov edx, dword [esp + 0x81c]
cmp dword [edx], 2
jne 0x54181c
mov dl, 1
mov byte [esp + 0x10], dl
jmp 0x541822
xor dl, dl
mov byte [esp + 0x10], dl
lea ecx, [esp + 0x81c]
call fcn.005003d8
mov dl, byte [esp + 0x10]
test dl, dl
je 0x5419b2
test bl, bl
je 0x5419b2
lea ecx, [esp + 0x828]
call fcn.004e2900
lea ecx, [esp + 0x838]
call fcn.004e2900
mov edx, dword [esp + 0x868]
test edx, edx
je 0x541886
lea ecx, [esp + 0x828]
mov edx, dword [esp + 0x868]
push edx
call fcn.004e292c
mov edx, dword [esp + 0x86c]
test edx, edx
jne 0x541891
jmp 0x5418b0
mov edx, dword [esp + 0x86c]
test edx, edx
je 0x5418c0
lea ecx, [esp + 0x838]
mov edx, dword [esp + 0x86c]
push edx
call fcn.004e292c
mov edx, dword [esp + 0x868]
test edx, edx
je 0x5418c0
lea ecx, [esp + 0x828]
call fcn.004e2a14
mov esi, eax
jmp 0x5418c5
mov esi, 0x62c58c
mov edx, dword [esp + 0x86c]
test edx, edx
je 0x5418de
lea ecx, [esp + 0x838]
call fcn.004e2a14
jmp 0x5418e3
mov eax, 0x62c58c
lea edx, [esp + 0x1c]
push eax
push esi
push str._s:_s
push edx
call fcn.00602336
add esp, 0x10
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x54190d
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x541905
lea ecx, [esp + 0x1c]
lea edi, [esp + 0x84c]
lea esi, [esp + 0x848]
push esi
push edi
mov edx, eax
call fcn.0056ae18
lea edx, [esp + 0x1c]
push dword [esp + 0x84c]
push str.Proxy_Authorization:_Basic__s
push edx
call fcn.00602336
add esp, 0xc
mov ecx, dword [esp + 0x84c]
call fcn.004dbc10
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x541963
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x54195b
lea edx, [esp + 0x1c]
push 0
push eax
push edx
push ebp
call sub.WSOCK32.dll_send
mov esi, eax
cmp esi, 0xffffffff
je 0x541b76
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x541992
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x54198a
cmp esi, eax
jne 0x541b39
lea ecx, [esp + 0x838]
call fcn.004e2a1c
lea ecx, [esp + 0x828]
call fcn.004e2a1c
lea edx, [esp + 0x1c]
push 0x62cd1c
push edx
call fcn.00602336
add esp, 8
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x5419da
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x5419d2
lea edx, [esp + 0x1c]
push 0
push eax
push edx
push ebp
call sub.WSOCK32.dll_send
mov esi, eax
cmp esi, 0xffffffff
je 0x541c0b
lea edi, [esp + 0x1c]
xor eax, eax
mov dh, byte [edi]
mov ecx, edi
test dh, dh
je 0x541a09
inc ecx
inc eax
mov dl, byte [ecx]
test dl, dl
jne 0x541a01
cmp esi, eax
jne 0x541be6
lea edi, [esp + 0x1c]
xor eax, eax
mov ecx, 0x200
rep stosd dword es:[edi], eax
lea edx, [esp + 0x1c]
push 0
push 0x7ff
push edx
push ebp
call sub.WSOCK32.dll_recv
cmp eax, 0xffffffff
je 0x541bd3
test eax, eax
je 0x541bae
lea edx, [esp + 0x1c]
push 0x20
push edx
call fcn.00603190
add esp, 8
test eax, eax
je 0x541b89
xor esi, esi
lea edx, [esp + 0x850]
mov dword [edx], 0
lea ecx, [eax + 1]
mov dl, byte [eax + 1]
cmp dl, 0x30
jl 0x541a93
cmp dl, 0x39
jg 0x541a93
mov dl, byte [ecx]
mov byte [esp + esi + 0x850], dl
inc ecx
mov dl, byte [ecx]
inc esi
cmp dl, 0x30
jl 0x541a93
cmp dl, 0x39
jg 0x541a93
cmp esi, 3
jb 0x541a77
lea edx, [esp + 0x850]
push edx
call fcn.0060251a
pop ecx
cmp eax, 0xc8
je 0x541b14
cmp eax, 0x191
jne 0x541ad4
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
cmp eax, 0x197
jne 0x541aef
push ebp
call sub.WSOCK32.dll_closesocket
cmp bl, 1
je 0x541c73
jmp 0x541720
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov eax, ebp
mov edx, dword [esp + 0x858]
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
mov dword [edx], eax
xor eax, eax
add esp, 0x854
ret 0x18
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
lea ecx, [esp + 0x838]
call fcn.004e2a1c
lea ecx, [esp + 0x828]
call fcn.004e2a1c
mov eax, 1
add esp, 0x854
ret 0x18
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
jmp 0x541b4a
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
jmp 0x541bbf
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
jmp 0x541bf7
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
push eax
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov eax, ebp
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
jmp 0x541c2f
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
mov eax, 1
add esp, 0x854
ret 0x18
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov edi, dword [esp + 4]
mov ebp, dword [esp]
mov eax, 1
add esp, 0x854
ret 0x18