Function at 0x1400de5a4
Capabilities:
Get file version info

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x1b8
mov rbx, rdx
mov rdi, rcx
mov rax, qword [0x14019c018]
xor rax, rsp
mov qword [rsp + 0x1b0], rax
cmp byte [rcx + 0x17], 0
jns 0x1400de5d0
mov rcx, qword [rdi]
xor edx, edx
call sub.VERSION.dll_GetFileVersionInfoSizeW
test eax, eax
je 0x1400de66f
mov ebp, eax
mov ecx, eax
call fcn.140134a0c
mov rsi, rax
cmp byte [rdi + 0x17], 0
mov rcx, rdi
jns 0x1400de5f7
mov rcx, qword [rdi]
xor edx, edx
mov r8d, ebp
mov r9, rsi
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400de741
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r8, [rsp + 0x58]
mov qword [r8], rax
lea r9, [rsp + 0x34]
mov dword [r9], 0xaaaaaaaa
lea rdx, [0x14017efb4]
mov rcx, rsi
call sub.VERSION.dll_VerQueryValueW
mov edi, eax
test eax, eax
je 0x1400de7ff
mov rax, qword [rsp + 0x58]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
movups xmmword [rbx + 0x10], xmm1
mov eax, dword [rax + 0x30]
mov dword [rbx + 0x30], eax
movups xmmword [rbx + 0x20], xmm2
movups xmmword [rbx], xmm0
mov eax, dword [rbx + 0x18]
and dword [rbx + 0x1c], eax
jmp 0x1400de858
mov ecx, 1
call fcn.14006c840
test al, al
je 0x1400de73a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x715
je 0x1400de73a
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str..._.._third_party_crashpad_crashpad_util_win_module_version.cc
lea rcx, [rsp + 0x70]
mov r8d, 0x1f
mov r9d, 1
call fcn.14006d900
lea rcx, [rsp + 0x80]
lea rdx, str.GetFileVersionInfoSize:
mov r8d, 0x18
call fcn.14001df3c
mov rsi, rax
movzx eax, byte [rdi + 0x17]
test al, al
mov rcx, qword [rdi]
cmovns rcx, rdi
lea rdx, [rsp + 0x48]
mov qword [rdx], rcx
cmovs rax, qword [rdi + 8]
mov qword [rdx + 8], rax
lea rdi, [rsp + 0x58]
mov rcx, rdi
call fcn.14004ad60
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
jns 0x1400de714
mov r8, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x58]
mov rcx, rsi
mov rdx, rdi
call fcn.14001df3c
cmp byte [rsp + 0x6f], 0
jns 0x1400de730
mov rcx, qword [rsp + 0x58]
call fcn.1401349d4
lea rcx, [rsp + 0x70]
call fcn.14006d9f0
xor edi, edi
jmp 0x1400de86b
mov ecx, 1
call fcn.14006c840
test al, al
je 0x1400de7fb
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str..._.._third_party_crashpad_crashpad_util_win_module_version.cc
lea rcx, [rsp + 0x70]
mov r8d, 0x26
mov r9d, 1
call fcn.14006d900
lea rcx, [rsp + 0x80]
lea rdx, str.GetFileVersionInfo:
mov r8d, 0x14
call fcn.14001df3c
mov rbx, rax
movzx eax, byte [rdi + 0x17]
test al, al
mov rcx, qword [rdi]
cmovns rcx, rdi
lea rdx, [rsp + 0x38]
mov qword [rdx], rcx
cmovs rax, qword [rdi + 8]
mov qword [rdx + 8], rax
lea rdi, [rsp + 0x58]
mov rcx, rdi
call fcn.14004ad60
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
jns 0x1400de7d5
mov r8, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x58]
mov rcx, rbx
mov rdx, rdi
call fcn.14001df3c
cmp byte [rsp + 0x6f], 0
jns 0x1400de7f1
mov rcx, qword [rsp + 0x58]
call fcn.1401349d4
lea rcx, [rsp + 0x70]
call fcn.14006d9f0
xor edi, edi
jmp 0x1400de85e
mov ecx, 1
call fcn.14006c840
test al, al
je 0x1400de858
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str..._.._third_party_crashpad_crashpad_util_win_module_version.cc
lea rbx, [rsp + 0x70]
mov rcx, rbx
mov r8d, 0x30
mov r9d, 1
call fcn.14006d900
lea rcx, [rsp + 0x80]
lea rdx, str.VerQueryValue
mov r8d, 0xd
call fcn.14001df3c
mov rcx, rbx
call fcn.14006d9f0
test edi, edi
setne dil
test rsi, rsi
je 0x1400de86b
mov rcx, rsi
call fcn.140134a14
mov rcx, qword [rsp + 0x1b0]
xor rcx, rsp
call fcn.140135280
mov eax, edi
add rsp, 0x1b8
pop rbx
pop rbp
pop rdi
pop rsi
ret