Function at 0x44c511
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x124
push ebx
push esi
push edi
mov edi, ecx
lea esi, [edi + 8]
call fcn.0044d6c9
lea esi, [edi + 0x14]
call fcn.0044d6c9
lea esi, [edi + 0x20]
call fcn.0044d6c9
lea esi, [edi + 0x2c]
call fcn.0044d6c9
lea esi, [edi + 0x38]
call fcn.0044d6c9
lea esi, [edi + 0x44]
call fcn.0044d6c9
lea esi, [edi + 0x50]
call fcn.0044d6c9
lea esi, [edi + 0x5c]
call fcn.0044d6c9
lea esi, [edi + 0x68]
call fcn.0044d6c9
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [ebp - 0x10]
push eax
push 0x20019
push 0
push str..htm
mov ebx, SysReAllocStringLen
push ebx
call esi
mov dword [edi + 4], eax
test eax, eax
jne 0x44c699
and dword [ebp - 0x18], eax
and dword [ebp - 0x14], eax
push 0x46daf8
push dword [ebp - 0x10]
lea eax, [ebp - 0x1c]
call fcn.0044d730
push dword [ebp - 0x10]
mov dword [edi + 4], eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [edi + 4], 0
jne 0x44c691
push str._shellopencommand
lea eax, [ebp - 0x1c]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
cmp dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x1c]
jne 0x44c5db
mov eax, 0x46daf8
lea ecx, [ebp - 0x10]
push ecx
push 0x20019
push 0
push eax
push ebx
call esi
mov dword [edi + 4], eax
test eax, eax
jne 0x44c691
mov esi, 0x46daf8
push esi
push dword [ebp - 0x10]
lea eax, [ebp - 0x1c]
call fcn.0044d730
xor ebx, ebx
mov dword [edi + 4], eax
cmp eax, ebx
jne 0x44c688
cmp dword [ebp - 0x18], ebx
je 0x44c617
mov esi, dword [ebp - 0x1c]
mov cl, byte [esi]
mov eax, esi
cmp cl, 0x22
je 0x44c62d
cmp cl, 0x27
je 0x44c629
mov dl, 0x20
jmp 0x44c639
mov dl, 0x27
jmp 0x44c62f
mov dl, 0x22
lea eax, [esi + 1]
jmp 0x44c639
cmp cl, dl
je 0x44c63f
inc eax
mov cl, byte [eax]
test cl, cl
jne 0x44c634
sub eax, esi
cmp dl, 0x22
je 0x44c64b
cmp dl, 0x27
jne 0x44c64d
dec eax
inc esi
cmp eax, ebx
je 0x44c688
push esi
lea esi, [edi + 8]
push esi
call fcn.0044d7bf
push ebx
lea eax, [ebp - 0x124]
push eax
push ebx
push ebx
mov eax, esi
call fcn.0044d6b3
push eax
call fcn.004393fa
add esp, 0x14
lea eax, [ebp - 0x124]
push eax
lea eax, [edi + 0x14]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea esi, [ebp - 0x1c]
call fcn.0044d6c9
cmp dword [edi + 0xc], 0
jle 0x44c7f9
lea eax, [ebp - 0x20]
push eax
lea eax, [edi + 8]
call fcn.0044d6b3
push eax
call dword [sym.imp.VERSION.dll_GetFileVersionInfoSizeA]
mov esi, eax
test esi, esi
je 0x44c7f9
lea eax, [esi + 1]
push eax
call fcn.0043694d
pop ecx
mov ebx, eax
push ebx
push esi
push dword [ebp - 0x20]
lea eax, [edi + 8]
call fcn.0044d6b3
push eax
call dword [sym.imp.VERSION.dll_GetFileVersionInfoA]
test eax, eax
je 0x44c7f2
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 4]
push eax
push str.VarFileInfoTranslation
push ebx
call dword [sym.imp.VERSION.dll_VerQueryValueA]
test eax, eax
je 0x44c7f2
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push str.CompanyName
call fcn.0044b5f6
push eax
lea eax, [edi + 0x20]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push 0x471d9c
call fcn.0044b5f6
push eax
lea eax, [edi + 0x2c]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push 0x46ebdc
call fcn.0044b5f6
push eax
lea eax, [edi + 0x38]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push str.Language
call fcn.0044b5f6
push eax
lea eax, [edi + 0x44]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push str.OriginalFileName
call fcn.0044b5f6
push eax
lea eax, [edi + 0x50]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push 0x471dcc
call fcn.0044b5f6
push eax
lea eax, [edi + 0x5c]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
mov esi, dword [ebp - 4]
lea eax, [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push ebx
push 0x471dd8
call fcn.0044b5f6
push eax
lea eax, [edi + 0x68]
push eax
or eax, 0xffffffff
call fcn.0044d7bf
push ebx
call fcn.00436909
pop ecx
mov eax, dword [edi + 4]
pop edi
pop esi
pop ebx
leave
ret