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

Disassembly:
lea r12, [rsp - 0x38]
cmp r12, qword [r14 + 0x10]
jbe 0x4e4ed9
sub rsp, 0xb8
mov qword [rsp + 0xb0], rbp
lea rbp, [rsp + 0xb0]
mov qword [rsp + 0xc0], rax
lea rdx, [rsi - 2]
cmp rdx, 0x3c
ja 0x4e4ec5
nop dword [rax]
test rbx, rbx
je 0x4e4d56
mov byte [rsp + 0xd8], dil
mov qword [rsp + 0xe0], rsi
mov qword [rsp + 0xd0], rcx
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xa8], rax
call fcn.004e1b20
mov qword [rsp + 0x90], rax
mov rdx, qword [rsp + 0xe0]
xorps xmm0, xmm0
cvtsi2sd xmm0, rdx
call fcn.00468ca0
mov rdx, qword [rsp + 0x90]
xorps xmm1, xmm1
cvtsi2sd xmm1, rdx
divsd xmm1, xmm0
cvttsd2si rdx, xmm1
lea rcx, [rdx + 1]
add rdx, 2
movzx esi, byte [rsp + 0xd8]
movzx edi, sil
test rdi, rdi
cmovne rcx, rdx
mov qword [rsp + 0x80], rcx
lea rax, [0x005fe2e0]
mov rbx, rcx
call fcn.00448e60
mov qword [rsp + 0xa0], rax
mov rdx, qword [rsp + 0xe0]
mov rsi, rdx
neg rdx
and rdx, rsi
cmp rsi, rdx
jne 0x4e4c97
mov rax, rsi
nop
call fcn.00468940
cmp rax, 0x40
sbb rcx, rcx
mov rdx, rcx
mov rcx, rax
mov ebx, 1
shl rbx, cl
and rbx, rdx
dec rbx
mov rsi, qword [rsp + 0xa8]
mov rdi, qword [rsi]
mov r8, qword [rsp + 0x80]
mov r9, qword [rsp + 0xa0]
mov r10, qword [rsp + 0xc8]
mov r11, r8
mov r12d, 1
mov r13d, 0x40
jmp 0x4e4dd5
mov rax, rsi
call fcn.004e41e0
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x78], rbx
mov rcx, rbx
mov rdi, rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xe0]
call fcn.004e5520
mov qword [rsp + 0x98], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x70], rcx
mov rdi, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
xor eax, eax
xor ebx, ebx
mov rcx, rbx
call fcn.004deb60
mov rdx, qword [rsp + 0x98]
mov qword [rsp], rdx
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 8], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x10], rdx
mov rdi, qword [rsp + 0xa0]
mov rsi, qword [rsp + 0x80]
mov r8, rsi
mov r9, qword [rsp + 0xe0]
mov r10, qword [rsp + 0x78]
mov r11, qword [rsp + 0x88]
call fcn.004e4f20
mov rcx, qword [rsp + 0xa0]
xor eax, eax
jmp 0x4e4d84
lea rax, [0x005ff5a0]
nop dword [rax]
call fcn.0040d1e0
mov byte [rax], 0x30
mov ebx, 1
mov rcx, rbx
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
nop
ret
inc rax
movzx edx, byte [rax + rcx]
cmp dl, 0x30
je 0x4e4d81
movzx edx, byte [rsp + 0xd8]
test dl, dl
je 0x4e4da1
mov byte [rax + rcx - 1], 0x2d
dec rax
mov rbx, qword [rsp + 0x80]
sub rbx, rax
mov rdx, rbx
neg rbx
sar rbx, 0x3f
and rax, rbx
add rax, rcx
mov rbx, rdx
mov rcx, rbx
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
inc r12
cmp r10, r12
jg 0x4e4eba
nop
jmp 0x4e4e80
test r13, r13
jne 0x4e4df6
mov rdi, qword [rsi + r12*8]
mov r13d, 0x40
jmp 0x4e4dd2
cmp r13, 0x40
sbb r15, r15
mov r11, qword [rsi + r12*8]
mov rcx, r13
shl r11, cl
and r11, r15
or rdi, r11
and rdi, rbx
lea r11, [0x00657dad]
movzx r11d, byte [rdi + r11]
mov byte [r8 + r9 - 1], r11b
mov r11, rax
sub rax, rcx
cmp rax, 0x40
sbb rdi, rdi
dec r8
mov r13, qword [rsi + r12*8]
mov rcx, rax
shr r13, cl
and rdi, r13
lea r13, [rax - 0x40]
neg r13
mov rax, r11
mov rcx, rax
mov r11, qword [rsp + 0x80]
jmp 0x4e4dd2
mov rsi, rdi
and rdi, rbx
lea r10, [0x00657dad]
movzx r10d, byte [rdi + r10]
mov byte [r8 + r9 - 1], r10b
dec r8
shr rsi, cl
and rsi, rdx
mov rdi, rsi
nop dword [rax + rax]
test rdi, rdi
jne 0x4e4e58
mov rcx, r9
mov rax, r8
jmp 0x4e4d8d
mov qword [rsp + 0x60], rdi
and rdi, rbx
lea r15, [0x00657dad]
movzx r15d, byte [rdi + r15]
mov byte [r8 + r9 - 1], r15b
dec r8
mov rdi, qword [rsp + 0x60]
shr rdi, cl
and rdi, rdx
sub r13, rax
cmp rax, r13
jbe 0x4e4e90
nop
jmp 0x4e4de5
lea rax, [0x005fe120]
lea rbx, [0x00684ac0]
call fcn.00436780
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov byte [rsp + 0x20], dil
mov qword [rsp + 0x28], rsi
call fcn.0045f280
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
movzx edi, byte [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
jmp fcn.004e4b40