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

Disassembly:
lea r12, [rsp - 0x10]
cmp r12, qword [r14 + 0x10]
jbe 0x52b6e6
sub rsp, 0x90
mov qword [rsp + 0x88], rbp
lea rbp, [rsp + 0x88]
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa8], rcx
test rbx, rbx
je 0x52b695
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rcx
mov edx, dword [rbx + 0x10]
cmp edx, 0x62de383d
ja 0x52b1c5
nop dword [rax + rax]
cmp edx, 0x43cfbb1f
ja 0x52b142
cmp edx, 0x2e74d42b
jne 0x52b0ee
lea rdx, [0x0065fb20]
nop word [rax + rax]
cmp rbx, rdx
je 0x52b269
jmp 0x52b695
cmp edx, 0x338a7ec0
jne 0x52b10e
lea rdx, [0x00662860]
nop dword [rax]
cmp rbx, rdx
je 0x52b47c
jmp 0x52b695
cmp edx, 0x43cfbb1f
jne 0x52b695
lea rdx, [0x0065e160]
cmp rbx, rdx
jne 0x52b695
mov rbx, rcx
call fcn.0052b940
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
cmp edx, 0x49163278
jne 0x52b160
lea rdx, [0x006628a0]
cmp rbx, rdx
je 0x52b47c
jmp 0x52b695
cmp edx, 0x5051f1be
jne 0x52b1a0
lea rdx, [0x006b5f80]
cmp rbx, rdx
jne 0x52b695
mov rbx, rcx
nop dword [rax + rax]
call fcn.0052b720
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
cmp edx, 0x62de383d
jne 0x52b695
lea rdx, [0x0065fae0]
cmp rbx, rdx
je 0x52b269
nop dword [rax]
jmp 0x52b695
cmp edx, 0xba585d67
ja 0x52b22b
cmp edx, 0x6e78e923
jne 0x52b1ee
lea rdx, [0x006627e0]
nop dword [rax]
cmp rbx, rdx
je 0x52b47c
jmp 0x52b695
cmp edx, 0x889ce7f8
jne 0x52b20e
lea rdx, [0x00662820]
nop dword [rax]
cmp rbx, rdx
je 0x52b47c
jmp 0x52b695
cmp edx, 0xba585d67
jne 0x52b695
lea rdx, [0x0065fa60]
cmp rbx, rdx
je 0x52b269
jmp 0x52b695
cmp edx, 0xc3230e0b
jne 0x52b245
lea rdx, [0x0065faa0]
cmp rbx, rdx
je 0x52b269
nop
jmp 0x52b695
cmp edx, 0xd6631a7c
jne 0x52b460
lea rdx, [0x0065fb60]
nop dword [rax + rax]
cmp rbx, rdx
jne 0x52b695
mov qword [rsp + 0x28], 0
lea rbx, [rsp + 0x28]
call fcn.0052ba60
nop dword [rax]
test al, al
je 0x52b444
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x52b31f
nop
cmp byte [0x008c3db0], 0
nop
je 0x52b2d5
mov qword [0x008c3db8], rdx
cmp dword [0x00918a90], 0
jne 0x52b2c2
mov rsi, qword [rsp + 0x38]
mov qword [0x008c3dc0], rsi
nop
jmp 0x52b2da
lea rdi, [0x008c3dc0]
mov rsi, qword [rsp + 0x38]
call fcn.00465760
jmp 0x52b2da
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], rsi
mov rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x52b313
movzx r8d, byte [rdi + 0x17]
mov r9d, r8d
and r8d, 0x1f
mov r10, r8
bts r8, 7
test r9b, 0x20
cmove r10, r8
nop
mov rax, rsi
jmp 0x52b326
mov rax, rsi
xor r10d, r10d
xor edi, edi
xor esi, esi
jmp 0x52b326
xor r10d, r10d
xor edi, edi
xor esi, esi
mov rax, rdi
mov rbx, rsi
mov rcx, r10
call fcn.004b2520
mov rdx, qword [rsp + 0x28]
nop
and ecx, 0x1f
lea rsi, [rcx - 2]
cmp rsi, 4
ja 0x52b6a8
mov rcx, qword [rax]
shl rcx, 3
lea rsi, [rcx - 0x40]
neg rsi
cmp rsi, 0x40
sbb r8, r8
sbb r9, r9
neg rcx
mov r10, rdx
shl rdx, cl
and rdx, r8
not r9
or rsi, r9
mov rcx, rsi
sar rdx, cl
nop dword [rax + rax]
cmp r10, rdx
jne 0x52b444
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x52b40d
nop
cmp byte [0x008c3db0], 0
je 0x52b3ce
mov qword [0x008c3db8], rdx
cmp dword [0x00918a90], 0
jne 0x52b3bb
mov rsi, qword [rsp + 0x38]
mov qword [0x008c3dc0], rsi
jmp 0x52b3d3
lea rdi, [0x008c3dc0]
mov rsi, qword [rsp + 0x38]
call fcn.00465760
jmp 0x52b3d3
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rsi
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x52b404
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 0x52b414
xor r9d, r9d
xor edx, edx
xor esi, esi
jmp 0x52b414
xor r9d, r9d
xor edx, edx
xor esi, esi
mov rax, rdx
mov rbx, rsi
mov rcx, r9
nop dword [rax]
call fcn.004b2520
mov rdi, qword [rsp + 0x28]
call fcn.004b4040
mov eax, 1
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
xor eax, eax
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
cmp edx, 0xf3b50de0
jne 0x52b695
lea rdx, [0x006628e0]
cmp rbx, rdx
jne 0x52b695
mov qword [rsp + 0x20], 0
lea rbx, [rsp + 0x20]
call fcn.0052bb80
test al, al
je 0x52b648
mov rdx, qword [rsp + 0x40]
nop dword [rax]
test rdx, rdx
je 0x52b533
nop
cmp byte [0x008c3db0], 0
je 0x52b4e7
mov qword [0x008c3db8], rdx
cmp dword [0x00918a90], 0
jne 0x52b4d1
mov rsi, qword [rsp + 0x38]
mov qword [0x008c3dc0], rsi
jmp 0x52b4ec
lea rdi, [0x008c3dc0]
mov rsi, qword [rsp + 0x38]
nop dword [rax]
call fcn.00465760
jmp 0x52b4ec
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x58], rdx
mov qword [rsp + 0x60], rsi
mov rdi, qword [rsp + 0x58]
nop dword [rax + rax]
test rdi, rdi
je 0x52b527
movzx r8d, byte [rdi + 0x17]
mov r9d, r8d
and r8d, 0x1f
mov r10, r8
bts r8, 7
test r9b, 0x20
cmove r10, r8
nop
mov rax, rsi
jmp 0x52b53a
mov rax, rsi
xor r10d, r10d
xor edi, edi
xor esi, esi
jmp 0x52b53a
xor r10d, r10d
xor edi, edi
xor esi, esi
mov rax, rdi
mov rbx, rsi
mov rcx, r10
call fcn.004b2520
mov rdx, qword [rsp + 0x20]
nop
and ecx, 0x1f
lea rsi, [rcx - 7]
cmp rsi, 5
ja 0x52b65a
mov rcx, qword [rax]
shl rcx, 3
lea rsi, [rcx - 0x40]
neg rsi
cmp rsi, 0x40
sbb rsi, rsi
neg rcx
mov r8, rdx
shl rdx, cl
and rdx, rsi
shr rdx, cl
and rdx, rsi
cmp r8, rdx
jne 0x52b648
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x52b614
nop
cmp byte [0x008c3db0], 0
je 0x52b5d5
mov qword [0x008c3db8], rdx
cmp dword [0x00918a90], 0
jne 0x52b5c2
mov rsi, qword [rsp + 0x38]
mov qword [0x008c3dc0], rsi
nop
jmp 0x52b5da
lea rdi, [0x008c3dc0]
mov rsi, qword [rsp + 0x38]
call fcn.00465760
jmp 0x52b5da
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rsi
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x52b60b
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 0x52b61b
xor r9d, r9d
xor edx, edx
xor esi, esi
jmp 0x52b61b
xor r9d, r9d
xor edx, edx
xor esi, esi
mov rax, rdx
mov rbx, rsi
mov rcx, r9
call fcn.004b2520
mov rdi, qword [rsp + 0x20]
call fcn.004b4160
mov eax, 1
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
xor eax, eax
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov qword [rsp + 0x30], rcx
lea rax, [0x00688ce0]
call fcn.0040da20
mov qword [rax + 8], 0x1a
lea rcx, [0x006c0bba]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x10], rcx
mov rbx, rax
lea rax, [0x006724e0]
call fcn.00436260
lea rax, [0x00667a40]
lea rbx, [0x0072e500]
call fcn.00436260
mov qword [rsp + 0x30], rcx
lea rax, [0x00688ce0]
call fcn.0040da20
mov qword [rax + 8], 0x19
lea rcx, [0x006c0316]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x10], rcx
mov rbx, rax
lea rax, [0x006724e0]
nop
call fcn.00436260
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00463440
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0052b060