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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x2f]
sub rsp, 0xc0
mov esi, dword [rbp + 0x7f]
mov r15, r9
mov rdi, r8
mov r12, rdx
mov r13, rcx
mov ebx, esi
lea r14d, [rsi + rsi*2]
shl r14d, 5
cmp esi, r14d
ja 0x18000dd2b
mov eax, 0x3678
cmp ebx, 0x251f
ja 0x18000dc1a
je 0x18000dbf6
cmp ebx, 0x1067
ja 0x18000db3e
je 0x18000db1a
cmp ebx, 0x57
je 0x18000daa7
cmp ebx, 0xdd
je 0x18000da79
cmp ebx, 0x60b
je 0x18000da48
cmp ebx, 0xb39
jne 0x18000dd1d
mov r8d, 1
lea rdx, [0x180064dde]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov r8d, 3
lea rdx, [0x180064de9]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
lea eax, [rsi + rsi*2]
mov word [rbp - 0x66], 0x20
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov r8d, 1
lea rdx, [0x180064f2e]
lea rcx, [rbp - 0x6d]
call fcn.18003a150
mov eax, 0x616c
mov byte [rbp - 0x6a], 0
mov word [rbp - 0x6c], ax
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov r8d, 3
mov word [rbp - 0x71], 0x4d
lea rdx, [0x180064e59]
lea rcx, [rbp - 0x70]
call fcn.18003a150
lea eax, [rsi + rsi*2]
mov byte [rbp - 0x6d], 0
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov ecx, 0xa9
nop dword [rax]
cmp ecx, 0xa9
je 0x18000daec
cmp ecx, 0x168
jne 0x18000dafa
movups xmm0, xmmword [r13]
mov r9, r15
mov r8d, 0x68
mov rdx, rdi
mov rcx, r12
movups xmmword [rdi], xmm0
movsd xmm1, qword [r13 + 0x10]
movsd qword [rdi + 0x10], xmm1
call fcn.180013420
jmp 0x18000df86
test rdi, rdi
lea rax, [rbp + 0xf]
cmovne rax, rdi
mov rdi, rax
add ecx, 0xbf
cmp ecx, 0x227
jb 0x18000dab0
lea eax, [rsi + rsi*2]
mov byte [rbp - 0x54], 0
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov r8d, 1
lea rdx, [0x180064ee3]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
cmp ebx, 0x1595
je 0x18000dba3
cmp ebx, 0x1ac3
je 0x18000db82
cmp ebx, 0x1ff1
jne 0x18000dd1d
mov r8d, 3
mov byte [rbp - 0x58], 0
lea rdx, [0x180064fef]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov eax, dword [0x180064f8d]
mov dword [rbp - 0x5d], eax
movzx eax, byte [0x180064f91]
mov byte [rbp - 0x59], al
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov r8d, 2
lea rdx, [0x180064d86]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov r8d, 2
lea rdx, [0x180064da0]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
movzx eax, word [0x180064db4]
mov word [rbp - 0x60], ax
movzx eax, byte [0x180064db6]
mov byte [rbp - 0x5e], al
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
mov byte [rbp - 0x5d], 0
cmp ebx, r14d
jmp 0x18000d9b0
mov r8d, 1
lea rdx, [0x180064dff]
lea rcx, [rbp - 0x55]
call fcn.18003a150
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
cmp ebx, 0x39d7
ja 0x18000dcab
je 0x18000dc97
cmp ebx, 0x2a4d
je 0x18000db08
cmp ebx, 0x2f7b
je 0x18000dc70
cmp ebx, 0x34a9
jne 0x18000dd1d
mov r8d, 3
lea rdx, [0x180064fa2]
lea rcx, [rbp - 0x51]
call fcn.18003a150
lea eax, [rsi + rsi*2]
mov byte [rbp - 0x4e], 0
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
movzx eax, word [0x180064f02]
mov word [rbp - 0x54], ax
movzx eax, byte [0x180064f04]
mov byte [rbp - 0x52], al
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
mov byte [rbp - 0x51], 0
cmp ebx, r14d
jmp 0x18000d9b0
lea eax, [rsi + rsi*2]
mov word [rbp - 0x4e], 0x20
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
cmp ebx, 0x3f05
je 0x18000dd02
cmp ebx, 0x4433
je 0x18000dcee
cmp ebx, 0x4961
jne 0x18000dd1d
mov r8d, 4
lea rdx, [0x180064ea0]
lea rcx, [rbp - 0x45]
call fcn.18003a150
lea eax, [rsi + rsi*2]
mov dword [rbp - 0x41], 0x74694b62
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
lea eax, [rsi + rsi*2]
mov word [rbp - 0x46], 0x70
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
mov word [rbp - 0x4d], ax
mov eax, dword [0x180064e2e]
mov dword [rbp - 0x4b], eax
movzx eax, byte [0x180064e32]
mov byte [rbp - 0x47], al
mov byte [rbp - 0x46], 0
lea eax, [rsi + rsi*2]
lea ebx, [rbx + rax*2]
cmp ebx, r14d
jmp 0x18000d9b0
lea eax, [rsi + 0x10]
cmp esi, eax
jae 0x18000df83
lea ebx, [rsi - 0xdd]
mov edi, 0x10
lea rsi, [0x180000000]
mov r14d, 0x6d6f
mov r15d, 0x4b28
mov r12d, 0x3633
nop word [rax + rax]
cmp ebx, 0xf
ja case.default.0x18000dd73
mov ecx, dword [rsi + rbx*4 + 0xdfa8]
add rcx, rsi
jmp rcx
movzx eax, word [0x18006500b]
mov word [rbp - 0x22], ax
movzx eax, byte [0x18006500d]
mov byte [rbp - 0x20], al
mov byte [rbp - 0x1f], 0
jmp case.default.0x18000dd73
mov r8d, 2
lea rdx, [0x180065047]
lea rcx, [rbp - 0x2c]
call fcn.18003a150
mov dword [rbp - 0x2a], 0x65472065
mov byte [rbp - 0x26], 0
jmp case.default.0x18000dd73
mov r8d, 3
lea rdx, [0x18006506c]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov r8d, 3
lea rdx, [0x18006509d]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov r8d, 2
lea rdx, [0x180065116]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov r8d, 3
lea rdx, [0x180065144]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
jmp case.default.0x18000dd73
mov r8d, 2
lea rdx, [0x180065153]
lea rcx, [rbp - 5]
call fcn.18003a150
mov word [rbp - 3], 0x2e
jmp case.default.0x18000dd73
mov r8d, 2
lea rdx, [0x18006515c]
lea rcx, [rbp - 0x33]
call fcn.18003a150
mov eax, dword [0x1800651d6]
mov dword [rbp - 0x31], eax
movzx eax, byte [0x1800651da]
mov byte [rbp - 0x2d], al
mov byte [rbp - 0x2c], 0
jmp case.default.0x18000dd73
mov r8d, 3
lea rdx, [0x180065233]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
jmp case.default.0x18000dd73
mov r8d, 2
mov word [rbp - 0x3d], 0x2f
lea rdx, [0x180065251]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
jmp case.default.0x18000dd73
mov dword [rbp - 0x26], 0x296f6b63
mov byte [rbp - 0x22], 0
jmp case.default.0x18000dd73
mov byte [rbp - 0x1f], 0x72
mov word [rbp - 0x1e], r14w
mov byte [rbp - 0x1c], 0
jmp case.default.0x18000dd73
movzx eax, word [0x18006528b]
mov word [rbp - 0x11], ax
movzx eax, byte [0x18006528d]
mov byte [rbp - 0xf], al
mov byte [rbp - 0xe], 0
jmp case.default.0x18000dd73
mov byte [rbp], 0
lea rax, [rbp - 0x71]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x18000def4
lea rdx, [rbp - 0x71]
mov rcx, r13
call fcn.180026940
jmp case.default.0x18000dd73
mov byte [rbp - 0x3d], 0
jmp case.default.0x18000dd73
mov word [rbp - 0x35], r15w
mov byte [rbp - 0x33], 0
jmp case.default.0x18000dd73
mov r8d, 2
lea rdx, [0x1800652dd]
lea rcx, [rbp - 0x37]
call fcn.18003a150
mov byte [rbp - 0x35], 0
jmp case.default.0x18000dd73
mov word [rbp - 2], r12w
jmp case.default.0x18000dd73
mov r8d, 3
lea rdx, [0x18006532b]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov r8d, 2
lea rdx, [0x180065346]
lea rcx, [rbp - 0x71]
call fcn.18003a9b0
mov dword [rbp - 9], 0x352f6972
mov byte [rbp - 5], 0
inc ebx
sub rdi, 1
jne 0x18000dd60
mov eax, dword [rbp + 0x7f]
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret