Function at 0x4270ae
Capabilities:
Get file version info

Disassembly:
push 0xa4
mov eax, 0x441177
call fcn.0042fc4d
mov esi, dword [ebp + 8]
mov eax, dword [ebp + 0xc]
xor ecx, ecx
mov dword [ebp - 0xa4], ecx
mov dword [esi + 0x24], 0xf
mov dword [esi + 0x20], ecx
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0x94], eax
mov byte [esi + 0x10], cl
mov dword [ebp - 4], ecx
lea ecx, [ebp - 0xb0]
push ecx
push eax
mov dword [ebp - 0xa4], 1
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov edi, eax
test edi, edi
jne 0x42712f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x9c]
call fcn.0040e7a2
mov eax, dword [eax]
mov dword [ebp - 0x94], eax
push 0x4421bc
lea eax, [ebp - 0x94]
push eax
call fcn.0042fb98
push edi
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0x9c], eax
test eax, eax
jne 0x427162
lea ecx, [ebp - 0x95]
call fcn.0040e77c
mov al, byte [eax]
mov byte [ebp - 0x8d], al
push 0x442184
lea eax, [ebp - 0x8d]
jmp 0x427129
push eax
push edi
push 0
push dword [ebp - 0x94]
call sub.VERSION.dll_GetFileVersionInfoA
mov edi, dword [ebp - 0x9c]
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0xa0]
push eax
push 0x40784c
push edi
call sub.VERSION.dll_VerQueryValueA
mov ecx, dword [ebp - 0xa0]
movzx eax, word [ecx + 0xa]
and dword [ebp - 0x60], 0
mov dword [esi], eax
movzx eax, word [ecx + 8]
mov dword [esi + 4], eax
movzx eax, word [ecx + 0xe]
mov dword [esi + 8], eax
movzx eax, word [ecx + 0xc]
mov dword [esi + 0xc], eax
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
push dword [esi]
lea eax, [ebp - 0x1c]
push 0x401740
push 0xffffffffffffffff
push eax
mov dword [ebp - 4], 1
call fcn.0040e816
lea ecx, [ebp - 0x1c]
add esp, 0x10
and dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4271f1
sub ecx, edx
push ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x38]
call fcn.0040d373
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x38]
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 2
call fcn.00426d9b
push 0
push 1
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call fcn.0040d603
push dword [esi + 4]
lea eax, [ebp - 0x1c]
push 0x401740
push 0xffffffffffffffff
push eax
call fcn.0040e816
lea ecx, [ebp - 0x1c]
add esp, 0x10
and dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x427256
sub ecx, edx
push ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x54]
call fcn.0040d373
and dword [ebp - 0x28], 0
push 1
push 0x408e90
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 3
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
call fcn.0040d373
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x8c]
push eax
mov byte [ebp - 4], 4
call fcn.00427a83
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 5
call fcn.00426d9b
push 0
push 1
lea ecx, [ebp - 0x8c]
call fcn.0040d603
push 0
push 1
lea ecx, [ebp - 0x38]
call fcn.0040d603
push 0
push 1
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 1
call fcn.0040d603
push dword [esi + 8]
lea eax, [ebp - 0x1c]
push 0x401740
push 0xffffffffffffffff
push eax
call fcn.0040e816
lea ecx, [ebp - 0x1c]
add esp, 0x10
and dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42730d
sub ecx, edx
push ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x38]
call fcn.0040d373
and dword [ebp - 0x44], 0
push 1
push 0x408e90
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 6
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
call fcn.0040d373
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x8c]
push eax
mov byte [ebp - 4], 7
call fcn.00427a83
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 8
call fcn.00426d9b
push 0
push 1
lea ecx, [ebp - 0x8c]
call fcn.0040d603
push 0
push 1
lea ecx, [ebp - 0x54]
call fcn.0040d603
push 0
push 1
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call fcn.0040d603
push dword [esi + 0xc]
lea eax, [ebp - 0x1c]
push 0x401740
push 0xffffffffffffffff
push eax
call fcn.0040e816
lea ecx, [ebp - 0x1c]
add esp, 0x10
and dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0xf
mov byte [ebp - 0x38], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4273c4
sub ecx, edx
push ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x38]
call fcn.0040d373
and dword [ebp - 0x44], 0
push 1
push 0x408e90
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 9
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
call fcn.0040d373
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x8c]
push eax
mov byte [ebp - 4], 0xa
call fcn.00427a83
push 0xffffffffffffffff
push 0
push eax
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 0xb
call fcn.00426d9b
push 0
push 1
lea ecx, [ebp - 0x8c]
call fcn.0040d603
push 0
push 1
lea ecx, [ebp - 0x54]
call fcn.0040d603
push 0
push 1
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 1
call fcn.0040d603
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x70]
push eax
lea ecx, [esi + 0x10]
call fcn.0040d2e2
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push 0
push 1
lea ecx, [ebp - 0x70]
call fcn.0040d603
mov eax, esi
call fcn.0042fcd0
ret 8