Function at 0x402fa0
Capabilities:
Get file version info

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x20c
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push 0x138b
push 0x3ff00000
push 0
push str.password
push ebx
mov dword [esp + 0x20], 0
mov dword [esp + 0x28], 0x96
call fcn.0041d8e0
push 0x1389
push 0
push 0
push 0x4425f0
push ebx
call fcn.0041d8e0
push 0x1389
push 0
push 0
push str.accw
push ebx
call fcn.0041d8e0
push 0x1389
push 0x40080000
push 0
push str.rmini
push ebx
call fcn.0041d8e0
add esp, 0x50
push 0x1389
push 0x404e0000
push 0
push str.rhuge
push ebx
call fcn.0041d8e0
push 0x1389
push 0x3fe00000
push 0
push str.smini
push ebx
call fcn.0041d8e0
push 0x1389
push 0x40000000
push 0
push str.shuge
push ebx
call fcn.0041d8e0
push 0x1389
push 0x3fb99999
push 0x9999999a
push str.ilen
push ebx
call fcn.0041d8e0
add esp, 0x50
push 0x138b
push 0
push 0
push str.arcdivide
push ebx
call fcn.0041d8e0
push 0x138b
push 0x3ff00000
push 0
push str.lenrepair
push ebx
call fcn.0041d8e0
push 0x138b
push 0
push 0
push str.ulen
push ebx
call fcn.0041d8e0
push 0
push str.baselen
push ebx
call fcn.00433380
add esp, 0x48
push 0
push str.basearc
push ebx
call fcn.00433380
push 0x1389
push 0x3fc99999
push 0x9999999a
push str.baselen
push ebx
call fcn.0041d8e0
push 0x138b
push 0
push 0
push str.commentout
push ebx
call fcn.0041d8e0
push 0x1389
push 0x3ff00000
push 0
push str.feed
push ebx
call fcn.0041d8e0
add esp, 0x48
push 0x1389
push 0x40000000
push 0
push str.arcbackside
push ebx
call fcn.0041d8e0
push 0x138b
push 0x404e0000
push 0
push str.arcbackang
push ebx
call fcn.0041d8e0
push 0x1389
push 0x3ff00000
push 0
push str.curve1
push ebx
call fcn.0041d8e0
push 0x1389
push 0x3ff00000
push 0
push str.curve2
push ebx
call fcn.0041d8e0
add esp, 0x50
push 0x1389
push 0x404e0000
push 0
push str.preserveang
push ebx
call fcn.0041d8e0
push 0x138b
push 0x40440000
push 0
push str.buttang
push ebx
call fcn.0041d8e0
push 0x138b
push 0x3ff00000
push 0
push str.def_out
push ebx
call fcn.0041d8e0
push 0x138b
push 0x3ff00000
push 0
push str.fnsameaspn
push ebx
call fcn.0041d8e0
add esp, 0x50
push 0x138b
push 0
push 0
push str.prebend
push ebx
call fcn.0041d8e0
push 0x442544
push str.arcpolicy
push ebx
call fcn.00433120
push str.Arc_Step
push str.text1
push ebx
call fcn.00433120
push 0x138b
push 0x3ff00000
push 0
push str.brginfo
push ebx
call fcn.0041d8e0
add esp, 0x40
push 0x138b
push 0x404e0000
push 0
push str.markang
push ebx
call fcn.0041d8e0
push 0x1389
push 0x40080000
push 0
push str.brgw1
push ebx
call fcn.0041d8e0
push 0x1389
push 0x40140000
push 0
push str.brgw2
push ebx
call fcn.0041d8e0
push 0x138b
push 0x3ff00000
push 0
push str.xdata
push ebx
call fcn.0041d8e0
add esp, 0x50
push 0x138b
push 0x3ff00000
push 0
push str.dist
push ebx
call fcn.0041d8e0
push 0x138b
push 0x3ff00000
push 0
push str.join
push ebx
call fcn.0041d8e0
push str.C:Program_Files_
push 0x104
lea eax, [esp + 0x48]
push 1
push eax
push str.Path
push str.SoftwareVB_and_VBA_Program_SettingsAutoBenderOptions
push 0x80000001
call fcn.0041eda0
mov cl, byte [0x449548]
add esp, 0x44
lea edx, [esp + 0x18]
mov byte [esp + 0x118], cl
push 0
push edx
call fcn.0043487c
add esp, 8
test eax, eax
je 0x40330b
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0xc]
lea ecx, [esp + 0x18]
push eax
push ecx
call sub.VERSION.dll_GetFileVersionInfoSizeA
mov edi, eax
push edi
call fcn.00434808
mov edx, dword [esp + 0x10]
add esp, 4
mov esi, eax
lea eax, [esp + 0x18]
push esi
push edi
push edx
push eax
call sub.VERSION.dll_GetFileVersionInfoA
test eax, eax
jne 0x403343
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [esp + 0x14]
lea edx, [esp + 0x10]
push ecx
push edx
push str.StringFileInfo080404b0FileDescription
push esi
call sub.VERSION.dll_VerQueryValueA
push esi
mov edi, eax
call fcn.004347d9
add esp, 4
test edi, edi
jne 0x403375
mov al, byte [0x449548]
mov byte [esp + 0x118], al
jmp 0x40339d
mov edi, dword [esp + 0x10]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x118]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x442658
lea esi, [esp + 0x118]
mov cl, byte [esi]
mov dl, byte [edi]
mov al, cl
cmp cl, dl
jne 0x4033d1
test al, al
je 0x4033cd
mov dl, byte [esi + 1]
mov cl, byte [edi + 1]
mov al, dl
cmp dl, cl
jne 0x4033d1
add esi, 2
add edi, 2
test al, al
jne 0x4033a9
xor eax, eax
jmp 0x4033d6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
push 0x138b
jne 0x403407
push 0
push 0
push str.macro
push ebx
call fcn.0041d8e0
add esp, 0x14
mov dword [0x44c5cc], 0
mov eax, 0x13ec
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x3ff00000
push 0
push str.macro
push ebx
call fcn.0041d8e0
add esp, 0x14
mov dword [0x44c5cc], 1
mov eax, 0x13ec
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret