Function at 0x488a70
Capabilities:
Send data
Send data on socket
Send http request
Set socket configuration

Disassembly:
sub esp, 0xae4
push ebx
push ebp
push esi
mov ebp, ecx
mov esi, edx
push edi
mov edx, 0x3e7
lea ecx, [esp + 0x24]
mov dword [esp + 0x10], ebp
call fcn.0041ef30
xor ebx, ebx
cmp esi, 4
ja case.default.0x488a9b
jmp dword [esi*4 + 0x488ff8]
xor eax, eax
mov ax, word [ebp + 0x64]
mov byte [esp + 0x24], 4
mov byte [esp + 0x25], 1
push eax
call dword [sym.imp.WSOCK32.dll_ntohs]
push ebp
mov word [esp + 0x2a], ax
call dword [sym.imp.WSOCK32.dll_inet_addr]
mov ecx, eax
mov edx, eax
mov dword [esp + 0x18], eax
mov byte [esp + 0x28], al
mov al, byte [0x5a8a90]
shr ecx, 0x10
shr edx, 0x18
cmp al, bl
mov byte [esp + 0x29], ah
mov byte [esp + 0x2a], cl
mov byte [esp + 0x2b], dl
je 0x488b1a
xor eax, eax
mov edi, edi
mov cl, byte [eax + 0x5a8a90]
mov byte [esp + eax + 0x2c], cl
inc eax
cmp cl, bl
jne 0x488af0
mov eax, 0x5a8a90
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488b07
sub eax, edx
lea esi, [eax + 8]
mov byte [esp + esi + 0x24], bl
inc esi
jmp 0x488b62
mov esi, 8
mov byte [esp + esi + 0x24], bl
inc esi
jmp 0x488b62
cmp byte [0x5a8a90], bl
mov byte [esp + 0x24], 5
je 0x488b4c
cmp byte [0x5a8af8], bl
je 0x488b4c
mov byte [esp + 0x25], 2
mov byte [esp + 0x27], 2
mov esi, 4
jmp 0x488b5a
mov byte [esp + 0x25], 1
mov byte [esp + 0x27], bl
mov esi, 3
mov byte [esp + 0x26], bl
mov byte [esp + esi + 0x24], bl
cmp esi, ebx
jle case.default.0x488a9b
mov ecx, dword [ebp + 0x7c]
push ebx
push esi
lea eax, [esp + 0x2c]
push eax
push ecx
call dword [sym.imp.WSOCK32.dll_send]
cmp eax, esi
jne case.default.0x488a9b
mov edx, dword [0x5b4314]
mov eax, dword [ebp + 0x7c]
push 0x21
push 0x8032
push edx
push eax
call dword [sym.imp.WSOCK32.dll_WSAAsyncSelect]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0xae4
ret
movzx eax, word [ebp + 0x64]
mov esi, dword [sym.imp.USER32.dll_wsprintfA]
push eax
push ebp
lea ecx, [esp + 0x2c]
push str.CONNECT__s:_ld_HTTP_1.0_r_n
push ecx
call esi
mov al, byte [0x5a8a90]
add esp, 0x10
cmp al, bl
je 0x488c80
cmp byte [0x5a8af8], bl
je 0x488c80
push 0x5a8af8
push 0x5a8a90
lea edx, [esp + 0x7fc]
push str._s:_s
push edx
call esi
lea eax, [esp + 0x804]
add esp, 0x10
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488c05
push 1
push 0x104
lea ecx, [esp + 0x97c]
sub eax, edx
push ecx
mov edx, eax
lea ecx, [esp + 0x800]
call fcn.004dad00
test eax, eax
jl 0x488c80
lea eax, [esp + 0x24]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488c36
sub eax, edx
lea edx, [esp + 0x974]
push edx
lea eax, [esp + eax + 0x28]
push str.Authorization:_Basic__s_r_n
push eax
call esi
lea eax, [esp + 0x30]
add esp, 0xc
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488c60
lea ecx, [esp + 0x974]
push ecx
sub eax, edx
lea edx, [esp + eax + 0x28]
push str.Proxy_Authorization:_Basic__s_r_n
push edx
call esi
add esp, 0xc
lea edi, [esp + 0x24]
dec edi
mov al, byte [edi + 1]
inc edi
cmp al, bl
jne 0x488c85
mov ax, word [0x583b70]
mov cl, byte [0x583b72]
mov word [edi], ax
lea esi, [esp + 0x24]
mov byte [edi + 2], cl
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
cmp al, bl
jne 0x488ca6
sub esi, ecx
jmp 0x488b5e
mov eax, 0x5a8a90
mov byte [esp + 0x24], 1
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488cc1
sub eax, edx
mov byte [esp + 0x25], al
xor eax, eax
mov cl, byte [eax + 0x5a8a90]
mov byte [esp + eax + 0x26], cl
inc eax
cmp cl, bl
jne 0x488cd0
mov eax, 0x5a8a90
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488ce7
sub eax, edx
mov esi, eax
mov eax, 0x5a8af8
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488d00
sub eax, edx
mov byte [esp + esi + 0x26], al
mov eax, 0x5a8af8
lea edx, [esp + 0x25]
sub edx, eax
lea edx, [edx + esi + 2]
lea esp, [esp]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x488d20
mov eax, 0x5a8af8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488d32
sub eax, edx
lea esi, [esi + eax + 3]
jmp 0x488b5e
mov eax, dword [ebp + 0x68]
cmp eax, ebx
mov byte [esp + 0x24], 5
jne 0x488d57
mov byte [esp + 0x25], 1
jmp 0x488d65
cmp eax, 1
jne 0x488df8
mov byte [esp + 0x25], 2
mov esi, dword [sym.imp.WSOCK32.dll_inet_addr]
push ebp
mov byte [esp + 0x2a], bl
call esi
cmp eax, 0xffffffff
jne 0x488db3
mov eax, ebp
mov byte [esp + 0x27], 3
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488d81
sub eax, edx
lea edx, [esp + 0x29]
mov byte [esp + 0x28], al
mov eax, ebp
sub edx, ebp
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x488d96
mov eax, ebp
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488da5
sub eax, edx
lea esi, [eax + 5]
jmp 0x488dde
push ebp
mov byte [esp + 0x2b], 1
call esi
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x28], al
mov byte [esp + 0x29], ah
shr eax, 0x10
shr ecx, 0x18
mov byte [esp + 0x2a], al
mov byte [esp + 0x2b], cl
mov esi, 8
xor edx, edx
mov dx, word [ebp + 0x64]
push edx
call dword [sym.imp.WSOCK32.dll_ntohs]
mov word [esp + esi + 0x24], ax
add esi, 2
jmp 0x488b5e
mov edx, dword [ebp + 0x70]
push ebx
mov ecx, ebp
call fcn.004883a0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xae4
ret
mov eax, dword [0x5a8a20]
cmp eax, ebx
mov edi, dword [esp + 0x10]
mov ebp, dword [edi + 0x70]
je 0x488fd5
cmp edi, eax
je 0x488e3f
mov eax, dword [eax + 0x80]
cmp eax, ebx
jne 0x488e24
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xae4
ret
mov edx, 0x3e7
lea ecx, [esp + 0x40c]
call fcn.0041ef30
lea edx, [esp + 0x40c]
mov ecx, 0xa93
call fcn.0041d620
mov esi, dword [0x5ab6c4]
cmp esi, ebx
je 0x488eba
jmp 0x488e70
cmp dword [esi + 8], ebp
jne 0x488e80
mov ecx, esi
call fcn.004e29b0
test eax, eax
je 0x488e8c
mov esi, dword [esi + 0x2424]
cmp esi, ebx
jne 0x488e70
jmp 0x488eba
lea ecx, [esp + 0x40c]
lea edi, [esi + 0x444]
push ecx
mov edx, 0x3e7
mov ecx, edi
call fcn.0041ee40
mov ecx, esi
call fcn.0054a7d0
mov edx, esi
mov ecx, edi
call fcn.0054a630
mov edi, dword [esp + 0x10]
push 2
lea edx, [esp + 0x410]
push 0x586074
push edx
call fcn.00580a2f
add esp, 0xc
test eax, eax
jne 0x488f03
lea eax, [esp + 0x40e]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x488ee0
sub eax, edx
inc eax
push eax
lea eax, [esp + 0x412]
push eax
lea ecx, [esp + 0x414]
push ecx
call fcn.00571040
add esp, 0xc
mov dl, 0x20
lea ecx, [esp + 0x40c]
call fcn.00524ec0
mov ecx, dword [0x5a3a48]
cmp ecx, ebx
je 0x488f32
jmp 0x488f20
cmp dword [ecx + 0x52c], ebp
je 0x488f74
mov ecx, dword [ecx + 0x88c]
cmp ecx, ebx
jne 0x488f20
mov ecx, dword [0x5afc18]
cmp ecx, ebx
je 0x488f52
lea esp, [esp]
cmp dword [ecx + 0x340], ebp
je 0x488f88
mov ecx, dword [ecx + 0x3cc]
cmp ecx, ebx
jne 0x488f40
mov ecx, dword [0x5a8ba4]
cmp ecx, ebx
je 0x488fb4
lea esp, [esp]
cmp dword [ecx + 0x444], ebp
je 0x488f9f
mov ecx, dword [ecx + 0x4bc]
cmp ecx, ebx
jne 0x488f60
jmp 0x488fb4
lea edx, [esp + 0x40c]
mov dword [ecx + 0x52c], ebx
call fcn.0042cb60
jmp 0x488fb4
lea edx, [esp + 0x40c]
push edx
xor edx, edx
mov dword [ecx + 0x340], ebx
call fcn.00515c80
jmp 0x488fb4
lea eax, [esp + 0x40c]
push eax
xor edx, edx
mov dword [ecx + 0x444], ebx
call fcn.00490190
mov eax, dword [0x5a8a20]
cmp eax, ebx
je 0x488fce
lea ecx, [ecx]
cmp edi, eax
je 0x488fe2
mov eax, dword [eax + 0x80]
cmp eax, ebx
jne 0x488fc0
mov ecx, ebp
call fcn.00488360
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xae4
ret
mov ecx, edi
call fcn.00488280
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0xae4
ret