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

Disassembly:
lea r12, [rsp - 0x90]
cmp r12, qword [r14 + 0x10]
jbe 0x5b7b70
sub rsp, 0x110
mov qword [rsp + 0x108], rbp
lea rbp, [rsp + 0x108]
mov rdx, qword [rax + 0x48]
cmp byte [rdx + 0xc1], 0
jne 0x5b70ee
cmp qword [rdx + 0xe8], 0
je 0x5b70ee
mov byte [rbx + 0xc8], 1
mov rdx, qword [rbx + 0x158]
cmp qword [rbx + 0x160], 0
nop
jbe 0x5b7b65
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], rbx
cmp word [rdx], 0x304
jne 0x5b6fdc
lea rax, [0x006bd140]
call fcn.0040daa0
mov byte [rax], 1
mov rdi, qword [rsp + 0x130]
mov qword [rdi + 0x1b0], 1
mov qword [rdi + 0x1b8], 1
cmp dword [0x00a04ed0], 0
jne 0x5b6fbc
mov qword [rdi + 0x1a8], rax
jmp 0x5b6fd1
lea rdx, [rdi + 0x1a8]
mov rcx, rdi
mov rdi, rdx
call fcn.00465a20
mov rdi, rcx
mov rax, qword [rsp + 0x128]
mov rbx, rdi
cmp qword [rax + 0x50], 0
jne 0x5b70bd
mov rcx, qword [rax]
mov rdx, qword [rax + 8]
mov rcx, qword [rcx + 0x30]
mov rax, rdx
call rcx
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rcx + 0x48]
mov rsi, qword [rdx + 0x88]
mov rdx, qword [rdx + 0x80]
test rsi, rsi
jne 0x5b702d
mov rcx, qword [rax + 0x20]
mov rax, rbx
call rcx
mov rcx, qword [rsp + 0x128]
mov rsi, rbx
mov rdx, rax
mov qword [rsp + 0x58], rsi
mov qword [rsp + 0xa8], rdx
mov rdi, qword [rcx + 0x48]
mov r8, qword [rdi + 0xe8]
mov rax, qword [rdi + 0xf0]
mov rdi, qword [r8 + 0x18]
mov rbx, rdx
mov rcx, rsi
call rdi
test bl, bl
je 0x5b7085
nop dword [rax]
test rax, rax
je 0x5b7085
mov rdi, qword [rsp + 0x130]
mov r12, qword [rdi + 0x158]
mov r13, qword [rdi + 0x160]
xor ecx, ecx
nop dword [rax]
jmp 0x5b7122
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
movups xmmword [rsp + 0x118], xmm15
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
mov r8, rbx
mov r9, rax
mov r10, rbx
mov r11, rbx
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
movups xmmword [rsp + 0x118], xmm15
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
mov r8, rbx
mov r9, rax
mov r10, rbx
mov r11, rbx
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
inc rcx
cmp rcx, r13
jge 0x5b73e3
movzx r15d, word [r12 + rcx*2]
cmp word [rax + 0x18], r15w
jne 0x5b711f
mov qword [rsp + 0x100], rax
mov r12, qword [rsp + 0x128]
mov r13, qword [r12 + 0x48]
cmp byte [r13 + 0xa0], 0
jne 0x5b7215
cmp qword [rax + 0x58], 0
nop
je 0x5b73ab
mov rbx, qword [rax + 0x38]
cmp qword [rax + 0x40], 0
jbe 0x5b7b56
mov rcx, qword [rbx]
mov qword [rsp + 0xb8], rcx
mov rbx, qword [r13 + 0x10]
test rbx, rbx
jne 0x5b7190
lea rbx, fcn.004b1260
mov rax, qword [rbx]
mov rdx, rbx
call rax
mov rsi, qword [rsp + 0xb8]
mov rdi, qword [rsi + 0x2c8]
mov r8, qword [rsi + 0x2d0]
mov r9, qword [rsi + 0x2d8]
mov rsi, r8
mov r8, r9
nop dword [rax + rax]
call fcn.004afd20
test al, al
jne 0x5b7344
mov rdx, qword [rsp + 0x128]
mov rsi, qword [rdx + 0x48]
mov rbx, qword [rsi + 0x80]
mov rcx, qword [rsi + 0x88]
mov rax, qword [rsp + 0xb8]
call fcn.00596d40
test rax, rax
jne 0x5b730c
mov rax, qword [rsp + 0x100]
mov rdi, qword [rsp + 0x130]
mov r12, qword [rsp + 0x128]
cmp word [rax + 0x18], 0x304
je 0x5b7231
mov rdx, qword [rdi + 0x50]
mov r12, qword [rdi + 0x58]
movzx r13d, word [rax + 0x1a]
xor ecx, ecx
jmp 0x5b7a60
mov rcx, qword [r12 + 0x48]
mov rcx, qword [rcx + 0x10]
test rcx, rcx
jne 0x5b7246
lea rcx, fcn.004b1260
mov rax, qword [rcx]
mov rdx, rcx
call rax
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsi + 0xd0]
mov r8, qword [rsi + 0xd8]
mov r9, qword [rsi + 0xc8]
mov rdx, rdi
mov rdi, r9
mov rsi, rdx
call fcn.004afd20
test al, al
jne 0x5b72a5
mov r12, qword [rsp + 0x100]
movzx r13d, word [r12 + 0x1a]
mov r15, qword [0x009a3990]
mov rax, r12
mov r12, qword [0x009a3998]
xor ecx, ecx
nop
jmp 0x5b7421
mov rdx, qword [rsp + 0x128]
mov rdx, qword [rdx + 0x48]
mov rsi, qword [rdx + 0xe8]
mov rax, qword [rdx + 0xf0]
mov rdx, qword [rsi + 0x20]
mov rbx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x58]
xor edi, edi
call rdx
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov rdx, qword [rsp + 0x128]
mov rdx, qword [rdx + 0x48]
mov rsi, qword [rdx + 0xe8]
mov rax, qword [rdx + 0xf0]
mov rdx, qword [rsi + 0x20]
mov rbx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x58]
xor edi, edi
call rdx
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
inc rcx
mov r15, rdx
cmp rcx, r12
jge 0x5b7435
mov rdx, r15
mov r15, qword [r15 + rcx*8]
cmp word [r15], r13w
jne 0x5b741b
jmp 0x5b7440
mov rdx, r15
xor r15d, r15d
nop dword [rax + rax]
test r15, r15
je 0x5b745f
mov r13, qword [rsp + 0x130]
mov rcx, r15
mov r15, qword [r13 + 0x50]
mov rbx, r13
mov r13, qword [r13 + 0x58]
xor esi, esi
jmp 0x5b74a0
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
inc rsi
mov r13, r9
mov r15, rdi
cmp rsi, r13
jge 0x5b74c9
mov rdi, r15
movzx r15d, word [r15 + rsi*2]
xor r8d, r8d
jmp 0x5b7507
mov r9, r13
xor r13d, r13d
test r13, r13
je 0x5b7497
mov r13, qword [r13 + 0x18]
cmp qword [rcx + 0x18], r13
jne 0x5b7497
jmp 0x5b751c
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
inc r8
mov r13, r9
cmp r8, r12
jge 0x5b74b2
mov r9, r13
mov r13, qword [rdx + r8*8]
cmp word [r13], r15w
jne 0x5b7501
jmp 0x5b74b8
mov qword [rsp + 0xf8], rcx
mov rsi, qword [rsp + 0x128]
mov rsi, qword [rsi + 0x48]
mov rsi, qword [rsi + 0x10]
test rsi, rsi
jne 0x5b7540
lea rsi, fcn.004b1260
mov rax, qword [rsi]
mov rdx, rsi
call rax
mov rsi, qword [rsp + 0x100]
mov rdi, qword [rsi + 0x70]
mov r8, qword [rsi + 0x78]
mov r9, qword [rsi + 0x68]
mov rdx, rdi
mov rdi, r9
mov rsi, rdx
call fcn.004b0b00
mov rcx, rax
movabs rax, 0x431bde82d7b634db
imul rcx
sar rdx, 0x12
sar rcx, 0x3f
sub rdx, rcx
mov rax, qword [rsp + 0x100]
mov rcx, qword [rax]
mov qword [rsp + 0xc0], rcx
mov rbx, qword [rax + 8]
mov qword [rsp + 0x60], rbx
mov rsi, qword [rax + 0x10]
mov qword [rsp + 0x68], rsi
add edx, dword [rax + 0xe0]
mov dword [rsp + 0x54], edx
lea rax, [0x006bccc0]
nop dword [rax + rax]
call fcn.0040daa0
mov rcx, qword [rsp + 0x60]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x68]
mov qword [rax + 0x10], rcx
mov ecx, dword [rsp + 0x54]
mov dword [rax + 0x18], ecx
cmp dword [0x00a04ed0], 0
jne 0x5b75f4
mov rdx, qword [rsp + 0xc0]
mov qword [rax], rdx
jmp 0x5b7605
mov rdi, rax
mov rdx, qword [rsp + 0xc0]
nop
call fcn.00465b40
mov rdi, qword [rsp + 0x130]
mov qword [rdi + 0x1c8], 1
mov qword [rdi + 0x1d0], 1
cmp dword [0x00a04ed0], 0
jne 0x5b7635
mov qword [rdi + 0x1c0], rax
jmp 0x5b764a
lea rdx, [rdi + 0x1c0]
mov rcx, rdi
mov rdi, rdx
call fcn.00465a20
mov rdi, rcx
mov rdx, qword [rsp + 0xf8]
mov rax, qword [rdx + 0x18]
lea rsi, [rax - 1]
nop word [rax + rax]
cmp rsi, 0x13
jae 0x5b7a45
mov rcx, qword [0x009a3898]
mov rsi, qword [0x009a3890]
nop dword [rax + rax]
cmp rcx, rax
jbe 0x5b7a40
movzx ecx, byte [rsi + rax]
mov qword [rsp + 0xa0], rcx
lea rax, [0x006bb680]
mov rbx, rcx
nop
call fcn.0044a940
mov qword [rsp + 0xf0], rax
lea rax, [0x006bcb40]
call fcn.0040daa0
mov rdx, qword [rsp + 0xa0]
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rdx
cmp dword [0x00a04ed0], 0
jne 0x5b76df
mov rdx, qword [rsp + 0xf0]
mov qword [rax], rdx
jmp 0x5b76ef
mov rdi, rax
mov rdx, qword [rsp + 0xf0]
call fcn.00465b40
mov rdi, qword [rsp + 0x130]
mov qword [rdi + 0x1e0], 1
mov qword [rdi + 0x1e8], 1
cmp dword [0x00a04ed0], 0
jne 0x5b771f
mov qword [rdi + 0x1d8], rax
jmp 0x5b7734
lea rdx, [rdi + 0x1d8]
mov rcx, rdi
mov rdi, rdx
call fcn.00465a20
mov rdi, rcx
mov rax, qword [rsp + 0xf8]
mov rdx, qword [rax + 0x18]
lea r12, [rdx - 1]
cmp r12, 0x13
jae 0x5b7a29
mov rcx, qword [0x009a3898]
mov r12, qword [0x009a3890]
nop dword [rax]
cmp rcx, rdx
jbe 0x5b7a21
mov r13, qword [rsp + 0x100]
mov rbx, qword [r13 + 0x20]
mov rcx, qword [r13 + 0x28]
mov rdi, qword [r13 + 0x30]
mov r9, qword [r13 + 0xb0]
mov r10, qword [r13 + 0xb8]
mov r11, qword [r13 + 0xc0]
movzx edx, byte [r12 + rdx]
mov qword [rsp], rdx
lea rsi, [0x0071b5f7]
mov r8d, 0xa
call fcn.005d5720
mov rdi, rcx
xor esi, esi
xor r8d, r8d
mov r9, r8
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0xf8]
call fcn.005d63e0
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0x98], rcx
mov rdi, rcx
lea rsi, [0x0071b5e3]
mov r8d, 0xa
xor r9d, r9d
xor r10d, r10d
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0xf8]
call fcn.005d6280
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x88], rcx
mov rdx, qword [rsp + 0xf8]
mov r12, qword [rdx + 0x18]
mov rax, r12
call fcn.004d3540
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xb0], rbx
mov rax, qword [rsp + 0x130]
call fcn.005c4ba0
test rdi, rdi
jne 0x5b79e9
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0xd0], rsi
mov rdx, qword [rsp + 0xd8]
mov rsi, qword [rdx + 0x38]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0xb0]
call rsi
mov rax, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xd8]
mov r8, qword [rsp + 0xb0]
nop dword [rax]
call fcn.005d6740
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x70], rcx
lea rax, [0x006bcb40]
nop
call fcn.0040daa0
mov rdx, qword [rsp + 0x78]
mov qword [rax + 8], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rax + 0x10], rdx
cmp dword [0x00a04ed0], 0
nop
jne 0x5b790f
mov rdx, qword [rsp + 0xc8]
mov qword [rax], rdx
jmp 0x5b791f
mov rdi, rax
mov rdx, qword [rsp + 0xc8]
call fcn.00465b40
mov rbx, rax
mov ecx, 1
mov rdi, rcx
mov rax, qword [rsp + 0x130]
call fcn.005c4c60
test rax, rax
je 0x5b7974
mov qword [rsp + 0x118], rax
mov qword [rsp + 0x120], rbx
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
mov r8, rbx
mov r9, rax
mov r10, rbx
mov r11, rbx
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x118], rdx
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x120], rdx
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x100]
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xa0]
mov r8, qword [rsp + 0x98]
mov r9, qword [rsp + 0xe0]
mov r10, qword [rsp + 0x90]
mov r11, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov qword [rsp + 0x118], rdi
mov qword [rsp + 0x120], rsi
xor eax, eax
xor ebx, ebx
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
mov r8, rbx
mov r9, rax
mov r10, rbx
mov r11, rbx
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov rax, rdx
call fcn.00465ee0
lea rax, [0x006bb4c0]
lea rbx, [0x007f0920]
call fcn.00436580
nop dword [rax]
call fcn.00465ee0
lea rax, [0x006bb4c0]
lea rbx, [0x007f0920]
call fcn.00436580
inc rcx
nop dword [rax + rax]
cmp rcx, r12
jge 0x5b7a86
movzx r15d, word [rdx + rcx*2]
cmp r15w, r13w
jne 0x5b7a58
nop
mov rdx, qword [0x009a3930]
mov r12, qword [0x009a3938]
xor ecx, ecx
jmp 0x5b7b39
xor ecx, ecx
test rcx, rcx
je 0x5b7afe
mov rdx, qword [rax]
mov r12, qword [rax + 8]
mov r13, qword [rax + 0x10]
mov qword [rdi + 0xd8], r12
mov qword [rdi + 0xe0], r13
cmp dword [0x00a04ed0], 0
jne 0x5b7ab8
mov qword [rdi + 0xd0], rdx
jmp 0x5b7ac5
add rdi, 0xd0
nop
call fcn.00465b40
movups xmmword [rsp + 0x118], xmm15
mov rbx, qword [rsp + 0x58]
mov rcx, rax
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rax, qword [rsp + 0xa8]
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
movups xmmword [rsp + 0x118], xmm15
mov rax, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x58]
xor ecx, ecx
xor edi, edi
xor esi, esi
mov r8, rsi
mov r9, rdi
mov r10, rsi
mov r11, rsi
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
inc rcx
cmp rcx, r12
jge 0x5b7b4b
mov r13, qword [rdx + rcx*8]
cmp word [r13], r15w
jne 0x5b7b36
jmp 0x5b7b4e
xor r13d, r13d
mov rcx, r13
jmp 0x5b7a88
xor eax, eax
mov rcx, rax
nop dword [rax + rax]
call fcn.00465ec0
xor eax, eax
mov rcx, rax
call fcn.00465ec0
nop
mov qword [rsp + 0x18], rax
mov qword [rsp + 0x20], rbx
call fcn.00463860
mov rax, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
jmp fcn.005b6f00