Function at 0x1400047f0
Capabilities:
Connect socket
Receive data
Receive data on socket
Resolve dns
Send data
Send data on socket
Send http request
Set socket configuration

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1148]
mov eax, 0x1248
call fcn.140045fe0
sub rsp, rax
movaps xmmword [rsp + 0x1230], xmm6
movaps xmmword [rsp + 0x1220], xmm7
mov rsi, rcx
mov edi, 1
mov dword [rbp - 0x40], edi
lea rcx, [rbp + 0x1190]
call fcn.1400016e0
mov r14, qword [rbp + 0x11b8]
imul rdx, r14, 0xf4240
mov rax, qword [rax]
add rax, rdx
mov qword [rbp - 0x38], rax
mov r8, qword [rsi + 0x18]
lea rcx, [rsi + 8]
cmp qword [rsi + 0x20], 0xf
jbe 0x140004872
mov rcx, qword [rsi + 8]
cmp r8, 4
jne 0x1400058e4
lea rdx, str.http
call fcn.140077430
test eax, eax
jne 0x1400058e4
xorps xmm0, xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
movups xmmword [rbp + 0x110], xmm0
movzx eax, byte [rsi + 1]
mov ebx, 2
test al, al
jne 0x1400048b9
mov eax, ebx
jmp 0x1400048c7
cmp al, dil
jne 0x14000589b
mov eax, reloc.WS2_32.dll_socket
mov dword [rbp + 0xf4], eax
mov dword [rbp + 0xf8], edi
cmp qword [rsi + 0x98], 0
jne 0x1400048e6
lea rdx, [0x14008cc28]
jmp 0x1400048f7
lea rdx, [rsi + 0x88]
cmp qword [rdx + 0x18], 0xf
jbe 0x1400048f7
mov rdx, qword [rdx]
lea rcx, [rsi + 0x68]
cmp qword [rsi + 0x80], 0xf
jbe 0x140004909
mov rcx, qword [rsi + 0x68]
lea r9, [rbp + 0x80]
lea r8, [rbp + 0xf0]
call qword [sym.imp.WS2_32.dll_getaddrinfo]
test eax, eax
jne 0x140005905
mov rax, qword [sym.imp.WS2_32.dll_freeaddrinfo]
mov qword [rbp + 0xe0], rax
mov r15, qword [rbp + 0x80]
mov qword [rsp + 0x70], r15
mov qword [rbp + 0xe8], r15
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
xor ecx, ecx
mov qword [rsp + 0x50], rcx
mov r13, qword [rbp + 0x11b0]
mov rdi, qword [r13 + 8]
sub rdi, qword [r13]
sar rdi, 6
test rdi, rdi
je 0x140004a51
movabs rax, 0x3ffffffffffffff
cmp rdi, rax
ja 0x140005941
shl rdi, 6
test rdi, rdi
jne 0x140004992
mov ebx, ecx
jmp 0x1400049cf
cmp rdi, 0x1000
jb 0x1400049c4
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x140005947
call fcn.14004589c
test rax, rax
je 0x14000594d
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x1400049cf
mov rcx, rdi
call fcn.14004589c
mov rbx, rax
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
lea rcx, [rdi + rbx]
mov qword [rsp + 0x50], rcx
lea rax, [rsp + 0x40]
mov qword [rbp + 0x11b8], rax
mov r15, qword [r13 + 8]
mov rdi, qword [r13]
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], rbx
lea rax, [rsp + 0x40]
mov qword [rbp - 0x50], rax
cmp rdi, r15
je 0x140004a42
nop dword [rax]
mov qword [rbp + 0x1190], rbx
mov rdx, rdi
mov rcx, rbx
call fcn.140011d20
nop
lea rcx, [rbx + 0x20]
lea rdx, [rdi + 0x20]
call fcn.140011d20
nop
add rbx, 0x40
mov qword [rbp - 0x58], rbx
add rdi, 0x40
cmp rdi, r15
jne 0x140004a10
mov qword [rsp + 0x48], rbx
mov ebx, 2
mov r15, qword [rsp + 0x70]
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov r9, qword [rbp + 0x11a8]
mov r8, qword [rbp + 0x11a0]
lea rdx, [rsi + 8]
lea rcx, [rsp + 0x58]
call fcn.140003ce0
nop
movzx eax, byte [rsi + 1]
test al, al
je 0x140004a8d
cmp al, 1
jne 0x140005b3c
mov ebx, reloc.WS2_32.dll_socket
mov edi, 1
mov r8d, 6
mov edx, edi
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_socket]
mov rsi, rax
mov qword [rbp - 0x68], rax
cmp rax, 0xffffffffffffffff
je 0x140005953
mov dword [rbp + 0x11b8], edi
lea r8, [rbp + 0x11b8]
mov edx, 0x8004667e
mov rcx, rax
call qword [sym.imp.WS2_32.dll_ioctlsocket]
cmp eax, 0xffffffff
je 0x140005983
movabs rbx, 0x431bde82d7b634db
test r14, r14
js 0x140004b26
lea rcx, [rbp + 0x11b8]
call fcn.1400016e0
mov r12, qword [rbp - 0x38]
mov rcx, r12
sub rcx, qword [rbp + 0x11b8]
mov rax, rbx
imul rcx
mov rbx, rdx
sar rbx, 0x12
mov rax, rbx
shr rax, 0x3f
add rbx, rax
test rbx, rbx
mov r13d, 0
cmovle rbx, r13
jmp 0x140004b34
mov rbx, 0xffffffffffffffff
mov r12, qword [rbp - 0x38]
xor r13d, r13d
mov edi, dword [r15 + 0x10]
mov r15, qword [r15 + 0x20]
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x140004b71
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
jne 0x140004bd3
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x140004b50
mov ebx, 1
mov rdi, qword [rsp + 0x60]
mov r15, qword [rsp + 0x58]
sub rdi, r15
je 0x140004cb8
nop dword [rax]
test r14, r14
js 0x140004c44
lea rcx, [rbp + 0x11b8]
call fcn.1400016e0
mov rcx, r12
sub rcx, qword [rbp + 0x11b8]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test rdx, rdx
cmovle rdx, r13
jmp 0x140004c4b
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2733
jne 0x1400059ec
mov r8, rbx
mov ebx, 1
mov edx, ebx
lea rcx, [rbp - 0x68]
call fcn.140003570
mov dword [rbp + 0x11b8], 4
lea rax, [rbp + 0x11b8]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x1190]
mov edx, 0xffff
mov r8d, 0x1007
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_getsockopt]
cmp eax, 0xffffffff
je 0x1400059bc
mov edx, dword [rbp + 0x1190]
test edx, edx
jne 0x1400058bc
jmp 0x140004b76
mov rdx, 0xffffffffffffffff
mov r8, rdx
mov edx, ebx
lea rcx, [rbp - 0x68]
call fcn.140003570
xor r9d, r9d
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140004ca3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
jne 0x140004c9a
xor r9d, r9d
mov r8d, edi
mov rdx, r15
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_send]
mov ebx, eax
cmp eax, 0xffffffff
je 0x140004c72
jmp 0x140004ca3
cmp ebx, 0xffffffff
je 0x140005a1c
movsxd rax, ebx
add r15, rax
sub rdi, rax
je 0x140004cb8
mov ebx, 1
jmp 0x140004b90
mov word [rsp + 0x30], 0xa0d
mov dword [rsp + 0x38], 0xa0d0a0d
mov rax, qword [rbp + 0x1198]
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
mov qword [rax + 0x18], r13
mov qword [rax + 0x20], setsockopt
mov byte [rax + 8], 0
mov qword [rax + 0x28], r13
mov qword [rax + 0x30], r13
mov qword [rax + 0x38], r13
mov qword [rax + 0x40], r13
mov qword [rax + 0x48], r13
mov qword [rax + 0x50], r13
mov dword [rbp - 0x40], 1
movdqu xmmword [rsp + 0x40], xmm0
xor ebx, ebx
mov qword [rsp + 0x50], rbx
xor r15b, r15b
mov byte [rbp + 0x1190], r15b
mov qword [rbp - 0x30], rbx
mov byte [rbp + 0x11b8], r15b
mov r12d, ebx
xor al, al
mov dword [rsp + 0x34], eax
mov rdi, qword [rsp + 0x48]
mov r13, qword [rsp + 0x40]
jmp 0x140004d42
xor ebx, ebx
test r14, r14
js 0x140004d82
lea rcx, [rbp + 0x88]
call fcn.1400016e0
mov rcx, qword [rbp - 0x38]
sub rcx, qword [rbp + 0x88]
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
test rdx, rdx
cmovle rdx, rbx
jmp 0x140004d89
mov rdx, 0xffffffffffffffff
mov r8, rdx
xor edx, edx
lea rcx, [rbp - 0x68]
call fcn.140003570
xor r9d, r9d
mov r8d, 0x1000
lea rdx, [rbp + 0x120]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_recv]
mov ebx, eax
cmp eax, 0xffffffff
jne 0x140004def
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
cmp eax, 0x2714
jne 0x140004de6
xor r9d, r9d
mov r8d, 0x1000
lea rdx, [rbp + 0x120]
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_recv]
mov ebx, eax
cmp eax, 0xffffffff
je 0x140004db7
jmp 0x140004def
cmp ebx, 0xffffffff
je 0x140005a4c
movsxd r9, ebx
test ebx, ebx
je 0x1400057f3
lea r8, [rbp + 0x120]
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.14001e5e0
mov r13, qword [rsp + 0x40]
test r15b, r15b
jne 0x1400053e1
mov r9, qword [rsp + 0x48]
mov qword [rbp + 0x18], r9
mov rax, r9
mov rcx, r9
sub rcx, r13
cmp rcx, 4
jl 0x140004e54
lea r8, [r9 - 4]
mov rdx, r13
mov ecx, dword [rsp + 0x38]
cmp ecx, dword [r13]
je 0x140004e51
cmp rdx, r8
je 0x140004e54
inc rdx
cmp ecx, dword [rdx]
jne 0x140004e45
mov rax, rdx
cmp rax, r9
je 0x1400056a5
lea rdi, [rax + 2]
mov r8, rdi
mov rdx, r13
lea rcx, [rbp + 0xb0]
call fcn.140017600
nop
mov rbx, qword [rbp + 0xb0]
mov eax, dword [rbp + 0xb8]
mov r15, qword [rbp + 0x1198]
mov dword [r15], eax
movzx eax, word [rbp + 0xbc]
mov word [r15 + 4], ax
lea rdx, [rbp + 0xc0]
lea rcx, [r15 + 8]
call fcn.140011b20
nop word [rax + rax]
mov r8, rdi
mov rdx, rbx
lea rcx, [rbp + 0x30]
call fcn.140017860
nop
mov rbx, qword [rbp + 0x30]
movups xmm7, xmmword [rbp + 0x38]
movups xmmword [rbp + 0x90], xmm7
movups xmm6, xmmword [rbp + 0x48]
movups xmmword [rbp + 0xa0], xmm6
xor r10d, r10d
mov qword [rbp + 0x48], r10
mov qword [rbp + 0x50], setsockopt
mov byte [rbp + 0x38], r10b
movups xmm2, xmmword [rbp + 0x58]
movups xmmword [rsp + 0x78], xmm2
movups xmm1, xmmword [rbp + 0x68]
movups xmmword [rbp - 0x78], xmm1
mov qword [rbp + 0x68], r10
mov qword [rbp + 0x70], setsockopt
mov byte [rbp + 0x58], r10b
lea rax, [rbp + 0x90]
movq rcx, xmm7
movdqa xmm0, xmm6
psrldq xmm0, 8
movq rdx, xmm0
cmp rdx, 0xf
cmova rax, rcx
movq r8, xmm6
cmp r8, 0x11
jne 0x140004fc1
movabs r9, 0x726566736e617274
cmp qword [rax], r9
jne 0x140004fc1
movabs r9, 0x6e69646f636e652d
cmp qword [rax + 8], r9
jne 0x140004fc1
cmp byte [rax + 0x10], 0x67
jne 0x140004fc1
lea rdx, [rsp + 0x78]
movq rcx, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rax, xmm0
cmp rax, 0xf
cmova rdx, rcx
movq rax, xmm1
cmp rax, 7
jne 0x140005a7c
cmp dword [rdx], 0x6e756863
jne 0x140005a7c
cmp word [rdx + 4], 0x656b
jne 0x140005a7c
cmp byte [rdx + 6], 0x64
jne 0x140005a7c
mov byte [rbp + 0x11b8], 1
jmp 0x1400050bf
lea rax, [rbp + 0x90]
cmp rdx, 0xf
cmova rax, rcx
cmp r8, 0xe
jne 0x1400050bf
movabs rcx, 0x2d746e65746e6f63
cmp qword [rax], rcx
jne 0x1400050bf
cmp dword [rax + 8], 0x676e656c
jne 0x1400050bf
cmp word [rax + 0xc], 0x6874
jne 0x1400050bf
lea rcx, [rsp + 0x78]
movq r8, xmm2
movdqa xmm0, xmm1
psrldq xmm0, 8
movq rdx, xmm0
cmp rdx, 0xf
cmova rcx, r8
movq rax, xmm1
add rcx, rax
lea rax, [rsp + 0x78]
cmp rdx, 0xf
cmova rax, r8
mov r9, r10
mov qword [rbp - 0x30], r10
cmp rax, rcx
je 0x14000507c
nop word [rax + rax]
movsx r8d, byte [rax]
lea edx, [r8 - 0x30]
cmp dl, 9
ja 0x140005aaf
lea edx, [r8 - 0x30]
movsxd r8, edx
lea rdx, [r9 + r9*4]
lea r9, [r8 + rdx*2]
mov qword [rbp - 0x30], r9
inc rax
cmp rax, rcx
jne 0x140005050
mov byte [rbp + 0x1190], 1
mov qword [rbp + 0x20], r9
lea rcx, [r15 + 0x40]
mov rax, qword [rcx + 0x10]
sub rax, qword [rcx]
cmp r9, rax
jbe 0x1400050bf
movabs rax, 0x7fffffffffffffff
cmp r9, rax
ja 0x140005ad0
lea rdx, [rbp + 0x20]
call fcn.140018580
movups xmm1, xmmword [rbp - 0x78]
movups xmm2, xmmword [rsp + 0x78]
xor r10d, r10d
movups xmmword [rbp - 0x28], xmm7
movups xmmword [rbp - 0x18], xmm6
mov qword [rbp + 0xa0], r10
mov qword [rbp + 0xa8], setsockopt
mov byte [rbp + 0x90], 0
movups xmmword [rbp - 8], xmm2
movups xmmword [rbp + 8], xmm1
mov qword [rbp - 0x78], r10
mov qword [rbp - 0x70], setsockopt
mov byte [rsp + 0x78], 0
lea rax, [r15 + 0x28]
mov rdx, qword [rax + 8]
cmp rdx, qword [rax + 0x10]
je 0x14000512e
movups xmmword [rdx], xmm7
movups xmmword [rdx + 0x10], xmm6
mov r15d, recv
mov byte [rbp - 0x28], 0
movups xmmword [rdx + 0x20], xmm2
movups xmmword [rdx + 0x30], xmm1
mov edx, r15d
mov byte [rbp - 8], 0
add qword [rax + 8], 0x40
jmp 0x140005142
lea r8, [rbp - 0x28]
mov rcx, rax
call fcn.14001f100
mov rdx, qword [rbp + 0x10]
mov r15, qword [rbp - 0x10]
cmp rdx, 0xf
jbe 0x140005179
inc rdx
mov rcx, qword [rbp - 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005174
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ad6
call fcn.140045884
cmp r15, 0xf
jbe 0x1400051b2
lea rdx, [r15 + 1]
mov rcx, qword [rbp - 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400051ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ad6
call fcn.140045884
nop
mov rdx, qword [rbp - 0x70]
cmp rbx, rdi
je 0x1400052a8
cmp rdx, 0xf
jbe 0x1400051f7
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400051f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005adc
call fcn.140045884
xor r15d, r15d
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], setsockopt
mov byte [rsp + 0x78], r15b
mov rdx, qword [rbp + 0x70]
cmp rdx, 0xf
jbe 0x140005246
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005241
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ae2
call fcn.140045884
mov qword [rbp + 0x68], r15
mov qword [rbp + 0x70], setsockopt
mov byte [rbp + 0x58], 0
mov rdx, qword [rbp + 0x50]
cmp rdx, 0xf
mov r15, qword [rbp + 0x1198]
jbe 0x140004eb0
inc rdx
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005297
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ae2
call fcn.140045884
mov r15, qword [rbp + 0x1198]
jmp 0x140004eb0
cmp rdx, 0xf
jbe 0x1400052e0
inc rdx
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400052db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005adc
call fcn.140045884
xor ebx, ebx
mov qword [rbp - 0x78], rbx
mov qword [rbp - 0x70], setsockopt
mov byte [rsp + 0x78], bl
mov rdx, qword [rbp + 0x70]
cmp rdx, 0xf
jbe 0x14000532d
inc rdx
mov rcx, qword [rbp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005328
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ae2
call fcn.140045884
mov qword [rbp + 0x68], rbx
mov qword [rbp + 0x70], setsockopt
mov byte [rbp + 0x58], 0
mov rdx, qword [rbp + 0x50]
cmp rdx, 0xf
jbe 0x140005378
inc rdx
mov rcx, qword [rbp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005373
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ae2
call fcn.140045884
lea rdx, [rdi + 2]
mov rdi, qword [rbp + 0x18]
cmp r13, rdx
je 0x14000539b
sub rdi, rdx
mov r8, rdi
mov rcx, r13
call fcn.140076950
add rdi, r13
mov qword [rsp + 0x48], rdi
mov r15b, 1
mov rdx, qword [rbp + 0xd8]
cmp rdx, 0xf
jbe 0x1400053e8
inc rdx
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400053da
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005ae8
call fcn.140045884
jmp 0x1400053e8
mov rdi, qword [rsp + 0x48]
xor ebx, ebx
cmp byte [rbp + 0x11b8], 0
je 0x14000558f
mov r8d, dword [rsp + 0x34]
movzx edx, word [rsp + 0x30]
nop
test r12, r12
je 0x140005478
mov rax, rdi
sub rax, r13
mov rbx, r12
cmp rax, r12
cmovb rbx, rax
mov rcx, qword [rbp + 0x1198]
mov rdx, qword [rcx + 0x48]
mov r9, rbx
mov r8, r13
add rcx, 0x40
call fcn.14001e5e0
lea rdx, [rbx + r13]
cmp r13, rdx
je 0x14000544e
sub rdi, rdx
mov r8, rdi
mov rcx, r13
call fcn.140076950
add rdi, r13
mov qword [rsp + 0x48], rdi
sub r12, rbx
mov r8d, dword [rsp + 0x34]
movzx r8d, r8b
mov eax, 1
cmove r8d, eax
mov dword [rsp + 0x34], r8d
cmp r13, rdi
mov ebx, 0
je 0x140004d42
jmp 0x1400053fa
test r8b, r8b
je 0x1400054c5
mov rax, rdi
sub rax, r13
cmp rax, 2
jb 0x140004d42
cmp dx, word [r13]
jne 0x140005aee
xor al, al
mov dword [rsp + 0x34], eax
lea rax, [r13 + 2]
cmp r13, rax
je 0x1400054c5
sub rdi, rax
mov r8, rdi
mov rdx, rax
mov rcx, r13
call fcn.140076950
add rdi, r13
mov qword [rsp + 0x48], rdi
movzx edx, word [rsp + 0x30]
mov rcx, rdi
mov rax, rdi
sub rax, r13
cmp rax, 2
jl 0x1400054f2
lea r8, [rdi - 2]
mov rax, r13
cmp dx, word [r13]
je 0x1400054ef
cmp rax, r8
je 0x1400054f2
inc rax
cmp dx, word [rax]
jne 0x1400054e2
mov rcx, rax
cmp rcx, rdi
je 0x140004d42
mov r12, rbx
cmp r13, rcx
je 0x140005555
mov rax, r13
nop word [rax + rax]
movzx r9d, byte [rax]
lea r8d, [r9 - 0x30]
cmp r8b, 9
ja 0x140005524
lea r8, [r9 - 0x30]
jmp 0x140005546
lea r8d, [r9 - 0x41]
cmp r8b, 5
ja 0x140005534
lea r8, [r9 - 0x37]
jmp 0x140005546
lea r8d, [r9 - 0x61]
cmp r8b, 5
ja 0x140005b0f
lea r8, [r9 - 0x57]
shl r12, 4
add r12, r8
inc rax
cmp rax, rcx
jne 0x140005510
add rcx, 2
cmp r13, rcx
je 0x14000557c
sub rdi, rcx
mov r8, rdi
mov rdx, rcx
mov rcx, r13
call fcn.140076950
add rdi, r13
mov qword [rsp + 0x48], rdi
movzx edx, word [rsp + 0x30]
test r12, r12
je 0x14000574d
mov r8d, dword [rsp + 0x34]
jmp 0x140005400
mov r9, rdi
sub r9, r13
mov rbx, qword [rbp + 0x1198]
mov rdx, qword [rbx + 0x48]
mov r8, r13
lea rcx, [rbx + 0x40]
call fcn.14001e5e0
cmp r13, rdi
cmovne rdi, r13
mov qword [rsp + 0x48], rdi
cmp byte [rbp + 0x1190], 0
je 0x140004d40
mov rax, qword [rbx + 0x48]
sub rax, qword [rbx + 0x40]
cmp rax, qword [rbp - 0x30]
jb 0x140004d40
test r13, r13
je 0x140005612
mov rdx, qword [rsp + 0x50]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x140005609
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b30
mov rcx, r13
call fcn.140045884
nop
cmp rsi, 0xffffffffffffffff
je 0x140005622
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14000566e
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005659
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b36
call fcn.140045884
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
xor ecx, ecx
mov qword [rsp + 0x68], rcx
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
mov rax, qword [rbp + 0x1198]
movaps xmm6, xmmword [rsp + 0x1230]
movaps xmm7, xmmword [rsp + 0x1220]
add rsp, 0x1248
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test r13, r13
je 0x1400056e0
mov rdx, qword [rsp + 0x50]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x1400056d7
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b30
mov rcx, r13
call fcn.140045884
nop
cmp rsi, 0xffffffffffffffff
je 0x1400056f0
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14000573c
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005727
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b36
call fcn.140045884
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
xor ecx, ecx
mov qword [rsp + 0x68], rcx
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
jmp 0x14000567a
test r13, r13
je 0x140005788
mov rdx, qword [rsp + 0x50]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x14000577f
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b30
mov rcx, r13
call fcn.140045884
nop
cmp rsi, 0xffffffffffffffff
je 0x140005798
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1400057e2
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400057cf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b36
call fcn.140045884
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rbx
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
jmp 0x14000567a
test r13, r13
je 0x14000582e
mov rdx, qword [rsp + 0x50]
sub rdx, r13
mov rax, r13
cmp rdx, 0x1000
jb 0x140005825
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b30
mov rcx, r13
call fcn.140045884
nop
cmp rsi, 0xffffffffffffffff
je 0x14000583e
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_closesocket]
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14000588a
mov rdx, qword [rsp + 0x68]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140005875
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140005b36
call fcn.140045884
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x58], xmm0
xor ecx, ecx
mov qword [rsp + 0x68], rcx
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.WS2_32.dll_freeaddrinfo]
nop
jmp 0x14000567a
lea rdx, str.Unsupported_protocol
lea rcx, [rbp - 0x60]
call fcn.140003480
lea rdx, [0x14009e398]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
nop
lea r9, str.Failed_to_connect
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
nop
lea rdx, str.Only_HTTP_scheme_is_supported
lea rcx, [rbp - 0x60]
call fcn.140003480
lea rdx, [0x14009e398]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ebx, eax
lea r8, [rsi + 0x68]
lea rdx, str.Failed_to_get_address_info_of
lea rcx, [rbp - 0x60]
call fcn.140016130
nop
mov r9, rax
mov edx, ebx
lea rcx, [rbp - 0x28]
call fcn.140001b10
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
nop
call fcn.140014730
int3
call fcn.140001640
int3
call fcn.14005e594
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_create_socket
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
int3
lea rcx, [rbp - 0x68]
call fcn.1400036c0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_get_socket_flags
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_get_socket_option
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_connect
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
int3
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_send_data
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
nop
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea r9, str.Failed_to_read_data
lea r8, [0x1400a0f28]
lea rcx, [rbp - 0x28]
call fcn.140001b60
lea rdx, [0x14009e098]
lea rcx, [rbp - 0x28]
call fcn.1400479a8
nop
lea r8, [rsp + 0x78]
lea rdx, str.Unsupported_transfer_encoding:
lea rcx, [rbp - 0x28]
call fcn.140016130
nop
mov rdx, rax
lea rcx, [rbp - 0x60]
call fcn.140005f40
lea rdx, [0x14009e468]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
nop
lea rdx, str.Invalid_digit
lea rcx, [rbp - 0x60]
call fcn.1400036d0
lea rdx, [0x14009e468]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
int3
call fcn.140014730
int3
call fcn.14005e594
nop
call fcn.14005e594
nop
call fcn.14005e594
nop
call fcn.14005e594
int3
lea rdx, str.Invalid_chunk
lea rcx, [rbp - 0x60]
call fcn.1400036d0
lea rdx, [0x14009e468]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
int3
lea rdx, str.Invalid_hex_digit
lea rcx, [rbp - 0x60]
call fcn.1400036d0
lea rdx, [0x14009e468]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
nop
call fcn.14005e594
nop
call fcn.14005e594
nop
lea rdx, str.Unsupported_protocol
lea rcx, [rbp - 0x60]
call fcn.140003480
lea rdx, [0x14009e398]
lea rcx, [rbp - 0x60]
call fcn.1400479a8
int3