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

Disassembly:
lea r12, [rsp - 0x18]
cmp r12, qword [r14 + 0x10]
jbe 0x476eb1
push rbp
mov rbp, rsp
sub rsp, 0x90
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xc8], r8
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xb8], rdi
mov qword [rsp + 0xb0], rcx
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0xa0], rax
cmp rdi, r8
je 0x47697b
xor edx, edx
jmp 0x4769c3
mov rax, rcx
mov rbx, rsi
mov rcx, rdi
call fcn.004035a0
mov rcx, qword [rsp + 0xb0]
mov rbx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xc8]
mov r9, qword [rsp + 0xd0]
mov edx, eax
mov rax, qword [rsp + 0xa0]
test dl, dl
jne 0x4769cc
test r9, r9
jne 0x4769d5
add rsp, 0x90
pop rbp
ret
call fcn.00474aa0
nop word [rax + rax]
test rax, rax
je 0x476a6a
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
jl 0x4769fe
cmp rax, rcx
jl 0x4769fe
mov rax, rcx
mov qword [rsp + 0x50], rax
movups xmmword [rsp + 0x58], xmm15
movups xmmword [rsp + 0x68], xmm15
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xb8]
sub rcx, rdx
imul rcx, rax
mov rdi, qword [rsp + 0xa8]
lea rbx, [rdi + rcx]
lea rax, [rsp + 0x58]
call fcn.00471f00
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0xa0]
xor eax, eax
xor ebx, ebx
jmp 0x476b02
mov rax, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xa8]
add rsp, 0x90
pop rbp
ret
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x88], rax
add rdx, rax
mov rax, rdx
mov rbx, qword [rsp + 0xc0]
mov rcx, rdi
call fcn.00460ba0
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x68], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x60], rdx
mov rax, qword [rsp + 0x28]
inc rax
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0xb8]
lea rbx, [rcx + rdx]
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0xa0]
cmp rax, rdi
jge 0x476d4c
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], rbx
test rcx, rcx
jne 0x476b82
test rax, rax
jle 0x476b7c
nop
cmp rdx, rbx
jb 0x476ea5
sub rdx, rbx
mov rsi, rdx
neg rdx
sar rdx, 0x3f
and rdx, rbx
lea rax, [r8 + rdx]
mov rbx, rsi
call fcn.0046e900
mov rax, qword [rsp + 0x30]
add rbx, rax
mov rcx, qword [rsp + 0xb8]
mov rdx, qword [rsp + 0xa8]
mov rsi, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0xa0]
mov r9, rax
mov rax, qword [rsp + 0x28]
jmp 0x476be3
mov r9, rbx
nop
jmp 0x476be3
cmp rdx, rbx
jb 0x476e98
sub rdx, rbx
mov r10, rdx
neg rdx
sar rdx, 0x3f
and rdx, rbx
lea rax, [r8 + rdx]
mov rdi, rcx
mov rcx, rsi
mov rbx, r10
call fcn.004771a0
mov rdx, qword [rsp + 0x30]
lea rbx, [rdx + rax]
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0x50]
mov r8, qword [rsp + 0xa0]
mov r9, rdx
mov rdx, qword [rsp + 0xa8]
cmp rdx, rbx
jb 0x476e90
cmp r9, rbx
ja 0x476e85
mov r10, rbx
sub rbx, r9
mov r11, rbx
neg rbx
sar rbx, 0x3f
and r9, rbx
mov r12, qword [rsp + 0x58]
lea rbx, [r8 + r9]
nop
test r12, r12
je 0x476c2a
lea r9, [rsp + 0x58]
nop dword [rax]
cmp r12, r9
je 0x476c34
jmp 0x476e6e
lea r9, [rsp + 0x58]
mov qword [rsp + 0x58], r9
mov qword [rsp + 0x48], r10
mov r9, qword [rsp + 0x70]
mov r12, qword [rsp + 0x68]
lea r13, [r12 + r11]
mov r15, qword [rsp + 0x60]
cmp r9, r13
jae 0x476c96
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0x38], r12
mov rax, r15
mov rbx, r13
mov rcx, r9
mov rdi, r11
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov r11, qword [rsp + 0x40]
mov r12, qword [rsp + 0x38]
mov r15, rax
mov r9, rcx
mov r13, rbx
mov rbx, qword [rsp + 0x80]
mov qword [rsp + 0x88], r15
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x38], r13
lea rax, [r15 + r12]
mov rcx, r11
call fcn.00460ba0
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x68], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x88]
mov qword [rsp + 0x60], rdx
mov rdx, qword [rsp + 0x58]
nop
nop
nop dword [rax]
test rdx, rdx
je 0x476cf4
lea r8, [rsp + 0x58]
cmp rdx, r8
je 0x476cfe
jmp 0x476e5b
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x58], rdx
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0xc8]
lea rbx, [rdi + rdx]
mov rax, qword [rsp + 0x60]
nop dword [rax]
cmp rcx, rbx
jae 0x476a83
mov qword [rsp + 0x40], rdx
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0xc8]
jmp 0x476a83
cmp rdx, rbx
jb 0x476e50
sub rdx, rbx
mov rdi, rdx
neg rdx
sar rdx, 0x3f
and rbx, rdx
mov rdx, qword [rsp + 0x58]
add rbx, r8
nop
test rdx, rdx
je 0x476d85
lea r8, [rsp + 0x58]
cmp rdx, r8
je 0x476d8f
nop dword [rax]
jmp 0x476e3d
lea rdx, [rsp + 0x58]
mov qword [rsp + 0x58], rdx
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
lea r8, [rdx + rdi]
mov rax, qword [rsp + 0x60]
cmp rcx, r8
jae 0x476dd7
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x48], rdx
mov rbx, r8
lea rsi, [0x0066d1c0]
call fcn.00447aa0
mov rdx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov r8, rbx
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0x50], r8
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x48], rcx
add rdx, rax
mov rax, rdx
mov rcx, rdi
call fcn.00460ba0
mov rbx, qword [rsp + 0x50]
mov qword [rsp + 0x68], rbx
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x70], rdx
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x60], rax
mov rdx, rax
neg rdx
nop
nop
cmp rbx, rdx
ja 0x476e2e
add rsp, 0x90
pop rbp
ret
test rax, rax
je 0x476e38
call fcn.00456d40
call fcn.00456d80
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
mov rax, rbx
mov rcx, rdx
call fcn.004602a0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
call fcn.004337c0
lea rax, [0x0066d140]
lea rbx, [0x007401e0]
nop dword [rax]
call fcn.004337c0
mov rax, r9
mov rcx, rbx
call fcn.004602a0
mov rcx, rbx
call fcn.00460220
mov rax, rbx
mov rcx, rdx
nop
call fcn.004602a0
mov rax, rbx
mov rcx, rdx
call fcn.004602a0
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
call fcn.0045df00
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
nop dword [rax]
jmp fcn.00476920