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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x438a81
sub rsp, 0x50
mov qword [rsp + 0x48], rbp
lea rbp, [rsp + 0x48]
lea rax, [0x00d85462]
cmp byte [rax], 0
jne 0x43886f
lea rax, [0x00d85460]
cmp byte [rax], 0
jne 0x43886f
cmp dword [0x00d854c0], 0
ja 0x438865
lea rax, [0x00d85461]
cmp byte [rax], 0
je 0x438848
xor eax, eax
mov ecx, dword [0x00d69ba0]
mov rdx, qword [0x00d69ba8]
sub rdx, qword [0x00d69bb8]
mov rbx, rdx
sub edx, ecx
mov esi, dword [0x00d69ba4]
sub edx, esi
mov edi, dword [0x00d69bb4]
sub edx, edi
cmp edx, eax
jg 0x43883e
test edx, edx
jl 0x4389a1
lea rax, [0x00d85560]
mov qword [rsp], rax
call fcn.0040a350
xor eax, eax
xor ecx, ecx
jmp 0x4386a1
mov rdx, qword [rsp + 0x20]
inc rdx
mov rax, rdx
mov qword [rsp + 0x28], rcx
mov rdx, qword [0x00d68fc8]
mov rbx, qword [0x00d68fc0]
cmp rax, rdx
jge 0x438714
mov qword [rsp + 0x20], rax
mov rcx, qword [rbx + rax*8]
mov qword [rsp + 0x38], rcx
mov qword [rsp], rcx
call fcn.0044f580
lea rax, [rsp + 8]
cmp byte [rax], 0
je 0x4386e1
mov rcx, qword [rsp + 0x28]
jmp 0x438696
mov rcx, qword [rsp + 0x38]
mov edx, dword [rcx + 0x90]
mov ebx, edx
btr edx, 0xc
lea esi, [rdx - 1]
cmp esi, 2
jbe 0x438903
cmp edx, 4
jne 0x43870d
mov rcx, qword [rsp + 0x28]
inc rcx
jmp 0x438696
mov rcx, qword [rsp + 0x28]
jmp 0x438696
lea rax, [0x00d85560]
mov qword [rsp], rax
call fcn.0040a530
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x4388e8
call fcn.00449280
mov rax, qword [rsp]
test rax, rax
je 0x4388af
mov qword [rsp + 0x40], rax
movabs rax, 0x100000004
mov qword [rsp + 8], rax
call fcn.00430c90
mov rax, qword [rsp + 0x40]
mov qword [rax + 0xa0], 0
mov rcx, qword [0x00d69be0]
test rcx, rcx
je 0x438826
lea rdx, [rcx + 0xa0]
test byte [rdx], al
mov rdx, rax
mov qword [rcx + 0xa0], rax
lea rax, [0x00d69be0]
test byte [rax], al
mov qword [0x00d69be0], rdx
inc dword [0x00d69be8]
mov rax, qword [0x00d69bc8]
test rax, rax
je 0x4387d0
mov rcx, qword [rax + 0x10]
mov qword [0x00d69bc8], rcx
mov ecx, 0xffffffff
lea rdx, [0x00d69bd0]
lock xadd dword [rdx], ecx
test rax, rax
je 0x438894
mov rcx, qword [0x00d69b98]
test rcx, rcx
je 0x4387fa
mov rdx, qword [rcx + 0x120]
mov qword [0x00d69b98], rdx
add dword [0x00d69ba0], 0xffffffff
test rcx, rcx
je 0x438879
lea rdx, [rcx + 0xa8]
test byte [rdx], al
mov qword [rcx + 0xa8], rax
lea rax, [rcx + 0x110]
mov qword [rsp], rax
call fcn.0040a620
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
lea rcx, [0x00d69bd8]
test byte [rcx], al
mov rdx, rax
mov qword [0x00d69bd8], rax
jmp 0x438790
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
lea rax, [0x00d85458]
cmp byte [rax], 0
je 0x43885e
mov eax, 1
jmp 0x438647
xor eax, eax
jmp 0x438647
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
mov rbp, qword [rsp + 0x48]
add rsp, 0x50
ret
lea rax, [0x009113a9]
mov qword [rsp], rax
mov qword [rsp + 8], 0x19
call fcn.0042d1f0
ud2
lea rax, [0x009113c2]
mov qword [rsp], rax
mov qword [rsp + 8], 0x19
call fcn.0042d1f0
ud2
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov rax, qword [rax + 0x30]
mov dword [rax + 0xbc], 0xffffffff
lea rax, [0x00918360]
mov qword [rsp], rax
mov qword [rsp + 8], 0x25
call fcn.0042d1f0
ud2
lea rax, [0x0091ec66]
mov qword [rsp], rax
mov qword [rsp + 8], 0x36
call fcn.0042d1f0
ud2
mov dword [rsp + 0x1c], ebx
lea rax, [0x00d85560]
mov qword [rsp], rax
call fcn.0040a530
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x98]
mov qword [rsp + 0x30], rax
call fcn.0042dbe0
lea rax, [0x00912c32]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1b
call fcn.0042e580
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
call fcn.0042e3b0
lea rax, [0x00909967]
mov qword [rsp], rax
mov qword [rsp + 8], 0xb
call fcn.0042e580
mov eax, dword [rsp + 0x1c]
mov eax, eax
mov qword [rsp], rax
call fcn.0042e2a0
call fcn.0042de80
call fcn.0042dc70
lea rax, [0x0090ed2d]
mov qword [rsp], rax
mov qword [rsp + 8], 0x15
call fcn.0042d1f0
ud2
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x18], ecx
mov dword [rsp + 0x14], esi
mov dword [rsp + 0x10], edi
call fcn.0042dbe0
lea rax, [0x00912c4d]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1b
call fcn.0042e580
mov eax, dword [rsp + 0x18]
movsxd rax, eax
mov qword [rsp], rax
call fcn.0042e3b0
lea rax, [0x0090ad5e]
mov qword [rsp], rax
mov qword [rsp + 8], 0xe
call fcn.0042e580
mov eax, dword [rsp + 0x14]
movsxd rax, eax
mov qword [rsp], rax
call fcn.0042e3b0
lea rax, [0x00908667]
mov qword [rsp], rax
mov qword [rsp + 8], 8
call fcn.0042e580
mov rax, qword [rsp + 0x30]
movsxd rax, eax
mov qword [rsp], rax
call fcn.0042e3b0
lea rax, [0x00908194]
mov qword [rsp], rax
mov qword [rsp + 8], 7
call fcn.0042e580
mov eax, dword [rsp + 0x10]
movsxd rax, eax
mov qword [rsp], rax
call fcn.0042e3b0
call fcn.0042de80
call fcn.0042dc70
lea rax, [0x009145f4]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1e
call fcn.0042d1f0
ud2
call fcn.004555f0
jmp fcn.004385e0