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

Disassembly:
lea r12, [rsp - 0x10]
cmp r12, qword [r14 + 0x10]
jbe 0x61787d
sub rsp, 0x90
mov qword [rsp + 0x88], rbp
lea rbp, [rsp + 0x88]
mov qword [rsp + 0xa0], rbx
mov r13, 0
mov qword [rsp + 0x80], r13
mov byte [rsp + 0x23], 0
mov qword [rsp + 0x30], 0
movups xmmword [rsp + 0x60], xmm15
mov rdx, qword [rax]
cmp qword [rax + 0x130], 0
nop dword [rax]
jne 0x6177fb
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x48], rdx
lea rdx, [rax + 0x30]
mov qword [rsp + 0x50], rdx
mov rax, rdx
nop dword [rax]
call fcn.0060a0c0
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rcx
mov rdi, qword [rsp + 0x58]
mov rdx, qword [rdi + 0x128]
cmp rdx, 0xffffffffffffffff
je 0x617541
mov rsi, qword [rsp + 0x30]
cmp rsi, rdx
jle 0x6174a8
mov qword [rsp + 0x30], rdx
cmp qword [rsp + 0x60], 0
jne 0x61744a
lea rax, [0x0067fd60]
call fcn.0040da20
mov qword [rax + 8], 0x4a
lea rcx, [0x006ccbfb]
mov qword [rax], rcx
lea rbx, [0x0072e7e0]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rax
mov rcx, rax
mov rax, qword [rsp + 0x58]
nop dword [rax]
call fcn.0060b7c0
mov rdi, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov qword [rdi + 0x130], rsi
cmp dword [0x00918a90], 0
jne 0x61746d
mov qword [rdi + 0x138], rdx
jmp 0x617482
lea rsi, [rdi + 0x138]
mov rax, rdi
mov rdi, rsi
call fcn.00465720
mov rdi, rax
mov rax, qword [rdi + 0x128]
mov qword [rsp + 0x30], rax
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
sub rdx, rsi
mov qword [rdi + 0x128], rdx
mov rax, qword [rsp + 0x60]
mov rsi, qword [0x008b5f98]
nop
cmp qword [0x008b5f90], rax
je 0x6174cd
xor eax, eax
jmp 0x6174e0
mov rbx, rcx
mov rcx, rsi
call fcn.004040a0
mov rdi, qword [rsp + 0x58]
nop dword [rax]
test al, al
je 0x617541
cmp qword [rdi + 0x128], 0
jle 0x617541
mov rcx, qword [0x008b5fd8]
mov rbx, qword [0x008b5fd0]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rcx
mov qword [rdi + 0x130], rbx
cmp dword [0x00918a90], 0
jne 0x61751f
mov qword [rdi + 0x138], rcx
jmp 0x61752b
add rdi, 0x138
call fcn.00465700
mov rax, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
nop
ret
cmp qword [rsp + 0x30], 0
je 0x6177dc
xor eax, eax
mov rsi, qword [rsp + 0x48]
mov r8d, 1
lock cmpxchg dword [rsi + 0x58], r8d
sete r9b
lea rax, [rsi + 0x58]
mov qword [rsp + 0x40], rax
test r9b, r9b
jne 0x61758c
call fcn.00470b60
mov rax, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov r8d, 1
mov r9d, dword [rsi + 0x78]
mov r10, qword [rsi + 0x80]
test r10, r10
je 0x6175a5
mov r10d, dword [r10]
nop
cmp r10d, r9d
jl 0x6175a8
mov r10d, r9d
cmp r10d, 0x20000000
jge 0x6175e2
lea r11d, [r10 - 0x40000000]
neg r11d
mov r12d, r9d
sub r9d, r10d
add r9d, 0x40000000
cmp r11d, r9d
setl r10b
test r12d, r12d
setg r12b
cmp r12b, r10b
jne 0x6175e5
mov dword [rsi + 0x78], r9d
nop
jmp 0x6175e5
xor r11d, r11d
mov dword [rsp + 0x28], r11d
cmp qword [rsp + 0x60], 0
je 0x6175f9
xor ecx, ecx
jmp 0x617690
mov ecx, dword [rdi + 0x118]
mov rdx, qword [rdi + 0x120]
test rdx, rdx
je 0x617611
mov edx, dword [rdx]
cmp edx, ecx
jl 0x617613
mov edx, ecx
mov dword [rsp + 0x24], edx
mov rax, qword [rsp + 0x50]
nop dword [rax]
call fcn.00609f40
mov ecx, dword [rsp + 0x24]
movsxd rcx, ecx
lea rdx, [rcx + rax]
cmp rdx, 0x3ff000
jge 0x617672
lea rsi, [rcx - 0x400000]
add rsi, rax
neg rsi
mov rdi, qword [rsp + 0x58]
mov r8d, dword [rdi + 0x118]
lea r9d, [rsi + r8]
cmp esi, r9d
setl r10b
test r8d, r8d
setg r8b
cmp r8b, r10b
jne 0x617679
mov dword [rdi + 0x118], r9d
jmp 0x617679
mov rdi, qword [rsp + 0x58]
xor esi, esi
mov rax, qword [rsp + 0x40]
mov r8d, 1
mov r11d, dword [rsp + 0x28]
mov ecx, esi
mov rsi, qword [rsp + 0x48]
mov dword [rsp + 0x2c], ecx
nop
mov ebx, 0xffffffff
lock xadd dword [rsi + 0x58], ebx
dec ebx
test ebx, ebx
je 0x6176c3
call fcn.00470e60
mov ecx, dword [rsp + 0x2c]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov r8d, 1
mov r11d, dword [rsp + 0x28]
test r11d, r11d
jne 0x6176d0
test ecx, ecx
je 0x6177a3
xor eax, eax
lock cmpxchg dword [rsi + 0x128], r8d
sete dl
lea rax, [rsi + 0x128]
test dl, dl
je 0x6176ee
test r11d, r11d
jmp 0x617714
mov qword [rsp + 0x38], rax
call fcn.00470b60
mov ecx, dword [rsp + 0x28]
test ecx, ecx
mov rax, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
mov r11d, ecx
mov ecx, dword [rsp + 0x2c]
movups xmmword [rsp + 0x70], xmm15
lea rdx, [0x006178c0]
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rax
lea rdx, [rsp + 0x70]
mov qword [rsp + 0x80], rdx
mov byte [rsp + 0x23], 1
je 0x61776c
nop
cmp r11d, 0x7fffffff
ja 0x617845
mov rax, qword [rsi + 0x138]
xor ebx, ebx
mov ecx, r11d
call fcn.00606860
mov ecx, dword [rsp + 0x2c]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x58]
test ecx, ecx
je 0x617790
cmp ecx, 0x7fffffff
ja 0x617831
mov rax, qword [rsi + 0x138]
mov ebx, dword [rdi + 0x28]
call fcn.00606860
mov rsi, qword [rsp + 0x48]
mov rax, qword [rsi + 0x130]
call fcn.005c97a0
mov eax, 1
jmp 0x6177a5
xor eax, eax
test al, 1
je 0x6177bd
and eax, 0xfffffffe
mov byte [rsp + 0x23], al
mov rdx, qword [rsp + 0x80]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov qword [rsp + 0x30], 0
mov rbx, qword [rax + 0x130]
mov rcx, qword [rax + 0x138]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rcx
mov rax, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
lea rax, [0x00667a40]
lea rbx, [0x0072dd80]
nop
call fcn.00436260
lea rax, [0x00667a40]
lea rbx, [0x0072dd80]
call fcn.00436260
nop
call fcn.00435700
mov rax, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x88]
add rsp, 0x90
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
call fcn.00463440
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp fcn.00617340