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

Disassembly:
lea r12, [rsp - 0x78]
cmp r12, qword [r14 + 0x10]
jbe 0x45f2fa
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 0x45f2e6
movzx esi, byte [rax + 0x17]
and esi, 0x1f
cmp sil, 0x13
jne 0x45f2e6
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 0x45eeff
mov ecx, 0x48
jmp 0x45ef04
mov ecx, 0x38
movzx esi, word [rax + 0x30]
lea rdi, [rcx + rax]
cmp rsi, 0x100000
ja 0x45f2d9
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x30], rsi
xor ecx, ecx
jmp 0x45ef61
mov qword [rsp + 0x28], rcx
mov rbx, qword [rdi + rcx*8]
lea rax, [rsp + 0x60]
nop
call fcn.00450fe0
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 0x45ef31
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 0x45f2d1
lea rdi, [r8 - 0x100000]
mov r9d, r8d
shl r8, 3
sar rdi, 0x3f
and rdi, r8
sub rcx, r9
cmp rcx, 1
jne 0x45f2be
test sil, 1
je 0x45efd8
mov ecx, 0x48
jmp 0x45efdd
mov ecx, 0x38
add rcx, rax
mov rcx, qword [rcx + rdi]
nop
cmp qword [rcx], 8
jne 0x45f2ab
test sil, 1
je 0x45effc
mov ecx, 0x48
jmp 0x45f001
mov ecx, 0x38
add rcx, rax
mov rcx, qword [rcx + rdi]
movzx ecx, byte [rcx + 0x17]
and ecx, 0x1f
nop
cmp cl, 0xd
je 0x45f298
nop dword [rax]
cmp cl, 0xe
je 0x45f298
cmp qword [0x009204e0], 0
jne 0x45f03f
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 0x45f285
nop
nop
nop
lea rax, [0x009a8dc0]
call fcn.0040b340
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rcx
mov byte [rsp + 0x58], 0
mov rbx, qword [0x009cfec8]
lea rax, [0x006d4220]
lea rcx, [rsp + 0x50]
nop
call fcn.0040e640
mov rcx, qword [rax]
test bl, bl
jne 0x45f22b
cmp qword [0x009cfec8], 0
jne 0x45f0dd
call fcn.0040df80
cmp dword [0x009d0300], 0
jne 0x45f0d1
mov qword [0x009cfec8], rax
jmp 0x45f0dd
lea rdi, [0x009cfec8]
call fcn.00462fc0
mov rax, qword [0x009cfed0]
cmp rax, 0x7d0
jge 0x45f265
lea rdi, [rsp + 0xa0]
lea rdi, [rdi - 0x30]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00463750
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 0x45f259
mov qword [rsp + 0x18], rax
lea r8, [rax + rax*4]
shl r8, 4
lea r9, [0x009a8dc8]
lea rdi, [r9 + r8]
cmp dword [0x009d0300], 0
jne 0x45f1b5
lea rsi, [rsp + 0xa0]
nop word [rax + rax]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00463aba
mov rbp, qword [rbp]
jmp 0x45f1d1
lea rax, [0x006f9900]
mov rbx, rdi
lea rcx, [rsp + 0xa0]
call fcn.00413960
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rdx
mov byte [rsp + 0x58], 0
mov rbx, qword [0x009cfec8]
lea rax, [0x006d4220]
lea rcx, [rsp + 0x50]
call fcn.0040ea80
mov rdx, qword [rsp + 0x18]
mov qword [rax], rdx
inc qword [0x009cfed0]
nop
nop
nop
lea rax, [0x009a8dc0]
call fcn.0040b560
mov rax, qword [rsp + 0x18]
call fcn.004516a0
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov qword [rsp + 0x20], rcx
nop
nop
nop
lea rax, [0x009a8dc0]
call fcn.0040b560
mov rax, qword [rsp + 0x20]
call fcn.004516a0
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov ecx, 0x7d0
nop
call fcn.00463460
nop
nop
nop
lea rax, [0x009a8dc0]
call fcn.0040b560
lea rax, [0x00730211]
mov ebx, 0x1b
call fcn.00436360
lea rax, [0x006c6120]
lea rbx, [0x007ae210]
call fcn.00435be0
lea rax, [0x006c6120]
lea rbx, [0x007ae200]
call fcn.00435be0
lea rax, [0x006c6120]
lea rbx, [0x007ae1f0]
call fcn.00435be0
lea rax, [0x006c6120]
lea rbx, [0x007ae1f0]
call fcn.00435be0
mov eax, r8d
call fcn.00463520
mov rcx, rsi
mov edx, 0x100000
call fcn.004634a0
lea rax, [0x006c6120]
lea rbx, [0x007ae1f0]
call fcn.00435be0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov byte [rsp + 0x18], cl
call fcn.00460d80
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
movzx ecx, byte [rsp + 0x18]
nop dword [rax]
jmp fcn.0045ee80