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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x58f322
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov rax, qword [rsp + 0x80]
mov qword [rsp], rax
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 8], rcx
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x10], rdx
mov byte [rsp + 0x18], 0
call fcn.004c2fe0
mov rax, qword [rsp + 0x20]
lea rcx, [rax - 0x79e]
cmp rcx, 0x32
jae 0x58f1d0
lea rcx, [rax - 0x76c]
mov rdx, qword [rsp + 0x70]
lea rbx, [rdx + 2]
mov rsi, rax
movabs rax, 0xcccccccccccccccd
mov rdi, rdx
imul rcx
lea rcx, [rsi + rdx]
lea rcx, [rcx - 0x76c]
mov rdx, rcx
sar rcx, 3
movabs rax, 0xcccccccccccccccd
mov r8, rdx
imul rcx
add rdx, rcx
sar r8, 0x3f
sar rdx, 3
sub rdx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 1
mov r8, rcx
sub rcx, rdx
lea rdx, [r8 + r8*4]
shl rdx, 1
sub rsi, rdx
mov rdx, qword [rsp + 0x78]
nop dword [rax]
cmp rbx, rdx
ja 0x58f176
mov rax, qword [rsp + 0x68]
add rcx, 0x30
mov byte [rax + rdi], cl
lea rcx, [rsi - 0x73c]
mov byte [rax + rdi + 1], cl
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdx
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x18], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x90]
mov qword [rsp + 0x28], rax
call fcn.0058f4c0
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], rdx
xorps xmm0, xmm0
movups xmmword [rsp + 0xb0], xmm0
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rsi
lea rax, [0x00614000]
mov qword [rsp], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x20], rbx
call fcn.0044ddc0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
lea rbx, [rcx + 2]
mov rcx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
jmp 0x58f0ee
lea rcx, [rax - 0x7d0]
nop word [rax + rax]
cmp rcx, 0x32
jae 0x58f2ca
mov rdx, qword [rsp + 0x70]
lea rbx, [rdx + 2]
mov rsi, rax
movabs rax, 0xcccccccccccccccd
mov rdi, rdx
imul rcx
lea rcx, [rsi + rdx]
lea rcx, [rcx - 0x7d0]
mov rdx, rcx
sar rcx, 3
movabs rax, 0xcccccccccccccccd
mov r8, rdx
imul rcx
add rdx, rcx
sar r8, 0x3f
sar rdx, 3
sub rdx, r8
lea rdx, [rdx + rdx*4]
shl rdx, 1
mov r8, rcx
sub rcx, rdx
lea rdx, [r8 + r8*4]
shl rdx, 1
sub rsi, rdx
mov rdx, qword [rsp + 0x78]
cmp rbx, rdx
ja 0x58f273
mov rax, qword [rsp + 0x68]
add rcx, 0x30
mov byte [rax + rdi], cl
lea rcx, [rsi - 0x7a0]
mov byte [rax + rdi + 1], cl
jmp 0x58f100
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rsi
lea rax, [0x00614000]
mov qword [rsp], rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], rdx
mov qword [rsp + 0x20], rbx
call fcn.0044ddc0
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
lea rbx, [rcx + 2]
mov rcx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x70]
jmp 0x58f25c
lea rax, [0x0066350e]
mov qword [rsp], rax
mov qword [rsp + 8], 0x20
nop
call fcn.0040b600
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0x98], 0
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
lea rcx, [0x006a4c20]
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xb8], rax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
call fcn.0046abe0
jmp fcn.0058f000