Function at 0x6060e0
Capabilities:
Reference http user-agent string

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x6065a8
push rbp
mov rbp, rsp
sub rsp, 0x68
mov edx, dword [rsp + 0x78]
test edx, edx
je 0x606102
bt edx, 0x1f
nop
jae 0x60610f
cmp byte [rax + 0xa0], 0
je 0x606588
cmp byte [rsp + 0x9a], 0
je 0x606122
mov ecx, 8
nop
jmp 0x606124
xor ecx, ecx
cmp byte [rsp + 0x98], 0
je 0x606131
or ecx, 1
cmp byte [rsp + 0x99], 0
je 0x60613e
or ecx, 4
cmp dword [rsp + 0x9c], 0
jne 0x60615c
cmp byte [rsp + 0xa0], 0
jne 0x60615c
cmp byte [rsp + 0xa1], 0
je 0x60615f
or ecx, 0x20
mov qword [rsp + 0xa8], rax
mov r8, qword [rax + 0x98]
mov r9, qword [rax + 0x88]
cmp r8, 9
jae 0x6061b4
mov dword [rsp + 0x4c], edx
mov byte [rsp + 0x46], cl
mov rax, r9
mov ebx, 9
mov rcx, r8
mov rdi, rbx
lea rsi, [0x0067b400]
call sym.runtime.growslice
mov edx, dword [rsp + 0x4c]
mov r9, rax
mov r8, rcx
mov rax, qword [rsp + 0xa8]
movzx ecx, byte [rsp + 0x46]
mov dword [r9], 0x1000000
mov byte [r9 + 4], cl
bswap edx
mov dword [r9 + 5], edx
mov qword [rax + 0x90], 9
mov qword [rax + 0x98], r8
cmp dword [0x0098c4d0], 0
nop
je 0x6061f5
call sym.runtime.gcWriteBarrier2
mov qword [r11], r9
mov rdx, qword [rax + 0x88]
mov qword [r11 + 8], rdx
mov qword [rax + 0x88], r9
movzx edx, byte [rsp + 0x9a]
test dl, dl
je 0x606280
nop
cmp r8, 0xa
jae 0x606271
mov byte [rsp + 0x47], dl
mov rax, r9
mov ebx, 0xa
mov rcx, r8
mov edi, 1
lea rsi, [0x0067b400]
call sym.runtime.growslice
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x98], rcx
cmp dword [0x0098c4d0], 0
je 0x60625a
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov r8, qword [rdx + 0x88]
mov qword [r11 + 8], r8
mov qword [rdx + 0x88], rax
movzx edx, byte [rsp + 0x47]
mov r9, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax + 0x90], 0xa
mov byte [r9 + 9], dl
mov edx, dword [rsp + 0x9c]
movzx r8d, byte [rsp + 0xa0]
test edx, edx
jne 0x6062a7
test r8b, r8b
jne 0x6062a7
cmp byte [rsp + 0xa1], 0
je 0x6063df
bt edx, 0x1f
jae 0x6062ba
cmp byte [rax + 0xa0], 0
je 0x606574
mov r9d, edx
or edx, 0x80000000
mov rcx, qword [rax + 0x98]
mov rbx, qword [rax + 0x90]
add rbx, 4
mov r10, qword [rax + 0x88]
test r8, r8
cmovne r9d, edx
cmp rcx, rbx
jae 0x606345
mov dword [rsp + 0x48], r9d
mov rax, r10
mov edi, 4
lea rsi, [0x0067b400]
nop dword [rax]
call sym.runtime.growslice
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x98], rcx
cmp dword [0x0098c4d0], 0
je 0x606333
nop dword [rax]
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov r8, qword [rdx + 0x88]
mov qword [r11 + 8], r8
mov qword [rdx + 0x88], rax
mov r9d, dword [rsp + 0x48]
mov r10, rax
mov rax, rdx
mov qword [rax + 0x90], rbx
bswap r9d
mov dword [rbx + r10 - 4], r9d
mov rcx, qword [rax + 0x98]
mov rbx, qword [rax + 0x90]
inc rbx
movzx edx, byte [rsp + 0xa1]
mov r8, qword [rax + 0x88]
cmp rcx, rbx
jae 0x6063d3
mov byte [rsp + 0x45], dl
mov rax, r8
mov edi, 1
lea rsi, [0x0067b400]
call sym.runtime.growslice
mov rdx, qword [rsp + 0xa8]
mov qword [rdx + 0x98], rcx
cmp dword [0x0098c4d0], 0
je 0x6063bc
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov r8, qword [rdx + 0x88]
mov qword [r11 + 8], r8
mov qword [rdx + 0x88], rax
movzx edx, byte [rsp + 0x45]
mov r8, rax
mov rax, qword [rsp + 0xa8]
mov qword [rax + 0x90], rbx
mov byte [rbx + r8 - 1], dl
mov rcx, qword [rax + 0x98]
mov rdx, qword [rax + 0x90]
mov rdi, qword [rsp + 0x88]
lea rbx, [rdi + rdx]
mov r8, qword [rax + 0x88]
mov r9, qword [rsp + 0x80]
cmp rcx, rbx
jae 0x60643d
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x50], rdi
mov rax, r8
lea rsi, [0x0067b400]
call sym.runtime.growslice
mov rdx, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x50]
mov r9, qword [rsp + 0x60]
mov r8, rax
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], rbx
lea rax, [r8 + rdx]
mov rbx, r9
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0xa8]
mov qword [rsi + 0x90], rdx
mov rcx, qword [rsp + 0x58]
mov qword [rsi + 0x98], rcx
cmp dword [0x0098c4d0], 0
jne 0x60648b
mov rax, qword [rsp + 0x60]
jmp 0x6064a3
call sym.runtime.gcWriteBarrier2
mov rax, qword [rsp + 0x60]
mov qword [r11], rax
mov r8, qword [rsi + 0x88]
mov qword [r11 + 8], r8
mov qword [rsi + 0x88], rax
mov r8, qword [0x00905a90]
movzx edi, byte [rsp + 0x9a]
mov rbx, qword [0x00905a80]
cmp r8, rdi
jb 0x60659c
lea r8, [rdi + rdx]
cmp rcx, r8
jae 0x6064fd
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rbx
mov rbx, r8
lea rsi, [0x0067b400]
call sym.runtime.growslice
mov rdx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
mov r8, rbx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x50], rcx
add rdx, rax
mov rax, rdx
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0x58]
mov rax, qword [rsp + 0xa8]
mov qword [rax + 0x90], rdx
mov rdx, qword [rsp + 0x50]
mov qword [rax + 0x98], rdx
cmp dword [0x0098c4d0], 0
jne 0x60654a
mov rcx, qword [rsp + 0x60]
jmp 0x606562
call sym.runtime.gcWriteBarrier2
mov rcx, qword [rsp + 0x60]
mov qword [r11], rcx
mov rdx, qword [rax + 0x88]
mov qword [r11 + 8], rdx
mov qword [rax + 0x88], rcx
call sym.net_http._http2Framer_.endWrite
add rsp, 0x68
pop rbp
ret
mov rax, qword [0x008f54a0]
mov rbx, qword [0x008f54a8]
add rsp, 0x68
pop rbp
ret
mov rax, qword [0x008f5490]
mov rbx, qword [0x008f5498]
add rsp, 0x68
pop rbp
ret
mov rcx, rdi
mov rdx, r8
call sym.runtime.panicSliceAcap
nop
mov qword [rsp + 0x38], rax
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 0x38]
jmp sym.net_http._http2Framer_.WriteHeaders