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

Disassembly:
lea r12, [rsp - 8]
cmp r12, qword [r14 + 0x18]
jbe 0x422f3b
sub rsp, 0x88
mov qword [rsp + 0x80], rbp
lea rbp, [rsp + 0x80]
test byte [rax], al
movabs r8, 0x800000000000
lea r9, [r8 + rbx]
lea r10, [r8 + rcx]
cmp r10, r9
jbe 0x422b88
nop
mov r10, rcx
sub rcx, rbx
jmp 0x422b8d
mov r10, rcx
xor ecx, ecx
test rcx, rcx
je 0x422d56
nop word [rax + rax]
nop
test rbx, 0x3fffff
jne 0x422f29
mov rcx, qword [0x011544b0]
shr rcx, 0xd
cmp rcx, 1
mov r11d, 1
cmovb rcx, r11
mov r11, rdi
shr rdi, 0xd
lea r12, [rdi + 1]
test r11, 0x1fff
cmovne rdi, r12
nop
mov r11, qword [rax + 0x68]
mov r12, qword [rax + 0x60]
movabs r13, 0x7fffffffffff
add r13, r10
mov r15, r13
shr r13, 0x16
nop dword [rax]
cmp r11, r13
jbe 0x422f1e
mov r11, qword [r12 + r13*8]
bt r11, 0x3f
jae 0x422c1c
mov r11d, 0x200000
jmp 0x422c27
shr r11, 0x15
and r11, 0x1fffff
mov qword [rsp + 0x60], r9
mov qword [rsp + 0x90], rax
mov byte [rsp + 0xb0], sil
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], rcx
cmp r11, rcx
jb 0x422d1b
shr r15, 0x23
nop dword [rax + rax]
cmp r15, 0x2000
jae 0x422f11
mov qword [rsp + 0x50], r13
mov rdx, qword [rax + r15*8 + 0x78]
test byte [rdx], al
lea rbx, [r10 - 1]
and r13, 0x1fff
shl r13, 7
add rdx, r13
and rbx, 0x3fffff
shr rbx, 0xd
mov rax, rdx
call fcn.00423580
nop
test rbx, rbx
jne 0x422cda
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x58]
movzx esi, byte [rsp + 0xb0]
mov rdi, qword [rsp + 0x40]
movabs r8, 0x800000000000
mov r9, qword [rsp + 0x60]
mov r13, qword [rsp + 0x50]
jmp 0x422d1b
mov qword [rsp + 0x30], rbx
mov rcx, rax
mov rdi, rbx
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x50]
call fcn.00423100
mov rdx, qword [rsp + 0x30]
shl rdx, 0xd
mov rbx, qword [rsp + 0x58]
mov rcx, rax
mov rax, rdx
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
nop
movups xmmword [rsp + 0x68], xmm15
mov qword [rsp + 0x78], 0
lea r10, [0x00422f80]
mov qword [rsp + 0x68], r10
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rcx
shl r13, 0x16
movabs r10, 0xffff800000000000
lea r11, [r13 + r10]
jmp 0x422db1
xor eax, eax
mov rcx, r10
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
nop
mov r12, qword [rsp + 0x48]
shl r12, 0x16
movabs r10, 0xffff800000000000
lea r11, [r12 + r10]
mov rbx, qword [rsp + 0x58]
movzx esi, byte [rsp + 0xb0]
mov r9, qword [rsp + 0x60]
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
movabs r8, 0x800000000000
lea r12, [r11 + r8]
cmp r12, r9
jbe 0x422dc3
nop
mov r12, r11
sub r11, rbx
jmp 0x422dc9
mov r12, r11
xor r11d, r11d
test r11, r11
je 0x422ef2
nop
test sil, sil
je 0x422df7
mov qword [rsp + 0x50], r12
mov rcx, qword [rax + 0x10108]
nop
mov rax, rcx
call fcn.0040c800
mov rbx, qword [rsp + 0x58]
mov r12, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x68]
mov rax, rbx
mov rbx, r12
lea rdx, [rsp + 0x68]
call rcx
mov qword [rsp + 0x48], rax
nop
movzx ecx, byte [rsp + 0xb0]
test cl, cl
je 0x422e46
mov byte [rsp + 0x27], bl
mov rcx, qword [rsp + 0x90]
mov rax, qword [rcx + 0x10108]
nop
call fcn.0040c5e0
mov rax, qword [rsp + 0x48]
movzx ecx, byte [rsp + 0xb0]
movzx ebx, byte [rsp + 0x27]
test bl, bl
je 0x422eea
nop
mov rdx, rax
shr rax, 0xd
nop word [rax + rax]
nop
cmp rax, 0x2000
jae 0x422f07
mov rsi, qword [rsp + 0x90]
mov r8, qword [rsi + rax*8 + 0x78]
test byte [r8], al
and rdx, 0x1fff
shl rdx, 7
lea rax, [r8 + rdx]
mov ebx, 0x1ff
mov rcx, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
call fcn.00423580
nop
test rbx, rbx
jbe 0x422d6b
mov qword [rsp + 0x28], rbx
mov rcx, rax
mov rdi, rbx
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x48]
call fcn.00423100
mov rdx, qword [rsp + 0x28]
shl rdx, 0xd
mov rbx, qword [rsp + 0x58]
mov rcx, rax
mov rax, rdx
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
mov rbx, qword [rsp + 0x58]
mov r12, rbx
xor eax, eax
mov rcx, r12
mov rbp, qword [rsp + 0x80]
add rsp, 0x88
ret
mov ecx, 0x2000
call fcn.00465b80
mov rax, r15
mov ecx, 0x2000
call fcn.00465b80
mov rax, r13
mov rcx, r11
call fcn.00465b80
lea rax, [0x00ad9326]
mov ebx, 0x2d
call fcn.00437b60
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov byte [rsp + 0x28], sil
call fcn.00467b60
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
jmp fcn.00422b40