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

Disassembly:
lea r12, [rsp - 0x70]
cmp r12, qword [r14 + 0x10]
jbe 0x5983f0
sub rsp, 0xf0
mov qword [rsp + 0xe8], rbp
lea rbp, [rsp + 0xe8]
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x138], r10
mov qword [rsp + 0x140], r11
mov rdx, qword [0x009a3df0]
mov r12, qword [0x009a3df8]
mov qword [rsp + 0x80], r12
xor r13d, r13d
xor r15d, r15d
xor r13d, r13d
mov qword [rsp + 0x68], r13
xor r13d, r13d
jmp 0x597ec3
add rdx, 0x40
inc r13
mov qword [rsp + 0x68], r12
mov r12, qword [rsp + 0x80]
cmp r13, r12
jge 0x597f23
movups xmm0, xmmword [rdx]
movups xmmword [rsp + 0xa8], xmm0
movups xmm0, xmmword [rdx + 0x10]
movups xmmword [rsp + 0xb8], xmm0
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rsp + 0xc8], xmm0
movups xmm0, xmmword [rdx + 0x30]
movups xmmword [rsp + 0xd8], xmm0
nop word [rax + rax]
cmp qword [rsp + 0xa8], rax
jne 0x597f1c
mov r15, qword [rsp + 0xe0]
mov r12, qword [rsp + 0xd8]
jmp 0x597eaf
mov r12, qword [rsp + 0x68]
jmp 0x597eaf
test r15, r15
jne 0x597f55
mov rdx, qword [rsp + 0x68]
cmp rdx, 4
je 0x598122
mov rax, qword [0x009af1a0]
mov rbx, qword [0x009af1a8]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
cmp r15, 2
je 0x5983c5
mov qword [rsp + 0x100], rax
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0x140], r11
mov qword [rsp + 0xa0], r10
mov qword [rsp + 0x118], rdi
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x120], rsi
mov qword [rsp + 0x130], r9
mov qword [rsp + 0x128], r8
mov qword [rsp + 0x70], r15
cmp r15, 3
jne 0x598053
movzx edx, byte [rsp + 0xf8]
nop
test dl, dl
jne 0x598053
mov rax, qword [0x009ad378]
call fcn.0050ff00
cmp rbx, 1
jne 0x597fdf
cmp byte [rax], 0x31
je 0x598006
mov rax, qword [rsp + 0x100]
call fcn.0040b080
mov rbx, rax
lea rax, [0x007f2380]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
mov rsi, qword [rsp + 0x120]
mov rdi, qword [rsp + 0x118]
mov r8, qword [rsp + 0x128]
mov r9, qword [rsp + 0x130]
mov r10, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x140]
mov r15, qword [rsp + 0x70]
cmp r15, 0x14
jae 0x5983a7
mov rdx, qword [0x009afe48]
mov r12, qword [0x009afe40]
cmp r15, rdx
jae 0x5983e4
mov rdx, qword [r12 + r15*8]
nop dword [rax + rax]
test rdx, rdx
je 0x5983a7
mov rax, r15
call fcn.004d3540
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x98], rbx
mov rcx, qword [rax + 0x38]
mov rdi, qword [rsp + 0x118]
mov rax, rbx
mov rbx, qword [rsp + 0x108]
mov rsi, rcx
mov rcx, qword [rsp + 0x110]
call rsi
mov rcx, qword [rsp + 0x78]
mov rcx, qword [rcx + 0x30]
mov rax, qword [rsp + 0x98]
xor ebx, ebx
xor edi, edi
mov rdx, rcx
mov rcx, rdi
call rdx
mov rdx, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x120]
mov r8, qword [rsp + 0x128]
mov r9, qword [rsp + 0x130]
mov r10, qword [rsp + 0xa0]
mov r11, qword [rsp + 0x140]
mov r15, qword [rsp + 0x70]
mov rdi, rcx
mov rcx, rbx
mov rbx, rax
mov rax, qword [rsp + 0x100]
test r10, r10
je 0x598389
mov r12d, dword [r10 + 0x10]
cmp r12d, 0x4bcec15d
jne 0x598207
lea r12, [0x006cf260]
cmp r10, r12
jne 0x598389
cmp rdx, 1
jne 0x5981e9
nop
lea rdx, [rax - 0xd]
nop dword [rax + rax]
cmp rdx, 2
ja 0x5981bc
movups xmmword [rsp + 0x88], xmm15
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x88], 0xffffffffffffffff
mov rax, r11
mov r10, r9
lea r11, [rsp + 0x88]
mov r9, r8
mov r8, rsi
mov rsi, rdi
mov rdi, rcx
mov rcx, rbx
mov rbx, r15
call fcn.00546b40
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, r11
mov r10, r9
mov r9, r8
mov r8, rsi
mov rsi, rdi
mov rdi, rcx
mov rcx, rbx
mov rbx, r15
call fcn.00546060
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, rdx
mov rbx, r12
mov rcx, r11
call fcn.00597d60
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
cmp r12d, 0x8c7bd38d
jne 0x5982a5
lea r12, [0x006f9b00]
nop dword [rax + rax]
cmp r10, r12
jne 0x598389
cmp rdx, 3
jne 0x598287
mov rax, r11
call fcn.0053da60
test al, al
je 0x59824f
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x20
lea rcx, [0x00727418]
mov qword [rax], rcx
mov rbx, rax
lea rax, [0x007f1c00]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, rdx
mov rbx, r12
mov rcx, r11
call fcn.00597d60
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
cmp r12d, 0xc0d9e4a4
jne 0x598389
lea r12, [0x006c9f00]
nop dword [rax]
cmp r10, r12
jne 0x598389
mov r13, qword [r11 + 8]
mov r15, qword [r11 + 0x10]
mov rax, qword [r11]
cmp rdx, 4
jne 0x598355
movups xmmword [rsp], xmm15
movups xmmword [rsp + 0x10], xmm15
mov r10, r8
mov r11, r9
mov r8, rdi
mov r9, rsi
mov rdi, rbx
mov rsi, rcx
mov rbx, r13
mov rcx, r15
nop dword [rax]
call fcn.00545640
test al, al
je 0x59831d
xor eax, eax
xor ebx, ebx
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
lea rax, [0x006d8800]
call fcn.0040daa0
mov qword [rax + 8], 0x22
lea rcx, [0x007284e7]
mov qword [rax], rcx
mov rbx, rax
lea rax, [0x007f1c00]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rbx, r13
mov rcx, r15
nop dword [rax + rax]
call fcn.0040b1a0
lea rbx, [0x006c9f00]
mov rcx, rax
mov rax, qword [rsp + 0x68]
call fcn.00597d60
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, qword [0x009af1a0]
mov rbx, qword [0x009af1a8]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, qword [0x009af1a0]
mov rbx, qword [0x009af1a8]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
call fcn.0040b080
mov rbx, rax
lea rax, [0x007f2380]
mov rbp, qword [rsp + 0xe8]
add rsp, 0xf0
ret
mov rax, r15
mov rcx, rdx
call fcn.00465ee0
nop
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r10
mov qword [rsp + 0x50], r11
nop dword [rax]
call fcn.00463860
mov rax, qword [rsp + 0x10]
mov rbx, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdi, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
mov r8, qword [rsp + 0x38]
mov r9, qword [rsp + 0x40]
mov r10, qword [rsp + 0x48]
mov r11, qword [rsp + 0x50]
jmp fcn.00597e40