Function at 0x14000a320
Capabilities:
Get file version info

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
push rbp
push r15
sub rsp, 0x728
mov qword [rax + 0x10], rbx
mov rbx, r9
mov qword [rax - 0x18], rsi
mov qword [rax - 0x20], rdi
mov qword [rax - 0x28], r12
mov r12, rcx
mov qword [rax - 0x30], r13
mov rcx, r8
mov r13, rdx
call fcn.14003f7a4
mov rcx, rbx
mov rdi, rax
call fcn.14003f7a4
xor esi, esi
mov r15, rax
mov ebp, esi
test rdi, rdi
je 0x14000a3ad
test rax, rax
je 0x14000a3ad
mov eax, dword [rsp + 0x768]
mov r9, r15
mov dword [rsp + 0x28], eax
mov r8, rdi
mov rax, qword [rsp + 0x760]
xor edx, edx
mov rcx, r13
mov qword [rsp + 0x20], rax
call qword [r12 + 0x60]
test rax, rax
jne 0x14000a3b2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
jmp 0x14000a3b2
mov ebp, 8
mov rax, qword [r12]
test rax, rax
je 0x14000a55a
test rdi, rdi
je 0x14000a567
test byte [rax + 0x28], 8
mov qword [rsp + 0x700], r14
je 0x14000a465
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x58], rsi
mov rcx, rdi
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov r14d, eax
test eax, eax
je 0x14000a465
mov ecx, r14d
call fcn.14003f5f0
mov rbx, rax
test rax, rax
je 0x14000a465
mov edx, dword [rsp + 0x50]
mov r9, rax
mov r8d, r14d
mov rcx, rdi
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x14000a45d
mov eax, 0x5c
lea r9, [rsp + 0x60]
lea r8, [rsp + 0x58]
mov word [rsp + 0x740], ax
lea rdx, [rsp + 0x740]
mov rcx, rbx
call sub.VERSION.dll_VerQueryValueA
test eax, eax
jne 0x14000a44b
mov qword [rsp + 0x58], rsi
jmp 0x14000a45d
mov rax, qword [rsp + 0x58]
mov esi, dword [rax + 8]
mov eax, dword [rax + 0xc]
shl rsi, 0x20
add rsi, rax
mov rcx, rbx
call fcn.14003f5e8
mov r14, qword [rsp + 0x760]
lea r9, [rsp + 0x70]
mov r8, r14
lea rbx, [0x140057578]
mov rdx, r13
mov rcx, r12
call fcn.140009230
test eax, eax
je case.default.0x14000a4a9
movsxd rax, dword [rsp + 0x90]
cmp eax, 8
ja case.default.0x14000a4a9
lea rdx, [0x140000000]
mov ecx, dword [rdx + rax*4 + 0xa5ac]
add rcx, rdx
jmp rcx
lea rbx, str._nosymbols_
jmp case.default.0x14000a4a9
lea rbx, str.COFF
jmp case.default.0x14000a4a9
lea rbx, [0x14005759c]
jmp case.default.0x14000a4a9
lea rbx, [0x1400575a0]
jmp case.default.0x14000a4a9
lea rbx, str._exported_
jmp case.default.0x14000a4a9
lea rbx, str._deferred_
jmp case.default.0x14000a4a9
lea rbx, [0x1400575c4]
jmp case.default.0x14000a4a9
lea rbx, [0x1400575c8]
jmp case.default.0x14000a4a9
lea rbx, str.Virtual
cmp byte [rsp + 0x2b4], 0
lea rcx, [rsp + 0x1b4]
mov r8, qword [rsp + 0x758]
lea rax, [rsp + 0x2b4]
mov rdx, qword [rsp + 0x750]
cmove rax, rcx
mov rcx, qword [r12]
mov r9, r14
mov qword [rsp + 0x40], rsi
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0x768]
mov r10, qword [rcx]
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], eax
call qword [r10 + 0x10]
mov r14, qword [rsp + 0x700]
test rdi, rdi
je 0x14000a567
mov rcx, rdi
call fcn.14003f5e8
mov r13, qword [rsp + 0x708]
mov r12, qword [rsp + 0x710]
mov rdi, qword [rsp + 0x718]
mov rsi, qword [rsp + 0x720]
mov rbx, qword [rsp + 0x748]
test r15, r15
je 0x14000a59c
mov rcx, r15
call fcn.14003f5e8
mov eax, ebp
add rsp, 0x728
pop r15
pop rbp
ret