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

Disassembly:
lea r12, [rsp - 0xa50]
cmp r12, qword [r14 + 0x10]
jbe 0x53a60d
sub rsp, 0xad0
mov qword [rsp + 0xac8], rbp
lea rbp, [rsp + 0xac8]
mov qword [rsp + 0xae8], rcx
mov qword [rsp + 0xab8], rax
mov qword [rsp + 0xab0], rdi
mov qword [rsp + 0xaa8], rbx
mov qword [rsp + 0xac0], 0
mov qword [rsp + 0xac0], rcx
xor edx, edx
nop
jmp 0x53a007
mov rax, qword [rsp + 0xab8]
mov rcx, qword [rsp + 0xae8]
mov rbx, qword [rsp + 0xaa8]
mov rdi, qword [rsp + 0xab0]
mov edx, 1
cmp rdx, 1
jge 0x53a09a
mov rax, qword [rsp + 0xac0]
mov qword [rsp + 0xa98], rax
movups xmmword [rsp + 0x140], xmm15
movups xmmword [rsp + 0x148], xmm15
movups xmmword [rsp + 0x158], xmm15
test byte [rax], al
lea rbx, [rsp + 0x140]
mov ecx, 0x28
call fcn.00402d80
test al, al
je 0x539fe2
movups xmmword [rsp + 0x118], xmm15
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x130], xmm15
mov rax, qword [rsp + 0xa98]
add rax, 0x28
lea rbx, [rsp + 0x118]
mov ecx, 0x28
call fcn.00402d80
test al, al
je 0x539fe2
jmp 0x53a5f9
call fcn.00539f20
mov qword [rsp + 0xaa0], rax
lea rdi, [rsp + 0x598]
mov ecx, 0xa0
xor eax, eax
rep stosq qword [rdi], rax
lea rax, [rsp + 0x598]
mov rbx, qword [rsp + 0xae8]
call fcn.0053a640
mov rax, qword [rsp + 0xaa8]
mov ebx, 5
nop dword [rax + rax]
call fcn.005380a0
lea rdi, [rsp + 0x498]
mov rsi, rsp
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465ee0
mov rbp, qword [rbp]
mov rax, qword [rsp + 0xab0]
mov ebx, 8
call fcn.005380a0
lea rdi, [rsp + 0x398]
mov rsi, rsp
nop word [rax + rax]
nop dword [rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465ee0
mov rbp, qword [rbp]
mov eax, 0xff
jmp 0x53a160
dec rax
nop dword [rax]
test rax, rax
jl 0x53a17d
movzx ecx, byte [rsp + rax + 0x498]
test cl, cl
jne 0x53a17d
movzx ecx, byte [rsp + rax + 0x398]
test cl, cl
je 0x53a15a
lea rdi, [rsp + 0x2f8]
lea rdi, [rdi - 0x20]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465bf4
mov rbp, qword [rbp]
movups xmmword [rsp + 0x1e0], xmm15
lea rdi, [rsp + 0x1e8]
lea rdi, [rdi - 0x10]
nop word [rax + rax]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465c06
mov rbp, qword [rbp]
lea rdi, [rsp + 0x258]
lea rdi, [rdi - 0x20]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465bf4
mov rbp, qword [rbp]
movups xmmword [rsp + 0x168], xmm15
lea rdi, [rsp + 0x170]
lea rdi, [rdi - 0x10]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465c06
mov rbp, qword [rbp]
mov rcx, qword [0x00892260]
nop
mov rdx, qword [rcx]
mov qword [rsp + 0x168], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rsp + 0x170], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rsp + 0x180], xmm0
mov rcx, qword [0x00892258]
nop
mov rdx, qword [rcx]
mov qword [rsp + 0x190], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rsp + 0x198], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rsp + 0x1a8], xmm0
mov rcx, qword [0x00892258]
nop
mov rdx, qword [rcx]
mov qword [rsp + 0x1b8], rdx
movups xmm0, xmmword [rcx + 8]
movups xmmword [rsp + 0x1c0], xmm0
movups xmm0, xmmword [rcx + 0x18]
movups xmmword [rsp + 0x1d0], xmm0
mov eax, 0xff
jmp 0x53a2c3
lea rax, [rsp + 0x168]
lea rbx, [rsp + 0x258]
call fcn.005365c0
mov rax, qword [rsp + 0x110]
dec rax
test rax, rax
jl 0x53a59f
mov qword [rsp + 0x110], rax
lea rax, [rsp + 0x258]
lea rbx, [rsp + 0x168]
call fcn.005378e0
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x498]
nop dword [rax]
test dl, dl
jg 0x53a3a5
jge 0x53a43a
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
nop
call fcn.005366c0
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x498]
mov esi, edx
neg edx
shr dl, 7
sub edx, esi
sar dl, 1
movsx rax, dl
cmp rax, 8
jae 0x53a5ef
lea rdx, [rax + rax*4]
shl rdx, 5
lea rsi, [rsp + rdx + 0x598]
lea rdi, [rsp + 0x2f8]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465f34
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x2f8]
call fcn.00537080
mov rcx, qword [rsp + 0x110]
nop
jmp 0x53a43a
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
call fcn.005366c0
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x498]
mov esi, edx
shr dl, 7
add edx, esi
sar dl, 1
movsx rax, dl
nop word [rax + rax]
cmp rax, 8
jae 0x53a5e5
lea rdx, [rax + rax*4]
shl rdx, 5
lea rsi, [rsp + rdx + 0x598]
lea rdi, [rsp + 0x2f8]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465f34
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x2f8]
call fcn.00536da0
mov rcx, qword [rsp + 0x110]
movzx edx, byte [rsp + rcx + 0x398]
test dl, dl
jg 0x53a4fd
jge 0x53a2a3
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
call fcn.005366c0
mov rcx, qword [rsp + 0xaa0]
test byte [rcx], al
mov rdx, qword [rsp + 0x110]
movzx esi, byte [rsp + rdx + 0x398]
mov edi, esi
neg esi
shr sil, 7
sub esi, edi
sar sil, 1
movsx rax, sil
cmp rax, 0x40
jae 0x53a5d6
imul rdx, rax, 0x78
mov r8, qword [rcx + rdx]
mov qword [rsp + 0x1e0], r8
lea rsi, [rdx + rcx]
lea rsi, [rsi + 8]
lea rdi, [rsp + 0x1e8]
nop word [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465f5e
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x1e0]
call fcn.00537620
mov rcx, qword [rsp + 0x110]
jmp 0x53a2a3
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x258]
call fcn.005366c0
mov rcx, qword [rsp + 0xaa0]
test byte [rcx], al
mov rdx, qword [rsp + 0x110]
movzx esi, byte [rsp + rdx + 0x398]
mov edi, esi
shr sil, 7
add esi, edi
sar sil, 1
movsx rax, sil
nop dword [rax + rax]
cmp rax, 0x40
jae 0x53a5cc
imul rdx, rax, 0x78
mov r8, qword [rcx + rdx]
mov qword [rsp + 0x1e0], r8
lea rsi, [rdx + rcx]
lea rsi, [rsi + 8]
lea rdi, [rsp + 0x1e8]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00465f5e
mov rbp, qword [rbp]
lea rax, [rsp + 0x258]
mov rbx, qword [rsp + 0xab8]
lea rcx, [rsp + 0x1e0]
call fcn.00537360
jmp 0x53a2a3
mov rax, qword [rsp + 0xab8]
lea rbx, [rsp + 0x168]
call fcn.00536800
mov rax, qword [rsp + 0xab8]
mov rbp, qword [rsp + 0xac8]
add rsp, 0xad0
ret
mov ecx, 0x40
call fcn.00465940
mov ecx, 0x40
nop dword [rax + rax]
call fcn.00465940
mov ecx, 8
call fcn.00465940
mov ecx, 8
call fcn.00465940
lea rax, [0x006576e0]
lea rbx, [0x00718470]
call fcn.00436420
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.004632e0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.00539f80