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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x457fa6
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rdx, rbx
sub rdx, rdi
nop dword [rax + rax]
test rbx, rbx
jl 0x457f91
mov rdi, qword [rsi]
test rdi, rdi
je 0x4578b4
lea r8, [rcx + rcx]
cmp rbx, r8
jg 0x4578af
nop word [rax + rax]
cmp rcx, 0x100
jge 0x457f68
jmp 0x4578c4
mov r8, rbx
jmp 0x4578c4
lea rax, [0x0203d620]
mov rcx, rbx
add rsp, 0x60
pop rbp
ret
mov r9, qword [rsi + 8]
cmp rdi, 1
jne 0x4579d5
cmp r8, 0x7ff8
ja 0x45799e
nop
test r9, r9
je 0x4578f4
cmp r8, 0x200
jbe 0x4578f4
lea rdi, [r8 + 8]
jmp 0x457900
mov rdi, r8
nop word [rax + rax]
cmp rdi, 0x3f8
ja 0x457948
lea r10, [rdi + 7]
shr r10, 3
cmp r10, 0x81
jae 0x457f53
lea r11, [0x01ecae20]
movzx r10d, byte [r10 + r11]
cmp r10, 0x44
jae 0x457f46
lea r11, [0x01ecaf60]
movzx r10d, word [r11 + r10*2]
sub rdi, r8
sub r10, rdi
jmp 0x4579b9
lea r10, [rdi - 0x381]
shr r10, 7
nop word [rax + rax]
nop dword [rax]
cmp r10, 0xf9
jae 0x457f39
lea r11, [0x01ecc400]
movzx r10d, byte [r10 + r11]
nop dword [rax]
cmp r10, 0x44
jae 0x457f2c
lea r11, [0x01ecaf60]
movzx r10d, word [r11 + r10*2]
sub rdi, r8
sub r10, rdi
jmp 0x4579b9
lea rdi, [r8 + 0x1fff]
cmp r8, rdi
jbe 0x4579af
mov r10, r8
jmp 0x4579b9
and rdi, 0xffffffffffffe000
mov r10, rdi
movabs rdi, 0x1000000000000
cmp r8, rdi
seta r8b
mov rcx, rbx
mov r13, r10
jmp 0x457d6f
cmp rdi, 8
jne 0x457afb
mov rdi, r8
shl r8, 3
cmp r8, 0x7ff8
ja 0x457aa2
test r9, r9
je 0x457a0f
nop dword [rax + rax]
cmp r8, 0x200
jbe 0x457a0f
lea r10, [r8 + 8]
jmp 0x457a12
mov r10, r8
cmp r10, 0x3f8
ja 0x457a5e
lea r11, [r10 + 7]
shr r11, 3
cmp r11, 0x81
jae 0x457f1f
lea r12, [0x01ecae20]
movzx r11d, byte [r11 + r12]
nop dword [rax]
cmp r11, 0x44
jae 0x457f12
lea r12, [0x01ecaf60]
movzx r11d, word [r12 + r11*2]
sub r10, r8
sub r11, r10
jmp 0x457abd
lea r11, [r10 - 0x381]
shr r11, 7
cmp r11, 0xf9
jae 0x457f05
lea r12, [0x01ecc400]
movzx r11d, byte [r11 + r12]
cmp r11, 0x44
jae 0x457ef3
lea r12, [0x01ecaf60]
movzx r11d, word [r12 + r11*2]
sub r10, r8
sub r11, r10
nop
jmp 0x457abd
lea r10, [r8 + 0x1fff]
cmp r8, r10
jbe 0x457ab3
mov r11, r8
jmp 0x457abd
and r10, 0xffffffffffffe000
mov r11, r10
shl rdx, 3
mov r12, rbx
shl r12, 3
mov r10, r11
shr r10, 3
movabs r13, 0x200000000000
cmp rdi, r13
seta r8b
mov rcx, rbx
movabs rdi, 0x1000000000000
mov rbx, r12
mov r13, r10
mov r10, r11
jmp 0x457d6f
lea r10, [rdi - 1]
nop
test rdi, r10
jne 0x457c2f
bsf rcx, rdi
mov rdi, r8
shl r8, cl
shl rdx, cl
mov r10, rbx
shl rbx, cl
nop dword [rax]
cmp r8, 0x7ff8
ja 0x457be2
test r9, r9
je 0x457b42
cmp r8, 0x200
jbe 0x457b42
lea r11, [r8 + 8]
nop
jmp 0x457b45
mov r11, r8
cmp r11, 0x3f8
ja 0x457b9f
lea r12, [r11 + 7]
shr r12, 3
nop word [rax + rax]
nop
cmp r12, 0x81
jae 0x457ee6
lea r13, [0x01ecae20]
movzx r12d, byte [r12 + r13]
nop dword [rax]
cmp r12, 0x44
jae 0x457ed9
lea r13, [0x01ecaf60]
movzx r12d, word [r13 + r12*2]
sub r11, r8
sub r12, r11
jmp 0x457bfd
lea r12, [r11 - 0x381]
shr r12, 7
cmp r12, 0xf9
jae 0x457ecc
lea r13, [0x01ecc400]
movzx r12d, byte [r12 + r13]
cmp r12, 0x44
jae 0x457ebf
lea r13, [0x01ecaf60]
movzx r12d, word [r13 + r12*2]
sub r11, r8
sub r12, r11
jmp 0x457bfd
lea r11, [r8 + 0x1fff]
cmp r8, r11
jbe 0x457bf3
mov r12, r8
jmp 0x457bfd
and r11, 0xffffffffffffe000
mov r12, r11
movabs r11, 0x1000000000000
shr r11, cl
shr r12, cl
mov r13, r12
shl r12, cl
cmp rdi, r11
seta r8b
mov rcx, r10
movabs rdi, 0x1000000000000
mov r10, r12
jmp 0x457d6f
imul rdx, rdi
mov qword [rsp + 0x38], rdx
mov r10, rdi
imul rdi, rbx
mov rcx, rax
mov rax, r8
mul r10
cmp rax, 0x7ff8
ja 0x457d0f
test r9, r9
je 0x457c6e
nop dword [rax]
cmp rax, 0x200
jbe 0x457c6e
lea rdx, [rax + 8]
jmp 0x457c71
mov rdx, rax
cmp rdx, 0x3f8
ja 0x457cc7
lea r11, [rdx + 7]
shr r11, 3
cmp r11, 0x81
jae 0x457eb2
lea r12, [0x01ecae20]
movzx r11d, byte [r11 + r12]
nop dword [rax + rax]
cmp r11, 0x44
jae 0x457ea5
lea r12, [0x01ecaf60]
movzx r11d, word [r12 + r11*2]
sub rdx, rax
sub r11, rdx
mov rax, r8
mul r10
jmp 0x457d44
lea r11, [rdx - 0x381]
shr r11, 7
cmp r11, 0xf9
jae 0x457e93
lea r12, [0x01ecc400]
movzx r11d, byte [r12 + r11]
cmp r11, 0x44
jae 0x457e86
lea r12, [0x01ecaf60]
movzx r11d, word [r12 + r11*2]
sub rdx, rax
sub r11, rdx
mov rax, r8
mul r10
jmp 0x457d44
lea rdx, [rax + 0x1fff]
cmp rax, rdx
jbe 0x457d2d
mov qword [rsp + 0x50], rax
mov rax, r8
mul r10
mov r11, qword [rsp + 0x50]
jmp 0x457d44
and rdx, 0xffffffffffffe000
mov qword [rsp + 0x20], rdx
mov rax, r8
mul r10
mov r11, qword [rsp + 0x20]
seto r8b
mov rax, r11
xor edx, edx
div r10
imul r10, rax
mov rdx, qword [rsp + 0x38]
mov r13, rax
mov rax, rcx
mov rcx, rbx
mov rbx, rdi
movabs rdi, 0x1000000000000
test r8b, r8b
jne 0x457e73
nop dword [rax + rax]
cmp r10, rdi
ja 0x457e73
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r13
nop dword [rax]
test r9, r9
jne 0x457de4
mov qword [rsp + 0x40], r10
mov qword [rsp + 0x28], rbx
mov rax, r10
xor ebx, ebx
xor ecx, ecx
call fcn.00411dc0
mov qword [rsp + 0x58], rax
mov rbx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x28]
sub rbx, rdx
add rdx, rax
mov rax, rdx
call fcn.0047a5a0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x58]
jmp 0x457e4f
mov qword [rsp + 0x90], rsi
mov rax, r10
mov rbx, rsi
mov ecx, 1
call fcn.00411dc0
mov rcx, qword [rsp + 0x38]
test rcx, rcx
jbe 0x457e4f
cmp byte [0x0203df10], 0
je 0x457e4f
mov qword [rsp + 0x58], rax
mov rdx, rax
mov rbx, qword [rsp + 0x70]
mov rsi, rbx
mov rdi, qword [rsp + 0x90]
mov r8, qword [rdi]
mov r9, rcx
sub r9, r8
add r9, qword [rdi + 8]
mov rax, rdx
mov rbx, rsi
mov rcx, r9
nop dword [rax]
call fcn.0041aca0
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x58], rax
mov rbx, qword [rsp + 0x70]
call fcn.0047a8a0
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
add rsp, 0x60
pop rbp
ret
lea rax, [0x00f35ee0]
lea rbx, [0x0179d4c0]
call fcn.0043f400
mov rax, r11
mov ecx, 0x44
call fcn.00479ec0
mov rax, r11
mov ecx, 0xf9
nop dword [rax + rax]
call fcn.00479ee0
mov rax, r11
mov ecx, 0x44
call fcn.00479ec0
mov rax, r11
mov ecx, 0x81
call fcn.00479ee0
mov rax, r12
mov ecx, 0x44
call fcn.00479ec0
mov rax, r12
mov ecx, 0xf9
call fcn.00479ee0
mov rax, r12
mov ecx, 0x44
call fcn.00479ec0
mov rax, r12
mov ecx, 0x81
call fcn.00479ee0
mov rax, r11
mov ecx, 0x44
nop dword [rax + rax]
call fcn.00479ec0
mov rax, r11
mov ecx, 0xf9
call fcn.00479ee0
mov rax, r11
mov ecx, 0x44
call fcn.00479ec0
mov rax, r11
mov ecx, 0x81
call fcn.00479ee0
mov rax, r10
mov ecx, 0x44
call fcn.00479ec0
mov rax, r10
mov ecx, 0xf9
call fcn.00479ee0
mov rax, r10
mov ecx, 0x44
call fcn.00479ec0
mov rax, r10
mov ecx, 0x81
nop dword [rax + rax]
call fcn.00479ee0
mov rcx, r8
lea r8, [rcx + 0x300]
sar r8, 2
add r8, rcx
cmp rbx, r8
ja 0x457f65
nop dword [rax + rax]
test r8, r8
jg 0x4578c4
mov r8, rbx
jmp 0x4578c4
lea rax, [0x00f35ee0]
lea rbx, [0x0179d4c0]
nop
call fcn.0043f400
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
nop
call fcn.00477be0
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]
nop
jmp fcn.00457860