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

Disassembly:
lea r12, [rsp - 0xa50]
cmp r12, qword [r14 + 0x10]
jbe 0x55313d
push rbp
mov rbp, rsp
sub rsp, 0xac8
mov qword [rsp + 0xae8], rcx
mov qword [rsp + 0xab8], rax
mov qword [rsp + 0xab0], rdi
mov qword [rsp + 0xaa8], rbx
mov qword [rsp + 0xac0], 0
mov qword [rsp + 0xac0], rcx
xor edx, edx
jmp 0x552b60
mov rax, qword [rsp + 0xab8]
mov rcx, qword [rsp + 0xae8]
mov rbx, qword [rsp + 0xaa8]
mov rdi, qword [rsp + 0xab0]
mov edx, 1
nop word [rax + rax]
test rdx, rdx
jg 0x552bf2
mov rax, qword [rsp + 0xac0]
mov qword [rsp + 0xa98], rax
movups xmmword [rsp + 0x140], xmm15
movups xmmword [rsp + 0x148], xmm15
movups xmmword [rsp + 0x158], xmm15
test byte [rax], al
lea rbx, [rsp + 0x140]
mov ecx, 0x28
call fcn.00403880
test al, al
je 0x552b35
movups xmmword [rsp + 0x118], xmm15
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x130], xmm15
mov rax, qword [rsp + 0xa98]
add rax, 0x28
lea rbx, [rsp + 0x118]
mov ecx, 0x28
call fcn.00403880
test al, al
je 0x552b35
jmp 0x553129
call fcn.00552a80
mov qword [rsp + 0xaa0], rax
lea rdi, [rsp + 0x598]
mov ecx, 0xa0
xor eax, eax
rep stosq qword [rdi], rax
lea rax, [rsp + 0x598]
mov rbx, qword [rsp + 0xae8]
call fcn.00553180
mov rax, qword [rsp + 0xaa8]
mov ebx, 5
call fcn.00551620
lea rdi, [rsp + 0x498]
mov rsi, rsp
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466f60
mov rbp, qword [rbp]
mov rax, qword [rsp + 0xab0]
mov ebx, 8
call fcn.00551620
lea rdi, [rsp + 0x398]
mov rsi, rsp
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466f60
mov rbp, qword [rbp]
mov eax, 0xff
jmp 0x552ca0
dec rax
nop dword [rax]
test rax, rax
jl 0x552cbd
movzx ecx, byte [rsp + rax + 0x498]
test cl, cl
jne 0x552cbd
movzx ecx, byte [rsp + rax + 0x398]
test cl, cl
je 0x552c9a
lea rdi, [rsp + 0x2f8]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466c74
mov rbp, qword [rbp]
movups xmmword [rsp + 0x1e0], xmm15
lea rdi, [rsp + 0x1e8]
lea rdi, [rdi - 0x10]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466c86
mov rbp, qword [rbp]
lea rdi, [rsp + 0x258]
lea rdi, [rdi - 0x20]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466c74
mov rbp, qword [rbp]
movups xmmword [rsp + 0x168], xmm15
lea rdi, [rsp + 0x170]
lea rdi, [rdi - 0x10]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466c86
mov rbp, qword [rbp]
mov rcx, qword [0x008bd988]
mov rdx, qword [rcx]
nop
mov qword [rsp + 0x168], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rsp + 0x170], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rsp + 0x180], xmm0
mov rcx, qword [0x008bd990]
mov rdx, qword [rcx]
nop
mov qword [rsp + 0x190], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rsp + 0x198], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rsp + 0x1a8], xmm0
mov rcx, qword [0x008bd990]
mov rdx, qword [rcx]
nop
mov qword [rsp + 0x1b8], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rsp + 0x1c0], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rsp + 0x1d0], xmm0
mov eax, 0xff
jmp 0x552e03
lea rax, [rsp + 0x168]
lea rbx, [rsp + 0x258]
call fcn.0054fa60
mov rax, qword [rsp + 0x110]
dec rax
test rax, rax
jl 0x5530db
mov qword [rsp + 0x110], rax
lea rax, [rsp + 0x258]
lea rbx, [rsp + 0x168]
call fcn.00550e60
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x498]
nop dword [rax]
test dl, dl
jg 0x552ee5
jge 0x552f7a
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
nop
call fcn.0054fb80
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x498]
mov esi, edx
neg edx
shr dl, 7
sub edx, esi
sar dl, 1
movsx rax, dl
cmp rax, 8
jae 0x55311f
lea rdx, [rax + rax*4]
shl rdx, 5
lea rsi, [rsp + rdx + 0x598]
lea rdi, [rsp + 0x2f8]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466fb4
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x2f8]
call fcn.00550580
mov rcx, qword [rsp + 0x110]
nop
jmp 0x552f7a
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
call fcn.0054fb80
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x498]
mov esi, edx
shr dl, 7
add edx, esi
sar dl, 1
movsx rax, dl
nop word [rax + rax]
cmp rax, 8
jae 0x553115
lea rdx, [rax + rax*4]
shl rdx, 5
lea rsi, [rsp + rdx + 0x598]
lea rdi, [rsp + 0x2f8]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466fb4
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x2f8]
call fcn.00550260
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x398]
test dl, dl
jg 0x55303d
jge 0x552de3
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
call fcn.0054fb80
mov rcx, qword [rsp + 0xaa0]
test byte [rcx], al
mov rdx, qword [rsp + 0x110]
movzx esi, byte [rsp + rdx + 0x398]
mov edi, esi
neg esi
shr sil, 7
sub esi, edi
sar sil, 1
movsx rax, sil
cmp rax, 0x40
jae 0x55310b
imul rdx, rax, 0x78
mov r8, qword [rcx + rdx]
mov qword [rsp + 0x1e0], r8
lea rsi, [rdx + rcx]
lea rsi, [rsi + 8]
lea rdi, [rsp + 0x1e8]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466fde
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x1e0]
call fcn.00550b80
mov rcx, qword [rsp + 0x110]
jmp 0x552de3
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
call fcn.0054fb80
mov rcx, qword [rsp + 0xaa0]
test byte [rcx], al
mov rdx, qword [rsp + 0x110]
movzx esi, byte [rsp + rdx + 0x398]
mov edi, esi
shr sil, 7
add esi, edi
sar sil, 1
movsx rax, sil
nop dword [rax + rax]
cmp rax, 0x40
jae 0x553101
imul rdx, rax, 0x78
mov r8, qword [rcx + rdx]
mov qword [rsp + 0x1e0], r8
lea rsi, [rdx + rcx]
lea rsi, [rsi + 8]
lea rdi, [rsp + 0x1e8]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466fde
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x1e0]
call fcn.005508a0
jmp 0x552de3
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x168]
call fcn.0054fce0
mov rax, qword [rsp + 0xab8]
add rsp, 0xac8
pop rbp
ret
mov ecx, 0x40
call fcn.00466960
mov ecx, 0x40
call fcn.00466960
mov ecx, 8
call fcn.00466960
mov ecx, 8
call fcn.00466960
lea rax, [0x0065b7a0]
lea rbx, [0x00728300]
call fcn.00436ac0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.004646a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.00552ae0