Function at 0x40caa0
Capabilities:
Accept command line arguments
Get common file path
Resume thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x43460b
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x1070
call fcn.00420420
mov eax, dword [0x48e868]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0xfcc], ecx
mov dword [ebp - 4], 0
push 0x400
lea eax, [ebp - 0xc24]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x44
push 0
lea ecx, [ebp - 0xca0]
push ecx
call fcn.0041eef0
add esp, 0xc
mov dword [ebp - 0xfc0], str.SetupWizard.exe
lea edx, [ebp - 0xc24]
mov dword [ebp - 0xfc4], edx
mov byte [ebp - 4], 1
lea eax, [ebp - 0x424]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
lea ecx, [ebp - 0x21c]
push ecx
push 0
push 0x45a0dc
lea edx, [ebp - 0x424]
push edx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
push 1
lea ecx, [ebp - 0xc2c]
call fcn.004087c0
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0xc2c]
call fcn.0040b8d0
mov dword [ebp - 0x1030], str.v7K5DQeyCWvROXKMgDVJAY964yady8SvREHQThoE9JAAWrO39PokgfYCo7sTc5mxUNafa55nYPc2o01uokVueMYSjQWy34SiGxmsHm4ti0zoudz4d4ILO1FsVhvxhJcf7iQXmn8OFYKGHmekHs87XBBWNRM1buwuXVoBFD6i3rxLFpcoRmRKhml4O1f1bpCHVP4xONMUM2uj92hXA6PgYktBg64nSfM8DKbfAN2KCkVO2CKlEqhwWLAqOqbL0vMzwWlxpHHWITWCmfomJyDNH8jtAglFnmVrW6nzoOEKzepSkIxtnbECo2fK2Q3r3I3HcmqOgEMr6KVAgv0G2pmSNm4n1lbGg7hHVeTPF5C0Qg1k6w3PYwSvKMn08heGjX2xVH09kja7so7hnwJEcLq8AHLcHhGeOhwbTlxJqzP2GhDTxquWoQNSTiGaAHfIkwukAJMOE9oqpYjFiEXPqE3NkxyLqL8bfCYXmD4L4enOAgnDe95IJkd3SqwG1j5cRYhqf5F0925ylBzoRfYkoemMYPvriTnUorVmUeU0JGyPWcbbzL7KaRzloEdnlQL7TgLLEt9l4hDDMTXLEXdop1V2lG6Fn8y5mcSXqpIFMQUNpjfugAdX8CAlnHoiMpxIErCANQ0JUpJ0uINkrMnw1NDLur45363vvEAB2MokRSfHR7YKacbtjWfT1yTGNhTvAVHjWqhkscjfvbDSgSpv0AyqJGoBQJtlqP6k4b6IRdALuk7oto6EDvK7LqQ880BerlbCyFgxHHwf5EhvpHwkrF2KFijpFeGWWXDtbGeTUtgtEWx5AghbhdAikMBpGnCRbzqvngs1ScM6JIMuqVbfDwEH5kjUx0PWdyKCdBr9nzMy1csKb5kTFbs3DlLyHsfG3J58paFExdL9ghup5v4N9Wgt4a7MOIhdynbAiyEXTGXYsAkBas3XtOkdS5dSExVavd3WSBUBpxp1GqV4qC9JKXXyVnIW6kEPypWrMl09meQ0aPN5HbwLELrRve2Ut6NCGdrPQVJ2JPNyWlgpcBLg2Y8rBvDu0lkHdfaqQtBLOFVE7GdP7jYpXpR79WKjd0evmlqK5KvbxOoOOPsjDchN5pJKgw39cFr470Abb869a0wcBMRoB3lect6zMTUkqee3JKaqGIVGEpgLqLAm9BXR7R9Ujjj4RObKE7GE6smYGM7uJm95vHWjxDTg6tMuVRd9uELlRYyiCma8pjm5b7evaydd8Ftys1yO6V9ppIy6yS5oMGovRFNODcKw4D5cLeMYuwAa6SbWgE5RDOIbseJXwS38jGR9DHOxW3Xhfo7Adr11ehax3Db6oHp3VzH7hUR0T5cP71QRByhdfVQFVKnJIrXJmkxzCFnOde3fhe7XS8cvfwhwNXoxvueXYjTDFIsydb0lcsDGMHl46sKcOAiXjCdc5op5zo8cpFTOR3tpKRdNsKzwB0BXrsoHcfVWSz3VcjgSztnFNuMrdQqLHMH9gOeMjx28nNpyLaK4jq45luNuqWvJy0arOIePKQ6jUmTohLqcEKjjaEJljSuPv8R6MpWlgJg2vdJnI5urQzS7qMRbceD0J9XItjSPXHpDk2E23yvkM8BlIBe1xfENnsSdO4BVncckEbRq24gEXVfU0NAH0VMmpTgOquFnpE46WJ9en
lea ecx, [ebp - 0xc2c]
call fcn.0040aff0
mov dword [ebp - 0xfc0], eax
mov dword [ebp - 0x1050], str.klDSKVbLlQIAqC089EYhBatDvbArXFslKFYHdJwzzmVVj27oY2diyh6JdME9Xs2rPiYFqoS2L94lczqqtHKfin0ja6m70v8n6JzjnRmtSW4xYA0qUXvlsy8KQmoum4nb5A66STbSp2MFOJxLCdKPsLvefoiVzH56mvfts8H2lh0m91o2SS7QuKlySDvwrl7yte8OrWrjcakDDJx13wFws8WfK4mM4e3d3AeuSC4R1Gi3fyBIsKPT7iNxqg5JKS5UFusKCflxkulycsPktfs1TvwnVmMO8f3HXU4RiIeRdIKAYJaguLJQ4PRoQ5uU2vpPzUH3gMM4ebJ0l186SbjjCbHVhK4nDeiK9DtqD0d7ucn8jiTF4p9hlh62Nfj2jhs8lhL7mMSCAGFL9PkY
lea ecx, [ebp - 0xc2c]
call fcn.0040bff0
jmp 0x40cba8
mov dword [ebp - 4], 0
jmp 0x40cbb8
mov byte [ebp - 4], 3
push 1
lea ecx, [ebp - 0xd58]
call fcn.00410270
push 1
push 0x40
push 0x20
mov ecx, dword [ebp - 0xfc4]
push ecx
lea ecx, [ebp - 0xd58]
call fcn.0040b9c0
mov dword [ebp - 0x1040], eax
mov byte [ebp - 4], 4
push 2
push 0
push 0
lea ecx, [ebp - 0xd58]
call fcn.00411c30
lea edx, [ebp - 0x1080]
push edx
lea ecx, [ebp - 0xd58]
call fcn.004121b0
mov dword [ebp - 0x1024], eax
mov ecx, dword [ebp - 0x1024]
call fcn.00406820
mov dword [ebp - 0x102c], eax
mov dword [ebp - 0x1028], edx
mov eax, dword [ebp - 0x102c]
mov dword [ebp - 0xfd0], eax
mov eax, dword [ebp - 0xfd0]
cdq
and edx, 0x3ff
add eax, edx
sar eax, 0xa
mov dword [ebp - 0xfd0], eax
push 0
push 0
push 0
lea ecx, [ebp - 0xd58]
call fcn.00411c30
cmp dword [ebp - 0xfd0], 0x400
jge 0x40cd80
push 1
lea ecx, [ebp - 0xf58]
call fcn.004102b0
push 1
push 0x40
push 0x20
mov ecx, dword [ebp - 0xfc0]
push ecx
lea ecx, [ebp - 0xf58]
call fcn.0040bac0
mov dword [ebp - 0x1048], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xd58]
call fcn.004104a0
lea ecx, [ebp - 0xf58]
call fcn.004104d0
push 1
lea ecx, [ebp - 0xeb0]
call fcn.004102b0
push 1
push 0x40
push 0xa
mov edx, dword [ebp - 0xfc0]
push edx
lea ecx, [ebp - 0xeb0]
call fcn.0040bac0
mov dword [ebp - 0x103c], eax
mov byte [ebp - 4], 6
mov dword [ebp - 0xfd8], 0
jmp 0x40ccff
mov eax, dword [ebp - 0xfd8]
add eax, 1
mov dword [ebp - 0xfd8], eax
cmp dword [ebp - 0xfd8], 0x400
jae 0x40cd43
mov dword [ebp - 0xfdc], 0
jmp 0x40cd26
mov ecx, dword [ebp - 0xfdc]
add ecx, 1
mov dword [ebp - 0xfdc], ecx
cmp dword [ebp - 0xfdc], 0x400
jae 0x40cd41
push 0x45e8f4
call fcn.0041ff67
add esp, 4
jmp 0x40cd17
jmp 0x40ccf0
mov edx, dword [ebp - 0xfd0]
push edx
lea ecx, [ebp - 0xeb0]
call fcn.0040c340
lea ecx, [ebp - 0xeb0]
call fcn.004104d0
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xeb0]
call fcn.0040c590
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xf58]
call fcn.0040c590
jmp 0x40cd8c
mov eax, dword [ebp - 0xfc4]
mov dword [ebp - 0xfc0], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xd58]
call fcn.0040c560
jmp 0x40cdaf
mov dword [ebp - 4], 0
jmp 0x40cdbf
lea ecx, [ebp - 0xc25]
call fcn.004061d0
mov dword [ebp - 0x104c], eax
mov byte [ebp - 4], 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [ebp - 0xfc8], eax
lea edx, [ebp - 0xc44]
push edx
lea ecx, [ebp - 0xc25]
call fcn.00407240
mov dword [ebp - 0x1044], eax
mov byte [ebp - 4], 9
push 0x45a0d9
lea eax, [ebp - 0xc44]
push eax
call fcn.0040b3d0
add esp, 8
mov byte [ebp - 0xfba], al
movzx ecx, byte [ebp - 0xfba]
test ecx, ecx
je 0x40cf24
push 1
lea ecx, [ebp - 0xe08]
call fcn.00408970
push 1
push 3
lea ecx, [ebp - 0xe08]
call fcn.00405ac0
mov dword [ebp - 0x1034], eax
mov byte [ebp - 4], 0xa
lea edx, [ebp - 0xe08]
test edx, edx
je 0x40ce66
lea eax, [ebp - 0xe08]
add eax, 0x10
mov dword [ebp - 0xfe4], eax
jmp 0x40ce70
mov dword [ebp - 0xfe4], 0
mov ecx, dword [ebp - 0xfc8]
push ecx
mov edx, dword [ebp - 0xfe4]
push edx
call fcn.00404f30
add esp, 8
mov dword [ebp - 0xff4], eax
lea eax, [ebp - 0xc44]
push eax
mov ecx, dword [ebp - 0xff4]
push ecx
call fcn.00404c50
add esp, 8
lea edx, [ebp - 0x1068]
push edx
lea ecx, [ebp - 0xe08]
call fcn.0040ae00
mov dword [ebp - 0xffc], eax
mov eax, dword [ebp - 0xffc]
mov dword [ebp - 0x101c], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x101c]
call fcn.00408c80
push eax
lea ecx, [ebp - 0xc5c]
call fcn.004018c0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x1068]
call fcn.00401a90
lea ecx, [ebp - 0xc5c]
call fcn.00408c80
push eax
call fcn.0041f139
add esp, 4
mov dword [ebp - 0xfc8], eax
lea ecx, [ebp - 0xc5c]
call fcn.00401a90
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xe08]
call fcn.00406a70
push 4
call fcn.0041c0d5
add esp, 4
mov dword [ebp - 0x1014], eax
mov ecx, dword [ebp - 0x1014]
mov dword [ebp - 0xfe0], ecx
mov byte [ebp - 4], 0xc
cmp dword [ebp - 0xfe0], 0
je 0x40cf6c
mov ecx, dword [ebp - 0xfe0]
call fcn.00401a20
mov dword [ebp - 0x1000], eax
mov edx, dword [ebp - 0x1000]
mov dword [ebp - 0xfec], edx
jmp 0x40cf76
mov dword [ebp - 0xfec], 0
mov eax, dword [ebp - 0xfec]
mov dword [ebp - 0x1008], eax
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1008]
mov dword [ebp - 0xfd4], ecx
mov edx, dword [ebp - 0xfd4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xfd4]
mov edx, dword [eax]
call edx
mov byte [ebp - 0xfb9], al
movzx eax, byte [ebp - 0xfb9]
test eax, eax
je 0x40d068
push 0x48fca8
lea ecx, [ebp - 0xca0]
push ecx
push 0
push 0
push 5
push 0
push 0
push 0
mov edx, dword [ebp - 0xfc8]
push edx
mov eax, dword [ebp - 0xfc4]
push eax
mov ecx, dword [ebp - 0xfcc]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0xfcc]
mov eax, dword [edx + 0x20]
call eax
mov dword [ebp - 0x1010], eax
mov ecx, dword [ebp - 0x1010]
mov dword [ebp - 0x1038], ecx
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov edx, dword [0x48fcac]
push edx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
push 0x10002
mov eax, dword [0x48fcb4]
push eax
mov ecx, dword [0x48fcb0]
push ecx
call dword [sym.imp.KERNEL32.dll_ContinueDebugEvent]
push 0x60
push 0
lea edx, [ebp - 0xfb8]
push edx
call fcn.0041eef0
add esp, 0xc
push 0x7918
lea eax, [ebp - 0xfb8]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForDebugEvent]
push 0x64
mov ecx, dword [0x48fcac]
push ecx
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov edx, dword [ebp - 0xfd4]
mov dword [ebp - 0x1018], edx
mov eax, dword [ebp - 0x1018]
mov dword [ebp - 0xfe8], eax
cmp dword [ebp - 0xfe8], 0
je 0x40d0aa
push 1
mov ecx, dword [ebp - 0xfe8]
call fcn.00406d10
mov dword [ebp - 0x1020], eax
mov ecx, dword [ebp - 0x1020]
mov dword [ebp - 0xff0], ecx
jmp 0x40d0b4
mov dword [ebp - 0xff0], 0
push 0x48fca8
lea edx, [ebp - 0xca0]
push edx
push 0
push 0
push 4
push 0
push 0
push 0
mov eax, dword [ebp - 0xfc8]
push eax
mov ecx, dword [ebp - 0xfc4]
push ecx
mov edx, dword [ebp - 0xfcc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0xfcc]
mov edx, dword [eax + 0x20]
call edx
mov dword [ebp - 0x1004], eax
mov eax, dword [ebp - 0x1004]
mov dword [ebp - 0xff8], eax
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xc44]
call fcn.00401a90
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc25]
call fcn.00408370
mov eax, dword [ebp - 0xff8]
jmp 0x40d151
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0041e8f2
mov esp, ebp
pop ebp
ret