Function at 0x14001ae00
Capabilities:
Get socket status

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x700
mov rax, qword [0x140116008]
xor rax, rsp
mov qword [rsp + 0x6e0], rax
mov rbx, qword [rsp + 0x768]
mov r12, rcx
mov esi, 0x200
mov qword [rsp + 0x48], r9
mov ecx, esi
mov dword [rsp + 0x30], edx
mov r13, r8
mov qword [rsp + 0x40], rbx
call fcn.140056e8c
mov rdx, rbx
mov rcx, r12
mov rbp, rax
xor edi, edi
call fcn.14001a3f0
mov r14d, eax
test eax, eax
jne 0x14001ae73
mov rcx, rbp
call fcn.140052f7c
lea eax, [rdi - 8]
jmp 0x14001b0eb
mov ebx, dword [rsp + 0x760]
mov qword [rsp + 0x6f8], r15
call fcn.140009a00
movzx r8d, word [rsp + 0x30]
lea rcx, [rsp + 0x38]
mov r9d, ebx
mov edx, r14d
lea r15, [rbx + rax]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.14001a680
test eax, eax
jns 0x14001aecc
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, rbp
call fcn.140052f7c
mov eax, 0xfffffff8
jmp 0x14001b0e3
mov r9, r13
mov qword [rsp + 0x20], r12
lea r8, str.GET__s_HTTP_1.1_r_nHost:__s_r_nConnection:_close_r_nAccept_Encoding:_r_nUser_Agent:_Yoctopuce_r_n_r_n
mov edx, esi
lea rcx, [rsp + 0x2e0]
call fcn.1400217a0
mov rbx, qword [rsp + 0x40]
lea rdx, [rsp + 0x2e0]
mov r12, qword [rsp + 0x38]
mov r9, rbx
mov rcx, r12
mov r8d, eax
call fcn.14001a9f0
mov r14d, eax
test eax, eax
js 0x14001b05d
call fcn.140009a00
cmp r15, rax
je 0x14001b023
movabs r14, 0x624dd2f1a9fbe77
nop dword [rax]
call fcn.140009a00
mov rcx, r15
mov qword [rsp + 0x58], r12
sub rcx, rax
mov dword [rsp + 0x50], 1
mov eax, 0x10624dd3
xor r9d, r9d
imul ecx
xor r8d, r8d
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov rax, r14
mov dword [rsp + 0x38], edx
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
lea rdx, [rsp + 0x50]
shr rax, 9
imul eax, eax, 0x3e8
sub ecx, eax
imul eax, ecx, 0x3e8
lea ecx, [r12 + 1]
mov dword [rsp + 0x3c], eax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
call qword [sym.imp.WS2_32.dll_select]
test eax, eax
js 0x14001b11a
lea eax, [rdi + 0x100]
cmp eax, esi
jl 0x14001afe7
add esi, esi
movsxd rcx, esi
call fcn.140056e8c
mov rbx, rax
test rbp, rbp
je 0x14001afdf
movsxd r8, edi
mov rdx, rbp
mov rcx, rax
call fcn.140050fe0
mov rcx, rbp
call fcn.140052f7c
mov rbp, rbx
mov rbx, qword [rsp + 0x40]
mov r8d, esi
movsxd rdx, edi
sub r8d, edi
add rdx, rbp
mov r9, rbx
mov rcx, r12
call fcn.14001ab70
mov r14d, eax
test eax, eax
js 0x14001b10d
add edi, eax
call fcn.140009a00
movabs r14, 0x624dd2f1a9fbe77
cmp r15, rax
jne 0x14001af30
test rbx, rbx
je 0x14001b057
lea rax, str.ytcp
mov dword [rsp + 0x28], 0x374
lea r9, str.Timeout
mov qword [rsp + 0x20], rax
lea r8, str._s___s:_d_
mov edx, 0x100
mov rcx, rbx
call fcn.1400217a0
mov r14d, 0xfffffff9
mov rcx, r12
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, rbp
test r14d, r14d
js 0x14001b368
mov r13, qword [rsp + 0x48]
lea rdx, str.HTTP_1.1_200
mov r8d, recv
mov qword [r13], rbp
call fcn.140052cd0
test eax, eax
jne 0x14001b372
xor r15d, r15d
nop dword [rax + rax]
xor r8d, r8d
lea r9, str._r_n_r_n
mov edx, r15d
nop dword [rax]
cmp edx, r14d
jae 0x14001b0ce
mov eax, edx
movzx ecx, byte [rax + rbp]
cmp byte [r9], cl
jne 0x14001b0ce
inc r8d
inc edx
inc r9
cmp r8d, 4
jb 0x14001b0b0
cmp r8d, 4
je 0x14001b14d
inc r15d
lea eax, [r15 + 4]
cmp eax, r14d
jb 0x14001b0a0
mov eax, r14d
mov r15, qword [rsp + 0x6f8]
mov rcx, qword [rsp + 0x6e0]
xor rcx, rsp
call fcn.14004ee60
add rsp, 0x700
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp r14d, 0xfffffff7
cmove r14d, edi
jmp 0x14001b05d
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
test rbx, rbx
jne 0x14001b12e
lea r14d, [rbx - 8]
jmp 0x14001b05d
mov r9, rbx
lea rcx, str.ytcp
mov r8d, eax
mov edx, 0x358
call fcn.140019fe0
mov r14d, eax
jmp 0x14001b05d
test r15d, r15d
jle 0x14001b0e0
movsxd rsi, r15d
xor bl, bl
add rsi, rbp
mov rdi, rbp
cmp rbp, rsi
jae 0x14001b0e0
nop word [rax + rax]
lea rax, [rsp + 0x260]
nop dword [rax + rax]
lea rcx, [rsp + 0x2e0]
cmp rax, rcx
jae 0x14001b1b6
movzx ebx, byte [rdi]
inc rdi
cmp bl, 0x3a
je 0x14001b1b6
cmp bl, 0xd
je 0x14001b1b6
cmp bl, 0xa
je 0x14001b1b6
cmp bl, 0x20
je 0x14001b1ac
mov byte [rax], bl
inc rax
cmp rdi, rsi
jb 0x14001b180
jmp 0x14001b0e0
cmp rdi, rsi
jae 0x14001b0e0
mov byte [rax], 0
cmp bl, 0x3a
jne 0x14001b24b
lea rdx, str.Transfer_Encoding
inc rdi
lea rcx, [rsp + 0x260]
call fcn.140052e3c
xor ecx, ecx
test eax, eax
mov eax, 1
cmove ecx, eax
lea rax, [rsp + 0x260]
cmp rdi, rsi
jae 0x14001b22c
nop dword [rax + rax]
lea rdx, [rsp + 0x2e0]
cmp rax, rdx
jae 0x14001b22c
movzx ebx, byte [rdi]
inc rdi
cmp bl, 0xd
je 0x14001b22c
cmp bl, 0xa
je 0x14001b22c
cmp bl, 0x20
je 0x14001b227
mov byte [rax], bl
inc rax
cmp rdi, rsi
jb 0x14001b200
mov byte [rax], 0
test ecx, ecx
je 0x14001b24b
lea rdx, str.chunked
lea rcx, [rsp + 0x260]
call fcn.140052e3c
test eax, eax
je 0x14001b259
cmp rdi, rsi
jb 0x14001b170
jmp 0x14001b0e0
movsxd rdi, r14d
mov rcx, rdi
call fcn.140056e8c
lea ecx, [r15 + 4]
mov rdx, rbp
movsxd rbx, ecx
mov r12, rax
mov r8, rbx
mov rcx, rax
call fcn.140050fe0
add rdi, rbp
lea r15, [rbx + r12]
lea rsi, [rbx + rbp]
nop word [rax + rax]
xor r9d, r9d
lea rdx, [rsp + 0x260]
cmp rsi, rdi
jae 0x14001b2da
lea rax, [rsp + 0x2e0]
cmp rdx, rax
jae 0x14001b2da
movzx ecx, byte [rsi]
inc rsi
cmp cl, 0xa
je 0x14001b2da
lea eax, [rcx - 0x30]
cmp al, 9
jbe 0x14001b2cd
lea eax, [rcx - 0x41]
cmp al, 5
jbe 0x14001b2cd
lea eax, [rcx - 0x61]
cmp al, 5
ja 0x14001b2d5
mov byte [rdx], cl
inc rdx
inc r9d
cmp rsi, rdi
jb 0x14001b2a0
mov byte [rdx], 0
lea r8, [rsp + 0x260]
lea edx, [r9 - 1]
xor r10d, r10d
test edx, edx
js 0x14001b361
lea r9d, [rdx*4]
nop dword [rax + rax]
movzx ecx, byte [r8]
lea eax, [rcx - 0x61]
cmp al, 5
ja 0x14001b313
movsx eax, cl
sub eax, 0x57
jmp 0x14001b32f
lea eax, [rcx - 0x41]
cmp al, 5
ja 0x14001b322
movsx eax, cl
sub eax, 0x37
jmp 0x14001b32f
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x14001b361
movsx eax, cl
sub eax, 0x30
mov ecx, r9d
inc r8
shl eax, cl
sub r9d, 4
add r10d, eax
sub edx, 1
jns 0x14001b300
test r10d, r10d
je 0x14001b361
mov r8d, r10d
mov rdx, rsi
mov rcx, r15
mov ebx, r10d
call fcn.140050fe0
add rsi, rbx
jmp 0x14001b290
mov qword [r13], r12
mov rcx, rbp
call fcn.140052f7c
jmp 0x14001b0e0
cmp edi, 0xc
jle 0x14001b0e0
mov r8d, reloc.WS2_32.dll_inet_addr
lea rdx, str.HTTP_1.1_30
mov rcx, rbp
call fcn.140052cd0
test eax, eax
jne 0x14001b0e0
xor r10d, r10d
nop dword [rax + rax]
xor r8d, r8d
lea r9, str._r_n_r_n
mov edx, r10d
nop dword [rax]
cmp edx, r14d
jae 0x14001b3ce
mov eax, edx
movzx ecx, byte [rax + rbp]
cmp byte [r9], cl
jne 0x14001b3ce
inc r8d
inc edx
inc r9
cmp r8d, 4
jb 0x14001b3b0
cmp r8d, 4
je 0x14001b3e6
inc r10d
lea eax, [r10 + 4]
cmp eax, r14d
jb 0x14001b3a0
mov r10d, 0xffffffff
xor r11d, r11d
nop dword [rax]
xor r8d, r8d
lea r9, [0x14010b7d0]
mov edx, r11d
nop dword [rax]
cmp edx, r14d
jae 0x14001b41e
mov eax, edx
movzx ecx, byte [rax + rbp]
cmp byte [r9], cl
jne 0x14001b41e
inc r8d
inc edx
inc r9
cmp r8d, 9
jb 0x14001b400
cmp r8d, 9
je 0x14001b435
inc r11d
lea eax, [r11 + 9]
cmp eax, r14d
jb 0x14001b3f0
jmp 0x14001b0e0
test r11d, r11d
jle 0x14001b0e0
test r10d, r10d
jle 0x14001b0e0
cmp r11d, edi
jge 0x14001b0e0
cmp r10d, edi
jge 0x14001b0e0
cmp r11d, r10d
jge 0x14001b0e0
lea eax, [r11 + 9]
sub r10d, eax
movsxd r11, eax
xor r9d, r9d
nop
xor edx, edx
lea r8, [0x14010b7dc]
mov ecx, r9d
nop dword [rax]
cmp ecx, r10d
jae 0x14001b49f
mov eax, ecx
add rax, r11
movzx eax, byte [rax + rbp]
cmp byte [r8], al
jne 0x14001b49f
inc edx
inc ecx
inc r8
cmp edx, 2
jb 0x14001b480
cmp edx, 2
je 0x14001b4b5
inc r9d
lea eax, [r9 + 2]
cmp eax, r10d
jb 0x14001b470
jmp 0x14001b0e0
test r9d, r9d
jle 0x14001b0e0
movzx edx, byte [r11 + rbp]
lea rcx, [r11 + rbp]
movsxd r8, r9d
lea r10, [rsp + 0x4e0]
add r8, r11
add r8, rbp
cmp dl, 0x20
jne 0x14001b500
nop dword [rax]
cmp rcx, r8
jae 0x14001b4f3
movzx edx, byte [rcx + 1]
inc rcx
cmp dl, 0x20
je 0x14001b4e0
jmp 0x14001b500
movzx edx, byte [rcx]
cmp dl, 0x20
je 0x14001b524
nop dword [rax + rax]
cmp rcx, r8
jae 0x14001b524
mov rax, rcx
sub rax, r8
cmp rax, 0x1ff
jge 0x14001b524
inc rcx
mov byte [r10], dl
inc r10
movzx edx, byte [rcx]
cmp dl, 0x20
jne 0x14001b500
mov eax, dword [rsp + 0x760]
lea rcx, [rsp + 0x4e0]
mov r8d, dword [rsp + 0x30]
mov r9, r13
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], eax
mov byte [r10], 0
call fcn.14001ac20
jmp 0x14001b0e3