Function at 0x14000b5c0
Capabilities:
Check for software breakpoints

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd8]
sub rsp, 0x1d8
mov rax, qword [0x1401d3b98]
xor rax, rsp
mov qword [rbp + 0xc0], rax
mov r15, r9
mov r13, r8
mov rsi, rdx
mov qword [rbp - 0x28], rdx
mov r14, rcx
mov qword [rsp + 0x60], rcx
mov r12, qword [rbp + 0x148]
xor ebx, ebx
mov edi, ebx
mov dword [rbp + 0x74], ebx
mov qword [rsp + 0x20], r12
movzx r9d, byte [rbp + 0x140]
call fcn.140009c80
test al, al
je 0x14000bc86
mov r9, r15
mov r8, r13
mov rdx, rsi
call fcn.1400076b0
test al, al
je 0x14000bc7e
lea rdx, [r15 + 0x48]
mov rcx, rsi
call fcn.1400049c0
test al, al
je 0x14000bc7e
mov esi, dword [r15 + 0x20]
cmp esi, 0xcc
je 0x14000ba57
mov r9, qword [r13 + 0x10]
mov rdx, r13
mov r8, qword [r13 + 0x18]
cmp r8, 0x10
jb 0x14000b679
mov rdx, qword [r13]
cmp r9, 4
jne 0x14000b6b5
mov rcx, rbx
lea r10, str.HEAD
nop dword [rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r10 + rcx - 1]
jne 0x14000b6a8
cmp rcx, 4
jne 0x14000b690
mov eax, ebx
jmp 0x14000b6ad
sbb eax, eax
or eax, 1
test eax, eax
je 0x14000ba57
mov rcx, r13
cmp r8, 0x10
jb 0x14000b6c2
mov rcx, qword [r13]
cmp r9, 7
jne 0x14000b6df
mov r8, r9
lea rdx, str.CONNECT
call fcn.140112be0
test eax, eax
je 0x14000ba57
lea eax, [rsi - 0x12d]
cmp eax, 0x62
ja 0x14000b6f7
cmp byte [r14 + 0x1f9], bl
je 0x14000b6f7
mov al, 1
jmp 0x14000b6f9
xor al, al
mov byte [rbp + 0x70], al
mov rcx, qword [r13 + 0x1b8]
test rcx, rcx
je 0x14000b726
test al, al
jne 0x14000b726
mov rax, qword [rcx]
mov rdx, r15
call qword [rax + reloc.WS2_32.dll_recv]
test al, al
jne 0x14000b726
mov dword [r12], 7
jmp 0x14000bc86
cmp qword [r13 + 0x1f8], rbx
je 0x14000b77c
lea rax, [rbp + 0x70]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], r12
lea rax, vtable.std::_Func_impl_no_alloc_class__lambda_8c88a3df46b01d71d8ef5c0ff51bab49___bool__char_const____ptr64__unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64__.0
mov qword [rbp - 0x20], rax
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rbp - 0x18], xmm0
movsd xmm1, qword [rsp + 0x40]
movsd qword [rbp - 8], xmm1
lea rax, [rbp - 0x20]
mov qword [rbp + 0x18], rax
lea rsi, [rbp - 0x20]
mov edi, 1
lea r14, [rbp + 0x18]
mov rcx, qword [rbp - 0x58]
jmp 0x14000b7a4
lea rax, vtable.std::_Func_impl_no_alloc_class__lambda_4c84074cd69ef7a113fa1311e3ab4a77___bool__char_const____ptr64__unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64__.0
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r15
lea rcx, [rsp + 0x70]
mov qword [rbp - 0x58], rcx
lea rsi, [rsp + 0x70]
mov edi, 2
lea r14, [rbp - 0x58]
mov r8, rbx
mov qword [rbp + 0xb8], rbx
mov r9, qword [rsi + 0x38]
test r9, r9
je 0x14000b808
cmp r9, rsi
jne 0x14000b7f7
mov rax, qword [r9]
lea rdx, [rbp + 0x80]
mov rcx, r9
call qword [rax + ioctlsocket]
mov r8, rax
mov qword [rbp + 0xb8], rax
mov rcx, qword [r14]
test rcx, rcx
je 0x14000b804
mov rax, qword [rcx]
cmp rcx, rsi
setne dl
call qword [rax + 0x20]
mov qword [rsi + 0x38], rbx
mov r8, qword [rbp + 0xb8]
jmp 0x14000b804
mov r8, r9
mov qword [rbp + 0xb8], r9
mov qword [r14], rbx
mov rcx, qword [rbp - 0x58]
test dil, 2
je 0x14000b832
and edi, 0xfffffffd
test rcx, rcx
je 0x14000b832
mov rax, qword [rcx]
lea rdx, [rsp + 0x70]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp - 0x58], rbx
mov r8, qword [rbp + 0xb8]
test dil, 1
je 0x14000b85b
and edi, 0xfffffffe
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14000b85b
mov rax, qword [rcx]
lea rdx, [rbp - 0x20]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp + 0xb8]
mov rax, qword [rsp + 0x60]
movzx esi, byte [rax + 0x249]
mov rcx, rbx
mov qword [rbp - 0x58], rbx
test r8, r8
je 0x14000b8c7
lea rax, [rbp + 0x80]
mov rcx, r8
cmp r8, rax
jne 0x14000b8bc
mov rax, qword [r8]
lea rdx, [rsp + 0x70]
call qword [rax + ioctlsocket]
mov rcx, rax
mov qword [rbp - 0x58], rax
mov r8, qword [rbp + 0xb8]
test r8, r8
je 0x14000b8c7
mov rax, qword [r8]
lea rcx, [rbp + 0x80]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
mov rcx, qword [rbp - 0x58]
jmp 0x14000b8c0
mov qword [rbp - 0x58], rcx
mov qword [rbp + 0xb8], rbx
lea rax, [rsp + 0x70]
mov qword [rbp + 0x28], rax
mov qword [rsp + 0x30], r13
lea rax, [rbp + 0x70]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], r12
lea rax, vtable.std::_Func_impl_no_alloc_class__lambda_f0a65666dc9b03b1b99cc705250459b7___bool__unsigned_long_long_unsigned___int64___unsigned_long_long_unsigned___int64__.0
mov qword [rbp - 0x20], rax
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rbp - 0x18], xmm0
movsd xmm1, qword [rsp + 0x40]
movsd qword [rbp - 8], xmm1
lea rax, [rbp - 0x20]
mov qword [rbp + 0x18], rax
lea rax, [rbp - 0x20]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x78], 0xffffffffffffffff
mov qword [rbp - 0x50], r15
mov rax, qword [rbp - 0x28]
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x78]
mov qword [rbp - 0x40], rax
lea rax, [rbp - 0x20]
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x74]
mov qword [rbp - 0x30], rax
mov qword [rbp + 0x68], rbx
test rcx, rcx
je 0x14000b983
lea rax, [rsp + 0x70]
cmp rcx, rax
jne 0x14000b97b
mov rax, qword [rcx]
lea rdx, [rbp + 0x30]
call qword [rax + ioctlsocket]
mov qword [rbp + 0x68], rax
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x14000b983
mov rax, qword [rcx]
lea rdx, [rsp + 0x70]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
jmp 0x14000b97f
mov qword [rbp + 0x68], rcx
mov qword [rbp - 0x58], rbx
movups xmm0, xmmword [rbp - 0x50]
movaps xmmword [rsp + 0x30], xmm0
movups xmm1, xmmword [rbp - 0x40]
movaps xmmword [rsp + 0x40], xmm1
movsd xmm0, qword [rbp - 0x30]
movsd qword [rsp + 0x50], xmm0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
movzx r9d, sil
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x74]
mov rcx, r15
call fcn.140024b00
movzx esi, al
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x14000b9e2
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x20]
lea rax, [rbp - 0x20]
cmp rcx, rax
setne dl
call r8
mov qword [rbp + 0x18], rbx
mov rcx, qword [rbp - 0x58]
test rcx, rcx
je 0x14000b9fc
mov rax, qword [rcx]
lea rdx, [rsp + 0x70]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
test sil, sil
jne 0x14000ba38
cmp dword [r12], 7
je 0x14000ba10
mov dword [r12], 4
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x14000bc86
mov rax, qword [rcx]
lea rdx, [rbp + 0x80]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
jmp 0x14000bc86
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x14000ba57
mov rax, qword [rcx]
lea rdx, [rbp + 0x80]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x50], 0
mov r8d, 0xa
lea rdx, str.Connection
lea rcx, [rbp - 0x50]
call fcn.14001ea90
nop
or edi, 4
mov dword [rbp + 0x74], edi
lea rdx, [rbp - 0x50]
lea rcx, [r15 + 0x48]
call fcn.1400048c0
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], reloc.WS2_32.dll_ntohs
mov r8, 0xffffffffffffffff
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14000bab0
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.14001ea90
or edi, 0x18
lea rdx, [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
cmp r14, 0x10
cmovae rdx, rsi
cmp qword [rsp + 0x40], 5
jne 0x14000bb1f
mov rcx, rbx
lea r8, str.close
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x14000bb16
cmp rcx, 5
jne 0x14000bb00
jmp 0x14000bb1b
sbb ebx, ebx
or ebx, 1
test ebx, ebx
je 0x14000bb74
mov rcx, r15
cmp qword [r15 + 0x18], 0x10
jb 0x14000bb2c
mov rcx, qword [r15]
cmp qword [r15 + 0x10], 8
jne 0x14000bb78
mov r8d, 8
lea rdx, str.HTTP_1.0
call fcn.140112be0
test eax, eax
jne 0x14000bb78
lea rcx, [r15 + 0x28]
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x14000bb5b
mov rcx, qword [rcx]
cmp rax, 0x16
jne 0x14000bb74
mov r8, rax
lea rdx, str.Connection_established
call fcn.140112be0
test eax, eax
je 0x14000bb78
mov bl, 1
jmp 0x14000bb7a
xor bl, bl
test dil, 8
je 0x14000bbbb
and edi, 0xfffffff7
cmp r14, 0x10
jb 0x14000bbbb
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14000bbb2
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000bcb3
mov rcx, rsi
call fcn.14010fe30
nop
test dil, 4
je 0x14000bbfc
mov rdx, qword [rbp - 0x38]
cmp rdx, 0x10
jb 0x14000bbfc
inc rdx
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000bbf7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000bcb9
call fcn.14010fe30
mov rsi, qword [rsp + 0x60]
test bl, bl
je 0x14000bc62
lea rbx, [rsi + 0x58]
mov qword [rbp + 0x20], rbx
mov rcx, rbx
call fcn.14010ed7c
test eax, eax
jne 0x14000bcab
mov rax, qword [rsi]
mov r8b, 1
lea rdx, [rsi + 0x50]
mov rcx, rsi
call qword [rax + 0x18]
mov rcx, qword [rsi + 0x50]
cmp rcx, 0xffffffffffffffff
je 0x14000bc42
mov edx, 2
call qword [sym.imp.WS2_32.dll_shutdown]
mov rcx, qword [rsi + 0x50]
cmp rcx, 0xffffffffffffffff
je 0x14000bc5a
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [rsi + 0x50], 0xffffffffffffffff
mov rcx, rbx
call fcn.14010ed84
mov rcx, qword [rsi + 0x330]
test rcx, rcx
je 0x14000bc7a
mov rax, qword [rcx]
mov r8, r15
mov rdx, r13
call qword [rax + reloc.WS2_32.dll_recv]
mov al, 1
jmp 0x14000bc88
mov dword [r12], 4
xor al, al
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.14010fe10
add rsp, 0x1d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, eax
call fcn.14010e8f0
nop
call fcn.14011d47c
nop
call fcn.14011d47c
int3