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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x45f3c9
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
mov eax, dword [rsp + 0x60]
cmp eax, 0xffffffff
je 0x45f2e5
mov rcx, qword [rsp + 0x58]
lea rdx, [0x007ab560]
jmp 0x45f0aa
mov rdx, qword [rdx + 0x210]
test rdx, rdx
je 0x45f2dd
cmp qword [rdx + 0x118], rcx
ja 0x45f0a3
nop dword [rax]
cmp qword [rdx + 0x120], rcx
jbe 0x45f0a3
test rdx, rdx
je 0x45f149
mov rcx, qword [rdx + 0x128]
mov rbx, qword [rdx + 0x130]
nop dword [rax]
cmp rbx, 1
jle 0x45f13d
xor esi, esi
jmp 0x45f0ed
inc rsi
cmp rbx, rsi
jle 0x45f139
lea rdi, [rsi + rsi*2]
mov r8, qword [rcx + rdi*8]
mov r9, qword [rcx + rdi*8 + 8]
movsxd r10, eax
cmp r8, r10
ja 0x45f0ea
add r9, r8
cmp r10, r9
jae 0x45f0ea
mov rcx, qword [rcx + rdi*8 + 0x10]
add rcx, r10
sub rcx, r8
mov rbx, qword [rdx + 0xb8]
cmp rcx, rbx
ja 0x45f2fb
mov qword [rsp + 0x68], rcx
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
xor ecx, ecx
jmp 0x45f11a
movsxd rcx, eax
add rcx, qword [rdx + 0xb0]
jmp 0x45f11a
mov qword [rsp + 0x20], rcx
nop
nop
nop
lea rax, [0x007cd700]
mov qword [rsp], rax
nop dword [rax]
call fcn.0040bfe0
mov rax, qword [0x007cd710]
lea rcx, [0x0061ca80]
mov qword [rsp], rcx
mov qword [rsp + 8], rax
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x10], eax
call fcn.00411d00
mov rax, qword [rsp + 0x18]
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
nop
nop
nop
lea rcx, [0x007cd700]
mov qword [rsp], rcx
call fcn.0040c240
mov rax, qword [rsp + 0x38]
test rax, rax
jne 0x45f2ce
call fcn.0043aa00
lea rax, [0x0065d9a8]
mov qword [rsp], rax
mov qword [rsp + 8], 0x11
call fcn.0043b480
mov eax, dword [rsp + 0x60]
movsxd rax, eax
mov qword [rsp], rax
call fcn.0043b2a0
lea rax, [0x0065a8d5]
mov qword [rsp], rax
mov qword [rsp + 8], 6
call fcn.0043b480
mov rax, qword [rsp + 0x20]
mov qword [rsp], rax
call fcn.0043b2a0
lea rax, [0x0065d02b]
mov qword [rsp], rax
mov qword [rsp + 8], 0x10
call fcn.0043b480
call fcn.0043aaa0
lea rax, [0x007ab560]
jmp 0x45f2c0
mov qword [rsp + 0x40], rax
mov rcx, qword [rax + 0x118]
mov qword [rsp + 0x30], rcx
mov rdx, qword [rax + 0x120]
mov qword [rsp + 0x28], rdx
call fcn.0043aa00
lea rax, [0x0065ad4b]
mov qword [rsp], rax
mov qword [rsp + 8], 7
call fcn.0043b480
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
call fcn.0043b2a0
lea rax, [0x0065ae1e]
mov qword [rsp], rax
mov qword [rsp + 8], 8
call fcn.0043b480
mov rax, qword [rsp + 0x28]
mov qword [rsp], rax
call fcn.0043b2a0
call fcn.0043ace0
call fcn.0043aaa0
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x210]
nop dword [rax]
test rax, rax
jne 0x45f236
jmp 0x45f3af
mov qword [rsp + 0x68], rax
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
xor edx, edx
nop
jmp 0x45f0c9
mov rax, 0xffffffffffffffff
mov qword [rsp + 0x68], rax
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
mov qword [rsp + 0x30], rbx
mov rax, qword [rdx + 0xb0]
mov qword [rsp + 0x28], rax
call fcn.0043aa00
lea rax, [0x0065d9a8]
mov qword [rsp], rax
mov qword [rsp + 8], 0x11
call fcn.0043b480
mov eax, dword [rsp + 0x60]
movsxd rax, eax
mov qword [rsp], rax
call fcn.0043b2a0
lea rax, [0x0065c721]
mov qword [rsp], rax
mov qword [rsp + 8], 0xe
call fcn.0043b480
mov rax, qword [rsp + 0x28]
mov qword [rsp], rax
nop dword [rax]
call fcn.0043b2a0
lea rax, [0x0065a361]
mov qword [rsp], rax
mov qword [rsp + 8], 3
call fcn.0043b480
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
call fcn.0043b2a0
call fcn.0043ace0
call fcn.0043aaa0
lea rax, [0x00663dee]
mov qword [rsp], rax
mov qword [rsp + 8], 0x21
call fcn.00439220
lea rax, [0x006673aa]
mov qword [rsp], rax
mov qword [rsp + 8], 0x2e
call fcn.00439220
nop
call fcn.0046abe0
jmp fcn.0045f060