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

Disassembly:
lea r12, [rsp - 0x50]
cmp r12, qword [r14 + 0x10]
jbe 0x418adc
sub rsp, 0xd0
mov qword [rsp + 0xc8], rbp
lea rbp, [rsp + 0xc8]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rcx
mov qword [rsp + 0xf0], rdi
cmp dword [0x008f3050], 0
je 0x41847f
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
mov rax, qword [rsp + 0xd8]
test rax, rax
je 0x418aca
movzx ecx, byte [rax + 0x17]
and ecx, 0x1f
nop word [rax + rax]
cmp cl, 0x16
jne 0x418a96
cmp qword [rax + 0x30], 0
je 0x418a85
mov qword [rsp + 0x78], rax
mov rax, rbx
nop dword [rax]
call fcn.00404400
test al, al
jne 0x418a73
mov rax, qword [rsp + 0xe0]
xor ebx, ebx
mov rcx, rbx
call fcn.00414540
nop
test rax, rax
jne 0x418515
mov rcx, qword [rsp + 0xe0]
lea rdx, [0x008f2a98]
cmp rcx, rdx
je 0x418505
lea rax, [0x0086af80]
jmp 0x4189f8
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
mov rcx, qword [rsp + 0xe0]
mov rdx, rcx
cmp rax, rcx
je 0x418551
mov rax, qword [rsp + 0x78]
mov rsi, qword [rax + 0x30]
test rsi, rsi
je 0x4189dd
cmp qword [rsi + 8], 0
nop dword [rax]
jne 0x4189dd
cmp qword [rsi], 0x10
jb 0x418556
jmp 0x4189dd
mov rax, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xe8]
nop
test rsi, rsi
je 0x418750
movzx edi, byte [rsi + 0x17]
and edi, 0x1f
cmp dil, 0x13
jne 0x4189aa
mov qword [rsp + 0x68], rsi
movzx edi, word [rsi + 0x32]
test di, 0x8000
jne 0x41893e
cmp word [rsi + 0x30], 1
jne 0x4188ea
movzx edi, byte [rsi + 0x14]
nop dword [rax]
test dil, 1
je 0x4185ad
mov ecx, 0x48
jmp 0x4185b2
mov ecx, 0x38
mov rdi, qword [rsi + rcx]
mov qword [rsp + 0x70], rdi
nop dword [rax + rax]
cmp rdi, rax
je 0x4186fd
movzx r8d, byte [rdi + 0x17]
and r8d, 0x1f
cmp r8b, 0x16
jne 0x4186c0
movzx edx, byte [rdi + 0x14]
test dl, 1
jne 0x4185e9
xor edx, edx
jmp 0x41862c
mov ecx, 5
lea rdx, [0x0071bd40]
jmp qword [rdx + rcx*8]
test rdx, rdx
je 0x418695
movzx edx, byte [rax + 0x14]
test dl, 1
jne 0x41863e
xor edx, edx
jmp 0x41868d
movzx edx, byte [rax + 0x17]
and edx, 0x1f
add rdx, 0xffffffffffffffef
cmp rdx, 8
ja 0x418689
lea rcx, [0x0071bda0]
jmp qword [rcx + rdx*8]
lea rdx, [rax + 0x30]
test rdx, rdx
sete dl
jmp 0x4186a0
mov edx, 1
nop word [rax + rax]
test dl, dl
je 0x41888e
mov rdx, qword [rdi + 0x30]
cmp qword [rax + 0x30], rdx
je 0x4186fd
jmp 0x41888e
cmp r8b, 0x14
jne 0x41888e
cmp qword [rdi + 0x40], 0
je 0x4186fd
mov rbx, qword [rsp + 0xd8]
mov rax, rdi
mov rcx, rdx
nop
call fcn.0040b3c0
test rax, rax
je 0x41888e
mov rax, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
movzx edx, byte [rsi + 0x14]
test dl, 1
je 0x41870d
mov ecx, 0x48
jmp 0x418712
mov ecx, 0x38
movzx edx, word [rsi + 0x32]
and edx, 0x7fff
movzx ebx, word [rsi + 0x30]
add edx, ebx
add rsi, rcx
movzx ecx, dx
cmp rbx, rcx
ja 0x418887
sub rcx, rbx
lea rdx, [rbx - 0x100000]
shl rbx, 3
sar rdx, 0x3f
and rbx, rdx
lea rdx, [rsi + rbx]
xor ebx, ebx
xor esi, esi
jmp 0x4187c8
movups xmmword [rsp + 0x88], xmm15
lea rax, [0x00418b80]
mov qword [rsp + 0x88], rax
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x88]
mov qword [rsp], rax
call fcn.004631a0
xorps xmm15, xmm15
mov r14, qword [0x008f2a80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
mov r8, qword [rdx + rbx*8]
inc rbx
movzx r9d, byte [r8 + 0x15]
lea rsi, [rsi + r9]
lea rsi, [rsi - 1]
neg r9
and rsi, r9
add rsi, qword [r8]
cmp rbx, rcx
jl 0x4187ab
mov qword [rsp + 0x58], rsi
call fcn.00417ec0
movups xmmword [rsp + 0x98], xmm15
movups xmmword [rsp + 0xa8], xmm15
movups xmmword [rsp + 0xb8], xmm15
lea rax, [0x00418b20]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0xd8]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0xe8]
mov qword [rsp + 0xa8], rax
mov rax, qword [rsp + 0x58]
add rax, 7
and rax, 0xfffffffffffffff8
mov qword [rsp + 0xb0], rax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xc0], rax
lea rax, [rsp + 0x98]
mov qword [rsp], rax
nop dword [rax]
call fcn.004631a0
xorps xmm15, xmm15
mov r14, qword [0x008f2a80]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
mov eax, ebx
call fcn.00465a00
mov rax, qword [rsp + 0x78]
call fcn.0045afe0
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x60], rbx
mov rax, qword [rsp + 0x68]
call fcn.0045afe0
mov ecx, 0x22
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x60]
lea r8, [0x006a6e9a]
mov r9d, 0xe
mov r10, rax
mov r11, rbx
xor eax, eax
lea rbx, [0x006b00ee]
nop dword [rax]
call fcn.0044e8e0
call fcn.00436bc0
call fcn.0045afe0
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x60], rbx
mov rax, qword [rsp + 0x68]
call fcn.0045afe0
mov ecx, 0x22
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x60]
lea r8, [0x006a6e9a]
mov r9d, 0xe
mov r10, rax
mov r11, rbx
xor eax, eax
lea rbx, [0x006b00ee]
call fcn.0044e8e0
call fcn.00436bc0
nop
call fcn.0045afe0
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x60], rbx
mov rax, qword [rsp + 0x68]
call fcn.0045afe0
lea rcx, [0x006a8558]
mov qword [rsp], rcx
mov qword [rsp + 8], 0x12
mov ecx, 0x22
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x60]
lea r8, [0x006a6e9a]
mov r9d, 0xe
mov r10, rax
mov r11, rbx
xor eax, eax
lea rbx, [0x006b00ee]
nop
call fcn.0044e9e0
call fcn.00436bc0
mov rax, rsi
call fcn.0045afe0
mov ecx, 0x29
mov rdi, rax
mov rsi, rbx
lea r8, [0x006a792c]
mov r9d, 0x10
xor eax, eax
lea rbx, [0x006b2adf]
call fcn.0044e800
call fcn.00436bc0
lea rax, [0x006b76dd]
mov ebx, 0x41
call fcn.00436bc0
mov rax, qword [rax + 0x230]
mov rcx, rdx
test rax, rax
je 0x418a62
mov rdx, rcx
cmp qword [rax + 0xc0], rcx
ja 0x418a12
cmp qword [rax + 0xc8], rcx
ja 0x418a52
cmp qword [rax + 0xd0], rcx
ja 0x418a29
nop dword [rax + rax]
cmp qword [rax + 0xd8], rcx
ja 0x418a52
cmp qword [rax + 0xe0], rcx
ja 0x418a40
cmp qword [rax + 0xe8], rcx
ja 0x418a52
nop dword [rax + rax]
cmp qword [rax + 0xf0], rcx
ja 0x4189ee
cmp qword [rax + 0xf8], rcx
jbe 0x4189ee
mov rbp, qword [rsp + 0xc8]
add rsp, 0xd0
ret
lea rax, [0x006b59d9]
mov ebx, 0x34
call fcn.00436bc0
lea rax, [0x006b7558]
mov ebx, 0x40
nop
call fcn.00436bc0
lea rax, [0x006a720c]
mov ebx, 0xe
call fcn.00436bc0
call fcn.0045afe0
mov ecx, 0x28
mov rdi, rax
mov rsi, rbx
lea r8, [0x006a6a10]
mov r9d, 0xd
xor eax, eax
lea rbx, [0x006b25c9]
nop dword [rax]
call fcn.0044e800
call fcn.00436bc0
lea rax, [0x006b3370]
mov ebx, 0x2b
call fcn.00436bc0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.004632e0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.00418420