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

Disassembly:
lea r12, [rsp - 0x48]
cmp r12, qword [r14 + 0x10]
jbe 0x532079
sub rsp, 0xc8
mov qword [rsp + 0xc0], rbp
lea rbp, [rsp + 0xc0]
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xf8], r8
mov qword [rsp + 0x80], rsi
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x68], r8
mov byte [rsp + 0x37], 0
mov qword [rsp + 0xa8], 0
movups xmmword [rsp + 0xb0], xmm15
lea rbx, [rsp + 0xa8]
lea rcx, [rsp + 0x37]
call fcn.005319c0
test al, al
je 0x53203b
cmp byte [rsp + 0x37], 0
jne 0x531fed
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x53204d
mov esi, dword [rdx + 0x10]
cmp esi, 0x62de383d
ja 0x531dc5
nop dword [rax]
cmp esi, 0x43cfbb1f
ja 0x531c15
cmp esi, 0x2e74d42b
jne 0x531bd1
lea rsi, [0x0064f820]
nop word [rax + rax]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0x338a7ec0
jne 0x531bf1
lea rsi, [0x00652620]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0x43cfbb1f
jne 0x53204d
lea rsi, [0x0064e220]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0x49163278
jne 0x531c40
lea rsi, [0x00652660]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0x5051f1be
jne 0x531da0
lea rsi, [0x006a1b40]
cmp rdx, rsi
jne 0x53204d
mov rdx, qword [rsp + 0x80]
cmp rdx, rsi
jne 0x532065
nop
mov rdx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
nop dword [rax + rax]
cmp rdx, rdi
je 0x531fd8
mov rsi, qword [rdi + 0x18]
mov r8, qword [rdi + 8]
mov rcx, qword [rdx + 0x10]
mov rbx, qword [rdx + 8]
cmp rsi, rcx
jl 0x531ca6
mov rax, rcx
jmp 0x531d27
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x60], rbx
cmp rcx, 1
jne 0x531ced
lea rax, [0x00657160]
mov ebx, 1
mov rcx, rbx
call fcn.0044a840
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x78]
mov r8, rax
mov ecx, 1
mov esi, 1
mov rax, qword [rsp + 0x48]
jmp 0x531d27
lea rdx, [rcx + 4]
mov qword [rsp + 0x38], rdx
lea rax, [0x00657160]
mov rbx, rcx
mov rcx, rdx
call fcn.0044a840
mov rdx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x78]
mov r8, rax
mov rcx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x38]
mov rax, rcx
cmp rcx, rax
mov r9, rcx
cmovg rcx, rax
cmp r8, rbx
je 0x531d6a
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x58], r8
shl rcx, 3
mov rax, r8
call fcn.004662e0
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x78]
mov r8, qword [rsp + 0x58]
mov r9, qword [rsp + 0x50]
mov qword [rdi + 0x10], r9
mov qword [rdi + 0x18], rsi
cmp dword [0x008f2cf0], 0
jne 0x531d82
mov qword [rdi + 8], r8
nop
jmp 0x531d94
lea rcx, [rdi + 8]
mov rax, rdi
mov rdi, rcx
call fcn.00465620
mov rdi, rax
movzx ecx, byte [rdx]
mov byte [rdi], cl
jmp 0x531fd8
cmp esi, 0x62de383d
jne 0x53204d
lea rsi, [0x0064f7e0]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
nop
jmp 0x531e8d
cmp esi, 0xba585d67
ja 0x531e2f
cmp esi, 0x6e78e923
jne 0x531df1
lea rsi, [0x006525a0]
nop dword [rax]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0x889ce7f8
jne 0x531e0e
lea rsi, [0x006525e0]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0xba585d67
jne 0x53204d
lea rsi, [0x0064f760]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0xc3230e0b
jne 0x531e4e
lea rsi, [0x0064f7a0]
nop
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0xd6631a7c
jne 0x531e6e
lea rsi, [0x0064f860]
nop dword [rax]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
jmp 0x531e8d
cmp esi, 0xf3b50de0
jne 0x53204d
lea rsi, [0x006526a0]
cmp rdx, rsi
jne 0x53204d
test rdx, rdx
je 0x531f16
nop
cmp byte [0x0089e090], 0
je 0x531ece
mov qword [0x0089e098], rdx
cmp dword [0x008f2cf0], 0
jne 0x531ebb
mov rsi, qword [rsp + 0x78]
mov qword [0x0089e0a0], rsi
jmp 0x531ed3
lea rdi, [0x0089e0a0]
mov rsi, qword [rsp + 0x78]
call fcn.00465600
jmp 0x531ed3
mov rsi, qword [rsp + 0x78]
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xa0], rsi
mov rdx, qword [rsp + 0x98]
test rdx, rdx
je 0x531f0d
movzx edi, byte [rdx + 0x17]
mov r8d, edi
and edi, 0x1f
mov r9, rdi
bts rdi, 7
test r8b, 0x20
cmove r9, rdi
nop
jmp 0x531f1d
xor r9d, r9d
xor edx, edx
xor esi, esi
jmp 0x531f1d
xor r9d, r9d
xor edx, edx
xor esi, esi
mov rax, rdx
mov rbx, rsi
mov rcx, r9
call fcn.0048a360
mov rdx, qword [rsp + 0x80]
test rdx, rdx
je 0x531fc2
nop
cmp byte [0x0089e090], 0
je 0x531f77
mov qword [0x0089e098], rdx
cmp dword [0x008f2cf0], 0
jne 0x531f64
mov r9, qword [rsp + 0x68]
mov qword [0x0089e0a0], r9
jmp 0x531f7c
lea rdi, [0x0089e0a0]
mov r9, qword [rsp + 0x68]
call fcn.00465640
jmp 0x531f7c
mov r9, qword [rsp + 0x68]
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], r9
mov rdx, qword [rsp + 0x88]
test rdx, rdx
je 0x531fb8
movzx r10d, byte [rdx + 0x17]
mov r11d, r10d
and r10d, 0x1f
mov r12, r10
bts r10, 7
test r11b, 0x20
cmove r12, r10
nop
jmp 0x531fca
xor r12d, r12d
xor edx, edx
xor r9d, r9d
jmp 0x531fca
xor r12d, r12d
xor edx, edx
xor r9d, r9d
mov rdi, rdx
mov rsi, r9
mov r8, r12
call fcn.0048b880
mov eax, 1
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
lea rax, [rsp + 0xa8]
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
nop
call fcn.00530480
test al, al
je 0x532029
cmp qword [rsp + 0xb0], 0
jne 0x532029
mov eax, 1
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
xor eax, eax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
xor eax, eax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
lea rax, [0x006576e0]
lea rbx, [0x00718ef0]
nop dword [rax + rax]
call fcn.00436420
lea rax, [0x006576e0]
lea rbx, [0x00718ee0]
call fcn.00436420
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov byte [rsp + 0x20], dil
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
call fcn.004632e0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movzx edi, byte [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
jmp fcn.00531ae0