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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x5ca108
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov qword [rsp + 0xa0], r10
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rcx
mov qword [rsp + 0x80], rdi
mov byte [rsp + 0x88], sil
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x98], r9
test r10, r10
je 0x5c9eb5
cmp qword [r10 + 0x18], 0
je 0x5c9eb5
mov rcx, qword [rax + 0x68]
mov ebx, 1
mov rax, rcx
call fcn.0057e0e0
test rdi, rdi
jne 0x5c9ea8
cmp rbx, 1
jne 0x5c9ea8
mov rax, qword [rsp + 0xa0]
mov rdx, qword [rax + 0x18]
mov rcx, qword [rdx]
call rcx
mov rax, qword [rsp + 0x68]
mov r10, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
xor edx, edx
nop
jmp 0x5c9ecf
mov rax, rcx
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x20]
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x30], rcx
mov rsi, qword [rax + 0x68]
mov rbx, qword [rsp + 0x70]
mov rax, rsi
call fcn.005b9ce0
test rbx, rbx
jne 0x5ca0fe
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x48], rcx
mov rsi, qword [rax + 0x10]
mov qword [rsp + 0x18], rsi
mov rdi, qword [rsp + 0x30]
test rdi, rdi
je 0x5c9f89
cmp rsi, 0x64
jne 0x5c9f62
mov r8, qword [rsp + 0xa0]
test r8, r8
je 0x5c9f3b
mov rdx, qword [r8 + 0x20]
test rdx, rdx
je 0x5c9f3b
mov rax, qword [rdx]
call rax
mov rdi, qword [rsp + 0x30]
mov rax, rdi
lea rbx, [rsp + 0x18]
call fcn.00405780
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x18]
xor edi, edi
nop
jmp 0x5c9f89
cmp rsi, 0xc8
jl 0x5c9f89
mov rax, rdi
call fcn.00405dc0
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x18]
xor edi, edi
lea rdx, [rsi - 0x64]
cmp rdx, 0x63
ja 0x5ca05c
nop word [rax + rax]
cmp rsi, 0x65
je 0x5ca05c
mov rcx, qword [rsp + 0x20]
inc rcx
cmp rcx, 5
jg 0x5ca039
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x30], rdi
mov rax, qword [rsp + 0x68]
call fcn.005c8020
mov rcx, qword [rsp + 0x68]
mov qword [rcx + 0xa0], rax
mov rdx, qword [rsp + 0xa0]
test rdx, rdx
je 0x5c9ec2
mov rsi, qword [rdx + 0x28]
test rsi, rsi
je 0x5c9ec2
mov rcx, qword [rsi]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rdi + 0x38]
mov rax, qword [rsp + 0x18]
mov rdx, rsi
call rcx
test rax, rax
jne 0x5ca027
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0xa0]
jmp 0x5c9ec2
mov rcx, rbx
mov rbx, rax
xor eax, eax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
lea rax, [0x006551ba]
mov ebx, 0x2e
call fcn.00468600
mov rcx, rbx
mov rbx, rax
xor eax, eax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
nop dword [rax]
call fcn.005ba200
test al, al
jne 0x5ca070
mov rcx, qword [rsp + 0x50]
jmp 0x5ca0d7
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rcx + 0x68]
mov qword [rsp + 0x40], rdx
mov rbx, qword [rcx + 0x50]
mov rsi, qword [rcx + 0x58]
mov qword [rsp + 0x38], rsi
lea rax, [0x00612f40]
call fcn.0040a960
mov rbx, rax
mov rcx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
call fcn.005ca420
mov qword [rsp + 0x38], rbx
mov rcx, rax
lea rax, [0x00610760]
mov rbx, rcx
nop dword [rax + rax]
call fcn.0040a960
mov rcx, qword [rsp + 0x50]
mov qword [rcx + 0x40], rax
mov rdx, qword [rsp + 0x38]
mov qword [rcx + 0x48], rdx
mov rdx, qword [rsp + 0x68]
mov rdx, qword [rdx + 0x60]
mov qword [rcx + 0x88], rdx
mov rax, rcx
mov rbx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov byte [rsp + 0x28], sil
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x40], r10
call fcn.0045f280
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
movzx esi, byte [rsp + 0x28]
mov r8, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x40]
nop dword [rax]
jmp fcn.005c9e20