Function at 0x409080
Capabilities:
Accept command line arguments
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42b75d
mov eax, dword fs:[0]
push eax
push ecx
sub esp, 0xfec
mov eax, dword [0x491870]
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 - 0xf78], 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 - 0xe08]
push ecx
call fcn.004160e0
add esp, 0xc
mov dword [ebp - 0xf60], str.SetupWizard.exe
lea edx, [ebp - 0xc24]
mov dword [ebp - 0xf64], 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 0x440e0c
lea edx, [ebp - 0x424]
push edx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameW]
push 1
lea ecx, [ebp - 0xc2c]
call fcn.004095e0
lea eax, [ebp - 0x21c]
push eax
lea ecx, [ebp - 0xc2c]
call fcn.0040b7c0
lea ecx, [ebp - 0xc2c]
call fcn.004034e0
mov dword [ebp - 0xf60], eax
lea ecx, [ebp - 0xc2c]
call fcn.0040b840
jmp 0x409170
mov dword [ebp - 4], 0
jmp 0x409180
mov byte [ebp - 4], 3
push 1
lea ecx, [ebp - 0xd14]
call fcn.00409630
push 1
push 0x40
push 0x20
mov ecx, dword [ebp - 0xf64]
push ecx
lea ecx, [ebp - 0xd14]
call fcn.0040bab0
mov dword [ebp - 0xfc4], eax
mov byte [ebp - 4], 4
push 2
push 0
push 0
lea ecx, [ebp - 0xd14]
call fcn.0040b5a0
mov dword [ebp - 0xfbc], str.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
lea edx, [ebp - 0xffc]
push edx
lea ecx, [ebp - 0xd14]
call fcn.0040b6d0
mov dword [ebp - 0xf94], eax
mov ecx, dword [ebp - 0xf94]
call fcn.00403740
mov dword [ebp - 0xfa0], eax
mov dword [ebp - 0xf9c], edx
mov eax, dword [ebp - 0xfa0]
mov dword [ebp - 0xf68], eax
mov eax, dword [ebp - 0xf68]
cdq
and edx, 0x3ff
add eax, edx
sar eax, 0xa
mov dword [ebp - 0xf68], eax
push 0
push 0
push 0
lea ecx, [ebp - 0xd14]
call fcn.0040b5a0
cmp dword [ebp - 0xf68], 0x400
jge 0x409366
push 1
lea ecx, [ebp - 0xf58]
call fcn.004096a0
push 1
push 0x40
push 0x20
mov ecx, dword [ebp - 0xf60]
push ecx
lea ecx, [ebp - 0xf58]
call fcn.0040c7f0
mov dword [ebp - 0xfa4], eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xd14]
call fcn.0040bc10
lea ecx, [ebp - 0xf58]
call fcn.0040c950
push 1
lea ecx, [ebp - 0xeb0]
call fcn.004096a0
push 1
push 0x40
push 0xa
mov edx, dword [ebp - 0xf60]
push edx
lea ecx, [ebp - 0xeb0]
call fcn.0040c7f0
mov dword [ebp - 0xfb0], eax
mov byte [ebp - 4], 6
mov dword [ebp - 0xf6c], 0
jmp 0x4092d1
mov eax, dword [ebp - 0xf6c]
add eax, 1
mov dword [ebp - 0xf6c], eax
cmp dword [ebp - 0xf6c], 0x400
jae 0x40931f
mov dword [ebp - 0xf70], 0
jmp 0x4092f8
mov ecx, dword [ebp - 0xf70]
add ecx, 1
mov dword [ebp - 0xf70], ecx
cmp dword [ebp - 0xf70], 0x400
jae 0x409313
push 0x44202c
call fcn.00416185
add esp, 4
jmp 0x4092e9
mov dword [ebp - 0xfb8], str.GxNbU8p3UvhjIednHtmLQ5rhTyQgVmYev4klnNlDGV1WQoKRvMNjy8wq04dYUKdt4NwoR7aLGeXAJBLOVfQiE89lgFUkx5w7GjDkA302ePEKwnaz9ved4vPyACK8n4VbQQnGF0hjfpC5HbzjsXabA8pTupwkppfvco0z6NFSmKshcos3jGrPUmSv8J5SXJ1LtCgIKN7jLVI8ioYDgrjrCYBRktfSNEzuzVsopKNunb1uGu8J3JzNceaOvKRu4F10xporKRdDGWXjsXBQxIwjYMptLPOVgjcszOmjlP5kQTcB53UiIkYWgPrkOg0wi2IPYEb1BLqrFRktpSieK7jh9WFa2HYjB0YtShzNOUk1fWLVVxXA2eErPLajXGBTH925bPJqRaxFgG3VLJ9SuE3pS2Wh3RURJDtXoEjf33RXytFTNmQzB27dzp6obOSIIbblYQmfKsehtQDIKUUAuFH0Onaw4Y3cBxqoan19USpsBFAtmWvP0GNx3VEYG9DcozOdU1BmXn6NO6Opm7gaH1xmcGWyinuQ6eqSYoA0RAQ4eEd2y98m2saGIOkto86vJuGsRVwT4Jasebl1HPuc7B7qC5VoK8BGntpTSV9yzBmBuPreB39nQSVeoOOtqsL83kM83uldRAIEV6kM6LdxUzin1VWiIw1LQis3bv7MXCm9JOtX00fkML3W1U9Rb5oLQIovQKCUqfj7m81gaRdiDn9DsQ7JGbAra0YhpO9Wgyu0xvJnrzpXs9JTRnuNjdWmUB07X67S3gIKeL0cImyOYF2RkILtqSqhe5BInQ7uRBGJI3TQTBMfIkrnqGlCFhF9h6mKi8QdjrYLuN5CSIAFWmu0hEvxWJU7dldN7Pbcub5alNT2BdQpHORWtArYqY5ydCur1G6h1QoCkdjNYDRJLBod92dax3F1vMVaVfJ1308lLqUO0HiTJr1pX5KKXiSihOEsyToFeMtXdgXfC6d5UROU6rVQGoxlKI9JmPrdJWtBxNnmOF3rre3Mcpv3UAoJulgfSd4j2c141vb3CDIu4jtNrmAfwn6gh2wJFcNfSjddlHdgBF9ijHjiN0SB0eL7E7a01wvDHTdQ67dMLv9PCn0CD9iSLb6J5OHBbbw1ENEQ821HTXhHqiMIdXbLFgymb5cIeBtjB37dJGeWVBz82R9TqSV2Uso3Hye3dHcI0Vg0yjdfVFDQDYOOOuUv8GBJwAST1PQNYRJjF28a85ydlXPqAAz9iPX9HcK9pLPphxdpvWR5RuV88At1zcjUNI2Op9Wh4ONMjNmyV96gDfT8Q7iddxAVr959WS7jADHq7IT88DgI6p6gic5VC0PkoObnLzpQorHdmywzKmymYKFb6fbnW23zKFMpECpc72FVJe9DpMTaK1jpIWrgvaLw8an1D4NcqKhddMUfRS3sUs3VwNWycL3rA53AaywQqYSljpSLtRwv3kOpREQl6x0m3lhOzgcL2BEx2AAgtrxYdoqfLUPvGn5TDTBNb7jHNYlUS9SsmgtStdw1TqcTVs4nDHD2eLav40gwN90IL3HFN7ypHANdge5GzG5lXHSfP5keaUq1AwI89aPihl73xqyqcRI2x7p4N81QP231Sq5soduEp58T5YgMoeoH51zgoBp36o1YUwshoTsADMs8FchCjL3rE
jmp 0x4092c2
mov dword [ebp - 0xfa8], str.8RblmKdPnwq8kllLIK6IjvxRkM8ziHzxnKRwKuMzGC5Kkj5F5ifgtk3sCJ8XMny7F9MogQywIcJMdPb23myTb5iHeiImtgcemeMyF7JieyT2TLHBcfzxO5woSDNCz0jyKYxJt4aluimWsYOu44Aet6DaOgBfzaSc97xLP0e2bfhBcjKgbFM9Vr4BHSFp6pTAJ76FFKUCsz8JCENMWFaBGWNaFvSS0muCHfoByELfUCGHrUmpNtw6VYsaiqt8lHNwcxnOMxUXB35wx2SM6dvcymcQA9Xdo66WgKSLlN6G4MNP4UV38PBE9uLl5teQCeHUYsy0Xjyed0AUiv7Da07n3gwEFqDOuvNF87snS9kibivj2K9RURe2WqsIiolNfeiAPbrLz52cKx2AJJdsFWEENLGeopvQPH6ykNgSxdExMlk9LdbM54dfGfxnqnsTUNjpGIDClGS5UcSLUwHoFlyj1iXndXl5TQASrYAzKGrWIo0mFyXGtcC0ok2Nzz8DSJcCzTuXIpcHJYOYfGL0WkG6DNPDhoDVGRW6v13Ep32esNjRxOtx0Fn2LcBe2ntvM8gKaag8cPVSkqhlal3p0rDR1YAnvf72pV7QRsvyD1YkIckTqdYzL7HkLD9cjuPjtf4BqftFxOkG0eTbmRoVzrdKHHIe3kKiAvg3599VQxbqtpjUDgWgaq39CFOqeNO44Gqcx03dcP2S7iCto857BtwVjmLTOJLbXbPdQGNo7RCV5H7DXbSjNvy82i0nIf18WeMYHETLuvVOqGVzsaU69pJ2Q1ycBeQDTi0WUmjuRByY6mdQ8k07zky63u4oI9TKkEKVyfEw6aSQHcSOhDnbAnyvkgP3oqJ1LRSbuxRG8SRCqq7vrYqWzkI9qI6FbyAg7NeWabGa5iDChaHMjzzE0CGVp8BLVJMQF8EnGsYbuT22s9Y6q6zQ4U5SKHODDP8LJ1gXLTD1haFOgTLrfEqqy5w8kD0ssrYAr3suMbz6IsVOcCpp7PoAS9GOm4ccFSaqNiR4JfFRya1EPbKcfF1R9nfdw29FH830MgrahbSROAMPVcbxME694fSDOBrw8TwAbTkzHibI2XXCnXAKKIGB0pkvGLodCz04GDYoU8u83yYbbvnK1f8MVKijVs524imRVk94vpOS8u5swvt2o51xtHdVMQs9QQer4bAYpoqDYAl7OJTS62ufPtVYAqzhATh3GO0EFruT0Hpp4hSasopEPVxNkjCLIWMgNATXsFV9zvaBT1jx79aX4pBLO0TzSBEQWF7aNOhmoKe8bHG5ewyAzv5U50O1FeyFoMWlfSl9kahJKPoXEcYSQ8dUmOPRCW2J77lyK7lIsy4BoEDyXoo2RoA451wdhFrfKoOGM3JX4IslOdpksQm91I8lR7uA32XsIRszbtnqErlSHiAR4OYeaM5jyGsTnuBO4jTRjrqgSyIzIsOYv4YbCw0edlcsCeeVAXqcWimgFTGbq2Dy8RCKa9NW4DzU6dtuKCOYlzYR7ln
mov edx, dword [ebp - 0xf68]
push edx
lea ecx, [ebp - 0xeb0]
call fcn.0040b3b0
lea ecx, [ebp - 0xeb0]
call fcn.0040c950
mov byte [ebp - 4], 5
lea ecx, [ebp - 0xeb0]
call fcn.00409670
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xf58]
call fcn.00409670
jmp 0x409372
mov eax, dword [ebp - 0xf64]
mov dword [ebp - 0xf60], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0xd14]
call fcn.00409600
jmp 0x40939f
mov dword [ebp - 4], 0
jmp 0x4093af
lea ecx, [ebp - 0xc25]
call fcn.00401000
mov dword [ebp - 0xfb4], eax
mov byte [ebp - 4], 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [ebp - 0xf74], eax
lea edx, [ebp - 0xc44]
push edx
lea ecx, [ebp - 0xc25]
call fcn.004011f0
mov dword [ebp - 0xfc0], eax
mov byte [ebp - 4], 9
push 0x433a5b
lea eax, [ebp - 0xc44]
push eax
call fcn.0040fc90
add esp, 8
mov byte [ebp - 0xf59], al
movzx ecx, byte [ebp - 0xf59]
test ecx, ecx
je 0x409514
push 1
lea ecx, [ebp - 0xdc4]
call fcn.00401690
push 1
push 3
lea ecx, [ebp - 0xdc4]
call fcn.00402910
mov dword [ebp - 0xfcc], eax
mov byte [ebp - 4], 0xa
lea edx, [ebp - 0xdc4]
test edx, edx
je 0x409456
lea eax, [ebp - 0xdc4]
add eax, 0x10
mov dword [ebp - 0xf7c], eax
jmp 0x409460
mov dword [ebp - 0xf7c], 0
mov ecx, dword [ebp - 0xf74]
push ecx
mov edx, dword [ebp - 0xf7c]
push edx
call fcn.004041c0
add esp, 8
mov dword [ebp - 0xf84], eax
lea eax, [ebp - 0xc44]
push eax
mov ecx, dword [ebp - 0xf84]
push ecx
call fcn.004044f0
add esp, 8
lea edx, [ebp - 0xfe4]
push edx
lea ecx, [ebp - 0xdc4]
call fcn.00402a50
mov dword [ebp - 0xf98], eax
mov eax, dword [ebp - 0xf98]
mov dword [ebp - 0xf80], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0xf80]
call fcn.00406380
push eax
lea ecx, [ebp - 0xc5c]
call fcn.00408770
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xfe4]
call fcn.00407d50
lea ecx, [ebp - 0xc5c]
call fcn.00406380
push eax
call fcn.00416231
add esp, 4
mov dword [ebp - 0xf74], eax
lea ecx, [ebp - 0xc5c]
call fcn.00407d50
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xdc4]
call fcn.00401660
mov dword [ebp - 0xfc8], str.OdzRMNL2tIdJUAcCfTbocPIpQDXDI3hmC6Q4OkyDWQzCr9ckTvV2Lp5ho62ucqdYxKphz7Aqfe0rP3IdiMWCPO5xCH2UCdllTndFTGptuWHATCeYHv1Ex4umiRMiPV71pPrsGXvAFdyW16DyJ7ay5u2H55NwfXqO7CtSWfjmzlbW7yjalEB
push 0x493e84
lea ecx, [ebp - 0xe08]
push ecx
push 0
push 0
push 4
push 0
push 0
push 0
mov edx, dword [ebp - 0xf74]
push edx
mov eax, dword [ebp - 0xf64]
push eax
mov ecx, dword [ebp - 0xf78]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0xf78]
mov eax, dword [edx + 0x38]
call eax
mov dword [ebp - 0xf88], eax
mov ecx, dword [ebp - 0xf88]
mov dword [ebp - 0xf8c], ecx
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xc44]
call fcn.00407d50
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xc25]
call fcn.00401020
mov eax, dword [ebp - 0xf8c]
jmp 0x4095bb
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.004136d5
mov esp, ebp
pop ebp
ret