Function at 0x10035ad0
Capabilities:
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
movsx eax, byte [esi + 0x2e9]
mov ecx, dword [esi]
mov dword [ebp + 8], ecx
lea eax, [eax + eax*2]
shl eax, 6
lea ebx, [ecx + 0x138]
add ebx, eax
mov eax, dword [esi + 0x2b4]
and eax, 0xffff
mov edi, dword [ebx + 0x78]
cmp eax, 0x201
ja 0x10035b85
je 0x10035b53
sub eax, 0x12
je 0x10035dbf
sub eax, 1
je 0x10035e20
sub eax, 1
jne 0x10035e17
test dword [esi + 0x2d4], 0x400000
jne 0x10035e17
push esi
call fcn.1001bb20
add esp, 4
test eax, eax
jne 0x10035e17
mov edi, 0x20b
jmp 0x10035ee6
push esi
call fcn.1001c430
push eax
push str.lws_http_client_socket_service
push str._s:__s:_WAITING_DNS_n
push 1
call fcn.1001dbe0
push esi
call fcn.10027d60
add esp, 0x18
test eax, eax
je 0x10035e5e
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
sub eax, 0x202
je 0x10035fa0
sub eax, 1
je 0x10035cf0
sub eax, 8
jne 0x10035e17
mov edi, dword [ebp + 0xc]
mov ecx, 0x302
mov ax, word [edi + 6]
and ax, cx
cmp ax, 2
jne 0x10035bdb
lea eax, [esi + 0x2a8]
push eax
call fcn.10029970
add esp, 4
test eax, eax
je 0x10035cb2
push 3
push 6
push esi
call fcn.10028ae0
add esp, 0xc
test byte [edi + 6], 0x10
je 0x10035bf6
push 0
push 0x10
push esi
call fcn.10029af0
add esp, 0xc
test eax, eax
jne 0x10035e5e
mov eax, 0x300
test word [edi + 6], ax
je 0x10035e17
mov eax, dword [esi + 0x20]
cmp byte [eax + 0x3c0], 0x65
je 0x10035cd0
push str.lws_http_client_socket_service
push 0
lea eax, [ebp - 8]
mov dword [ebp - 8], 0
push eax
push esi
push ebx
mov dword [ebp - 4], 0
call fcn.1001c5f0
mov ecx, dword [ebp - 4]
add esp, 0x14
mov edi, eax
cmp ecx, 0xfffffffc
je 0x10035e17
test edi, edi
js 0x10035cc6
test ecx, ecx
js 0x10035cc6
je 0x10035e17
lea eax, [ebp + 8]
mov dword [ebp + 8], ecx
push eax
push dword [ebp - 8]
push esi
call fcn.10022540
add esp, 0xc
test eax, eax
jne 0x10035cbc
mov eax, dword [ebp - 4]
sub eax, dword [ebp + 8]
push str.lws_http_client_socket_service
push edi
push eax
lea eax, [ebp - 8]
push eax
push esi
call fcn.1001c530
add esp, 0x14
test eax, eax
jne 0x10035e5e
cmp dword [ebp + 8], eax
jne 0x10035cd0
mov eax, dword [esi + 0x20]
cmp byte [eax + 0x3c0], 0x65
jne 0x10035c15
push esi
call fcn.10034e20
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.Peer_hung_up
jmp 0x10035f70
mov edi, str.problems_parsing_header
jmp 0x10035f70
mov edi, str.read_failed
jmp 0x10035f70
mov eax, dword [esi + 0x20]
cmp byte [eax + 0x3c0], 0x65
jne 0x10035e17
push esi
call fcn.10034e20
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
test byte [eax + 6], 2
je 0x10035d03
mov edi, str.proxy_conn_dead
jmp 0x10035f70
push 0
push dword [ecx + 0x4cc]
push edi
push dword [esi + 0x2b0]
call dword [sym.imp.WS2_32.dll_recv]
mov ecx, eax
test ecx, ecx
jns 0x10035d48
call dword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
je 0x10035e17
push str.ERROR_reading_from_proxy_socket_n
push 1
call fcn.1001dbe0
add esp, 8
mov edi, str.proxy_read_err
jmp 0x10035f70
mov eax, dword [ebx + 0x78]
mov byte [eax + 0xd], 0
cmp ecx, 0xd
jl 0x10035f6b
push 7
push str.HTTP_1.
push edi
call sub.msvcrt.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x10035f6b
mov al, byte [edi + 7]
cmp al, 0x30
je 0x10035d7f
cmp al, 0x31
jne 0x10035f6b
cmp byte [edi + 8], 0x20
jne 0x10035f6b
lea eax, [edi + 9]
push eax
call sub.msvcrt.dll_atoi
add esp, 4
cmp eax, 0xc8
je 0x10035db2
push eax
push str.http_proxy_____u
push 0x14
push edi
call fcn.10020380
add esp, 0x10
jmp 0x10035f70
push 0
push 0
push esi
call fcn.10028ae0
add esp, 0xc
push 0
push 0x10
push esi
call fcn.10029af0
add esp, 0xc
test eax, eax
jne 0x10035e5e
test dword [esi + 0x2c4], 0x40000
je 0x10035e20
test dword [esi + 0x2d4], 0x10000000
je 0x10035e20
push esi
call fcn.1002ad10
add esp, 4
test eax, eax
je 0x10035e03
mov edi, str.error_sending_h2_preface
jmp 0x10035f70
mov eax, dword [ebp + 8]
push dword [eax + 0x4c8]
push 0xb
push esi
call fcn.10028ae0
add esp, 0xc
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push edi
push esi
call fcn.100356c0
add esp, 8
test eax, eax
jne 0x10035e68
mov eax, dword [esi + 0x24c]
cmp eax, 0x10046d3c
je 0x10035e17
cmp eax, 0x10048764
je 0x10035e17
push str.Failed_to_generate_handshake_for_client_n
push 1
call fcn.1001dbe0
push 0x1004916c
push 0
push esi
call fcn.10021aa0
add esp, 0x14
pop edi
pop esi
or eax, 0xffffffff
pop ebx
mov esp, ebp
pop ebp
ret
sub eax, edi
push eax
push edi
push esi
call fcn.1001d550
add esp, 0xc
cmp eax, 0xfffffffc
je 0x10035e98
cmp eax, 0xffffffff
jne 0x10035ea1
push 0x10049170
push 0
push esi
call fcn.10021aa0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push esi
call fcn.1002a110
add esp, 4
test dword [esi + 0x2d4], 0x400000
jne 0x10035f29
push esi
call fcn.1001bb20
add esp, 4
test eax, eax
jne 0x10035f29
mov eax, dword [esi]
mov edi, 0x20b
and dword [esi + 0x2d0], 0xfffffffe
mov word [esi + 0x2b4], di
push dword [eax + 0x4c8]
push 4
push esi
call fcn.10028ae0
push esi
call fcn.1002a110
add esp, 0x10
mov eax, dword [esi + 0x20]
xor ecx, ecx
mov byte [eax + 0x3c0], 0x61
mov eax, dword [esi + 0x20]
mov word [eax + 0x3b8], cx
mov eax, dword [esi + 0x20]
mov dword [eax + 0x3a8], ecx
mov eax, dword [ebp + 8]
mov word [esi + 0x2b4], di
push dword [eax + 0x4c8]
push 4
push esi
call fcn.10028ae0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0x14
mov word [esi + 0x2b4], ax
mov eax, dword [ebp + 8]
push dword [eax + 0x4c8]
push 0x12
push esi
call fcn.10028ae0
add esp, 0xc
test dword [esi + 0x2c4], 0x800
je 0x10035e17
push esi
call fcn.1002a110
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, str.http_proxy_fail
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10035f75
sub ecx, edx
push ecx
push edi
push esi
call fcn.10021ad0
push str.cbail3
push 0
push esi
call fcn.10021aa0
add esp, 0x18
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0xc]
test byte [eax + 6], 0x10
je 0x10035e17
push 0
push 0
push 0
push 0
push esi
call fcn.100346d0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
pop edi
pop esi
dec eax
pop ebx
mov esp, ebp
pop ebp
ret