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

Disassembly:
lea r12, [rsp - 0xa0]
cmp r12, qword [r14 + 0x10]
jbe 0x46ef66
push rbp
mov rbp, rsp
sub rsp, 0x118
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x110], rbx
lea rax, [0x00f27200]
mov rbx, rcx
lea rcx, [rsp + 0x108]
call fcn.00413900
nop dword [rax]
test bl, bl
jne 0x46e95a
mov rdx, qword [rsp + 0x128]
mov qword [rsp + 0x108], rdx
mov rsi, qword [rsp + 0x130]
mov qword [rsp + 0x110], rsi
lea rax, [0x00f27200]
mov rbx, qword [rsp + 0x138]
lea rcx, [rsp + 0x108]
nop
call fcn.00413d20
test byte [rax], al
mov rdx, qword [rsp + 0x130]
mov rax, qword [rsp + 0x128]
nop word [rax + rax]
cmp rdx, rax
je 0x46e94c
movzx ecx, byte [rax + 0x17]
mov ebx, ecx
and ecx, 0x1f
movzx esi, byte [rdx + 0x17]
and esi, 0x1f
nop dword [rax]
cmp sil, cl
jne 0x46e941
mov byte [rsp + 0x1f], bl
mov byte [rsp + 0x1e], cl
call fcn.0046d400
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x130]
call fcn.0046d400
mov rcx, qword [rsp + 0x78]
cmp rbx, rcx
jne 0x46e935
mov rbx, rax
mov rax, qword [rsp + 0x100]
call fcn.00406a80
test al, al
je 0x46e935
mov rax, qword [rsp + 0x128]
movzx edx, byte [rax + 0x14]
test dl, 1
jne 0x46e4cb
xor edx, edx
jmp 0x46e51a
movzx edx, byte [rax + 0x17]
and edx, 0x1f
add rdx, 0xffffffffffffffef
cmp rdx, 8
ja 0x46e516
lea rcx, [0x017ad1e0]
jmp qword [rcx + rdx*8]
lea rdx, [rax + 0x30]
mov rsi, qword [rsp + 0x130]
movzx edi, byte [rsi + 0x14]
test dil, 1
jne 0x46e530
xor edi, edi
jmp 0x46e586
movzx edi, byte [rsi + 0x17]
and edi, 0x1f
add rdi, 0xffffffffffffffef
nop dword [rax + rax]
cmp rdi, 8
ja 0x46e582
lea rcx, [0x017ad240]
jmp qword [rcx + rdi*8]
lea rdi, [rsi + 0x30]
test rdx, rdx
jne 0x46e599
test rdi, rdi
je 0x46e620
test rdx, rdx
je 0x46e59e
test rdi, rdi
jne 0x46e5a9
xor eax, eax
add rsp, 0x118
pop rbp
ret
mov qword [rsp + 0xa0], rdi
mov ebx, dword [rdx]
call fcn.0046d560
call fcn.00401e20
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0xc0], rax
mov rcx, qword [rsp + 0xa0]
mov ecx, dword [rcx]
mov rax, qword [rsp + 0x130]
mov ebx, ecx
nop
call fcn.0046d560
call fcn.00401e20
mov rcx, qword [rsp + 0x40]
cmp rbx, rcx
jne 0x46e92a
mov rbx, rax
mov rax, qword [rsp + 0xc0]
call fcn.00406a80
test al, al
je 0x46e92a
mov rax, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x130]
movzx edx, byte [rsp + 0x1e]
test dl, dl
je 0x46e63c
cmp dl, 0x10
ja 0x46e63c
mov eax, 1
add rsp, 0x118
pop rbp
ret
movzx edx, byte [rsp + 0x1f]
and edx, 0x1f
add rdx, 0xffffffffffffffef
cmp rdx, 9
ja 0x46ef20
lea rcx, [0x017af220]
jmp qword [rcx + rdx*8]
xor eax, eax
add rsp, 0x118
pop rbp
ret
xor eax, eax
add rsp, 0x118
pop rbp
nop
ret
xor eax, eax
add rsp, 0x118
pop rbp
ret
mov eax, 1
add rsp, 0x118
pop rbp
ret
mov eax, 1
add rsp, 0x118
pop rbp
ret
call fcn.00441a60
lea rax, [0x010b082b]
mov ebx, 0x1e
call fcn.004422e0
movzx eax, byte [rsp + 0x1f]
and eax, 0x1f
nop
call fcn.00442020
call fcn.00441ca0
call fcn.00441ac0
lea rax, [0x010ae318]
mov ebx, 0x1d
nop dword [rax + rax]
call fcn.0043ffc0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
call fcn.00477be0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.0046e380