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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x38]
cmp rax, qword [rcx + 0x10]
jbe 0x4550c9
sub rsp, 0xb8
mov qword [rsp + 0xb0], rbp
lea rbp, [rsp + 0xb0]
mov eax, dword [rsp + 0xd0]
nop dword [rax]
test eax, eax
je 0x45501a
mov rdx, qword [rsp + 0xe0]
test rdx, rdx
je 0x45500d
nop
mov rbx, qword [rsp + 0xd8]
mov rsi, rbx
shr rbx, 3
and rbx, 1
xor ecx, ecx
jmp 0x454b18
lea rcx, [r8 + 1]
mov rbx, rdi
cmp rcx, 8
jge 0x454b6c
mov rdi, rbx
shl rbx, 7
add rbx, rdx
mov r8, rcx
shl rcx, 4
mov r9d, dword [rbx + rcx + 8]
cmp r9d, eax
jne 0x454b11
mov r9, qword [rbx + rcx]
nop dword [rax]
cmp r9, rsi
jne 0x454b11
mov eax, dword [rbx + rcx + 0xc]
mov dword [rsp + 0xf0], eax
mov qword [rsp + 0xf8], 0
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
mov rbx, qword [rsp + 0xc0]
test rbx, rbx
je 0x454fcc
mov rdi, qword [rsp + 0xc8]
mov rcx, qword [rdi + 0x58]
mov r8, qword [rdi + 0x50]
mov r9, qword [rdi + 0x60]
cmp rax, rcx
ja 0x455065
mov r10, qword [rbx]
mov qword [rsp + 0x60], r10
mov dword [rsp + 0x54], 0xffffffff
sub r9, rax
sub rcx, rax
mov r11, r9
neg r9
sar r9, 0x3f
and r9, rax
add r8, r9
jmp 0x454bd6
mov r11, rdx
mov r8, rcx
mov r10, rbx
mov rbx, qword [rsp + 0xc0]
mov rcx, rax
mov qword [rsp + 0x58], r10
mov rax, qword [rbx]
cmp qword [rsp + 0x60], rax
mov qword [rsp], r8
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], r11
lea rax, [rsp + 0x60]
mov qword [rsp + 0x18], rax
lea rcx, [rsp + 0x54]
mov qword [rsp + 0x20], rcx
sete byte [rsp + 0x28]
call fcn.00455c00
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
cmp byte [rsp + 0x48], 0
je 0x454d05
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0xd8]
cmp rsi, rbx
jae 0x454bc2
mov rax, qword [rsp + 0xe0]
test rax, rax
je 0x454cdd
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
mov rcx, qword [rcx + 0x30]
nop
mov edx, dword [rcx + 0xf0]
mov ebx, dword [rcx + 0xf4]
mov dword [rcx + 0xf0], ebx
mov edi, edx
shl edx, 0x11
xor edi, edx
mov edx, ebx
xor ebx, edi
shr edi, 7
xor edi, ebx
mov ebx, edx
shr edx, 0x10
xor edx, edi
mov dword [rcx + 0xf4], edx
mov rcx, rsi
shr rsi, 3
and rsi, 1
shl rsi, 7
lea rdi, [rax + rsi]
add edx, ebx
and edx, 7
shl rdx, 4
mov ebx, dword [rax + rsi + 8]
mov r8d, dword [rax + rsi + 0xc]
mov r9, qword [rax + rsi]
mov qword [rdi + rdx], r9
mov dword [rdi + rdx + 8], ebx
mov dword [rdi + rdx + 0xc], r8d
mov edx, dword [rsp + 0x54]
mov qword [rax + rsi], rcx
mov ecx, dword [rsp + 0xd0]
mov dword [rax + rsi + 8], ecx
mov dword [rax + rsi + 0xc], edx
mov eax, dword [rsp + 0x54]
mov dword [rsp + 0xf0], eax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0xf8], rax
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
cmp dword [0x0081113c], 0
jne 0x454fa5
movzx ebx, byte [rsp + 0xe8]
nop word [rax + rax]
test bl, bl
je 0x454fa5
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x98], rcx
mov rax, qword [rsp + 0xc0]
mov qword [rsp], rax
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 8], rcx
call fcn.004550e0
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0xa8], rax
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x90], rcx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x88], rdx
nop
call fcn.0043aa00
lea rax, [0x00664dcc]
mov qword [rsp], rax
mov qword [rsp + 8], 0x24
call fcn.0043b480
mov rax, qword [rsp + 0xa8]
mov qword [rsp], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 8], rax
call fcn.0043b480
lea rax, [0x0065a50f]
mov qword [rsp], rax
mov qword [rsp + 8], 4
call fcn.0043b480
mov rax, qword [rsp + 0x88]
mov qword [rsp], rax
call fcn.0043b2a0
lea rax, [0x0065b5d8]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.0043b480
mov rax, qword [rsp + 0xd8]
mov qword [rsp], rax
call fcn.0043b2a0
lea rax, [0x0065a6f7]
mov qword [rsp], rax
mov qword [rsp + 8], 5
call fcn.0043b480
mov rax, qword [rsp + 0x98]
mov qword [rsp], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 8], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x10], rax
call fcn.0043b520
call fcn.0043ace0
call fcn.0043aaa0
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rax + 0x58]
mov rdx, qword [rax + 0x50]
mov rax, qword [rax + 0x60]
mov ebx, dword [rsp + 0xd0]
cmp rbx, rcx
ja 0x45505a
mov rsi, qword [rsp + 0xc0]
mov rdi, qword [rsi]
mov qword [rsp + 0x60], rdi
mov dword [rsp + 0x54], 0xffffffff
sub rax, rbx
sub rcx, rbx
mov rdi, rax
neg rax
sar rax, 0x3f
and rax, rbx
add rax, rdx
jmp 0x454f4e
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x68], rcx
mov qword [rsp + 0xa0], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x88], rax
call fcn.0043aa00
lea rax, [0x0065ad52]
mov qword [rsp], rax
mov qword [rsp + 8], 7
call fcn.0043b480
movsxd rax, dword [rsp + 0x54]
mov qword [rsp], rax
call fcn.0043b220
lea rax, [0x0065b5ec]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.0043b480
mov rax, qword [rsp + 0x88]
mov qword [rsp], rax
call fcn.0043b2a0
call fcn.0043ace0
call fcn.0043aaa0
mov rsi, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x68]
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rsi]
cmp qword [rsp + 0x60], rdx
mov qword [rsp], rax
mov qword [rsp + 8], rcx
mov qword [rsp + 0x10], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x18], rax
lea rcx, [rsp + 0x54]
mov qword [rsp + 0x20], rcx
sete byte [rsp + 0x28]
nop dword [rax]
call fcn.00455c00
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
cmp byte [rsp + 0x48], 0
jne 0x454eaf
nop
jmp 0x455041
mov dword [rsp + 0xf0], 0xffffffff
mov qword [rsp + 0xf8], 0
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
movzx eax, byte [rsp + 0xe8]
test al, al
je 0x454fe6
cmp dword [0x0081113c], 0
nop
je 0x45506a
mov dword [rsp + 0xf0], 0xffffffff
mov qword [rsp + 0xf8], 0
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
mov rsi, qword [rsp + 0xd8]
jmp 0x454b6c
mov dword [rsp + 0xf0], 0xffffffff
mov qword [rsp + 0xf8], 0
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
lea rax, [0x00661f32]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1c
call fcn.00439220
mov eax, ebx
nop dword [rax]
call fcn.0046ce80
call fcn.0046ce80
mov rax, qword [rbx]
mov qword [rsp + 0x88], rax
call fcn.0043aa00
lea rax, [0x006620d6]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1c
call fcn.0043b480
mov rax, qword [rsp + 0x88]
mov qword [rsp], rax
nop
call fcn.0043b2a0
call fcn.0043ace0
call fcn.0043aaa0
lea rax, [0x0065caa1]
mov qword [rsp], rax
mov qword [rsp + 8], 0xe
call fcn.00439220
nop
call fcn.0046abe0
jmp fcn.00454aa0