Function at 0x4d6460
Capabilities:
Delete registry key
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f580d
mov eax, dword fs:[0]
push eax
sub esp, 0x594
mov eax, dword [0x5392a4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x5a0], ecx
lea ecx, [ebp - 0x434]
call fcn.00419540
mov dword [ebp - 4], 0
cmp dword [0x595b34], 0
je 0x4d64be
push str.SoftwareBabylonBabylon_Translator
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00486170
add esp, 8
mov ecx, dword [ebp - 0x5a0]
call fcn.004d2730
push str.SoftwareMicrosoftWindowsCurrentVersionRun
lea eax, [ebp - 0x574]
push eax
call fcn.0044ac48
add esp, 8
push 2
lea ecx, [ebp - 0x574]
push ecx
push SysReAllocStringLen
lea ecx, [ebp - 0x434]
call fcn.00419460
test eax, eax
jne 0x4d6515
push 0x514744
lea ecx, [ebp - 0x434]
call fcn.0041dc20
lea ecx, [ebp - 0x434]
call fcn.004194d0
push 0
push 0
push 0x2001f
push 0
push 0
lea edx, [ebp - 0x574]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x434]
call fcn.0041d020
test eax, eax
jne 0x4d65e4
push 0
push 0x2c
push 0xc
mov ecx, 0x596118
call fcn.004bb3d0
movzx eax, al
mov dword [ebp - 0x578], eax
cmp dword [ebp - 0x578], 0
je 0x4d657a
push 0
push 0x1a
push 0x10
mov ecx, 0x596118
call fcn.004bb3d0
movzx ecx, al
test ecx, ecx
jne 0x4d65e4
push 0x51476c
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
push str._s_s__AutoStart
lea edx, [ebp - 0x21c]
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
cmp dword [ebp - 0x578], 0
je 0x4d65c0
push str.__NoRun
lea eax, [ebp - 0x21c]
push eax
call fcn.0044ac1a
add esp, 8
push 1
lea ecx, [ebp - 0x21c]
push ecx
push str.Babylon_Client
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
lea ecx, [ebp - 0x434]
call fcn.004194d0
push str.SoftwareMicrosoftWindowsCurrentVersionUninstallBabylon
lea edx, [ebp - 0x574]
push edx
call fcn.0044ac48
add esp, 8
push 0
push 0
push 2
push 0
push 0x514850
lea eax, [ebp - 0x574]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x434]
call fcn.0041d020
test eax, eax
jne 0x4d67ba
push 0x514854
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
push str._sUtils_s
lea ecx, [ebp - 0x21c]
push ecx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea ecx, [ebp - 0x599]
call fcn.0040b800
push eax
lea ecx, [ebp - 0x598]
call fcn.004148f0
mov byte [ebp - 4], 1
lea edx, [ebp - 0x598]
push edx
push 0x26
push 0xc
mov ecx, 0x596118
call fcn.004bb320
test eax, eax
je 0x4d66b2
lea ecx, [ebp - 0x594]
call fcn.00413e50
push eax
push str.__lnk___s_
lea eax, [ebp - 0x21c]
push eax
call fcn.00448da2
add esp, 4
lea ecx, [ebp + eax*2 - 0x21c]
push ecx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
push 1
lea edx, [ebp - 0x21c]
push edx
push str.UninstallString
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
neg eax
sbb eax, eax
add eax, 1
mov dword [ebp - 0x220], eax
je 0x4d6785
push 0x5148c0
lea eax, [ebp - 0x21c]
push eax
call fcn.0044ac48
add esp, 8
push 1
lea ecx, [ebp - 0x21c]
push ecx
push str.DisplayName
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
neg eax
sbb eax, eax
add eax, 1
mov dword [ebp - 0x220], eax
je 0x4d6785
push 1
push 0x5148e8
push str.Publisher
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
push 1
push str.NoModify
lea ecx, [ebp - 0x434]
call fcn.0041dbf0
push 0x514920
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
push 0x514938
lea edx, [ebp - 0x21c]
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push 1
lea eax, [ebp - 0x21c]
push eax
push str.DisplayIcon
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
cmp dword [ebp - 0x220], 0
jne 0x4d67a0
lea ecx, [ebp - 0x574]
push ecx
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
lea ecx, [ebp - 0x434]
call fcn.004194d0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x598]
call fcn.00414a10
push str.SoftwareMicrosoftWindowsCurrentVersionUninstallBabylon_Translator
lea edx, [ebp - 0x574]
push edx
call fcn.0044ac48
add esp, 8
lea eax, [ebp - 0x574]
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
push str.SoftwareMicrosoftWindowsCurrentVersionApp_PathsBabylon.exe
lea ecx, [ebp - 0x574]
push ecx
call fcn.0044ac48
add esp, 8
push 0
push 0
push 2
push 0
push 0x51495c
lea edx, [ebp - 0x574]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x434]
call fcn.0041d020
test eax, eax
jne 0x4d68e8
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0044ac48
add esp, 8
lea ecx, [ebp - 0x21c]
push ecx
call dword [sym.imp.SHLWAPI.dll_PathRemoveBackslashW]
push 1
lea edx, [ebp - 0x21c]
push edx
push str.Path
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
neg eax
sbb eax, eax
add eax, 1
mov dword [ebp - 0x220], eax
je 0x4d68c2
push 0x514a7c
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
push 0x514a94
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push 1
lea ecx, [ebp - 0x21c]
push ecx
push 0x514aa0
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
neg eax
sbb eax, eax
add eax, 1
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0
jne 0x4d68dd
lea edx, [ebp - 0x574]
push edx
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
lea ecx, [ebp - 0x434]
call fcn.004194d0
lea ecx, [ebp - 0x59a]
call fcn.0040b800
push eax
lea ecx, [ebp - 0x454]
call fcn.004148f0
mov byte [ebp - 4], 2
push 1
lea eax, [ebp - 0x454]
push eax
push 0x17
push 0x12
push 2
mov ecx, dword [0x595b9c]
mov edx, dword [ecx]
mov ecx, dword [0x595b9c]
mov eax, dword [edx + 0x30]
call eax
mov ecx, eax
call fcn.00413950
lea ecx, [ebp - 0x450]
call fcn.00413930
movzx ecx, al
test ecx, ecx
jne 0x4d698d
push 0
push 0
push 2
push 0
push 0x514aa4
push 0x514aa8
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0x434]
call fcn.0041d020
test eax, eax
jne 0x4d698d
push 1
lea ecx, [ebp - 0x450]
call fcn.00413e50
push eax
push str.uninsturl
lea ecx, [ebp - 0x434]
call fcn.0041cfc0
lea ecx, [ebp - 0x434]
call fcn.004194d0
push 0x514afc
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
push str._s_s
lea edx, [ebp - 0x42c]
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push 0
lea eax, [ebp - 0x42c]
push eax
push str.Babylon_Glossary
push 0x514b44
push 0x514b58
call fcn.004bb9f0
add esp, 0x14
push 0
lea ecx, [ebp - 0x42c]
push ecx
push str.Babylon_Dictionary
push 0x514b88
push 0x514b9c
call fcn.004bb9f0
add esp, 0x14
push 0
lea edx, [ebp - 0x42c]
push edx
push str.Babylon_Options_File
push 0x514bd0
push 0x514be8
call fcn.004bb9f0
add esp, 0x14
mov ecx, 0x595ce0
call fcn.004c9c90
mov ecx, 0x596118
call fcn.004baa80
mov ecx, dword [ebp - 0x5a0]
call fcn.004d3fe0
push 0x514bf0
push 0
call fcn.004e3dc0
add esp, 8
push str.Babylon_Translator
push 0
call fcn.004e3dc0
add esp, 8
push str.Babylon_
push 0
call fcn.004e3dc0
add esp, 8
push 0
push 0
call fcn.004c91a0
add esp, 8
push 1
call fcn.004e89a0
add esp, 4
mov ecx, dword [ebp - 0x5a0]
add ecx, 0x40
call fcn.00413e50
push eax
mov ecx, 0x595c40
call fcn.004d0c00
mov ecx, 0x595c40
call fcn.004d02f0
push 0
push str.SoftwareBabylonBabylon_Client
call fcn.0048cb00
add esp, 8
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x454]
call fcn.00414a10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x434]
call fcn.00419520
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004489b2
mov esp, ebp
pop ebp
ret