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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x416749
push rbp
mov rbp, rsp
sub rsp, 0x30
mov dword [rsp + 0x50], ecx
test rbx, rbx
je 0x416735
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rbx
movzx ecx, byte [rbx + 8]
test cl, 4
je 0x4164af
lea rax, [0x0109defd]
mov ebx, 0x15
nop
call fcn.004400a0
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rax + 0x48]
mov rcx, qword [rdx]
mov esi, dword [rbx + 0xc]
lea rax, [rsp + 0x50]
mov rbx, rsi
call rcx
mov qword [rsp + 0x18], rax
mov rbx, qword [rsp + 0x48]
movzx ecx, byte [rbx + 8]
xor ecx, 4
mov byte [rbx + 8], cl
cmp qword [rbx + 0x10], 0
jne 0x416522
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rdx + 0x40]
mov rax, qword [rbx]
mov ecx, 1
call fcn.00411dc0
cmp dword [0x0203dd30], 0
jne 0x416504
mov rbx, qword [rsp + 0x48]
jmp 0x416519
call fcn.00479b20
mov qword [r11], rax
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rbx + 0x10]
mov qword [r11 + 8], rdx
mov qword [rbx + 0x10], rax
mov rax, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x40]
jmp 0x416548
mov rax, rdx
call fcn.00414fa0
mov rax, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x18]
mov rax, rcx
mov rdx, qword [rsp + 0x40]
movzx ecx, byte [rbx + 9]
mov esi, 1
shl rsi, cl
lea rcx, [rsi - 1]
and rcx, rax
cmp qword [rbx + 0x18], 0
je 0x416583
mov qword [rsp + 0x20], rcx
mov rax, rdx
call fcn.00416a40
mov rax, qword [rsp + 0x18]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
movzx esi, word [rdx + 0x52]
imul rcx, rsi
add rcx, qword [rbx + 0x10]
xor edi, edi
xor r8d, r8d
jmp 0x416611
mov r11, rdi
mov r9, r8
cmp qword [rbx + 0x18], 0
jne 0x416692
mov rsi, qword [rbx]
inc rsi
movzx edi, byte [rbx + 9]
cmp rsi, 8
jle 0x4165db
mov r8, rcx
mov ecx, edi
mov r10d, 1
shl r10, cl
shr r10, 1
lea r12, [r10 + r10*2]
lea r10, [r10 + r12*4]
cmp r10, rsi
jb 0x416529
jmp 0x4165e0
mov r8, rcx
mov ecx, edi
cmp cl, 0xf
jbe 0x4165ea
mov ecx, 0xf
movzx esi, word [rbx + 0xa]
and ecx, 0xf
mov edi, 1
shl edi, cl
nop dword [rax + rax]
cmp si, di
jae 0x416529
jmp 0x416695
mov rcx, r9
xor r9d, r9d
jmp 0x416640
mov r9, rcx
lea r9, [r9 + rsi]
lea r9, [r9 - 8]
mov r9, qword [r9]
test r9, r9
jne 0x41660e
jmp 0x416596
lea r10, [rdi + 1]
mov rdi, r11
mov r8, r9
mov r9, r10
nop dword [rax + rax]
cmp r9, 8
jae 0x416616
test byte [rcx], al
movzx r10d, byte [rcx + r9]
cmp r10b, 1
ja 0x41666e
test rdi, rdi
mov r11, rcx
cmovne r11, rdi
mov rdi, r9
cmovne r9, r8
test r10b, r10b
jne 0x41662e
jmp 0x41659c
mov r10, rcx
lea r10, [r10 + r9*4]
lea r10, [r10 + 8]
mov r10d, dword [r10]
nop dword [rax]
cmp dword [rsp + 0x50], r10d
je 0x4166ea
mov r11, rdi
mov rdi, r9
mov r9, r8
jmp 0x41662e
mov r8, rcx
test r11, r11
jne 0x4166bd
mov rax, rbx
mov rbx, rdx
mov rcx, r8
call fcn.00412fe0
mov rdx, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
mov r11, rax
xor r9d, r9d
mov rax, qword [rsp + 0x18]
shr rax, 0x38
cmp al, 5
jae 0x4166c8
add eax, 5
test byte [r11], al
mov rsi, r9
and esi, 7
mov byte [r11 + rsi], al
mov esi, dword [rsp + 0x50]
mov rcx, r11
lea rdi, [r11 + r9*4]
lea rdi, [rdi + 8]
nop
mov dword [rdi], esi
inc qword [rbx]
movzx edx, byte [rdx + 0x51]
imul r9, rdx
movzx edx, byte [rbx + 8]
lea rax, [r9 + rcx]
lea rax, [rax + 0x28]
nop
test dl, 4
jne 0x416725
mov qword [rsp + 0x28], rax
lea rax, [0x0109defd]
mov ebx, 0x15
call fcn.004400a0
mov rax, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x48]
movzx ecx, byte [rbx + 8]
and ecx, 0xfffffffb
mov byte [rbx + 8], cl
add rsp, 0x30
pop rbp
ret
lea rax, [0x00f35d20]
lea rbx, [0x0179a130]
call fcn.0043f400
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], ecx
call fcn.00477be0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov ecx, dword [rsp + 0x18]
jmp fcn.00416460