Function at 0x57e4c0
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:
test dword [0x7eeab0], 0xffffff80
jne 0x57e4e8
test dword [0x7eeab0], 0xffffffff
jne 0x57eac8
call fcn.006a7b4c
jmp fcn.0057e4c0
push ecx
mov eax, 0x850
call fcn.00697340
mov ecx, dword [esp + 0x850]
mov eax, dword [esp + 0x858]
mov edx, dword [esp + 0x868]
mov dword [eax], 0xffffffff
xor ecx, ecx
mov dword [esp + 0x84c], ecx
mov dword [esp + 0x83c], ebx
mov dword [esp + 0x840], esi
mov dword [esp + 0x844], edi
mov dword [esp + 0x848], ebp
mov esi, edx
mov ebp, dword [esp + 0x86c]
jmp 0x57e54a
mov eax, 1
mov dword [esp + 0x84c], eax
push 6
push 1
push 2
call sub.WSOCK32.dll_socket
mov ebx, eax
push 0x10
push dword [esp + 0x860]
push ebx
call sub.WSOCK32.dll_connect
cmp eax, 0xffffffff
je 0x57ea9c
lea ecx, [esp]
movzx eax, word [esp + 0x864]
push eax
push dword [esp + 0x864]
push str.CONNECT__s:_d_HTTP_1.0_r_n
push ecx
call fcn.006974c6
add esp, 0x10
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e5aa
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e595
dec eax
push 0
push eax
push ecx
push ebx
call sub.WSOCK32.dll_send
mov edi, eax
cmp edi, 0xffffffff
je 0x57ea6a
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e5d9
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e5c4
dec eax
cmp edi, eax
jne 0x57ea6a
push 0x6c5b10
mov ecx, dword [0x7bd020]
call fcn.004feed4
mov word [esp + 0x850], ax
lea eax, [esp + 0x850]
push eax
mov ecx, dword [0x700c0c]
call fcn.004edfbc
mov edi, eax
test edi, edi
je 0x57e7b4
push 0xa
lea ecx, [esp + 0x828]
call fcn.0050ab48
lea eax, [esp + 0x824]
push 1
push eax
mov ecx, edi
call fcn.00502c2c
mov edi, dword [esp + 0x824]
mov eax, 1
cmp dword [edi], 2
mov edi, 0
cmove edi, eax
lea ecx, [esp + 0x824]
call fcn.0050ac00
test edi, edi
je 0x57e7b4
mov eax, dword [esp + 0x84c]
test eax, eax
je 0x57e7b4
lea ecx, [esp + 0x804]
call fcn.004e5750
lea ecx, [esp + 0x814]
call fcn.004e5750
test esi, esi
je 0x57e69e
push esi
lea ecx, [esp + 0x808]
call fcn.004e5464
test ebp, ebp
jne 0x57e6a2
jmp 0x57e6b3
test ebp, ebp
je 0x57e6c3
push ebp
lea ecx, [esp + 0x818]
call fcn.004e5464
test esi, esi
je 0x57e6c3
lea ecx, [esp + 0x804]
call fcn.004e5460
mov edi, eax
jmp 0x57e6c8
mov edi, 0x6c45cc
test ebp, ebp
je 0x57e6da
lea ecx, [esp + 0x814]
call fcn.004e5460
jmp 0x57e6df
mov eax, 0x6c45cc
lea ecx, [esp]
push eax
push edi
push str._s:_s
push ecx
call fcn.006974c6
add esp, 0x10
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e70c
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e6f7
dec eax
lea ecx, [esp + 0x834]
lea edi, [esp + 0x838]
push edi
push ecx
lea ecx, [esp + 8]
mov edx, eax
call fcn.005b4760
lea eax, [esp]
push dword [esp + 0x834]
push str.Proxy_Authorization:_Basic__s
push eax
call fcn.006974c6
add esp, 0xc
mov ecx, dword [esp + 0x834]
call fcn.004db4f8
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e765
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e750
dec eax
push 0
push eax
push ecx
push ebx
call sub.WSOCK32.dll_send
mov edi, eax
cmp edi, 0xffffffff
je 0x57e9bc
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e794
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e77f
dec eax
cmp edi, eax
jne 0x57e9bc
lea ecx, [esp + 0x814]
call fcn.004e56ec
lea ecx, [esp + 0x804]
call fcn.004e56ec
lea eax, [esp]
push 0x6c4a50
push eax
call fcn.006974c6
add esp, 8
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e7df
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e7ca
dec eax
push 0
push eax
push ecx
push ebx
call sub.WSOCK32.dll_send
mov edi, eax
cmp edi, 0xffffffff
je 0x57ea38
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57e80e
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57e7f9
dec eax
cmp edi, eax
jne 0x57ea38
lea eax, [esp]
push 0x800
push 0
push eax
call fcn.006a7cb8
add esp, 0xc
lea eax, [esp]
push 0
push 0x7ff
push eax
push ebx
call sub.WSOCK32.dll_recv
test eax, eax
je 0x57e843
cmp eax, 0xffffffff
jne 0x57e875
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
lea eax, [esp]
push 0x20
push eax
call fcn.00698330
add esp, 8
test eax, eax
je 0x57ea06
mov dword [esp + 0x830], 0
lea ecx, [eax + 1]
movsx edx, byte [ecx]
cmp edx, 0x30
jl 0x57e8e4
cmp edx, 0x39
jg 0x57e8e4
mov byte [esp + 0x830], dl
add eax, 2
movsx edx, byte [eax]
mov dword [esp + 0x800], edx
cmp edx, 0x30
jl 0x57e8e4
cmp edx, 0x39
jg 0x57e8e4
mov ecx, 1
mov byte [esp + ecx + 0x830], dl
inc ecx
inc eax
movsx edx, byte [eax]
cmp edx, 0x30
jl 0x57e8e4
cmp edx, 0x39
jg 0x57e8e4
cmp ecx, 3
jb 0x57e8c9
lea eax, [esp + 0x830]
push eax
call fcn.006976ae
pop ecx
cmp eax, 0xc8
je 0x57e98a
cmp eax, 0x191
jne 0x57e936
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
cmp eax, 0x197
jne 0x57e958
push ebx
call sub.WSOCK32.dll_closesocket
mov eax, dword [esp + 0x84c]
cmp eax, 1
je 0x57ea9c
jmp 0x57e53e
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov edx, ebx
mov eax, dword [esp + 0x858]
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
mov dword [eax], edx
xor eax, eax
add esp, 0x854
ret 0x18
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
lea ecx, [esp + 0x814]
call fcn.004e56ec
lea ecx, [esp + 0x804]
call fcn.004e56ec
mov eax, 1
add esp, 0x854
ret 0x18
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov edx, ebx
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x854
ret 0x18
mov ebx, dword [esp + 0x83c]
mov esi, dword [esp + 0x840]
mov edi, dword [esp + 0x844]
mov ebp, dword [esp + 0x848]
mov eax, 1
add esp, 0x854
ret 0x18
push ecx
mov eax, 0x84c
call fcn.00697340
mov ecx, dword [esp + 0x84c]
mov eax, dword [esp + 0x854]
mov edx, dword [esp + 0x864]
mov dword [eax], 0xffffffff
xor ecx, ecx
mov dword [esp + 0x848], ecx
mov dword [esp + 0x838], ebx
mov dword [esp + 0x83c], esi
mov dword [esp + 0x840], edi
mov dword [esp + 0x844], ebp
mov edi, edx
mov esi, dword [esp + 0x868]
jmp 0x57eb2a
mov eax, 1
mov dword [esp + 0x848], eax
push 6
push 1
push 2
call sub.WSOCK32.dll_socket
mov ebp, eax
push 0x10
push dword [esp + 0x85c]
push ebp
call sub.WSOCK32.dll_connect
cmp eax, 0xffffffff
je 0x57f070
lea ecx, [esp]
movzx eax, word [esp + 0x860]
push eax
push dword [esp + 0x860]
push str.CONNECT__s:_d_HTTP_1.0_r_n
push ecx
call fcn.006974c6
add esp, 0x10
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57eb8a
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57eb75
dec eax
push 0
push eax
push ecx
push ebp
call sub.WSOCK32.dll_send
mov ebx, eax
cmp ebx, 0xffffffff
je 0x57f03e
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57ebb9
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57eba4
dec eax
cmp ebx, eax
jne 0x57f03e
push 0x6c5b10
mov ecx, dword [0x7bd020]
call fcn.004feed4
mov word [esp + 0x84c], ax
lea eax, [esp + 0x84c]
push eax
mov ecx, dword [0x700c0c]
call fcn.004edfbc
mov ebx, eax
test ebx, ebx
je 0x57ed8c
push 0xa
lea ecx, [esp + 0x824]
call fcn.0050ab48
lea eax, [esp + 0x820]
push 1
push eax
mov ecx, ebx
call fcn.00502c2c
mov eax, dword [esp + 0x820]
xor ebx, ebx
cmp dword [eax], 2
sete bl
lea ecx, [esp + 0x820]
call fcn.0050ac00
test ebx, ebx
je 0x57ed8c
mov eax, dword [esp + 0x848]
test eax, eax
je 0x57ed8c
lea ecx, [esp + 0x800]
call fcn.004e5750
lea ecx, [esp + 0x810]
call fcn.004e5750
test edi, edi
je 0x57ec76
push edi
lea ecx, [esp + 0x804]
call fcn.004e5464
test esi, esi
jne 0x57ec7a
jmp 0x57ec8b
test esi, esi
je 0x57ec9b
push esi
lea ecx, [esp + 0x814]
call fcn.004e5464
test edi, edi
je 0x57ec9b
lea ecx, [esp + 0x800]
call fcn.004e5460
mov ebx, eax
jmp 0x57eca0
mov ebx, 0x6c45cc
test esi, esi
je 0x57ecb2
lea ecx, [esp + 0x810]
call fcn.004e5460
jmp 0x57ecb7
mov eax, 0x6c45cc
lea ecx, [esp]
push eax
push ebx
push str._s:_s
push ecx
call fcn.006974c6
add esp, 0x10
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57ece4
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57eccf
dec eax
lea ecx, [esp + 0x830]
lea ebx, [esp + 0x834]
push ebx
push ecx
lea ecx, [esp + 8]
mov edx, eax
call fcn.005b4760
lea eax, [esp]
push dword [esp + 0x830]
push str.Proxy_Authorization:_Basic__s
push eax
call fcn.006974c6
add esp, 0xc
mov ecx, dword [esp + 0x830]
call fcn.004db4f8
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57ed3d
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57ed28
dec eax
push 0
push eax
push ecx
push ebp
call sub.WSOCK32.dll_send
mov ebx, eax
cmp ebx, 0xffffffff
je 0x57ef90
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57ed6c
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57ed57
dec eax
cmp ebx, eax
jne 0x57ef90
lea ecx, [esp + 0x810]
call fcn.004e56ec
lea ecx, [esp + 0x800]
call fcn.004e56ec
lea eax, [esp]
push 0x6c4a50
push eax
call fcn.006974c6
add esp, 8
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57edb7
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57eda2
dec eax
push 0
push eax
push ecx
push ebp
call sub.WSOCK32.dll_send
mov ebx, eax
cmp ebx, 0xffffffff
je 0x57f00c
lea ecx, [esp]
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x57ede6
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x57edd1
dec eax
cmp ebx, eax
jne 0x57f00c
lea eax, [esp]
push 0x800
push 0
push eax
call fcn.006a7cb8
add esp, 0xc
lea eax, [esp]
push 0
push 0x7ff
push eax
push ebp
call sub.WSOCK32.dll_recv
test eax, eax
je 0x57ee1b
cmp eax, 0xffffffff
jne 0x57ee4d
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x850
ret 0x18
lea eax, [esp]
push 0x20
push eax
call fcn.00698330
add esp, 8
test eax, eax
je 0x57efda
mov dword [esp + 0x82c], 0
lea ecx, [eax + 1]
movsx edx, byte [ecx]
cmp edx, 0x30
jl 0x57eeb8
cmp edx, 0x39
jg 0x57eeb8
mov byte [esp + 0x82c], dl
add eax, 2
movsx ecx, byte [eax]
cmp ecx, 0x30
jl 0x57eeb8
cmp ecx, 0x39
jg 0x57eeb8
mov ecx, 1
movzx edx, byte [eax]
mov byte [esp + ecx + 0x82c], dl
inc ecx
inc eax
movsx ebx, byte [eax]
cmp ebx, 0x30
jl 0x57eeb8
cmp ebx, 0x39
jg 0x57eeb8
cmp ecx, 3
jb 0x57ee9a
lea eax, [esp + 0x82c]
push eax
call fcn.006976ae
pop ecx
cmp eax, 0xc8
je 0x57ef5e
cmp eax, 0x191
jne 0x57ef0a
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x850
ret 0x18
cmp eax, 0x197
jne 0x57ef2c
push ebp
call sub.WSOCK32.dll_closesocket
mov eax, dword [esp + 0x848]
cmp eax, 1
je 0x57f070
jmp 0x57eb1e
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x850
ret 0x18
mov edx, ebp
mov eax, dword [esp + 0x854]
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
mov dword [eax], edx
xor eax, eax
add esp, 0x850
ret 0x18
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
lea ecx, [esp + 0x810]
call fcn.004e56ec
lea ecx, [esp + 0x800]
call fcn.004e56ec
mov eax, 1
add esp, 0x850
ret 0x18
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x850
ret 0x18
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x850
ret 0x18
mov edx, ebp
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
push edx
call sub.WSOCK32.dll_closesocket
mov eax, 1
add esp, 0x850
ret 0x18
mov ebx, dword [esp + 0x838]
mov esi, dword [esp + 0x83c]
mov edi, dword [esp + 0x840]
mov ebp, dword [esp + 0x844]
mov eax, 1
add esp, 0x850
ret 0x18