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

Disassembly:
lea r12, [rsp - 0xc0]
cmp r12, qword [r14 + 0x10]
jbe 0x594dce
push rbp
mov rbp, rsp
sub rsp, 0x138
mov rdx, qword [rax + 0x20]
mov qword [rsp + 0x28], rdx
mov rsi, qword [rax + 0x18]
mov qword [rsp + 0x58], rsi
mov r8, qword [rax + 0x30]
mov qword [rsp + 0xf0], r8
movups xmm0, xmmword [rax + 0x38]
movups xmmword [rsp + 0xf8], xmm0
movups xmm0, xmmword [rax + 0x48]
movups xmmword [rsp + 0x108], xmm0
movups xmm0, xmmword [rax + 0x58]
movups xmmword [rsp + 0x118], xmm0
movups xmm0, xmmword [rax + 0x68]
movups xmmword [rsp + 0x128], xmm0
mov r8, qword [rax + 0x78]
mov rbx, qword [rax + 0x80]
mov rcx, qword [rax + 0x88]
mov rdi, qword [rax + 0x90]
mov rax, r8
call fcn.0053f660
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rcx
mov rdx, qword [rsp + 0x28]
cmp qword [0x008bf7c8], rdx
je 0x594439
mov r8, qword [rsp + 0x58]
jmp 0x59445e
mov rsi, qword [0x008bf7c0]
mov r8, qword [rsp + 0x58]
xor edi, edi
jmp 0x59444c
inc rdi
cmp rdi, rdx
jge 0x59447b
mov r9, qword [r8 + rdi*8]
mov r10, qword [rsi + rdi*8]
cmp r10, r9
je 0x594449
nop
cmp qword [0x008bf808], rdx
jne 0x594725
mov rsi, qword [0x008bf800]
xor edi, edi
jmp 0x594711
mov rcx, qword [rsp + 0x128]
cmp qword [0x008bfbe8], rcx
jne 0x5944a9
mov rbx, qword [0x008bfbe0]
mov rax, qword [rsp + 0x120]
nop dword [rax + rax]
call fcn.00403880
test al, al
jne 0x5944de
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x25
lea rcx, [0x006bdc47]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x006807a0]
call fcn.0040d680
movups xmmword [rsp + 0x80], xmm15
mov qword [rsp + 0x88], 0
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0xc0]
mov rbx, rax
mov ecx, 0x30
call fcn.0054a9e0
nop dword [rax]
test al, al
je 0x5946d8
mov rcx, qword [rsp + 0x80]
lea rax, [rsp + 0xc0]
lea rbx, [0x006adea0]
nop
call fcn.00549760
test al, al
je 0x5946a3
lea rax, [rsp + 0xc0]
lea rbx, [0x006545e0]
lea rcx, [rsp + 0x88]
call fcn.00549760
test al, al
je 0x59466e
mov rcx, qword [rsp + 0x80]
cmp qword [rcx + 0x10], 0
nop
jne 0x594586
xor eax, eax
jmp 0x5945a0
cmp byte [rcx], 0
je 0x594594
mov rax, 0xffffffffffffffff
jmp 0x5945a0
mov eax, 1
nop dword [rax]
test rax, rax
jle 0x594639
cmp qword [rsp + 0x88], 0
jle 0x594604
lea rax, [0x00680200]
nop dword [rax + rax]
call fcn.0040d680
mov rcx, qword [rsp + 0x88]
mov qword [rax + 8], rcx
mov rcx, qword [rsp + 0x80]
cmp dword [0x00921500], 0
je 0x5945ea
call fcn.004665a0
mov qword [r11], rcx
mov qword [rax], rcx
mov rbx, rax
xor ecx, ecx
xor edi, edi
lea rax, [0x00670d00]
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x32
lea rcx, [0x006c2038]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x2a
lea rcx, [0x006bf8c4]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x21
lea rcx, [0x006bc1c8]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x19
lea rcx, [0x006b85a7]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
nop
call fcn.0040d680
mov qword [rax + 8], 0x1c
lea rcx, [0x006b9c0c]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
inc rdi
cmp rdi, rdx
jge 0x594745
mov r9, qword [r8 + rdi*8]
mov r10, qword [rsi + rdi*8]
nop
cmp r10, r9
je 0x59470e
cmp qword [0x008bf848], rdx
jne 0x594932
mov rsi, qword [0x008bf840]
xor edi, edi
nop dword [rax + rax]
jmp 0x594920
mov rcx, qword [rsp + 0x120]
mov rdx, qword [rsp + 0x128]
mov rsi, qword [rsp + 0x130]
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], rdx
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0xd8], 0
movups xmmword [rsp + 0xe0], xmm15
lea rax, [rsp + 0xa8]
lea rbx, [rsp + 0xd8]
call fcn.0054a300
nop
test al, al
je 0x5948e3
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe8]
call fcn.005a0be0
test rax, rax
je 0x5948ae
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x60], rbx
mov rcx, qword [rsp + 0xc0]
mov rdi, qword [rsp + 0xc8]
mov rsi, qword [rsp + 0xd0]
call fcn.0052fb60
test rax, rax
je 0x594875
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rbx
lea rax, [0x0069a9c0]
call fcn.0040d680
mov rcx, qword [rsp + 0x30]
mov qword [rax], rcx
cmp dword [0x00921500], 0
nop
jne 0x594833
mov rdx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x48]
mov r8, qword [rsp + 0x40]
jmp 0x594852
call fcn.004665e0
mov rdx, qword [rsp + 0x60]
mov qword [r11], rdx
mov rsi, qword [rsp + 0x48]
mov qword [r11 + 8], rsi
mov r8, qword [rsp + 0x40]
mov qword [r11 + 0x10], r8
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], r8
mov rbx, rax
xor ecx, ecx
xor edi, edi
lea rax, [0x00692cc0]
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
nop dword [rax]
call fcn.0040d680
mov qword [rax + 8], 0x2e
lea rcx, [0x006c0d8e]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x20
lea rcx, [0x006bb8f0]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x1e
lea rcx, [0x006babb5]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
inc rdi
nop dword [rax + rax]
cmp rdi, rdx
jge 0x59494d
mov r9, qword [r8 + rdi*8]
mov r10, qword [rsi + rdi*8]
cmp r10, r9
je 0x594918
cmp qword [0x008bf828], rdx
jne 0x5949f9
mov rsi, qword [0x008bf820]
xor edi, edi
jmp 0x5949e7
cmp qword [rsp + 0x128], 0
jne 0x5949af
cmp rbx, 0x20
je 0x594993
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x23
lea rcx, [0x006bcd8e]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
call fcn.0040aee0
mov rbx, rax
xor ecx, ecx
xor edi, edi
lea rax, [0x00668960]
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x31
lea rcx, [0x006c1bbe]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
inc rdi
cmp rdi, rdx
jge 0x594a17
mov r9, qword [r8 + rdi*8]
mov r10, qword [rsi + rdi*8]
cmp r10, r9
je 0x5949e4
nop dword [rax]
cmp qword [0x008bf7e8], rdx
jne 0x594a88
mov rcx, qword [0x008bf7e0]
xor eax, eax
jmp 0x594ac0
cmp qword [rsp + 0x128], 0
je 0x594a57
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x30
lea rcx, [0x006c1607]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
mov rdx, qword [0x008bd948]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, rdx
call fcn.0051dc60
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
lea rax, [0x00676980]
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x22
lea rcx, [0x006bc7fd]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
inc rax
cmp rax, rdx
jge 0x594ad4
mov rbx, qword [r8 + rax*8]
mov rsi, qword [rcx + rax*8]
cmp rsi, rbx
je 0x594abd
jmp 0x594a88
lea rax, [0x006807a0]
nop dword [rax + rax]
call fcn.0040d680
mov qword [rsp + 0x38], rax
lea rbx, [0x006adea0]
mov rcx, rax
lea rax, [rsp + 0xc0]
nop dword [rax]
call fcn.00549760
test al, al
je 0x594d97
lea rax, [0x006807a0]
call fcn.0040d680
mov qword [rsp + 0x78], rax
lea rax, [0x006807a0]
call fcn.0040d680
mov qword [rsp + 0x70], rax
lea rax, [0x006807a0]
call fcn.0040d680
mov qword [rsp + 0x68], rax
lea rax, [0x00680840]
call fcn.0040d680
cmp dword [0x00921500], 0
jne 0x594b6b
mov rdx, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
jmp 0x594b93
call fcn.00466600
mov rdx, qword [rsp + 0x38]
mov qword [r11], rdx
mov rsi, qword [rsp + 0x78]
mov qword [r11 + 8], rsi
mov rdi, qword [rsp + 0x70]
mov qword [r11 + 0x10], rdi
mov r8, qword [rsp + 0x68]
mov qword [r11 + 0x18], r8
mov qword [rsp + 0x50], rax
mov qword [rax + 0x18], rdx
mov qword [rax], rsi
mov qword [rax + 8], rdi
mov qword [rax + 0x10], r8
mov rdx, qword [rsp + 0x120]
mov rsi, qword [rsp + 0x128]
mov rdi, qword [rsp + 0x130]
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0x98], rsi
mov qword [rsp + 0xa0], rdi
lea rbx, [rsp + 0x90]
mov ecx, 0x30
mov rax, rbx
call fcn.0054a9e0
test al, al
jne 0x594bf7
mov eax, 1
jmp 0x594c40
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rdx]
lea rax, [rsp + 0x90]
lea rbx, [0x006adea0]
call fcn.00549760
test al, al
jne 0x594c1e
mov eax, 1
jmp 0x594c40
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rdx + 8]
lea rax, [rsp + 0x90]
lea rbx, [0x006adea0]
call fcn.00549760
xor eax, 1
nop
test al, al
jne 0x594d62
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rdx + 0x10]
lea rax, [rsp + 0x90]
lea rbx, [0x006adea0]
call fcn.00549760
test al, al
je 0x594d62
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rbx + 0x18]
cmp qword [rdx + 0x10], 0
jne 0x594c82
xor eax, eax
nop
jmp 0x594c95
cmp byte [rdx], 0
je 0x594c90
mov rax, 0xffffffffffffffff
jmp 0x594c95
mov eax, 1
test rax, rax
jle 0x594d15
mov rdx, qword [rbx]
cmp qword [rdx + 0x10], 0
jne 0x594ca8
xor eax, eax
jmp 0x594cc0
cmp byte [rdx], 0
je 0x594cb6
mov rax, 0xffffffffffffffff
jmp 0x594cc0
mov eax, 1
nop dword [rax + rax]
test rax, rax
jle 0x594d15
mov rdx, qword [rbx + 8]
cmp qword [rdx + 0x10], 0
jne 0x594cd4
xor eax, eax
jmp 0x594ce7
cmp byte [rdx], 0
je 0x594ce2
mov rax, 0xffffffffffffffff
jmp 0x594ce7
mov eax, 1
test rax, rax
jle 0x594d15
mov rdx, qword [rbx + 0x10]
cmp qword [rdx + 0x10], 0
jne 0x594cfb
xor eax, eax
jmp 0x594d10
cmp byte [rdx], 0
nop
je 0x594d0b
mov rax, 0xffffffffffffffff
jmp 0x594d10
mov eax, 1
test rax, rax
jg 0x594d4e
lea rax, [0x00673e00]
nop dword [rax]
call fcn.0040d680
mov qword [rax + 8], 0x24
lea rcx, [0x006bd4cf]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00657e20]
xor ecx, ecx
xor edi, edi
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
call fcn.0040d680
mov qword [rax + 8], 0x1c
lea rcx, [0x006b9c44]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
lea rax, [0x00673e00]
nop
call fcn.0040d680
mov qword [rax + 8], 0x1c
lea rcx, [0x006b9c28]
mov qword [rax], rcx
xor ebx, ebx
lea rcx, [0x00728640]
mov rdi, rax
xor eax, eax
add rsp, 0x138
pop rbp
ret
mov qword [rsp + 8], rax
call fcn.004646a0
mov rax, qword [rsp + 8]
nop dword [rax]
jmp fcn.00594380