Function at 0x42ea7e
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x578
mov eax, dword [0x4a2d54]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push edi
push 0x208
mov dword [ebp - 0x534], eax
lea eax, [ebp - 0x514]
mov edi, ecx
push eax
push dword [edi + 4]
push dword [edi]
call dword [sym.imp.PSAPI.DLL_GetModuleFileNameExW]
test eax, eax
je 0x42edfc
push ebx
push esi
mov eax, 0xfde9
push eax
lea eax, [ebp - 0x514]
push 0xffffffffffffffff
push eax
lea esi, [ebp - 0x530]
call fcn.0040945c
add esp, 0xc
mov ebx, 0x495dac
push ebx
push eax
push 0x49643c
push dword [ebp - 0x534]
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040f273
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push 0
push 1
mov ecx, esi
call fcn.004063f1
push 0xc
lea eax, [ebp - 0x578]
push eax
push dword [edi + 4]
push dword [edi]
call dword [sym.imp.PSAPI.DLL_GetModuleInformation]
test eax, eax
je 0x42eb99
mov eax, dword [ebp - 0x574]
mov ecx, dword [ebp - 0x578]
push 8
mov dword [ebp - 0x550], eax
pop eax
push ebx
push str.___________Image_Size:_______0x
push ebx
push str.___________Image_Base:_______0x
push dword [ebp - 0x534]
mov dword [ebp - 0x54c], eax
mov dword [ebp - 0x548], ecx
mov dword [ebp - 0x544], eax
call fcn.0040fed7
pop ecx
pop ecx
lea esi, [ebp - 0x548]
mov edi, eax
call fcn.0042efe1
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
lea esi, [ebp - 0x550]
mov edi, eax
call fcn.0042efe1
push eax
call fcn.0040fed7
pop ecx
pop ecx
lea eax, [ebp - 0x554]
push eax
lea eax, [ebp - 0x514]
push eax
call dword [sym.imp.VERSION.dll_GetFileVersionInfoSizeW]
mov esi, eax
test esi, esi
je 0x42edfa
lea eax, [esi + 1]
push eax
call fcn.0044bd14
pop ecx
push eax
push esi
push dword [ebp - 0x554]
mov dword [ebp - 0x538], eax
lea eax, [ebp - 0x514]
push eax
call dword [sym.imp.VERSION.dll_GetFileVersionInfoW]
and dword [ebp - 0x540], 0
lea eax, [ebp - 0x53c]
push eax
lea eax, [ebp - 0x540]
push eax
push 0x48ac08
push dword [ebp - 0x538]
call dword [sym.imp.VERSION.dll_VerQueryValueW]
test eax, eax
je 0x42ece2
mov eax, dword [ebp - 0x540]
movzx ecx, word [eax + 0x14]
movzx edx, word [eax + 0x16]
push ebx
push ecx
push 0x2e
pop ecx
push ecx
push edx
movzx edx, word [eax + 0x10]
push ecx
push edx
movzx edx, word [eax + 0x12]
push ecx
push edx
movzx edx, word [eax + 0xc]
push str.___________Product_Version:
push ebx
push edx
movzx edx, word [eax + 0xe]
push ecx
push edx
movzx edx, word [eax + 8]
movzx eax, word [eax + 0xa]
push ecx
push edx
push ecx
push eax
push str.___________File_Version:
push dword [ebp - 0x534]
call fcn.0040fed7
pop ecx
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
mov esi, eax
call fcn.00409533
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
mov esi, eax
call fcn.00409533
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
mov esi, eax
call fcn.00409533
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
mov esi, eax
call fcn.00409533
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
mov esi, eax
call fcn.00409533
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
mov esi, eax
call fcn.00409533
pop ecx
mov esi, eax
call fcn.0042f1ed
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
mov dword [ebp - 0x56c], 0x4964c4
mov dword [ebp - 0x568], 0x4964dc
mov dword [ebp - 0x564], 0x4964fc
mov dword [ebp - 0x560], str.Company:
mov dword [ebp - 0x55c], str.File_Description:
mov dword [ebp - 0x558], str.Product_Name:
xor edi, edi
mov esi, dword [sym.imp.VERSION.dll_VerQueryValueW]
lea eax, [ebp - 0x53c]
push eax
lea eax, [ebp - 0x54c]
push eax
push str.VarFileInfoTranslation
push dword [ebp - 0x538]
call esi
test eax, eax
je 0x42edee
mov eax, dword [ebp - 0x54c]
movzx ecx, word [eax + 2]
push dword [ebp + edi - 0x56c]
movzx eax, word [eax]
push ecx
push eax
lea eax, [ebp - 0x104]
push str.StringFileInfo_04x_04x_s
push eax
call fcn.0042f1d1
add esp, 0x14
lea eax, [ebp - 0x53c]
push eax
lea eax, [ebp - 0x544]
push eax
lea eax, [ebp - 0x104]
push eax
push dword [ebp - 0x538]
call esi
test eax, eax
je 0x42edee
mov eax, 0xfde9
push eax
push 0xffffffffffffffff
push dword [ebp - 0x544]
lea esi, [ebp - 0x530]
call fcn.0040945c
add esp, 0xc
push ebx
push eax
push dword [ebp + edi - 0x560]
push 0x4965bc
push dword [ebp - 0x534]
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push eax
call fcn.0040f273
pop ecx
pop ecx
push eax
call fcn.0040fed7
pop ecx
pop ecx
push 0
push 1
mov ecx, esi
call fcn.004063f1
add edi, 4
cmp edi, 0xc
jb 0x42ed20
pop esi
pop ebx
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x534]
xor ecx, ebp
pop edi
call fcn.0044bf82
leave
ret