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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x18]
jbe 0x44f0e0
sub rsp, 0x70
mov qword [rsp + 0x68], rbp
lea rbp, [rsp + 0x68]
mov rdx, qword gs:[0x28]
mov rdx, qword [rdx]
mov rbx, qword [rdx + 0x30]
nop dword [rax]
cmp qword [rbx], rdx
jne 0x44f0c5
mov edx, dword [rsp + 0x78]
lea esi, [rdx - 1]
test esi, edx
jne 0x44f0ab
cmp dword [0x008116e8], 0
nop
jne 0x44eff0
cmp edx, 0x8000
jae 0x44ef17
mov eax, edx
xor ecx, ecx
jmp 0x44ee00
inc ecx
shr edx, 1
nop dword [rax]
cmp edx, 0x2000
ja 0x44edf8
mov rdx, qword [rbx + 0xa0]
test rdx, rdx
jne 0x44ee98
movzx edx, cl
nop dword [rax + rax]
cmp rdx, 2
jae 0x44f085
mov byte [rsp + 0x27], cl
shl rdx, 6
lea rax, [0x00811840]
add rax, rdx
mov qword [rsp + 0x60], rax
nop
mov qword [rsp], rax
call fcn.0040bfe0
movzx eax, byte [rsp + 0x27]
mov byte [rsp], al
call fcn.0044e680
mov rax, qword [rsp + 8]
mov qword [rsp + 0x28], rax
nop
nop
mov rcx, qword [rsp + 0x60]
mov qword [rsp], rcx
call fcn.0040c240
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x80], rax
mov ecx, dword [rsp + 0x78]
add rax, rcx
mov qword [rsp + 0x88], rax
mov rbp, qword [rsp + 0x68]
add rsp, 0x70
ret
cmp qword [rbx + 0xd0], 0
jne 0x44ee18
mov rdx, qword [rdx + 0x40]
test byte [rdx], al
movzx ebx, cl
cmp rbx, 2
jae 0x44f074
shl rbx, 4
mov rsi, qword [rdx + rbx + 0x468]
mov rdi, rsi
test rsi, rsi
je 0x44eee8
mov rcx, rdi
mov rsi, qword [rdi]
mov qword [rdx + rbx + 0x468], rsi
sub qword [rdx + rbx + 0x470], rax
mov rax, rcx
jmp 0x44ee77
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x58], rbx
mov qword [rsp], rdx
mov byte [rsp + 8], cl
call fcn.0044ea20
mov rbx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rdx + rbx + 0x468]
mov eax, dword [rsp + 0x78]
jmp 0x44eecd
mov eax, edx
shr rdx, 0xd
mov rcx, rdx
xor ebx, ebx
jmp 0x44ef2a
shr rdx, 1
inc rbx
cmp rdx, 1
ja 0x44ef24
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x38], rbx
nop
nop
lea rax, [0x008121a0]
mov qword [rsp], rax
call fcn.0040bfe0
mov rax, qword [rsp + 0x38]
cmp rax, 0x23
jae 0x44f06a
shl rax, 4
lea rcx, [0x008121a8]
mov rdx, qword [rcx + rax]
test rdx, rdx
jne 0x44efd3
xor eax, eax
mov qword [rsp + 0x30], rax
nop
nop
lea rcx, [0x008121a0]
mov qword [rsp], rcx
call fcn.0040c240
mov rax, qword [rsp + 0x30]
test rax, rax
je 0x44ef9b
mov rax, qword [rax + 0x18]
jmp 0x44ee77
lea rax, [0x007e2de0]
mov qword [rsp], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 8], rax
mov byte [rsp + 0x10], 1
call fcn.00428960
mov rax, qword [rsp + 0x18]
nop
test rax, rax
je 0x44f051
mov ecx, dword [rsp + 0x78]
mov qword [rax + 0x68], rcx
jmp 0x44ef92
mov qword [rsp + 0x48], rdx
add rax, rcx
mov qword [rsp], rax
mov qword [rsp + 8], rdx
call fcn.00429d40
mov rax, qword [rsp + 0x48]
jmp 0x44ef71
mov rax, qword [0x00811270]
lea rcx, [rax + rdx]
lea rcx, [rcx - 1]
neg rax
and rcx, rax
mov eax, ecx
mov qword [rsp + 0x50], rax
mov qword [rsp], rax
lea rcx, [0x00813818]
mov qword [rsp + 8], rcx
nop dword [rax]
call fcn.00419a20
mov rax, qword [rsp + 0x10]
test rax, rax
je 0x44f092
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x50]
add rax, rcx
mov qword [rsp + 0x88], rax
mov rbp, qword [rsp + 0x68]
add rsp, 0x70
ret
lea rax, [0x0065c641]
mov qword [rsp], rax
mov qword [rsp + 8], 0xd
call fcn.00439220
mov ecx, 0x23
call fcn.0046cdc0
mov rax, rbx
mov ecx, 2
nop dword [rax]
call fcn.0046cdc0
mov rax, rdx
mov ecx, 2
call fcn.0046cdc0
lea rax, [0x006614ce]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1a
call fcn.00439220
lea rax, [0x00661b11]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1b
nop
call fcn.00439220
lea rax, [0x00663e72]
mov qword [rsp], rax
mov qword [rsp + 8], 0x21
call fcn.00439220
nop
nop
call fcn.004686e0
jmp fcn.0044ed80