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

Disassembly:
lea r12, [rsp - 0x10]
cmp r12, qword [r14 + 0x10]
jbe 0x530b06
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 0x530ab5
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rcx
mov edx, dword [rbx + 0x10]
cmp edx, 0x62de383d
ja 0x5305e5
nop dword [rax + rax]
cmp edx, 0x43cfbb1f
ja 0x530562
cmp edx, 0x2e74d42b
jne 0x53050e
lea rdx, [0x0064f820]
nop word [rax + rax]
cmp rbx, rdx
je 0x530689
jmp 0x530ab5
cmp edx, 0x338a7ec0
jne 0x53052e
lea rdx, [0x00652620]
nop dword [rax]
cmp rbx, rdx
je 0x53089c
jmp 0x530ab5
cmp edx, 0x43cfbb1f
jne 0x530ab5
lea rdx, [0x0064e220]
cmp rbx, rdx
jne 0x530ab5
mov rbx, rcx
call fcn.00530d60
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
cmp edx, 0x49163278
jne 0x530580
lea rdx, [0x00652660]
cmp rbx, rdx
je 0x53089c
jmp 0x530ab5
cmp edx, 0x5051f1be
jne 0x5305c0
lea rdx, [0x006a1b40]
cmp rbx, rdx
jne 0x530ab5
mov rbx, rcx
nop dword [rax + rax]
call fcn.00530b40
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
cmp edx, 0x62de383d
jne 0x530ab5
lea rdx, [0x0064f7e0]
cmp rbx, rdx
je 0x530689
nop dword [rax]
jmp 0x530ab5
cmp edx, 0xba585d67
ja 0x53064b
cmp edx, 0x6e78e923
jne 0x53060e
lea rdx, [0x006525a0]
nop dword [rax]
cmp rbx, rdx
je 0x53089c
jmp 0x530ab5
cmp edx, 0x889ce7f8
jne 0x53062e
lea rdx, [0x006525e0]
nop dword [rax]
cmp rbx, rdx
je 0x53089c
jmp 0x530ab5
cmp edx, 0xba585d67
jne 0x530ab5
lea rdx, [0x0064f760]
cmp rbx, rdx
je 0x530689
jmp 0x530ab5
cmp edx, 0xc3230e0b
jne 0x530665
lea rdx, [0x0064f7a0]
cmp rbx, rdx
je 0x530689
nop
jmp 0x530ab5
cmp edx, 0xd6631a7c
jne 0x530880
lea rdx, [0x0064f860]
nop dword [rax + rax]
cmp rbx, rdx
jne 0x530ab5
mov qword [rsp + 0x28], 0
lea rbx, [rsp + 0x28]
call fcn.00530e80
nop dword [rax]
test al, al
je 0x530864
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x53073f
nop
cmp byte [0x0089e090], 0
nop
je 0x5306f5
mov qword [0x0089e098], rdx
cmp dword [0x008f2cf0], 0
jne 0x5306e2
mov rsi, qword [rsp + 0x38]
mov qword [0x0089e0a0], rsi
nop
jmp 0x5306fa
lea rdi, [0x0089e0a0]
mov rsi, qword [rsp + 0x38]
call fcn.00465600
jmp 0x5306fa
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x80], rsi
mov rdi, qword [rsp + 0x78]
test rdi, rdi
je 0x530733
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 0x530746
mov rax, rsi
xor r10d, r10d
xor edi, edi
xor esi, esi
jmp 0x530746
xor r10d, r10d
xor edi, edi
xor esi, esi
mov rax, rdi
mov rbx, rsi
mov rcx, r10
call fcn.0048a360
mov rdx, qword [rsp + 0x28]
nop
and ecx, 0x1f
lea rsi, [rcx - 2]
cmp rsi, 4
ja 0x530ac8
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 0x530864
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x53082d
nop
cmp byte [0x0089e090], 0
je 0x5307ee
mov qword [0x0089e098], rdx
cmp dword [0x008f2cf0], 0
jne 0x5307db
mov rsi, qword [rsp + 0x38]
mov qword [0x0089e0a0], rsi
jmp 0x5307f3
lea rdi, [0x0089e0a0]
mov rsi, qword [rsp + 0x38]
call fcn.00465600
jmp 0x5307f3
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rsi
mov rdx, qword [rsp + 0x68]
test rdx, rdx
je 0x530824
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 0x530834
xor r9d, r9d
xor edx, edx
xor esi, esi
jmp 0x530834
xor r9d, r9d
xor edx, edx
xor esi, esi
mov rax, rdx
mov rbx, rsi
mov rcx, r9
nop dword [rax]
call fcn.0048a360
mov rdi, qword [rsp + 0x28]
call fcn.0048bb40
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 0x530ab5
lea rdx, [0x006526a0]
cmp rbx, rdx
jne 0x530ab5
mov qword [rsp + 0x20], 0
lea rbx, [rsp + 0x20]
call fcn.00530fa0
test al, al
je 0x530a68
mov rdx, qword [rsp + 0x40]
nop dword [rax]
test rdx, rdx
je 0x530953
nop
cmp byte [0x0089e090], 0
je 0x530907
mov qword [0x0089e098], rdx
cmp dword [0x008f2cf0], 0
jne 0x5308f1
mov rsi, qword [rsp + 0x38]
mov qword [0x0089e0a0], rsi
jmp 0x53090c
lea rdi, [0x0089e0a0]
mov rsi, qword [rsp + 0x38]
nop dword [rax]
call fcn.00465600
jmp 0x53090c
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 0x530947
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 0x53095a
mov rax, rsi
xor r10d, r10d
xor edi, edi
xor esi, esi
jmp 0x53095a
xor r10d, r10d
xor edi, edi
xor esi, esi
mov rax, rdi
mov rbx, rsi
mov rcx, r10
call fcn.0048a360
mov rdx, qword [rsp + 0x20]
nop
and ecx, 0x1f
lea rsi, [rcx - 7]
cmp rsi, 5
ja 0x530a7a
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 0x530a68
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x530a34
nop
cmp byte [0x0089e090], 0
je 0x5309f5
mov qword [0x0089e098], rdx
cmp dword [0x008f2cf0], 0
jne 0x5309e2
mov rsi, qword [rsp + 0x38]
mov qword [0x0089e0a0], rsi
nop
jmp 0x5309fa
lea rdi, [0x0089e0a0]
mov rsi, qword [rsp + 0x38]
call fcn.00465600
jmp 0x5309fa
mov rsi, qword [rsp + 0x38]
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x50], rsi
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x530a2b
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 0x530a3b
xor r9d, r9d
xor edx, edx
xor esi, esi
jmp 0x530a3b
xor r9d, r9d
xor edx, edx
xor esi, esi
mov rax, rdx
mov rbx, rsi
mov rcx, r9
call fcn.0048a360
mov rdi, qword [rsp + 0x20]
call fcn.0048bc60
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, [0x00676300]
call fcn.0040d960
mov qword [rax + 8], 0x1a
lea rcx, [0x006ac765]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x10], rcx
mov rbx, rax
lea rax, [0x00661520]
call fcn.00436420
lea rax, [0x006576e0]
lea rbx, [0x00718ed0]
call fcn.00436420
mov qword [rsp + 0x30], rcx
lea rax, [0x00676300]
call fcn.0040d960
mov qword [rax + 8], 0x19
lea rcx, [0x006abf5c]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x30]
mov qword [rax + 0x10], rcx
mov rbx, rax
lea rax, [0x00661520]
nop
call fcn.00436420
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.004632e0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00530480