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

Disassembly:
lea r12, [rsp - 0xc8]
cmp r12, qword [r14 + 0x10]
jbe 0x408806
push rbp
mov rbp, rsp
sub rsp, 0x140
movzx edx, dil
cmp rdx, 9
jae 0x4087f5
mov r8, rdx
shl rdx, 4
lea r9, [0x008c77c0]
mov r10, qword [rdx + r9]
mov r9, qword [rdx + r9 + 8]
test cl, cl
je 0x4082a5
test rax, rax
jge 0x4082a5
cmp r8, 8
jae 0x4087e8
lea r8, [0x008c7740]
mov r10, qword [rdx + r8]
mov r9, qword [rdx + r8 + 8]
mov qword [rsp + 0x130], r10
mov byte [rsp + 0x47], cl
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x60], r9
movups xmmword [rsp + 0xcc], xmm15
lea rdi, [rsp + 0xd0]
lea rdi, [rdi - 0x20]
nop dword [rax + rax]
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.00466c8b
mov rbp, qword [rbp]
movabs rdx, 0x20656d69746e7572
mov qword [rsp + 0xcc], rdx
movabs rdx, 0x203a726f72726520
mov qword [rsp + 0xd3], rdx
xor edx, edx
mov esi, 0x64
lea rdi, [rsp + 0xcc]
mov r8d, 0xf
jmp 0x408331
inc rdx
cmp r9, rdx
jle 0x40851e
nop word [rax + rax]
jbe 0x4087dd
movzx r11d, byte [r10 + rdx]
cmp r11b, 0x25
je 0x4083bd
inc r8
cmp rsi, r8
jae 0x4083b3
mov qword [rsp + 0x58], rdx
mov byte [rsp + 0x46], r11b
mov rax, rdi
mov rbx, r8
mov rcx, rsi
mov edi, 1
lea rsi, [0x0065bae0]
call fcn.0044b880
mov rdx, qword [rsp + 0x58]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x130]
movzx r11d, byte [rsp + 0x46]
mov r8, rbx
mov rdi, rax
mov rsi, rcx
mov rax, qword [rsp + 0x90]
movzx ecx, byte [rsp + 0x47]
mov rbx, qword [rsp + 0x98]
mov byte [r8 + rdi - 1], r11b
jmp 0x40832e
lea r11, [rdx + 1]
cmp r9, r11
jbe 0x4087d2
mov qword [rsp + 0x88], r11
movzx edx, byte [rdx + r10 + 1]
nop dword [rax + rax]
cmp dl, 0x78
jne 0x408485
test cl, cl
je 0x40845d
test rax, rax
jge 0x408455
lea rdx, [r8 + 1]
cmp rsi, rdx
jae 0x408448
mov rax, rdi
mov rbx, rdx
mov rcx, rsi
mov edi, 1
lea rsi, [0x0065bae0]
call fcn.0044b880
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x130]
mov r11, qword [rsp + 0x88]
mov rdx, rbx
mov rdi, rax
mov rsi, rcx
mov rax, qword [rsp + 0x90]
movzx ecx, byte [rsp + 0x47]
mov rbx, qword [rsp + 0x98]
mov byte [rdx + rdi - 1], 0x2d
mov r12, rax
neg r12
jmp 0x408463
mov rdx, r8
mov r12, rax
jmp 0x408463
mov rdx, r8
mov r12, rax
movups xmmword [rsp + 0xb8], xmm15
movups xmmword [rsp + 0xbc], xmm15
mov r8d, 0x13
nop dword [rax + rax]
jmp 0x4086a0
cmp dl, 0x79
jne 0x408516
test rbx, rbx
jge 0x4084f6
lea rdx, [r8 + 1]
cmp rsi, rdx
jae 0x4084e9
mov rax, rdi
mov rbx, rdx
mov rcx, rsi
mov edi, 1
lea rsi, [0x0065bae0]
call fcn.0044b880
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x130]
mov r11, qword [rsp + 0x88]
mov rdx, rbx
mov rdi, rax
mov rsi, rcx
mov rax, qword [rsp + 0x90]
movzx ecx, byte [rsp + 0x47]
mov rbx, qword [rsp + 0x98]
mov byte [rdx + rdi - 1], 0x2d
mov r12, rbx
neg r12
jmp 0x4084fc
mov rdx, r8
mov r12, rbx
movups xmmword [rsp + 0xa4], xmm15
movups xmmword [rsp + 0xa8], xmm15
mov r8d, 0x13
jmp 0x40854d
mov rdx, r11
jmp 0x40832e
xor eax, eax
mov rbx, rdi
mov rcx, r8
call fcn.0044f9a0
add rsp, 0x140
pop rbp
ret
lea rax, [r12 + 0x30]
mov byte [rsp + r8 + 0xa4], al
dec r8
mov rax, r13
mov r12, rdx
mov rdx, r15
cmp r12, 0xa
jb 0x408580
mov r13, rax
movabs rax, 0xcccccccccccccccd
mov r15, rdx
mul r12
shr rdx, 3
lea rax, [rdx + rdx*4]
shl rax, 1
sub r12, rax
cmp r8, 0x14
jb 0x408534
jmp 0x408674
cmp r8, 0x14
jae 0x408667
mov r13, rdx
sub rdx, r8
add rdx, 0x14
add r12, 0x30
mov byte [rsp + r8 + 0xa4], r12b
lea r12, [r8 - 0x14]
mov r15, r12
sar r12, 0x3f
and r8, r12
neg r15
cmp rsi, rdx
jae 0x408600
mov qword [rsp + 0x80], r13
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x78], r8
mov rax, rdi
mov rbx, rdx
mov rcx, rsi
mov rdi, r15
lea rsi, [0x0065bae0]
nop dword [rax + rax]
call fcn.0044b880
mov r8, qword [rsp + 0x78]
mov r13, qword [rsp + 0x80]
mov r15, qword [rsp + 0x48]
mov rdi, rax
mov rsi, rcx
mov rdx, rbx
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x138], rdi
lea rax, [rdi + r13]
lea rbx, [rsp + r8 + 0xa4]
mov rcx, r15
call fcn.00467360
mov rax, qword [rsp + 0x90]
movzx ecx, byte [rsp + 0x47]
mov rbx, qword [rsp + 0x98]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x130]
mov r11, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x138]
jmp 0x408516
mov rax, r8
mov ecx, 0x14
call fcn.00466960
mov rax, r8
mov ecx, 0x14
nop dword [rax]
call fcn.00466960
lea rax, [r12 + 0x30]
mov byte [rsp + r8 + 0xb8], al
dec r8
mov rax, r13
mov r12, rdx
mov rdx, r15
nop
cmp r12, 0xa
jb 0x4086d2
mov r13, rax
movabs rax, 0xcccccccccccccccd
mov r15, rdx
mul r12
shr rdx, 3
lea rax, [rdx + rdx*4]
shl rax, 1
sub r12, rax
cmp r8, 0x14
jb 0x408685
jmp 0x4087c5
cmp r8, 0x14
jae 0x4087b4
mov r13, rdx
sub rdx, r8
add rdx, 0x14
add r12, 0x30
mov byte [rsp + r8 + 0xb8], r12b
lea r12, [r8 - 0x14]
mov r15, r12
sar r12, 0x3f
and r8, r12
neg r15
cmp rsi, rdx
jae 0x40874d
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x80], r8
mov qword [rsp + 0x78], r13
mov rax, rdi
mov rbx, rdx
mov rcx, rsi
mov rdi, r15
lea rsi, [0x0065bae0]
call fcn.0044b880
mov r8, qword [rsp + 0x80]
mov r13, qword [rsp + 0x78]
mov r15, qword [rsp + 0x50]
mov rdi, rax
mov rdx, rbx
mov rsi, rcx
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x138], rdi
lea rax, [rdi + r13]
lea rbx, [rsp + r8 + 0xb8]
mov rcx, r15
call fcn.00467360
mov rax, qword [rsp + 0x90]
movzx ecx, byte [rsp + 0x47]
mov rbx, qword [rsp + 0x98]
mov r9, qword [rsp + 0x60]
mov r10, qword [rsp + 0x130]
mov r11, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x70]
mov r8, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x138]
jmp 0x408516
mov rax, r8
mov ecx, 0x14
nop dword [rax]
call fcn.00466960
mov rax, r8
mov ecx, 0x14
call fcn.00466960
mov rax, r11
mov rcx, r9
call fcn.00466960
mov rax, rdx
mov rcx, r9
call fcn.00466960
mov eax, 8
mov rcx, rax
call fcn.00466960
mov rax, rdx
mov ecx, 9
nop dword [rax]
call fcn.00466960
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov byte [rsp + 0x18], cl
mov byte [rsp + 0x19], dil
call fcn.004646a0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
movzx ecx, byte [rsp + 0x18]
movzx edi, byte [rsp + 0x19]
jmp fcn.00408240