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

Disassembly:
lea r12, [rsp - 0x80]
cmp r12, qword [r14 + 0x10]
jbe 0x6976b0
sub rsp, 0x100
mov qword [rsp + 0xf8], rbp
lea rbp, [rsp + 0xf8]
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x118], rcx
movups xmmword [rsp + 0xa8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
lea rsi, [0x007f0af0]
mov qword [rsp + 0xb0], rsi
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
nop dword [rax]
call fcn.004cdee0
lea rax, [0x006b2520]
call fcn.0040daa0
mov rdx, qword [rsp + 0x90]
lea rsi, [0x006b2320]
cmp rdx, rsi
jne 0x696f2f
mov rcx, qword [rsp + 0x118]
jmp 0x696f31
xor ecx, ecx
test rcx, rcx
je 0x6970a2
cmp qword [rcx], 1
nop
jge 0x696f4f
movabs rdx, 0x4e94914f0000
mov qword [rcx], rdx
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x80], rcx
cmp qword [rcx + 0x10], 0
jne 0x696fb2
lea rax, [0x006b9300]
mov ebx, 1
call fcn.00405660
cmp dword [0x00a04ed0], 0
nop
jne 0x696f90
mov rcx, qword [rsp + 0x80]
mov qword [rcx + 0x10], rax
jmp 0x696faa
mov rdi, qword [rsp + 0x80]
lea rcx, [rdi + 0x10]
mov rdx, rdi
mov rdi, rcx
call fcn.00465a20
mov rcx, rdx
mov rax, qword [rsp + 0xa0]
cmp qword [rcx + 8], 0
jne 0x696ff8
lea rax, [0x006b9280]
xor ebx, ebx
call fcn.00405660
cmp dword [0x00a04ed0], 0
jne 0x696fde
mov rcx, qword [rsp + 0x80]
mov qword [rcx + 8], rax
jmp 0x696ff8
mov rdi, qword [rsp + 0x80]
lea rcx, [rdi + 8]
mov rdx, rdi
mov rdi, rcx
call fcn.00465a20
mov rcx, rdx
lea rax, [0x006e8e00]
nop
call fcn.0040daa0
lea rcx, [0x006976e0]
mov qword [rax], rcx
cmp dword [0x00a04ed0], 0
jne 0x697032
mov rcx, qword [rsp + 0x80]
mov qword [rax + 8], rcx
mov rdx, qword [rsp + 0xa0]
mov qword [rax + 0x10], rdx
jmp 0x697056
lea rdi, [rax + 8]
mov rcx, qword [rsp + 0x80]
nop
call fcn.00465b20
lea rdi, [rax + 0x10]
mov rdx, qword [rsp + 0xa0]
call fcn.00465b40
call fcn.00441b00
movups xmmword [rsp + 0xa8], xmm15
lea rcx, [0x006bb4c0]
mov qword [rsp + 0xa8], rcx
lea rdx, [0x007f0b00]
mov qword [rsp + 0xb0], rdx
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
call fcn.004cdee0
xor eax, eax
xor ecx, ecx
xor edx, edx
xor ebx, ebx
nop
jmp 0x6970d3
lea rax, [0x0072b2bf]
mov ebx, 0x29
xor ecx, ecx
xor edi, edi
mov rsi, rdi
call fcn.004c2160
mov rbp, qword [rsp + 0xf8]
add rsp, 0x100
ret
mov rdi, rcx
mov rcx, rdx
mov rdx, rdi
test al, al
jne 0x6974c4
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x48], rcx
mov byte [rsp + 0x37], al
mov qword [rsp + 0x50], rdx
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rcx + 8]
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x98], 0
mov rax, qword [rcx]
call fcn.004af940
mov rcx, qword [rax]
movups xmmword [rsp + 0xb8], xmm15
movups xmmword [rsp + 0xc8], xmm15
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0xc8], rdx
lea rdx, [rsp + 0x98]
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0xb8], rcx
lea rax, [rsp + 0xb8]
lea rbx, [rsp + 0x58]
xor ecx, ecx
xor edi, edi
mov esi, 2
mov r8d, 1
call fcn.004476c0
test rax, rax
je 0x697484
mov rdx, qword [rsp + 0x98]
cmp dword [0x00a04ed0], 0
jne 0x69719b
mov rsi, qword [rsp + 0xa0]
mov qword [rsi], rdx
jmp 0x6971ab
mov rdi, qword [rsp + 0xa0]
call fcn.00465b40
mov rsi, rdi
movzx edi, byte [rdx]
cmp dil, 2
ja 0x697246
cmp dil, 1
je 0x6971cf
nop
cmp dil, 2
jne 0x697256
jmp 0x697326
movups xmmword [rsp + 0xa8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
lea rsi, [0x007f0b20]
mov qword [rsp + 0xb0], rsi
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
call fcn.004cdee0
mov rdx, qword [rsp + 0x80]
mov rax, qword [rdx + 0x10]
lea rbx, [0x007ee948]
nop
call fcn.00405840
mov rsi, qword [rsp + 0xa0]
mov eax, 1
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
jmp 0x6970ca
cmp dil, 3
je 0x69726f
cmp dil, 4
je 0x6973a5
movzx eax, byte [rsp + 0x37]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
jmp 0x6970ca
mov rdi, qword [rdx + 0x10]
mov rax, qword [rdx + 8]
lea rbx, [0x006b61a0]
nop
cmp rax, rbx
jne 0x6976a3
mov rax, qword [rdi]
mov qword [rsp + 0x78], rax
mov rbx, qword [rdi + 8]
mov qword [rsp + 0x48], rbx
mov rcx, qword [rdi + 0x10]
mov qword [rsp + 0x50], rcx
movups xmmword [rsp + 0xd8], xmm15
movups xmmword [rsp + 0xe8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xd8], rdx
lea rsi, [0x007f0b10]
mov qword [rsp + 0xe0], rsi
call fcn.0040b1a0
lea rdx, [0x006b61a0]
mov qword [rsp + 0xe8], rdx
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0xd8]
mov ebx, 2
mov rcx, rbx
nop
call fcn.004cdee0
mov rsi, qword [rsp + 0xa0]
movzx eax, byte [rsp + 0x37]
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x78]
jmp 0x6970ca
movups xmmword [rsp + 0xa8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
lea rdx, [0x007f0b30]
mov qword [rsp + 0xb0], rdx
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
nop dword [rax]
call fcn.004cdee0
mov rdx, qword [rsp + 0x80]
mov rax, qword [rdx + 0x10]
lea rbx, [0x007ee948]
call fcn.00405840
lea rax, [0x0071ca54]
mov ebx, 0xd
xor ecx, ecx
xor edi, edi
mov rsi, rdi
call fcn.004c2160
mov rbp, qword [rsp + 0xf8]
add rsp, 0x100
ret
movups xmmword [rsp + 0xa8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
lea rsi, [0x007f0b40]
mov qword [rsp + 0xb0], rsi
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
nop dword [rax]
call fcn.004cdee0
mov rdx, qword [rsp + 0xa0]
mov rdx, qword [rdx]
mov rbx, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
lea rax, [0x006d3680]
nop
call fcn.0040b500
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x70], rbx
mov rdx, qword [rax + 0x18]
mov rax, rbx
call rdx
movups xmmword [rsp + 0xa8], xmm15
call fcn.0040b100
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rax
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
call fcn.004cdee0
mov rdx, qword [rsp + 0x80]
mov rax, qword [rdx + 0x10]
lea rbx, [0x007ee948]
call fcn.00405840
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0xf8]
add rsp, 0x100
ret
mov rcx, qword [rsp + 0x80]
mov rax, qword [rcx + 0x10]
lea rbx, [0x007ee948]
call fcn.00405840
lea rax, [0x00720575]
mov ebx, 0x14
xor ecx, ecx
xor edi, edi
mov rsi, rdi
call fcn.004c2160
mov rbp, qword [rsp + 0xf8]
add rsp, 0x100
ret
mov rax, rbx
mov rbx, rcx
mov rcx, rdx
call fcn.00654500
mov qword [rsp + 0x60], rax
lea rax, [0x006f8240]
nop
call fcn.0040daa0
lea rdx, [0x007f3070]
mov qword [rax + 0x18], rdx
cmp dword [0x00a04ed0], 0
jne 0x697504
mov rdx, qword [rsp + 0x60]
mov qword [rax + 0x20], rdx
jmp 0x697512
lea rdi, [rax + 0x20]
mov rdx, qword [rsp + 0x60]
call fcn.00465b40
mov rsi, qword [0x009a36d8]
mov r8, qword [0x009a36d0]
mov qword [rax], r8
cmp dword [0x00a04ed0], 0
jne 0x697532
mov qword [rax + 8], rsi
jmp 0x69753b
lea rdi, [rax + 8]
call fcn.00465b80
mov rdi, qword [rsp + 0x108]
test byte [rdi], al
cmp dword [0x00a04ed0], 0
jne 0x697557
mov qword [rdi], rax
mov qword [rdi + 8], rdx
jmp 0x697568
call fcn.00465a20
lea rsi, [rdi + 8]
mov rdi, rsi
call fcn.00465b40
movups xmmword [rsp + 0xa8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
lea rsi, [0x007f0b50]
mov qword [rsp + 0xb0], rsi
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
nop
call fcn.004cdee0
mov rdx, qword [rsp + 0x80]
mov rax, qword [rdx + 0x10]
lea rbx, [0x007ee948]
call fcn.00405840
movups xmmword [rsp + 0xa8], xmm15
lea rdx, [0x006bb4c0]
mov qword [rsp + 0xa8], rdx
lea rdx, [0x007f0b60]
mov qword [rsp + 0xb0], rdx
lea rax, [rsp + 0xa8]
mov ebx, 1
mov rcx, rbx
call fcn.004cdee0
mov rax, qword [rsp + 0x108]
call fcn.006982e0
test rax, rax
je 0x69768f
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x38], rax
lea rax, [0x006ec6c0]
call fcn.0040daa0
mov qword [rax + 8], 0x1b
lea rcx, [0x00724413]
mov qword [rax], rcx
mov qword [rax + 0x18], 0xa
lea rcx, [0x0071b3db]
mov qword [rax + 0x10], rcx
mov rcx, qword [rsp + 0x38]
mov qword [rax + 0x20], rcx
cmp dword [0x00a04ed0], 0
jne 0x697667
mov rcx, qword [rsp + 0x68]
mov qword [rax + 0x28], rcx
jmp 0x697675
lea rdi, [rax + 0x28]
mov rcx, qword [rsp + 0x68]
call fcn.00465b20
mov rbx, rax
lea rax, [0x007f1cc0]
mov rbp, qword [rsp + 0xf8]
add rsp, 0x100
ret
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xf8]
add rsp, 0x100
ret
lea rcx, [0x006c4820]
call fcn.0040acc0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
nop
call fcn.00463860
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
jmp fcn.00696e80