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

Disassembly:
lea r12, [rsp - 8]
cmp r12, qword [r14 + 0x10]
jbe 0x58b3fc
sub rsp, 0x88
mov qword [rsp + 0x80], rbp
lea rbp, [rsp + 0x80]
mov rcx, qword [rax + 0x30]
test rcx, rcx
je 0x58b23b
mov qword [rsp + 0x90], rax
mov rax, rcx
nop
call fcn.0058ae00
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rdi + 0x30]
cmp dword [0x0092b0b0], 0
jne 0x58ae64
mov qword [rdi + 0x30], 0
jmp 0x58ae78
lea rdx, [rdi + 0x30]
mov rax, rdi
mov rdi, rdx
xor esi, esi
call fcn.00465a60
mov rdi, rax
mov rdx, qword [rcx]
mov rsi, qword [rcx + 8]
nop
test rdx, rdx
jne 0x58b210
mov rdx, qword [rcx + 0x18]
mov rsi, qword [rcx + 0x10]
mov r8, qword [rcx + 0x40]
mov r9, rdx
sub rdx, r8
mov rax, qword [rcx + 0x38]
sub rdx, rax
test rdx, rdx
jl 0x58b3e8
mov qword [rsp + 0x48], rcx
cmp byte [rcx + 0x48], 0
je 0x58b204
nop word [rax + rax]
cmp r8, 1
jne 0x58b3d5
mov r8d, 0xfffffffe
cmp r8, rdx
jl 0x58b1ac
nop dword [rax]
cmp rdx, 0xffffff
jle 0x58aef6
mov ebx, 0xffffff84
mov r8d, 5
jmp 0x58af40
cmp rdx, 0xffff
jle 0x58af0c
mov ebx, 0xffffff83
mov r8d, 4
jmp 0x58af40
cmp rdx, 0xff
jle 0x58af22
mov ebx, 0xffffff82
mov r8d, 3
jmp 0x58af40
cmp rdx, 0x7f
jle 0x58af35
mov ebx, 0xffffff81
mov r8d, 2
jmp 0x58af40
mov rbx, rdx
mov r8d, 1
xor edx, edx
cmp r9, rax
jbe 0x58b3cd
mov byte [rsi + rax], bl
lea esi, [r8 - 1]
movzx ebx, sil
test rbx, rbx
je 0x58b1a2
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rdx
lea rax, [0x006796c0]
mov rcx, rbx
call fcn.0044a840
mov rdx, qword [rsp + 0x48]
cmp qword [rdx], 0
nop
jne 0x58b114
cmp qword [rdx + 0x30], 0
jne 0x58b3ba
mov qword [rsp + 0x58], rax
mov r8, qword [rdx + 0x18]
mov rdi, qword [rsp + 0x30]
add r8, rdi
cmp rdi, r8
jle 0x58b002
lea rax, [0x00690f40]
call fcn.0040d960
mov qword [rax + 8], 0x1b
lea rcx, [0x006d20ac]
mov qword [rax], rcx
lea rcx, [0x00742c00]
mov rdi, qword [rsp + 0x48]
mov qword [rdi], rcx
cmp dword [0x0092b0b0], 0
jne 0x58afe3
mov qword [rdi + 8], rax
jmp 0x58aff5
lea rdx, [rdi + 8]
mov rbx, rdi
mov rdi, rdx
call fcn.00465900
mov rdi, rbx
mov rax, qword [rsp + 0x58]
mov rdx, rdi
mov rdi, qword [rsp + 0x30]
cmp byte [rdx + 0x28], 0
je 0x58b070
mov r8, qword [rdx + 0x18]
add r8, rdi
cmp qword [rdx + 0x20], r8
jge 0x58b070
lea rax, [0x00690f40]
nop dword [rax]
call fcn.0040d960
mov qword [rax + 8], 0x36
lea rcx, [0x006dbc8b]
mov qword [rax], rcx
lea rcx, [0x00742c00]
mov rdi, qword [rsp + 0x48]
mov qword [rdi], rcx
cmp dword [0x0092b0b0], 0
jne 0x58b055
mov qword [rdi + 8], rax
jmp 0x58b068
lea rdx, [rdi + 8]
mov rcx, rdi
mov rdi, rdx
nop
call fcn.00465900
mov rdi, rcx
mov rdx, rdi
jmp 0x58b114
mov r8, qword [rdx + 0x18]
lea rbx, [rdi + r8]
mov rcx, qword [rdx + 0x20]
mov r9, qword [rdx + 0x10]
cmp rcx, rbx
jae 0x58b0ab
mov qword [rsp + 0x40], r8
mov rax, r9
lea rsi, [0x006796c0]
call fcn.0044a920
mov rdi, qword [rsp + 0x30]
mov r8, qword [rsp + 0x40]
mov r9, rax
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x38], rcx
lea rdx, [r9 + r8]
mov rsi, rax
mov rax, rdx
mov rbx, rsi
mov rcx, rdi
call fcn.00466740
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov qword [rdi + 0x18], rdx
mov rdx, qword [rsp + 0x38]
mov qword [rdi + 0x20], rdx
cmp dword [0x0092b0b0], 0
jne 0x58b0fa
mov rdx, qword [rsp + 0x50]
mov qword [rdi + 0x10], rdx
jmp 0x58b111
lea rdx, [rdi + 0x10]
mov rax, rdi
mov rdi, rdx
mov rsi, qword [rsp + 0x50]
call fcn.00465a60
mov rdi, rax
mov rdx, rdi
mov rax, qword [rdx + 0x38]
add rax, qword [rdx + 0x40]
mov rcx, qword [rdx + 0x18]
mov rsi, qword [rdx + 0x10]
mov r8, qword [rdx + 0x20]
mov r9, qword [rsp + 0x30]
lea r10, [rax + r9]
cmp rcx, r10
jb 0x58b3b2
mov r11, rcx
sub rcx, r10
mov r12, r10
sub r10, r8
sar r10, 0x3f
and r12, r10
lea r10, [r12 + rsi]
cmp r11, rax
jb 0x58b3aa
sub r11, rax
cmp r11, rcx
cmovl rcx, r11
mov r11, rax
sub rax, r8
sar rax, 0x3f
and r11, rax
lea rbx, [r11 + rsi]
cmp rbx, r10
je 0x58b18f
mov rax, r10
nop dword [rax]
call fcn.00466740
mov rdx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
mov rcx, rdx
mov rdx, qword [rsp + 0x28]
mov rbx, r9
mov rdi, qword [rsp + 0x90]
inc qword [rcx + 0x38]
mov qword [rcx + 0x40], rbx
jmp 0x58b204
lea rax, [0x00690f40]
call fcn.0040d960
mov qword [rax + 8], 0x1c
lea rcx, [0x006d2c11]
mov qword [rax], rcx
lea rcx, [0x00742c00]
mov rdi, qword [rsp + 0x90]
mov qword [rdi], rcx
cmp dword [0x0092b0b0], 0
jne 0x58b1eb
mov qword [rdi + 8], rax
jmp 0x58b1f4
add rdi, 8
call fcn.00465900
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
mov rsi, qword [rcx + 0x40]
dec rsi
mov rax, rdx
jmp 0x58b256
mov qword [rdi], rdx
cmp dword [0x0092b0b0], 0
jne 0x58b222
mov qword [rdi + 8], rsi
jmp 0x58b22b
add rdi, 8
call fcn.00465a60
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
mov byte [r9 + r10], dl
dec rsi
sar rdx, 8
test rsi, rsi
jl 0x58b274
mov r8, qword [rcx + 0x18]
mov r9, qword [rcx + 0x10]
mov r10, qword [rcx + 0x38]
add r10, rsi
cmp r8, r10
ja 0x58b24b
jmp 0x58b39f
test rdx, rdx
jne 0x58b2e5
cmp byte [rdi + 0x28], 0
je 0x58b2a9
mov rdx, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0
jbe 0x58b395
mov rsi, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0
jbe 0x58b38b
nop dword [rax]
cmp rdx, rsi
jne 0x58b378
mov rax, qword [rcx + 0x10]
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rdi + 0x18], rdx
mov qword [rdi + 0x20], rcx
cmp dword [0x0092b0b0], 0
jne 0x58b2cc
mov qword [rdi + 0x10], rax
jmp 0x58b2d5
add rdi, 0x10
call fcn.00465900
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
movups xmmword [rsp + 0x60], xmm15
movups xmmword [rsp + 0x70], xmm15
call fcn.0040af40
lea rcx, [0x00678d40]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
mov rdx, qword [rsp + 0x48]
mov rax, qword [rdx + 0x40]
call fcn.0040af40
lea rcx, [0x00678d40]
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], rax
lea rax, [0x006dd4e4]
mov ebx, 0x41
lea rcx, [rsp + 0x60]
mov edi, 2
mov rsi, rdi
nop
call fcn.004c8440
mov rdi, qword [rsp + 0x90]
mov qword [rdi], rax
cmp dword [0x0092b0b0], 0
jne 0x58b35f
mov qword [rdi + 8], rbx
jmp 0x58b368
add rdi, 8
call fcn.00465a40
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
lea rax, [0x00679500]
lea rbx, [0x00742880]
call fcn.00436420
xor eax, eax
mov rcx, rax
call fcn.00465da0
xor eax, eax
mov rcx, rax
call fcn.00465da0
mov rax, r10
mov rcx, r8
call fcn.00465da0
mov rcx, r11
call fcn.00465e60
mov rax, r10
call fcn.00465e60
lea rax, [0x00679500]
lea rbx, [0x00741db0]
call fcn.00436420
mov rcx, r9
call fcn.00465da0
lea rax, [0x00679500]
lea rbx, [0x00742870]
call fcn.00436420
lea rax, [0x00679500]
lea rbx, [0x00742870]
call fcn.00436420
nop
mov qword [rsp + 8], rax
call fcn.00463740
mov rax, qword [rsp + 8]
jmp fcn.0058ae00