Function at 0x1400372a0
Capabilities:
Get file version info

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x80
mov rax, qword [0x1401339d8]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rdi, rdx
mov rsi, rcx
call fcn.140014190
mov rcx, rax
mov qword [rsp + 0x20], rdi
lea r9, str.Executable_Complete_Path___s
lea r8, str.Utils::GetVersionValue
xor edx, edx
call fcn.14009cf00
xor r13d, r13d
mov ebx, r13d
mov qword [rsp + 0x30], rbx
call fcn.140014190
cmp byte [rax + 0x64], r13b
je 0x140037356
lea ecx, [r13 + 0x28]
call fcn.140095e50
mov rbx, rax
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14003734e
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
mov qword [rbx + 0x20], rax
call fcn.140014190
mov rdx, rax
lea r8, str.Utils::GetVersionValue
mov rcx, rbx
call fcn.140098570
mov rbx, rax
jmp 0x140037351
mov rbx, r13
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x70], r13d
mov dword [rsp + 0x74], r13d
mov qword [rsp + 0x68], r13
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
xor r12d, r12d
movups xmmword [rsp + 0x48], xmm0
movups xmmword [rsp + 0x58], xmm0
lea rdx, [rsp + 0x70]
mov rcx, rdi
call sub.api_ms_win_core_version_l1_1_1.dll_GetFileVersionInfoSizeW
mov ebp, eax
test eax, eax
je 0x1400374f7
cmp dword [rsp + 0x70], r12d
jne 0x1400374f7
mov ecx, ebp
call fcn.140095ea0
mov r14, rax
test rax, rax
je 0x1400374d5
mov r8d, ebp
xor edx, edx
mov rcx, rax
call fcn.1400a57c0
mov r9, r14
mov r8d, ebp
mov edx, dword [rsp + 0x70]
mov rcx, rdi
call sub.api_ms_win_core_version_l1_1_1.dll_GetFileVersionInfoW
test eax, eax
je 0x14003749f
lea r9, [rsp + 0x74]
lea r8, [rsp + 0x68]
lea rdx, [0x1400eacc4]
mov rcx, r14
call sub.api_ms_win_core_version_l1_1_0.dll_VerQueryValueW
test eax, eax
je 0x140037489
cmp dword [rsp + 0x74], r12d
je 0x140037476
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x140037449
cmp dword [rax], 0xfeef04bd
jne 0x14003743b
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x38], xmm0
movups xmm0, xmmword [rax + 0x10]
movups xmmword [rsp + 0x48], xmm0
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rsp + 0x58], xmm0
mov r12d, dword [rax + 0x30]
mov rcx, r14
call fcn.140095e90
jmp 0x140037527
call fcn.140014190
lea r9, str.Signature_not_correct
jmp 0x140037455
call fcn.140014190
lea r9, str.VS_FIXEDFILEINFO_buffer_is_NULL
mov rcx, rax
lea r8, str.Utils::GetVersionValue
mov edx, 5
call fcn.14009cf00
mov rcx, r14
call fcn.140095e90
jmp 0x140037527
call fcn.140014190
mov dword [rsp + 0x20], r13d
lea r9, str.VerQueryValue_returned_size___d
jmp 0x1400374b7
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov edi, eax
call fcn.140014190
lea r9, str.VerQueryValue_failed_with_error__d
jmp 0x1400374b3
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov edi, eax
call fcn.140014190
lea r9, str.GetFileVersionInfo_failed_with_error__d
mov dword [rsp + 0x20], edi
lea r8, str.Utils::GetVersionValue
mov edx, 5
mov rcx, rax
call fcn.14009cf00
mov rcx, r14
call fcn.140095e90
jmp 0x140037527
call fcn.140014190
mov rcx, rax
lea r9, str.Version_String_Allocation_failed
lea r8, str.Utils::GetVersionValue
mov edx, 5
call fcn.14009cf00
jmp 0x140037527
call qword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_GetLastError]
mov edi, eax
call fcn.140014190
mov rcx, rax
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], ebp
lea r9, str.GetFileVersionInfoSize_Return_Value____d_Error_Code___d
lea r8, str.Utils::GetVersionValue
mov edx, 5
call fcn.14009cf00
call fcn.140014190
mov rcx, rax
lea r9, [0x1400e8328]
lea r8, str.Utils::GetVersionValue
mov edx, 1
call fcn.14009cf00
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rsp + 0x48]
movups xmmword [rsi + 0x10], xmm1
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rsi + 0x20], xmm0
mov dword [rsi + 0x30], r12d
test rbx, rbx
je 0x14003757f
mov rcx, rbx
call fcn.140099040
mov edx, 0x28
mov rcx, rbx
call fcn.140095e90
mov rax, rsi
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1400964b0
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret