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

Disassembly:
lea r12, [rsp - 8]
cmp r12, qword [r14 + 0x10]
jbe 0x453066
push rbp
mov rbp, rsp
add rsp, 0xffffffffffffff80
mov rdx, qword [rbx]
nop word [rax + rax]
cmp rdx, 8
ja 0x45304f
movzx esi, byte [rbx + 0x17]
and esi, 0x1f
cmp sil, 0xd
je 0x45303c
nop dword [rax + rax]
cmp sil, 0xe
je 0x45303c
test rdx, rdx
je 0x45301c
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rbx
mov rdx, qword [rax]
mov qword [rsp + 0x78], rdx
mov rsi, qword [rax + 8]
mov qword [rsp + 0x68], rsi
mov rdi, qword [rax + 0x10]
mov qword [rsp + 0x70], rdi
xor ecx, ecx
nop
call fcn.004530a0
test al, al
je 0x452e85
mov rax, qword [rsp + 0x90]
mov rcx, qword [rax + 0x28]
mov rdx, qword [rsp + 0x98]
movzx ebx, byte [rdx + 0x15]
lea rcx, [rbx + rcx]
lea rcx, [rcx - 1]
neg rbx
and rbx, rcx
mov qword [rax + 0x28], rbx
mov rcx, qword [rdx]
add rcx, rbx
mov qword [rax + 0x28], rcx
mov r8, rax
jmp 0x453011
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x90]
mov qword [r8 + 8], rdx
mov rdx, qword [rsp + 0x70]
mov qword [r8 + 0x10], rdx
cmp dword [0x00696870], 0
jne 0x452eaf
mov rdx, qword [rsp + 0x78]
jmp 0x452ec3
call fcn.00466460
mov rdx, qword [rsp + 0x78]
mov qword [r11], rdx
mov r9, qword [r8]
mov qword [r11 + 8], r9
mov qword [r8], rdx
mov rdx, qword [r8 + 0x20]
mov r9, qword [rsp + 0x98]
movzx r10d, byte [r9 + 0x15]
lea rdx, [rdx + r10]
lea rdx, [rdx - 1]
neg r10
and r10, rdx
mov qword [r8 + 0x20], r10
movups xmmword [rsp + 0x40], xmm15
movups xmmword [rsp + 0x48], xmm15
movups xmmword [rsp + 0x58], xmm15
mov qword [rsp + 0x40], 1
mov rdx, qword [r8 + 0x18]
mov qword [rsp + 0x48], rdx
mov r10, qword [r8 + 0x20]
mov qword [rsp + 0x50], r10
mov r11, qword [r9]
mov qword [rsp + 0x60], r11
mov r12, qword [r8 + 8]
test r12, r12
jne 0x452f2e
mov eax, 1
jmp 0x452f80
mov r13, qword [r8]
lea r12, [r12 + r12*4]
mov r15, qword [r13 + r12*8 - 0x28]
nop word [rax + rax]
cmp r15, 1
je 0x452f4a
xor eax, eax
jmp 0x452f7b
mov r15, qword [r13 + r12*8 - 0x20]
mov rax, qword [r13 + r12*8 - 8]
add r15, rax
cmp rdx, r15
jne 0x452f79
mov rdx, qword [r13 + r12*8 - 0x18]
add rdx, rax
cmp r10, rdx
jne 0x452f79
lea rdx, [rax + r11]
mov qword [r13 + r12*8 - 8], rdx
mov eax, 1
jmp 0x452f7b
xor eax, eax
xor eax, 1
nop
test al, al
je 0x45300a
mov rcx, qword [r8 + 0x10]
mov rbx, qword [r8 + 8]
inc rbx
mov rax, qword [r8]
cmp rcx, rbx
jae 0x452fdf
mov edi, 1
lea rsi, [0x004d52c0]
call fcn.0044bb60
mov rdx, qword [rsp + 0x90]
mov qword [rdx + 0x10], rcx
cmp dword [0x00696870], 0
nop
je 0x452fd1
call fcn.00466460
mov qword [r11], rax
mov rcx, qword [rdx]
mov qword [r11 + 8], rcx
mov qword [rdx], rax
mov r8, rdx
mov r9, qword [rsp + 0x98]
mov qword [r8 + 8], rbx
lea rcx, [rbx + rbx*4]
lea rdx, [rax + rcx*8]
lea rdx, [rdx - 0x20]
mov rbx, qword [rsp + 0x40]
mov qword [rax + rcx*8 - 0x28], rbx
movups xmm0, xmmword [rsp + 0x48]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rdx + 0x10], xmm0
mov rax, qword [r9]
add qword [r8 + 0x20], rax
add qword [r8 + 0x18], 8
sub rsp, 0xffffffffffffff80
pop rbp
ret
mov rcx, qword [rax + 0x20]
movzx edx, byte [rbx + 0x15]
lea rcx, [rdx + rcx]
lea rcx, [rcx - 1]
neg rdx
and rdx, rcx
mov qword [rax + 0x20], rdx
sub rsp, 0xffffffffffffff80
pop rbp
ret
lea rax, [0x004c3600]
lea rbx, [0x00509af0]
call fcn.00436480
lea rax, [0x004c3600]
lea rbx, [0x00509ae0]
nop dword [rax]
call fcn.00436480
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.00464520
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
nop
jmp fcn.00452dc0