Function at 0x1400138f0
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.14004a8d0
mov rcx, rbx
mov rdi, rax
call fcn.14004a8d0
xor esi, esi
mov r15, rax
mov ebp, esi
test rdi, rdi
je 0x140013980
test rax, rax
je 0x140013980
mov eax, dword [rsp + 0x768]
mov r9, r15
mov r10, qword [r12 + 0x60]
mov r8, rdi
mov dword [rsp + 0x28], eax
xor edx, edx
mov rax, qword [rsp + 0x760]
mov rcx, r13
mov qword [rsp + 0x20], rax
call r10
test rax, rax
jne 0x140013985
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
jmp 0x140013985
mov ebp, 8
mov rax, qword [r12]
test rax, rax
je 0x140013b2d
test rdi, rdi
je 0x140013b3a
test byte [rax + 0x28], 8
mov qword [rsp + 0x700], r14
je 0x140013a38
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x58], rsi
mov rcx, rdi
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov r14d, eax
test eax, eax
je 0x140013a38
mov ecx, r14d
call fcn.14004a95c
mov rbx, rax
test rax, rax
je 0x140013a38
mov edx, dword [rsp + 0x50]
mov r9, rax
mov r8d, r14d
mov rcx, rdi
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x140013a30
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 0x140013a1e
mov qword [rsp + 0x58], rsi
jmp 0x140013a30
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.14004a948
mov r14, qword [rsp + 0x760]
lea r9, [rsp + 0x70]
mov r8, r14
lea rbx, [0x140083e50]
mov rdx, r13
mov rcx, r12
call fcn.1400127e0
test eax, eax
je case.default.0x140013a7c
movsxd rax, dword [rsp + 0x90]
cmp eax, 8
ja case.default.0x140013a7c
lea rdx, [0x140000000]
mov ecx, dword [rdx + rax*4 + 0x13b7c]
add rcx, rdx
jmp rcx
lea rbx, str._nosymbols_
jmp case.default.0x140013a7c
lea rbx, str.COFF
jmp case.default.0x140013a7c
lea rbx, [0x140083e74]
jmp case.default.0x140013a7c
lea rbx, [0x140083e78]
jmp case.default.0x140013a7c
lea rbx, str._exported_
jmp case.default.0x140013a7c
lea rbx, str._deferred_
jmp case.default.0x140013a7c
lea rbx, [0x140083e9c]
jmp case.default.0x140013a7c
lea rbx, [0x140083ea0]
jmp case.default.0x140013a7c
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 0x140013b3a
mov rcx, rdi
call fcn.14004a948
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 0x140013b6f
mov rcx, r15
call fcn.14004a948
mov eax, ebp
add rsp, 0x728
pop r15
pop rbp
ret