Function at 0x411920
Capabilities:
Allocate thread local storage
Check mutex on windows
Extract resource via kernel32 functions
Query environment variable
Query or enumerate registry value
Resolve function by parsing pe exports
Shutdown system

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x14c
mov dword [esp], 0
call sub.KERNEL32.dll_GetModuleHandleW
sub esp, 4
mov dword [0x4ef298], 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 [0x4ef29c], eax
call fcn.00416ca4
mov dword [0x4ef294], 0x4e40c0
call fcn.0042dd20
mov dword [0x4e40d0], 0x405230
mov dword [0x4e40d4], 0x401010
mov dword [0x4e40d8], 0x401060
mov dword [0x4e40dc], 0x405200
mov dword [0x4e40e0], 0x403d60
mov dword [0x4e40e4], 0x403ce0
mov dword [0x4e40e8], 0x403b80
mov dword [0x4e40ec], 0x403b10
mov dword [0x4e40f0], 0x403a70
mov dword [0x4e40f4], 0x4039f0
mov dword [0x4e40f8], 0x4051c0
mov dword [0x4e40fc], 0x4039b0
mov dword [0x4e4100], 0x405170
mov dword [0x4e4104], 0x401100
mov dword [0x4e4108], 0x403920
mov dword [0x4e410c], 0x403800
mov dword [0x4e4110], 0x405030
mov dword [0x4e4114], 0x404830
mov dword [0x4e4118], 0x4037c0
mov dword [0x4e411c], 0x403780
mov dword [0x4e4120], 0x403740
mov dword [0x4e4124], 0x401020
mov dword [0x4e4128], 0x401080
mov dword [0x4e412c], 0x403700
mov dword [0x4e4130], 0x4036c0
mov dword [0x4e4134], 0x403680
mov dword [0x4e4138], 0x403580
mov dword [0x4e413c], 0x403480
mov dword [0x4e4140], 0x403390
mov dword [0x4e4144], 0x4032a0
mov dword [0x4e4148], 0x404c30
mov dword [0x4e414c], 0x404b80
mov dword [0x4e4150], 0x403230
mov dword [0x4e4154], 0x4031a0
mov dword [0x4e4158], 0x403160
mov dword [0x4e415c], 0x4030d0
mov dword [0x4e4160], 0x403080
mov dword [0x4e4164], 0x403030
mov dword [0x4e4168], 0x404b50
mov dword [0x4e416c], 0x402fc0
mov dword [0x4e4170], 0x4049e0
mov dword [0x4e4174], 0x402f50
mov dword [0x4e4178], 0x404ab0
mov dword [0x4e417c], 0x402e30
mov dword [0x4e4180], 0x402dd0
mov dword [0x4e4184], 0x402d60
mov dword [0x4e4188], 0x402d20
mov dword [0x4e418c], 0x402c60
mov dword [0x4e4190], 0x402c20
mov dword [0x4e4194], 0x402be0
mov dword [0x4e4198], 0x402ba0
mov dword [0x4e419c], 0x402b00
mov dword [0x4e41a0], 0x402a50
mov dword [0x4e41a4], 0x402a10
mov dword [0x4e41a8], 0x4029b0
mov dword [0x4e41ac], 0x4028f0
mov dword [0x4e41b0], 0x4027e0
mov dword [0x4e41b4], 0x4027a0
mov dword [0x4e41b8], 0x402760
mov dword [0x4e41bc], 0x4026f0
mov dword [0x4e41c0], 0x4045a0
mov dword [0x4e41c4], 0x404330
mov dword [0x4e41c8], 0x402580
mov dword [0x4e41cc], 0x4023f0
mov dword [0x4e41d0], 0x402330
mov dword [0x4e41d4], 0x4022f0
mov dword [0x4e41d8], 0x402280
mov dword [0x4e41dc], 0x4021e0
mov dword [0x4e41e0], 0x40b7c0
mov dword [0x4e41e4], 0x402270
mov dword [0x4e41e8], 0x4021a0
mov dword [0x4e41ec], 0x402140
mov dword [0x4e41f0], 0x402100
mov dword [0x4e41f4], 0x402090
mov dword [0x4e41f8], 0x402020
mov dword [0x4e41fc], 0x404a70
mov dword [0x4e4200], 0x401fc0
mov dword [0x4e4204], 0x404950
mov dword [0x4e4208], 0x401f50
mov dword [0x4e420c], 0x401ed0
mov dword [0x4e4210], 0x401e60
mov dword [0x4e4214], 0x401de0
mov dword [0x4e4218], 0x401da0
mov dword [0x4e421c], 0x401d50
mov dword [0x4e4220], 0x404100
mov dword [0x4e4224], 0x401d10
mov dword [0x4e4228], 0x401cb0
mov dword [0x4e422c], 0x403f10
mov dword [0x4e4230], 0x404040
mov dword [0x4e4234], 0x401c60
mov dword [0x4e4238], 0x403e00
mov dword [0x4e423c], 0x401c20
mov dword [0x4e4240], 0x401be0
mov dword [0x4e4244], 0x401ba0
mov dword [0x4e4248], 0x401b50
mov dword [0x4e424c], 0x401b00
mov dword [0x4e4250], 0x401a90
mov dword [0x4e4254], 0x401a20
mov dword [0x4e4258], 0x4019b0
mov dword [0x4e425c], 0x401940
mov dword [0x4e4260], 0x401000
mov dword [0x4e4264], 0x401070
mov dword [0x4e4268], 0x4018f0
mov dword [0x4e426c], 0x4018a0
mov dword [0x4e4270], 0x401840
mov dword [0x4e4274], 0x4017d0
mov dword [0x4e4278], 0x401790
mov dword [0x4e427c], 0x401650
mov dword [0x4e1116], 0x4e1038
mov dword [0x4e10b8], 0x4e1018
mov dword [0x4e1074], 0x4e1010
call fcn.0042d460
call fcn.0042c75c
call fcn.0042b160
call fcn.00429294
call fcn.00428a20
call fcn.0042824c
call fcn.00427905
call fcn.00426f0c
call fcn.00426a9f
call fcn.00426586
call fcn.00424e3e
call fcn.00424794
call fcn.0042409d
call fcn.00423370
call fcn.00421828
call fcn.0041f76d
call fcn.0041aed7
call fcn.0041ade8
call fcn.0041ab07
call fcn.00418714
call fcn.004185fd
call fcn.00417bf1
call fcn.00416d02
mov dword [esp + 4], str.Advapi32.dll
mov dword [esp], 0xffffffff
call fcn.0041ace5
sub esp, 8
mov dword [0x4ef270], eax
test eax, eax
jne 0x412639
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4e1040
mov dword [esp + 4], 0x4ef2cc
mov dword [esp], 0x1c
call fcn.00427924
sub esp, 0x10
mov dword [esp + 0xc], 8
mov dword [esp + 8], 0x4e1058
mov dword [esp + 4], 0x4ef2c4
mov dword [esp], 4
call fcn.00427924
sub esp, 0x10
mov dword [0x4ef214], 0
mov dword [esp + 0x10], 0x4ef288
mov dword [esp + 0xc], 0x4eba7c
mov dword [esp + 8], 8
mov dword [esp + 4], 6
mov dword [esp], 4
call fcn.004265af
sub esp, 0x14
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4e1028
mov dword [esp + 4], 0x4ef2bc
mov dword [esp], 0x10
call fcn.00427924
sub esp, 0x10
mov dword [0x4ef0cc], 0xffffffff
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4e1010
mov dword [esp + 4], 0x4ef2b4
mov dword [esp], 4
call fcn.00427924
sub esp, 0x10
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4e1038
mov dword [esp + 4], 0x4ef2ac
mov dword [esp], 4
call fcn.00427924
sub esp, 0x10
mov dword [esp + 0xc], 7
mov dword [esp + 8], 0x4e1018
mov dword [esp + 4], 0x4ef2a4
mov dword [esp], 0xc
call fcn.00427924
sub esp, 0x10
call fcn.0042d6e0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], str.InstallForgeSetup
call fcn.0042d6e0
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
lea eax, [esp + 0x50]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x50]
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], 0
call sub.KERNEL32.dll_CreateMutexW
sub esp, 0xc
mov ebx, eax
test eax, eax
jne 0x4126c5
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
call fcn.00425591
call fcn.00425f19
call fcn.0041c1e0
call fcn.0041c5e0
call fcn.004193c6
call fcn.00419216
call fcn.00419efd
call fcn.00417577
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00422d99
sub esp, 4
mov dword [esp], 0x4e2488
call fcn.0042daa0
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.0042d660
sub esp, 4
call fcn.0042d6e0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
lea ebx, [esp + 0xa4]
mov ecx, 0x27
xor eax, eax
mov edi, ebx
rep stosd dword es:[edi], eax
mov dword [esp + 0x94], 0
mov dword [esp + 4], 0x4ef2d4
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042d960
sub esp, 8
lea esi, [esp + 0x84]
mov dword [esp], esi
call sub.ole32.dll_CoCreateGuid
sub esp, 4
test eax, eax
je 0x412714
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042d890
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
call fcn.0042d790
mov dword [esp], 0x4e3b90
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef218
call fcn.0042da10
sub esp, 8
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.004015e0
sub esp, 4
test eax, eax
je 0x412780
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str.setupConfiguration.archive
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x4c]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.0041856f
sub esp, 4
call fcn.0042d890
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x94], eax
mov dword [esp + 0x54], 0x4e1820
call fcn.0042d6e0
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
lea eax, [esp + 0x54]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x94]
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call sub.KERNEL32.dll_LoadLibraryW
sub esp, 4
mov edi, eax
test eax, eax
jne 0x4127ae
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042db00
push eax
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042db00
push edx
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.0042db00
push ecx
call fcn.0042d7f0
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_setup_configuration_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
mov dword [esp + 8], 2
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov dword [esp], 0xffffffff
call fcn.0041ab8d
sub esp, 0xc
mov ebx, eax
test eax, eax
jne 0x4128a8
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_setup_configuration_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str.wizardImage.dat
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], 0x14
call fcn.00426fac
sub esp, 8
mov ebx, eax
call fcn.0042d7f0
test ebx, ebx
je 0x412a67
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str.headerImage.dat
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], 7
call fcn.00426fac
sub esp, 8
mov ebx, eax
call fcn.0042d7f0
test ebx, ebx
je 0x412a82
mov dword [esp + 8], 0x37
mov dword [esp + 4], 0x37
mov dword [esp], 7
call fcn.004270ca
sub esp, 0xc
mov dword [esp], 0x13a
call fcn.00424eaf
sub esp, 4
mov ebx, eax
mov dword [esp], 0xa4
call fcn.00424ed3
sub esp, 4
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], 0x14
call fcn.004270ca
sub esp, 0xc
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], str.System
call fcn.00405260
sub esp, 8
mov dword [esp], str._shell32.dll
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 8], 0x13
mov dword [esp + 4], eax
mov dword [esp], 0
call sub.SHELL32.dll_ExtractIconW
sub esp, 0xc
mov ebx, eax
call fcn.0042d7f0
mov dword [0x4ef200], ebx
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], str.System
call fcn.00405260
sub esp, 8
mov dword [esp], str._shell32.dll
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 8], 4
mov dword [esp + 4], eax
mov dword [esp], 0
call sub.SHELL32.dll_ExtractIconW
sub esp, 0xc
mov ebx, eax
call fcn.0042d7f0
mov dword [0x4ef1fc], ebx
mov dword [esp + 0xc], 0x110
mov dword [esp + 8], 0xb
mov dword [esp + 4], str.Verdana
mov dword [esp], 0
call fcn.0042c630
sub esp, 0x10
mov dword [esp + 0xc], 0x110
mov dword [esp + 8], 8
mov dword [esp + 4], str.Microsoft_Sans_Serif
mov dword [esp], 1
call fcn.0042c630
sub esp, 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 8], 8
mov dword [esp + 4], str.Microsoft_Sans_Serif
mov dword [esp], 7
call fcn.0042c630
sub esp, 0x10
call fcn.0042d6e0
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str.OS.dat
call fcn.0042daa0
sub esp, 4
call fcn.0042d890
mov dword [esp], eax
call fcn.00418b11
sub esp, 4
mov ebx, eax
call fcn.0042d7f0
test ebx, ebx
jne 0x412a9d
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Your_operating_system_is_not_supported.
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
call fcn.0042d6e0
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str.Variables.dat
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], 0xffffffff
call fcn.00423120
sub esp, 8
mov edi, eax
mov dword [esp + 0x3c], eax
call fcn.0042d7f0
test edi, edi
je 0x412edd
lea ebp, [esp + 0x7c]
mov dword [esp + 0x38], ebp
mov ebp, edi
jmp 0x41383f
mov dword [esp + 4], str.RegDeleteKeyExW
mov dword [esp], eax
call fcn.0041ad3f
push edi
push edi
mov dword [0x4ef26c], eax
mov dword [esp + 4], 0x4e35ec
mov eax, dword [0x4ef270]
mov dword [esp], eax
call fcn.0041ad3f
push ebp
push ebp
mov dword [0x4ef27c], eax
mov dword [esp + 4], str.RegDeleteTreeW
mov eax, dword [0x4ef270]
mov dword [esp], eax
call fcn.0041ad3f
push edx
push edx
mov dword [0x4ef274], eax
mov dword [esp + 4], str.RegEnumKeyExW
mov eax, dword [0x4ef270]
mov dword [esp], eax
call fcn.0041ad3f
push ecx
push ecx
mov dword [0x4ef280], eax
mov dword [esp + 4], str.RegCopyTreeW
mov eax, dword [0x4ef270]
mov dword [esp], eax
call fcn.0041ad3f
push ebx
push ebx
mov dword [0x4ef278], eax
jmp 0x411e63
call sub.KERNEL32.dll_GetLastError
cmp eax, 0xb7
jne 0x411ff2
mov dword [esp], ebx
call sub.KERNEL32.dll_CloseHandle
push ebx
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call fcn.0042db00
push esi
mov dword [esp + 8], 0x40
mov dword [esp + 4], str.There_is_already_an_InstallForge_setup_running__Please_close_the_running_setup_in_order_to_continue.
mov dword [esp], str.InstallForge
call fcn.00417bc0
sub esp, 0xc
call fcn.0040f050
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 0x4120ee
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x19
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
call fcn.0042d480
sub esp, 0x10
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
push ecx
push ecx
jmp 0x4120ee
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_cache_folder_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
mov dword [esp + 8], 0xa
mov eax, dword [esp + 0x54]
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.KERNEL32.dll_FindResourceW
sub esp, 0xc
mov ebx, eax
test eax, eax
je 0x4127e3
mov dword [esp + 4], eax
mov dword [esp], edi
call sub.KERNEL32.dll_LoadResource
push edx
push edx
mov ebp, eax
test eax, eax
jne 0x4127f1
mov dword [esp], edi
call sub.KERNEL32.dll_FreeLibrary
push ecx
jmp 0x41224c
mov dword [esp + 4], ebx
mov dword [esp], edi
call sub.KERNEL32.dll_SizeofResource
push edx
push edx
mov esi, eax
mov dword [esp], ebp
call sub.KERNEL32.dll_LockResource
push ecx
mov ebx, eax
mov eax, dword [esp + 0x94]
mov dword [esp + 4], eax
mov dword [esp], 0xffffffff
call fcn.00423050
push ebp
push ebp
mov ebp, eax
test eax, eax
je 0x4127e3
mov dword [esp + 4], 0x1000
mov dword [esp], eax
call fcn.004237c0
push eax
push eax
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov dword [esp], ebp
call fcn.00422e00
sub esp, 0xc
mov dword [esp], ebp
test eax, eax
je 0x41289d
call fcn.004232a0
push esi
mov dword [esp], edi
call sub.KERNEL32.dll_FreeLibrary
push edi
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042db00
push ebp
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042db00
push eax
mov eax, dword [esp + 0x54]
mov dword [esp], eax
call fcn.0042db00
push eax
call fcn.0042d7f0
jmp 0x4122a7
call fcn.004232a0
push ebx
jmp 0x4127e3
mov dword [esp], eax
call fcn.0041abf1
push edx
test eax, eax
je 0x412a59
lea edi, [esp + 0x48]
jmp 0x412912
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.0041acd3
sub esp, 8
mov esi, eax
call fcn.0042d7f0
cmp esi, 0xffffffff
je 0x412a22
mov dword [esp], ebx
call fcn.0041ac13
sub esp, 4
test eax, eax
je 0x412a59
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.0041ac35
sub esp, 8
call fcn.0042d890
mov esi, eax
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.00401150
sub esp, 8
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.0042da10
sub esp, 8
mov dword [esp], ebx
call fcn.0041ac5e
sub esp, 4
test eax, eax
jne 0x412912
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.00422c28
sub esp, 8
call fcn.0042d790
call fcn.0042d890
mov dword [esp], eax
call fcn.004015e0
sub esp, 4
mov esi, eax
call fcn.0042d7f0
test esi, esi
jne 0x4128c0
mov dword [esp], ebx
call fcn.0041aabb
push eax
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_setup_configuration_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
mov dword [esp], ebx
call fcn.0041aabb
push eax
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_setup_configuration_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
mov dword [esp], ebx
call fcn.0041aabb
push eax
jmp 0x4122f9
mov dword [esp + 4], 0x4e42bd
mov dword [esp], 0x14
call fcn.00427261
push ebp
push ebp
jmp 0x41234e
mov dword [esp + 4], 0x4eaa3b
mov dword [esp], 7
call fcn.00427261
push edi
push edi
jmp 0x4123a3
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], str.Windows_2000
call fcn.00418df3
push esi
push esi
xor ebx, ebx
sub eax, 1
je 0x412ad7
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], str.Windows_XP
call fcn.00418df3
push edx
push edx
mov esi, eax
cmp eax, 1
je 0x412b12
mov esi, ebx
jmp 0x412b48
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ecx
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_2000
call fcn.0042db30
xor ebx, ebx
test eax, eax
setne bl
jmp 0x412ab8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ebp
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_XP
call fcn.0042db30
test eax, eax
je 0x412ad3
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], str.Windows_Server_2003
call fcn.00418df3
push edi
push edi
mov ebx, eax
cmp eax, 1
je 0x412b67
mov ebx, esi
jmp 0x412b9d
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ecx
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Server_2003
call fcn.0042db30
test eax, eax
je 0x412b63
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Vista
call fcn.00418df3
push edx
push edx
mov esi, eax
cmp eax, 1
je 0x412bbc
mov esi, ebx
jmp 0x412bf2
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ebp
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Vista
call fcn.0042db30
test eax, eax
je 0x412bb8
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], str.Windows_Server_2008
call fcn.00418df3
push edi
push edi
mov ebx, eax
cmp eax, 1
je 0x412c11
mov ebx, esi
jmp 0x412c47
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ecx
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Server_2008
call fcn.0042db30
test eax, eax
je 0x412c0d
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], str.Windows_7
call fcn.00418df3
push edx
push edx
mov esi, eax
cmp eax, 1
je 0x412c66
mov esi, ebx
jmp 0x412c9c
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ebp
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_7
call fcn.0042db30
test eax, eax
je 0x412c62
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], str.Windows_8
call fcn.00418df3
push edi
push edi
mov ebx, eax
cmp eax, 1
je 0x412cbb
mov ebx, esi
jmp 0x412cf1
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ecx
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_8
call fcn.0042db30
test eax, eax
je 0x412cb7
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], str.Windows_10
call fcn.00418df3
push edx
push edx
mov esi, eax
cmp eax, 1
je 0x412d10
mov esi, ebx
jmp 0x412d46
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ebp
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_10
call fcn.0042db30
test eax, eax
je 0x412d0c
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], str.Windows_Server_2016
call fcn.00418df3
push edi
push edi
mov ebx, eax
cmp eax, 1
je 0x412d65
mov ebx, esi
jmp 0x412d9b
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ecx
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Server_2016
call fcn.0042db30
test eax, eax
je 0x412d61
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Server_2019
call fcn.00418df3
push edx
push edx
mov esi, eax
cmp eax, 1
je 0x412dba
mov esi, ebx
jmp 0x412df0
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ebp
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Server_2019
call fcn.0042db30
test eax, eax
je 0x412db6
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], str.Windows_Server_2022
call fcn.00418df3
push edi
push edi
mov ebx, eax
cmp eax, 1
je 0x412e0f
mov ebx, esi
jmp 0x412e45
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push ecx
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_Server_2022
call fcn.0042db30
test eax, eax
je 0x412e0b
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], str.Windows_11
call fcn.00418df3
push edx
push edx
sub eax, 1
je 0x412e89
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], str.NoOSCheck
call fcn.00418df3
push esi
push esi
sub eax, 1
je 0x412ed3
call fcn.00418e10
test ebx, ebx
je 0x41258b
jmp 0x4125b4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp], eax
call fcn.00407800
push eax
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], str.Windows_11
call fcn.0042db30
test eax, eax
je 0x412e5e
xor edi, edi
mov dword [esp + 4], edi
mov dword [esp], str.NoOSCheck
call fcn.00418df3
push ebp
push ebp
call fcn.00418e10
jmp 0x4125b4
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_setup_configuration_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
call fcn.0042d740
mov dword [esp], 0x4e3b94
call fcn.0042daa0
sub esp, 4
mov eax, dword [0x4ef2d0]
mov eax, dword [eax + 8]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 8
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
jmp 0x4138ec
call fcn.0042d740
mov eax, dword [0x4ef2d0]
mov eax, dword [eax + 8]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], 0x4e3b8c
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 8
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
jmp 0x41393c
mov dword [esp + 4], str.HKEY_LOCAL_MACHINE
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.0042db30
test eax, eax
je 0x412fe0
mov eax, dword [0x4ef2d0]
mov dword [eax + 0xc], 0x80000002
mov dword [eax + 0x10], 0
jmp 0x4139c0
mov dword [esp + 4], str.HKEY_USERS
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.0042db30
test eax, eax
je 0x41300e
mov eax, dword [0x4ef2d0]
mov dword [eax + 0xc], 0x80000003
xor edx, edx
mov dword [eax + 0x10], edx
jmp 0x4139c0
mov dword [esp + 4], str.HKEY_CURRENT_CONFIG
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.0042db30
test eax, eax
je 0x41303c
mov eax, dword [0x4ef2d0]
mov dword [eax + 0xc], 0x80000005
xor edi, edi
mov dword [eax + 0x10], edi
jmp 0x4139c0
mov dword [esp + 4], str.HKEY_CLASSES_ROOT
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.0042db30
test eax, eax
je 0x4139c0
mov eax, dword [0x4ef2d0]
mov dword [eax + 0xc], 0x80000000
xor esi, esi
mov dword [eax + 0x10], esi
jmp 0x4139c0
call fcn.0042d740
call fcn.0042d740
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042b950
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
sub ebx, 1
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042bef0
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.0042da10
sub esp, 8
jmp 0x413bf6
call fcn.0042d740
call fcn.0042d740
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042b950
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
sub ebx, 1
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042bf70
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
jmp 0x413c42
lea ecx, [esp + 0x74]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov edx, dword [esp + 0x80]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.ADVAPI32.dll_RegQueryValueExW
sub esp, 0x18
test eax, eax
jne 0x413c7d
mov esi, dword [esp + 0x74]
test esi, esi
jne 0x4131cd
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x74]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], esi
lea ecx, [esp + 0x78]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0
mov edx, dword [esp + 0x80]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.ADVAPI32.dll_RegQueryValueExW
sub esp, 0x18
mov ebx, eax
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call sub.ADVAPI32.dll_RegCloseKey
sub esp, 4
test ebx, ebx
jne 0x4131e5
mov eax, dword [esp + 0x78]
cmp eax, 3
je 0x4131f2
sub eax, 1
cmp eax, 0xa
ja case.0x4131c6.3
jmp dword [eax*4 + section..rdata]
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.0042d240
push ebx
mov esi, eax
test eax, eax
jne 0x413166
jmp 0x413c7d
mov dword [esp], esi
call fcn.0042d2f0
jmp 0x413c89
mov eax, dword [esp + 0x74]
cmp eax, 0x830
jg 0x4132cb
mov eax, dword [esp + 0x74]
cmp eax, ebx
jle 0x41339f
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042daa0
push edi
mov dword [esp], 0x4e3e58
call fcn.0042daa0
push eax
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
lea eax, [ebx + esi]
mov dword [esp], eax
call fcn.0042d3a0
push edx
mov edi, eax
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp], edi
sar edi, 0x1f
mov dword [esp + 4], edi
call fcn.0042c360
sub esp, 0xc
call fcn.0042d890
mov edi, eax
call fcn.0042d790
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x4e3de4
mov dword [esp + 4], 2
mov dword [esp], edi
call fcn.0042c3e0
sub esp, 0x10
call fcn.0042d790
mov dword [esp], 0x4e3e08
call fcn.0042daa0
push ecx
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
push edi
push edi
add ebx, 1
jmp 0x413201
lea ebx, [esi + 0x830]
lea esi, [esi]
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], 0x4e3e58
call fcn.0042daa0
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
mov dword [esp], esi
call fcn.0042d3a0
sub esp, 4
mov edi, eax
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp], edi
sar edi, 0x1f
mov dword [esp + 4], edi
call fcn.0042c360
sub esp, 0xc
call fcn.0042d890
mov edi, eax
call fcn.0042d790
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x4e3de4
mov dword [esp + 4], 2
mov dword [esp], edi
call fcn.0042c3e0
sub esp, 0x10
call fcn.0042d790
mov dword [esp], 0x4e3e08
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
add esi, 1
cmp ebx, esi
jne 0x4132d8
call fcn.0042d740
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042b950
push edx
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
sub ebx, 1
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042bf70
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
push ecx
push ecx
jmp 0x41344c
call fcn.0042d740
call fcn.0042d740
mov dword [esp], esi
call fcn.0042d5a0
push ebx
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp], ebx
sar ebx, 0x1f
mov dword [esp + 4], ebx
call fcn.0042bba0
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
push eax
push eax
mov dword [esp], esi
call fcn.0042d2f0
push eax
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042daa0
push eax
call fcn.0042d890
jmp 0x413ca5
xor ecx, ecx
mov dword [esp + 8], ecx
mov dword [esp + 4], ecx
mov dword [esp], esi
call sub.KERNEL32.dll_ExpandEnvironmentStringsW
sub esp, 0xc
test eax, eax
jle case.0x4131c6.3
add eax, 1
lea edi, [eax + eax]
mov dword [esp], edi
call fcn.0042d240
push edx
mov ebx, eax
test eax, eax
je case.0x4131c6.3
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.KERNEL32.dll_ExpandEnvironmentStringsW
sub esp, 0xc
test eax, eax
jne 0x4134bb
mov dword [esp], ebx
call fcn.0042d2f0
push eax
jmp case.0x4131c6.3
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], ebx
call fcn.0042d280
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
push eax
push eax
jmp 0x4134b0
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042daa0
push eax
mov dword [esp], 0x4e4038
call fcn.0042daa0
push eax
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042da10
push edi
push edi
add ebx, 2
mov eax, dword [esp + 0x74]
cmp eax, ebx
jle 0x4135d4
call fcn.0042d740
call fcn.0042d740
lea edi, [ebx + esi]
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0042d280
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4ef2d4
call fcn.0042db30
test eax, eax
jne 0x4134f9
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042daa0
push eax
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], edi
call fcn.0042d280
sub esp, 0xc
call fcn.0042d790
jmp 0x41351b
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042bef0
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e4038
call fcn.0042db30
test eax, eax
je case.0x4131c6.3
call fcn.0042d740
call fcn.0042d740
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042b950
push ebx
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
sub ebx, 1
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042bf70
sub esp, 0xc
jmp 0x413429
call fcn.0042d740
call fcn.0042d740
mov dword [esp], esi
call fcn.0042d5b0
push ecx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
call fcn.0042d790
mov dword [esp + 8], eax
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x34]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.0042bba0
sub esp, 0xc
jmp 0x413429
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], esi
call fcn.0042d310
push eax
push eax
jmp 0x413429
call fcn.0042d740
call fcn.0042d740
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042b950
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
sub ebx, 1
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042bef0
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
jmp 0x413daa
call fcn.0042d740
call fcn.0042d740
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042b950
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
sub ebx, 1
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042bf70
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
jmp 0x413df9
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
lea ecx, [esp + 0x6c]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0
mov edx, dword [esp + 0x94]
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.ADVAPI32.dll_RegQueryValueExW
sub esp, 0x18
mov ebx, eax
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call sub.ADVAPI32.dll_RegCloseKey
sub esp, 4
test ebx, ebx
jne 0x413e37
mov ebx, dword [esp + 0x6c]
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
test ebx, ebx
je 0x413e5b
call fcn.0042d740
mov eax, dword [esp + 0x60]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 0x20
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
mov dword [esp], ebp
call fcn.004234b0
sub esp, 4
test eax, eax
jne 0x413f1a
mov eax, dword [0x4ef2cc]
mov dword [esp], eax
call fcn.00427867
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00423740
sub esp, 8
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 8
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef2d0]
mov ebx, dword [eax + 8]
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.0042bf70
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b94
call fcn.0042db30
test eax, eax
je 0x412f10
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef2d0]
mov ebx, dword [eax + 8]
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], ebx
call fcn.0042bef0
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b8c
call fcn.0042db30
test eax, eax
je 0x412f60
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00423740
sub esp, 8
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x58]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
mov dword [esp + 0x64], 0
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
lea eax, [esp + 0x64]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov dword [esp + 4], str.HKEY_CURRENT_USER
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.0042db30
test eax, eax
je 0x412fb0
mov eax, dword [0x4ef2d0]
mov dword [eax + 0xc], 0x80000001
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x64]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00423740
sub esp, 8
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 0x14
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00423740
sub esp, 8
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 0x18
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.00423740
sub esp, 8
call fcn.0042d890
mov ebx, eax
mov esi, dword [0x4ef0c0]
mov edi, dword [0x4ef0c4]
mov edx, dword [0x4ef134]
mov dword [esp + 0x30], edx
mov ecx, dword [0x4ef0fc]
mov dword [esp + 0x2c], ecx
call fcn.0042d790
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], 0x4ef2d4
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.00405e30
sub esp, 0x1c
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef2d0]
add eax, 0x1c
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
call fcn.0042d740
mov eax, dword [0x4ef2d0]
mov eax, dword [eax + 0x1c]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x5c]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
mov eax, dword [0x4ef2d0]
mov dword [esp + 0x2c], eax
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef2d0]
mov esi, dword [eax + 0xc]
mov ebx, dword [eax + 0x14]
mov edi, dword [eax + 0x18]
call fcn.0042d790
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], edi
mov dword [esp], eax
call fcn.0042d660
sub esp, 4
call fcn.0042d6e0
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov edi, dword [esp + 0x38]
mov dword [esp], edi
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x78], 0
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042bf70
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b90
call fcn.0042db30
test eax, eax
jne 0x413070
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042bef0
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b90
call fcn.0042db30
test eax, eax
jne 0x4130c8
lea eax, [esp + 0x70]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x20019
mov dword [esp + 8], 0
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.ADVAPI32.dll_RegOpenKeyExW
sub esp, 0x14
test eax, eax
mov eax, dword [esp + 0x70]
je 0x413120
test eax, eax
je 0x413c8c
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call sub.ADVAPI32.dll_RegCloseKey
sub esp, 4
call fcn.0042d740
mov dword [esp], 0x4ef2d4
call fcn.0042daa0
sub esp, 4
call fcn.0042d890
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x60]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
mov eax, dword [0x4ef2d0]
mov esi, dword [eax + 0xc]
mov edx, dword [eax + 0x18]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x80], eax
mov dword [esp + 0x94], edx
call fcn.0042d6e0
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
lea eax, [esp + 0x80]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x94]
mov dword [esp + 4], eax
lea eax, [esp + 0x94]
mov dword [esp], eax
call fcn.0042d910
sub esp, 8
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042bf70
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b90
call fcn.0042db30
test eax, eax
jne 0x4136d0
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042bef0
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b90
call fcn.0042db30
test eax, eax
jne 0x413730
lea eax, [esp + 0x68]
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0x20019
mov dword [esp + 8], 0
mov eax, dword [esp + 0x80]
mov dword [esp + 4], eax
mov dword [esp], esi
call sub.ADVAPI32.dll_RegOpenKeyExW
sub esp, 0x14
test eax, eax
mov eax, dword [esp + 0x68]
je 0x413790
test eax, eax
jne 0x413e70
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x94]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [0x4ef2cc]
mov dword [esp], eax
call fcn.0042781e
sub esp, 4
jmp 0x413edd
mov eax, dword [esp + 0x68]
mov dword [esp], eax
call sub.ADVAPI32.dll_RegCloseKey
sub esp, 4
jmp 0x413e37
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef2d0]
mov ebx, dword [eax + 8]
mov esi, dword [eax + 0x20]
call fcn.0042d790
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov dword [esp + 4], ebx
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call fcn.0042b410
sub esp, 0x14
call fcn.0042d790
mov dword [esp + 4], eax
lea eax, [esp + 0x5c]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
mov eax, dword [0x4ef2cc]
mov dword [esp], eax
call fcn.00427833
sub esp, 4
test eax, eax
jne 0x413e88
mov edi, dword [esp + 0x2c]
add edi, 8
mov dword [esp + 4], edi
mov eax, dword [0x4ef2cc]
mov dword [esp], eax
call fcn.004279b6
sub esp, 8
call fcn.0042d740
mov eax, dword [esp + 0x5c]
jmp 0x413818
mov ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
mov dword [esp], eax
call fcn.004232a0
sub esp, 4
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x60]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
call fcn.0040f080
call fcn.0040f2b0
call fcn.0040fd20
call fcn.0042d6e0
mov dword [0x4ef1c4], 0
cmp dword [0x4ef194], 1
je 0x413fd3
call fcn.00410340
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
cmp dword [0x4ef164], 1
jne 0x416148
xor ecx, ecx
mov dword [0x4ef0cc], ecx
call fcn.00408a30
xor ebx, ebx
mov dword [esp + 4], ebx
mov dword [esp], ebx
call fcn.004219b9
push esi
push esi
jmp 0x416148
mov eax, dword [0x4ef0bc]
mov dword [esp], eax
call fcn.0042bfe0
push edx
mov dword [esp + 0x10], 0x4ef284
mov dword [esp + 0xc], 0x4eba7c
mov dword [esp + 8], 8
add eax, 1
mov dword [esp + 4], eax
mov dword [esp], 4
call fcn.004265af
sub esp, 0x14
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
push ecx
mov dword [esp], str.Serials.dat
call fcn.0042daa0
push ebx
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
xor esi, esi
mov dword [esp], esi
call fcn.004231e0
push edi
push edi
mov ebx, eax
call fcn.0042d7f0
test ebx, ebx
je 0x4140c0
lea esi, [esi]
mov dword [esp], 0
call fcn.004234b0
sub esp, 4
test eax, eax
jne 0x4140ee
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0
call fcn.00423740
sub esp, 8
call fcn.0042d790
mov dword [esp + 4], eax
mov edx, dword [0x4ef1c4]
mov eax, dword [0x4ef284]
lea eax, [eax + edx*4]
mov dword [esp], eax
call fcn.0042da10
sub esp, 8
add dword [0x4ef1c4], 1
jmp 0x414060
mov dword [esp + 8], 0x10
mov dword [esp + 4], str.Setup_Error__nCould_not_initialize_setup_configuration_
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
call fcn.00408410
call fcn.0040f050
xor edi, edi
mov dword [esp], edi
call fcn.004232a0
push eax
jmp 0x413f81
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
jmp 0x416169
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x56
call fcn.0041c7c1
sub esp, 8
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4ef2d4
call fcn.0042db30
mov ebx, eax
test eax, eax
je 0x414180
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
jmp 0x41617f
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x56
call fcn.0041c7c1
sub esp, 8
call fcn.0042d890
mov esi, eax
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], esi
call fcn.004262e0
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef12c
call fcn.0042da10
sub esp, 8
mov dword [0x4ef204], 0
lea esi, [esi]
mov dword [0x4ef1ec], ebx
mov eax, dword [0x4ef284]
mov dword [esp], eax
call fcn.00426757
sub esp, 4
mov edx, eax
mov eax, dword [0x4ef1ec]
cmp eax, edx
jg 0x414248
mov edx, dword [0x4ef12c]
mov dword [esp + 4], edx
mov edx, dword [0x4ef284]
mov eax, dword [edx + eax*4]
mov dword [esp], eax
call fcn.0042db30
test eax, eax
jne 0x414278
mov eax, dword [0x4ef1ec]
lea ebx, [eax + 1]
jmp 0x4141f8
mov eax, dword [0x4ef204]
test eax, eax
jle 0x414162
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
jmp 0x41617f
mov eax, dword [0x4ef204]
add eax, 1
mov dword [0x4ef204], eax
jmp 0x41424d
mov eax, dword [0x4ef1e4]
mov dword [esp + 0x7c], eax
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.0042d910
sub esp, 8
mov eax, dword [esp + 0x7c]
mov dword [esp + 4], eax
mov dword [esp], 0x58
call fcn.0041f83e
sub esp, 8
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0042db00
sub esp, 4
jmp 0x4161b0
call fcn.00424259
test eax, eax
jne 0x4161b0
call fcn.004202e5
mov dword [0x4ef25c], eax
cmp eax, 0x3c
je 0x414312
cmp eax, 1
je 0x414312
cmp eax, 0x26
je 0x414312
jg 0x414380
cmp eax, 2
je 0x414312
cmp eax, 0x1e
jne 0x4161b0
mov dword [esp], eax
call fcn.0041f68d
sub esp, 4
mov dword [esp], eax
call sub.USER32.dll_IsWindowEnabled
sub esp, 4
cmp eax, 1
jne 0x4161b0
mov eax, dword [0x4ef25c]
mov dword [esp], eax
call fcn.0041f68d
sub esp, 4
mov dword [esp], eax
call sub.USER32.dll_IsWindowVisible
sub esp, 4
cmp eax, 1
jne 0x4161b0
mov dword [esp + 0xc], 0x3338
mov eax, dword [0x4ef25c]
mov dword [esp + 8], eax
xor edx, edx
mov dword [esp + 4], edx
mov dword [esp], 0x332c
call fcn.004241b7
sub esp, 0x10
jmp 0x4161b0
lea edx, [eax - 0x47]
and edx, 0xfffffffd
jne 0x4161b0
jmp 0x414312
call fcn.00424268
cmp eax, 0x47
je 0x4143e0
cmp eax, 0x49
jne 0x4161b0
mov dword [esp + 8], 0x21
mov eax, dword [0x4ef288]
mov eax, dword [eax + 0x10]
mov dword [esp + 4], eax
mov dword [esp], str.Setup
call fcn.00417bc0
sub esp, 0xc
cmp eax, 1
jne 0x4161b0
call fcn.00408410
call fcn.0040f050
call fcn.0042d740
call fcn.0042d740
mov dword [esp], 0x45
call fcn.0041f889
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], 0x45
call fcn.0042045c
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef108
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov eax, dword [0x4ef108]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str..ifl
call fcn.0042daa0
sub esp, 4
call fcn.0042d890
mov dword [esp], eax
call fcn.00418b11
sub esp, 4
mov ebx, eax
call fcn.0042d7f0
test ebx, ebx
jne 0x4144ab
mov dword [esp + 8], 0x10
mov eax, dword [0x4ef288]
mov eax, dword [eax + 0x14]
mov dword [esp + 4], eax
mov dword [esp], str.Error
call fcn.00417bc0
sub esp, 0xc
jmp 0x4161b0
call fcn.0042d740
mov eax, dword [0x4ef218]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov eax, dword [0x4ef108]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], str..ifl
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef10c
call fcn.0042da10
sub esp, 8
mov dword [esp], str.Main
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Title
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef138
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
mov ebx, dword [0x4ef138]
mov esi, dword [0x4ef0c0]
call fcn.0042d790
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov dword [esp + 4], str._appname_
mov dword [esp], ebx
call fcn.0042b410
sub esp, 0x14
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef138
call fcn.0042da10
sub esp, 8
mov dword [esp], str.Gadgets
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.NextBtn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef124
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.CancelBtn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1b8
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.BackBtn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef188
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.FinishBtn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef254
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.BrowseBtn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1c0
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.AcceptOptn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1f8
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.DoNotAcceptOptn
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef118
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.CreateStartMenuFolderCbx
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1bc
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.CreateDesktopIconCbx
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef13c
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.LaunchProgramCbx
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0f0
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.RebootCbx
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef144
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.DestinationFolderFR3
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0e8
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.SelAppFolder
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1d8
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.SelStartMenuFolder
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1d4
call fcn.0042da10
sub esp, 8
mov dword [esp], 0x4e21a0
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.ExitSetupH
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef100
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.ExitSetup
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef148
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.CouldNotExtractFileH
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef250
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.CouldNotExtractFile
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef234
call fcn.0042da10
sub esp, 8
mov dword [esp], str.Start
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Title
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0ec
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef224
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
mov ebx, dword [0x4ef0ec]
mov esi, dword [0x4ef0c0]
call fcn.0042d790
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov dword [esp + 4], str._appname_
mov dword [esp], ebx
call fcn.0042b410
sub esp, 0x14
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0ec
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
mov ebx, dword [0x4ef224]
mov esi, dword [0x4ef0c0]
call fcn.0042d790
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 1
mov dword [esp + 8], esi
mov dword [esp + 4], str._appname_
mov dword [esp], ebx
call fcn.0042b410
sub esp, 0x14
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef224
call fcn.0042da10
sub esp, 8
mov dword [esp], str.LicenceAgreement
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadT
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef19c
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadB
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1a4
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef17c
call fcn.0042da10
sub esp, 8
mov dword [esp], str.ApplicationFolder
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadT
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0f4
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadB
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef104
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0dc
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text2
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0d8
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text3
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0d4
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text4
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0d0
call fcn.0042da10
sub esp, 8
mov dword [esp], str.StartMenuFolder
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadT
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef14c
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadB
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef15c
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef120
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text2
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef11c
call fcn.0042da10
sub esp, 8
mov dword [esp], str.AdditionalTasks
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadT
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef178
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadB
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef184
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef158
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text2
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef154
call fcn.0042da10
sub esp, 8
mov dword [esp], str.Installing
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadT
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1e8
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadB
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1f4
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1d0
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text2
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1cc
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text3
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef1c8
call fcn.0042da10
sub esp, 8
mov dword [esp], str.Finish
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Title
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef114
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef0c8
call fcn.0042da10
sub esp, 8
mov dword [esp], str.SerialCheck
call fcn.00418b4f
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadT
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef22c
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.HeadB
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef230
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text1
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef210
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text2
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef20c
call fcn.0042da10
sub esp, 8
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 0x4ef2d4
mov dword [esp], str.Text3
call fcn.00418c43
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef208
call fcn.0042da10
sub esp, 8
call fcn.00418e10
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.004219b9
sub esp, 8
mov dword [0x4ef0cc], 0
call fcn.00408a30
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004219b9
sub esp, 8
lea esi, [esi]
mov dword [esp], 1
call fcn.0041ceb2
sub esp, 4
jmp 0x4161b0
mov dword [esp], 0x14
call fcn.0041f889
sub esp, 4
cmp eax, 1
je 0x4161c7
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
mov eax, dword [0x4ef0cc]
jmp 0x4161e3
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x3c
call fcn.0041f6a9
sub esp, 8
mov eax, dword [0x4ef0cc]
jmp 0x4161ec
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
jmp 0x4161f4
call fcn.00424268
cmp eax, 0x1e
je 0x4154c0
cmp eax, 0x26
je 0x415670
cmp eax, 0x3c
je 0x4157e0
cmp eax, 1
je 0x415a70
cmp eax, 2
je 0x4160d8
mov eax, dword [0x4ef150]
jmp 0x416204
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], str.ProgramFiles
call fcn.00417f55
sub esp, 8
call fcn.0042dc60
mov esi, dword [0x4ef1d8]
call fcn.0042d890
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov dword [esp], esi
call fcn.00417c6e
sub esp, 0xc
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef140
call fcn.0042da10
sub esp, 8
mov eax, dword [0x4ef140]
mov dword [esp + 4], eax
mov dword [esp], 0x4ef2d4
call fcn.0042db30
test eax, eax
jne 0x4154ae
mov eax, dword [0x4ef134]
mov dword [esp + 4], eax
mov dword [esp], 0x4ef2d4
call fcn.0042db30
test eax, eax
jne 0x415650
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef140]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov eax, dword [0x4ef134]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], 0x4e3b90
call fcn.0042daa0
sub esp, 4
mov eax, dword [0x4ef0c0]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], 0x1d
call fcn.0041f83e
sub esp, 8
call fcn.0042d7f0
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef0d0]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], 0x4e3f00
call fcn.0042daa0
sub esp, 4
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov eax, dword [0x4ef140]
mov dword [esp], eax
call fcn.00408030
sub esp, 8
call fcn.0042d790
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], 0x20
call fcn.0041f83e
sub esp, 8
call fcn.0042d7f0
mov eax, dword [0x4ef150]
jmp 0x416204
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef140]
mov dword [esp], eax
jmp 0x415599
call fcn.0042d740
call fcn.0042d740
mov ebx, dword [0x4ef1d4]
mov esi, dword [0x4ef248]
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.00408270
sub esp, 0xc
mov dword [esp], 0x4e3b90
call fcn.0042daa0
sub esp, 4
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef140
call fcn.0042da10
sub esp, 8
mov eax, dword [0x4ef140]
mov dword [esp + 4], eax
mov dword [esp], 0x4ef2d4
call fcn.0042db30
test eax, eax
jne 0x4154ae
mov eax, dword [0x4ef134]
mov dword [esp + 4], eax
mov dword [esp], 0x4ef2d4
call fcn.0042db30
test eax, eax
jne 0x41579b
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef244]
mov dword [esp], eax
call fcn.0042b950
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
add ebx, 2
mov dword [esp + 4], ebx
mov eax, dword [0x4ef140]
mov dword [esp], eax
call fcn.0042ba10
sub esp, 0xc
mov eax, dword [0x4ef134]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
mov dword [esp], 0x4e3b90
call fcn.0042daa0
sub esp, 4
mov eax, dword [0x4ef0c0]
mov dword [esp], eax
call fcn.0042daa0
sub esp, 4
call fcn.0042dc60
call fcn.0042d890
mov dword [esp + 4], eax
mov dword [esp], 0x25
call fcn.0041f83e
sub esp, 8
call fcn.0042d7f0
mov eax, dword [0x4ef150]
jmp 0x416204
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
mov eax, dword [0x4ef244]
mov dword [esp], eax
call fcn.0042b950
sub esp, 4
mov ebx, eax
call fcn.0042d790
mov dword [esp + 8], eax
add ebx, 2
mov dword [esp + 4], ebx
mov eax, dword [0x4ef140]
mov dword [esp], eax
call fcn.0042ba10
sub esp, 0xc
jmp 0x41575f
mov dword [esp + 4], 1
mov dword [esp], 3
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0xa
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x1a
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x2a
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x2c
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x34
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x4b
call fcn.0041ceed
sub esp, 8
mov edx, dword [0x4ef0cc]
cmp edx, 1
je 0x415960
cmp edx, 2
je 0x4159c0
cmp edx, 3
je 0x4159d1
cmp edx, 4
je 0x4159f2
cmp edx, 5
jne 0x41596c
mov dword [0x4ef0cc], 4
mov eax, dword [0x4ef240]
or eax, dword [0x4ef24c]
jne 0x415a13
mov dword [0x4ef0cc], 3
cmp dword [0x4ef18c], 0
jne 0x415dfa
mov dword [0x4ef0cc], 2
mov eax, dword [0x4ef194]
test eax, eax
jne 0x415a4f
mov dword [0x4ef0cc], 1
mov eax, dword [0x4ef160]
test eax, eax
jne 0x415a2e
mov dword [0x4ef0cc], 0
mov dword [esp + 4], 0
mov dword [esp], 3
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x3c
call fcn.0041ceed
sub esp, 8
mov eax, dword [0x4ef150]
jmp 0x416204
mov dword [0x4ef0cc], 0
xor edx, edx
mov eax, dword [0x4ef160]
test eax, eax
jne 0x415a1d
cmp edx, 1
je 0x415914
test edx, edx
je 0x41591e
cmp edx, 2
je 0x415a4f
cmp edx, 3
je 0x415dfa
mov eax, dword [0x4ef150]
cmp edx, 4
jne 0x416204
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], 0x2c
call fcn.0041ceed
push eax
push eax
mov eax, dword [0x4ef150]
jmp 0x416204
mov dword [0x4ef0cc], 1
mov edx, 1
jmp 0x41596c
mov dword [0x4ef0cc], 2
cmp dword [0x4ef194], 0
je 0x4158fd
mov edx, 2
jmp 0x41596c
mov dword [0x4ef0cc], 3
cmp dword [0x4ef18c], 0
je 0x4158e6
mov edx, 3
jmp 0x41596c
mov edx, 4
jmp 0x41596c
test edx, edx
je 0x41591e
cmp edx, 1
jne 0x415982
mov dword [esp + 4], 0
mov dword [esp], 0xa
call fcn.0041ceed
sub esp, 8
mov eax, dword [0x4ef150]
jmp 0x416204
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], 0x4b
call fcn.0041ceed
push eax
push eax
mov eax, dword [0x4ef150]
jmp 0x416204
cmp dword [0x4ef0cc], 7
jne 0x415ae0
mov eax, dword [0x4ef1dc]
cmp eax, 1
je 0x415e36
cmp eax, 2
je 0x415f24
mov dword [esp + 4], 1
mov dword [esp], 0
call fcn.004219b9
sub esp, 8
call fcn.00408410
call fcn.0040b830
mov eax, dword [0x4ef29c]
mov dword [esp], eax
call sub.KERNEL32.dll_HeapDestroy
sub esp, 4
mov eax, dword [0x4ef2a0]
mov dword [esp], eax
call sub.KERNEL32.dll_ExitProcess
mov dword [esp + 4], 1
mov dword [esp], 3
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0xa
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x1a
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x2a
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x2c
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x34
call fcn.0041ceed
sub esp, 8
mov dword [esp + 4], 1
mov dword [esp], 0x4b
call fcn.0041ceed
sub esp, 8
mov eax, dword [0x4ef0cc]
test eax, eax
je 0x415bcb
cmp eax, 1
je 0x415ca2
cmp eax, 2
je 0x415d48
cmp eax, 3
je 0x415d5c
cmp eax, 4
je 0x415d70
cmp eax, 5
jne 0x415cb1
mov dword [0x4ef0cc], 6
mov eax, 6
jmp 0x415cb1
mov dword [0x4ef0cc], 1
mov dword [esp + 4], 0
mov dword [esp], 0x3c
call fcn.0041ceed
sub esp, 8
mov edi, dword [0x4ef160]
test edi, edi
jne 0x415d84
mov eax, dword [0x4ef194]
cmp dword [0x4ef0cc], 1
jne 0x415d84
mov dword [0x4ef0cc], 2
test eax, eax
jne 0x415dc6
mov dword [0x4ef0cc], 3
mov esi, dword [0x4ef18c]
mov ecx, dword [0x4ef130]
mov edx, 3
test esi, esi
jne 0x41625e
mov dword [0x4ef0cc], 4
mov ecx, dword [0x4ef130]
mov eax, dword [0x4ef240]
or eax, dword [0x4ef24c]
jne 0x416259
mov dword [0x4ef0cc], 5
test ecx, ecx
je 0x415d07
mov dword [esp], 0x3d
call fcn.0041f889
push edi
mov edx, dword [0x4ef0cc]
test eax, eax
jne 0x415d97
mov eax, dword [0x4ef0cc]
lea edx, [eax + 1]
mov dword [0x4ef0cc], edx
jmp 0x415d97
mov dword [0x4ef0cc], 2
mov eax, 2
mov edx, eax
mov ebx, dword [0x4ef194]
test ebx, ebx
jne 0x415cc6
cmp eax, 2
je 0x415c1e
mov ecx, dword [0x4ef18c]
test ecx, ecx
jne 0x415cd9
cmp eax, 3
je 0x415c41
mov ecx, dword [0x4ef130]
mov ebx, dword [0x4ef240]
or ebx, dword [0x4ef24c]
jne 0x415cf6
cmp eax, 4
je 0x415c62
test ecx, ecx
jne 0x415d8e
cmp eax, 5
jne 0x415d97
mov dword [0x4ef0cc], 6
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], 0x34
call fcn.0041ceed
push ebx
push ebx
xor esi, esi
mov dword [esp + 4], esi
mov dword [esp], 0x40b890
call fcn.00416d5a
push edi
push edi
mov dword [0x4ef264], eax
mov eax, dword [0x4ef150]
jmp 0x416204
mov dword [0x4ef0cc], 3
mov eax, 3
jmp 0x415cb1
mov dword [0x4ef0cc], 4
mov eax, 4
jmp 0x415cb1
mov dword [0x4ef0cc], 5
mov eax, 5
jmp 0x415cb1
mov eax, dword [0x4ef0cc]
jmp 0x415cb1
cmp eax, 5
je 0x415c74
cmp edx, 1
je 0x415a2e
cmp edx, 2
je 0x415dc6
cmp edx, 3
je 0x415dfa
cmp edx, 4
je 0x4159a2
cmp edx, 5
je 0x415e18
cmp edx, 6
jne 0x4154ae
jmp 0x415d11
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], 0x4b
call fcn.0041ceed
push ebx
push ebx
mov dword [esp + 4], 1
mov dword [esp], 1
call fcn.0041f6a9
push esi
push esi
mov eax, dword [0x4ef150]
jmp 0x416204
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], 0x1a
call fcn.0041ceed
push edx
push edx
mov eax, dword [0x4ef150]
jmp 0x416204
xor eax, eax
mov dword [esp + 4], eax
mov dword [esp], 0x2a
call fcn.0041ceed
push eax
push eax
mov eax, dword [0x4ef150]
jmp 0x416204
mov dword [esp], 0x44
call fcn.0041f889
push edx
sub eax, 1
jne 0x415a90
call fcn.0042d6e0
mov ecx, 4
xor eax, eax
lea edi, [esp + 0x94]
rep stosd dword es:[edi], eax
xor eax, eax
mov dword [esp + 0x80], eax
call sub.KERNEL32.dll_GetCurrentProcess
lea ecx, [esp + 0x80]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x28
mov dword [esp], eax
call sub.ADVAPI32.dll_OpenProcessToken
sub esp, 0xc
test eax, eax
je 0x415a90
lea eax, [esp + 0x98]
mov dword [esp + 8], eax
mov dword [esp + 4], str.SeShutdownPrivilege
xor ebx, ebx
mov dword [esp], ebx
call sub.ADVAPI32.dll_LookupPrivilegeValueW
sub esp, 0xc
mov dword [esp + 0x94], 1
mov dword [esp + 0xa0], 2
mov eax, dword [esp + 0x80]
xor esi, esi
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], esi
lea ecx, [esp + 0x94]
mov dword [esp + 8], ecx
xor edi, edi
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.ADVAPI32.dll_AdjustTokenPrivileges
sub esp, 0x18
call sub.KERNEL32.dll_GetLastError
test eax, eax
jne 0x415a90
mov dword [esp + 4], 0x80040002
mov dword [esp], 2
call sub.USER32.dll_ExitWindowsEx
push ecx
push ecx
jmp 0x415a90
mov dword [esp], 0x44
call fcn.0041f889
push edx
sub eax, 1
jne 0x415a90
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x1d
call fcn.0041c7c1
push eax
push eax
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef21c
call fcn.0042da10
push eax
push eax
call fcn.0042d740
call fcn.0042d740
call fcn.0042d790
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov eax, dword [0x4ef21c]
mov dword [esp], eax
call fcn.0042bef0
sub esp, 0xc
call fcn.0042dc60
call fcn.0042d840
mov dword [esp + 4], eax
mov dword [esp], 0x4e3b90
call fcn.0042db30
test eax, eax
je 0x416096
call fcn.0042d740
call fcn.0042d740
mov ebx, dword [0x4ef190]
mov esi, dword [0x4ef0c0]
mov edi, dword [0x4ef0c4]
mov edx, dword [0x4ef134]
mov dword [esp + 0x30], edx
mov ecx, dword [0x4ef0fc]
mov dword [esp + 0x2c], ecx
call fcn.0042d790
mov dword [esp + 0x18], eax
mov eax, dword [0x4ef21c]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], edx
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.00405e30
sub esp, 0x1c
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef190
call fcn.0042da10
push esi
push esi
call fcn.0042d740
call fcn.0042d740
call fcn.0042d740
mov ebx, dword [0x4ef190]
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], ebx
call fcn.00422c28
push edi
push edi
call fcn.0042dc60
mov ebx, dword [0x4ef190]
mov esi, dword [0x4ef1e0]
call fcn.0042d890
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], ebx
call fcn.00417ff2
sub esp, 0xc
call fcn.0042d7f0
jmp 0x415a90
call fcn.0042d740
mov eax, dword [0x4ef21c]
mov dword [esp], eax
call fcn.0042daa0
push eax
mov dword [esp], 0x4e3b90
call fcn.0042daa0
push eax
call fcn.0042d790
mov dword [esp + 4], eax
mov dword [esp], 0x4ef21c
call fcn.0042da10
push eax
push eax
jmp 0x415fbf
mov dword [esp + 8], 0x21
mov eax, dword [0x4ef148]
mov dword [esp + 4], eax
mov eax, dword [0x4ef100]
mov dword [esp], eax
call fcn.00417bc0
sub esp, 0xc
cmp eax, 1
jne 0x4154ae
call fcn.00408410
call fcn.0040f050
call fcn.00408410
call fcn.0040b830
mov eax, dword [0x4ef29c]
mov dword [esp], eax
call sub.KERNEL32.dll_HeapDestroy
sub esp, 4
mov eax, dword [0x4ef2a0]
mov dword [esp], eax
call sub.KERNEL32.dll_ExitProcess
call fcn.00421b25
mov dword [0x4ef150], eax
call fcn.00424277
mov dword [0x4ef23c], eax
cmp dword [0x4ef0cc], 7
je 0x414100
cmp dword [0x4ef194], 1
jne 0x41617f
cmp dword [0x4ef0cc], 2
je 0x414120
mov eax, dword [0x4ef150]
cmp eax, 0x10000
je 0x414290
cmp eax, 0x10001
je 0x4153c8
cmp eax, 0x332d
je 0x4142d8
cmp eax, 0x332c
je 0x414390
mov eax, dword [0x4ef0cc]
cmp eax, 1
jne 0x4161e3
cmp dword [0x4ef160], 1
je 0x4153e0
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.0041f6a9
sub esp, 8
mov eax, dword [0x4ef0cc]
cmp eax, 6
je 0x415420
test eax, eax
je 0x415460
mov eax, dword [0x4ef150]
cmp eax, 0x332c
je 0x415480
cmp eax, 0x333c
jne 0x416148
mov ebx, dword [0x4ef23c]
test ebx, ebx
jne 0x416148
cmp dword [0x4ef0cc], 7
je 0x416118
mov dword [esp + 8], 0x21
mov eax, dword [0x4ef148]
mov dword [esp + 4], eax
mov eax, dword [0x4ef100]
mov dword [esp], eax
call fcn.00417bc0
sub esp, 0xc
cmp eax, 1
jne 0x416148
jmp 0x416118
mov edx, 4
test ecx, ecx
jne 0x415da0
jmp 0x415d97