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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x537809
sub rsp, 0x58
mov qword [rsp + 0x50], rbp
lea rbp, [rsp + 0x50]
mov rax, qword [rsp + 0x78]
lea rcx, [rax - 0xc]
cmp rcx, 4
ja 0x53778d
mov rcx, qword [rsp + 0x70]
test rcx, rcx
jle 0x53773a
lea rax, [0x006212c0]
mov qword [rsp], rax
mov rax, qword [rsp + 0x60]
mov qword [rsp + 8], rax
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0x10], rcx
call fcn.0040ba60
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
cmp byte [rsp + 0x28], 0
nop dword [rax]
jne 0x5376de
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x18]
mov rdx, qword [rsp + 0x68]
mov qword [rsp], rdx
call rcx
cmp qword [rsp + 8], 0x10
jne 0x53768b
lea rax, [0x00614ca0]
mov qword [rsp], rax
call fcn.0040e560
mov rax, qword [rsp + 8]
mov qword [rsp + 0x48], rax
mov rcx, qword [rsp + 0x60]
mov rcx, qword [rcx + 0x28]
mov rdx, qword [rsp + 0x68]
mov qword [rsp], rdx
mov qword [rsp + 0x10], 0x10
mov qword [rsp + 0x18], 0x10
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0x10
mov qword [rsp + 0x30], 0x10
call rcx
lea rax, [0x0063cda0]
mov qword [rsp], rax
call fcn.0040e560
mov rax, qword [rsp + 8]
mov rcx, qword [rsp + 0x60]
mov qword [rax], rcx
cmp dword [0x00811460], 0
jne 0x537678
mov rdx, qword [rsp + 0x68]
mov qword [rax + 8], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0x78]
mov qword [rax + 0x18], rdx
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rdx]
mov rdx, qword [rdx + 8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
bswap rbx
mov qword [rsp + 0x38], rbx
bswap rdx
mov qword [rsp + 0x40], rdx
mov qword [rax + 0xa0], rbx
mov qword [rax + 0xa8], rdx
mov ecx, 2
jmp 0x53752d
shl rdi, 4
mov qword [rax + rdi + 0x20], rdx
mov qword [rax + rdi + 0x28], rbx
lea rcx, [r8 + 2]
cmp rcx, 0x10
jge 0x53764f
mov rdx, rcx
shr rcx, 0x3f
lea rbx, [rdx + rcx]
mov rsi, rbx
sar rbx, 1
mov rdi, rdx
shl rdx, 2
and rdx, 0xc
mov r8, rdi
sar rdi, 2
and rdi, 3
or rdi, rdx
mov rdx, rdi
shl rdi, 1
and rdi, 0xa
sar rdx, 1
and rdx, 5
or rdi, rdx
shl rbx, 2
and rbx, 0xc
sar rsi, 3
and rsi, 3
or rsi, rbx
mov rdx, rsi
shl rsi, 1
and rsi, 0xa
sar rdx, 1
and rdx, 5
or rdx, rsi
nop dword [rax]
cmp rdx, 0x10
jae 0x5377fb
shl rdx, 4
mov rbx, qword [rax + rdx + 0x28]
mov rdx, qword [rax + rdx + 0x20]
mov rsi, rdx
shr rdx, 1
movabs r9, 0xe100000000000000
xor r9, rdx
test rbx, 1
cmovne rdx, r9
shr rbx, 1
shl rsi, 0x3f
or rsi, rbx
cmp rdi, 0x10
jae 0x5377ee
shl rdi, 4
mov qword [rax + rdi + 0x20], rdx
mov qword [rax + rdi + 0x28], rsi
lea rbx, [r8 + 1]
mov rdi, rbx
shl rbx, 2
and rbx, 0xc
sar rdi, 2
and rdi, 3
or rdi, rbx
mov rbx, rdi
shl rdi, 1
and rdi, 0xa
sar rbx, 1
and rbx, 5
or rdi, rbx
mov rbx, qword [rsp + 0x38]
xor rdx, rbx
mov rbx, qword [rsp + 0x40]
xor rbx, rsi
nop word [rax + rax]
nop
cmp rdi, 0x10
jb 0x53751b
jmp 0x5377e1
lea rcx, [0x006a75d0]
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x88], rax
movups xmmword [rsp + 0x90], xmm0
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
lea rdi, [rax + 8]
mov rdx, qword [rsp + 0x68]
call fcn.0046ca40
jmp 0x5374d0
lea rax, [0x00625ba0]
mov qword [rsp], rax
call fcn.0040e560
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x2c
lea rcx, [0x00666ae4]
mov qword [rax], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
lea rcx, [0x006a4760]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
mov rax, qword [rax + 0x18]
mov qword [rsp], rcx
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 8], rcx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x10], rcx
call rax
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x20]
mov rbx, qword [rsp + 0x30]
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rbx
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
lea rax, [0x00625ba0]
mov qword [rsp], rax
call fcn.0040e560
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x64
lea rcx, [0x006698e2]
mov qword [rax], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
lea rcx, [0x006a4760]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
ret
lea rax, [0x00625ba0]
mov qword [rsp], rax
call fcn.0040e560
mov rax, qword [rsp + 8]
mov qword [rax + 8], 0x27
lea rcx, [0x00665972]
mov qword [rax], rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
lea rcx, [0x006a4760]
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], rax
mov rbp, qword [rsp + 0x50]
add rsp, 0x58
nop
ret
mov rax, rdi
mov ecx, 0x10
call fcn.0046cdc0
mov rax, rdi
mov ecx, 0x10
call fcn.0046cdc0
mov rax, rdx
mov ecx, 0x10
call fcn.0046cdc0
nop
call fcn.0046abe0
jmp fcn.005373a0