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

Disassembly:
lea r12, [rsp - 0x170]
cmp r12, qword [r14 + 0x10]
jbe 0x5fca6f
sub rsp, 0x1f0
mov qword [rsp + 0x1e8], rbp
lea rbp, [rsp + 0x1e8]
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x220], r8
mov qword [rsp + 0xe0], rax
test rbx, rbx
je 0x5fca1a
cmp qword [rax + 0x10], 0
je 0x5fc9c2
cmp qword [rax + 0xc8], 0
je 0x5fbf9c
nop
mov rcx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
test rcx, rcx
je 0x5fbf5b
mov rcx, qword [rcx + 0x18]
call rcx
lea rax, [0x0067fd60]
call fcn.0040da20
mov qword [rax + 8], 0x38
lea rcx, [0x006cb170]
mov qword [rax], rcx
lea rbx, [0x006e9598]
lea rcx, [0x0072e7e0]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
mov qword [rsp + 0x208], rcx
mov qword [rsp + 0x1f8], rax
mov qword [rsp + 0x110], r8
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], rsi
cmp qword [rax + 0x38], 0
jne 0x5fc0a5
nop
cmp rax, rax
jne 0x5fc054
lea rax, [0x006b0080]
nop
call fcn.0040da20
mov qword [rsp + 0xe0], rax
cmp dword [0x00918a90], 0
jne 0x5fc035
mov rsi, qword [rsp + 0x1f8]
mov rcx, qword [rsi]
mov qword [rax], rcx
lea rdi, [rax + 8]
lea rax, [rsi + 8]
mov rcx, rsi
mov rsi, rax
nop word [rax + rax]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046606e
mov rbp, qword [rbp]
jmp 0x5fc054
mov rbx, rax
mov rcx, qword [rsp + 0x1f8]
lea rax, [0x006b0080]
call fcn.00413ee0
mov rcx, qword [rsp + 0x1f8]
call fcn.0040e560
mov rdi, qword [rsp + 0xe0]
test byte [rdi], al
cmp dword [0x00918a90], 0
jne 0x5fc072
mov qword [rdi + 0x38], rax
jmp 0x5fc07b
add rdi, 0x38
call fcn.00465600
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
mov rdx, qword [rsp + 0xe0]
mov r9, qword [rdx + 0x10]
mov r9, qword [r9 + 0x20]
test r9, r9
jne 0x5fc0be
xor edx, edx
jmp 0x5fc113
mov qword [rsp + 0xd0], r9
mov rax, qword [rdx + 0x38]
lea rbx, [0x006bad72]
mov ecx, 0xd
call fcn.005d6fc0
test rbx, rbx
sete dl
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
mov r9, qword [rsp + 0xd0]
test dl, dl
je 0x5fc386
nop dword [rax + rax]
test r9, r9
je 0x5fc12e
mov rdx, qword [r9]
mov r10, qword [r9 + 8]
jmp 0x5fc139
mov r10d, 0
mov edx, 0
je 0x5fc145
mov r11, qword [r9 + 0x10]
mov r9, qword [r9 + 0x18]
jmp 0x5fc14b
xor r9d, r9d
xor r11d, r11d
mov qword [rsp + 0xb8], rdx
mov qword [rsp + 0x40], r10
mov qword [rsp + 0xb0], r11
mov qword [rsp + 0x38], r9
nop
cmp qword [rsp + 0xe0], rax
jne 0x5fc1dd
lea rax, [0x006b0080]
call fcn.0040da20
mov qword [rsp + 0xe0], rax
cmp dword [0x00918a90], 0
jne 0x5fc1be
mov rsi, qword [rsp + 0x1f8]
mov rcx, qword [rsi]
mov qword [rax], rcx
lea rcx, [rsi + 8]
lea rdi, [rax + 8]
mov rax, rsi
mov rsi, rcx
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046606e
mov rbp, qword [rbp]
jmp 0x5fc1dd
mov rbx, rax
mov rcx, qword [rsp + 0x1f8]
lea rax, [0x006b0080]
call fcn.00413ee0
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rax + 0x38]
mov rax, rcx
call fcn.005ff800
mov rdi, qword [rsp + 0xe0]
test byte [rdi], al
cmp dword [0x00918a90], 0
jne 0x5fc202
mov qword [rdi + 0x38], rax
jmp 0x5fc20b
add rdi, 0x38
call fcn.00465600
lea rax, [rsp + 0x90]
mov rbx, qword [rsp + 0xb8]
mov rcx, qword [rsp + 0x40]
lea rdi, [0x0072bd48]
mov esi, 1
mov r8, qword [rsp + 0xb0]
mov r9, qword [rsp + 0x38]
call fcn.0044e5e0
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0x70]
call fcn.0044eae0
mov rdx, qword [0x008c3390]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, rdx
call fcn.0053c840
mov rdx, qword [rsp + 0xe0]
mov rdx, qword [rdx + 0x38]
mov qword [rsp + 0xe8], rdx
mov ecx, 6
mov rdi, rax
mov rsi, rbx
xor eax, eax
lea rbx, [0x006b8dcf]
call fcn.0044e540
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x48], rbx
nop
lea rax, [0x006bad72]
mov ebx, 0xd
call fcn.005d8580
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x58], rbx
lea rax, [0x00669140]
call fcn.0040da20
mov qword [rsp + 0x100], rax
mov rdx, qword [rsp + 0x48]
mov qword [rax + 8], rdx
cmp dword [0x00918a90], 0
jne 0x5fc2f2
mov rdx, qword [rsp + 0xc8]
mov qword [rax], rdx
jmp 0x5fc305
mov rdi, rax
mov rdx, qword [rsp + 0xc8]
nop dword [rax]
call fcn.00465720
lea rax, [0x00697e00]
mov rbx, qword [rsp + 0xe8]
mov rcx, qword [rsp + 0x108]
mov rdi, qword [rsp + 0x58]
call fcn.00413280
mov qword [rax + 8], 1
mov qword [rax + 0x10], 1
cmp dword [0x00918a90], 0
jne 0x5fc34c
mov rdx, qword [rsp + 0x100]
mov qword [rax], rdx
jmp 0x5fc35c
mov rdi, rax
mov rdx, qword [rsp + 0x100]
call fcn.00465720
mov rax, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
mov qword [rsp + 0x160], rdi
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x170], r8
mov rdx, qword [rsp + 0x160]
bt rdx, 0x3f
jae 0x5fc3c6
mov r9, rdx
shl rdx, 1
shr rdx, 0x1f
movabs r10, 0xdd7b17f80
add rdx, r10
jmp 0x5fc3d6
mov r9, rdx
movabs r10, 0xdd7b17f80
mov rdx, rsi
test rdx, rdx
jne 0x5fc3eb
and r9d, 0x3fffffff
test r9d, r9d
je 0x5fc498
nop
cmp qword [rsp + 0xe0], rax
jne 0x5fc498
lea rax, [0x006b0080]
call fcn.0040da20
mov qword [rsp + 0xe0], rax
cmp dword [0x00918a90], 0
jne 0x5fc455
mov rsi, qword [rsp + 0x1f8]
mov rdx, qword [rsi]
mov qword [rax], rdx
add rsi, 8
lea rdi, [rax + 8]
nop word [rax + rax]
nop word [rax + rax]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046606e
mov rbp, qword [rbp]
jmp 0x5fc46c
mov rbx, rax
mov rcx, qword [rsp + 0x1f8]
lea rax, [0x006b0080]
call fcn.00413ee0
mov rcx, qword [rsp + 0x208]
mov rbx, qword [rsp + 0x200]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x110]
movabs r10, 0xdd7b17f80
mov rax, qword [rsp + 0xe0]
call fcn.005fccc0
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xf8], rbx
mov rdx, qword [rsp + 0xe0]
mov r9, qword [rsp + 0x200]
mov r10, qword [r9 + 0x18]
mov rax, qword [rsp + 0x208]
mov rbx, rdx
call r10
mov qword [rsp + 0xf0], rax
nop
test rbx, rbx
jne 0x5fc88e
test rax, rax
je 0x5fc816
cmp qword [rax + 0x40], 0
je 0x5fc505
mov rdi, rax
nop dword [rax]
jmp 0x5fc6de
cmp qword [rax + 0x50], 0
jle 0x5fc5de
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rcx]
cmp qword [rcx + 8], 4
je 0x5fc52f
mov rcx, qword [rsp + 0x200]
test rcx, rcx
jmp 0x5fc546
cmp dword [rdx], 0x44414548
je 0x5fc5de
mov rcx, qword [rsp + 0x200]
test rcx, rcx
movups xmmword [rsp + 0x178], xmm15
movups xmmword [rsp + 0x188], xmm15
je 0x5fc562
mov rbx, qword [rcx + 8]
nop
jmp 0x5fc565
mov rbx, rcx
mov qword [rsp + 0x178], rbx
mov rcx, qword [rsp + 0x208]
mov qword [rsp + 0x180], rcx
mov rax, qword [rax + 0x50]
call fcn.0040b000
lea rcx, [0x00667340]
mov qword [rsp + 0x188], rcx
mov qword [rsp + 0x190], rax
lea rax, [0x006cd830]
mov ebx, 0x61
lea rcx, [rsp + 0x178]
mov edi, 2
mov rsi, rdi
call fcn.004f0a80
mov rcx, rax
mov rdi, rbx
xor eax, eax
mov rbx, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
lea rax, [0x00691800]
call fcn.0040da20
mov qword [rsp + 0xc0], rax
mov qword [rax], 0
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xffffffffffffffff
lea rbx, [0x0072ec40]
mov rcx, rax
lea rax, [0x0067c0c0]
call fcn.0040b320
nop
test rax, rax
je 0x5fc66e
movups xmmword [rsp + 0x128], xmm15
lea rcx, [0x0072ec40]
mov qword [rsp + 0x128], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x130], rcx
lea rax, [0x0068fac0]
lea rbx, [rsp + 0x128]
nop dword [rax]
call fcn.0040ae00
lea rcx, [0x00730228]
jmp 0x5fc6b1
movups xmmword [rsp + 0x118], xmm15
lea rcx, [0x0072ec40]
mov qword [rsp + 0x118], rcx
mov rcx, qword [rsp + 0xc0]
mov qword [rsp + 0x120], rcx
lea rax, [0x0068c000]
lea rbx, [rsp + 0x118]
call fcn.0040ae00
lea rcx, [0x00730200]
mov rdi, qword [rsp + 0xf0]
mov qword [rdi + 0x40], rcx
cmp dword [0x00918a90], 0
jne 0x5fc6cc
mov qword [rdi + 0x48], rax
jmp 0x5fc6de
lea rdx, [rdi + 0x48]
mov rcx, rdi
mov rdi, rdx
call fcn.00465600
mov rdi, rcx
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0x148], rdx
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x150], rdx
mov rsi, qword [rsp + 0x110]
mov qword [rsp + 0x158], rsi
mov rsi, qword [rsp + 0x148]
bt rsi, 0x3f
jae 0x5fc730
mov rdx, rsi
shl rsi, 1
shr rsi, 0x1f
movabs r8, 0xdd7b17f80
add rsi, r8
jmp 0x5fc738
mov rdx, rsi
mov rsi, qword [rsp + 0x60]
test rsi, rsi
jne 0x5fc74b
and edx, 0x3fffffff
test edx, edx
je 0x5fc7fd
lea rax, [0x00690180]
call fcn.0040da20
cmp dword [0x00918a90], 0
nop
jne 0x5fc76f
mov rdx, qword [rsp + 0xd8]
mov qword [rax], rdx
jmp 0x5fc77f
mov rdi, rax
mov rdx, qword [rsp + 0xd8]
call fcn.00465720
mov rdi, qword [rsp + 0xf0]
mov rdx, qword [rdi + 0x48]
mov rsi, qword [rdi + 0x40]
mov qword [rax + 8], rsi
cmp dword [0x00918a90], 0
jne 0x5fc7ae
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0xf8]
mov qword [rax + 0x18], rdx
jmp 0x5fc7d1
lea rsi, [rax + 0x10]
mov rcx, rdi
mov rdi, rsi
call fcn.00465720
lea rdi, [rax + 0x18]
mov rdx, qword [rsp + 0xf8]
call fcn.00465720
mov rdi, rcx
lea rdx, [0x0072fc60]
mov qword [rdi + 0x40], rdx
cmp dword [0x00918a90], 0
jne 0x5fc7eb
mov qword [rdi + 0x48], rax
jmp 0x5fc7fd
lea rdx, [rdi + 0x48]
mov rcx, rdi
mov rdi, rdx
call fcn.00465600
mov rdi, rcx
mov rax, rdi
xor ebx, ebx
xor ecx, ecx
xor edi, edi
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
movups xmmword [rsp + 0x138], xmm15
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x5fc832
mov rbx, qword [rdx + 8]
jmp 0x5fc835
mov rbx, rdx
mov qword [rsp + 0x138], rbx
mov rdx, qword [rsp + 0x208]
mov qword [rsp + 0x140], rdx
lea rax, [0x006cd165]
mov ebx, 0x50
lea rcx, [rsp + 0x138]
mov edi, 1
mov rsi, rdi
call fcn.004f0a80
mov rcx, rax
mov rdi, rbx
xor eax, eax
mov rbx, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
mov qword [rsp + 0x108], rcx
mov qword [rsp + 0x50], rbx
mov rdx, qword [rsp + 0xd8]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xf0]
test rax, rax
je 0x5fc8cd
lea rax, [0x006cb5a9]
mov ebx, 0x3b
xor ecx, ecx
xor edi, edi
mov rsi, rdi
call fcn.005cbb40
mov rdx, qword [rsp + 0x50]
lea rsi, [0x0072ee60]
cmp rdx, rsi
jne 0x5fc90b
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsi]
mov qword [rsp + 0x1c0], r8
movups xmm0, xmmword [rsi + 8]
movups xmmword [rsp + 0x1c8], xmm0
movups xmm0, xmmword [rsi + 0x18]
movups xmmword [rsp + 0x1d8], xmm0
jmp 0x5fc92e
movups xmmword [rsp + 0x1c0], xmm15
movups xmmword [rsp + 0x1c8], xmm15
movups xmmword [rsp + 0x1d8], xmm15
mov rsi, qword [rsp + 0x108]
mov r8, qword [rsp + 0x1c0]
mov qword [rsp + 0x198], r8
movups xmm0, xmmword [rsp + 0x1c8]
movups xmmword [rsp + 0x1a0], xmm0
movups xmm0, xmmword [rsp + 0x1d8]
movups xmmword [rsp + 0x1b0], xmm0
nop
jne 0x5fc9a2
cmp dword [rsp + 0x1a8], 0x50545448
jne 0x5fc9a2
cmp byte [rsp + 0x1ac], 0x2f
jne 0x5fc9a2
nop
lea rax, [0x0067fd60]
call fcn.0040da20
mov qword [rax + 8], 0x2f
lea rcx, [0x006c90d5]
mov qword [rax], rcx
lea rdx, [0x0072e7e0]
mov rsi, rax
xor eax, eax
mov rbx, qword [rsp + 0xf8]
mov rcx, rdx
mov rdi, rsi
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
nop
mov rcx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
test rcx, rcx
je 0x5fc9d6
mov rcx, qword [rcx + 0x18]
call rcx
lea rax, [0x0067fd60]
nop dword [rax]
call fcn.0040da20
mov qword [rax + 8], 0x15
lea rcx, [0x006be21b]
mov qword [rax], rcx
lea rbx, [0x006e9598]
lea rcx, [0x0072e7e0]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
nop
mov rcx, qword [rax + 0x40]
mov rax, qword [rax + 0x48]
test rcx, rcx
je 0x5fca2e
mov rcx, qword [rcx + 0x18]
call rcx
lea rax, [0x0067fd60]
call fcn.0040da20
mov qword [rax + 8], 0x2d
lea rcx, [0x006c84a5]
mov qword [rax], rcx
lea rbx, [0x006e9598]
lea rcx, [0x0072e7e0]
mov rdi, rax
xor eax, eax
mov rbp, qword [rsp + 0x1e8]
add rsp, 0x1f0
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
call fcn.00463440
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp fcn.005fbee0