Function at 0x40233a
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x5c76ac
mov eax, dword fs:[0]
push eax
sub esp, 0x1f0
push ebx
push esi
push edi
mov eax, dword [0x6c0bc0]
xor eax, esp
push eax
lea eax, [esp + 0x200]
mov dword fs:[0], eax
mov edi, ecx
lea ecx, [esp + 0x1c]
lea esi, [edi + 0xc]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x80]
and dword [esp + 0x208], 0
lea ebx, [edi + 0xbc]
push eax
mov ecx, ebx
mov dword [esp + 0x2c], ebx
call fcn.004048fa
or dword [esp + 0x208], 0xffffffff
lea ecx, [esp + 0x1c]
call fcn.00401752
mov eax, dword [esi]
lea ecx, [esp + 0x14]
push ecx
mov ecx, esi
call dword [eax + 0x84]
mov dword [esp + 0x208], 1
lea ecx, [edi + 0xc0]
push eax
mov dword [esp + 0x20], ecx
call fcn.004048fa
or dword [esp + 0x208], 0xffffffff
lea ecx, [esp + 0x14]
call fcn.00401752
mov eax, dword [ebx]
push str.self
push eax
call fcn.0058d09d
test eax, eax
pop ecx
pop ecx
jne 0x40240f
lea esi, [esp + 0x14]
call fcn.0040d1ea
mov dword [esp + 0x208], 2
jmp 0x40245c
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ebx
call fcn.004049a2
mov dword [esp + 0x20c], 3
mov eax, dword [esi]
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push ecx
mov ecx, esi
call dword [eax + 0x68]
mov byte [esp + 0x210], 4
or dword [esp + 0x210], 0xffffffff
lea esi, [esp + 0x1c]
call fcn.0040d17c
pop ecx
pop ecx
mov dword [esp + 0x208], 5
push eax
mov ecx, ebx
call fcn.004048fa
or dword [esp + 0x208], 0xffffffff
lea ecx, [esp + 0x14]
call fcn.00401752
lea eax, [esp + 0x2c]
push eax
call fcn.0040ded1
mov dword [esp + 0x208], 6
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov ebx, 0x61b134
push ebx
call fcn.004015a6
mov byte [esp + 0x20c], 7
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.test
call fcn.004015a6
mov byte [esp + 0x20c], 8
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 0x61b144
call fcn.004015a6
mov byte [esp + 0x20c], 9
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.keeplog
call fcn.004015a6
mov byte [esp + 0x20c], 0xa
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 0x61b150
call fcn.004015a6
mov byte [esp + 0x20c], 0xb
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.sendlog
call fcn.004015a6
mov byte [esp + 0x20c], 0xc
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.demo
call fcn.004015a6
mov byte [esp + 0x20c], 0xd
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.logwindow
call fcn.004015a6
mov byte [esp + 0x20c], 0xe
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.pingdialog
call fcn.004015a6
mov byte [esp + 0x20c], 0xf
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.installproduct
call fcn.004015a6
mov byte [esp + 0x20c], 0x10
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.account
call fcn.004015a6
mov byte [esp + 0x20c], 0x11
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.campaign
call fcn.004015a6
mov byte [esp + 0x20c], 0x12
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.selftest
call fcn.004015a6
mov byte [esp + 0x20c], 0x13
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.silentpostback
call fcn.004015a6
mov byte [esp + 0x20c], 0x14
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.runonce
call fcn.004015a6
mov byte [esp + 0x20c], 0x15
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.noreq
call fcn.004015a6
mov byte [esp + 0x20c], 0x16
mov byte [esp + 0x20c], 6
lea ecx, [esp + 0x30]
call fcn.004019fb
push 1
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push dword [esp + 0x24]
call fcn.004049a2
mov byte [esp + 0x210], 0x17
mov byte [esp + 0x210], 6
lea esi, [esp + 0x34]
call fcn.0040e107
test eax, eax
jne 0x40282d
push 0xb6
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.CFreezeWrapStub::InitWrapper
call fcn.004015a6
mov byte [esp + 0x210], 0x18
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push str.abnormal
call fcn.004015a6
mov byte [esp + 0x214], 0x19
push str.Parse_comand_line_failed_
lea ecx, [esp + 0x24]
call fcn.004015a6
mov byte [esp + 0x214], 0x1a
push ecx
mov ecx, esp
mov dword [esp + 0x34], esp
push dword [esp + 0x2c]
push eax
push ecx
call fcn.004045e6
mov byte [esp + 0x224], 0x1b
add esp, 8
mov ecx, esp
mov dword [esp + 0x3c], esp
push str.badargs
call fcn.004015a6
mov byte [esp + 0x21c], 0x1c
push 1
mov byte [esp + 0x220], 0x1d
mov ecx, edi
call fcn.00404462
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
xor esi, esi
or dword [esp + 0x208], 0xffffffff
lea ecx, [esp + 0x2c]
call fcn.0040e0bb
mov eax, esi
mov ecx, dword [esp + 0x200]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ebx
call fcn.004015a6
mov byte [esp + 0x20c], 0x1e
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
je 0x4028a3
push ecx
mov esi, esp
mov dword [esp + 0x14], esp
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push 0x61b134
call fcn.004015a6
mov byte [esp + 0x210], 0x1f
push esi
mov eax, ebx
push eax
mov byte [esp + 0x218], 6
call fcn.00401b94
mov byte [esp + 0x20c], 0x20
mov ecx, dword [edi + 4]
add ecx, 4
mov byte [esp + 0x20c], 6
call fcn.00401c67
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.test
call fcn.004015a6
mov byte [esp + 0x20c], 0x21
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
je 0x402915
push ecx
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
mov dword [eax], 0x62cc74
mov dword [eax + 4], 0x10
mov byte [esp + 0x210], 0x22
mov byte [esp + 0x210], 6
call fcn.004018bb
mov eax, dword [edi + 4]
lea ecx, [eax + 0x248]
mov eax, dword [ecx]
push 2
call dword [eax + 8]
lea ecx, [edi + 0xc]
mov eax, dword [ecx]
push 0
call dword [eax + 0x74]
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, 0x61b144
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x23
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
je 0x402a69
push 1
xor eax, eax
call fcn.0040192e
push edi
call fcn.004020b0
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push 0x61b210
call fcn.004015a6
mov byte [esp + 0x20c], 0x24
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x25
mov byte [esp + 0x210], 6
call fcn.00401b17
test eax, eax
jne 0x4029ff
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.detailed
call fcn.004015a6
mov byte [esp + 0x20c], 0x26
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x27
mov byte [esp + 0x210], 6
call fcn.00401b17
test eax, eax
push ecx
je 0x402a14
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
mov dword [eax], 0x62cc74
mov dword [eax + 4], 0x10
mov byte [esp + 0x210], 0x28
mov byte [esp + 0x210], 6
call fcn.004018bb
cmp dword [0x6caacc], 0
jle 0x402a69
mov dword [0x6caa78], 0xf
jmp 0x402a69
mov ecx, esp
mov dword [esp + 0x14], esp
push str.small
call fcn.004015a6
mov byte [esp + 0x20c], 0x29
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x2a
mov byte [esp + 0x210], 6
lea ebx, [esp + 0x34]
call fcn.00401b17
test eax, eax
je 0x402a69
cmp dword [0x6caacc], 0
jle 0x402a69
mov dword [0x6caa78], 3
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.keeplog
call fcn.004015a6
mov byte [esp + 0x20c], 0x2b
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
je 0x402aa7
mov eax, dword [edi + 4]
lea ecx, [eax + 0x248]
mov eax, dword [ecx]
push 0x20
call dword [eax + 8]
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.sendlog
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x2c
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
je 0x402bf1
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x2d
lea eax, [esp + 0x18]
push eax
mov eax, ebx
push eax
mov byte [esp + 0x214], 6
call fcn.00401b94
mov byte [esp + 0x208], 0x2e
push 0x61b228
mov ecx, eax
call fcn.004047b4
mov ebx, eax
neg ebx
sbb bl, bl
inc bl
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
test bl, bl
je 0x402b93
xor esi, esi
inc esi
push esi
xor eax, eax
call fcn.0040192e
push edi
call fcn.004020b0
push ecx
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
mov dword [eax], 0x62cc74
mov dword [eax + 4], esi
mov byte [esp + 0x210], 0x2f
mov eax, dword [edi + 4]
add eax, 4
add eax, 0x538
push eax
mov byte [esp + 0x214], 6
call fcn.00401c0d
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.SendLog1_overridden_from_command_line.
call fcn.004015a6
mov byte [esp + 0x20c], 0x30
jmp 0x402be2
push ecx
push ecx
mov eax, esp
mov dword [esp + 0x18], esp
mov dword [eax], 0x62cc74
mov dword [eax + 4], 1
mov byte [esp + 0x210], 0x31
mov eax, dword [edi + 4]
add eax, 4
add eax, 0x538
push eax
mov byte [esp + 0x214], 6
call fcn.00401c39
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push str.SendLog0_overridden_from_command_line.
call fcn.004015a6
mov byte [esp + 0x20c], 0x32
push 4
mov byte [esp + 0x210], 6
call fcn.0040b216
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, 0x61b150
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x33
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
push ecx
mov dword [esp + 0x14], esp
je 0x402c95
mov ebx, esp
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x34
push ebx
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x218], 6
call fcn.00401b94
mov byte [esp + 0x20c], 0x35
lea ecx, [edi + 0xc]
mov eax, dword [ecx]
push ecx
mov edx, esp
mov dword [esp + 0x20], esp
push edx
call dword [eax + 0x68]
mov byte [esp + 0x210], 0x36
mov byte [esp + 0x210], 6
lea esi, [esp + 0x1c]
call fcn.0040d17c
pop ecx
pop ecx
mov byte [esp + 0x208], 0x37
lea ecx, [edi + 0xb8]
jmp 0x402d43
mov ecx, esp
push str..dat
call fcn.004015a6
mov byte [esp + 0x20c], 0x38
push ecx
mov ecx, esp
mov dword [esp + 0x20], esp
push dword [esp + 0x30]
call fcn.004049a2
mov byte [esp + 0x210], 0x39
mov byte [esp + 0x210], 6
lea esi, [esp + 0x1c]
call fcn.0040d0ba
pop ecx
pop ecx
mov byte [esp + 0x208], 0x3a
lea ebx, [edi + 0xb8]
push eax
mov ecx, ebx
call fcn.004048fa
mov byte [esp + 0x208], 6
mov ecx, esi
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push ebx
call fcn.004049a2
mov byte [esp + 0x20c], 0x3b
lea ecx, [edi + 0xc]
mov eax, dword [ecx]
push ecx
mov edx, esp
mov dword [esp + 0x20], esp
push edx
call dword [eax + 0x68]
mov byte [esp + 0x210], 0x3c
mov byte [esp + 0x210], 6
lea esi, [esp + 0x1c]
call fcn.0040d17c
pop ecx
pop ecx
mov byte [esp + 0x208], 0x3d
mov ecx, ebx
push eax
call fcn.004048fa
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
mov eax, dword [edi + 4]
lea ecx, [eax + 0x248]
mov eax, dword [ecx]
push 0x40
call dword [eax + 4]
test eax, eax
je 0x402da6
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x14]
push str._noprop
push eax
call fcn.004046a1
pop ecx
pop ecx
mov byte [esp + 0x208], 0x3e
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004048fa
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, 0x61b144
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x3f
add edi, 0xc4
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x402f32
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x40
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x402f32
push str.__log
lea ecx, [esp + 0x18]
call fcn.004015a6
mov byte [esp + 0x208], 0x41
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x42
lea eax, [esp + 0x18]
push eax
push edi
mov byte [esp + 0x214], 6
call fcn.00401b94
mov byte [esp + 0x208], 0x43
push 0x61b5f4
mov ecx, eax
call fcn.004047b4
test eax, eax
setne bl
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
test bl, bl
je 0x402f32
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x44
lea eax, [esp + 0x1c]
push eax
push edi
mov byte [esp + 0x214], 6
call fcn.00401b94
mov esi, eax
mov byte [esp + 0x208], 0x45
push 0x61b020
lea ecx, [esp + 0x28]
call fcn.004015a6
mov byte [esp + 0x208], 0x46
push esi
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.004045e6
add esp, 0xc
mov byte [esp + 0x208], 0x47
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 0x46
lea ecx, [esp + 0x14]
call fcn.00401752
mov byte [esp + 0x208], 0x45
lea ecx, [esp + 0x24]
call fcn.00401752
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.keeplog
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x48
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x402fba
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x49
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x402fba
push str.__keeplog
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x208], 0x4a
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.test
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x4b
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x403042
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x4c
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x403042
push str.__test
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x208], 0x4d
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.demo
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x4e
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x4030ca
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x4f
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x4030ca
push str.__demo
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x208], 0x50
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.logwindow
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x51
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x403152
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x52
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x403152
push str.__logwindow
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x208], 0x53
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.pingdialog
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x54
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x4031da
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x55
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x4031da
push str.__pingdialog
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x208], 0x56
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.installproduct
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x57
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x403262
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x58
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x403262
push str.__installproduct
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x208], 0x59
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x18]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
mov esi, str.account
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x5a
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x403386
push ecx
mov ecx, esp
mov dword [esp + 0x14], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x5b
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x403386
push 0x22
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x5c
lea eax, [esp + 0x18]
push eax
push edi
mov byte [esp + 0x218], 6
call fcn.00401b94
mov esi, eax
mov byte [esp + 0x20c], 0x5d
push str.__account_
lea ecx, [esp + 0x1c]
call fcn.004015a6
mov byte [esp + 0x20c], 0x5e
push esi
push eax
lea eax, [esp + 0x30]
push eax
call fcn.004045e6
add esp, 0xc
mov byte [esp + 0x20c], 0x5f
lea ecx, [esp + 0x1c]
push ecx
mov esi, eax
call fcn.00404702
pop ecx
pop ecx
mov byte [esp + 0x208], 0x60
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 0x5f
lea ecx, [esp + 0x18]
call fcn.00401752
mov byte [esp + 0x208], 0x5e
lea ecx, [esp + 0x24]
call fcn.00401752
mov byte [esp + 0x208], 0x5d
lea ecx, [esp + 0x14]
call fcn.00401752
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x10]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
mov esi, str.campaign
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x61
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x4034aa
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x62
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x4034aa
push 0x22
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x63
lea eax, [esp + 0x1c]
push eax
push edi
mov byte [esp + 0x218], 6
call fcn.00401b94
mov esi, eax
mov byte [esp + 0x20c], 0x64
push str.__campaign_
lea ecx, [esp + 0x2c]
call fcn.004015a6
mov byte [esp + 0x20c], 0x65
push esi
push eax
lea eax, [esp + 0x24]
push eax
call fcn.004045e6
add esp, 0xc
mov byte [esp + 0x20c], 0x66
lea ecx, [esp + 0x14]
push ecx
mov esi, eax
call fcn.00404702
pop ecx
pop ecx
mov byte [esp + 0x208], 0x67
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 0x66
lea ecx, [esp + 0x10]
call fcn.00401752
mov byte [esp + 0x208], 0x65
lea ecx, [esp + 0x18]
call fcn.00401752
mov byte [esp + 0x208], 0x64
lea ecx, [esp + 0x24]
call fcn.00401752
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
mov esi, str.selftest
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x68
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x4035ce
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x69
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x4035ce
push 0x22
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push esi
call fcn.004015a6
mov byte [esp + 0x210], 0x6a
lea eax, [esp + 0x1c]
push eax
push edi
mov byte [esp + 0x218], 6
call fcn.00401b94
mov esi, eax
mov byte [esp + 0x20c], 0x6b
push str.__selftest_
lea ecx, [esp + 0x2c]
call fcn.004015a6
mov byte [esp + 0x20c], 0x6c
push esi
push eax
lea eax, [esp + 0x24]
push eax
call fcn.004045e6
add esp, 0xc
mov byte [esp + 0x20c], 0x6d
lea ecx, [esp + 0x14]
push ecx
mov esi, eax
call fcn.00404702
pop ecx
pop ecx
mov byte [esp + 0x208], 0x6e
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 0x6d
lea ecx, [esp + 0x10]
call fcn.00401752
mov byte [esp + 0x208], 0x6c
lea ecx, [esp + 0x18]
call fcn.00401752
mov byte [esp + 0x208], 0x6b
lea ecx, [esp + 0x24]
call fcn.00401752
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x14]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
mov esi, str.silentpostback
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x6f
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x403656
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x70
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x403656
push str.__silentpostback
lea ecx, [esp + 0x14]
call fcn.004015a6
mov byte [esp + 0x208], 0x71
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x10]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
mov esi, str.runonce
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x72
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x4036de
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x73
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x4036de
push str.__runonce
lea ecx, [esp + 0x14]
call fcn.004015a6
mov byte [esp + 0x208], 0x74
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x10]
call fcn.00401752
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
mov esi, str.noreq
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x75
mov byte [esp + 0x20c], 6
mov ebx, edi
call fcn.00401ac9
test eax, eax
je 0x403766
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push esi
call fcn.004015a6
mov byte [esp + 0x20c], 0x76
mov byte [esp + 0x20c], 6
lea ebx, [esp + 0x30]
call fcn.00401ac9
test eax, eax
jne 0x403766
push str.__noreq
lea ecx, [esp + 0x14]
call fcn.004015a6
mov byte [esp + 0x208], 0x77
mov ecx, dword [esp + 0x1c]
push eax
call fcn.004047d6
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x10]
call fcn.00401752
push str.autoRunFile
lea ecx, [esp + 0x14]
call fcn.004015a6
mov byte [esp + 0x208], 0x78
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push dword [esp + 0x2c]
push eax
push ecx
call fcn.004045e6
add esp, 0xc
mov byte [esp + 0x20c], 0x79
push 2
mov byte [esp + 0x210], 0x78
call fcn.0040b216
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x10]
call fcn.00401752
push str.autoRunParams
lea ecx, [esp + 0x14]
call fcn.004015a6
mov byte [esp + 0x208], 0x7a
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
push dword [esp + 0x20]
push eax
push ecx
call fcn.004045e6
add esp, 0xc
mov byte [esp + 0x20c], 0x7b
push 2
mov byte [esp + 0x210], 0x7a
call fcn.0040b216
mov byte [esp + 0x208], 6
lea ecx, [esp + 0x10]
call fcn.00401752
xor esi, esi
inc esi
jmp 0x402804