Function at 0x1801b7330
Capabilities:
Check if file exists
Encode data using xor
Get file attributes
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x330]
sub rsp, 0x430
mov rax, qword [0x1804c4e78]
xor rax, rsp
mov qword [rbp + 0x320], rax
mov qword [rbp - 0x58], r9
mov rdi, r8
mov r15d, edx
mov qword [rsp + 0x50], rcx
xor ebx, ebx
mov dword [rsp + 0x44], ebx
mov dword [rsp + 0x48], ebx
mov r12d, ebx
mov dword [rsp + 0x48], ebx
mov dword [rbp - 0x50], ebx
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x40], rbx
lea edx, [rbx + 1]
lea rcx, [rbp - 0x48]
call fcn.1801b9a80
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x38], rbx
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], 7
mov qword [rbp - 0x18], 8
mov dword [rbp - 0x50], 0x3f800000
mov r8, rax
lea edx, [rbx + 0x10]
lea rcx, [rbp - 0x38]
call fcn.18001fd00
nop
xor r13b, r13b
mov byte [rsp + 0x42], r13b
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], rbx
lea rdx, [rsp + 0x60]
lea ecx, [rbx + 2]
call fcn.1801c9c40
mov r14d, eax
mov rsi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
cmp rbx, rsi
je 0x1801b7433
nop word [rax + rax]
mov r8, qword [rbx]
add r8, 0xb0
lea rdx, [rbp + 0x130]
lea rcx, [rbp - 0x50]
call fcn.1801b4790
add rbx, 8
cmp rbx, rsi
jne 0x1801b7410
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], 0
test r14d, r14d
js 0x1801b7459
lea rdx, [rbp - 0x70]
mov ecx, 3
call fcn.1801c9c40
mov r14d, eax
mov byte [rsp + 0x43], 1
mov rsi, 0xffffffffffffffff
test r14d, r14d
js 0x1801b7b8d
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x270], xmm0
xor r14d, r14d
mov qword [rbp + 0x280], r14
lea rcx, [rbp + 0x270]
call fcn.1801b5aa0
test r15d, r15d
je 0x1801b76ff
test rdi, rdi
jne 0x1801b7621
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], r14
lea rdx, str.VUID_XrInstanceCreateInfo_enabledApiLayerNames_parameter:_enabledApiLayerCount_is_non_0_but_array_is_NULL
lea rcx, [rbp + 0x290]
call fcn.180012900
nop
lea rdx, str.xrCreateInstance
lea rcx, [rbp + 0x230]
call fcn.180012900
nop
lea r8, [rbp + 0x250]
lea rdx, [rbp + 0x290]
lea rcx, [rbp + 0x230]
call fcn.1801b1510
nop
lea rcx, [rbp + 0x230]
call fcn.180013250
nop
lea rcx, [rbp + 0x290]
call fcn.180013250
nop
lea rcx, [rbp + 0x250]
call fcn.1801a54b0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], r14
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], r14
mov qword [rbp + 0x248], 0xf
lea edx, [rsi + 0x61]
lea rcx, [rbp + 0x230]
call fcn.180015660
mov qword [rbp + 0x230], rax
mov qword [rbp + 0x240], 0x58
mov qword [rbp + 0x248], 0x5f
movaps xmm0, xmmword [str.VUID_xrCreateInstance_info_parameter:_something_wrong_with_XrInstanceCreateInfo_contents]
movups xmmword [rax], xmm0
movaps xmm1, xmmword [0x180347e40]
movups xmmword [rax + 0x10], xmm1
movaps xmm0, xmmword [0x180347e50]
movups xmmword [rax + 0x20], xmm0
movaps xmm1, xmmword [0x180347e60]
movups xmmword [rax + 0x30], xmm1
movaps xmm0, xmmword [0x180347e70]
movups xmmword [rax + 0x40], xmm0
movsd xmm0, qword [0x180347e80]
movsd qword [rax + 0x50], xmm0
mov byte [rax + 0x58], dil
lea rdx, str.xrCreateInstance
lea rcx, [rbp + 0x290]
call fcn.180012900
nop
lea r8, [rbp + 0x250]
lea rdx, [rbp + 0x230]
lea rcx, [rbp + 0x290]
call fcn.1801b1510
nop
lea rcx, [rbp + 0x290]
call fcn.180013250
nop
lea rcx, [rbp + 0x230]
call fcn.180013250
nop
lea rcx, [rbp + 0x250]
call fcn.1801a54b0
nop
lea rcx, [rbp + 0x270]
call fcn.180021170
jmp 0x1801b94d8
lea rbx, [rdi + r15*8]
cmp rdi, rbx
je 0x1801b76ff
mov rdx, qword [rdi]
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], r14
mov qword [rbp + 0x248], r14
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1801b7650
lea rcx, [rbp + 0x230]
call fcn.1800087a0
nop
mov rdx, qword [rbp + 0x278]
cmp rdx, qword [rbp + 0x280]
je 0x1801b76a2
movups xmm0, xmmword [rbp + 0x230]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp + 0x240]
movups xmmword [rdx + 0x10], xmm1
mov edx, 0xf
mov byte [rbp + 0x230], 0
add qword [rbp + 0x278], 0x20
jmp 0x1801b76bc
lea r8, [rbp + 0x230]
lea rcx, [rbp + 0x270]
call fcn.180045a10
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b76f6
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b76f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9670
call fcn.18026a1a0
add rdi, 8
jmp 0x1801b7625
mov r14, qword [rbp + 0x270]
mov rax, qword [rbp + 0x278]
mov qword [rsp + 0x58], rax
cmp r14, rax
je 0x1801b7b81
mov r15, qword [rbp - 0x68]
xor r13d, r13d
movabs r9, 0x100000001b3
movabs rcx, 0xcbf29ce484222325
xor al, al
mov byte [rsp + 0x40], al
mov rbx, qword [rbp - 0x70]
cmp rbx, r15
je 0x1801b7927
nop dword [rax]
mov byte [rsp + 0x41], 0
mov rsi, qword [r14 + 0x10]
mov r8, r14
mov r12, qword [r14 + 0x18]
cmp r12, 0x10
jb 0x1801b7769
mov r8, qword [r14]
mov rdx, r13
test rsi, rsi
je 0x1801b7785
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r9
inc rdx
cmp rdx, rsi
jb 0x1801b7771
mov rax, qword [rbp - 0x20]
and rax, rcx
add rax, rax
mov r13, qword [rbp - 0x38]
mov rdi, qword [r13 + rax*8 + 8]
cmp rdi, qword [rbp - 0x48]
je 0x1801b77ef
mov r13, qword [r13 + rax*8]
nop dword [rax]
nop word [rax + rax]
lea rdx, [rdi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1801b77c2
mov rdx, qword [rdx]
mov rcx, r14
cmp r12, 0x10
jb 0x1801b77ce
mov rcx, qword [r14]
cmp rsi, rax
jne 0x1801b77df
mov r8, rsi
call fcn.180287980
test eax, eax
je 0x1801b77ea
cmp rdi, r13
je 0x1801b77ef
mov rdi, qword [rdi + 8]
jmp 0x1801b77b0
xor r13d, r13d
jmp 0x1801b77f5
xor r13d, r13d
mov edi, r13d
test rdi, rdi
je 0x1801b7807
mov dil, 1
mov byte [rsp + 0x40], dil
jmp 0x1801b78f1
mov rdx, qword [rbx]
add rdx, 0xb0
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1801b781f
mov rdx, qword [rdx]
mov rcx, r14
cmp r12, 0x10
jb 0x1801b782b
mov rcx, qword [r14]
cmp rsi, rax
jne 0x1801b78ec
mov r8, rsi
call fcn.180287980
test eax, eax
jne 0x1801b78ec
mov byte [rsp + 0x40], 1
mov r8, r14
lea rdx, [rbp + 0x130]
lea rcx, [rbp - 0x50]
call fcn.1801b4790
mov rdx, qword [rsp + 0x68]
cmp rdx, qword [rsp + 0x70]
je 0x1801b7879
mov rax, qword [rbx]
mov qword [rbx], r13
mov qword [rdx], rax
add qword [rsp + 0x68], 8
jmp 0x1801b7886
mov r8, rbx
lea rcx, [rsp + 0x60]
call fcn.1801b4400
mov rcx, rbx
mov r15, qword [rbp - 0x68]
lea rax, [rbx + 8]
cmp rax, r15
je 0x1801b78ca
nop word [rax + rax]
lea rdi, [rcx + 8]
mov rax, qword [rdi]
mov qword [rdi], r13
mov rdx, qword [rcx]
mov qword [rcx], rax
test rdx, rdx
je 0x1801b78ba
call fcn.1801b5970
mov rcx, rdi
lea rax, [rdi + 8]
cmp rax, r15
jne 0x1801b78a0
mov r15, qword [rbp - 0x68]
lea rcx, [r15 - 8]
mov rdx, qword [rcx]
test rdx, rdx
je 0x1801b78df
call fcn.1801b5970
mov r15, qword [rbp - 0x68]
sub r15, 8
mov qword [rbp - 0x68], r15
mov byte [rsp + 0x41], 1
movzx edi, byte [rsp + 0x40]
lea rax, [rbx + 8]
cmp byte [rsp + 0x41], 0
cmovne rax, rbx
mov rbx, rax
cmp rax, r15
movabs rcx, 0xcbf29ce484222325
movabs r9, 0x100000001b3
jne 0x1801b7750
test dil, dil
jne 0x1801b7b6a
mov byte [rsp + 0x43], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x290], xmm0
mov qword [rbp + 0x2a0], r13
mov qword [rbp + 0x2a8], 0xf
mov edx, 0x40
lea rcx, [rbp + 0x290]
call fcn.180015660
mov qword [rbp + 0x290], rax
mov qword [rbp + 0x2a0], 0x38
mov qword [rbp + 0x2a8], 0x3f
movups xmm0, xmmword [str.ApiLayerInterface::LoadApiLayers___failed_to_find_layer]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x180347ea0]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x180347eb0]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x180347ec0]
movsd qword [rax + 0x30], xmm0
mov byte [rax + 0x38], 0
mov rdx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x1801b79b4
mov rdx, qword [r14]
mov r8, qword [r14 + 0x10]
lea rcx, [rbp + 0x290]
call fcn.180021700
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], r13
call fcn.1801a5b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], 0xd
mov qword [rbp + 0x248], 0xf
movsd xmm0, qword [str.OpenXR_Loader]
movsd qword [rbp + 0x230], xmm0
mov ecx, dword [0x180346b88]
mov dword [rbp + 0x238], ecx
movzx ecx, byte [0x180346b8c]
mov byte [rbp + 0x23c], cl
mov byte [rbp + 0x23d], 0
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x290]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x230]
mov edx, 0x1000
mov r8d, 1
mov rcx, rax
call fcn.1801be8a0
nop
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b7aa3
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b7a9d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9676
call fcn.18026a1a0
nop
mov rbx, qword [rsp + 0x78]
test rbx, rbx
je 0x1801b7b25
mov rdi, qword [rbp - 0x80]
cmp rbx, rdi
je 0x1801b7acd
lea rcx, [rbx + 0x10]
call fcn.180013250
add rbx, 0x30
cmp rbx, rdi
jne 0x1801b7ab6
mov rbx, qword [rsp + 0x78]
mov rcx, qword [rbp - 0x78]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801b7b1c
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b967c
mov rcx, rbx
call fcn.18026a1a0
nop
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 0x10
jb 0x1801b7b66
inc rdx
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b7b61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9682
call fcn.18026a1a0
mov r15, qword [rbp - 0x68]
add r14, 0x20
cmp r14, qword [rsp + 0x58]
jne 0x1801b7722
mov r12d, dword [rsp + 0x48]
xor r13b, r13b
lea rcx, [rbp + 0x270]
call fcn.180021170
mov r14, qword [rsp + 0x60]
mov qword [rsp + 0x58], r14
mov rax, qword [rsp + 0x68]
mov qword [rbp + 0x20], rax
cmp r14, rax
je 0x1801b9486
mov ebx, 0xffffffe0
mov rdx, qword [r14]
add rdx, 0x28
lea rcx, [rbp + 0x290]
call fcn.1801b9ba0
lea rcx, [rbp + 0x290]
cmp qword [rbp + 0x2a8], 8
cmovae rcx, qword [rbp + 0x290]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov r15, rax
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x1801b7c49
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7e
jne 0x1801b7c49
lea rcx, [rbp + 0x290]
cmp qword [rbp + 0x2a8], 8
cmovae rcx, qword [rbp + 0x290]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x1801b7c49
test al, 0x10
jne 0x1801b7c49
lea rcx, [rbp + 0x290]
cmp qword [rbp + 0x2a8], 8
cmovae rcx, qword [rbp + 0x290]
xor edx, edx
mov r8d, 0x1100
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov r15, rax
mov qword [rsp + 0x48], rax
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 8
jb 0x1801b7c8f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b7c8a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9688
call fcn.18026a1a0
xor edi, edi
mov qword [rbp + 0x2a0], rdi
mov qword [rbp + 0x2a8], 7
mov word [rbp + 0x290], di
test r15, r15
jne 0x1801b828f
test r13b, r13b
cmove r12d, ebx
mov rbx, qword [r14]
add rbx, 0x28
lea edx, [rdi + 1]
lea rcx, [rbp + 0x30]
call fcn.1801b4db0
nop
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov r8b, 1
mov edx, eax
lea rcx, [rbp + 0x230]
call fcn.1801b5ee0
nop
lea rdx, str.Failed_to_open_dynamic_library
lea rcx, [rbp + 0x40]
call fcn.1801a4750
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1801b7d06
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.180046b50
lea rdx, str._with_error
mov rcx, rax
call fcn.1801a4750
mov edx, edi
mov rcx, rax
call fcn.1801b5760
mov rcx, rax
lea rdx, [0x18031058c]
call fcn.1801a4750
lea rdx, [rbp + 0x230]
cmp qword [rbp + 0x248], 0x10
cmovae rdx, qword [rbp + 0x230]
mov r8, qword [rbp + 0x240]
mov rcx, rax
call fcn.180046b50
lea rdx, [rbp + 0x290]
lea rcx, [rbp + 0x48]
call fcn.1801b9af0
or dword [rsp + 0x44], 3
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b7db5
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b7db0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b968e
call fcn.18026a1a0
xor ebx, ebx
mov qword [rbp + 0x240], rbx
mov qword [rbp + 0x248], 0xf
mov byte [rbp + 0x230], bl
lea rcx, [rbp + 0x30]
call fcn.180061a40
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], rbx
mov qword [rbp + 0x268], 0xf
lea edx, [rbx + 0x40]
lea rcx, [rbp + 0x250]
call fcn.180015660
mov qword [rbp + 0x250], rax
mov qword [rbp + 0x260], 0x30
mov qword [rbp + 0x268], 0x3f
movups xmm0, xmmword [str.ApiLayerInterface::LoadApiLayers_skipping_layer]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x180347ee0]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x180347ef0]
movups xmmword [rax + 0x20], xmm0
mov byte [rax + 0x30], bl
mov r9, qword [r14]
add r9, 0xb0
mov rdi, qword [r9 + 0x10]
cmp qword [r9 + 0x18], 0x10
jb 0x1801b7e5c
mov r9, qword [r9]
mov rsi, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x268]
mov rax, rcx
sub rax, rsi
cmp rdi, rax
ja 0x1801b7eac
lea rax, [rsi + rdi]
mov qword [rbp + 0x260], rax
lea rbx, [rbp + 0x250]
cmp rcx, 0x10
cmovae rbx, qword [rbp + 0x250]
lea rcx, [rbx + rsi]
mov r8, rdi
mov rdx, r9
call fcn.180287a80
lea rax, [rdi + rbx]
mov byte [rax + rsi], 0
jmp 0x1801b7ec3
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp + 0x250]
call fcn.1801a4c90
mov rcx, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x268]
mov rax, rdx
sub rax, rcx
cmp rax, 0x1f
jb 0x1801b7f19
lea rax, [rcx + 0x1f]
mov qword [rbp + 0x260], rax
lea rbx, [rbp + 0x250]
cmp rdx, 0x10
cmovae rbx, qword [rbp + 0x250]
add rbx, rcx
mov r8d, 0x1f
lea rdx, str.__failed_to_load_with_message__
mov rcx, rbx
call fcn.180287a80
mov byte [rbx + 0x1f], 0
jmp 0x1801b7f3c
mov qword [rsp + 0x20], 0x1f
lea r9, str.__failed_to_load_with_message__
xor r8d, r8d
lea edx, [r8 + 0x1f]
lea rcx, [rbp + 0x250]
call fcn.1801a4c90
mov rdi, qword [rbp + 0x2a0]
lea r9, [rbp + 0x290]
cmp qword [rbp + 0x2a8], 0x10
cmovae r9, qword [rbp + 0x290]
mov rsi, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x268]
mov rax, rcx
sub rax, rsi
cmp rdi, rax
ja 0x1801b7faa
lea rax, [rsi + rdi]
mov qword [rbp + 0x260], rax
lea rbx, [rbp + 0x250]
cmp rcx, 0x10
cmovae rbx, qword [rbp + 0x250]
lea rcx, [rbx + rsi]
mov r8, rdi
mov rdx, r9
call fcn.180287a80
lea rax, [rbx + rdi]
mov byte [rax + rsi], 0
jmp 0x1801b7fc1
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp + 0x250]
call fcn.1801a4c90
mov rcx, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x268]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x1801b8001
lea rax, [rcx + 1]
mov qword [rbp + 0x260], rax
lea rax, [rbp + 0x250]
cmp rdx, 0x10
cmovae rax, qword [rbp + 0x250]
mov word [rax + rcx], 0x22
jmp 0x1801b8024
mov qword [rsp + 0x20], 1
lea r9, [0x180347f28]
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x250]
call fcn.1801a4c90
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x270], xmm0
xor edi, edi
mov qword [rbp + 0x280], rdi
call fcn.1801a5b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], 0xd
mov qword [rbp + 0x248], 0xf
movsd xmm0, qword [str.OpenXR_Loader]
movsd qword [rbp + 0x230], xmm0
mov ecx, dword [0x180346b88]
mov dword [rbp + 0x238], ecx
movzx ecx, byte [0x180346b8c]
mov byte [rbp + 0x23c], cl
mov byte [rbp + 0x23d], dil
lea rcx, [rbp + 0x270]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x250]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x230]
mov edx, 0x100
lea r8d, [rdi + 1]
mov rcx, rax
call fcn.1801be8a0
nop
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b810a
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8104
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9694
call fcn.18026a1a0
nop
mov r8, qword [rbp + 0x270]
test r8, r8
je 0x1801b81eb
mov rsi, qword [rbp + 0x278]
cmp r8, rsi
je 0x1801b8190
lea rbx, [r8 + 0x28]
nop word [rax + rax]
mov rdx, qword [rbx]
cmp rdx, 0x10
jb 0x1801b816a
mov rcx, qword [rbx - 0x18]
inc rdx
cmp rdx, 0x1000
jb 0x1801b8165
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1801b969a
mov rcx, r8
call fcn.18026a1a0
xor eax, eax
mov qword [rbx - 8], rax
mov qword [rbx], 0xf
mov byte [rbx - 0x18], al
add rbx, 0x30
lea rax, [rbx - 0x28]
cmp rax, rsi
jne 0x1801b8130
mov r8, qword [rbp + 0x270]
xor edi, edi
mov rcx, qword [rbp + 0x280]
sub rcx, r8
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, r8
cmp rdx, 0x1000
jb 0x1801b81e2
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b969a
mov rcx, r8
call fcn.18026a1a0
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x1801b822c
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8227
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96a0
call fcn.18026a1a0
mov qword [rbp + 0x260], rdi
mov qword [rbp + 0x268], 0xf
mov byte [rbp + 0x250], 0
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 0x10
jb 0x1801b90f6
inc rdx
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8285
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96a6
call fcn.18026a1a0
jmp 0x1801b90f6
mov rbx, qword [r14]
xorps xmm0, xmm0
movups xmmword [rbp + 0x2d0], xmm0
mov qword [rbp + 0x2e0], rdi
mov qword [rbp + 0x2e8], 0xf
mov edx, 0x30
lea rcx, [rbp + 0x2d0]
call fcn.180015660
mov qword [rbp + 0x2d0], rax
mov qword [rbp + 0x2e0], 0x22
mov qword [rbp + 0x2e8], 0x2f
movups xmm0, xmmword [str.xrNegotiateLoaderApiLayerInterface]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x180347f40]
movups xmmword [rax + 0x10], xmm1
movzx edx, word [0x180347f50]
mov word [rax + 0x20], dx
mov byte [rax + 0x22], dil
lea rdx, [rbp + 0x2d0]
mov rcx, rbx
call fcn.1801cb100
mov rsi, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x2b0], xmm0
mov qword [rbp + 0x2c0], rdi
mov qword [rbp + 0x2c8], rdi
mov rdi, qword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1801b8338
mov rsi, qword [rax]
movabs rax, 0x7fffffffffffffff
cmp rdi, rax
ja 0x1801b970c
mov qword [rbp + 0x2c8], 0xf
cmp rdi, 0x10
jae 0x1801b836f
mov qword [rbp + 0x2c0], rdi
movups xmm0, xmmword [rsi]
movups xmmword [rbp + 0x2b0], xmm0
jmp 0x1801b83c2
mov rbx, rdi
or rbx, 0xf
cmp rbx, rax
jbe 0x1801b8380
mov rbx, rax
jmp 0x1801b838d
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rdx, [rbx + 1]
lea rcx, [rbp + 0x2b0]
call fcn.180015660
mov qword [rbp + 0x2b0], rax
mov qword [rbp + 0x2c0], rdi
mov qword [rbp + 0x2c8], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call fcn.180287a80
nop
mov rdx, qword [rbp + 0x2e8]
cmp rdx, 0x10
jb 0x1801b8403
inc rdx
mov rcx, qword [rbp + 0x2d0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b83fe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96ac
call fcn.18026a1a0
xor edi, edi
mov qword [rbp + 0x2e0], rdi
mov qword [rbp + 0x2e8], 0xf
mov byte [rbp + 0x2d0], dil
lea rdx, [rbp + 0x2b0]
cmp qword [rbp + 0x2c8], 0x10
cmovae rdx, qword [rbp + 0x2b0]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
jne 0x1801b88a2
lea rax, [0x180346e08]
mov qword [rbp + 0x30], rax
mov qword [rbp + 0xc0], rdi
mov qword [rbp + 0xe8], rdi
xorps xmm0, xmm0
movdqa xmmword [rbp + 0xf0], xmm0
mov r13d, dword [rsp + 0x44]
or r13d, 4
mov dword [rsp + 0x48], r13d
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0xb8], rax
mov dword [rbp + 0xb4], 0x78
xor r8d, r8d
lea rdx, [rbp + 0x38]
lea rcx, [rbp + 0xb8]
call fcn.180076af0
nop
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rsi, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x30], rsi
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x2c], edx
lea edx, [rdi + 2]
lea rcx, [rbp + 0x38]
call fcn.1801b4cc0
nop
lea rdx, str.ApiLayerInterface::LoadApiLayers_skipping_layer
lea rcx, [rbp + 0x30]
call fcn.1801a4750
mov rdx, qword [r14]
add rdx, 0xb0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1801b8500
mov rdx, qword [rdx]
mov rcx, rax
call fcn.180046b50
lea rdx, str._because_negotiation_function
mov rcx, rax
call fcn.1801a4750
lea rdx, [rbp + 0x2b0]
cmp qword [rbp + 0x2c8], 0x10
cmovae rdx, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2c0]
mov rcx, rax
call fcn.180046b50
mov rcx, rax
lea rdx, str._was_not_found
call fcn.1801a4750
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], rdi
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], rdi
mov qword [rbp + 0x248], 0xf
mov byte [rbp + 0x230], 0
or r13d, 0x20
mov dword [rsp + 0x48], r13d
xor eax, eax
movups xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], rax
mov ecx, dword [rbp + 0xa8]
mov eax, ecx
and al, 0x22
cmp al, 2
je 0x1801b85cc
mov rax, qword [rbp + 0x78]
mov r8, qword [rax]
test r8, r8
je 0x1801b85cc
mov rax, qword [rbp + 0x58]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0xa0]
cmovb r8, qword [rbp + 0xa0]
sub r8, rdx
jmp 0x1801b8604
test cl, 4
jne 0x1801b85f6
mov rax, qword [rbp + 0x70]
mov rcx, qword [rax]
test rcx, rcx
je 0x1801b85f6
mov rax, qword [rbp + 0x50]
mov rdx, qword [rax]
mov rax, qword [rbp + 0x88]
movsxd r8, dword [rax]
add r8, rcx
sub r8, rdx
jmp 0x1801b8604
mov r8, qword [rbp + 0x258]
mov rdx, qword [rbp + 0x250]
test rdx, rdx
je 0x1801b8615
lea rcx, [rbp + 0x230]
call fcn.180021790
and r13d, 0xffffffdf
or r13d, 0x10
mov dword [rsp + 0x44], r13d
call fcn.1801a5b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], 0xd
mov qword [rbp + 0x268], 0xf
movsd xmm0, qword [str.OpenXR_Loader]
movsd qword [rbp + 0x250], xmm0
mov ecx, dword [0x180346b88]
mov dword [rbp + 0x258], ecx
movzx ecx, byte [0x180346b8c]
mov byte [rbp + 0x25c], cl
mov byte [rbp + 0x25d], 0
lea rcx, [rbp + 0x270]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x230]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x250]
mov edx, 0x1000
mov r8d, 1
mov rcx, rax
call fcn.1801be8a0
nop
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x1801b86f6
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b86f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96b2
call fcn.18026a1a0
nop
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b8737
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8732
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96b8
call fcn.18026a1a0
mov qword [rbp + 0x240], rdi
mov qword [rbp + 0x248], 0xf
mov byte [rbp + 0x230], 0
mov rbx, qword [rbp + 0x270]
test rbx, rbx
je 0x1801b87e3
mov rdi, qword [rbp + 0x278]
cmp rbx, rdi
je 0x1801b8789
nop dword [rax]
lea rcx, [rbx + 0x10]
call fcn.180013250
add rbx, 0x30
cmp rbx, rdi
jne 0x1801b8770
mov rbx, qword [rbp + 0x270]
mov rcx, qword [rbp + 0x280]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801b87db
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96be
mov rcx, rbx
call fcn.18026a1a0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov r12d, 0xffffffdc
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x30], rsi
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x2c], edx
lea rcx, [rbp + 0x38]
call fcn.180059990
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x2c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0xb8], rax
lea rcx, [rbp + 0xb8]
call fcn.180268ab4
nop
mov rdx, qword [rbp + 0x2c8]
cmp rdx, 0x10
jb 0x1801b90f6
inc rdx
mov rcx, qword [rbp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8898
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96c4
call fcn.18026a1a0
jmp 0x1801b90f6
mov dword [rbp + 0x2f8], 1
mov dword [rbp + 0x2fc], 1
mov qword [rbp + 0x300], 0x28
mov dword [rbp + 0x308], 1
mov dword [rbp + 0x30c], 1
movabs rcx, 0x1000000000000
mov qword [rbp + 0x310], rcx
movabs rcx, 0x103ff00000fff
mov qword [rbp + 0x318], rcx
mov qword [rbp], rdi
mov qword [rbp + 8], rdi
mov qword [rbp + 0x10], rdi
mov qword [rbp + 0x18], rdi
mov dword [rbp - 0x10], 2
mov dword [rbp - 0xc], 1
mov qword [rbp - 8], 0x30
mov rdx, qword [r14]
add rdx, 0xb0
cmp qword [rdx + 0x18], 0x10
jb 0x1801b8931
mov rdx, qword [rdx]
lea r8, [rbp - 0x10]
lea rcx, [rbp + 0x2f8]
call rax
mov ebx, eax
test eax, eax
js 0x1801b9114
cmp qword [rbp + 0x10], rdi
jne 0x1801b8b05
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], rdi
mov qword [rbp + 0x248], 0xf
mov edx, 0x40
lea rcx, [rbp + 0x230]
call fcn.180015660
mov qword [rbp + 0x230], rax
mov qword [rbp + 0x240], 0x30
mov qword [rbp + 0x248], 0x3f
movups xmm0, xmmword [str.ApiLayerInterface::LoadApiLayers_skipping_layer]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x180347ee0]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x180347ef0]
movups xmmword [rax + 0x20], xmm0
mov byte [rax + 0x30], dil
mov rdx, qword [r14]
add rdx, 0xb0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1801b89d8
mov rdx, qword [rdx]
lea rcx, [rbp + 0x230]
call fcn.180021700
mov r8d, 0x38
lea rdx, str.__negotiation_did_not_return_a_valid_getInstanceProcAddr
lea rcx, [rbp + 0x230]
call fcn.180021700
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], rdi
call fcn.1801a5b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x270], xmm0
mov qword [rbp + 0x280], 0xd
mov qword [rbp + 0x288], 0xf
movsd xmm0, qword [str.OpenXR_Loader]
movsd qword [rbp + 0x270], xmm0
mov ecx, dword [0x180346b88]
mov dword [rbp + 0x278], ecx
movzx ecx, byte [0x180346b8c]
mov byte [rbp + 0x27c], cl
mov byte [rbp + 0x27d], 0
lea rcx, [rbp + 0x250]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x230]
mov qword [rsp + 0x28], rcx
mov rdi, qword [rsp + 0x50]
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0x270]
mov edx, 0x100
mov r8d, 1
mov rcx, rax
call fcn.1801be8a0
nop
mov rdx, qword [rbp + 0x288]
cmp rdx, 0x10
jb 0x1801b8ae3
inc rdx
mov rcx, qword [rbp + 0x270]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8add
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96ca
call fcn.18026a1a0
nop
lea rcx, [rbp + 0x250]
call fcn.1801a54b0
mov ebx, 0xffffffdf
lea rcx, [rbp + 0x230]
call fcn.180013250
jmp 0x1801b9119
mov edx, 1
lea rcx, [rbp + 0x30]
call fcn.1801b4a70
nop
lea rdx, str.ApiLayerInterface::LoadApiLayers_succeeded_loading_layer
lea rcx, [rbp + 0x30]
call fcn.1801a4750
mov rdx, qword [r14]
add rdx, 0xb0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1801b8b3c
mov rdx, qword [rdx]
mov rcx, rax
call fcn.180046b50
lea rdx, str._using_interface_version
mov rcx, rax
call fcn.1801a4750
mov edx, dword [rbp]
mov rcx, rax
call fcn.1801b5760
mov rcx, rax
lea rdx, str._and_OpenXR_API_version
call fcn.1801a4750
mov rdx, qword [rbp + 8]
shr rdx, 0x30
mov rcx, rax
call fcn.1801a57e0
mov rcx, rax
lea rdx, [0x18031b020]
call fcn.1801a4750
mov rdx, qword [rbp + 8]
shr rdx, 0x20
mov rcx, rax
call fcn.1801a57e0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], rdi
lea rdx, [rbp + 0x290]
lea rcx, [rbp + 0x38]
call fcn.1801b9af0
or dword [rsp + 0x44], 0x100
call fcn.1801a5b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], 0xd
mov qword [rbp + 0x248], 0xf
movsd xmm0, qword [str.OpenXR_Loader]
movsd qword [rbp + 0x230], xmm0
mov ecx, dword [0x180346b88]
mov dword [rbp + 0x238], ecx
movzx ecx, byte [0x180346b8c]
mov byte [rbp + 0x23c], cl
mov byte [rbp + 0x23d], 0
lea rcx, [rbp + 0x250]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x290]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rcx
lea r9, [rbp + 0x230]
mov edx, 0x10
lea r8d, [rdx - 0xf]
mov rcx, rax
call fcn.1801be8a0
nop
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b8c98
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b8c92
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96d0
call fcn.18026a1a0
nop
lea rcx, [rbp + 0x290]
call fcn.180013250
nop
mov rbx, qword [rbp + 0x250]
test rbx, rbx
je 0x1801b8d36
mov rdi, qword [rbp + 0x258]
cmp rbx, rdi
je 0x1801b8cda
lea rcx, [rbx + 0x10]
call fcn.180013250
add rbx, 0x30
cmp rbx, rdi
jne 0x1801b8cc1
mov rbx, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x260]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801b8d2c
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96d6
mov rcx, rbx
call fcn.18026a1a0
xor edi, edi
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x2c], edx
lea rcx, [rbp + 0x38]
call fcn.180059990
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x30], rax
mov rax, qword [rbp + 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x2c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0xb8], rax
lea rcx, [rbp + 0xb8]
call fcn.180268ab4
nop
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x270], xmm0
mov r12, rdi
mov qword [rbp + 0x280], rdi
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rdi
lea rdx, [rsp + 0x78]
mov rcx, qword [r14]
call fcn.1801cb1a0
mov rdi, qword [rbp - 0x80]
mov rcx, rdi
mov rbx, qword [rsp + 0x78]
sub rcx, rbx
movabs rax, 0x6bca1af286bca1b
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x1801b8e2a
movabs rax, 0x7ffffffffffffff
cmp rdx, rax
ja 0x1801b96dc
lea rcx, [rbp + 0x270]
call fcn.180067470
mov r12, qword [rbp + 0x280]
mov rdi, qword [rbp - 0x80]
mov rbx, qword [rsp + 0x78]
mov rsi, qword [rbp + 0x278]
cmp rbx, rdi
je 0x1801b8eb6
add rbx, 0x10
mov r15, 0xffffffffffffffff
cmp rsi, r12
je 0x1801b8e81
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
xor eax, eax
mov qword [rsi + 0x10], rax
mov qword [rsi + 0x18], rax
mov r8, r15
nop dword [rax]
inc r8
cmp byte [rbx + r8], al
jne 0x1801b8e60
mov rdx, rbx
mov rcx, rsi
call fcn.1800087a0
add rsi, 0x20
mov qword [rbp + 0x278], rsi
jmp 0x1801b8ea1
mov r8, rbx
mov rdx, rsi
lea rcx, [rbp + 0x270]
call fcn.1801b4060
mov r12, qword [rbp + 0x280]
mov rsi, qword [rbp + 0x278]
add rbx, 0x98
lea rax, [rbx - 0x10]
cmp rax, rdi
jne 0x1801b8e45
mov r15, qword [rsp + 0x48]
mov ecx, 0x58
call fcn.18026a164
mov r14, rax
mov qword [rbp + 0x130], rax
mov r13, qword [rbp + 0x270]
test rax, rax
je 0x1801b8fb7
mov rdx, qword [rsp + 0x58]
mov rdx, qword [rdx]
add rdx, 0xb0
mov rdi, qword [rbp + 0x18]
mov rbx, qword [rbp + 0x10]
lea rax, vtable.ApiLayerInterface.0
mov qword [r14], rax
lea rcx, [r14 + 8]
call fcn.180012830
nop
mov qword [r14 + 0x28], r15
mov qword [r14 + 0x30], rbx
mov qword [r14 + 0x38], rdi
lea r15, [r14 + 0x40]
xor edi, edi
mov qword [r15], rdi
mov qword [r15 + 8], rdi
mov qword [r15 + 0x10], rdi
mov rbx, rsi
sub rbx, r13
sar rbx, 5
test rbx, rbx
je 0x1801b8fb5
movabs rax, 0x7ffffffffffffff
cmp rbx, rax
ja 0x1801b96e2
mov rdx, rbx
mov rcx, r15
call fcn.180021690
mov qword [r15], rax
mov qword [r15 + 8], rax
shl rbx, 5
add rbx, rax
mov qword [r15 + 0x10], rbx
mov qword [rsp + 0x48], r15
mov rbx, qword [r15]
mov rdi, r13
mov qword [rbp + 0x250], rbx
mov qword [rbp + 0x258], rbx
mov qword [rbp + 0x260], r15
cmp r13, rsi
je 0x1801b8faf
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.180012830
add rbx, 0x20
mov qword [rbp + 0x258], rbx
add rdi, 0x20
cmp rdi, rsi
jne 0x1801b8f90
mov qword [r15 + 8], rbx
xor edi, edi
jmp 0x1801b8fbc
xor edi, edi
mov r14d, edi
mov qword [rsp + 0x48], r14
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax + 8]
cmp rdx, qword [rax + 0x10]
je 0x1801b8fd9
mov qword [rdx], r14
add qword [rax + 8], 8
jmp 0x1801b8fe6
lea r8, [rsp + 0x48]
mov rcx, rax
call fcn.1801b41b0
mov byte [rsp + 0x42], 1
mov dword [rsp + 0x48], edi
mov r8, qword [rsp + 0x78]
test r8, r8
je 0x1801b905c
mov rcx, qword [rbp - 0x78]
sub rcx, r8
movabs rax, 0x6bca1af286bca1b
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rdx, rdx, 0x98
mov rax, r8
cmp rdx, 0x1000
jb 0x1801b9047
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96e8
mov rcx, r8
call fcn.18026a1a0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
mov qword [rbp - 0x78], rdi
test r13, r13
je 0x1801b90ab
lea r8, [rbp + 0x270]
mov rdx, rsi
mov rcx, r13
call fcn.1800180d0
sub r12, r13
and r12, 0xffffffffffffffe0
mov rax, r13
cmp r12, 0x1000
jb 0x1801b909f
add r12, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96ee
mov rdx, r12
mov rcx, r13
call fcn.18026a1a0
nop
mov rdx, qword [rbp + 0x2c8]
cmp rdx, 0x10
jb 0x1801b90ec
inc rdx
mov rcx, qword [rbp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b90e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96f4
call fcn.18026a1a0
mov r12d, dword [rsp + 0x48]
mov r14, qword [rsp + 0x58]
add r14, 8
mov qword [rsp + 0x58], r14
cmp r14, qword [rbp + 0x20]
je 0x1801b9486
movzx r13d, byte [rsp + 0x42]
jmp 0x1801b7ba9
mov rdi, qword [rsp + 0x50]
test r13b, r13b
cmove r12d, ebx
lea rax, [0x180346e08]
mov qword [rbp + 0x140], rax
xor esi, esi
mov qword [rbp + 0x1d0], rsi
mov qword [rbp + 0x1f8], rsi
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x200], xmm0
mov r13d, dword [rsp + 0x44]
or r13d, 0x40
mov dword [rsp + 0x48], r13d
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x1c8], rax
mov dword [rbp + 0x1c4], 0x78
xor r8d, r8d
lea rdx, [rbp + 0x148]
lea rcx, [rbp + 0x1c8]
call fcn.180076af0
nop
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x140], rax
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x13c], edx
lea edx, [rsi + 2]
lea rcx, [rbp + 0x148]
call fcn.1801b4cc0
nop
lea rdx, str.ApiLayerInterface::LoadApiLayers_skipping_layer
lea rcx, [rbp + 0x140]
call fcn.1801a4750
mov rdx, qword [r14]
add rdx, 0xb0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1801b91f3
mov rdx, qword [rdx]
mov rcx, rax
call fcn.180046b50
lea rdx, str._due_to_failed_negotiation_with_error
mov rcx, rax
call fcn.1801a4750
mov edx, ebx
mov rcx, rax
call fcn.1801b5550
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x250], xmm0
mov qword [rbp + 0x260], rsi
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x148]
call fcn.1801b9af0
bts r13d, 9
mov dword [rsp + 0x44], r13d
call fcn.1801a5b60
xorps xmm0, xmm0
movups xmmword [rbp + 0x230], xmm0
mov qword [rbp + 0x240], 0xd
mov qword [rbp + 0x248], 0xf
movsd xmm0, qword [str.OpenXR_Loader]
movsd qword [rbp + 0x230], xmm0
mov ecx, dword [0x180346b88]
mov dword [rbp + 0x238], ecx
movzx ecx, byte [0x180346b8c]
mov byte [rbp + 0x23c], cl
mov byte [rbp + 0x23d], 0
lea rcx, [rbp + 0x250]
mov qword [rsp + 0x30], rcx
lea rcx, [rbp + 0x270]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdi
lea r9, [rbp + 0x230]
mov edx, 0x100
mov r8d, 1
mov rcx, rax
call fcn.1801be8a0
nop
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x1801b9312
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b930c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b96fa
call fcn.18026a1a0
nop
lea rcx, [rbp + 0x270]
call fcn.180013250
nop
mov rbx, qword [rbp + 0x250]
test rbx, rbx
je 0x1801b93aa
mov rdi, qword [rbp + 0x258]
cmp rbx, rdi
je 0x1801b9350
lea rcx, [rbx + 0x10]
call fcn.180013250
add rbx, 0x30
cmp rbx, rdi
jne 0x1801b9337
mov rbx, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x260]
sub rcx, rbx
movabs rax, 0x2aaaaaaaaaaaaaab
imul rcx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
lea rdx, [rdx + rdx*2]
shl rdx, 4
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801b93a2
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9700
mov rcx, rbx
call fcn.18026a1a0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
nop
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x140], rax
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x88]
mov dword [rbp + rcx + 0x13c], edx
lea rcx, [rbp + 0x148]
call fcn.180059990
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x140], rax
mov rax, qword [rbp + 0x140]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x13c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x1c8], rax
lea rcx, [rbp + 0x1c8]
call fcn.180268ab4
nop
mov rdx, qword [rbp + 0x2c8]
cmp rdx, 0x10
jb 0x1801b90f6
inc rdx
mov rcx, qword [rbp + 0x2b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b947c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9706
call fcn.18026a1a0
jmp 0x1801b90f6
cmp byte [rsp + 0x43], 0
jne 0x1801b9495
mov r12d, 0xffffffdc
jmp 0x1801b949a
test r12d, r12d
jns 0x1801b94d2
mov rsi, qword [rbp - 0x58]
mov rbx, qword [rsi]
mov rdi, qword [rsi + 8]
cmp rbx, rdi
je 0x1801b94d2
nop word [rax + rax]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1801b94c2
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
add rbx, 8
cmp rbx, rdi
jne 0x1801b94b0
mov rax, qword [rsi]
mov qword [rsi + 8], rax
mov esi, r12d
xor r14d, r14d
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x1801b9559
mov rdi, qword [rbp - 0x68]
cmp rbx, rdi
je 0x1801b950d
nop word [rax + rax]
mov rdx, qword [rbx]
test rdx, rdx
je 0x1801b9500
mov rcx, rbx
call fcn.1801b5970
add rbx, 8
cmp rbx, rdi
jne 0x1801b94f0
mov rbx, qword [rbp - 0x70]
mov rax, qword [rbp - 0x60]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801b9545
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9712
mov rcx, rbx
call fcn.18026a1a0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], r14
mov rbx, qword [rsp + 0x60]
test rbx, rbx
je 0x1801b95dd
mov rdi, qword [rsp + 0x68]
cmp rbx, rdi
je 0x1801b9589
nop dword [rax]
mov rdx, qword [rbx]
test rdx, rdx
je 0x1801b9580
mov rcx, rbx
call fcn.1801b5970
add rbx, 8
cmp rbx, rdi
jne 0x1801b9570
mov rax, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x60]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1801b95c7
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b9718
mov rcx, rbx
call fcn.18026a1a0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], r14
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x1801b9623
mov rdx, qword [rbp - 0x28]
sub rdx, rcx
and rdx, 0xfffffffffffffff8
mov rax, rcx
cmp rdx, 0x1000
jb 0x1801b9612
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1801b966a
call fcn.18026a1a0
mov qword [rbp - 0x38], r14
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x30], xmm0
mov rdx, qword [rbp - 0x48]
lea rcx, [rbp - 0x48]
call fcn.18008c980
mov edx, 0x30
mov rcx, qword [rbp - 0x48]
call fcn.18026a1a0
mov eax, esi
mov rcx, qword [rbp + 0x320]
xor rcx, rsp
call fcn.18026ad00
mov rbx, qword [rsp + 0x478]
add rsp, 0x430
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.180021520
nop
call fcn.180021520
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
nop
call fcn.180015620
nop
call fcn.18028cdc8
nop
call fcn.18028cdc8
int3