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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x48]
cmp rax, qword [rcx + 0x10]
jbe 0x6129fa
sub rsp, 0xc8
mov qword [rsp + 0xc0], rbp
lea rbp, [rsp + 0xc0]
mov rax, qword [rsp + 0xe0]
cmp rax, 8
jbe 0x6129f3
mov rcx, qword [rsp + 0xd8]
movzx edx, byte [rcx + 8]
cmp dl, 0x2d
je 0x6127c1
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xb8], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x98], xmm0
lea rax, [0x00646dc0]
mov qword [rsp], rax
lea rax, [rsp + 0xa8]
mov qword [rsp + 8], rax
call fcn.0040e1a0
mov rax, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rcx
lea rax, [0x006b3e0d]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1e
lea rax, [rsp + 0x98]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 1
mov qword [rsp + 0x20], 1
call fcn.004b7470
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], rax
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
cmp rax, 0xd
jbe 0x6129f3
movzx edx, byte [rcx + 0xd]
cmp dl, 0x2d
jne 0x6126fd
cmp rax, 0x12
jbe 0x6129f3
movzx edx, byte [rcx + 0x12]
cmp dl, 0x2d
jne 0x6126fd
cmp rax, 0x17
jbe 0x6129f3
movzx edx, byte [rcx + 0x17]
cmp dl, 0x2d
jne 0x6126fd
mov rdx, qword [rsp + 0xd0]
test byte [rdx], al
mov rbx, qword [0x0082b5e0]
mov qword [rsp + 0x90], rbx
mov rsi, qword [0x0082b5e8]
mov qword [rsp + 0x78], rsi
xor edi, edi
mov r8d, 0x10
mov r9, qword [rsp + 0xe8]
xor r10d, r10d
xor r11d, r11d
jmp 0x61288b
mov r12, qword [rsp + 0x58]
inc r12
sub r8, rsi
mov r13, r8
neg r8
sar r8, 0x3f
and rsi, r8
mov r14, qword [rsp + 0x88]
add r14, rsi
mov rsi, qword [rsp + 0x78]
mov r8, r13
mov r9, rdi
mov r10, rax
mov r11, rcx
mov rdi, r12
mov rax, rbx
mov rcx, rdx
mov rbx, qword [rsp + 0x90]
mov rdx, r14
cmp rdi, rsi
jge 0x6129b7
mov r10, qword [rbx + rdi*8]
test rdi, rdi
jle 0x6129af
cmp rax, 1
jb 0x6129ec
dec r9
mov r11, r9
neg r9
sar r9, 0x3f
and r9, 1
add rcx, r9
dec rax
mov r9, r10
sar r10, 0x3f
shr r10, 0x3f
add r10, r9
sar r10, 1
cmp r10, r8
ja 0x6129e5
cmp r9, r11
ja 0x6129e5
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x70], r9
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], r11
mov qword [rsp], rdx
mov qword [rsp + 8], r10
mov qword [rsp + 0x10], r8
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x28], r11
call fcn.004f11d0
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x40]
test rax, rax
jne 0x61298f
mov rdx, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x48]
cmp rdx, rbx
ja 0x6129de
sub rbx, rdx
mov rsi, qword [rsp + 0x50]
sub rsi, rdx
mov rdi, rsi
neg rsi
sar rsi, 0x3f
and rdx, rsi
mov rsi, qword [rsp + 0x80]
add rdx, rsi
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x60]
cmp rsi, r8
jbe 0x612843
jmp 0x6129d7
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], rcx
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
mov r11, r9
jmp 0x6128c2
mov qword [rsp + 0xf0], r10
mov qword [rsp + 0xf8], r11
mov rbp, qword [rsp + 0xc0]
add rsp, 0xc8
ret
call fcn.00429bc0
ud2
call fcn.00429bc0
ud2
call fcn.00429bc0
ud2
call fcn.00429bc0
ud2
call fcn.00429b50
ud2
call fcn.00452950
jmp fcn.006126a0