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

Disassembly:
lea r12, [rsp - 0x78]
cmp r12, qword [r14 + 0x10]
jbe 0x44ee97
sub rsp, 0xf8
mov qword [rsp + 0xf0], rbp
lea rbp, [rsp + 0xf0]
mov rcx, qword [rax]
mov edx, dword [rcx]
mov dword [rsp + 0x1c], edx
cmp edx, 0xfffffff0
jne 0x44ed1a
cmp byte [rcx + 4], 0
nop dword [rax]
jne 0x44ed1a
cmp byte [rcx + 5], 0
jne 0x44ed1a
cmp byte [rcx + 6], 1
jne 0x44ed1a
cmp byte [rcx + 7], 8
nop
jne 0x44ed1a
mov rsi, qword [rcx + 0x18]
cmp qword [rax + 0xb0], rsi
jne 0x44ed1a
mov qword [rsp + 0x100], rax
mov rcx, qword [rax + 0x80]
mov rdx, qword [rax + 0x88]
dec rdx
xor ebx, ebx
jmp 0x44e820
mov rbx, rdi
nop word [rax + rax]
cmp rbx, rdx
jge 0x44e9b1
mov esi, dword [rcx + rbx*8]
lea rdi, [rbx + 1]
lea r8, [rcx + rbx*8]
lea r8, [r8 + 8]
cmp dword [r8], esi
jae 0x44e814
mov qword [rsp + 0x40], rbx
mov rsi, qword [rax + 0x68]
mov r8d, dword [rcx + rbx*8 + 4]
add r8, rsi
mov ecx, dword [rcx + rbx*8 + 0xc]
add rcx, rsi
cmp rdi, rdx
jl 0x44e868
mov ecx, 3
lea rdx, [0x0064460d]
jmp 0x44e891
mov qword [rsp + 0xc0], r8
mov rbx, rax
mov rax, rcx
call fcn.0044fb80
mov r8, qword [rsp + 0xc0]
mov rcx, rbx
mov rdx, rax
mov rax, qword [rsp + 0x100]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0xa0], rdx
mov rbx, rax
mov rax, r8
call fcn.0044fb80
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x98], rbx
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rcx + 0x80]
mov rsi, qword [rsp + 0x40]
mov edi, dword [rdx + rsi*8]
mov qword [rsp + 0x90], rdi
mov edx, dword [rdx + rsi*8 + 8]
mov qword [rsp + 0x88], rdx
mov r8, qword [rcx + 0x198]
mov qword [rsp + 0xb0], r8
mov r9, qword [rcx + 0x1a0]
mov qword [rsp + 0x80], r9
call fcn.00438460
lea rax, [0x006557b4]
mov ebx, 0x2f
call fcn.00438d00
mov rax, qword [rsp + 0x90]
call fcn.00438b80
call fcn.00438660
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x98]
call fcn.00438d00
lea rax, [0x00644490]
mov ebx, 3
call fcn.00438d00
mov rax, qword [rsp + 0x88]
call fcn.00438b80
nop dword [rax]
call fcn.00438660
mov rax, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0x48]
call fcn.00438d00
lea rax, [0x00645fd4]
mov ebx, 0xb
call fcn.00438d00
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x80]
call fcn.00438d00
nop dword [rax]
call fcn.004386a0
call fcn.004384e0
xor eax, eax
jmp 0x44ecf3
mov qword [rsp + 0x20], rdx
mov ebx, dword [rcx]
call fcn.0044eec0
mov qword [rsp + 0x28], rax
mov rcx, qword [rsp + 0x20]
shl rcx, 3
mov rdx, qword [rsp + 0x100]
add rcx, qword [rdx + 0x80]
mov ebx, dword [rcx]
mov rax, rdx
nop
call fcn.0044eec0
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rcx + 0xa0]
mov qword [rsp + 0x78], rdx
mov rsi, qword [rsp + 0x28]
cmp rsi, rdx
jne 0x44eba5
cmp qword [rcx + 0xa8], rax
jne 0x44eba5
mov rdx, qword [rcx + 0x1d8]
mov rsi, qword [rcx + 0x1d0]
test rdx, rdx
je 0x44ea38
mov qword [rsp + 0x98], rdx
xor eax, eax
jmp 0x44ea6a
mov rbp, qword [rsp + 0xf0]
add rsp, 0xf8
ret
mov rdi, qword [rsp + 0xa8]
add rdi, 0x28
mov rcx, qword [rsp + 0x100]
mov rsi, rdi
mov rax, rdx
mov rdx, qword [rsp + 0x98]
mov rdi, qword [rsi]
mov qword [rsp + 0xc8], rdi
movups xmm0, xmmword [rsi + 8]
movups xmmword [rsp + 0xd0], xmm0
movups xmm0, xmmword [rsi + 0x18]
movups xmmword [rsp + 0xe0], xmm0
mov rdi, qword [rsp + 0xe8]
mov r8, qword [rsp + 0xe0]
mov r9, qword [rsp + 0xd8]
mov rbx, qword [rdi]
cmp qword [rdi + 8], r8
jne 0x44eaee
mov qword [rsp + 0x80], rax
mov qword [rsp + 0xa8], rsi
mov rax, r9
mov rcx, r8
call fcn.00402c80
test al, al
je 0x44eaee
mov rdx, qword [rsp + 0x80]
inc rdx
mov rsi, qword [rsp + 0x98]
cmp rsi, rdx
jg 0x44ea48
jmp 0x44ea38
mov rax, qword [rsp + 0x100]
mov rcx, qword [rax + 0x1c0]
mov qword [rsp + 0xb8], rcx
mov rax, qword [rax + 0x1c8]
mov qword [rsp + 0x98], rax
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0xb0], rdx
mov rbx, qword [rsp + 0xd0]
mov qword [rsp + 0x80], rbx
call fcn.00438460
lea rax, [0x0064f467]
mov ebx, 0x1e
call fcn.00438d00
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x98]
call fcn.00438d00
lea rax, [0x006448a3]
mov ebx, 5
call fcn.00438d00
mov rax, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0x80]
call fcn.00438d00
call fcn.004386a0
call fcn.004384e0
lea rax, [0x00646951]
mov ebx, 0xc
nop dword [rax + rax]
call fcn.00436d80
mov rax, qword [rcx + 0xa8]
mov qword [rsp + 0x70], rax
call fcn.00438460
lea rax, [0x00645133]
mov ebx, 7
call fcn.00438d00
mov rax, qword [rsp + 0x78]
call fcn.00438b80
lea rax, [0x00644b3b]
mov ebx, 6
nop dword [rax]
call fcn.00438d00
mov rax, qword [rsp + 0x28]
call fcn.00438b80
lea rax, [0x006451e7]
mov ebx, 8
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x70]
call fcn.00438b80
lea rax, [0x00644b35]
mov ebx, 6
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x30]
call fcn.00438b80
call fcn.004386a0
call fcn.004384e0
lea rax, [0x0064b290]
mov ebx, 0x16
call fcn.00436d80
mov qword [rsp + 0x38], rax
mov rbx, qword [rsp + 0x100]
mov rcx, qword [rbx + 0x80]
mov ecx, dword [rcx + rax*8 + 4]
add rcx, qword [rbx + 0x68]
mov rax, rcx
call fcn.0044fb80
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0x98], rbx
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rcx + 0x80]
mov rsi, qword [rsp + 0x38]
mov edx, dword [rdx + rsi*8]
mov qword [rsp + 0x90], rdx
nop dword [rax]
call fcn.00438460
lea rax, [0x00644459]
mov ebx, 2
call fcn.00438d00
mov rax, qword [rsp + 0x90]
nop
call fcn.00438b80
call fcn.00438660
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x98]
call fcn.00438d00
nop
call fcn.004386a0
call fcn.004384e0
mov rcx, qword [rsp + 0x38]
lea rax, [rcx + 1]
mov rcx, qword [rsp + 0x40]
nop dword [rax + rax]
cmp rax, rcx
jle 0x44ec4a
lea rax, [0x0064e5ca]
mov ebx, 0x1c
call fcn.00436d80
movzx edx, byte [rcx + 4]
mov qword [rsp + 0x68], rdx
movzx ebx, byte [rcx + 5]
mov qword [rsp + 0x60], rbx
movzx esi, byte [rcx + 6]
mov qword [rsp + 0x58], rsi
movzx edi, byte [rcx + 7]
mov qword [rsp + 0x50], rdi
mov rcx, qword [rcx + 0x18]
mov qword [rsp + 0x78], rcx
mov r8, qword [rax + 0xb0]
mov qword [rsp + 0x70], r8
mov r9, qword [rax + 0x198]
mov qword [rsp + 0xb8], r9
mov rax, qword [rax + 0x1a0]
mov qword [rsp + 0x98], rax
call fcn.00438460
lea rax, [0x0064d767]
mov ebx, 0x1a
call fcn.00438d00
mov eax, dword [rsp + 0x1c]
call fcn.00438b80
lea rax, [0x00644e31]
mov ebx, 7
nop dword [rax]
call fcn.00438d00
mov rax, qword [rsp + 0x68]
call fcn.00438a40
lea rax, [0x00644e38]
mov ebx, 7
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x60]
call fcn.00438a40
lea rax, [0x006451f7]
mov ebx, 8
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x58]
call fcn.00438a40
lea rax, [0x00645aaa]
mov ebx, 0xa
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x50]
call fcn.00438a40
lea rax, [0x0064a4c3]
mov ebx, 0x15
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x78]
call fcn.00438b80
lea rax, [0x00644e46]
mov ebx, 7
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0x70]
call fcn.00438b80
lea rax, [0x00646d1b]
mov ebx, 0xd
nop dword [rax + rax]
call fcn.00438d00
mov rax, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0x98]
call fcn.00438d00
call fcn.004386a0
nop
call fcn.004384e0
lea rax, [0x0064ecf2]
mov ebx, 0x1d
call fcn.00436d80
nop
mov qword [rsp + 8], rax
nop dword [rax]
call fcn.0045f280
mov rax, qword [rsp + 8]
jmp fcn.0044e780