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

Disassembly:
lea r12, [rsp - 0x78]
cmp r12, qword [r14 + 0x10]
jbe 0x45ffee
sub rsp, 0xf8
mov qword [rsp + 0xf0], rbp
lea rbp, [rsp + 0xf0]
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
test rax, rax
je 0x45ffda
movzx esi, byte [rax + 0x17]
and esi, 0x1f
cmp sil, 0x13
jne 0x45ffda
movups xmmword [rsp + 0x60], xmm15
movups xmmword [rsp + 0x70], xmm15
movups xmmword [rsp + 0x80], xmm15
movups xmmword [rsp + 0x90], xmm15
movzx esi, byte [rax + 0x14]
test sil, 1
je 0x45fbdf
mov ecx, 0x48
jmp 0x45fbe4
mov ecx, 0x38
movzx esi, word [rax + 0x30]
lea rdi, [rcx + rax]
cmp rsi, 0x100000
ja 0x45ffcd
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x30], rsi
xor ecx, ecx
jmp 0x45fc41
mov qword [rsp + 0x28], rcx
mov rbx, qword [rdi + rcx*8]
lea rax, [rsp + 0x60]
nop
call fcn.004524a0
mov rcx, qword [rsp + 0x28]
inc rcx
mov rax, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
cmp rcx, rsi
jl 0x45fc11
mov rdx, qword [rsp + 0x80]
add rdx, 7
and rdx, 0xfffffffffffffff8
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x98], rdx
movzx esi, byte [rax + 0x14]
movzx edi, word [rax + 0x32]
and edi, 0x7fff
movzx r8d, word [rax + 0x30]
add edi, r8d
movzx ecx, di
nop
cmp r8, rcx
ja 0x45ffc5
lea rdi, [r8 - 0x100000]
mov r9d, r8d
shl r8, 3
sar rdi, 0x3f
and rdi, r8
sub rcx, r9
cmp rcx, 1
jne 0x45ffaf
test sil, 1
je 0x45fcb8
mov ecx, 0x48
jmp 0x45fcbd
mov ecx, 0x38
add rcx, rax
mov rcx, qword [rcx + rdi]
nop
cmp qword [rcx], 8
jne 0x45ff9c
test sil, 1
je 0x45fcdc
mov ecx, 0x48
jmp 0x45fce1
mov ecx, 0x38
add rcx, rax
mov rcx, qword [rcx + rdi]
movzx ecx, byte [rcx + 0x17]
and ecx, 0x1f
nop
cmp cl, 0xd
je 0x45ff89
nop dword [rax]
cmp cl, 0xe
je 0x45ff89
cmp qword [0x00792508], 0
jne 0x45fd1f
lea rcx, [rdx + 8]
mov qword [rsp + 0x80], rcx
mov rcx, qword [rsp + 0x80]
add rcx, 7
and rcx, 0xfffffffffffffff8
add rcx, qword [rsp + 0x88]
nop word [rax + rax]
cmp rcx, 0x200
ja 0x45ff76
nop
nop
nop
lea rax, [0x007e5e80]
call fcn.0040b3a0
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rcx
mov byte [rsp + 0x58], 0
mov rbx, qword [0x0080cf88]
lea rax, [0x005f2740]
lea rcx, [rsp + 0x50]
nop
call fcn.0040e6e0
mov rcx, qword [rax]
test bl, bl
jne 0x45ff11
cmp qword [0x0080cf88], 0
jne 0x45fdbd
call fcn.0040e000
cmp dword [0x0080d340], 0
jne 0x45fdb1
mov qword [0x0080cf88], rax
jmp 0x45fdbd
lea rdi, [0x0080cf88]
call fcn.00463cc0
mov rax, qword [0x0080cf90]
cmp rax, 0x7d0
jge 0x45ff53
lea rdi, [rsp + 0xa0]
lea rdi, [rdi - 0x30]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00464430
mov rbp, qword [rbp]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0xa0], rdx
movups xmm0, xmmword [rsp + 0x60]
movups xmmword [rsp + 0xb0], xmm0
movups xmm0, xmmword [rsp + 0x70]
movups xmmword [rsp + 0xc0], xmm0
movups xmm0, xmmword [rsp + 0x80]
movups xmmword [rsp + 0xd0], xmm0
movups xmm0, xmmword [rsp + 0x90]
movups xmmword [rsp + 0xe0], xmm0
nop word [rax + rax]
jae 0x45ff49
mov qword [rsp + 0x18], rax
lea r8, [rax + rax*4]
mov qword [rsp + 0x30], r8
shl r8, 4
lea r10, [0x007e5e88]
lea rdi, [r10 + r8]
cmp dword [0x0080d340], 0
jne 0x45fe95
lea rsi, [rsp + 0xa0]
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046479a
mov rbp, qword [rbp]
jmp 0x45feb1
lea rax, [0x006060a0]
mov rbx, rdi
lea rcx, [rsp + 0xa0]
call fcn.00413200
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rdx
mov byte [rsp + 0x58], 0
mov rbx, qword [0x0080cf88]
lea rax, [0x005f2740]
lea rcx, [rsp + 0x50]
call fcn.0040eb20
mov rdx, qword [rsp + 0x18]
mov qword [rax], rdx
inc qword [0x0080cf90]
nop
nop
nop
lea rax, [0x007e5e80]
call fcn.0040b5c0
lea rdx, [0x00467100]
mov rsi, qword [rsp + 0x30]
lea rax, [rdx + rsi]
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov qword [rsp + 0x20], rcx
nop
nop
nop
lea rax, [0x007e5e80]
call fcn.0040b5c0
lea rcx, [0x00467100]
mov rdx, qword [rsp + 0x20]
lea rdx, [rdx + rdx*4]
lea rax, [rdx + rcx]
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov ecx, 0x7d0
call fcn.00464160
nop
nop
nop
lea rax, [0x007e5e80]
nop dword [rax]
call fcn.0040b5c0
lea rax, [0x0062a2b4]
mov ebx, 0x1b
call fcn.00437180
lea rax, [0x005e9fc0]
lea rbx, [0x00690fd0]
call fcn.004369e0
lea rax, [0x005e9fc0]
lea rbx, [0x00690fc0]
call fcn.004369e0
lea rax, [0x005e9fc0]
lea rbx, [0x00690fb0]
call fcn.004369e0
lea rax, [0x005e9fc0]
lea rbx, [0x00690fb0]
nop dword [rax]
call fcn.004369e0
mov eax, r8d
call fcn.00464220
mov rcx, rsi
mov edx, 0x100000
call fcn.004641a0
lea rax, [0x005e9fc0]
lea rbx, [0x00690fb0]
call fcn.004369e0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov byte [rsp + 0x18], cl
nop dword [rax]
call fcn.00461a80
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
movzx ecx, byte [rsp + 0x18]
jmp fcn.0045fb60