Function at 0x14000351c
Capabilities:
Check for software breakpoints
Disable driver code integrity

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
and qword [r8], 0
lea rdx, str.CiInitialize
mov r14d, r9d
mov r12, r8
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test rax, rax
jne 0x140003565
mov eax, 0xc000007a
jmp 0x1400035b7
xor eax, eax
lea rdi, [rbp - 0x58]
xor esi, esi
mov r15d, 0x1000
lea ecx, [rax + 0x25]
rep stosb byte [rdi], al
cmp r14d, 0x3fab
jae 0x1400035d2
lea r14, [rsi + rbx]
mov rcx, r14
lea rdx, [rbp - 0x58]
call fcn.140003f94
test dword [rbp - 0x37], r15d
jne 0x1400035b2
movzx ecx, byte [rbp - 0x58]
mov eax, ecx
cmp ecx, 5
jne 0x1400035a8
cmp byte [r14], 0xe9
je 0x1400035c9
add esi, eax
cmp esi, 0x100
jb 0x140003581
mov eax, 0xc0000001
add rsp, 0x80
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov edx, dword [rsi + rbx + 1]
jmp 0x140003743
mov edi, 3
mov dword [rbp - 0x60], edi
mov r14d, esi
lea rdx, [rbp - 0x58]
add r14, rbx
mov rcx, r14
call fcn.140003f94
test dword [rbp - 0x37], r15d
jne 0x1400035b2
movzx ecx, byte [rbp - 0x58]
cmp ecx, edi
jne 0x1400037a2
xor eax, eax
lea rdi, [rbp - 0x30]
lea rdx, [rbp - 0x30]
lea ecx, [rax + 0x25]
rep stosb byte [rdi], al
mov rcx, r14
call fcn.140003f94
test dword [rbp - 0xf], r15d
jne 0x14000379c
cmp byte [rbp - 0x30], 3
jne 0x14000379c
cmp byte [r14], 0x4c
jne 0x14000379c
lea eax, [rsi + 1]
cmp byte [rax + rbx], 0x8b
jne 0x14000379c
lea edi, [rsi + 3]
mov r14d, edi
lea rdx, [rbp - 0x30]
add r14, rbx
mov rcx, r14
call fcn.140003f94
test dword [rbp - 0xf], r15d
jne 0x14000379c
cmp byte [rbp - 0x30], 3
jne 0x14000379c
cmp byte [r14], 0x4c
jne 0x14000379c
lea eax, [rdi + 1]
cmp byte [rax + rbx], 0x8b
jne 0x14000379c
add edi, 3
lea rdx, [rbp - 0x30]
mov r14d, edi
add r14, rbx
mov rcx, r14
call fcn.140003f94
test dword [rbp - 0xf], r15d
jne 0x14000379c
cmp byte [rbp - 0x30], 3
jne 0x14000379c
cmp byte [r14], 0x48
jne 0x14000379c
lea eax, [rdi + 1]
cmp byte [rax + rbx], 0x8b
jne 0x14000379c
add edi, 3
lea rdx, [rbp - 0x30]
mov r14d, edi
add r14, rbx
mov rcx, r14
call fcn.140003f94
test dword [rbp - 0xf], r15d
jne 0x14000379c
cmp byte [rbp - 0x30], 2
jne 0x14000379c
cmp byte [r14], 0x8b
jne 0x14000379c
lea eax, [rdi + 1]
cmp byte [rax + rbx], 0xcd
jne 0x14000379c
add edi, 2
je 0x14000379c
lea r12, [rdi + rbx]
mov dword [rbp - 0x60], 5
mov rcx, r12
lea rdx, [rbp - 0x58]
call fcn.140003f94
test dword [rbp - 0x37], r15d
jne 0x1400035b2
mov cl, byte [rbp - 0x58]
cmp cl, 5
jne 0x14000379f
cmp byte [r12], 0xe8
jne 0x14000379f
mov edx, dword [rdi + rbx + 1]
mov esi, edi
mov r12, qword [rbp + 0x50]
test edx, edx
je 0x1400035b2
mov eax, esi
movzx ecx, cl
add rcx, rax
movsxd rax, edx
add rbx, rax
add rbx, rcx
xor edi, edi
lea r14, [rdi + rbx]
mov rcx, r14
lea rdx, [rbp - 0x58]
call fcn.140003f94
test dword [rbp - 0x37], r15d
jne 0x1400035b2
movzx eax, byte [rbp - 0x58]
cmp eax, 6
jne 0x14000378c
mov ecx, 0xd89
cmp word [r14], cx
je 0x1400037b8
add edi, eax
cmp edi, 0x100
jae 0x1400035b2
jmp 0x14000375e
mov cl, byte [rbp - 0x58]
mov edi, dword [rbp - 0x60]
movzx eax, cl
add esi, eax
cmp esi, 0x100
jae 0x1400035b2
jmp 0x1400035da
movsxd rdx, dword [rdi + rbx + 2]
test edx, edx
je 0x1400035b2
movzx ecx, byte [rbp - 0x58]
mov eax, edi
add rcx, rax
add rcx, rdx
sub rcx, qword [rbp + 0x40]
add rcx, rbx
add rcx, qword [rbp + 0x48]
mov qword [r12], rcx
xor eax, eax
jmp 0x1400035b7