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

Disassembly:
lea r12, [rsp - 0xb0]
cmp r12, qword [r14 + 0x10]
jbe 0x49d497
sub rsp, 0x130
mov qword [rsp + 0x128], rbp
lea rbp, [rsp + 0x128]
mov qword [rsp + 0x138], rax
cmp r8, 0x20
jne 0x49ce08
cvtsd2ss xmm0, xmm0
movd edx, xmm0
lea r9, [0x00883c50]
jmp 0x49ce1f
cmp r8, 0x40
jne 0x49d483
nop
movq rdx, xmm0
lea r9, [0x00883c70]
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x140], rbx
mov r12, qword [r9 + 8]
mov r13, qword [r9]
lea r15, [r12 + r13]
cmp r15, 0x40
mov r10, r13
sbb r13, r13
mov qword [rsp + 0xa8], r13
mov r11, rcx
mov rcx, r15
mov r15, rdx
shr rdx, cl
mov qword [rsp + 0xa0], rdx
test rdx, r13
cmp r12, 0x40
sbb rdx, rdx
cmp r10, 0x40
sbb r13, r13
mov qword [rsp + 0x98], r13
mov rcx, r10
shr r15, cl
and r15, r13
mov rcx, r12
mov r13d, 1
shl r13, cl
and rdx, r13
dec rdx
and r15, rdx
mov rcx, r10
mov r12d, 1
shl r12, cl
mov r13, qword [rsp + 0x98]
and r12, r13
lea r13, [r12 - 1]
mov rcx, r12
mov r12, qword [rsp + 0x80]
and r13, r12
cmp r15, rdx
jne 0x49cfa3
test r13, r13
je 0x49cedd
mov ecx, 3
lea rdx, [0x006b8811]
jmp 0x49cf0e
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
test r8, rdx
je 0x49cf02
mov ecx, 4
lea rdx, [0x006b8908]
nop
jmp 0x49cf0e
mov ecx, 4
lea rdx, [0x006b8904]
lea r8, [rbx + rcx]
cmp r11, r8
jae 0x49cf54
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0xe8], rdx
mov rbx, r8
mov rdi, rcx
lea rsi, [0x00667c00]
mov rcx, r11
call fcn.0044a700
mov rdx, qword [rsp + 0xe8]
mov r11, rcx
mov r8, rbx
mov rcx, qword [rsp + 0x60]
mov rbx, qword [rsp + 0x140]
mov qword [rsp + 0x90], r11
mov qword [rsp + 0x88], r8
mov qword [rsp + 0xf8], rax
lea rsi, [rax + rbx]
mov rbx, rdx
mov rax, rsi
call fcn.00466460
mov rax, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x128]
add rsp, 0x130
ret
test r15, r15
jne 0x49cfc3
mov rdx, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xa0]
test r12, rdx
mov r15d, 1
jmp 0x49cfd9
or r13, rcx
mov rdx, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xa0]
test r12, rdx
setne dl
add r15, qword [r9 + 0x10]
cmp dil, 0x62
je 0x49d463
cmp dil, 0x78
je 0x49cff6
cmp dil, 0x58
jne 0x49d021
mov rcx, r11
mov r8d, edx
mov r10, r15
mov r11, r9
mov r9, r13
mov edx, edi
mov rdi, rsi
mov esi, edx
call fcn.0049e960
mov rbp, qword [rsp + 0x128]
add rsp, 0x130
ret
cmp byte [0x008833a5], 0
je 0x49d438
mov qword [rsp + 0x138], rax
mov byte [rsp + 0x5f], dl
mov qword [rsp + 0x90], r11
mov qword [rsp + 0x160], rsi
mov byte [rsp + 0x158], dil
movups xmmword [rsp + 0x100], xmm15
movups xmmword [rsp + 0x108], xmm15
movups xmmword [rsp + 0x118], xmm15
test rsi, rsi
jl 0x49d2b8
nop word [rax + rax]
nop
cmp dil, 0x66
je 0x49d275
cmp dil, 0x47
ja 0x49d0a8
cmp dil, 0x45
je 0x49d0ae
cmp dil, 0x47
jne 0x49d0a2
test rsi, rsi
nop
jmp 0x49d0c9
cmp r8, 0x20
jmp 0x49d0f1
cmp dil, 0x65
jne 0x49d0c0
lea r12, [rsi + 1]
cmp r8, 0x20
mov rcx, rsi
jmp 0x49d0fa
cmp dil, 0x67
jne 0x49d0ed
test rsi, rsi
mov rcx, r13
mov r13d, 1
mov r12, rsi
cmove r12, r13
cmp r8, 0x20
mov r13, rcx
mov rsi, r12
mov rcx, qword [rsp + 0x160]
jmp 0x49d0fa
cmp r8, 0x20
mov rcx, rsi
mov r12d, 1
mov qword [rsp + 0xf0], r9
mov qword [rsp + 0x70], r15
mov qword [rsp + 0x68], r13
mov qword [rsp + 0x88], rsi
movups xmmword [rsp + 0xb0], xmm15
movups xmmword [rsp + 0xb8], xmm15
jne 0x49d1cc
cmp r12, 9
jg 0x49d1cc
lea rdx, [rsp + 0xb0]
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], 0x18
mov qword [rsp + 0x110], 0x18
mov rdx, qword [r9]
mov rcx, r15
sub rcx, rdx
lea rax, [rsp + 0x100]
mov rbx, r13
mov rdi, r12
call fcn.0049f020
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x160]
movzx edx, byte [rsp + 0x5f]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x88]
movzx edi, byte [rsp + 0x158]
mov r9, qword [rsp + 0xf0]
mov r11, qword [rsp + 0x90]
mov r13, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
mov r12d, 1
jmp 0x49d280
cmp r12, 0x12
jg 0x49d26f
mov qword [rsp + 0x78], r12
lea rdx, [rsp + 0xb0]
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], 0x18
mov qword [rsp + 0x110], 0x18
mov rdx, qword [r9]
mov rcx, r15
sub rcx, rdx
lea rax, [rsp + 0x100]
mov rbx, r13
mov rdi, r12
call fcn.0049f2e0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x12
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x160]
movzx edx, byte [rsp + 0x5f]
mov rbx, qword [rsp + 0x140]
mov rsi, qword [rsp + 0x88]
movzx edi, byte [rsp + 0x158]
mov r9, qword [rsp + 0xf0]
mov r11, qword [rsp + 0x90]
mov r13, qword [rsp + 0x68]
mov r15, qword [rsp + 0x70]
setle r12b
jmp 0x49d280
mov rcx, rsi
xor r12d, r12d
nop dword [rax + rax]
test r12b, r12b
je 0x49d28d
test rcx, rcx
jmp 0x49d3eb
mov rcx, r11
mov r8d, edx
mov r10, r15
mov r11, r9
mov r9, r13
mov edx, edi
mov rdi, rsi
mov esi, edx
call fcn.0049d500
mov rbp, qword [rsp + 0x128]
add rsp, 0x130
ret
movups xmmword [rsp + 0xc8], xmm15
movups xmmword [rsp + 0xd8], xmm15
lea rdx, [rsp + 0xc8]
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], 0x20
mov qword [rsp + 0x110], 0x20
mov rdx, qword [r9]
sub r15, rdx
lea rax, [rsp + 0x100]
mov rbx, r13
mov rcx, r15
mov rdi, r9
call fcn.0049f860
movzx r9d, byte [rsp + 0x158]
cmp r9b, 0x47
ja 0x49d349
nop dword [rax]
cmp r9b, 0x45
je 0x49d34f
cmp r9b, 0x47
jne 0x49d339
mov rdx, qword [rsp + 0x160]
test rdx, rdx
jmp 0x49d3b3
mov rdx, qword [rsp + 0x160]
test rdx, rdx
jmp 0x49d3c8
cmp r9b, 0x65
jne 0x49d373
mov rdx, qword [rsp + 0x118]
dec rdx
test rdx, rdx
mov esi, 0
cmovg rsi, rdx
mov rdx, qword [rsp + 0x160]
test rdx, rdx
jmp 0x49d3cb
cmp r9b, 0x66
jne 0x49d3a2
mov rdx, qword [rsp + 0x118]
sub rdx, qword [rsp + 0x120]
test rdx, rdx
mov esi, 0
cmovg rsi, rdx
mov rdx, qword [rsp + 0x160]
test rdx, rdx
jmp 0x49d3cb
cmp r9b, 0x67
jne 0x49d3bd
mov rdx, qword [rsp + 0x160]
test rdx, rdx
mov rsi, qword [rsp + 0x118]
jmp 0x49d3cb
mov rdx, qword [rsp + 0x160]
test rdx, rdx
mov rsi, rdx
mov rax, qword [rsp + 0x138]
movzx edx, byte [rsp + 0x5f]
mov rbx, qword [rsp + 0x140]
mov edi, r9d
mov r11, qword [rsp + 0x90]
setl r10b
mov r12, qword [rsp + 0x100]
mov qword [rsp], r12
movups xmm0, xmmword [rsp + 0x108]
movups xmmword [rsp + 8], xmm0
movups xmm0, xmmword [rsp + 0x118]
movups xmmword [rsp + 0x18], xmm0
mov rcx, r11
mov r8, rsi
mov r9d, edi
mov edi, r10d
mov esi, edx
call fcn.0049d920
mov rbp, qword [rsp + 0x128]
add rsp, 0x130
ret
mov rcx, r11
mov r8d, edx
mov r10, r15
mov r11, r9
mov r9, r13
mov edx, edi
mov rdi, rsi
mov esi, edx
call fcn.0049d500
mov rbp, qword [rsp + 0x128]
add rsp, 0x130
ret
mov rcx, r11
mov edi, edx
mov rsi, r13
mov r8, r15
call fcn.0049e7e0
mov rbp, qword [rsp + 0x128]
add rsp, 0x130
ret
lea rax, [0x00667a40]
lea rbx, [0x0072e2f0]
call fcn.00436260
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
movsd qword [rsp + 0x20], xmm0
mov byte [rsp + 0x28], dil
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], r8
nop dword [rax + rax]
call fcn.00463440
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movsd xmm0, qword [rsp + 0x20]
movzx edi, byte [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
jmp fcn.0049cdc0