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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x4cf306
push rbp
mov rbp, rsp
sub rsp, 0x48
test r10, r10
je 0x4cf2f2
lea rdx, [rbx - 1]
nop
test rdx, rdx
jge 0x4ceea0
mov r11, rbx
neg rbx
mov rdx, rax
movabs rax, 0xaaaaaaaaaaaaaaab
mov r12, rdx
imul rbx
sub rdx, r11
sar rdx, 3
sar rbx, 0x3f
sub rdx, rbx
sub r12, rdx
lea r13, [rdx + rdx*2]
lea rax, [r12 - 1]
lea rdx, [r11 + r13*4]
lea rdx, [rdx + 0xb]
cmp rdx, 0xc
jl 0x4ceed2
mov rbx, rax
movabs rax, 0xaaaaaaaaaaaaaaab
mov r11, rdx
imul rdx
lea r12, [rdx + r11]
sar r12, 3
lea r13, [r12 + r12*2]
shl r13, 2
lea rax, [r12 + rbx]
sub r11, r13
jmp 0x4ceed5
mov r11, rdx
test r9, r9
jge 0x4cef19
lea rdx, [r9 + 1]
neg rdx
mov rbx, rax
movabs rax, 0x44b82fa09b5a52cc
mov r12, rdx
imul rdx
sar rdx, 0x1c
sar r12, 0x3f
sub rdx, r12
sub r8, rdx
imul rdx, rdx, 0x3b9aca00
dec r8
lea r9, [r9 + rdx]
lea r9, [r9 + 0x3b9aca00]
jmp 0x4cef20
mov rbx, rax
nop dword [rax]
cmp r9, 0x3b9aca00
jl 0x4cef47
movabs rax, 0x44b82fa09b5a52cc
imul r9
sar rdx, 0x1c
imul r12, rdx, 0x3b9aca00
add r8, rdx
sub r9, r12
nop
test r8, r8
jge 0x4cef87
lea rdx, [r8 + 1]
neg rdx
movabs rax, 0x8888888888888889
mov r12, rdx
imul rdx
sub rdx, r8
dec rdx
sar rdx, 5
sar r12, 0x3f
sub rdx, r12
sub rsi, rdx
imul rdx, rdx, 0x3c
dec rsi
lea r8, [r8 + rdx]
lea r8, [r8 + 0x3c]
cmp r8, 0x3c
jl 0x4cefab
movabs rax, 0x8888888888888889
imul r8
add rdx, r8
sar rdx, 5
imul r12, rdx, 0x3c
add rsi, rdx
sub r8, r12
nop
test rsi, rsi
jge 0x4cefeb
lea rdx, [rsi + 1]
neg rdx
movabs rax, 0x8888888888888889
mov r12, rdx
imul rdx
sub rdx, rsi
dec rdx
sar rdx, 5
sar r12, 0x3f
sub rdx, r12
sub rdi, rdx
imul rdx, rdx, 0x3c
dec rdi
lea rsi, [rsi + rdx]
lea rsi, [rsi + 0x3c]
cmp rsi, 0x3c
jl 0x4cf00f
movabs rax, 0x8888888888888889
imul rsi
add rdx, rsi
sar rdx, 5
imul r12, rdx, 0x3c
add rdi, rdx
sub rsi, r12
nop
test rdi, rdi
jge 0x4cf04f
lea rdx, [rdi + 1]
neg rdx
movabs rax, 0xaaaaaaaaaaaaaaab
mov r12, rdx
imul rdx
sub rdx, rdi
dec rdx
sar rdx, 4
sar r12, 0x3f
sub rdx, r12
sub rcx, rdx
lea rdx, [rdx + rdx*2]
dec rcx
lea rdi, [rdi + rdx*8]
lea rdi, [rdi + 0x18]
cmp rdi, 0x18
jl 0x4cf077
movabs rax, 0xaaaaaaaaaaaaaaab
imul rdi
add rdx, rdi
sar rdx, 4
lea r12, [rdx + rdx*2]
shl r12, 3
add rcx, rdx
sub rdi, r12
movabs rdx, 0x440d116ebf
lea r12, [rdx + rbx]
shr r12, 1
movabs rax, 0xa3d70a3d70a3d70b
mul r12
shr rdx, 7
imul r12, rdx, 0x190
mov r13, rbx
sub rbx, r12
movabs r12, 0x440d116ebf
lea r15, [r12 + rbx]
imul rdx, rdx, 0x23ab1
mov qword [rsp + 0x18], rdx
shr r15, 1
movabs rax, 0xa3d70a3d70a3d70b
mul r15
shr rdx, 5
imul r15, rdx, 0x64
sub rbx, r15
lea r15, [r12 + rbx]
imul rdx, rdx, 0x8eac
mov rax, r9
mov r9, qword [rsp + 0x18]
add rdx, r9
shr r15, 2
mov r9, r15
shl r15, 2
sub rbx, r15
add r12, rbx
imul r9, r9, 0x5b5
add rdx, r9
imul r9, r12, 0x16d
nop
add rdx, r9
nop word [rax + rax]
cmp r11, 0xd
jae 0x4cf2e5
mov qword [rsp + 0x28], rax
lea r9, [0x0088ea60]
lea r9, [r9 + r11*4]
movsxd r9, dword [r9]
lea r12, [r9 + rdx]
test r13, 3
jne 0x4cf1ba
mov rbx, rax
movabs rax, 0xa3d70a3d70a3d70b
mov r15, rdx
imul r13
add rdx, r13
sar rdx, 6
mov rax, r13
sar r13, 0x3f
sub rdx, r13
imul rdx, rdx, 0x64
cmp rax, rdx
jne 0x4cf1a5
movabs rdx, 0x8f5c28f5c28f5c29
imul rdx, rax
movabs r13, 0x51eb851eb851eb0
add rdx, r13
rol rdx, 0x3c
movabs r13, 0xa3d70a3d70a3d6
cmp r13, rdx
jb 0x4cf1bd
lea rdx, [r11 + 1]
cmp rdx, 3
jl 0x4cf1bd
lea r12, [r15 + r9]
lea r12, [r12 + 1]
jmp 0x4cf1bd
mov rbx, rax
mov qword [rsp + 0x90], r10
lea rcx, [r12 + rcx]
lea rcx, [rcx - 1]
imul rcx, rcx, 0x15180
imul rdx, rdi, 0xe10
imul rsi, rsi, 0x3c
add rdx, rsi
add rdx, r8
add rcx, rdx
mov qword [rsp + 0x20], rcx
movabs rdx, 0x80000001e5263700
lea rbx, [rdx + rcx]
mov qword [rsp + 0x10], rbx
mov rax, r10
call fcn.004cfa40
test rcx, rcx
je 0x4cf255
mov rdx, qword [rsp + 0x20]
mov r8, rdx
sub rdx, rcx
movabs r9, 0x80000001e5263700
lea rbx, [rdx + r9]
cmp rdi, rbx
jg 0x4cf230
cmp rsi, rbx
jg 0x4cf24c
mov rax, qword [rsp + 0x90]
call fcn.004cfa40
mov r8, qword [rsp + 0x20]
movabs r9, 0x80000001e5263700
sub r8, rcx
lea rbx, [r8 + r9]
jmp 0x4cf25a
mov rbx, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x28]
movsxd rdx, edx
movabs rsi, 0xe7791f700
add rsi, rbx
mov rdi, qword [0x008bd668]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x40], rdi
nop
nop
mov rcx, qword [rsp + 0x90]
lea rsi, [0x008c75c0]
cmp rcx, rsi
mov esi, 0
cmove rcx, rsi
bt rdx, 0x3f
jae 0x4cf2d0
mov rsi, rdx
and edx, 0x3fffffff
shl rsi, 1
shr rsi, 0x1f
movabs rdi, 0xdd7b17f80
add rsi, rdi
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x40], rcx
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
add rsp, 0x48
pop rbp
ret
mov rax, r11
mov ecx, 0xd
call fcn.00466960
lea rax, [0x0065b7a0]
lea rbx, [0x00727930]
call fcn.00436ac0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.004646a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
nop dword [rax + rax]
jmp fcn.004cee40