Function at 0x401dcf
Capabilities:
Acquire debug privileges

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
push 8
call fcn.0047911e
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x48e2f9
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
push 0
lea eax, [ebp - 0x10]
push eax
call fcn.00402d10
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x401e23
push ebx
call fcn.00479124
add esp, 4
mov dword [ebp - 0x10], 0
push 0
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
call fcn.004031c9
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x401e54
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [0x49258f]
test ebx, ebx
je 0x401e6b
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x49258f], eax
push 0
mov ebx, 0x108
call fcn.0047b580
add esp, 4
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x492593]
test ebx, ebx
je 0x401e9d
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x492593], eax
mov dword [ebp - 0x10], esp
xor eax, eax
call dword [0x492747]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x401ecc
push 0x11c
push 0x4020632
push 6
call fcn.0047912a
add esp, 0xc
push eax
call fcn.00404230
mov ebx, eax
test ebx, ebx
je 0x401ee1
push ebx
call fcn.00479124
add esp, 4
push 0x49258f
call fcn.00403f69
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x492597]
test ebx, ebx
je 0x401f05
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x492597], eax
push str.WebService_
push dword [0x492597]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x49259b]
test ebx, ebx
je 0x401f3d
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x49259b], eax
push 0x48e247
push dword [0x49258f]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x49259f]
test ebx, ebx
je 0x401f75
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x49259f], eax
push 9
call fcn.00404761
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x4925a3]
test ebx, ebx
je 0x401f9f
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925a3], eax
push 0x80000301
push 0
push 1
push VariantClear
push 0
mov eax, dword [0x4925a3]
test eax, eax
jne 0x401fc6
mov eax, 0x48e230
push eax
push 2
mov ebx, 0x134
call fcn.0047ae50
add esp, 0x1c
mov dword [ebp - 0x10], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x401fef
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x154
call fcn.0047b610
add esp, 0x10
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402015
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [0x4925a7]
test ebx, ebx
je 0x40202c
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925a7], eax
mov dword [ebp - 0x10], 0
push 0
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
mov dword [ebp - 0x2c], 0
push 0
lea eax, [ebp - 0x2c]
push eax
push 1
push 0x49259f
call fcn.00404b97
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x4020b1
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4020c1
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4020d1
push ebx
call fcn.00479124
add esp, 4
push 0x492587
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x80]
mov dword [0x4925ab], eax
push VariantClear
push 0
lea eax, [ebp - 4]
push eax
push 1
mov ebx, 0x100
call fcn.0047b670
add esp, 0x10
mov ecx, 3
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0047911e
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
mov dword [edi], 3
add edi, 4
mov ebx, dword [ebp - 4]
call fcn.00401daf
pop edx
mov eax, ecx
cmp ecx, edx
jle 0x402142
mov ecx, edx
sub eax, ecx
sub edx, ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ebx, esi
mov ecx, eax
test ecx, ecx
je 0x402173
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x402169
push ebx
call fcn.00479124
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x402158
pop edx
pop edi
test edx, edx
je 0x402181
mov ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
push dword [ebp - 4]
call fcn.00479124
add esp, 4
pop eax
mov dword [ebp - 4], eax
mov ebx, dword [ebp - 4]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 1
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebx]
test eax, eax
je 0x4021c6
push eax
mov ebx, eax
call fcn.00401499
inc eax
push eax
call fcn.0047911e
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x4925af]
test ebx, ebx
je 0x4021da
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925af], eax
push VariantClear
push 0
mov eax, dword [0x4925af]
test eax, eax
jne 0x4021f5
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x154
call fcn.0047b610
add esp, 0x10
mov dword [ebp - 0x10], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x40221e
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x198
call fcn.0047ad80
add esp, 0x10
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402244
push ebx
call fcn.00479124
add esp, 4
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
lea eax, [ebp - 0x14]
push eax
push 0x49258b
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x18]
mov dword [ebp - 0x1c], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x402276
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x1c]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40228a
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [ebp - 8], eax
push 0x48e230
push dword [0x4925af]
call fcn.00401560
add esp, 8
cmp eax, 0
je 0x4022c7
push str.5A665D71A0D0D666EDA549725EBD3771
push dword [ebp - 8]
call fcn.00401560
add esp, 8
cmp eax, 0
je 0x4022c7
xor eax, eax
jmp 0x4022cc
mov eax, 1
test eax, eax
je 0x4022e3
mov dword [0x4925b3], 1
jmp 0x40230b
push str.C581021BFCD37A4E657A6A7268904D9C
push dword [ebp - 8]
call fcn.00401560
add esp, 8
cmp eax, 0
jne 0x40230b
mov dword [0x4925b7], 1
jmp 0x40230b
cmp dword [0x4925b3], 0
je 0x402416
mov eax, str.YXCoreClient
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40232e
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
push 0x48e2a1
push dword [ebp - 0xc]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
push 0x4925bb
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402370
push ebx
call fcn.00479124
add esp, 4
cmp dword [ebp - 0x14], 0
jne 0x402389
push 0
call fcn.0047910c
add esp, 4
jmp 0x402ca7
push VariantClear
push 0
mov eax, dword [0x492593]
test eax, eax
jne 0x40239e
mov eax, 0x48e230
push eax
push VariantClear
push 0
push 0x48e2a3
push VariantClear
push 0
push str.local
push VariantClear
push 0
mov eax, dword [0x49259f]
test eax, eax
jne 0x4023cc
mov eax, 0x48e230
push eax
push 4
mov ebx, 0x8cc
call fcn.0047b810
add esp, 0x34
mov eax, str.YXCoreApp.exe
push eax
mov ebx, dword [0x4925af]
test ebx, ebx
je 0x4023f8
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925af], eax
push 0
push 0
push 0
push 1
mov ebx, 0x90
call fcn.0047ab10
add esp, 0x10
mov dword [0x4925bf], 1
mov ebx, dword [ebp - 4]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 2
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp - 0x10]
mov eax, dword [ebx]
test eax, eax
je 0x402456
push eax
mov ebx, eax
call fcn.00401499
inc eax
push eax
call fcn.0047911e
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [0x4925c3]
test ebx, ebx
je 0x40246a
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925c3], eax
cmp dword [0x4925b3], 0
jne 0x4024f9
push 0x4925af
call fcn.00405769
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40249e
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
push 0x48e2a1
push dword [ebp - 0xc]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
push 0x4925bb
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4024e0
push ebx
call fcn.00479124
add esp, 4
cmp dword [ebp - 0x14], 0
jne 0x4024f9
push 0
call fcn.0047910c
add esp, 4
jmp 0x402ca7
push 0x48e2a1
push dword [ebp - 0xc]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
lea eax, [ebp - 0x20]
push eax
push 1
push 0x49258f
push 1
lea eax, [ebp - 0x10]
push eax
call fcn.00405836
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402564
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x402574
push ebx
call fcn.00479124
add esp, 4
push dword [0x4925af]
push dword [0x49258f]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x4925c7]
test ebx, ebx
je 0x4025a7
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925c7], eax
push 0x80000101
push 0
push 0
push 1
mov ebx, 0x140
call fcn.0047aba0
add esp, 0x10
mov dword [ebp - 0x10], eax
push str.___P
push dword [0x4925c7]
push 0x48e2c0
mov ecx, 3
call fcn.00401504
add esp, 0xc
mov dword [ebp - 0x14], eax
push 0x10
call fcn.0047911e
add esp, 4
mov dword [ebp - 0x18], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
push 0
lea eax, [ebp - 0x18]
push eax
push 0x48
call fcn.0047911e
add esp, 4
mov dword [ebp - 0x1c], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x12
rep stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov dword [ebp - 0x20], 0
push 0
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 0x24], 0
push 0
push dword [ebp - 0x24]
mov dword [ebp - 0x28], 0
push 0
push dword [ebp - 0x28]
push 1
lea eax, [ebp - 0x14]
push eax
push 1
lea eax, [ebp - 0x10]
push eax
call fcn.0040f344
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x40268a
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x40269a
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4026aa
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4026c1
push ebx
call fcn.00479124
add esp, 4
pop ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
call fcn.00479124
add esp, 4
push 9
call fcn.00404761
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x4925cb]
test ebx, ebx
je 0x4026fa
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925cb], eax
mov dword [ebp - 0x10], esp
xor eax, eax
call dword [0x492747]
nop
nop
cmp dword [ebp - 0x10], esp
je 0x402729
push 0x1328
push 0x4020632
push 6
call fcn.0047912a
add esp, 0xc
mov dword [0x4925cf], eax
call fcn.0040f8c1
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
push eax
mov ebx, dword [0x4925d3]
test ebx, ebx
je 0x40274d
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925d3], eax
cmp dword [0x4925b3], 0
je 0x40299e
mov dword [ebp - 0x10], 0
push 0
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov eax, 0x48e2c2
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
mov eax, str.local
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x20]
push eax
call fcn.0040f91b
mov dword [ebp - 0x24], eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x4027b6
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x1c]
test ebx, ebx
je 0x4027c6
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x4027d6
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x4027e6
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x24]
push eax
mov ebx, dword [0x4925d7]
test ebx, ebx
je 0x4027fd
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925d7], eax
push 0x48e230
push dword [0x4925d7]
call fcn.00401560
add esp, 8
cmp eax, 0
jne 0x40287d
call fcn.004113fe
mov dword [ebp - 0x10], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x40283a
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x154
call fcn.0047b610
add esp, 0x10
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402860
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [0x4925d7]
test ebx, ebx
je 0x402877
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925d7], eax
mov ebx, dword [0x4925db]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 2
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push dword [ebp - 0x10]
push 1
push 3
push 0x42c2f9
call fcn.004066f6
mov ebx, dword [0x4925db]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 3
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push dword [ebp - 0x10]
push 1
push 4
push 0x42e351
call fcn.004066f6
push 0x492587
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x80]
push 0x80000301
push 0
push eax
push 1
mov ebx, 0x168
call fcn.0047af10
add esp, 0x10
mov dword [ebp - 0x14], eax
push 1
lea eax, [ebp - 0x14]
push eax
mov eax, str.clientphwnd
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
call fcn.004118d5
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x402967
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x402977
push ebx
call fcn.00479124
add esp, 4
push 0x492587
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x80]
mov dword [ebp - 0x10], eax
push 0x42e416
push dword [ebp - 0x10]
call fcn.0041195d
jmp 0x4029bd
mov eax, 0x48e2d0
push eax
mov ebx, dword [0x4925d7]
test ebx, ebx
je 0x4029b7
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925d7], eax
mov ebx, dword [0x4925db]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 0
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push dword [ebp - 0x10]
push 1
push 1
push 0x43288b
call fcn.004066f6
push 0x48e2d0
push dword [0x4925d7]
call fcn.00401560
add esp, 8
cmp eax, 0
jne 0x402a6d
mov ebx, dword [0x4925db]
mov ecx, dword [ebx]
inc ecx
shl ecx, 2
add ebx, ecx
mov eax, 1
shl eax, 2
add ebx, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], 0
push 0
lea eax, [ebp - 0x14]
push eax
mov dword [ebp - 0x18], 0
push 0
push dword [ebp - 0x18]
push 1
push dword [ebp - 0x10]
push 1
push 2
push 0x4332ac
call fcn.004066f6
cmp dword [0x4925b7], 0
je 0x402ca7
push 1
mov eax, str.SeDebugPrivilege
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
call fcn.00402d10
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402a9d
push ebx
call fcn.00479124
add esp, 4
mov dword [ebp - 0x10], 0
push 0
push dword [ebp - 0x10]
call fcn.004119b2
push 0x492587
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0x80]
mov dword [ebp - 0x10], eax
push 0x42e416
push dword [ebp - 0x10]
call fcn.0041195d
push 0x48e247
push dword [0x492597]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
push 0
push 0
push 0
push VariantClear
push 0
push 0x48e2c2
push VariantClear
push 0
push str.server
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x402b1c
mov eax, 0x48e230
push eax
push 4
mov ebx, 0x8c8
call fcn.0047b830
add esp, 0x34
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402b42
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x14]
push eax
mov ebx, dword [0x4925df]
test ebx, ebx
je 0x402b59
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925df], eax
push str.version.update
push dword [0x492597]
mov ecx, 2
call fcn.00401504
add esp, 8
mov dword [ebp - 0x10], eax
push VariantClear
push 0
mov eax, dword [ebp - 0x10]
test eax, eax
jne 0x402b8d
mov eax, 0x48e230
push eax
push 1
mov ebx, 0x268
call fcn.0047b8d0
add esp, 0x10
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0x10]
test ebx, ebx
je 0x402bb3
push ebx
call fcn.00479124
add esp, 4
push VariantCopy
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x402bc6
mov eax, 0x48e2f9
push eax
push 1
mov ebx, 0x168
call fcn.0047af10
add esp, 0x10
mov dword [ebp - 0x18], eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x402bec
push ebx
call fcn.00479124
add esp, 4
mov eax, dword [ebp - 0x18]
push eax
mov ebx, dword [0x4925e3]
test ebx, ebx
je 0x402c03
push ebx
call fcn.00479124
add esp, 4
pop eax
mov dword [0x4925e3], eax
call fcn.00411a5b
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x402ca7
mov dword [ebp - 0x10], 0
push 0
push dword [ebp - 0x10]
mov dword [ebp - 0x14], 0
push 0
push dword [ebp - 0x14]
mov dword [ebp - 0x18], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x1c], 0
push 0
push dword [ebp - 0x1c]
mov dword [ebp - 0x20], 0
push 0
push dword [ebp - 0x20]
push 1
mov eax, 0x48e301
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x24]
push eax
mov eax, 0x48e306
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push eax
call fcn.00411e71
mov ebx, dword [ebp - 0x28]
test ebx, ebx
je 0x402c87
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x24]
test ebx, ebx
je 0x402c97
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x402ca7
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x402cc5
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x402cc1
imul eax, dword [ebx]
jmp 0x402cb6
mov ecx, eax
test ecx, ecx
je 0x402ce4
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x402cdd
push ebx
push eax
call fcn.00479124
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x402ccb
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x402cfc
push ebx
call fcn.00479124
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x402d0c
push ebx
call fcn.00479124
add esp, 4
mov esp, ebp
pop ebp
ret