Function at 0x1400e2074
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 [0x14019e018]
xor rax, rsp
mov qword [rsp + 0x1b0], rax
cmp byte [rcx + 0x17], 0
jns 0x1400e20a0
mov rcx, qword [rdi]
xor edx, edx
call sub.VERSION.dll_GetFileVersionInfoSizeW
test eax, eax
je 0x1400e213f
mov ebp, eax
mov ecx, eax
call fcn.14013689c
mov rsi, rax
cmp byte [rdi + 0x17], 0
mov rcx, rdi
jns 0x1400e20c7
mov rcx, qword [rdi]
xor edx, edx
mov r8d, ebp
mov r9, rsi
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400e2211
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r8, [rsp + 0x58]
mov qword [r8], rax
lea r9, [rsp + 0x34]
mov dword [r9], 0xaaaaaaaa
lea rdx, [0x140180fc4]
mov rcx, rsi
call sub.VERSION.dll_VerQueryValueW
mov edi, eax
test eax, eax
je 0x1400e22cf
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 0x1400e2328
mov ecx, 1
call fcn.14006d9d0
test al, al
je 0x1400e220a
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x715
je 0x1400e220a
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.14006ea90
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.14004af80
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
jns 0x1400e21e4
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 0x1400e2200
mov rcx, qword [rsp + 0x58]
call fcn.140136864
lea rcx, [rsp + 0x70]
call fcn.14006eb80
xor edi, edi
jmp 0x1400e233b
mov ecx, 1
call fcn.14006d9d0
test al, al
je 0x1400e22cb
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.14006ea90
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.14004af80
movzx r8d, byte [rdi + 0x17]
test r8b, r8b
jns 0x1400e22a5
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 0x1400e22c1
mov rcx, qword [rsp + 0x58]
call fcn.140136864
lea rcx, [rsp + 0x70]
call fcn.14006eb80
xor edi, edi
jmp 0x1400e232e
mov ecx, 1
call fcn.14006d9d0
test al, al
je 0x1400e2328
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.14006ea90
lea rcx, [rsp + 0x80]
lea rdx, str.VerQueryValue
mov r8d, 0xd
call fcn.14001df3c
mov rcx, rbx
call fcn.14006eb80
test edi, edi
setne dil
test rsi, rsi
je 0x1400e233b
mov rcx, rsi
call fcn.1401368a4
mov rcx, qword [rsp + 0x1b0]
xor rcx, rsp
call fcn.140137110
mov eax, edi
add rsp, 0x1b8
pop rbx
pop rbp
pop rdi
pop rsi
ret