Function at 0x406460
Capabilities:
Allocate thread local storage
Check mutex on windows
Create process on windows
Self delete

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xec
mov dword [esp], 0
call sub.KERNEL32.dll_GetModuleHandleW
sub esp, 4
mov dword [0x4d1af8], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0x1000
mov dword [esp], 0
call sub.KERNEL32.dll_HeapCreate
sub esp, 0xc
mov dword [0x4d1afc], eax
call fcn.00408612
mov dword [0x4d1af4], 0x4cfae0
call fcn.00419350
mov dword [0x4cfaf0], 0x404db0
mov dword [0x4cfaf4], 0x401010
mov dword [0x4cfaf8], 0x401060
mov dword [0x4cfafc], 0x404d80
mov dword [0x4cfb00], 0x402950
mov dword [0x4cfb04], 0x4028d0
mov dword [0x4cfb08], 0x404b90
mov dword [0x4cfb0c], 0x402860
mov dword [0x4cfb10], 0x4027c0
mov dword [0x4cfb14], 0x403da0
mov dword [0x4cfb18], 0x404d40
mov dword [0x4cfb1c], 0x402780
mov dword [0x4cfb20], 0x404cf0
mov dword [0x4cfb24], 0x4040c0
mov dword [0x4cfb28], 0x402de0
mov dword [0x4cfb2c], 0x404a70
mov dword [0x4cfb30], 0x404930
mov dword [0x4cfb34], 0x403fa0
mov dword [0x4cfb38], 0x402740
mov dword [0x4cfb3c], 0x402700
mov dword [0x4cfb40], 0x4026c0
mov dword [0x4cfb44], 0x401020
mov dword [0x4cfb48], 0x401080
mov dword [0x4cfb4c], 0x402680
mov dword [0x4cfb50], 0x402640
mov dword [0x4cfb54], 0x402600
mov dword [0x4cfb58], 0x4047c0
mov dword [0x4cfb5c], 0x4046c0
mov dword [0x4cfb60], 0x404590
mov dword [0x4cfb64], 0x4044a0
mov dword [0x4cfb68], 0x404110
mov dword [0x4cfb6c], 0x403ef0
mov dword [0x4cfb70], 0x402590
mov dword [0x4cfb74], 0x402500
mov dword [0x4cfb78], 0x4024c0
mov dword [0x4cfb7c], 0x402430
mov dword [0x4cfb80], 0x4023e0
mov dword [0x4cfb84], 0x402390
mov dword [0x4cfb88], 0x403ec0
mov dword [0x4cfb8c], 0x402320
mov dword [0x4cfb90], 0x403770
mov dword [0x4cfb94], 0x4022b0
mov dword [0x4cfb98], 0x403e20
mov dword [0x4cfb9c], 0x402190
mov dword [0x4cfba0], 0x402130
mov dword [0x4cfba4], 0x402b30
mov dword [0x4cfba8], 0x4020f0
mov dword [0x4cfbac], 0x402030
mov dword [0x4cfbb0], 0x401ff0
mov dword [0x4cfbb4], 0x401fb0
mov dword [0x4cfbb8], 0x401f70
mov dword [0x4cfbbc], 0x403d00
mov dword [0x4cfbc0], 0x403c50
mov dword [0x4cfbc4], 0x401f30
mov dword [0x4cfbc8], 0x401ed0
mov dword [0x4cfbcc], 0x401e10
mov dword [0x4cfbd0], 0x403b40
mov dword [0x4cfbd4], 0x401dd0
mov dword [0x4cfbd8], 0x401d90
mov dword [0x4cfbdc], 0x401d20
mov dword [0x4cfbe0], 0x403450
mov dword [0x4cfbe4], 0x4031e0
mov dword [0x4cfbe8], 0x4039d0
mov dword [0x4cfbec], 0x403840
mov dword [0x4cfbf0], 0x401c60
mov dword [0x4cfbf4], 0x401c20
mov dword [0x4cfbf8], 0x401bb0
mov dword [0x4cfbfc], 0x401b10
mov dword [0x4cfc00], 0x406360
mov dword [0x4cfc04], 0x401ba0
mov dword [0x4cfc08], 0x401ad0
mov dword [0x4cfc0c], 0x401a70
mov dword [0x4cfc10], 0x401a30
mov dword [0x4cfc14], 0x4019c0
mov dword [0x4cfc18], 0x401950
mov dword [0x4cfc1c], 0x403800
mov dword [0x4cfc20], 0x4018f0
mov dword [0x4cfc24], 0x4036e0
mov dword [0x4cfc28], 0x401880
mov dword [0x4cfc2c], 0x401800
mov dword [0x4cfc30], 0x401790
mov dword [0x4cfc34], 0x401710
mov dword [0x4cfc38], 0x4016d0
mov dword [0x4cfc3c], 0x401680
mov dword [0x4cfc40], 0x402fb0
mov dword [0x4cfc44], 0x401640
mov dword [0x4cfc48], 0x4015e0
mov dword [0x4cfc4c], 0x402cb0
mov dword [0x4cfc50], 0x402e70
mov dword [0x4cfc54], 0x401590
mov dword [0x4cfc58], 0x402ba0
mov dword [0x4cfc5c], 0x401550
mov dword [0x4cfc60], 0x401510
mov dword [0x4cfc64], 0x4014d0
mov dword [0x4cfc68], 0x401480
mov dword [0x4cfc6c], 0x401430
mov dword [0x4cfc70], 0x4013c0
mov dword [0x4cfc74], 0x401350
mov dword [0x4cfc78], 0x4012e0
mov dword [0x4cfc7c], 0x401270
mov dword [0x4cfc80], 0x401000
mov dword [0x4cfc84], 0x401070
mov dword [0x4cfc88], 0x401220
mov dword [0x4cfc8c], 0x4011d0
mov dword [0x4cfc90], 0x401170
mov dword [0x4cfc94], 0x401100
mov dword [0x4cfc98], 0x4010c0
mov dword [0x4cfc9c], 0x4029f0
mov dword [0x4cf196], 0x4cf044
mov dword [0x4cf114], 0x4cf030
mov dword [0x4cf0b8], 0x4cf020
mov dword [0x4cf074], 0x4cf010
call fcn.00418c40
call fcn.00417fdb
call fcn.00417380
call fcn.004154bc
call fcn.00414d60
call fcn.00414599
call fcn.00413dad
call fcn.00413ba0
call fcn.0041373a
call fcn.00413442
call fcn.00412e5a
call fcn.00412814
call fcn.004121c0
call fcn.00410709
call fcn.0040ea19
call fcn.0040d5d8
call fcn.0040c305
call fcn.0040c110
call fcn.0040b6e3
call fcn.0040afe2
call fcn.0040adce
call fcn.00408670
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.0040b011
sub esp, 4
call fcn.004190c0
mov ebx, eax
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00411bc2
sub esp, 8
call fcn.004190c0
mov dword [esp], eax
call fcn.00411c41
sub esp, 4
call fcn.00419020
mov dword [esp + 4], 0x4cfa90
mov dword [esp], 0xffffffff
call fcn.0040c044
sub esp, 8
mov dword [0x4d1ad8], eax
test eax, eax
jne 0x40736d
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4cf018
mov dword [esp + 4], 0x4d1b1c
mov dword [esp], 0xc
call fcn.00413dcc
sub esp, 0x10
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4cf010
mov dword [esp + 4], 0x4d1b14
mov dword [esp], 4
call fcn.00413dcc
sub esp, 0x10
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4cf044
mov dword [esp + 4], 0x4d1b0c
mov dword [esp], 8
call fcn.00413dcc
sub esp, 0x10
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4cf020
mov dword [esp + 4], 0x4d1b04
mov dword [esp], 0xc
call fcn.00413dcc
sub esp, 0x10
mov dword [0x4d1ab0], 0
call fcn.00418e50
mov dword [esp + 0x34], 0
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.0040b011
sub esp, 4
call fcn.004190c0
mov ebx, eax
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.00411c53
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
lea esi, [esp + 0x34]
mov dword [esp], esi
call fcn.00419140
sub esp, 8
call fcn.00418f70
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], str..dat
call fcn.004191d0
sub esp, 4
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1a80
call fcn.00419140
sub esp, 8
call fcn.00418f70
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], str._lang.ifl
call fcn.004191d0
sub esp, 4
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1ab4
call fcn.00419140
sub esp, 8
call fcn.0040df7c
call fcn.0040e380
call fcn.0040da60
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.0040b011
sub esp, 4
call fcn.004190c0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x20
mov dword [esp], eax
call fcn.00404f90
sub esp, 0xc
mov ebx, eax
call fcn.00419020
mov dword [0x4d1a9c], ebx
mov eax, dword [0x4d1a80]
mov dword [esp + 4], eax
mov dword [esp], 0xffffffff
call fcn.0040c281
sub esp, 8
mov ebx, eax
test eax, eax
je 0x4073f9
mov dword [esp], ebx
call fcn.0040c293
sub esp, 4
mov edi, eax
mov dword [esp], eax
call fcn.0040c2af
sub esp, 4
cmp eax, 5
je 0x406c55
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Could_not_initialize_uninstall_configuration_file__corrupted__
mov dword [esp], str.Error
call fcn.0040ae07
sub esp, 0xc
mov dword [esp], ebx
call fcn.0040c2c5
push eax
call fcn.00404e70
call fcn.00406430
mov dword [esp + 4], str.GeneralInformation
mov dword [esp], edi
call fcn.0040c3d3
sub esp, 8
mov edi, eax
test eax, eax
je 0x407427
mov dword [esp + 0xc], 0x4cf100
mov dword [esp + 8], 0x10
mov dword [esp + 4], 0x4d1a8c
mov dword [esp], edi
call fcn.0040c99b
sub esp, 0x10
mov eax, dword [0x4d1a8c]
mov dword [esp + 4], eax
mov dword [esp], 0x4d1b24
call fcn.00419230
test eax, eax
jne 0x40745e
mov dword [esp], ebx
call fcn.0040c2c5
sub esp, 4
call fcn.00418f70
call fcn.00418f70
mov dword [esp], str.Uninstall_
call fcn.004191d0
sub esp, 4
mov eax, dword [0x4d1a8c]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], 0x4cf934
call fcn.004191d0
sub esp, 4
call fcn.004190c0
mov dword [esp + 0x44], eax
call fcn.00418e50
mov eax, dword [esp + 0x44]
mov dword [esp + 4], eax
lea ebx, [esp + 0x44]
mov dword [esp], ebx
call fcn.00418eb0
sub esp, 8
mov eax, dword [esp + 0x44]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], 0
call sub.KERNEL32.dll_CreateMutexW
sub esp, 0xc
mov edi, eax
test eax, eax
jne 0x4074cf
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.00418f00
sub esp, 4
call fcn.00419020
mov eax, dword [0x4d1ab4]
mov dword [esp], eax
call fcn.0040bae0
sub esp, 4
test eax, eax
jne 0x407528
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Could_not_initialize_uninstall_language_file_
mov dword [esp], str.Error
call fcn.0040ae07
sub esp, 0xc
call fcn.00404e70
call fcn.00406430
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00418f00
sub esp, 4
call fcn.00418e50
mov dword [esp + 8], 0x24
mov eax, dword [0x4d1a88]
mov dword [esp + 4], eax
mov eax, dword [0x4d1acc]
mov dword [esp], eax
call fcn.0040ae07
sub esp, 0xc
cmp eax, 7
je 0x407909
call fcn.00418e50
call fcn.00418f70
call fcn.00418f70
mov dword [esp], 0x4cf3e0
call fcn.004191d0
sub esp, 4
mov eax, dword [0x4d1a8c]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
call fcn.00419320
call fcn.004190c0
mov dword [esp + 0x18], 0x10ca0001
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x16a
mov dword [esp + 0xc], 0x1f1
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.00410774
sub esp, 0x1c
call fcn.00419020
call fcn.00418f70
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.0040b011
sub esp, 4
call fcn.004190c0
mov dword [esp], eax
call fcn.00404de0
sub esp, 4
mov edi, eax
call fcn.00419020
mov dword [esp], 0
call fcn.00410650
sub esp, 4
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0
mov dword [esp + 4], pe_nt_image_headers32
mov dword [esp], eax
call sub.USER32.dll_SendMessageW
sub esp, 0x10
call fcn.00418e50
mov dword [esp], 0
call fcn.00410650
sub esp, 4
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.USER32.dll_GetSystemMenu
sub esp, 8
test eax, eax
jne 0x407913
mov dword [esp], 0
call fcn.00410b40
sub esp, 4
mov dword [esp + 0x18], 2
mov dword [esp + 0x14], 0x4d1b24
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x3a
mov dword [esp + 4], 0
mov dword [esp], 0xffffffff
call fcn.0040eb4e
sub esp, 0x1c
mov dword [esp], 0
call fcn.00410b40
sub esp, 4
mov dword [esp + 0x18], 2
mov dword [esp + 0x14], 0x4d1b24
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x139
mov dword [esp + 4], 0
mov dword [esp], 0xffffffff
call fcn.0040eb4e
sub esp, 0x1c
call fcn.00418f70
call fcn.00418f70
mov eax, dword [0x4d1ac0]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], 0x4cfa8c
call fcn.004191d0
sub esp, 4
mov eax, dword [0x4d1a8c]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
call fcn.00419320
mov dword [esp], 0
call fcn.00410b40
sub esp, 4
mov edi, eax
call fcn.004190c0
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x14
sub edi, 0x32
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0x5a
mov dword [esp + 4], 0x19
mov dword [esp], 5
call fcn.0040ef2c
sub esp, 0x18
call fcn.00419020
mov dword [esp], 0
call fcn.00410b40
sub esp, 4
mov dword [esp + 0x18], 1
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x14
sub eax, 0x32
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x78
mov dword [esp + 4], 0x19
mov dword [esp], 4
call fcn.0040f0a7
sub esp, 0x1c
mov dword [esp], 0
call fcn.00410b40
sub esp, 4
mov edx, dword [0x4d1ad0]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], 0x16
mov dword [esp + 0xc], 0x50
mov dword [esp + 8], 0x14a
sub eax, 0x69
mov dword [esp + 4], eax
mov dword [esp], 6
call fcn.0040f50d
sub esp, 0x18
mov dword [esp + 4], 1
mov dword [esp], 6
call fcn.0040f550
sub esp, 8
mov dword [esp], 0
call fcn.00410b40
sub esp, 4
mov dword [esp + 0x10], 0x3a
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0040f85f
sub esp, 0x14
mov dword [esp + 8], 0xff
mov dword [esp + 4], 0xff
mov dword [esp], 0xff
call fcn.00413746
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], 2
mov dword [esp], 0
call fcn.0040e677
sub esp, 0xc
mov eax, dword [0x4d1a9c]
mov dword [esp], eax
call fcn.00413bb4
sub esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x20
mov dword [esp + 0xc], 0x20
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0x1b8
mov dword [esp], 1
call fcn.0040fe22
sub esp, 0x18
mov eax, dword [0x4d1ab8]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0xf
mov dword [esp + 0xc], 0x131
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0xe
mov dword [esp], 2
call fcn.0040ef2c
sub esp, 0x18
mov dword [esp + 8], 0xff
mov dword [esp + 4], 0xff
mov dword [esp], 0xff
call fcn.00413746
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], 2
mov dword [esp], 2
call fcn.0040e677
sub esp, 0xc
mov dword [esp + 0xc], 0x110
mov dword [esp + 8], 8
mov dword [esp + 4], str.Microsoft_Sans_Serif
mov dword [esp], 0xffffffff
call fcn.00418028
sub esp, 0x10
mov dword [esp], eax
call fcn.004180f1
sub esp, 4
mov dword [esp + 4], eax
mov dword [esp], 2
call fcn.0040fe6a
sub esp, 8
mov eax, dword [0x4d1aa0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0x28
mov dword [esp + 0xc], 0x163
mov dword [esp + 8], 0x1b
mov dword [esp + 4], 0x19
mov dword [esp], 3
call fcn.0040ef2c
sub esp, 0x18
mov dword [esp + 8], 0xff
mov dword [esp + 4], 0xff
mov dword [esp], 0xff
call fcn.00413746
sub esp, 0xc
mov dword [esp + 8], eax
mov dword [esp + 4], 2
mov dword [esp], 3
call fcn.0040e677
sub esp, 0xc
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], 8
mov dword [esp + 4], str.Microsoft_Sans_Serif
mov dword [esp], 0xffffffff
call fcn.00418028
sub esp, 0x10
mov dword [esp], eax
call fcn.004180f1
sub esp, 4
mov dword [esp + 4], eax
mov dword [esp], 3
call fcn.0040fe6a
sub esp, 8
call fcn.004104cd
cmp eax, 0x4f
jg 0x407947
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.00410c2d
sub esp, 8
mov dword [esp + 4], 0xffffffff
mov dword [esp], 4
call fcn.0040e8f0
sub esp, 8
mov edx, dword [0x4d1ab0]
test edx, edx
je 0x407343
mov dword [esp], 0
call fcn.00410650
sub esp, 4
mov ecx, eax
mov eax, dword [0x4d1ab0]
mov edx, dword [eax]
mov dword [esp + 8], 1
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x28]
sub esp, 0xc
mov dword [esp + 4], 0
mov dword [esp], 0x4051e0
call fcn.004086c8
sub esp, 8
mov dword [0x4d1ac8], eax
call fcn.00418e50
lea ebp, [esp + 0x30]
jmp 0x407f3f
mov dword [esp + 4], str.RegDeleteKeyExW
mov dword [esp], eax
call fcn.0040c183
push edx
push edx
mov dword [0x4d1ad4], eax
mov dword [esp + 4], str.RegSetValueExW
mov eax, dword [0x4d1ad8]
mov dword [esp], eax
call fcn.0040c183
push ecx
push ecx
mov dword [0x4d1ae4], eax
mov dword [esp + 4], str.RegDeleteTreeW
mov eax, dword [0x4d1ad8]
mov dword [esp], eax
call fcn.0040c183
push ebx
push ebx
mov dword [0x4d1adc], eax
mov dword [esp + 4], str.RegEnumKeyExW
mov eax, dword [0x4d1ad8]
mov dword [esp], eax
call fcn.0040c183
push esi
push esi
mov dword [0x4d1ae8], eax
mov dword [esp + 4], str.RegCopyTreeW
mov eax, dword [0x4d1ad8]
mov dword [esp], eax
call fcn.0040c183
push edi
push edi
mov dword [0x4d1ae0], eax
jmp 0x406a01
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Could_not_initialize_uninstall_configuration_file_
mov dword [esp], str.Error
call fcn.0040ae07
sub esp, 0xc
call fcn.00404e70
call fcn.00406430
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Could_not_initialize_uninstall_configuration_file__corrupted__
mov dword [esp], str.Error
call fcn.0040ae07
sub esp, 0xc
mov dword [esp], ebx
call fcn.0040c2c5
push eax
call fcn.00404e70
call fcn.00406430
mov eax, dword [0x4d1a90]
mov dword [esp + 4], eax
mov dword [esp], 0x4d1b24
call fcn.00419230
test eax, eax
je 0x406cb2
mov eax, dword [0x4d1a94]
mov dword [esp + 4], eax
mov dword [esp], 0x4d1b24
call fcn.00419230
test eax, eax
je 0x406cb2
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Could_not_initialize_uninstall_configuration_file__corrupted__
mov dword [esp], str.Error
call fcn.0040ae07
sub esp, 0xc
mov dword [esp], ebx
call fcn.0040c2c5
push ebp
call fcn.00404e70
call fcn.00406430
call sub.KERNEL32.dll_GetLastError
cmp eax, 0xb7
jne 0x406d43
mov dword [esp], edi
call sub.KERNEL32.dll_CloseHandle
push ecx
mov eax, dword [esp + 0x44]
mov dword [esp], eax
call fcn.00418f00
push edi
call fcn.00419020
mov dword [esp + 8], 0x40
mov dword [esp + 4], str.There_is_already_an_instance_of_the_uninstaller_running_
mov dword [esp], str.InstallForge
call fcn.0040ae07
sub esp, 0xc
call fcn.00404e70
call fcn.00406430
mov dword [esp], str.Uninstall
call fcn.0040bb1e
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Uninstall
mov dword [esp], str.BM_T
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1acc
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Do_you_want_to_remove__appname__from_your_computer_
mov dword [esp], 0x4cf920
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1a88
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str._appname__was_successfully_removed_from_your_computer_
mov dword [esp], str.Success
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1abc
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Uninstall_Status
mov dword [esp], str.Header
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1ab8
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Please_wait_while__appname__is_removed_from_your_computer.
mov dword [esp], str.Header_b
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1aa0
call fcn.00419140
push edx
push edx
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Uninstalling
mov dword [esp], str.Uninstalling
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1ac0
call fcn.00419140
push ecx
push ecx
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Cancel
mov dword [esp], str.Btn_cancel
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1ad0
call fcn.00419140
push edi
push edi
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Uninstall
mov dword [esp], str.ExitUninstall_T
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1aa4
call fcn.00419140
push ebp
push ebp
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Do_you_want_to_exit_uninstall_
mov dword [esp], str.ExitUninstall
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1ac4
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str.Uninstall
mov dword [esp], str.Success_T
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1aa8
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 8], eax
mov dword [esp + 4], str._appname__was_successfully_removed_from_your_computer_
mov dword [esp], str.Success
call fcn.0040bc12
sub esp, 0xc
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1abc
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
mov edi, dword [0x4d1aa0]
mov ebp, dword [0x4d1a8c]
call fcn.00418fc0
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], ebp
mov dword [esp + 4], str._appname_
mov dword [esp], edi
call fcn.00417680
sub esp, 0x14
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1aa0
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
mov edi, dword [0x4d1abc]
mov ebp, dword [0x4d1a8c]
call fcn.00418fc0
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], ebp
mov dword [esp + 4], str._appname_
mov dword [esp], edi
call fcn.00417680
sub esp, 0x14
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1abc
call fcn.00419140
push eax
push eax
call fcn.00418f70
call fcn.00418f70
mov edi, dword [0x4d1a88]
mov ebp, dword [0x4d1a8c]
call fcn.00418fc0
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], ebp
mov dword [esp + 4], str._appname_
mov dword [esp], edi
call fcn.00417680
sub esp, 0x14
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], 0x4d1a88
call fcn.00419140
push edx
push edx
call fcn.0040bd06
jmp 0x406d98
call fcn.00406430
mov dword [esp + 8], 1
mov dword [esp + 4], 0xf060
mov dword [esp], eax
call sub.USER32.dll_EnableMenuItem
sub esp, 0xc
xor ecx, ecx
mov dword [esp], ecx
call fcn.00410650
push edi
mov dword [esp], eax
call sub.USER32.dll_DrawMenuBar
push ebp
jmp 0x406ee1
call fcn.00418e50
xor ecx, ecx
mov dword [esp + 0x44], ecx
mov dword [esp], ecx
call sub.ole32.dll_CoInitialize
push edi
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], 0x4cfcc0
mov dword [esp + 8], 1
xor ebp, ebp
mov dword [esp + 4], ebp
mov dword [esp], 0x4cfcb0
call sub.ole32.dll_CoCreateInstance
sub esp, 0x14
mov eax, dword [esp + 0x44]
mov dword [0x4d1ab0], eax
mov edx, dword [eax]
mov dword [esp], eax
call dword [edx + 0xc]
push eax
xor eax, eax
mov dword [esp], eax
call fcn.00410650
push edx
mov ecx, eax
mov eax, dword [0x4d1ab0]
mov edx, dword [eax]
mov dword [esp + 0x10], 0x64
xor edi, edi
mov dword [esp + 0x14], edi
mov dword [esp + 8], edi
mov dword [esp + 0xc], edi
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x24]
sub esp, 0x18
xor ebp, ebp
mov dword [esp], ebp
call fcn.00410650
push edx
mov ecx, eax
mov eax, dword [0x4d1ab0]
mov edx, dword [eax]
mov dword [esp + 8], 2
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x28]
sub esp, 0xc
jmp 0x4072de
mov eax, dword [0x4d1ac8]
mov dword [esp], eax
call fcn.0040878d
sub esp, 4
mov eax, dword [0x4d1abc]
mov dword [esp + 4], eax
mov eax, dword [0x4d1aa8]
mov dword [esp], eax
call fcn.0040ae38
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0
call fcn.00410c2d
sub esp, 8
mov eax, dword [0x4d1a98]
mov dword [esp + 4], eax
mov dword [esp], 0x4d1b24
call fcn.00419230
test eax, eax
je 0x407bf0
call fcn.00418e50
mov edi, dword [0x4d1ab0]
test edi, edi
je 0x407a81
call fcn.00418e50
mov eax, dword [edi]
mov dword [esp], edi
call dword [eax + 8]
sub esp, 4
call sub.ole32.dll_CoUninitialize
call fcn.00418e50
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.0040b011
sub esp, 4
call fcn.00418fc0
mov dword [esp + 4], eax
lea eax, [esp + 0x2c]
mov dword [esp], eax
call fcn.00419140
sub esp, 8
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.00411d10
sub esp, 4
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp], eax
call fcn.00418f30
sub esp, 4
call fcn.00418e50
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov ecx, 0x27
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov dword [esp + 0x30], 0
mov dword [esp + 4], 0x4d1b24
mov dword [esp], ebp
call fcn.00419270
sub esp, 8
mov dword [esp], esi
call sub.ole32.dll_CoCreateGuid
sub esp, 4
test eax, eax
je 0x407c08
call fcn.00418f70
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
call fcn.004190c0
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.00418f00
sub esp, 4
call fcn.00418fc0
mov dword [esp], str..bat
call fcn.004191d0
sub esp, 4
call fcn.00418fc0
mov dword [esp + 4], eax
lea eax, [esp + 0x28]
mov dword [esp], eax
call fcn.00419140
sub esp, 8
mov eax, dword [esp + 0x28]
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.00411f60
sub esp, 8
test eax, eax
jne 0x407c70
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.00418f00
sub esp, 4
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.00418f00
sub esp, 4
jmp 0x407f1a
mov eax, dword [0x4d1a98]
mov dword [esp], eax
call fcn.0040b5e4
sub esp, 4
jmp 0x407a5d
mov dword [esp + 8], 0x27
mov dword [esp + 4], ebx
mov dword [esp], esi
call sub.ole32.dll_StringFromGUID2
sub esp, 0xc
test eax, eax
jle 0x407b5a
call fcn.00418f70
call fcn.00418f70
call fcn.00418fc0
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x19
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
call fcn.00418c60
sub esp, 0x10
call fcn.00418fc0
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00419140
sub esp, 8
jmp 0x407b5a
mov dword [esp + 4], 0x4cf938
mov dword [esp], 0
call fcn.00412370
sub esp, 8
mov dword [esp + 4], str.:DeleteFile
mov dword [esp], 0
call fcn.00412370
sub esp, 8
call fcn.00418f70
call fcn.00418f70
mov dword [esp], str.del__
call fcn.004191d0
sub esp, 4
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], 0x4cfa88
call fcn.004191d0
sub esp, 4
call fcn.00419320
call fcn.004190c0
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.00412370
sub esp, 8
call fcn.00419020
call fcn.00418f70
call fcn.00418f70
mov dword [esp], str.if_exist__
call fcn.004191d0
sub esp, 4
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], str.__goto_DeleteFile
call fcn.004191d0
sub esp, 4
call fcn.00419320
call fcn.004190c0
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.00412370
sub esp, 8
call fcn.00419020
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x407d62
cmp word [eax], 0
jne 0x407e20
call fcn.00418f70
call fcn.00418f70
mov dword [esp], str.del__
call fcn.004191d0
sub esp, 4
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], 0x4cfa88
call fcn.004191d0
sub esp, 4
call fcn.00419320
call fcn.004190c0
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.00412370
sub esp, 8
call fcn.00419020
mov dword [esp + 4], 0x4cf64c
mov dword [esp], 0
call fcn.00412370
sub esp, 8
mov dword [esp], 0
call fcn.004120f0
sub esp, 4
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0x28]
mov dword [esp + 8], eax
mov dword [esp + 4], str.open
mov dword [esp], 0
call sub.SHELL32.dll_ShellExecuteW
sub esp, 0x18
jmp 0x407bcd
call fcn.00418f70
call fcn.00418f70
mov dword [esp], str.rd__
call fcn.004191d0
sub esp, 4
mov eax, dword [0x4d1a94]
mov dword [esp], eax
call fcn.004191d0
sub esp, 4
mov dword [esp], 0x4cfa88
call fcn.004191d0
sub esp, 4
call fcn.00419320
call fcn.004190c0
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.00412370
sub esp, 8
call fcn.00419020
jmp 0x407d62
mov eax, dword [0x4d1ac8]
mov dword [esp], eax
call fcn.0040878d
sub esp, 4
mov dword [esp], 4
call fcn.0040e928
sub esp, 4
cmp eax, 0xffffffff
je 0x407fb8
mov eax, dword [0x4d1ab0]
test eax, eax
je 0x407ede
mov dword [esp], 0
call fcn.00410650
sub esp, 4
mov ecx, eax
mov eax, dword [0x4d1ab0]
mov edx, dword [eax]
mov dword [esp + 8], 4
mov dword [esp + 4], ecx
mov dword [esp], eax
call dword [edx + 0x28]
sub esp, 0xc
mov eax, dword [0x4d1aac]
mov dword [esp + 4], eax
mov dword [esp], str.Error
call fcn.0040ae38
sub esp, 8
call fcn.00418e50
mov edi, dword [0x4d1ab0]
test edi, edi
je 0x407f1a
call fcn.00418e50
mov eax, dword [edi]
mov dword [esp], edi
call dword [eax + 8]
sub esp, 4
call sub.ole32.dll_CoUninitialize
call fcn.004063d0
mov eax, dword [0x4d1afc]
mov dword [esp], eax
call sub.KERNEL32.dll_HeapDestroy
sub esp, 4
mov eax, dword [0x4d1b00]
mov dword [esp], eax
call sub.KERNEL32.dll_ExitProcess
call fcn.00410d6a
mov edi, eax
call fcn.0041292e
cmp edi, 0x10000
je 0x407a00
cmp edi, 0x10001
je 0x407e80
cmp edi, 0x332c
je 0x407fd8
test eax, eax
jne 0x407f3f
cmp edi, 0x333c
jne 0x407f3f
mov dword [esp + 8], 0x21
mov eax, dword [0x4d1ac4]
mov dword [esp + 4], eax
mov eax, dword [0x4d1aa4]
mov dword [esp], eax
call fcn.0040ae07
sub esp, 0xc
cmp eax, 1
jne 0x407f3f
call fcn.00418e50
mov edi, dword [0x4d1ab0]
test edi, edi
jne 0x407f05
jmp 0x407f1a
mov dword [esp + 4], 0
mov dword [esp], 4
call fcn.0040e8f0
sub esp, 8
jmp 0x407ea8
call fcn.0041293d
cmp eax, 6
jne 0x407f3f
jmp 0x407f77