Function at 0x6d2280
Capabilities:
Get file version info

Disassembly:
push rbp
sub rsp, 0xc0
mov rbp, rsp
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x90], 0
mov qword [rbp + 0x78], rbp
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rdx
mov qword [rbp + 0xe0], r8
mov rax, qword [rbp + 0xd8]
mov qword [rax], 0
mov rax, qword [rbp + 0xe0]
mov qword [rax], 0
nop
mov byte [rbp + 0xb7], 0
mov rcx, qword [rbp + 0xd8]
call fcn.00410520
mov rcx, qword [rbp + 0xe0]
call fcn.00410520
mov rcx, qword [rbp + 0xd0]
call fcn.00411de0
mov rcx, rax
lea rdx, [rbp + 0xa0]
call sub.version.dll_GetFileVersionInfoSizeW
mov dword [rbp + 0xa4], eax
cmp dword [rbp + 0xa4], 0
je 0x6d255c
mov ecx, dword [rbp + 0xa4]
call fcn.004092c0
mov qword [rbp + 0xb8], rax
nop
mov rcx, qword [rbp + 0xd0]
call fcn.00411de0
mov rcx, rax
xor edx, edx
mov r8d, dword [rbp + 0xa4]
mov r9, qword [rbp + 0xb8]
call sub.version.dll_GetFileVersionInfoW
test eax, eax
setne al
mov byte [rbp + 0x9b], al
cmp byte [rbp + 0x9b], 0
je 0x6d254e
lea rcx, [rbp + 0x90]
lea rdx, [0x006d25ec]
call fcn.00410c20
mov rcx, qword [rbp + 0xb8]
lea rdx, [0x006d25fe]
lea r8, [rbp + 0x88]
lea r9, [rbp + 0x9c]
call sub.version.dll_VerQueryValueW
test eax, eax
je 0x6d2434
mov rax, qword [rbp + 0x88]
cmp word [rax], 0
jne 0x6d23d9
mov rax, qword [rbp + 0x88]
mov word [rax], 0x409
mov rax, qword [rbp + 0x88]
cmp word [rax + 2], 0
jne 0x6d23f4
mov rax, qword [rbp + 0x88]
mov word [rax + 2], 0x4e4
mov rax, qword [rbp + 0x88]
movzx eax, word [rax]
mov dword [rbp + 0x58], eax
mov byte [rbp + 0x60], 0
mov rax, qword [rbp + 0x88]
movzx eax, word [rax + 2]
mov dword [rbp + 0x68], eax
mov byte [rbp + 0x70], 0
lea rcx, [rbp + 0x90]
lea rdx, [0x006d263c]
lea r8, [rbp + 0x58]
mov r9d, 1
call fcn.00438110
lea rcx, [rbp + 0x50]
mov edx, 3
lea r8, [0x006d265c]
mov r9, qword [rbp + 0x90]
lea rax, [0x006d268c]
mov qword [rsp + 0x20], rax
call fcn.00412330
mov rcx, qword [rbp + 0x50]
call fcn.00411de0
mov rcx, qword [rbp + 0xb8]
mov rdx, rax
lea r8, [rbp + 0xa8]
lea r9, [rbp + 0xa0]
call sub.version.dll_VerQueryValueW
test eax, eax
setne al
mov byte [rbp + 0x9b], al
cmp byte [rbp + 0x9b], 0
je 0x6d24bd
lea rcx, [rbp + 0x48]
mov rdx, qword [rbp + 0xa8]
call fcn.00437e40
mov rcx, qword [rbp + 0xd8]
mov rdx, qword [rbp + 0x48]
call fcn.00410b90
mov byte [rbp + 0xb7], 1
lea rcx, [rbp + 0x40]
mov edx, 3
lea r8, [0x006d265c]
mov r9, qword [rbp + 0x90]
lea rax, [0x006d26b4]
mov qword [rsp + 0x20], rax
call fcn.00412330
mov rcx, qword [rbp + 0x40]
call fcn.00411de0
mov rcx, qword [rbp + 0xb8]
mov rdx, rax
lea r8, [rbp + 0xa8]
lea r9, [rbp + 0xa0]
call sub.version.dll_VerQueryValueW
test eax, eax
setne al
mov byte [rbp + 0x9b], al
cmp byte [rbp + 0x9b], 0
je 0x6d253f
lea rcx, [rbp + 0x38]
mov rdx, qword [rbp + 0xa8]
call fcn.00437e40
mov rcx, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0x38]
call fcn.00410b90
nop
mov rcx, qword [rbp + 0xb8]
call fcn.004092f0
jmp 0x6d255b
xor ecx, ecx
mov rdx, qword [rbp + 0x78]
call fcn.006d2590
jmp 0x6d255c
nop
lea rcx, [rbp + 0x38]
mov edx, 4
call fcn.00410600
lea rcx, [rbp + 0x90]
call fcn.00410520
movzx rax, byte [rbp + 0xb7]
lea rsp, [rbp + 0xc0]
pop rbp
ret