Function at 0x18023d270
Capabilities:
Get file version info

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbx
push rdi
sub rsp, 0x208
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
mov rbx, rcx
call fcn.1801ff0b0
mov rdx, rax
lea rcx, [rsp + 0x48]
call fcn.1801ff310
nop
cmp byte [rsp + 0x68], 0
jne 0x18023d374
call fcn.180254440
lea rcx, str.Failed_to_get_executable_path
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], 0x1d
lea r8, str.D:_aUEVRUEVRdependencies_submodulesUESDK_src_sdkUtility.cpp
mov qword [rsp + 0xb0], r8
mov dword [rsp + 0xb8], 0x3e
lea r8, str.sdk::get_file_version_info
mov qword [rsp + 0xc0], r8
movaps xmm0, xmmword [rsp + 0x110]
movdqa xmmword [rsp + 0x140], xmm0
movups xmm1, xmmword [rsp + 0xb0]
movaps xmmword [rsp + 0x170], xmm1
movsd xmm0, qword [rsp + 0xc0]
movsd qword [rsp + 0x180], xmm0
lea r9, [rsp + 0x140]
mov r8d, 4
lea rdx, [rsp + 0x170]
mov rcx, rax
call fcn.1800266c0
xorps xmm6, xmm6
xor edi, edi
cmp byte [rsp + 0x68], dil
je 0x18023d35e
lea rcx, [rsp + 0x48]
call fcn.1800155b0
movups xmmword [rbx], xmm6
movups xmmword [rbx + 0x10], xmm6
movups xmmword [rbx + 0x20], xmm6
mov dword [rbx + 0x30], edi
mov rax, rbx
jmp 0x18023d6ab
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
xor edx, edx
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov edi, eax
test eax, eax
jne 0x18023d45c
call fcn.180254440
lea rcx, str.Failed_to_get_file_version_info_size
mov qword [rsp + 0x120], rcx
mov qword [rsp + 0x128], 0x24
lea r8, str.D:_aUEVRUEVRdependencies_submodulesUESDK_src_sdkUtility.cpp
mov qword [rsp + 0xc8], r8
mov dword [rsp + 0xd0], 0x45
lea r8, str.sdk::get_file_version_info
mov qword [rsp + 0xd8], r8
movaps xmm0, xmmword [rsp + 0x120]
movdqa xmmword [rsp + 0x150], xmm0
movups xmm1, xmmword [rsp + 0xc8]
movaps xmmword [rsp + 0x190], xmm1
movsd xmm0, qword [rsp + 0xd8]
movsd qword [rsp + 0x1a0], xmm0
lea r9, [rsp + 0x150]
mov r8d, 4
lea rdx, [rsp + 0x190]
mov rcx, rax
call fcn.1800266c0
xorps xmm6, xmm6
xor edi, edi
cmp byte [rsp + 0x68], dil
je 0x18023d446
lea rcx, [rsp + 0x48]
call fcn.1800155b0
movups xmmword [rbx], xmm6
movups xmmword [rbx + 0x10], xmm6
movups xmmword [rbx + 0x20], xmm6
mov dword [rbx + 0x30], edi
mov rax, rbx
jmp 0x18023d6ab
mov rdx, rdi
lea r8, [rsp + 0x228]
lea rcx, [rsp + 0x30]
call fcn.1800ff4f0
nop
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
mov r9, qword [rsp + 0x30]
mov r8d, edi
xor edx, edx
call sub.VERSION.dll_GetFileVersionInfoW
xor eax, eax
mov dword [rsp + 0x230], eax
mov qword [rsp + 0x238], rax
lea r9, [rsp + 0x230]
lea r8, [rsp + 0x238]
lea rdx, [0x180330914]
mov rcx, qword [rsp + 0x30]
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x18023d5dc
cmp qword [rsp + 0x238], 0
je 0x18023d5dc
call fcn.180254440
mov rcx, qword [rsp + 0x238]
lea rdx, [rcx + 0xc]
add rcx, 8
lea r9, str.MS:_:x__LS:_:x
mov qword [rsp + 0x160], r9
mov qword [rsp + 0x168], 0x12
lea r8, str.D:_aUEVRUEVRdependencies_submodulesUESDK_src_sdkUtility.cpp
mov qword [rsp + 0xe0], r8
mov dword [rsp + 0xe8], 0x50
lea r8, str.sdk::get_file_version_info
mov qword [rsp + 0xf0], r8
mov qword [rsp + 0x130], r9
mov qword [rsp + 0x138], 0x12
movups xmm0, xmmword [rsp + 0xe0]
movaps xmmword [rsp + 0x1b0], xmm0
movsd xmm1, qword [rsp + 0xf0]
movsd qword [rsp + 0x1c0], xmm1
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x130]
mov r8d, 2
lea rdx, [rsp + 0x1b0]
mov rcx, rax
call fcn.180019d80
mov rax, qword [rsp + 0x238]
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
mov edi, dword [rax + 0x30]
lea rcx, [rsp + 0x30]
call fcn.18002c480
nop
cmp byte [rsp + 0x68], 0
je 0x18023d5c5
lea rcx, [rsp + 0x48]
call fcn.1800155b0
movups xmmword [rbx], xmm6
movups xmmword [rbx + 0x10], xmm7
movups xmmword [rbx + 0x20], xmm8
mov dword [rbx + 0x30], edi
mov rax, rbx
jmp 0x18023d6ab
call fcn.180254440
lea rcx, str.Failed_to_get_file_version_info
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x78], 0x1f
lea r8, str.D:_aUEVRUEVRdependencies_submodulesUESDK_src_sdkUtility.cpp
mov qword [rsp + 0xf8], r8
mov dword [rsp + 0x100], 0x53
lea r8, str.sdk::get_file_version_info
mov qword [rsp + 0x108], r8
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x80], xmm0
movups xmm1, xmmword [rsp + 0xf8]
movaps xmmword [rsp + 0x90], xmm1
movsd xmm0, qword [rsp + 0x108]
movsd qword [rsp + 0xa0], xmm0
lea r9, [rsp + 0x80]
mov r8d, 4
lea rdx, [rsp + 0x90]
mov rcx, rax
call fcn.1800266c0
nop
lea rcx, [rsp + 0x30]
call fcn.18002c480
nop
cmp byte [rsp + 0x68], 0
je 0x18023d68b
lea rcx, [rsp + 0x48]
call fcn.1800155b0
nop
jmp 0x18023d695
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
movups xmmword [rbx + 0x20], xmm0
mov dword [rbx + 0x30], eax
mov rax, rbx
lea r11, [rsp + 0x208]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop rdi
pop rbx
ret