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

Disassembly:
lea r12, [rsp - 0x38]
cmp r12, qword [r14 + 0x10]
jbe 0x5ad668
sub rsp, 0xb8
mov qword [rsp + 0xb0], rbp
lea rbp, [rsp + 0xb0]
mov qword [rsp + 0xc0], rax
mov rcx, qword [rax]
mov qword [rsp + 0x78], rcx
mov rax, rcx
call fcn.005a1300
nop
test rcx, rcx
jne 0x5ad324
lea rdx, [0x00677ca0]
cmp rax, rdx
jne 0x5ad21a
mov rcx, rbx
jmp 0x5ad222
mov rcx, rbx
mov ebx, 0
mov qword [rsp + 0x68], rbx
jne 0x5ad285
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx + 0x78]
mov r9, qword [rsp + 0x78]
mov rbx, qword [r9 + 0x1e8]
mov rcx, qword [r9 + 0x1f0]
mov rdi, qword [r9 + 0x1f8]
mov rsi, qword [rdx + 0x80]
mov r8, qword [rdx + 0x88]
nop dword [rax]
call fcn.005c4800
mov rdx, qword [rsp + 0x68]
mov r9, qword [rdx + 0x18]
cmp qword [rdx + 0x20], rbx
jne 0x5ad27d
xor ecx, ecx
xor esi, esi
jmp 0x5ad654
xor eax, eax
nop
jmp 0x5ad340
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x78]
mov ebx, 0xa
nop
call fcn.005a0360
movups xmmword [rsp + 0x90], xmm15
movups xmmword [rsp + 0xa0], xmm15
mov rcx, qword [rsp + 0x80]
mov qword [rsp + 0x90], rcx
mov rcx, qword [rsp + 0x88]
mov qword [rsp + 0x98], rcx
lea rcx, [0x00677ca0]
mov qword [rsp + 0xa0], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rsp + 0xa8], rcx
lea rax, [0x006ccb1e]
mov ebx, 0x49
lea rcx, [rsp + 0x90]
mov edi, 2
mov rsi, rdi
call fcn.004f0a80
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
mov rax, rcx
mov rbx, rdi
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
cmp rax, 1
jne 0x5ad5f5
mov rax, rdx
call fcn.005c0d40
mov rdx, qword [rsp + 0xc0]
mov rsi, qword [rdx + 0x80]
mov rdi, qword [rdx + 0x88]
mov rsi, qword [rsi + 0x38]
mov r8, rax
mov rax, rdi
mov r9, rbx
mov rbx, r8
mov r10, rcx
mov rcx, r9
mov rdi, r10
call rsi
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx + 0x78]
mov rbx, qword [rcx + 0x90]
mov rdx, qword [rcx + 0x98]
mov rdi, qword [rcx + 0xa0]
mov r9, qword [rcx + 0x80]
mov r10, qword [rcx + 0x88]
lea rsi, [0x006ba9d8]
mov r8d, 0xc
mov rcx, rdx
call fcn.005c4340
mov rdi, qword [rsp + 0xc0]
mov qword [rdi + 0xb0], rbx
mov qword [rdi + 0xb8], rcx
cmp dword [0x00918a90], 0
jne 0x5ad3ef
mov qword [rdi + 0xa8], rax
jmp 0x5ad408
lea rdx, [rdi + 0xa8]
mov rcx, rdi
mov rdi, rdx
nop dword [rax]
call fcn.00465600
mov rdi, rcx
mov rax, qword [rdi + 0x78]
mov rbx, qword [rdi + 0x90]
mov rcx, qword [rdi + 0x98]
mov rdx, qword [rdi + 0xa0]
mov r9, qword [rdi + 0x80]
mov r10, qword [rdi + 0x88]
lea rsi, [0x006babd0]
mov r8d, 0xc
mov rdi, rdx
nop
call fcn.005c4340
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rcx
mov rdx, qword [rsp + 0x78]
lea r11, [rdx + 0x170]
mov r12, qword [rsp + 0xc0]
mov r13, qword [r12 + 0x78]
mov rdi, rbx
mov rsi, rcx
mov rbx, r13
mov rcx, rax
mov rax, r11
nop dword [rax]
call fcn.0059b860
mov rdx, qword [rsp + 0xc0]
mov r11, qword [rdx + 0x20]
mov r12, qword [rsp + 0x78]
mov rax, qword [r12 + 0x48]
mov rdi, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov r8, qword [r11 + 0x30]
mov r9, qword [rdx + 0xa8]
mov r10, qword [rdx + 0xb0]
mov r11, qword [rdx + 0xb8]
lea rbx, [0x006bed98]
mov ecx, 0x17
call fcn.0059ae80
test rax, rax
jne 0x5ad5c2
mov rdx, qword [rsp + 0xc0]
mov r12, qword [rdx + 0x20]
mov r13, qword [rsp + 0x78]
mov rax, qword [r13 + 0x48]
mov rdi, qword [r12 + 0x20]
mov rsi, qword [r12 + 0x28]
mov r8, qword [r12 + 0x30]
lea rbx, [0x006bef7b]
mov ecx, 0x17
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
call fcn.0059ae80
test rax, rax
jne 0x5ad58f
mov rdx, qword [rsp + 0xc0]
mov rax, qword [rdx + 0x78]
mov rbx, qword [rdx + 0x90]
mov rcx, qword [rdx + 0x98]
mov rdi, qword [rdx + 0xa0]
mov rsi, qword [rdx + 0x80]
mov r8, qword [rdx + 0x88]
call fcn.005c49c0
cmp dword [0x00918a90], 0
jne 0x5ad56a
mov rcx, qword [rsp + 0x78]
mov qword [rcx + 0xf0], rax
jmp 0x5ad57b
mov rdi, qword [rsp + 0x78]
add rdi, 0xf0
call fcn.00465600
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x78]
mov ebx, 0x50
call fcn.005a0360
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x70], rbx
mov rax, qword [rsp + 0x78]
mov ebx, 0x50
call fcn.005a0360
mov rax, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x70]
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
mov rax, qword [rsp + 0x78]
mov ebx, 0x33
nop
call fcn.005a0360
lea rax, [0x0067fd60]
call fcn.0040da20
mov qword [rax + 8], 0x21
lea rcx, [0x006c4153]
mov qword [rax], rcx
mov rbx, rax
lea rax, [0x0072e7e0]
mov rbp, qword [rsp + 0xb0]
add rsp, 0xb8
ret
lea rdi, [rcx + 1]
movzx r8d, byte [rcx + rax]
movzx r10d, byte [r9 + rcx]
xor r8d, r10d
or esi, r8d
mov rcx, rdi
cmp rbx, rcx
jg 0x5ad63d
nop
movzx eax, sil
dec eax
shr eax, 0x1f
jmp 0x5ad340
mov qword [rsp + 8], rax
call fcn.00463440
mov rax, qword [rsp + 8]
jmp fcn.005ad1c0