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

Disassembly:
lea r12, [rsp - 0xf8]
cmp r12, qword [r14 + 0x10]
jbe 0x62c5d0
push rbp
mov rbp, rsp
sub rsp, 0x170
movq qword [rsp + 0x168], xmm15
mov byte [rsp + 0x47], 0
movups xmmword [rsp + 0x90], xmm15
cmp byte [rax + 0xb0], 0
jne 0x62bb08
cmp qword [rax + 0xc0], 0
jge 0x62bb2f
mov rax, qword [0x008be150]
mov rbx, qword [0x008be158]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rbx
add rsp, 0x170
pop rbp
ret
mov qword [rsp + 0x180], rax
mov qword [rsp + 0x188], rbx
mov rax, rbx
call fcn.006329e0
test al, al
jne 0x62bd32
mov rax, qword [rsp + 0x188]
call fcn.00636720
nop
xor eax, eax
mov rcx, qword [rsp + 0x180]
mov edx, 1
lock cmpxchg dword [rcx], edx
sete dl
test dl, dl
jne 0x62bb87
mov rax, rcx
call fcn.00480e60
mov rcx, qword [rsp + 0x180]
movups xmmword [rsp + 0xa0], xmm15
lea rsi, [0x0062c600]
mov qword [rsp + 0xa0], rsi
mov qword [rsp + 0xa8], rcx
lea rsi, [rsp + 0xa0]
mov qword [rsp + 0x168], rsi
mov byte [rsp + 0x47], 1
mov rsi, qword [rsp + 0x188]
cmp qword [rsi], 0
jne 0x62bbce
xor edx, edx
jmp 0x62bc00
mov rbx, qword [rcx + 0x28]
lea rax, [0x0066ae80]
mov rcx, rsi
nop dword [rax]
call fcn.004112a0
cmp qword [rax], 0
setne dl
mov rcx, qword [rsp + 0x180]
mov rsi, qword [rsp + 0x188]
nop dword [rax]
test dl, dl
jne 0x62bcfe
mov rdx, qword [rsi + 0x18]
mov qword [rsp + 0xf8], rdx
movups xmm0, xmmword [rsi + 0x20]
movups xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rsi + 0x30]
movups xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rsi + 0x40]
movups xmmword [rsp + 0x120], xmm0
movups xmmword [rsp + 0x130], xmm15
movups xmmword [rsp + 0x138], xmm15
movups xmmword [rsp + 0x148], xmm15
movups xmmword [rsp + 0x158], xmm15
mov rbx, qword [rcx + 0x18]
lea rax, [0x0066ae20]
lea rcx, [rsp + 0xf8]
call fcn.0040e7c0
mov rdx, qword [rax]
mov qword [rsp + 0x130], rdx
movups xmm0, xmmword [rax + 8]
movups xmmword [rsp + 0x138], xmm0
movups xmm0, xmmword [rax + 0x18]
movups xmmword [rsp + 0x148], xmm0
movups xmm0, xmmword [rax + 0x28]
movups xmmword [rsp + 0x158], xmm0
mov rdx, qword [rsp + 0x130]
mov qword [rsp + 0xc0], rdx
movups xmm0, xmmword [rsp + 0x138]
movups xmmword [rsp + 0xc8], xmm0
movups xmm0, xmmword [rsp + 0x148]
movups xmmword [rsp + 0xd8], xmm0
movups xmm0, xmmword [rsp + 0x158]
movups xmmword [rsp + 0xe8], xmm0
test bl, bl
je 0x62bd59
mov rbx, qword [rsp + 0x188]
cmp qword [rbx], 0
jne 0x62c4bd
jmp 0x62c286
movups xmmword [rsp + 0x90], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
mov rax, qword [0x008be160]
mov rbx, qword [0x008be168]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rbx
add rsp, 0x170
pop rbp
ret
mov rsi, qword [rsp + 0x180]
cmp byte [rsi + 8], 0
jne 0x62be57
cmp qword [rsi + 0x10], 0
jne 0x62bdab
call fcn.0040e100
cmp dword [0x00921500], 0
nop
jne 0x62bd8c
mov rdx, qword [rsp + 0x180]
jmp 0x62bda4
call fcn.004665c0
mov qword [r11], rax
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rdx + 0x10]
mov qword [r11 + 8], rsi
mov qword [rdx + 0x10], rax
mov rsi, rdx
mov rbx, qword [rsi + 0x10]
lea rax, [0x0066adc0]
lea rcx, [rsp + 0xf8]
nop
call fcn.0040e5a0
mov rbx, qword [rax + 8]
mov rdx, qword [rsp + 0x180]
mov rsi, qword [rdx + 0xc0]
mov rcx, qword [rax + 0x10]
test rsi, rsi
mov edi, 2
cmovne rdi, rsi
cmp rbx, rdi
jge 0x62be0e
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x50], rbx
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
mov r8, qword [rsp + 0x188]
xor esi, esi
jmp 0x62bea4
mov rax, qword [0x008be190]
mov rcx, qword [0x008be198]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
mov rax, qword [0x008be170]
mov rcx, qword [0x008be178]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
nop
ret
inc rsi
cmp rsi, rbx
jge 0x62bf1e
mov r9, qword [rax + rsi*8]
cmp r9, r8
jne 0x62bea1
mov qword [rsp + 0x68], rsi
movups xmmword [rsp + 0xb0], xmm15
lea rdx, [0x006a2280]
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xb8], r8
lea rax, [0x006ba379]
mov ebx, 0x1d
lea rcx, [rsp + 0xb0]
mov edi, 1
mov rsi, rdi
call fcn.005e76a0
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x68]
mov r8, qword [rsp + 0x188]
jmp 0x62bea1
inc rbx
cmp rcx, rbx
jae 0x62bf47
mov edi, 1
lea rsi, [0x006a2280]
call fcn.0044b880
mov rdx, qword [rsp + 0x180]
mov r8, qword [rsp + 0x188]
mov qword [rsp + 0x68], rcx
cmp dword [0x00921500], 0
je 0x62bf66
call fcn.004665c0
mov qword [r11], r8
mov rsi, qword [rax + rbx*8 - 8]
mov qword [r11 + 8], rsi
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x60], rbx
mov qword [rax + rbx*8 - 8], r8
mov rsi, qword [rdx + 0x10]
lea rcx, [rsp + 0xf8]
lea rax, [0x0066adc0]
mov rbx, rsi
call fcn.0040ebc0
mov rdx, qword [rsp + 0x60]
mov qword [rax + 8], rdx
mov rdx, qword [rsp + 0x68]
mov qword [rax + 0x10], rdx
cmp dword [0x00921500], 0
jne 0x62bfb8
mov rcx, qword [rsp + 0x88]
jmp 0x62bfcf
call fcn.004665c0
mov rcx, qword [rsp + 0x88]
mov qword [r11], rcx
mov rdx, qword [rax]
mov qword [r11 + 8], rdx
mov qword [rax], rcx
mov rax, qword [rsp + 0x180]
lea rcx, [rax + 0x20]
mov rbx, qword [rsp + 0x188]
mov rax, rcx
call fcn.00637500
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rcx + 0xb8]
nop dword [rax]
test rdx, rdx
je 0x62c123
mov rsi, qword [rcx + 0x28]
test rsi, rsi
je 0x62c017
mov rsi, qword [rsi]
jmp 0x62c020
xor esi, esi
nop dword [rax]
cmp rsi, rdx
jle 0x62c123
mov rdx, qword [rcx + 0x20]
nop
cmp qword [rdx + 0x28], 0
jne 0x62c039
xor esi, esi
jmp 0x62c03d
mov rsi, qword [rdx + 8]
mov rax, qword [rsi + 0x18]
mov rdi, qword [rsi + 0x20]
lea rbx, [0x006a2280]
cmp rax, rbx
jne 0x62c272
nop
cmp qword [rsi + 0x10], rdx
jne 0x62c0d0
mov r8, qword [rsi + 8]
test byte [r8], al
nop
mov r9, qword [rsi]
cmp dword [0x00921500], 0
je 0x62c07f
call fcn.004665c0
mov qword [r11], r9
mov r10, qword [r8]
mov qword [r11 + 8], r10
mov qword [r8], r9
mov r8, qword [rsi]
test byte [r8], al
mov r9, qword [rsi + 8]
cmp dword [0x00921500], 0
je 0x62c0bc
call fcn.00466620
mov qword [r11], r9
mov r10, qword [r8 + 8]
mov qword [r11 + 8], r10
mov r10, qword [rsi]
mov qword [r11 + 0x10], r10
mov r10, qword [rsi + 8]
mov qword [r11 + 0x18], r10
mov r10, qword [rsi + 0x10]
mov qword [r11 + 0x20], r10
mov qword [r8 + 8], r9
movups xmmword [rsi], xmm15
mov qword [rsi + 0x10], 0
dec qword [rdx + 0x28]
mov qword [rsp + 0x80], rdi
mov rbx, qword [rcx + 0x28]
lea rax, [0x0066ae80]
mov rcx, rdi
call fcn.00411c40
mov rbx, qword [0x008be180]
mov rcx, qword [0x008be188]
mov rax, qword [rsp + 0x80]
call fcn.006367c0
mov rax, qword [rsp + 0x180]
mov rbx, qword [rsp + 0x80]
call fcn.0062cf40
mov rcx, qword [rsp + 0x180]
mov rbx, qword [rcx + 0xd0]
test rbx, rbx
jle 0x62c1f3
mov rdx, qword [rsp + 0x188]
cmp qword [rdx], 0
nop
jne 0x62c200
mov rax, qword [rdx + 0xd0]
test rax, rax
je 0x62c165
call fcn.004cd140
mov rcx, qword [rsp + 0x188]
nop
jmp 0x62c200
lea rax, [0x00678080]
call fcn.0040d680
lea rcx, [0x0063df60]
mov qword [rax], rcx
cmp dword [0x00921500], 0
jne 0x62c18e
mov rcx, qword [rsp + 0x188]
jmp 0x62c19e
call fcn.004665a0
mov rcx, qword [rsp + 0x188]
mov qword [r11], rcx
mov qword [rax + 8], rcx
mov rdx, qword [rsp + 0x180]
mov rdx, qword [rdx + 0xd0]
mov rbx, rax
mov rax, rdx
call fcn.004cd260
cmp dword [0x00921500], 0
jne 0x62c1cf
mov rcx, qword [rsp + 0x188]
jmp 0x62c1ea
call fcn.004665c0
mov qword [r11], rax
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rcx + 0xd0]
mov qword [r11 + 8], rdx
mov qword [rcx + 0xd0], rax
jmp 0x62c200
mov rdx, qword [rsp + 0x188]
nop dword [rax + rax]
call fcn.004ce6c0
mov rdx, qword [rsp + 0x188]
mov qword [rdx + 0xb8], rax
mov qword [rdx + 0xc0], rbx
cmp dword [0x00921500], 0
je 0x62c237
call fcn.004665c0
mov qword [r11], rcx
mov rax, qword [rdx + 0xc8]
mov qword [r11 + 8], rax
mov qword [rdx + 0xc8], rcx
movups xmmword [rsp + 0x90], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
lea rcx, [0x00665260]
call fcn.0040aa60
mov rbx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd8]
mov r8, rdx
sub rdx, rsi
mov r9, qword [rsp + 0xe8]
add rdx, r9
test rdx, rdx
jle 0x62c39e
mov qword [rsp + 0x48], rdx
cmp r8, rsi
jg 0x62c327
test r9, r9
jne 0x62c2c7
xor r8d, r8d
jmp 0x62c37a
mov rsi, qword [rsp + 0xc0]
mov r8, qword [rsp + 0xd0]
mov r10, qword [rsp + 0xf0]
mov r11, qword [rsp + 0xe0]
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], r10
mov qword [rsp + 0xc0], r11
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], r8
mov qword [rsp + 0xe0], rsi
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xd8]
nop word [rax + rax]
cmp rcx, rax
jbe 0x62c4a4
mov rsi, qword [rsp + 0xc0]
mov r8, qword [rsi + rax*8]
cmp dword [0x00921500], 0
je 0x62c36a
mov r9, qword [rsi + rax*8]
call fcn.004665a0
mov qword [r11], r9
mov qword [rsi + rax*8], 0
inc qword [rsp + 0xd8]
mov rax, r8
xor ecx, ecx
xor edi, edi
call fcn.0062d820
test al, al
je 0x62c27e
mov rdx, qword [rsp + 0x48]
test rdx, rdx
mov rbx, qword [rsp + 0x188]
setg dl
mov byte [rsp + 0x46], dl
mov rsi, qword [rsp + 0xc8]
sub rsi, qword [rsp + 0xd8]
add rsi, qword [rsp + 0xe8]
nop dword [rax]
test rsi, rsi
jne 0x62c3e7
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rdx + 0x18]
lea rax, [0x0066ae20]
lea rcx, [rsp + 0xf8]
call fcn.0040f100
jmp 0x62c462
mov rdx, qword [rsp + 0x180]
mov rbx, qword [rdx + 0x18]
lea rax, [0x0066ae20]
lea rcx, [rsp + 0xf8]
call fcn.0040ebc0
test byte [rax], al
cmp dword [0x00921500], 0
je 0x62c433
mov qword [rsp + 0x78], rax
mov rbx, rax
lea rcx, [rsp + 0xc0]
lea rax, [0x00686ca0]
call fcn.00413880
mov rax, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xc0]
mov qword [rax], rsi
movups xmm0, xmmword [rsp + 0xc8]
movups xmmword [rax + 8], xmm0
movups xmm0, xmmword [rsp + 0xd8]
movups xmmword [rax + 0x18], xmm0
movups xmm0, xmmword [rsp + 0xe8]
movups xmmword [rax + 0x28], xmm0
movzx esi, byte [rsp + 0x46]
test sil, sil
je 0x62bd59
movups xmmword [rsp + 0x90], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x168]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0x98]
mov rax, qword [rsp + 0x90]
add rsp, 0x170
pop rbp
ret
call fcn.00466960
mov rax, rsi
xor ecx, ecx
xor edi, edi
call fcn.0062d820
mov rbx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd8]
mov r8, rdx
sub rdx, rsi
mov r9, qword [rsp + 0xe8]
add rdx, r9
nop
test rdx, rdx
jle 0x62c5a5
cmp rsi, r8
jl 0x62c557
test r9, r9
jne 0x62c4f7
xor esi, esi
jmp 0x62c4a9
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xf0]
mov r10, qword [rsp + 0xe0]
mov qword [rsp + 0xc8], r9
mov qword [rsp + 0xd0], r8
mov qword [rsp + 0xc0], r10
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xe0], rdx
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0xd8]
cmp rcx, rax
jbe 0x62c5ac
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rdx + rax*8]
cmp dword [0x00921500], 0
nop
je 0x62c58e
mov r8, qword [rdx + rax*8]
call fcn.004665a0
mov qword [r11], r8
mov qword [rdx + rax*8], 0
inc qword [rsp + 0xd8]
nop
jmp 0x62c4a9
xor edx, edx
jmp 0x62c3a1
call fcn.00466960
nop
call fcn.00435fa0
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x98]
add rsp, 0x170
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.004646a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.0062bac0