Function at 0x8cf3e0
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x251c
call fcn.008d56f0
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
lea eax, [ebp - 8]
push eax
mov ecx, dword [ebp + 8]
push ecx
call sub.version.dll_GetFileVersionInfoSizeA
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jle 0x8cfd6f
mov edx, dword [ebp + 8]
push edx
call fcn.008d5e70
add esp, 4
push eax
push 0x942888
lea eax, [ebp - 0x1114]
push eax
call fcn.008d54f5
add esp, 0xc
lea ecx, [ebp - 0x1008]
push ecx
push 0x1000
push 0
mov edx, dword [ebp + 8]
push edx
call sub.version.dll_GetFileVersionInfoA
test eax, eax
jne 0x8cf47d
mov dword [ebp - 0x1118], 0x1000
lea eax, [ebp - 0x1008]
push eax
lea ecx, [ebp - 0x1118]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.008cf1a0
test eax, eax
jne 0x8cf47d
xor eax, eax
jmp 0x8cfd71
mov dword [ebp - 0x1014], 4
lea eax, [ebp - 0x1014]
push eax
lea ecx, [ebp - 0x1010]
push ecx
push 0x942894
lea ecx, [ebp - 0x181c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea edx, [ebp - 0x1008]
push edx
call sub.version.dll_VerQueryValueA
mov dword [ebp - 0x100c], eax
cmp dword [ebp - 0x100c], 0
je 0x8cfd6f
mov eax, dword [ebp - 0x1010]
mov ecx, dword [eax]
shr ecx, 0x10
and ecx, 0xffff
and ecx, 0xffff
push ecx
mov edx, dword [ebp - 0x1010]
xor eax, eax
mov ax, word [edx]
push eax
push 0x9428b4
lea ecx, [ebp - 0x191c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea ecx, [ebp - 0x171c]
push ecx
call fcn.008d54f5
add esp, 0x10
mov dword [ebp - 0x1014], 0
push 0x9428d4
lea ecx, [ebp - 0x1a1c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea edx, [ebp - 0x171c]
push edx
push 0x9428e4
lea eax, [ebp - 0x151c]
push eax
call fcn.008d54f5
add esp, 0x10
lea ecx, [ebp - 0x1014]
push ecx
lea edx, [ebp - 0x111c]
push edx
lea eax, [ebp - 0x151c]
push eax
lea ecx, [ebp - 0x1008]
push ecx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf5b1
cmp dword [ebp - 0x1014], 0
jbe 0x8cf59e
mov edx, dword [ebp - 0x1014]
push edx
mov eax, dword [ebp - 0x111c]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf5af
push 0x958864
mov edx, dword [ebp + 0xc]
push edx
call fcn.008d5d80
add esp, 8
jmp 0x8cf5c2
push 0x958868
mov eax, dword [ebp + 0xc]
push eax
call fcn.008d5d80
add esp, 8
push 0x9428ec
lea ecx, [ebp - 0x1b1c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea ecx, [ebp - 0x171c]
push ecx
push 0x9428fc
lea edx, [ebp - 0x151c]
push edx
call fcn.008d54f5
add esp, 0x10
lea eax, [ebp - 0x1014]
push eax
lea ecx, [ebp - 0x111c]
push ecx
lea edx, [ebp - 0x151c]
push edx
lea eax, [ebp - 0x1008]
push eax
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf65d
cmp dword [ebp - 0x1014], 0
jbe 0x8cf644
mov ecx, dword [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x111c]
push edx
mov eax, dword [ebp + 0xc]
add eax, 0x100
push eax
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf65b
push 0x95886c
mov ecx, dword [ebp + 0xc]
add ecx, 0x100
push ecx
call fcn.008d5d80
add esp, 8
jmp 0x8cf674
push 0x958870
mov edx, dword [ebp + 0xc]
add edx, 0x100
push edx
call fcn.008d5d80
add esp, 8
push 0x942904
lea ecx, [ebp - 0x1c1c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea eax, [ebp - 0x171c]
push eax
push 0x942918
lea ecx, [ebp - 0x151c]
push ecx
call fcn.008d54f5
add esp, 0x10
lea edx, [ebp - 0x1014]
push edx
lea eax, [ebp - 0x111c]
push eax
lea ecx, [ebp - 0x151c]
push ecx
lea edx, [ebp - 0x1008]
push edx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf70f
cmp dword [ebp - 0x1014], 0
jbe 0x8cf6f7
mov eax, dword [ebp - 0x1014]
push eax
mov ecx, dword [ebp - 0x111c]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0x200
push edx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf70d
push 0x958874
mov eax, dword [ebp + 0xc]
add eax, 0x200
push eax
call fcn.008d5d80
add esp, 8
jmp 0x8cf726
push 0x958878
mov ecx, dword [ebp + 0xc]
add ecx, 0x200
push ecx
call fcn.008d5d80
add esp, 8
push 0x942920
lea ecx, [ebp - 0x1d1c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea edx, [ebp - 0x171c]
push edx
push 0x942930
lea eax, [ebp - 0x151c]
push eax
call fcn.008d54f5
add esp, 0x10
lea ecx, [ebp - 0x1014]
push ecx
lea edx, [ebp - 0x111c]
push edx
lea eax, [ebp - 0x151c]
push eax
lea ecx, [ebp - 0x1008]
push ecx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf7c2
cmp dword [ebp - 0x1014], 0
jbe 0x8cf7a9
mov edx, dword [ebp - 0x1014]
push edx
mov eax, dword [ebp - 0x111c]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x300
push ecx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf7c0
push 0x95887c
mov edx, dword [ebp + 0xc]
add edx, 0x300
push edx
call fcn.008d5d80
add esp, 8
jmp 0x8cf7d8
push 0x958880
mov eax, dword [ebp + 0xc]
add eax, 0x300
push eax
call fcn.008d5d80
add esp, 8
push 0x942938
lea ecx, [ebp - 0x1e1c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea ecx, [ebp - 0x171c]
push ecx
push 0x94294c
lea edx, [ebp - 0x151c]
push edx
call fcn.008d54f5
add esp, 0x10
lea eax, [ebp - 0x1014]
push eax
lea ecx, [ebp - 0x111c]
push ecx
lea edx, [ebp - 0x151c]
push edx
lea eax, [ebp - 0x1008]
push eax
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf873
cmp dword [ebp - 0x1014], 0
jbe 0x8cf85a
mov ecx, dword [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x111c]
push edx
mov eax, dword [ebp + 0xc]
add eax, 0x400
push eax
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf871
push 0x958884
mov ecx, dword [ebp + 0xc]
add ecx, 0x400
push ecx
call fcn.008d5d80
add esp, 8
jmp 0x8cf88a
push 0x958888
mov edx, dword [ebp + 0xc]
add edx, 0x400
push edx
call fcn.008d5d80
add esp, 8
push 0x942954
lea ecx, [ebp - 0x1f1c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea eax, [ebp - 0x171c]
push eax
push 0x942968
lea ecx, [ebp - 0x151c]
push ecx
call fcn.008d54f5
add esp, 0x10
lea edx, [ebp - 0x1014]
push edx
lea eax, [ebp - 0x111c]
push eax
lea ecx, [ebp - 0x151c]
push ecx
lea edx, [ebp - 0x1008]
push edx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf925
cmp dword [ebp - 0x1014], 0
jbe 0x8cf90d
mov eax, dword [ebp - 0x1014]
push eax
mov ecx, dword [ebp - 0x111c]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0x500
push edx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf923
push 0x95888c
mov eax, dword [ebp + 0xc]
add eax, 0x500
push eax
call fcn.008d5d80
add esp, 8
jmp 0x8cf93c
push 0x958890
mov ecx, dword [ebp + 0xc]
add ecx, 0x500
push ecx
call fcn.008d5d80
add esp, 8
push 0x942970
lea ecx, [ebp - 0x201c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea edx, [ebp - 0x171c]
push edx
push 0x942984
lea eax, [ebp - 0x151c]
push eax
call fcn.008d54f5
add esp, 0x10
lea ecx, [ebp - 0x1014]
push ecx
lea edx, [ebp - 0x111c]
push edx
lea eax, [ebp - 0x151c]
push eax
lea ecx, [ebp - 0x1008]
push ecx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cf9d8
cmp dword [ebp - 0x1014], 0
jbe 0x8cf9bf
mov edx, dword [ebp - 0x1014]
push edx
mov eax, dword [ebp - 0x111c]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x600
push ecx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cf9d6
push 0x958894
mov edx, dword [ebp + 0xc]
add edx, 0x600
push edx
call fcn.008d5d80
add esp, 8
jmp 0x8cf9ee
push 0x958898
mov eax, dword [ebp + 0xc]
add eax, 0x600
push eax
call fcn.008d5d80
add esp, 8
push 0x94298c
lea ecx, [ebp - 0x211c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea ecx, [ebp - 0x171c]
push ecx
push 0x9429a4
lea edx, [ebp - 0x151c]
push edx
call fcn.008d54f5
add esp, 0x10
lea eax, [ebp - 0x1014]
push eax
lea ecx, [ebp - 0x111c]
push ecx
lea edx, [ebp - 0x151c]
push edx
lea eax, [ebp - 0x1008]
push eax
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cfa89
cmp dword [ebp - 0x1014], 0
jbe 0x8cfa70
mov ecx, dword [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x111c]
push edx
mov eax, dword [ebp + 0xc]
add eax, 0x700
push eax
call fcn.008d51c0
add esp, 0xc
jmp 0x8cfa87
push 0x95889c
mov ecx, dword [ebp + 0xc]
add ecx, 0x700
push ecx
call fcn.008d5d80
add esp, 8
jmp 0x8cfaa0
push 0x9588a0
mov edx, dword [ebp + 0xc]
add edx, 0x700
push edx
call fcn.008d5d80
add esp, 8
push 0x9429ac
lea ecx, [ebp - 0x221c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea eax, [ebp - 0x171c]
push eax
push 0x9429c0
lea ecx, [ebp - 0x151c]
push ecx
call fcn.008d54f5
add esp, 0x10
lea edx, [ebp - 0x1014]
push edx
lea eax, [ebp - 0x111c]
push eax
lea ecx, [ebp - 0x151c]
push ecx
lea edx, [ebp - 0x1008]
push edx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cfb3b
cmp dword [ebp - 0x1014], 0
jbe 0x8cfb23
mov eax, dword [ebp - 0x1014]
push eax
mov ecx, dword [ebp - 0x111c]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0x800
push edx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cfb39
push 0x9588a4
mov eax, dword [ebp + 0xc]
add eax, 0x800
push eax
call fcn.008d5d80
add esp, 8
jmp 0x8cfb52
push 0x9588a8
mov ecx, dword [ebp + 0xc]
add ecx, 0x800
push ecx
call fcn.008d5d80
add esp, 8
push 0x9429c8
lea ecx, [ebp - 0x231c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea edx, [ebp - 0x171c]
push edx
push 0x9429d8
lea eax, [ebp - 0x151c]
push eax
call fcn.008d54f5
add esp, 0x10
lea ecx, [ebp - 0x1014]
push ecx
lea edx, [ebp - 0x111c]
push edx
lea eax, [ebp - 0x151c]
push eax
lea ecx, [ebp - 0x1008]
push ecx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cfbee
cmp dword [ebp - 0x1014], 0
jbe 0x8cfbd5
mov edx, dword [ebp - 0x1014]
push edx
mov eax, dword [ebp - 0x111c]
push eax
mov ecx, dword [ebp + 0xc]
add ecx, 0x900
push ecx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cfbec
push 0x9588ac
mov edx, dword [ebp + 0xc]
add edx, 0x900
push edx
call fcn.008d5d80
add esp, 8
jmp 0x8cfc04
push 0x9588b0
mov eax, dword [ebp + 0xc]
add eax, 0x900
push eax
call fcn.008d5d80
add esp, 8
push 0x9429e0
lea ecx, [ebp - 0x241c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea ecx, [ebp - 0x171c]
push ecx
push 0x9429f4
lea edx, [ebp - 0x151c]
push edx
call fcn.008d54f5
add esp, 0x10
lea eax, [ebp - 0x1014]
push eax
lea ecx, [ebp - 0x111c]
push ecx
lea edx, [ebp - 0x151c]
push edx
lea eax, [ebp - 0x1008]
push eax
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cfc9f
cmp dword [ebp - 0x1014], 0
jbe 0x8cfc86
mov ecx, dword [ebp - 0x1014]
push ecx
mov edx, dword [ebp - 0x111c]
push edx
mov eax, dword [ebp + 0xc]
add eax, 0xa00
push eax
call fcn.008d51c0
add esp, 0xc
jmp 0x8cfc9d
push 0x9588b4
mov ecx, dword [ebp + 0xc]
add ecx, 0xa00
push ecx
call fcn.008d5d80
add esp, 8
jmp 0x8cfcb6
push 0x9588b8
mov edx, dword [ebp + 0xc]
add edx, 0xa00
push edx
call fcn.008d5d80
add esp, 8
push 0x9429fc
lea ecx, [ebp - 0x251c]
call fcn.008cfd80
mov ecx, eax
call fcn.008cfe30
push eax
lea eax, [ebp - 0x171c]
push eax
push 0x942a10
lea ecx, [ebp - 0x151c]
push ecx
call fcn.008d54f5
add esp, 0x10
lea edx, [ebp - 0x1014]
push edx
lea eax, [ebp - 0x111c]
push eax
lea ecx, [ebp - 0x151c]
push ecx
lea edx, [ebp - 0x1008]
push edx
call sub.version.dll_VerQueryValueA
test eax, eax
je 0x8cfd51
cmp dword [ebp - 0x1014], 0
jbe 0x8cfd39
mov eax, dword [ebp - 0x1014]
push eax
mov ecx, dword [ebp - 0x111c]
push ecx
mov edx, dword [ebp + 0xc]
add edx, 0xb00
push edx
call fcn.008d51c0
add esp, 0xc
jmp 0x8cfd4f
push 0x9588bc
mov eax, dword [ebp + 0xc]
add eax, 0xb00
push eax
call fcn.008d5d80
add esp, 8
jmp 0x8cfd68
push 0x9588c0
mov ecx, dword [ebp + 0xc]
add ecx, 0xb00
push ecx
call fcn.008d5d80
add esp, 8
mov eax, 1
jmp 0x8cfd71
xor eax, eax
mov esp, ebp
pop ebp
ret 8