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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
lea rax, [rsp - 0x90]
cmp rax, qword [rcx + 0x10]
jbe 0x4df9a4
sub rsp, 0x110
mov qword [rsp + 0x108], rbp
lea rbp, [rsp + 0x108]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax]
test rcx, rcx
je 0x4df991
mov rcx, qword [rax + 8]
cmp rcx, 2
jge 0x4df96c
mov rcx, qword [0x00896d68]
mov rdx, qword [0x00896d60]
test rdx, rdx
jne 0x4df94c
mov byte [rsp + 0xe8], 0
mov qword [rsp + 0xf0], 0
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], 0
mov rcx, qword [0x00896288]
mov qword [rsp + 0x58], rcx
lea rdx, [rsp + 0xe8]
cmp rdx, rcx
je 0x4df50a
mov rbx, qword [rcx + 8]
mov qword [rsp + 0x50], rbx
mov rsi, qword [rcx + 0x10]
mov qword [rsp + 0x30], rsi
test rsi, rsi
jg 0x4df8fb
mov rdi, rsi
xor r8d, r8d
xor r9d, r9d
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x80], r9
cmp rsi, rdi
jle 0x4df8f3
mov qword [rsp], r9
mov qword [rsp + 8], rbx
shl rdi, 3
mov qword [rsp + 0x10], rdi
call fcn.00455480
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0xf0], rax
mov rax, qword [rsp + 0x58]
movzx eax, byte [rax]
mov byte [rsp + 0xe8], al
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 0x20]
mov qword [rsp + 0x48], rcx
mov rdx, qword [rax + 0x18]
xor ebx, ebx
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x78], rdx
cmp rbx, rcx
jge 0x4df5a9
mov rsi, qword [rdx]
mov qword [rsp + 0x60], rsi
mov qword [rsp], rsi
mov rdi, qword [0x00896288]
mov qword [rsp + 8], rdi
call fcn.004cdeb0
mov rax, qword [rsp + 0x10]
test rax, rax
jle 0x4df87a
lea rax, [rsp + 0xe8]
mov qword [rsp], rax
mov qword [rsp + 8], rax
mov rcx, qword [rsp + 0x60]
mov qword [rsp + 0x10], rcx
call fcn.004cd780
mov rax, qword [rsp + 0x78]
lea rdx, [rax + 8]
mov rax, qword [rsp + 0x40]
lea rbx, [rax + 1]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x78], rdx
cmp rbx, rcx
jl 0x4df530
mov rcx, qword [rax]
mov qword [rsp + 8], rcx
lea rcx, [rsp + 0xe8]
mov qword [rsp], rcx
call fcn.004cdeb0
mov rax, qword [rsp + 0x10]
test rax, rax
je 0x4df645
lea rax, [0x0068d4a0]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x70], rax
mov qword [rax + 8], 0x1b
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4df629
lea rcx, [0x006d6df4]
mov qword [rax], rcx
lea rcx, [0x007e49c0]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], rax
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov qword [rsp], rax
lea rcx, [0x006d6df4]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x70]
jmp 0x4df602
mov byte [rsp + 0xc8], 0
mov qword [rsp + 0xd0], 0
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xe0], 0
mov byte [rsp + 0xa8], 0
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0xc0], 0
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 8]
mov qword [rsp + 8], rcx
lea rcx, [rsp + 0xa8]
mov qword [rsp], rcx
call fcn.004ccfe0
mov rax, qword [rsp + 0x10]
mov qword [rsp + 0x68], rax
mov rcx, qword [rsp + 0x118]
mov rdx, qword [rcx + 0x10]
mov qword [rsp + 0x10], rdx
mov qword [rsp], rax
mov qword [rsp + 8], rax
call fcn.004cd780
mov rax, qword [rsp + 0x118]
mov rcx, qword [rax + 0x20]
mov qword [rsp + 0x48], rcx
mov rax, qword [rax + 0x18]
xor edx, edx
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x78], rax
cmp rdx, rcx
jge 0x4df7d9
mov rbx, qword [rax]
mov byte [rsp + 0x88], 0
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 0
mov qword [rsp + 0xa0], 0
lea rsi, [rsp + 0x88]
mov qword [rsp], rsi
mov qword [rsp + 8], rbx
mov rbx, qword [0x00896288]
mov qword [rsp + 0x10], rbx
call fcn.004cd4b0
mov rax, qword [rsp + 0x18]
lea rcx, [rsp + 0xc8]
mov qword [rsp], rcx
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 8], rdx
mov qword [rsp + 0x10], rax
call fcn.004cdc00
lea rax, [rsp + 0xc8]
mov qword [rsp], rax
mov rcx, qword [0x00896288]
mov qword [rsp + 8], rcx
call fcn.004cdeb0
mov rax, qword [rsp + 0x10]
test rax, rax
jne 0x4df801
mov rbx, qword [rsp + 0x78]
lea rax, [rbx + 8]
mov rbx, qword [rsp + 0x40]
lea rdx, [rbx + 1]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x78], rax
cmp rdx, rcx
jl 0x4df712
mov qword [rsp + 0x120], 0
mov qword [rsp + 0x128], 0
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
lea rax, [0x0068d4a0]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x70], rax
mov qword [rax + 8], 0x1d
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4df85e
lea rcx, [0x006d79ec]
mov qword [rax], rcx
lea rcx, [0x007e49c0]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], rax
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov qword [rsp], rax
lea rcx, [0x006d79ec]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x70]
jmp 0x4df837
lea rax, [0x0068d4a0]
mov qword [rsp], rax
call fcn.0040f840
mov rax, qword [rsp + 8]
mov qword [rsp + 0x70], rax
mov qword [rax + 8], 0x1f
mov ecx, dword [0x008b4340]
test ecx, ecx
jne 0x4df8d7
lea rcx, [0x006d8586]
mov qword [rax], rcx
lea rcx, [0x007e49c0]
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], rax
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
mov qword [rsp], rax
lea rcx, [0x006d8586]
mov qword [rsp + 8], rcx
call fcn.00410240
mov rax, qword [rsp + 0x70]
jmp 0x4df8b0
mov rdi, rsi
jmp 0x4df4ba
lea rdi, [0x0066f540]
mov qword [rsp], rdi
mov qword [rsp + 8], rsi
lea rdi, [rsi + 4]
mov qword [rsp + 0x10], rdi
call fcn.0043e630
mov rsi, qword [rsp + 0x20]
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x18]
mov rax, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xe8]
mov rbx, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x30]
jmp 0x4df49f
mov qword [rsp + 0x120], rdx
mov qword [rsp + 0x128], rcx
mov rbp, qword [rsp + 0x108]
add rsp, 0x110
ret
cmp rcx, 0x7fffffff
jle 0x4df988
mov rdx, qword [0x00896d50]
mov rcx, qword [0x00896d58]
jmp 0x4df429
xor ecx, ecx
xor edx, edx
jmp 0x4df429
mov rdx, qword [0x00896d70]
mov rcx, qword [0x00896d78]
jmp 0x4df429
call fcn.00452210
jmp fcn.004df3c0