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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x41dd11
sub rsp, 0x60
mov qword [rsp + 0x58], rbp
lea rbp, [rsp + 0x58]
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
mov rcx, qword [rax + 0x30]
mov edx, dword [rcx + 0xd0]
inc edx
mov dword [rcx + 0xd0], edx
mov ecx, dword [0x0089de88]
mov dword [rsp + 0x20], ecx
shr ecx, 1
and ecx, 1
dec ecx
neg ecx
mov ecx, ecx
cmp rcx, 2
jae 0x41dd0a
lea rcx, [rcx + rcx*4]
lea rbx, [0x0089ce60]
lea rcx, [rbx + rcx*8 + 0x1060]
mov qword [rsp], rcx
call fcn.0041ed50
mov rax, qword [rsp + 8]
test rax, rax
je 0x41dbb3
movzx ecx, byte [rax + 0x64]
mov byte [rsp + 0x1f], cl
cmp cl, 1
je 0x41db39
mov eax, dword [rax + 0x58]
mov dword [rsp + 0x24], eax
mov edx, dword [rsp + 0x20]
cmp edx, eax
jne 0x41da81
mov rax, qword [rsp + 0x50]
mov ecx, edx
jmp 0x41da19
call fcn.0042b850
lea rax, [0x006d6b40]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1a
call fcn.0042c220
movzx eax, byte [rsp + 0x1f]
movzx eax, al
mov qword [rsp], rax
call fcn.0042c020
lea rax, [0x006d14db]
mov qword [rsp], rax
mov qword [rsp + 8], 0xc
call fcn.0042c220
mov eax, dword [rsp + 0x24]
mov eax, eax
mov qword [rsp], rax
call fcn.0042c020
lea rax, [0x006d0b1b]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.0042c220
mov eax, dword [rsp + 0x20]
mov eax, eax
mov qword [rsp], rax
call fcn.0042c020
lea rax, [0x006cf2b1]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.0042c220
call fcn.0042b8f0
lea rax, [0x006d8719]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1f
call fcn.0042aea0
ud2
mov ecx, dword [rax + 0x58]
mov edx, dword [rsp + 0x20]
lea ebx, [rdx - 2]
cmp ecx, ebx
jne 0x41da78
lea ecx, [rdx - 1]
mov rsi, rax
mov eax, ebx
lock cmpxchg dword [rsi + 0x58], ecx
sete cl
test cl, cl
jne 0x41db64
jmp 0x41da78
mov rax, qword [rsi + 0x20]
mov qword [rsp + 0x28], rax
mov qword [rsp], rsi
mov byte [rsp + 8], 0
call fcn.0041de90
movzx eax, byte [rsp + 0x10]
test al, al
je 0x41dbaf
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x50]
mov rcx, qword [rcx + 0x30]
mov edx, dword [rcx + 0xd0]
dec edx
mov dword [rcx + 0xd0], edx
mov qword [rsp + 0x68], rax
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
xor eax, eax
jmp 0x41db89
mov dword [0x0089de8c], 1
mov rcx, qword [rsp + 0x50]
mov rcx, qword [rcx + 0x30]
mov edx, dword [rcx + 0xd0]
dec edx
mov dword [rcx + 0xd0], edx
mov ecx, dword [0x008b4450]
test ecx, ecx
jle 0x41dbf7
mov ecx, dword [rsp + 0x20]
lea eax, [rcx - 2]
lea rdx, [0x00897b1c]
lock cmpxchg dword [rdx], ecx
sete cl
test cl, cl
jne 0x41dc0a
mov qword [rsp + 0x68], 0xffffffffffffffff
mov rbp, qword [rsp + 0x58]
add rsp, 0x60
ret
mov rax, qword [0x008b75f0]
mov qword [rsp + 0x48], rax
mov rcx, qword [0x0089df20]
mov qword [rsp + 0x40], rcx
mov rdx, qword [0x0089df28]
mov qword [rsp + 0x38], rdx
movsd xmm0, qword [0x0089df30]
movsd qword [rsp + 0x30], xmm0
call fcn.0042b850
lea rax, [0x006d8738]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1f
call fcn.0042c220
mov rax, qword [rsp + 0x48]
shr rax, 0x14
mov qword [rsp], rax
call fcn.0042bf00
lea rax, [0x006d205a]
mov qword [rsp], rax
mov qword [rsp + 8], 0xe
call fcn.0042c220
mov rax, qword [rsp + 0x40]
shr rax, 0x14
mov qword [rsp], rax
call fcn.0042bf00
lea rax, [0x006d3a36]
mov qword [rsp], rax
mov qword [rsp + 8], 0x13
call fcn.0042c220
mov rax, qword [rsp + 0x38]
mov qword [rsp], rax
call fcn.0042bf00
lea rax, [0x006d0acb]
mov qword [rsp], rax
mov qword [rsp + 8], 0xa
call fcn.0042c220
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp], xmm0
call fcn.0042bc20
lea rax, [0x006d14b7]
mov qword [rsp], rax
mov qword [rsp + 8], 0xc
call fcn.0042c220
call fcn.0042b8f0
jmp 0x41dbf7
call fcn.004293e0
ud2
call fcn.00452210
jmp fcn.0041d9c0