Function at 0x411f10
Capabilities:
Get file version info

Disassembly:
sub esp, 0x18
push ebx
xor eax, eax
push ebp
mov dword [esp + 0x10], eax
mov dword [esp + 8], eax
mov eax, dword [0x45ecd4]
push esi
mov esi, dword [0x45eccc]
cdq
push edi
mov edi, eax
push 1
mov ebx, edx
mov eax, esi
cdq
push 0xeae0c6d3
push ebx
mov ebp, eax
push edi
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], edx
call fcn.004319f0
mov ecx, dword [esp + 0x24]
push 1
push 0x86050f76
push ecx
push ebp
mov dword [esp + 0x24], eax
call fcn.004319f0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x24]
push 2
push 0xb57eb16
sub ecx, eax
push edx
mov eax, ebp
push eax
mov dword [esp + 0x24], ecx
call fcn.004319f0
mov ecx, dword [esp + 0x14]
push 2
push 0xb57eb16
push ebx
add ecx, eax
push edi
mov dword [esp + 0x24], ecx
call fcn.004319f0
imul esi, esi, 0x140cef57
mov ecx, dword [esp + 0x14]
mov edx, dword [0x45ece8]
mov ebp, dword [esp + 0x2c]
imul edx, edx, 0x6b66a94
sub ecx, eax
mov eax, dword [0x45ecdc]
imul eax, eax, 0x5295f78d
sub ecx, esi
add ecx, edx
add ecx, eax
mov dword [str._r_____r____], ecx
lea ecx, [esp + 0x18]
push ecx
push ebp
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov esi, eax
test esi, esi
je 0x412235
mov eax, dword [0x45ecd4]
cdq
push 1
push 0xeae0c6d3
mov ebx, edx
mov edi, eax
push ebx
push edi
call fcn.004319f0
push 1
push 0x5295f78d
push ebx
push edi
mov dword [esp + 0x24], eax
call fcn.004319f0
mov ecx, dword [esp + 0x14]
add ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, dword [0x45eccc]
mov eax, 0x2a215c6f
mul ecx
mov eax, dword [esp + 0x14]
sub ecx, edx
shr ecx, 1
add ecx, edx
mov edx, dword [0x45ece0]
mov ebx, dword [str._r_____r____]
imul edx, edx, 0x140cef57
shr ecx, 0x1f
add eax, ecx
mov ecx, dword [0x45ece8]
sub eax, edx
imul ecx, ecx, 0x6b66a94
mov edx, dword [0x45ece4]
imul edx, edx, 0x6181b446
sub eax, ecx
add eax, edx
sub eax, ebx
sub eax, 0x4f64023c
push esi
mov dword [0x45eccc], eax
call fcn.00443584
add esp, 4
mov ebx, eax
push ebx
push esi
xor edi, edi
push edi
push ebp
mov dword [esp + 0x30], ebx
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
je 0x41222c
mov esi, dword [0x45ecdc]
push 1
mov eax, esi
cdq
push 0xeae0c6d3
push edx
push eax
call fcn.004319f0
mov ecx, dword [str._r_____r____]
mov ebp, eax
mov eax, dword [0x45ecd8]
add eax, ecx
imul ecx, ecx, 0x151f392d
imul eax, eax, 0x5295f78d
add ebp, eax
mov eax, 0x2a215c6f
mul esi
mov eax, esi
imul esi, esi, 0x140cef57
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1f
sub ebp, eax
sub ebp, esi
sub ebp, ecx
mov ecx, dword [0x45ece0]
lea edx, [ecx + ebp - 0x6181b446]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x18]
push ecx
push 0x44f2b8
push ebx
mov dword [0x45ecd4], edx
mov dword [esp + 0x24], edi
mov dword [esp + 0x2c], edi
call sub.VERSION.dll_VerQueryValueA
test eax, eax
je 0x4121a7
mov eax, dword [0x45ecd8]
cdq
mov ebx, eax
mov eax, dword [0x45ece4]
push 0xfffffffffffffffd
mov ebp, edx
cdq
push 0xf4a814ea
push edx
push eax
call fcn.004319f0
mov edx, dword [0x45ecd4]
mov edi, dword [str._r_____r____]
mov esi, eax
mov eax, dword [0x45ecc8]
add eax, edx
imul eax, eax, 0x242d3a05
sub esi, eax
push 1
mov eax, edi
cdq
push 0xb09bfdc4
push edx
push eax
call fcn.004319f0
push 1
push 0xeae0c6d3
push ebp
push ebx
add esi, eax
call fcn.004319f0
push 1
push 0x86050f76
push ebp
push ebx
sub esi, eax
call fcn.004319f0
imul edi, edi, 0x151f392d
mov ecx, dword [esp + 0x14]
mov ebx, dword [esp + 0x20]
sub esi, eax
sub esi, edi
mov dword [0x45ece4], esi
mov dx, word [ecx + 0x14]
mov word [esp + 0x10], dx
jmp 0x4121ad
mov esi, dword [0x45ece4]
mov ebp, dword [0x45eccc]
mov eax, esi
cdq
mov esi, eax
push 0xfffffffffffffffe
mov edi, edx
mov eax, ebp
cdq
push 0xad6a0873
push edx
push eax
call fcn.004319f0
mov ecx, dword [0x45ecd0]
add ecx, ebp
imul ecx, ecx, 0x79faf08a
push 1
push 0xeae0c6d3
push edi
sub eax, ecx
push esi
mov dword [esp + 0x30], eax
call fcn.004319f0
mov ecx, dword [esp + 0x20]
push 2
push 0xb57eb16
push edi
add ecx, eax
push esi
mov dword [esp + 0x30], ecx
call fcn.004319f0
mov ecx, dword [esp + 0x20]
mov edx, dword [0x45ece0]
add ecx, eax
imul edx, edx, 0x2c857103
mov eax, dword [0x45ecdc]
imul eax, eax, 0x6181b446
sub ecx, edx
add ecx, eax
mov dword [0x45ecdc], ecx
push ebx
call fcn.00443589
add esp, 4
mov ax, word [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret