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

Disassembly:
mov rcx, qword gs:[0x28]
mov rcx, qword [rcx]
cmp rsp, qword [rcx + 0x10]
jbe 0x41debc
sub rsp, 0x28
mov qword [rsp + 0x20], rbp
lea rbp, [rsp + 0x20]
mov rax, qword [rsp + 0x30]
test rax, 7
jne 0x41dea1
movzx edx, byte [0x00850a73]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rbx + 0x50]
mov rcx, qword [rsp + 0x68]
mov rdi, rcx
shr rcx, 3
mov r8, rdi
and rdi, 7
mov r9, rcx
mov rcx, rdi
mov r10d, 1
shl r10d, cl
lea rdi, [r9 + rsi]
test dl, dl
je 0x41dbb2
test byte [rdi], al
movzx edx, byte [r9 + rsi]
test dl, r10b
je 0x41dd66
mov rdx, qword [rbx + 0x68]
cmp rdx, 8
jne 0x41db84
mov rsi, qword [rsp + 0x48]
movzx edi, byte [rsi]
mov ecx, dword [rsp + 0x50]
shr dil, cl
cmp ecx, 8
sbb r8d, r8d
and edi, r8d
test dil, 1
setne dil
test dil, dil
jne 0x41db7a
cmp rdx, 8
jne 0x41db57
mov edx, 1
shl edx, cl
cmp ecx, 0x20
sbb edi, edi
and edx, edi
lock or byte [rsi], dl
mov rdx, qword [rbx + 0x68]
cmp rdx, 8
jne 0x41db41
movzx edx, byte [rsi]
shr dl, cl
cmp ecx, 8
sbb ebx, ebx
and edx, ebx
test dl, 1
setne dl
test dl, dl
je 0x41dd4b
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rcx]
test rdx, rdx
je 0x41db3d
mov rbx, qword [rdx + 0x10]
cmp rbx, 0xfd
jne 0x41db27
xor edx, edx
test dl, dl
je 0x41db17
mov rbp, qword [rsp + 0x20]
add rsp, 0x28
ret
mov qword [rsp], rcx
mov qword [rsp + 8], rax
call fcn.0041fcf0
jmp 0x41db0d
jae 0x41dc1d
mov qword [rdx + rbx*8 + 0x18], rax
inc qword [rdx + 0x10]
mov edx, 1
jmp 0x41db09
xor edx, edx
jmp 0x41db09
movzx ebx, byte [rsi]
inc ecx
shr bl, cl
cmp ecx, 8
sbb esi, esi
and ebx, esi
test bl, 0x10
setne dl
jmp 0x41dae5
lea edx, [rcx + 1]
mov edi, ecx
mov ecx, edx
mov r8d, 0x10
shl r8d, cl
cmp ecx, 0x20
sbb edx, edx
and r8d, edx
lock or byte [rsi], r8b
mov ecx, edi
jmp 0x41dac9
mov rbp, qword [rsp + 0x20]
add rsp, 0x28
ret
mov rsi, qword [rsp + 0x48]
movzx r8d, byte [rsi]
mov r9d, dword [rsp + 0x50]
lea ecx, [r9 + 1]
shr r8b, cl
cmp ecx, 8
sbb r10d, r10d
and r8d, r10d
test r8b, 0x10
setne dil
mov ecx, r9d
jmp 0x41daa5
mov ecx, dword [0x00850ecc]
test ecx, ecx
jle 0x41dbc5
mov rcx, qword [rbx + 0x30]
cmp r8, rcx
jae 0x41dc07
test byte [rdi], al
movzx ecx, byte [r9 + rsi]
test cl, r10b
jne 0x41dbfd
lock or byte [rdi], r10b
movzx ecx, byte [rbx + 0x62]
test cl, 1
je 0x41daed
mov rax, qword [rsp + 0x60]
mov rcx, qword [rax + 0x10]
add rcx, qword [rbx + 0x68]
mov qword [rax + 0x10], rcx
mov rbp, qword [rsp + 0x20]
add rsp, 0x28
ret
mov rbp, qword [rsp + 0x20]
add rsp, 0x28
ret
mov rcx, qword [rbx + 0x48]
lea rdx, [r9 + rcx]
test byte [rdx], al
movzx ecx, byte [r9 + rcx]
test cl, r10b
je 0x41dc24
jmp 0x41dbc5
call fcn.00429b50
ud2
call fcn.0042bc80
lea rax, [0x006b3649]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1d
call fcn.0042c640
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
call fcn.0042c4d0
lea rax, [0x006acc02]
mov qword [rsp], rax
mov qword [rsp + 8], 0xc
call fcn.0042c640
mov rax, qword [rsp + 0x38]
mov qword [rsp], rax
call fcn.0042c4d0
lea rax, [0x006aaf98]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.0042c640
mov rax, qword [rsp + 0x40]
mov qword [rsp], rax
call fcn.0042c4d0
lea rax, [0x006aafda]
mov qword [rsp], rax
mov qword [rsp + 8], 2
call fcn.0042c640
call fcn.0042bd10
lea rax, [0x006ab3c8]
mov qword [rsp], rax
mov qword [rsp + 8], 4
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x18], rax
call fcn.0041ded0
lea rax, [0x006ab250]
mov qword [rsp], rax
mov qword [rsp + 8], 3
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 0xffffffffffffffff
call fcn.0041ded0
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov rax, qword [rax + 0x30]
mov byte [rax + 0xf9], 2
lea rax, [0x006af55c]
mov qword [rsp], rax
mov qword [rsp + 8], 0x13
call fcn.0042b3a0
ud2
lea rax, [0x006b7161]
mov qword [rsp], rax
mov qword [rsp + 8], 0x29
call fcn.0042b3a0
ud2
call fcn.0042bc80
call fcn.0042bc80
lea rax, [0x006bb09a]
mov qword [rsp], rax
mov qword [rsp + 8], 0x44
call fcn.0042c640
mov rax, qword [rsp + 0x30]
mov qword [rsp], rax
call fcn.0042c4d0
call fcn.0042bf30
call fcn.0042bd10
call fcn.0042bc80
lea rax, [0x006b170b]
mov qword [rsp], rax
mov qword [rsp + 8], 0x18
call fcn.0042c640
mov rax, qword [rsp + 0x38]
mov qword [rsp], rax
call fcn.0042c4d0
lea rax, [0x006aaf98]
mov qword [rsp], rax
mov qword [rsp + 8], 1
call fcn.0042c640
mov rax, qword [rsp + 0x40]
mov qword [rsp], rax
call fcn.0042c4d0
lea rax, [0x006aafda]
mov qword [rsp], rax
mov qword [rsp + 8], 2
call fcn.0042c640
call fcn.0042bd10
lea rax, [0x006ab3c8]
mov qword [rsp], rax
mov qword [rsp + 8], 4
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x10], rax
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x18], rax
call fcn.0041ded0
lea rax, [0x006ab250]
mov qword [rsp], rax
mov qword [rsp + 8], 3
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x10], rax
mov qword [rsp + 0x18], 0xffffffffffffffff
call fcn.0041ded0
mov rax, qword gs:[0x28]
mov rax, qword [rax]
mov rax, qword [rax + 0x30]
mov byte [rax + 0xf9], 2
lea rax, [0x006b401a]
mov qword [rsp], rax
mov qword [rsp + 8], 0x1f
call fcn.0042b3a0
ud2
lea rax, [0x006b56b7]
mov qword [rsp], rax
mov qword [rsp + 8], 0x23
call fcn.0042b3a0
ud2
call fcn.00452950
jmp fcn.0041d9f0