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

Disassembly:
lea r12, [rsp - 0x128]
cmp r12, qword [r14 + 0x10]
jbe 0x456668
push rbp
mov rbp, rsp
sub rsp, 0x1a0
mov rcx, qword [r14 + 0x30]
mov rdx, qword [rcx + 0x18]
mov rsi, rdx
cmp qword [rdx + 0x10], 0xfffffffffffffb2e
je 0x456656
mov qword [rsp + 0xc0], r14
mov rax, qword [rcx + 0x90]
mov qword [rsp + 0xf0], rax
cmp rdx, rax
jne 0x45650e
cmp byte [rax + 0xb7], 0
nop dword [rax]
jne 0x4561de
mov rdx, qword [rcx + 8]
mov qword [rsp + 0xf8], rdx
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x100], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsp + 0x110], xmm0
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rsp + 0x120], xmm0
mov rcx, qword [r14 + 0x30]
mov qword [rcx + 0x10], 0
mov rcx, qword [r14 + 0x30]
mov qword [rcx + 0x30], 0
mov rcx, qword [r14 + 0x30]
mov qword [rcx + 8], 0
mov rcx, qword [r14 + 0x30]
mov qword [rcx + 0x18], 0
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0xb8], rcx
cmp rcx, 0xfffffffffffffade
jne 0x455bc7
mov rdx, qword [r14 + 0x30]
cmp dword [rdx + 0xd8], 0
jne 0x455b88
cmp dword [rdx + 0xc0], 0
jne 0x455b88
cmp qword [rdx + 0xd0], 0
jne 0x455b88
mov rdx, qword [rdx + 0xa0]
cmp dword [rdx + 4], 1
je 0x455bc7
mov rcx, qword [rax]
add rcx, 0x13a0
mov qword [rax + 0x10], rcx
lea rcx, [rax + 0x38]
mov qword [rsp], rcx
nop
call fcn.00470400
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rax]
test rdx, rdx
je 0x4561cd
mov rsi, qword [rax + 0x38]
lea rdi, [rsi - 8]
mov qword [rsp + 0x30], rdi
cmp rdx, rdi
jbe 0x455dc0
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xa8], rsi
mov rcx, qword [rax + 8]
mov qword [rsp + 0xa0], rcx
mov rdx, qword [rsp + 0x100]
mov qword [rsp + 0x98], rdx
mov rbx, qword [rsp + 0xf8]
mov qword [rsp + 0x90], rbx
mov rsi, qword [rsp + 0x120]
mov qword [rsp + 0x88], rsi
mov rdi, qword [rax + 0x40]
mov qword [rsp + 0x80], rdi
mov r8, qword [rax + 0x60]
mov qword [rsp + 0x78], r8
mov r9, qword [rax + 0x50]
mov qword [rsp + 0xe8], r9
call fcn.0043f620
lea rax, [0x010427ec]
mov ebx, 0x15
call fcn.0043fea0
mov rax, qword [rsp + 0x30]
call fcn.0043fd20
lea rax, [0x01032d45]
mov ebx, 8
call fcn.0043fea0
mov rax, qword [rsp + 0xb0]
call fcn.0043fd20
lea rax, [0x0102beaf]
mov ebx, 2
call fcn.0043fea0
mov rax, qword [rsp + 0xa0]
call fcn.0043fd20
lea rax, [0x0103a608]
mov ebx, 0xf
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x98]
call fcn.0043fd20
lea rax, [0x0102ce57]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x90]
call fcn.0043fd20
lea rax, [0x0102ce5b]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x88]
call fcn.0043fd20
lea rax, [0x010381a9]
mov ebx, 0xd
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x80]
call fcn.0043fd20
lea rax, [0x0102ce57]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xa8]
call fcn.0043fd20
lea rax, [0x0102ce5b]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x78]
call fcn.0043fd20
lea rax, [0x0102feeb]
mov ebx, 6
nop dword [rax + rax]
call fcn.0043fea0
mov rax, qword [rsp + 0xe8]
call fcn.0043fe20
lea rax, [0x0102bf21]
mov ebx, 2
nop
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x30]
nop
cmp qword [rax], rdi
ja 0x4560c7
cmp rcx, 0xfffffffffffffade
jne 0x455e53
mov rdx, qword [rsp + 0xc0]
mov rdx, qword [rdx + 0x30]
cmp qword [rdx], rax
je 0x4560b6
cmp qword [rdx + 0xa0], 0
jne 0x455e06
cmp dword [rdx + 0xd8], 0
nop dword [rax]
je 0x4560a5
cmp byte [rax + 0xb3], 0
je 0x455e30
mov byte [rax + 0xb3], 0
call fcn.00456720
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rsp + 0xb8]
mov rdi, qword [rsp + 0x30]
cmp byte [rax + 0xb2], 0
je 0x455e46
call fcn.00447880
mov rax, qword [rsp + 0xf0]
call fcn.00447800
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax + 8]
sub rcx, qword [rax]
mov qword [rsp + 0x48], rcx
mov rdx, qword [rax + 0x40]
mov rax, rdx
call fcn.0045a520
mov rcx, qword [rsp + 0x48]
mov rdx, rcx
shl rcx, 1
test rax, rax
je 0x455ea9
mov qword [rsp + 0x70], rcx
call fcn.0045af40
movsxd rcx, eax
mov rax, qword [rsp + 0xf0]
mov rdx, qword [rax + 8]
add rcx, 0x13a0
sub rdx, qword [rax + 0x38]
mov rsi, qword [rsp + 0x70]
jmp 0x45608b
mov rsi, qword [0x01ac89b0]
mov rdi, qword [rsp + 0xb8]
cmp rdi, 0xfffffffffffffeed
cmove rcx, rdx
cmp rsi, rcx
jb 0x455f46
cmp qword [0x01ac89b8], rcx
jb 0x455f46
mov qword [rsp + 0x50], rcx
mov rax, qword [rsp + 0xf0]
mov ebx, 2
mov ecx, 8
call fcn.00442540
mov rax, qword [rsp + 0xf0]
mov rbx, qword [rsp + 0x50]
call fcn.00455680
mov rax, qword [rsp + 0xf0]
mov ebx, 8
mov ecx, 2
call fcn.00442540
mov rdx, qword [rsp + 0xf0]
add rdx, 0x38
mov qword [rsp], rdx
call fcn.00470400
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
add rsp, 0x1a0
pop rbp
ret
cmp qword [0x01ac89b8], rsi
jbe 0x45603b
call fcn.0043f620
lea rax, [0x01059ca1]
mov ebx, 0x21
call fcn.0043fea0
mov rax, qword [0x01ac89b0]
call fcn.0043fbe0
lea rax, [0x010371ea]
mov ebx, 0xc
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0xf0]
mov rcx, qword [rax]
mov qword [rsp + 0xb0], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0xa8], rax
call fcn.0043f620
lea rax, [0x010371f6]
mov ebx, 0xc
nop dword [rax + rax]
call fcn.0043fea0
mov rax, qword [rsp + 0x30]
call fcn.0043fd20
lea rax, [0x01032d45]
mov ebx, 8
nop dword [rax + rax]
call fcn.0043fea0
mov rax, qword [rsp + 0xb0]
call fcn.0043fd20
lea rax, [0x0102beaf]
mov ebx, 2
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xa8]
call fcn.0043fd20
lea rax, [0x0102bf23]
mov ebx, 2
nop
call fcn.0043fea0
call fcn.0043f680
lea rax, [0x0103931c]
mov ebx, 0xe
call fcn.0043dc80
nop dword [rax + rax]
call fcn.0043f620
lea rax, [0x01059ca1]
mov ebx, 0x21
call fcn.0043fea0
mov rax, qword [0x01ac89b8]
nop dword [rax]
call fcn.0043fbe0
lea rax, [0x010371ea]
mov ebx, 0xc
call fcn.0043fea0
call fcn.0043f680
nop dword [rax + rax]
jmp 0x455f8b
shl rdi, 1
mov rsi, rdi
mov rdi, rsi
sub rsi, rdx
cmp rsi, rcx
jb 0x456085
mov rdx, qword [rsp + 0x48]
mov rcx, rdi
nop
jmp 0x455ea9
lea rax, [0x0105be66]
mov ebx, 0x22
call fcn.0043dc80
lea rax, [0x0103faa8]
mov ebx, 0x13
call fcn.0043dc80
nop
mov ecx, dword [rax + 0x90]
mov dword [rsp + 0x2c], ecx
mov rdx, qword [rax + 0x98]
mov qword [rsp + 0xb8], rdx
call fcn.0043f620
lea rax, [0x010370d6]
mov ebx, 0xc
call fcn.0043fea0
mov rax, qword [rsp + 0xf0]
nop
call fcn.0043fe20
lea rax, [0x010314ef]
mov ebx, 7
call fcn.0043fea0
mov rax, qword [rsp + 0xb8]
nop
call fcn.0043fbe0
lea rax, [0x010381b6]
mov ebx, 0xd
call fcn.0043fea0
mov eax, dword [rsp + 0x2c]
mov eax, eax
nop dword [rax]
call fcn.0043fd20
lea rax, [0x0102bf27]
mov ebx, 2
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0xf0]
mov rax, qword [rax]
mov qword [rsp + 0xb0], rax
call fcn.0043f620
lea rax, [0x010548ec]
mov ebx, 0x1f
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x30]
call fcn.0043fd20
lea rax, [0x0102c2fe]
mov ebx, 3
nop dword [rax + rax]
call fcn.0043fea0
mov rax, qword [rsp + 0xb0]
call fcn.0043fd20
call fcn.0043f860
call fcn.0043f680
lea rax, [0x0105050e]
mov ebx, 0x1d
call fcn.0043dc80
lea rax, [0x01048e16]
mov ebx, 0x19
call fcn.0043dc80
mov rdx, qword [rcx + 8]
mov qword [rsp + 0x130], rdx
movups xmm0, xmmword [rcx + 0x10]
movups xmmword [rsp + 0x138], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rsp + 0x148], xmm0
movups xmm0, xmmword [rcx + 0x30]
movups xmmword [rsp + 0x158], xmm0
mov rcx, qword [rsp + 0x130]
mov qword [rax + 0x70], rcx
mov rcx, qword [rsp + 0x138]
mov qword [rax + 0x78], rcx
mov rcx, qword [rax + 0x40]
mov rax, rcx
call fcn.0045a520
test rax, rax
jne 0x4564b6
mov eax, 9
lea rcx, [0x0103401a]
xor edx, edx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0xc8], rcx
mov rbx, qword [rsp + 0xf0]
mov rsi, qword [rbx + 0x38]
mov qword [rsp + 0xb0], rsi
mov rdi, qword [rbx]
mov qword [rsp + 0xa8], rdi
mov r8, qword [rbx + 8]
mov qword [rsp + 0xa0], r8
mov r9, qword [rsp + 0x138]
mov qword [rsp + 0x98], r9
mov r10, qword [rsp + 0x130]
mov qword [rsp + 0x90], r10
mov r11, qword [rsp + 0x158]
mov qword [rsp + 0x88], r11
mov r12, qword [rbx + 0x40]
mov qword [rsp + 0x80], r12
mov r13, qword [rbx + 0x60]
mov qword [rsp + 0x78], r13
mov r15, qword [rbx + 0x50]
mov qword [rsp + 0xe8], r15
call fcn.0043f620
lea rax, [0x010427d7]
mov ebx, 0x15
call fcn.0043fea0
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x40]
call fcn.0043fea0
lea rax, [0x014150a0]
mov ebx, 1
call fcn.0043fea0
mov rax, qword [rsp + 0x38]
call fcn.0043fd20
lea rax, [0x0102ce53]
mov ebx, 4
call fcn.0043fea0
mov rax, qword [rsp + 0xb0]
call fcn.0043fd20
lea rax, [0x01032d45]
mov ebx, 8
call fcn.0043fea0
mov rax, qword [rsp + 0xa8]
call fcn.0043fd20
lea rax, [0x0102beaf]
mov ebx, 2
call fcn.0043fea0
mov rax, qword [rsp + 0xa0]
call fcn.0043fd20
lea rax, [0x0103a608]
mov ebx, 0xf
call fcn.0043fea0
mov rax, qword [rsp + 0x98]
call fcn.0043fd20
lea rax, [0x0102ce57]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x90]
call fcn.0043fd20
lea rax, [0x0102ce5b]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x88]
call fcn.0043fd20
lea rax, [0x010381a9]
mov ebx, 0xd
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x80]
call fcn.0043fd20
lea rax, [0x0102ce57]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xb0]
call fcn.0043fd20
lea rax, [0x0102ce5b]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x78]
call fcn.0043fd20
lea rax, [0x0102feeb]
mov ebx, 6
nop dword [rax + rax]
call fcn.0043fea0
mov rax, qword [rsp + 0xe8]
call fcn.0043fe20
lea rax, [0x0102bf21]
mov ebx, 2
nop
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x30]
mov byte [rax + 0xf9], 2
mov rax, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x158]
mov rdi, qword [rsp + 0xf0]
xor esi, esi
nop
call fcn.00463e60
lea rax, [0x01056da0]
mov ebx, 0x20
call fcn.0043dc80
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], rbx
mov ecx, dword [rax + 4]
mov rax, rbx
mov ebx, ecx
call fcn.0045a0e0
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x40], rbx
mov rcx, qword [rsp + 0x68]
mov ecx, dword [rcx]
mov rax, qword [rsp + 0x60]
mov ebx, ecx
call fcn.00459fc0
mov rcx, qword [rsp + 0xf0]
mov rdx, qword [rcx + 0x40]
sub rdx, rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0xc8]
jmp 0x456249
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0x58], rsi
mov rax, qword [rcx]
mov qword [rsp + 0xd8], rax
mov rdx, qword [rcx + 0x50]
mov qword [rsp + 0xd0], rdx
call fcn.0043f620
lea rax, [0x01056d80]
mov ebx, 0x20
call fcn.0043fea0
mov rax, qword [rsp + 0x58]
call fcn.0043fd20
lea rax, [0x0102ce4f]
mov ebx, 4
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xe0]
call fcn.0043fe20
lea rax, [0x01034011]
mov ebx, 9
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xf0]
call fcn.0043fe20
lea rax, [0x01031558]
mov ebx, 7
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xd8]
call fcn.0043fe20
lea rax, [0x010371de]
mov ebx, 0xc
nop
call fcn.0043fea0
mov rax, qword [rsp + 0xd0]
call fcn.0043fe20
call fcn.0043f860
call fcn.0043f680
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax + 0x30]
test byte [rax], al
mov rcx, qword [rax + 8]
mov qword [rsp + 0x168], rcx
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x170], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rsp + 0x180], xmm0
movups xmm0, xmmword [rax + 0x30]
movups xmmword [rsp + 0x190], xmm0
mov rax, qword [rsp + 0x170]
mov rbx, qword [rsp + 0x168]
mov rcx, qword [rsp + 0x190]
mov rdi, qword [rsp + 0x178]
xor esi, esi
nop dword [rax]
call fcn.00463e60
lea rax, [0x01060726]
mov ebx, 0x24
call fcn.0043dc80
lea rax, [0x010458cb]
mov ebx, 0x17
call fcn.0043dc80
nop
call fcn.004705e0
jmp 0x455a80
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
jmp 0x455a80