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

Disassembly:
lea r12, [rsp - 0x28]
cmp r12, qword [r14 + 0x10]
jbe 0x4aeb51
push rbp
mov rbp, rsp
sub rsp, 0xa0
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rcx
test rcx, rcx
je 0x4ae8dc
mov rdx, rcx
jmp 0x4ae8ec
mov rdx, qword [0x00899560]
mov rsi, rdx
mov rdx, rcx
mov rcx, rsi
cmp qword [0x00899560], rcx
jne 0x4ae906
xor ebx, ebx
mov eax, 1
mov edx, 0xffffffff
jmp 0x4ae9a2
mov rcx, rdx
call fcn.004ae820
mov rdx, rcx
sar rcx, 0x3f
movabs rax, 0x8888888888888889
mov rbx, rdx
imul rdx
add rdx, rbx
sar rdx, 5
sub rdx, rcx
imul rsi, rdx, 0x3c
cmp rbx, rsi
je 0x4ae942
sub rbx, rsi
mov eax, 2
jmp 0x4ae949
xor ebx, ebx
mov eax, 1
cmp rdx, 0xffffffffffff8000
jl 0x4ae969
cmp rdx, 0xffffffffffffffff
je 0x4ae969
nop dword [rax + rax]
cmp rdx, 0x7fff
jle 0x4ae9a2
nop
lea rax, [0x006870a0]
call fcn.0040d480
mov qword [rax + 8], 0x2a
lea rcx, [0x006d2b1e]
mov qword [rax], rcx
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x00741740]
mov rsi, rax
xor eax, eax
add rsp, 0xa0
pop rbp
ret
mov byte [rsp + 0x47], bl
mov byte [rsp + 0x46], al
mov rcx, qword [rsp + 0xb0]
bt rcx, 0x3f
jae 0x4ae9d2
mov rsi, rcx
shl rcx, 1
shr rcx, 0x1f
movabs rdi, 0xdd7b17f80
add rcx, rdi
jmp 0x4ae9e3
mov rsi, qword [rsp + 0xb8]
mov rdi, rsi
mov rsi, rcx
mov rcx, rdi
mov qword [rsp + 0x58], rcx
mov word [rsp + 0x48], dx
mov rbx, rcx
sar rcx, 0x38
mov qword [rsp + 0x98], rcx
mov rdi, rbx
sar rbx, 0x30
mov qword [rsp + 0x90], rbx
mov r8, rdi
sar rdi, 0x28
mov qword [rsp + 0x88], rdi
mov r9, r8
sar r8, 0x20
mov qword [rsp + 0x80], r8
mov r10, r9
sar r9, 0x18
mov qword [rsp + 0x78], r9
mov r11, r10
sar r10, 0x10
mov qword [rsp + 0x70], r10
sar r11, 8
mov qword [rsp + 0x68], r11
sar dx, 8
mov word [rsp + 0x4a], dx
and esi, 0x3fffffff
mov qword [rsp + 0x60], rsi
mov r15, rsi
sar esi, 0x18
mov dword [rsp + 0x54], esi
mov rax, r15
sar r15d, 0x10
mov dword [rsp + 0x50], r15d
sar eax, 8
mov dword [rsp + 0x4c], eax
nop
lea rax, [0x00671fc0]
call fcn.0040d480
movzx ecx, byte [rsp + 0x46]
mov byte [rax], cl
mov rdx, qword [rsp + 0x98]
mov byte [rax + 1], dl
mov rdx, qword [rsp + 0x90]
mov byte [rax + 2], dl
mov rdx, qword [rsp + 0x88]
mov byte [rax + 3], dl
mov rdx, qword [rsp + 0x80]
mov byte [rax + 4], dl
mov rdx, qword [rsp + 0x78]
mov byte [rax + 5], dl
mov rdx, qword [rsp + 0x70]
mov byte [rax + 6], dl
mov rdx, qword [rsp + 0x68]
mov byte [rax + 7], dl
mov rdx, qword [rsp + 0x58]
mov byte [rax + 8], dl
mov edx, dword [rsp + 0x54]
mov byte [rax + 9], dl
mov edx, dword [rsp + 0x50]
mov byte [rax + 0xa], dl
mov edx, dword [rsp + 0x4c]
mov byte [rax + 0xb], dl
mov rdx, qword [rsp + 0x60]
mov byte [rax + 0xc], dl
movzx edx, word [rsp + 0x4a]
mov byte [rax + 0xd], dl
movzx edx, word [rsp + 0x48]
mov byte [rax + 0xe], dl
cmp cl, 2
je 0x4aeb19
mov ecx, 0xf
mov edx, 0xf
jmp 0x4aeb41
mov ebx, 0x10
mov ecx, 0xf
mov edi, 1
lea rsi, [0x0066d1c0]
call fcn.00447aa0
movzx edx, byte [rsp + 0x47]
mov byte [rax + 0xf], dl
mov edx, 0x10
mov rbx, rdx
xor edi, edi
xor esi, esi
add rsp, 0xa0
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.0045df00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.004ae8a0