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

Disassembly:
lea r12, [rsp - 0x140]
cmp r12, qword [r14 + 0x10]
jbe 0x41fd6d
push rbp
mov rbp, rsp
sub rsp, 0x1b8
nop
mov eax, 2
lea rcx, [0x01c095a4]
xchg dword [rcx], eax
mov eax, dword [0x01c095a4]
cmp eax, 1
jne 0x41f0fe
mov eax, 1
jmp 0x41f104
cmp eax, 2
sete al
mov byte [0x01c09e04], al
mov byte [0x01c09e00], al
mov rax, qword [0x01c0b068]
mov qword [0x01bb3338], rax
nop
nop
call fcn.00474160
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [r14 + 0x30]
nop
mov rcx, qword [rsp]
mov qword [rsp + 0x38], rcx
inc dword [rax + 0xd8]
mov rax, qword [r14 + 0x30]
mov qword [rax + 0xd0], 5
cmp dword [0x01c09e00], 0
je 0x41f172
mov rdx, qword [rax + 0xc8]
call fcn.004724e0
mov qword [r11], rdx
mov qword [rsp + 0x190], rax
lea rdx, [0x0102e72c]
mov qword [rax + 0xc8], rdx
mov byte [rax + 0xf9], 2
mov rdx, qword [rax + 0x90]
mov qword [rsp + 0x1a0], rdx
nop
mov byte [rdx + 0xb0], 6
mov ebx, 2
mov ecx, 4
mov rax, rdx
call fcn.00442540
movups xmmword [rsp + 0xc8], xmm15
lea rdx, [0x0041fd80]
mov qword [rsp + 0xc8], rdx
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0xd0], rdx
lea rdx, [rsp + 0xc8]
mov qword [rsp], rdx
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rdx, [0x0115a288]
mov qword [rsp], rdx
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rdx, qword [rsp + 0x190]
mov byte [rdx + 0xf9], 0
mov rax, qword [rsp + 0x1a0]
mov ebx, 4
mov ecx, 2
call fcn.00442540
cmp byte [0x01bbb6a8], 0
je 0x41f26a
nop
mov eax, 8
mov rbx, 0xffffffffffffffff
xor ecx, ecx
xor edi, edi
mov rsi, rdi
call fcn.0045f380
mov rcx, qword [rsp + 0x190]
mov qword [rcx + 0xd0], 0
cmp dword [0x01c09e00], 0
je 0x41f295
mov rdx, qword [rcx + 0xc8]
call fcn.004724e0
mov qword [r11], rdx
mov qword [rcx + 0xc8], 0
cmp dword [0x01c095a4], 0
jne 0x41fd5b
mov rax, qword [0x01c0b110]
mov qword [0x01c10c30], rax
lea rax, [0x0115a260]
mov qword [rsp], rax
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
nop
nop
call fcn.00474160
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
mov qword [rsp + 0x30], rax
call fcn.00474220
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
mov rax, qword [rsp]
movsxd rcx, dword [rsp + 8]
imul rax, rax, 0x3b9aca00
add rax, rcx
mov qword [rsp + 0x48], rax
mov rcx, qword [0x01bb3328]
mov rbx, qword [rsp + 0x30]
mov rdx, rbx
sub rdx, rcx
add qword [0x01bb3320], rdx
mov qword [0x01bb3318], rbx
mov rcx, qword [0x01bb3328]
mov rdx, rbx
sub rdx, rcx
lea rax, [0x01c10c40]
mov rbx, rdx
call fcn.0040d980
mov rax, qword [rsp + 0x48]
lea rcx, [0x01c0fc08]
mov rdx, rax
xchg qword [rcx], rax
mov rbx, qword [rsp + 0x30]
lea rax, [0x01c10c28]
mov rcx, rbx
xchg qword [rax], rcx
movzx eax, byte [0x01c10c18]
mov rcx, qword [0x01bb3320]
lea rsi, [0x01c0fc18]
mov qword [rsi + rax*8], rcx
movzx eax, byte [0x01c10c18]
lea rcx, [0x01c10418]
mov qword [rcx + rax*8], rdx
mov rax, qword [0x01bb3320]
add qword [0x01c0fc10], rax
movsxd rax, dword [0x01bb32f4]
mov rcx, qword [0x01bb3318]
sub rcx, qword [0x01bb3310]
imul rax, rcx
mov qword [rsp + 0x60], rax
add qword [0x01bb3360], rax
add qword [0x01bb3368], rax
mov ecx, 1
lea rax, [0x01bb3348]
call fcn.00436ca0
mov rax, qword [0x01bb3368]
sub rax, qword [0x01bb3358]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mov rax, qword [0x01bb3398]
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
divsd xmm0, xmm1
movsd qword [0x01c10c20], xmm0
nop
xor eax, eax
lea rcx, [0x01c0a2d0]
xchg qword [rcx], rax
nop
xor eax, eax
lea rcx, [0x01c0a2d8]
xchg qword [rcx], rax
nop
xor eax, eax
lea rcx, [0x01bb3df0]
xchg qword [rcx], rax
mov qword [0x01bb1974], 0
cmp byte [0x01bb32b8], 0
je 0x41f477
inc dword [0x01c10c1c]
nop
nop
lea rax, [0x01bb32e0]
call fcn.0040f080
inc dword [0x01c10c18]
lea rax, [0x01bb32e8]
call fcn.00446c00
nop
nop
lea rax, [0x01bb32e0]
call fcn.0040f2a0
lea rax, [0x01bdb860]
call fcn.004282c0
lea rax, [0x01c0a520]
mov rbx, qword [rsp + 0x30]
nop dword [rax]
call fcn.00420fe0
nop
nop
nop
mov eax, dword [0x01c095b0]
mov ecx, eax
shr ecx, 1
lea edx, [rcx + 1]
mov esi, 0xaaaaaaab
imul rdx, rsi
shr rdx, 0x3a
lea edx, [rdx + rdx*2]
shl edx, 0x19
sub ecx, edx
inc ecx
shl ecx, 1
lea rdx, [0x01c095b0]
lock cmpxchg dword [rdx], ecx
sete cl
nop dword [rax]
test cl, cl
je 0x41f4c7
nop
mov eax, dword [0x01bb197c]
mov ecx, eax
and ecx, 0x80000000
test ecx, ecx
jne 0x41f536
lea edx, [rax + 1]
lea rsi, [0x01bb197c]
lock cmpxchg dword [rsi], edx
sete dl
test dl, dl
je 0x41f504
mov edx, dword [0x01bdb8e0]
test ecx, ecx
jmp 0x41f540
mov edx, dword [0x01bdb8e0]
nop dword [rax]
jne 0x41fd4a
mov dword [rsp + 0x2c], edx
sete al
mov byte [rsp + 0x2b], al
lea rcx, [0x0115a290]
mov qword [rsp], rcx
nop dword [rax]
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
call fcn.00432d40
nop dword [rax]
call fcn.0042b660
lea rax, [0x0115a248]
mov qword [rsp], rax
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [0x0115a298]
mov qword [rsp], rax
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
lea rax, [0x01bb197c]
mov ebx, dword [rsp + 0x2c]
movzx ecx, byte [rsp + 0x2b]
call fcn.00428e20
cmp dword [0x01c0a5a4], 0
jle 0x41fbf7
movsd xmm0, qword [0x014187f8]
mulsd xmm0, qword [0x01c10c20]
movsd qword [rsp + 0xc0], xmm0
movups xmmword [rsp + 0xd8], xmm15
movups xmmword [rsp + 0xe0], xmm15
call fcn.0043f620
mov rax, qword [0x01bb3300]
sub rax, qword [0x01c09788]
mov rcx, rax
movabs rax, 0x8637bd05af6c69b6
mul rcx
shr rdx, 0x13
mov eax, 0x17
jmp 0x41f647
mov rax, rsi
cmp rdx, 0xa
jae 0x41f653
cmp rax, 0x14
jl 0x41f6a3
mov rcx, rax
movabs rax, 0xcccccccccccccccd
mov rbx, rdx
mul rdx
shr rdx, 3
lea rsi, [rdx + rdx*4]
shl rsi, 1
sub rbx, rsi
cmp rcx, 0x18
jae 0x41fd3d
lea rsi, [rbx + 0x30]
mov byte [rsp + rcx + 0xd8], sil
lea rsi, [rcx - 1]
cmp rcx, 0x15
jne 0x41f644
mov byte [rsp + rcx + 0xd7], 0x2e
mov esi, 0x13
jmp 0x41f644
cmp rax, 0x18
jae 0x41fd33
movsd xmm0, qword [rsp + 0xc0]
cvttsd2si rsi, xmm0
mov qword [rsp + 0x40], rsi
add rdx, 0x30
mov byte [rsp + rax + 0xd8], dl
mov edx, dword [0x01c10c18]
mov qword [rsp + 0xb8], rdx
lea rcx, [rax - 0x18]
mov rdi, rcx
sar rdi, 0x3f
and rax, rdi
lea rbx, [rsp + rax + 0xd8]
neg rcx
lea rax, [rsp + 0x148]
call fcn.00457bc0
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0xb0], rbx
call fcn.0043f620
lea rax, [0x0102c2da]
mov ebx, 3
call fcn.0043fea0
mov rax, qword [rsp + 0xb8]
call fcn.0043fbe0
lea rax, [0x0102bf15]
mov ebx, 2
nop
call fcn.0043fea0
mov rax, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xb0]
call fcn.0043fea0
lea rax, [0x0102bf17]
mov ebx, 2
call fcn.0043fea0
mov rax, qword [rsp + 0x40]
call fcn.0043fcc0
lea rax, [0x0102c2dd]
mov ebx, 3
call fcn.0043fea0
call fcn.0043f680
mov rdx, qword [0x01bb3300]
movups xmmword [rsp + 0xf0], xmm15
movups xmmword [rsp + 0xf8], xmm15
mov rsi, qword [0x01bb3308]
mov qword [rsp + 0xf0], rsi
mov rsi, qword [0x01bb3310]
mov qword [rsp + 0xf8], rsi
mov rsi, qword [0x01bb3318]
mov qword [rsp + 0x100], rsi
xor eax, eax
jmp 0x41f842
mov rsi, rdi
sub rsi, rdx
lea rax, [rsp + 0xd8]
mov ebx, 0x18
mov rcx, rbx
mov rdi, rsi
call fcn.00420d40
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0x128]
call fcn.00457bc0
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0xb0], rbx
call fcn.0043f620
mov rax, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xb0]
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0x70]
inc rax
mov rdx, qword [rsp + 0x50]
cmp rax, 3
jge 0x41f8a0
mov qword [rsp + 0x70], rax
mov rdi, qword [rsp + rax*8 + 0xf0]
mov qword [rsp + 0x50], rdi
nop word [rax + rax]
test rax, rax
je 0x41f7d5
mov qword [rsp + 0xa8], rdx
call fcn.0043f620
lea rax, [0x014150a0]
mov ebx, 1
call fcn.0043fea0
call fcn.0043f680
mov rdx, qword [rsp + 0xa8]
mov rdi, qword [rsp + 0x50]
jmp 0x41f7d5
call fcn.0043f620
lea rax, [0x01035fa1]
mov ebx, 0xb
call fcn.0043fea0
call fcn.0043f680
nop
mov rax, qword [0x01c0b0c0]
mov rcx, qword [0x01c0b0c8]
mov rdx, qword [0x01c0b0d0]
add rcx, rdx
nop
mov rdx, qword [0x01c0b0d8]
movups xmmword [rsp + 0x168], xmm15
movups xmmword [rsp + 0x170], xmm15
movups xmmword [rsp + 0x180], xmm15
movsxd rbx, dword [0x01bb32f4]
mov rsi, qword [0x01bb3308]
sub rsi, qword [0x01bb3300]
imul rsi, rbx
mov qword [rsp + 0x168], rsi
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x178], rcx
mov qword [rsp + 0x180], rdx
mov rax, qword [rsp + 0x60]
mov qword [rsp + 0x188], rax
xor eax, eax
nop
jmp 0x41f9a1
lea rax, [rsp + 0xd8]
mov ebx, 0x18
mov rcx, rbx
call fcn.00420d40
mov rcx, rbx
mov rbx, rax
lea rax, [rsp + 0x108]
call fcn.00457bc0
mov qword [rsp + 0x1b0], rax
mov qword [rsp + 0xb0], rbx
call fcn.0043f620
mov rax, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0xb0]
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0x68]
inc rax
cmp rax, 5
jge 0x41fa25
mov qword [rsp + 0x68], rax
mov rdi, qword [rsp + rax*8 + 0x168]
mov qword [rsp + 0x58], rdi
cmp rax, 2
je 0x41f9c6
nop
cmp rax, 3
jne 0x41f9ef
call fcn.0043f620
lea rax, [0x01415330]
mov ebx, 1
call fcn.0043fea0
nop dword [rax]
call fcn.0043f680
mov rdi, qword [rsp + 0x58]
jmp 0x41f942
test rax, rax
je 0x41f942
call fcn.0043f620
lea rax, [0x014150a0]
mov ebx, 1
call fcn.0043fea0
call fcn.0043f680
mov rax, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x58]
nop dword [rax]
jmp 0x41f942
mov rax, qword [0x01c0b080]
shr rax, 0x14
mov qword [rsp + 0xb8], rax
mov rcx, qword [0x01c0b090]
mov rdx, qword [0x01bb3330]
shr rdx, 0x14
mov qword [rsp + 0xa0], rdx
mov rbx, qword [0x01bb3338]
shr rbx, 0x14
mov qword [rsp + 0x98], rbx
mov rsi, qword [0x01bb3340]
shr rsi, 0x14
mov qword [rsp + 0x90], rsi
mov rdi, qword [0x01c0b060]
shr rdi, 0x14
mov qword [rsp + 0x88], rdi
shr rcx, 0x14
mov qword [rsp + 0x80], rcx
movsxd r8, dword [0x01bb32f8]
mov qword [rsp + 0xa8], r8
call fcn.0043f620
lea rax, [0x01033f30]
mov ebx, 9
call fcn.0043fea0
mov rax, qword [rsp + 0xa0]
call fcn.0043fbe0
lea rax, [0x0102bf19]
mov ebx, 2
call fcn.0043fea0
mov rax, qword [rsp + 0x98]
call fcn.0043fbe0
lea rax, [0x0102bf19]
mov ebx, 2
call fcn.0043fea0
mov rax, qword [rsp + 0x90]
call fcn.0043fbe0
lea rax, [0x0102e731]
mov ebx, 5
call fcn.0043fea0
mov rax, qword [rsp + 0x88]
nop
call fcn.0043fbe0
lea rax, [0x01034f30]
mov ebx, 0xa
call fcn.0043fea0
mov rax, qword [rsp + 0xb8]
nop
call fcn.0043fbe0
lea rax, [0x01037082]
mov ebx, 0xc
call fcn.0043fea0
mov rax, qword [rsp + 0x80]
nop
call fcn.0043fbe0
lea rax, [0x010380b2]
mov ebx, 0xd
call fcn.0043fea0
mov rax, qword [rsp + 0xa8]
nop
call fcn.0043fcc0
lea rax, [0x0102bf1b]
mov ebx, 2
call fcn.0043fea0
call fcn.0043f680
cmp byte [0x01bb32b8], 0
je 0x41fbc0
call fcn.0043f620
lea rax, [0x01033f39]
mov ebx, 9
call fcn.0043fea0
call fcn.0043f680
nop
call fcn.0043f620
call fcn.0043f860
call fcn.0043f680
mov rax, qword [r14 + 0x30]
movzx ecx, byte [rax + 0xe7]
lea edx, [rcx - 1]
nop
mov byte [rax + 0xe7], dl
cmp cl, 1
jne 0x41fbf7
nop
nop
lea rax, [0x01c09770]
call fcn.0040f2a0
nop
nop
lea rax, [0x01bb21a0]
call fcn.0040f080
mov rcx, qword [0x01bb21c8]
mov qword [rsp + 0x78], rcx
mov rdx, qword [0x01bb21c0]
mov qword [rsp + 0x198], rdx
movups xmmword [0x01bb21c8], xmm15
cmp dword [0x01c09e00], 0
je 0x41fc40
mov rbx, qword [0x01bb21c0]
call fcn.004724e0
mov qword [r11], rbx
mov qword [0x01bb21c0], 0
nop
nop
lea rax, [0x01bb21a0]
call fcn.0040f2a0
mov rcx, qword [rsp + 0x198]
xor eax, eax
jmp 0x41fc94
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0x1a8], rcx
mov rax, qword [rcx]
call fcn.00407f00
mov rcx, qword [rsp + 0x1a8]
add rcx, 0x10
mov rax, qword [rsp + 0xb0]
inc rax
mov rdx, qword [rsp + 0x78]
cmp rax, rdx
jl 0x41fc65
lea rax, [0x01c0b000]
call fcn.00425e20
cmp rax, 0x40000000
jbe 0x41fcd7
lea rax, [0x0115a2a8]
mov qword [rsp], rax
nop dword [rax]
call fcn.004704a0
xorps xmm15, xmm15
mov r14, qword [0x01c099d0]
mov r14, qword gs:[r14]
mov r14, qword [r14]
nop
lea rax, [0x01ac8628]
xor ebx, ebx
xor ecx, ecx
call fcn.00451dc0
nop
lea rax, [0x01ac862c]
xor ebx, ebx
xor ecx, ecx
call fcn.00451dc0
mov rdx, qword [rsp + 0x190]
mov esi, dword [rdx + 0xd8]
lea edi, [rsi - 1]
nop
mov dword [rdx + 0xd8], edi
cmp esi, 1
jne 0x41fd2a
cmp byte [r14 + 0xb1], 0
nop
je 0x41fd2a
mov qword [r14 + 0x10], 0xfffffffffffffade
add rsp, 0x1b8
pop rbp
ret
mov ecx, 0x18
call fcn.004728a0
mov rax, rcx
mov ecx, 0x18
call fcn.004728a0
lea rax, [0x0104c5d4]
mov ebx, 0x1b
call fcn.0043dc80
lea rax, [0x01050395]
mov ebx, 0x1d
call fcn.0043dc80
nop
call fcn.004705e0
jmp fcn.0041f0c0