Function at 0x46201c
Capabilities:
Get file version info

Disassembly:
pop es
adc eax, dword [ebp + 0x49]
arpl word [ebx + 0x53], si
jae 0x461fe5
popal
jns 0x461fc2
js 0x461fe2
jo 0x461ff6
imul ebp, dword [edi + 0x6e], sym.mjrwmon.exe__Icsssleay_EIcsSsleayException_
inc esi
dec ebp
add byte [eax], al
add byte [ecx], cl
dec ecx
arpl word [ebx + 0x53], si
push ebx
dec esp
inc ebp
inc ecx
pop ecx
add byte [eax], al
nop
je 0x462039
and byte gs:[esi + 0x31], dl
xor byte cs:[eax], dh
and byte [eax], al
add byte [eax], al
sbb al, 0x20
inc esi
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
sbb al, 0x20
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], bl
inc esi
add byte [eax + eax], cl
add byte [eax], al
mov al, byte [0x98004d4f]
fmul dword [ebp]
movsb byte es:[edi], byte [esi]
fmul dword [ebp]
test al, 0xd8
dec ebp
add byte [eax + ebx*8 - 0x275fffb3], ch
dec ebp
add byte [eax], cl
salc
dec ebp
add byte [esi + edx*8], bl
dec ebp
add byte [esi + edx*8 + 0x4d], ah
add byte [ebx], dl
adc eax, dword [ebp + 0x49]
arpl word [ebx + 0x53], si
jae 0x462090
popal
jns 0x46206d
js 0x46208d
jo 0x4620a1
imul ebp, dword [edi + 0x6e], 0xffffffff
or al, 0
add byte [eax], al
push ebx
push ebx
dec esp
inc ebp
inc ecx
pop ecx
xor esi, dword [edx]
inc esp
dec esp
dec esp
add byte [eax], al
add byte [eax], al
pop ebp
mov ah, 0x89
pop ebp
mov eax, 0x89bc5d89
pop ebp
aam 0x89
dec ebp
hlt
inc ebp
hlt
sal byte [esp + eax + 0x33], 0xd2
mov dword [eax], edx
xor eax, eax
push ebp
push 0x462294
push dword fs:[eax]
mov dword fs:[eax], esp
xor byte [ecx + ecx*4 + 0x20], ah
mov byte [ebp - 0xd], 0
mov eax, dword [ebp - 8]
call fcn.004de124
mov eax, dword [ebp - 0xc]
call fcn.004de124
lea eax, [ebp - 0x20]
push eax
mov eax, dword [ebp - 4]
call fcn.004de568
push eax
call sub.VERSION.DLL_GetFileVersionInfoSizeA
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x462271
mov eax, dword [ebp - 0x1c]
call fcn.004dcd90
mov dword [ebp - 0x14], eax
xor eax, eax
push ebp
push 0x46226a
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0x14]
push eax
mov eax, dword [ebp - 0x1c]
push eax
push 0
mov eax, dword [ebp - 4]
call fcn.004de568
push eax
call sub.VERSION.DLL_GetFileVersionInfoA
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
jne 0x462122
call fcn.004dde8c
jmp 0x462271
lea eax, [ebp - 0x2c]
mov edx, 0x4622ac
call fcn.004de1bc
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x30]
push eax
push 0x4622b8
mov eax, dword [ebp - 0x14]
push eax
call sub.VERSION.DLL_VerQueryValueA
test eax, eax
je 0x46219e
mov eax, dword [ebp - 0x30]
cmp word [eax], 0
jne 0x46215a
mov eax, dword [ebp - 0x30]
mov word [eax], 0x409
mov eax, dword [ebp - 0x30]
cmp word [eax + 2], 0
jne 0x46216d
mov eax, dword [ebp - 0x30]
mov word [eax + 2], 0x4e4
lea eax, [ebp - 0x2c]
push eax
mov eax, dword [ebp - 0x30]
movzx eax, word [eax]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x3c], 0
mov eax, dword [ebp - 0x30]
movzx eax, word [eax + 2]
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x34], 0
lea edx, [ebp - 0x40]
mov ecx, 1
mov eax, 0x4622dc
call fcn.004d72a4
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x4622f0
push dword [ebp - 0x2c]
push 0x46230c
lea eax, [ebp - 0x44]
mov edx, 3
call fcn.004de464
mov eax, dword [ebp - 0x44]
call fcn.004de568
push eax
mov eax, dword [ebp - 0x14]
push eax
call sub.VERSION.DLL_VerQueryValueA
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x4621fb
lea edx, [ebp - 0x48]
mov eax, dword [ebp - 0x18]
call fcn.004d6d5c
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 8]
call fcn.004de178
mov byte [ebp - 0xd], 1
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x18]
push eax
push 0x4622f0
push dword [ebp - 0x2c]
push 0x462324
lea eax, [ebp - 0x4c]
mov edx, 3
call fcn.004de464
mov eax, dword [ebp - 0x4c]
call fcn.004de568
push eax
mov eax, dword [ebp - 0x14]
push eax
call sub.VERSION.DLL_VerQueryValueA
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x25], al
cmp byte [ebp - 0x25], 0
je 0x462254
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 0x18]
call fcn.004d6d5c
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0xc]
call fcn.004de178
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x462271
mov eax, dword [ebp - 0x14]
call fcn.004dcda8
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x46229b
lea eax, [ebp - 0x50]
mov edx, 4
call fcn.004de148
lea eax, [ebp - 0x2c]
call fcn.004de124
ret