Function at 0x413530
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
sub esp, 0xc48
push ecx
push edi
lea edi, [esp + 8]
mov eax, 0xcccccccc
mov ecx, 0x312
rep stosd dword es:[edi], eax
pop edi
pop ecx
mov esi, dword [ebp + 8]
cmp dword [0x64b51c], 0
jne 0x4136d5
call fcn.0056d3b0
cmp al, 0
je 0x413623
push 0x400
lea eax, [ebp - 0x808]
push eax
push dword [0x5ddae0]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea eax, [ebp - 0x80c]
push eax
lea eax, [ebp - 0x808]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov dword [ebp - 0xc48], eax
mov eax, dword [ebp - 0xc48]
push eax
call fcn.0058bbb0
pop ecx
mov dword [0x64b51c], eax
push dword [0x64b51c]
push dword [ebp - 0xc48]
push 0
lea eax, [ebp - 0x808]
push eax
call sub.VERSION.dll_GetFileVersionInfoW
cmp eax, 0
jne 0x41361e
push dword [0x64b51c]
call fcn.0058bbc0
pop ecx
mov dword [0x64b51c], 0
mov dword [esi], 0
push 0x59fa06
call fcn.0040d340
pop ecx
push eax
push 0x59fa06
mov ecx, esi
call fcn.00589f70
cmp dword [esi], 0
je 0x413612
mov ebx, dword [esi]
mov edx, dword [0x63df30]
mov dword [ebx + 0x10], edx
mov edx, esi
mov eax, dword [ebp + 8]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
jmp 0x4136d5
push 0x400
lea eax, [ebp - 0xc0c]
push eax
push dword [0x5ddae0]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0xc10]
push eax
lea eax, [ebp - 0xc0c]
push eax
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov dword [ebp - 0xc4c], eax
mov eax, dword [ebp - 0xc4c]
push eax
call fcn.0058bbb0
pop ecx
mov dword [0x64b51c], eax
push dword [0x64b51c]
push dword [ebp - 0xc4c]
push 0
lea eax, [ebp - 0xc0c]
push eax
call sub.VERSION.dll_GetFileVersionInfoA
cmp eax, 0
jne 0x4136d5
push dword [0x64b51c]
call fcn.0058bbc0
pop ecx
mov dword [0x64b51c], 0
mov dword [esi], 0
push 0x59fa06
call fcn.0040d340
pop ecx
push eax
push 0x59fa06
mov ecx, esi
call fcn.00589f70
cmp dword [esi], 0
je 0x4136c9
mov ebx, dword [esi]
mov edx, dword [0x63df30]
mov dword [ebx + 0x10], edx
mov edx, esi
mov eax, dword [ebp + 8]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret
mov dword [ebp - 0xc14], 0
call fcn.0056d3b0
cmp al, 0
je 0x413891
mov dword [ebp - 0xc50], str.StringFileInfo040904B0_
mov dword [ebp - 0xc20], 0
push dword [ebp - 0xc50]
call fcn.0058d600
pop ecx
push eax
push dword [ebp - 0xc50]
lea ecx, [ebp - 0xc20]
call fcn.0058a000
lea eax, [ebp - 0xc24]
push eax
mov ecx, dword [ebp + 0xc]
call fcn.0058a430
lea eax, [ebp - 0xc24]
push eax
lea eax, [ebp - 0xc20]
push eax
lea eax, [ebp - 0xc28]
push eax
call fcn.0058b180
add esp, 0xc
mov byte [ebp - 0xc41], 0
mov dword [ebp - 0xc2c], 0
push 1
lea eax, [ebp - 0xc41]
push eax
lea ecx, [ebp - 0xc2c]
call fcn.00589f70
cmp dword [ebp - 0xc2c], 0
je 0x413787
mov ebx, dword [ebp - 0xc2c]
mov edx, dword [0x63df30]
mov dword [ebx + 0x10], edx
lea eax, [ebp - 0xc30]
push eax
lea ecx, [ebp - 0xc2c]
call fcn.0058a430
lea eax, [ebp - 0xc30]
push eax
lea eax, [ebp - 0xc28]
push eax
lea eax, [ebp - 0xc34]
push eax
call fcn.0058b180
add esp, 0xc
lea eax, [ebp - 0xc34]
push eax
lea ecx, [ebp - 0xc20]
call fcn.0058a7b0
cmp dword [ebp - 0xc34], 0
je 0x4137dc
mov ecx, dword [ebp - 0xc34]
call fcn.00589d70
cmp dword [ebp - 0xc30], 0
je 0x4137f0
mov ecx, dword [ebp - 0xc30]
call fcn.00589d70
cmp dword [ebp - 0xc2c], 0
je 0x413804
mov ecx, dword [ebp - 0xc2c]
call fcn.00589d70
cmp dword [ebp - 0xc28], 0
je 0x413818
mov ecx, dword [ebp - 0xc28]
call fcn.00589d70
cmp dword [ebp - 0xc24], 0
je 0x41382c
mov ecx, dword [ebp - 0xc24]
call fcn.00589d70
lea eax, [ebp - 0xc18]
push eax
lea eax, [ebp - 0xc1c]
push eax
lea ecx, [ebp - 0xc20]
call fcn.0058a750
push eax
push dword [0x64b51c]
call sub.VERSION.dll_VerQueryValueW
cmp eax, 0
je 0x413874
push dword [ebp - 0xc1c]
call fcn.0058d600
pop ecx
push eax
push dword [ebp - 0xc1c]
lea ecx, [ebp - 0xc14]
call fcn.0058a000
cmp dword [ebp - 0xc20], 0
je 0x4139a3
mov ecx, dword [ebp - 0xc20]
call fcn.00589d70
jmp 0x4139a3
mov dword [ebp - 0xc38], 0
push 0x59fa07
call fcn.0040d340
pop ecx
push eax
push 0x59fa07
lea ecx, [ebp - 0xc38]
call fcn.00589f70
cmp dword [ebp - 0xc38], 0
je 0x4138cf
mov ebx, dword [ebp - 0xc38]
mov edx, dword [0x63df30]
mov dword [ebx + 0x10], edx
push dword [ebp + 0xc]
lea eax, [ebp - 0xc38]
push eax
lea eax, [ebp - 0xc3c]
push eax
call fcn.0058b180
add esp, 0xc
lea eax, [ebp - 0xc18]
push eax
lea eax, [ebp - 0xc1c]
push eax
lea ecx, [ebp - 0xc3c]
call fcn.0058a690
push eax
push dword [0x64b51c]
call sub.VERSION.dll_VerQueryValueA
mov ebx, eax
cmp dword [ebp - 0xc3c], 0
je 0x413923
mov ecx, dword [ebp - 0xc3c]
call fcn.00589d70
cmp dword [ebp - 0xc38], 0
je 0x413937
mov ecx, dword [ebp - 0xc38]
call fcn.00589d70
cmp ebx, 0
je 0x4139a3
mov ebx, dword [ebp - 0xc1c]
mov dword [ebp - 0xc40], 0
cmp ebx, 0
je 0x41397d
push ebx
call fcn.0040d340
pop ecx
push eax
push ebx
lea ecx, [ebp - 0xc40]
call fcn.00589f70
cmp dword [ebp - 0xc40], 0
je 0x41397d
mov ebx, dword [ebp - 0xc40]
mov edx, dword [0x63df30]
mov dword [ebx + 0x10], edx
lea eax, [ebp - 0xc40]
push eax
lea ecx, [ebp - 0xc14]
call fcn.0058a7b0
cmp dword [ebp - 0xc40], 0
je 0x4139a3
mov ecx, dword [ebp - 0xc40]
call fcn.00589d70
push esi
lea ecx, [ebp - 0xc14]
call fcn.0058a3a0
cmp dword [ebp - 0xc14], 0
je 0x4139c3
mov ecx, dword [ebp - 0xc14]
call fcn.00589d70
mov eax, dword [ebp + 8]
lea esp, [ebp - 8]
pop esi
pop ebx
pop ebp
ret