Function at 0x140013d70
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x68
mov rdi, r9
mov rsi, rdx
mov r12, rcx
mov rbx, qword [rbp + 0x68]
mov ecx, 0x1000
movabs rax, 0xffffffffffff
test word [rbx + 0xe], cx
je 0x140013db9
mov rcx, rbx
jmp 0x140013dc0
mov rcx, qword [rbx + 8]
and rcx, rax
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400f6b50
mov qword [rbp - 0x38], rax
lea rcx, [r12 + 0x148]
lea rdx, [rbp - 0x38]
call fcn.14000d5c0
test rax, rax
jne 0x140014c8a
lea edx, [rax + 0x60]
lea r8d, [rax + 0x10]
mov rcx, r12
call fcn.140010970
mov r15, rax
test rax, rax
je 0x140013e1a
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x50], xmm0
mov r8, rbx
lea rdx, [rbp + 0x68]
mov rcx, rdi
call fcn.14000af80
mov eax, dword [rdi]
shl rax, 5
mov rcx, qword [rdi + 8]
movabs rbx, 0xffffffffffff
and rcx, rbx
add rax, rcx
lea r13, [0x1401bc408]
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x140013e59
lea r14, [rcx + 0x10]
jmp 0x140013e66
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov r14, r13
mov dword [r15], 0x1d
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov edi, 0x405
mov word [rbp - 0x22], di
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.flags
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 5
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x140013ed3
add rcx, 0x10
jmp 0x140013ee0
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov eax, dword [rcx]
mov dword [r15 + 0x10], eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], di
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.basePipelineIndex
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 0x11
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x140013f47
add rcx, 0x10
jmp 0x140013f54
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov eax, dword [rcx]
mov dword [r15 + 0x58], eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], di
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.basePipelineHandle
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 0x12
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x140013fbb
add rcx, 0x10
jmp 0x140013fc8
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov eax, 0x1000
test word [rcx + 0xe], ax
jne 0x140013fda
mov rcx, qword [rcx + 8]
and rcx, rbx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400f6b50
mov rdi, rax
mov qword [rbp + 0x68], rax
test rax, rax
je 0x1400143aa
cmp byte [r12 + 0x1c8], 0
je 0x1400143aa
mov rdx, qword [rsi]
mov rcx, rsi
call qword [rdx + 0x60]
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x48]
lea rcx, [r12 + 0x148]
call fcn.14000d690
mov rbx, qword [rbp + 0x48]
cmp rbx, qword [r12 + 0x150]
jne 0x140014380
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov eax, 0x405
mov word [rbp - 0x22], ax
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.basePipelineHandle
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 0x12
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x48]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
movabs rdx, 0xffffffffffff
and rcx, rdx
add rax, rcx
mov rcx, qword [rbp + 0x48]
cmp rcx, rax
je 0x1400140a4
lea rax, [rcx + 0x10]
jmp 0x1400140b1
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rax, r13
mov ecx, 0x1000
test word [rax + 0xe], cx
jne 0x1400140c3
mov rax, qword [rax + 8]
and rax, rdx
mov rdx, rax
mov rcx, qword [rbp + 0x60]
call fcn.14000f820
test al, al
je 0x140014195
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov eax, 0x405
mov word [rbp - 0x22], ax
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.basePipelineHandle
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 0x12
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x48]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
movabs rdx, 0xffffffffffff
and rcx, rdx
add rax, rcx
mov rcx, qword [rbp + 0x48]
cmp rcx, rax
je 0x140014147
add rcx, 0x10
jmp 0x140014154
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov qword [rsp + 0x20], rcx
mov r9, qword [rbp + 0x60]
mov r8, qword [rbp + 0x58]
mov rdx, rsi
mov rcx, r12
call fcn.140013d70
test al, al
je 0x1400143a3
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x60]
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x48]
lea rcx, [r12 + 0x148]
call fcn.14000d690
mov rbx, qword [rax]
cmp rbx, qword [r12 + 0x150]
jne 0x140014380
xor esi, esi
mov qword [rbp + 0x48], rsi
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x140014394
mov rax, qword [rcx]
mov dword [rsp + 0x28], esi
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x48]
mov r8, rdi
lea edx, [rsi + 7]
call qword [rax + 0x10]
test al, al
je 0x140014394
mov rbx, qword [rbp + 0x48]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], rsi
xor edi, edi
test rbx, rbx
je 0x140014261
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x140014ca3
mov eax, 0x1000
cmp rbx, rax
jb 0x140014234
lea rcx, [rbx + 0x27]
cmp rcx, rbx
jbe 0x140014ca9
call fcn.1400ec60c
test rax, rax
je 0x140014caf
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14001423f
mov rcx, rbx
call fcn.1400ec60c
mov rdi, rax
mov qword [rbp - 0x20], rdi
lea rsi, [rdi + rbx]
mov qword [rbp - 0x10], rsi
mov r8, rbx
xor edx, edx
mov rcx, rdi
call fcn.1400eee20
mov rax, rsi
mov qword [rbp - 0x18], rax
jmp 0x140014265
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x30], rax
mov rcx, qword [rbp + 0x58]
mov rax, qword [rcx]
mov dword [rsp + 0x28], 0
mov r8, qword [rbp - 0x20]
mov qword [rsp + 0x20], r8
lea r9, [rbp + 0x48]
mov rbx, qword [rbp + 0x68]
mov r8, rbx
mov edx, 7
call qword [rax + 0x10]
test al, al
jne 0x1400142ec
mov rdx, rbx
lea rcx, str.Base_pipeline
call fcn.140011250
nop
test rdi, rdi
je 0x1400143a3
sub rsi, rdi
mov eax, 0x1000
cmp rsi, rax
jb 0x1400142da
add rsi, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x140014caf
mov rdi, rcx
mov rdx, rsi
mov rcx, rdi
call fcn.1400ec648
xor al, al
jmp 0x140014c8c
mov rax, qword [rbp - 0x30]
sub rax, rdi
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x20]
mov r8, qword [rbp + 0x58]
mov rbx, qword [rbp + 0x50]
mov rdx, rbx
mov rcx, r12
call fcn.1400113a0
test al, al
je 0x1400142a8
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x60]
lea r8, [rbp + 0x68]
lea rdx, [rbp - 0x30]
lea rcx, [r12 + 0x148]
call fcn.14000d690
mov rbx, qword [rax]
cmp rbx, qword [r12 + 0x150]
jne 0x140014347
mov rdx, qword [rbp + 0x68]
jmp 0x14001429b
test rdi, rdi
je 0x140014380
sub rsi, rdi
mov eax, 0x1000
cmp rsi, rax
jb 0x140014375
add rsi, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x140014caf
mov rdi, rcx
mov rdx, rsi
mov rcx, rdi
call fcn.1400ec648
mov rax, qword [rbx + 0x18]
mov qword [r15 + 0x50], rax
movabs rbx, 0xffffffffffff
jmp 0x1400143ae
mov rdx, rdi
lea rcx, str.Base_pipeline
call fcn.140011250
xor al, al
jmp 0x140014c8c
mov qword [r15 + 0x50], rdi
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov esi, 0x405
mov word [rbp - 0x22], si
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.layout
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 6
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x140014414
add rcx, 0x10
jmp 0x140014421
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov edi, 0x1000
test word [rcx + 0xe], di
jne 0x140014433
mov rcx, qword [rcx + 8]
and rcx, rbx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400f6b50
mov r9, rax
test rax, rax
je 0x140014568
movzx r8d, r9b
movabs rax, 0xcbf29ce484222325
xor r8, rax
movabs r10, 0x100000001b3
imul r8, r10
mov rcx, r9
shr rcx, 8
movzx edx, cl
xor r8, rdx
imul r8, r10
mov rax, r9
shr rax, 0x10
movzx ecx, al
xor r8, rcx
imul r8, r10
mov rax, r9
shr rax, 0x18
movzx ecx, al
xor r8, rcx
imul r8, r10
mov rax, r9
shr rax, 0x20
movzx ecx, al
xor r8, rcx
imul r8, r10
mov rax, r9
shr rax, 0x28
movzx ecx, al
xor r8, rcx
imul r8, r10
mov rax, r9
shr rax, 0x30
movzx ecx, al
xor r8, rcx
imul r8, r10
mov rax, r9
shr rax, 0x38
xor r8, rax
imul r8, r10
mov rcx, qword [r12 + 0xb8]
and rcx, r8
shl rcx, 4
add rcx, qword [r12 + 0xa0]
mov rax, qword [rcx + 8]
mov rdx, qword [r12 + 0x90]
cmp rax, rdx
je 0x140014521
mov rcx, qword [rcx]
cmp r9, qword [rax + 0x10]
je 0x140014523
nop
cmp rax, rcx
je 0x140014521
mov rax, qword [rax + 8]
cmp r9, qword [rax + 0x10]
jne 0x140014510
jmp 0x140014523
xor eax, eax
test rax, rax
cmove rax, rdx
cmp rax, rdx
jne 0x140014545
mov rdx, r9
lea rcx, str.Pipeline_layout
call fcn.140011250
xor al, al
jmp 0x140014c8c
mov rcx, qword [rax + 0x18]
test rcx, rcx
jne 0x140014564
mov rdx, r9
lea rcx, str.Pipeline_layout
call fcn.1400111d0
xor al, al
jmp 0x140014c8c
mov qword [r15 + 0x48], rcx
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], si
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.stage
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 5
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, r14
call fcn.14000af80
mov eax, dword [r14]
shl rax, 5
mov rcx, qword [r14 + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x1400145c9
lea rsi, [rcx + 0x10]
jmp 0x1400145d6
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rsi, r13
mov dword [r15 + 0x18], 0x12
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov r14d, 0x405
mov word [rbp - 0x22], r14w
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.stage
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 5
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov eax, dword [rsi]
shl rax, 5
mov rcx, qword [rsi + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x140014645
add rcx, 0x10
jmp 0x140014652
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov eax, dword [rcx]
mov dword [r15 + 0x2c], eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], r14w
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.flags
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 5
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov eax, dword [rsi]
shl rax, 5
mov rcx, qword [rsi + 8]
and rcx, rbx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x1400146b9
add rcx, 0x10
jmp 0x1400146c6
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
mov eax, dword [rcx]
mov dword [r15 + 0x28], eax
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], r14w
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.pNext
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 5
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov ecx, dword [rsi]
shl rcx, 5
and rbx, qword [rsi + 8]
add rbx, rcx
cmp qword [rbp + 0x68], rbx
je 0x140014793
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], r14w
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.pNext
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 5
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov rax, qword [rbp + 0x68]
cmp rax, rbx
je 0x140014772
lea rdx, [rax + 0x10]
jmp 0x14001477f
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rdx, r13
lea r8, [r15 + 0x20]
mov rcx, r12
call fcn.1400191b0
test al, al
je 0x1400143a3
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], r14w
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.module
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 6
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov eax, dword [rsi]
shl rax, 5
mov rcx, qword [rsi + 8]
movabs rdx, 0xffffffffffff
and rcx, rdx
add rax, rcx
mov rcx, qword [rbp + 0x68]
cmp rcx, rax
je 0x1400147fe
add rcx, 0x10
jmp 0x14001480b
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rcx, r13
test word [rcx + 0xe], di
jne 0x140014818
mov rcx, qword [rcx + 8]
and rcx, rdx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400f6b50
mov rdi, rax
mov qword [rbp + 0x68], rax
test rax, rax
je 0x140014a8a
cmp byte [r12 + 0x1c9], 0
je 0x140014a8a
lea rcx, [r12 + 0xc8]
lea r8, [rbp + 0x68]
lea rdx, [rbp + 0x48]
call fcn.14000d690
mov rbx, qword [rbp + 0x48]
cmp rbx, qword [r12 + 0xd0]
jne 0x140014a73
xor r14d, r14d
mov qword [rbp + 0x48], r14
mov rcx, qword [rbp + 0x58]
test rcx, rcx
je 0x140014a5d
mov rax, qword [rcx]
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], r14
lea r9, [rbp + 0x48]
mov r8, rdi
lea edx, [r14 + 4]
call qword [rax + 0x10]
test al, al
je 0x140014a5d
mov rbx, qword [rbp + 0x48]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r14
xor edi, edi
test rbx, rbx
je 0x14001492a
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x140014cb5
mov eax, 0x1000
cmp rbx, rax
jb 0x1400148fd
lea rcx, [rbx + 0x27]
cmp rcx, rbx
jbe 0x140014cbb
call fcn.1400ec60c
test rax, rax
je 0x140014c9d
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140014908
mov rcx, rbx
call fcn.1400ec60c
mov rdi, rax
mov qword [rbp - 0x20], rdi
lea r14, [rdi + rbx]
mov qword [rbp - 0x10], r14
mov r8, rbx
xor edx, edx
mov rcx, rdi
call fcn.1400eee20
mov rax, r14
mov qword [rbp - 0x18], rax
jmp 0x14001492e
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x30], rax
mov rcx, qword [rbp + 0x58]
mov rax, qword [rcx]
mov dword [rsp + 0x28], 0
mov rdx, qword [rbp - 0x20]
mov qword [rsp + 0x20], rdx
lea r9, [rbp + 0x48]
mov rbx, qword [rbp + 0x68]
mov r8, rbx
mov edx, 4
call qword [rax + 0x10]
test al, al
jne 0x1400149b5
mov rdx, rbx
lea rcx, str.Shader_module
call fcn.140011250
nop
test rdi, rdi
je 0x1400143a3
sub r14, rdi
mov eax, 0x1000
cmp r14, rax
jb 0x1400149a3
add r14, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x140014c9d
mov rdi, rcx
mov rdx, r14
mov rcx, rdi
call fcn.1400ec648
xor al, al
jmp 0x140014c8c
mov rax, qword [rbp - 0x30]
sub rax, rdi
mov qword [rsp + 0x20], rax
mov r9, qword [rbp - 0x20]
mov r8, qword [rbp + 0x58]
mov rbx, qword [rbp + 0x50]
mov rdx, rbx
mov rcx, r12
call fcn.1400113a0
test al, al
je 0x140014971
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x68]
lea r8, [rbp + 0x68]
lea rdx, [rbp - 0x30]
lea rcx, [r12 + 0xc8]
call fcn.14000d690
mov rbx, qword [rax]
cmp rbx, qword [r12 + 0xd0]
jne 0x140014a10
mov rdx, qword [rbp + 0x68]
jmp 0x140014964
test rdi, rdi
je 0x140014a49
sub r14, rdi
mov eax, 0x1000
cmp r14, rax
jb 0x140014a3e
add r14, 0x27
mov rcx, qword [rdi - 8]
sub rdi, rcx
lea rax, [rdi - 8]
cmp rax, 0x1f
ja 0x140014c9d
mov rdi, rcx
mov rdx, r14
mov rcx, rdi
call fcn.1400ec648
mov r14d, 0x405
mov rdi, qword [rbp + 0x50]
mov rax, qword [rbx + 0x18]
mov qword [r15 + 0x30], rax
jmp 0x140014a92
mov rdx, rdi
lea rcx, str.Shader_module
call fcn.140011250
xor al, al
jmp 0x140014c8c
mov rdi, qword [rbp + 0x50]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x68]
mov rax, qword [rbx + 0x18]
mov qword [r15 + 0x30], rax
jmp 0x140014a92
mov qword [r15 + 0x30], rdi
mov rdi, qword [rbp + 0x50]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov word [rbp - 0x22], r14w
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.name
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 4
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov r14d, dword [rsi]
mov rbx, qword [rsi + 8]
mov ecx, r14d
shl rcx, 5
mov rax, rbx
movabs rdx, 0xffffffffffff
and rax, rdx
add rcx, rax
mov rax, qword [rbp + 0x68]
cmp rax, rcx
je 0x140014b04
add rax, 0x10
jmp 0x140014b18
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov rax, r13
mov r14d, dword [rsi]
mov rbx, qword [rsi + 8]
mov ecx, 0x1000
test word [rax + 0xe], cx
je 0x140014b30
movsx eax, byte [rax + 0xd]
mov ecx, 0xd
sub ecx, eax
jmp 0x140014b32
mov ecx, dword [rax]
mov eax, ecx
mov qword [rbp + 0x48], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov eax, 0x405
mov word [rbp - 0x22], ax
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.name
or rax, rcx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 4
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov ecx, r14d
shl rcx, 5
movabs r14, 0xffffffffffff
and rbx, r14
add rcx, rbx
mov rax, qword [rbp + 0x68]
cmp rax, rcx
je 0x140014ba4
lea r13, [rax + 0x10]
jmp 0x140014bae
xorps xmm0, xmm0
movups xmmword [0x1401bc408], xmm0
mov eax, 0x1000
test word [r13 + 0xe], ax
jne 0x140014bc1
mov r13, qword [r13 + 8]
and r13, r14
mov r8, qword [rbp + 0x48]
mov rdx, r13
mov rcx, r12
call fcn.1400110b0
mov qword [r15 + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov eax, 0x405
mov word [rbp - 0x22], ax
mov rax, qword [rbp - 0x28]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rbx, str.specializationInfo
or rax, rbx
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x30], 0x12
lea r8, [rbp - 0x30]
lea rdx, [rbp + 0x68]
mov rcx, rsi
call fcn.14000af80
mov r8d, dword [rsi]
shl r8, 5
mov rax, qword [rsi + 8]
and rax, r14
add r8, rax
cmp qword [rbp + 0x68], r8
je 0x140014c53
mov rdx, rbx
mov rcx, rsi
call fcn.14000a530
lea r8, [r15 + 0x40]
mov rdx, rax
mov rcx, r12
call fcn.14001e4e0
test al, al
je 0x1400143a3
mov rax, qword [rdi]
mov rbx, qword [rax + 0x50]
lea r8, [rbp - 0x38]
lea rdx, [rbp - 0x30]
lea rcx, [r12 + 0x148]
call fcn.14000d240
mov r9, qword [rax]
add r9, 0x18
mov r8, r15
mov rdx, qword [rbp - 0x38]
mov rcx, rdi
call rbx
test al, al
je 0x1400143a3
mov al, 1
add rsp, 0x68
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400f2c0c
int3
call fcn.1400026c0
int3
call fcn.140001b10
int3
call fcn.1400f2c0c
int3
call fcn.1400026c0
int3
call fcn.140001b10
int3