Function at 0x438cd0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4da2e0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x190
mov eax, dword [0x520078]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0xd0], edi
xorps xmm0, xmm0
mov dword [ebp - 0x64], 0
movups xmmword [ebp - 0x74], xmm0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
call fcn.0041b710
mov dword [ebp - 0x74], eax
mov dword [ebp - 4], 0
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
call fcn.00422ca0
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x64], 3
call fcn.00431ff0
lea eax, [edi + 0x18]
mov dword [ebp - 4], 1
push eax
lea ecx, [ebp - 0x74]
call fcn.004759f0
mov byte [ebp - 0xd1], al
test al, al
je 0x43a583
xor eax, eax
mov dword [ebp - 0x34], 7
cmp word [str.GUID], ax
mov ecx, 4
mov dword [ebp - 0x38], 0
cmove ecx, eax
mov word [ebp - 0x48], ax
push ecx
push str.GUID
lea ecx, [ebp - 0x48]
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 2
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov eax, 6
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
lea esi, [edi + 0x34]
mov byte [ebp - 4], 3
push esi
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x60]
push eax
push ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
mov ecx, eax
mov dword [ebp - 0xc8], ecx
cmp esi, ecx
je 0x438e66
cmp dword [esi + 0x14], 8
jb 0x438e3f
mov eax, dword [esi + 0x14]
mov ecx, esi
inc eax
push eax
push dword [esi]
call fcn.00415a10
mov ecx, dword [ebp - 0xc8]
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x438e57
mov eax, dword [esi]
jmp 0x438e59
mov eax, esi
xor edx, edx
push ecx
mov ecx, esi
mov word [eax], dx
call fcn.00415340
mov eax, dword [ebp - 0x4c]
cmp eax, 8
jb 0x438e7b
inc eax
lea ecx, [ebp - 0x60]
push eax
push dword [ebp - 0x60]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x50], 0
cmp eax, 8
jb 0x438ea4
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x438ed1
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x34], 7
xor ecx, ecx
mov word [ebp - 0x48], ax
cmp word [str.GuidCreated], cx
mov eax, 0xb
mov dword [ebp - 0x38], 0
cmove eax, ecx
lea ecx, [ebp - 0x48]
push eax
push str.GuidCreated
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 5
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov esi, 6
mov eax, esi
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
sub esp, 8
mov byte [ebp - 4], 6
lea eax, [ebp - 0x48]
push eax
push ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004743b0
mov dword [edi + 0x50], eax
mov eax, dword [ebp - 0x18]
mov dword [edi + 0x54], edx
cmp eax, 8
jb 0x438f7a
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x438fa7
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x34], 7
xor ecx, ecx
mov word [ebp - 0x48], ax
cmp word [str.Edition], cx
mov eax, 7
mov dword [ebp - 0x38], 0
cmove eax, ecx
lea ecx, [ebp - 0x48]
push eax
push str.Edition
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 7
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov eax, esi
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
push 1
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 8
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
mov ecx, eax
call fcn.004742d0
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x439046
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x439073
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x34], 7
xor ecx, ecx
mov word [ebp - 0x48], ax
cmp word [str.NewEdition], cx
mov eax, 0xa
mov dword [ebp - 0x38], 0
cmove eax, ecx
lea ecx, [ebp - 0x48]
push eax
push str.NewEdition
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 9
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov eax, esi
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
push 0xffffffffffffffff
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
mov ecx, eax
call fcn.004742d0
mov dword [edi + 0x94], eax
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x439112
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x43913f
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x34], 7
xor ecx, ecx
mov word [ebp - 0x48], ax
cmp word [str.SubEdition], ax
mov eax, 0xa
mov dword [ebp - 0x38], 0
cmove eax, ecx
lea ecx, [ebp - 0x48]
push eax
push str.SubEdition
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 0xb
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov eax, esi
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
xor eax, eax
mov dword [ebp - 0x78], 7
mov dword [ebp - 0x7c], 0
mov word [ebp - 0x8c], ax
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x60]
push eax
push ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
mov ecx, eax
lea esi, [edi + 0x98]
mov dword [ebp - 0xc8], ecx
cmp esi, ecx
je 0x43923a
cmp dword [esi + 0x14], 8
jb 0x439213
mov eax, dword [esi + 0x14]
mov ecx, esi
inc eax
push eax
push dword [esi]
call fcn.00415a10
mov ecx, dword [ebp - 0xc8]
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x43922b
mov eax, dword [esi]
jmp 0x43922d
mov eax, esi
xor edx, edx
push ecx
mov ecx, esi
mov word [eax], dx
call fcn.00415340
mov eax, dword [ebp - 0x4c]
cmp eax, 8
jb 0x43924f
inc eax
lea ecx, [ebp - 0x60]
push eax
push dword [ebp - 0x60]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x50], 0
cmp eax, 8
jb 0x43927e
inc eax
lea ecx, [ebp - 0x8c]
push eax
push dword [ebp - 0x8c]
call fcn.00415a10
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x439293
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x4392c0
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x34], 7
xor ecx, ecx
mov word [ebp - 0x48], ax
cmp word [str.NewSubEdition], cx
mov eax, 0xd
mov dword [ebp - 0x38], 0
cmove eax, ecx
lea ecx, [ebp - 0x48]
push eax
push str.NewSubEdition
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 0xf
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov eax, 6
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
xor eax, eax
mov dword [ebp - 0x78], 7
mov dword [ebp - 0x7c], 0
mov word [ebp - 0x8c], ax
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x11
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x60]
push eax
push ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
mov ecx, eax
lea esi, [edi + 0xb0]
mov dword [ebp - 0xc8], ecx
cmp esi, ecx
je 0x4393be
cmp dword [esi + 0x14], 8
jb 0x439397
mov eax, dword [esi + 0x14]
mov ecx, esi
inc eax
push eax
push dword [esi]
call fcn.00415a10
mov ecx, dword [ebp - 0xc8]
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x4393af
mov eax, dword [esi]
jmp 0x4393b1
mov eax, esi
xor edx, edx
push ecx
mov ecx, esi
mov word [eax], dx
call fcn.00415340
mov eax, dword [ebp - 0x4c]
cmp eax, 8
jb 0x4393d3
inc eax
lea ecx, [ebp - 0x60]
push eax
push dword [ebp - 0x60]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x50], 0
cmp eax, 8
jb 0x439402
inc eax
lea ecx, [ebp - 0x8c]
push eax
push dword [ebp - 0x8c]
call fcn.00415a10
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x439417
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x439444
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x34], 7
xor ecx, ecx
mov word [ebp - 0x48], ax
cmp word [str.ProductId], cx
mov eax, 9
mov dword [ebp - 0x38], 0
cmove eax, ecx
lea ecx, [ebp - 0x48]
push eax
push str.ProductId
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 0x13
xor ecx, ecx
mov word [ebp - 0x2c], ax
cmp word [str.Common], cx
mov eax, 6
mov dword [ebp - 0x18], 7
cmove eax, ecx
mov dword [ebp - 0x1c], 0
push eax
push str.Common
lea ecx, [ebp - 0x2c]
call fcn.00415880
xor eax, eax
mov dword [ebp - 0x78], 7
mov dword [ebp - 0x7c], 0
mov word [ebp - 0x8c], ax
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x60]
push eax
push ecx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
mov ecx, eax
lea esi, [edi + 0x78]
mov dword [ebp - 0xc8], ecx
cmp esi, ecx
je 0x43953f
cmp dword [esi + 0x14], 8
jb 0x439518
mov eax, dword [esi + 0x14]
mov ecx, esi
inc eax
push eax
push dword [esi]
call fcn.00415a10
mov ecx, dword [ebp - 0xc8]
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x439530
mov eax, dword [esi]
jmp 0x439532
mov eax, esi
xor edx, edx
push ecx
mov ecx, esi
mov word [eax], dx
call fcn.00415340
mov eax, dword [ebp - 0x4c]
cmp eax, 8
jb 0x439554
inc eax
lea ecx, [ebp - 0x60]
push eax
push dword [ebp - 0x60]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x4c], 7
mov word [ebp - 0x60], ax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x50], 0
cmp eax, 8
jb 0x439583
inc eax
lea ecx, [ebp - 0x8c]
push eax
push dword [ebp - 0x8c]
call fcn.00415a10
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x439598
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov byte [ebp - 4], 1
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x4395c5
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x78], 7
xor ecx, ecx
mov word [ebp - 0x8c], ax
cmp word [str.BuildId], ax
mov eax, 7
mov dword [ebp - 0x7c], 0
cmove eax, ecx
lea ecx, [ebp - 0x8c]
push eax
push str.BuildId
call fcn.00415880
xor eax, eax
mov byte [ebp - 4], 0x17
xor ecx, ecx
mov word [ebp - 0x60], ax
cmp word [str.Common], ax
mov eax, 6
mov dword [ebp - 0x4c], 7
cmove eax, ecx
mov dword [ebp - 0x50], 0
push eax
push str.Common
lea ecx, [ebp - 0x60]
call fcn.00415880
xor eax, eax
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x38], 0
mov word [ebp - 0x48], ax
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x19
push eax
lea eax, [ebp - 0x8c]
push eax
lea eax, [ebp - 0x2c]
push eax
push ecx
lea eax, [ebp - 0x60]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
mov ecx, eax
lea esi, [edi + 0xc8]
mov dword [ebp - 0xc8], ecx
cmp esi, ecx
je 0x4396c6
cmp dword [esi + 0x14], 8
jb 0x43969f
mov eax, dword [esi + 0x14]
mov ecx, esi
inc eax
push eax
push dword [esi]
call fcn.00415a10
mov ecx, dword [ebp - 0xc8]
mov dword [esi + 0x14], 7
cmp dword [esi + 0x14], 8
mov dword [esi + 0x10], 0
jb 0x4396b7
mov eax, dword [esi]
jmp 0x4396b9
mov eax, esi
xor edx, edx
push ecx
mov ecx, esi
mov word [eax], dx
call fcn.00415340
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x4396db
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00415a10
xor eax, eax
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], ax
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1c], 0
cmp eax, 8
jb 0x439704
inc eax
lea ecx, [ebp - 0x48]
push eax
push dword [ebp - 0x48]
call fcn.00415a70
push 0
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x34], 7
call fcn.00415aa0
lea ecx, [ebp - 0x60]
call fcn.00415b40
lea ecx, [ebp - 0x8c]
mov byte [ebp - 4], 1
call fcn.00415b40
push str.Cookie
lea ecx, [ebp - 0x2c]
call fcn.00415980
push str.Common
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x1b
call fcn.00415980
lea ecx, [ebp - 0xf0]
call fcn.00415400
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x1d
push eax
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
push eax
lea ecx, [edi + 0xe0]
call fcn.00419ec0
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0xf0]
call fcn.00415b40
lea ecx, [ebp - 0x48]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00415b40
push str.Debug
lea ecx, [ebp - 0x2c]
call fcn.00415980
push str.Common
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x1e
call fcn.00415980
push 0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x1f
push eax
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
mov ecx, eax
call fcn.004742d0
test eax, eax
lea ecx, [ebp - 0x48]
setne al
mov byte [edi + 0x17c], al
call fcn.00415b40
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00415b40
push 0x4f87a0
lea ecx, [ebp - 0x60]
call fcn.00415980
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x2c]
push str.NewDirectoryName
call fcn.00415980
push str.Common
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x21
call fcn.00415980
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x22
push eax
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
push eax
lea ecx, [edi + 0xf8]
call fcn.00419ec0
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0x48]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
call fcn.00415b40
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 1
call fcn.00415b40
push 0x4f8128
lea ecx, [ebp - 0x2c]
call fcn.00415980
push str.Common
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x23
call fcn.00415980
lea ecx, [ebp - 0xf0]
call fcn.00415400
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x25
push eax
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
push eax
mov ecx, edi
mov byte [ebp - 4], 0x26
call fcn.0043b260
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0xf0]
call fcn.00415b40
lea ecx, [ebp - 0x48]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00415b40
push str.Gclid
lea ecx, [ebp - 0x2c]
call fcn.00415980
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x48]
push str.Common
call fcn.00415980
lea ecx, [ebp - 0xf0]
call fcn.00415400
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x29
push eax
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
push eax
mov ecx, edi
mov byte [ebp - 4], 0x2a
call fcn.0043b280
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0xf0]
call fcn.00415b40
lea ecx, [ebp - 0x48]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00415b40
push str.GaCid
lea ecx, [ebp - 0x2c]
call fcn.00415980
push str.Common
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x2b
call fcn.00415980
lea ecx, [ebp - 0xf0]
call fcn.00415400
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x2d
push eax
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004744a0
push eax
mov ecx, edi
mov byte [ebp - 4], 0x2e
call fcn.0043b2a0
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0xf0]
call fcn.00415b40
lea ecx, [ebp - 0x48]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 1
call fcn.00415b40
push str.DelayedInstallation
lea ecx, [ebp - 0x48]
call fcn.00415980
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x2f
push eax
lea ecx, [ebp - 0x74]
call fcn.00436bd0
lea ecx, [ebp - 0x48]
mov byte [ebp - 0x2d], al
mov byte [ebp - 4], 1
call fcn.00415b40
cmp byte [ebp - 0x2d], 0
je 0x439d82
push str.DelayedInstallation
lea ecx, [ebp - 0x48]
call fcn.00415980
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x30
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
mov esi, eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x48]
mov dword [ebp - 0xd8], esi
call fcn.00415b40
push str.IsNeeded
lea ecx, [ebp - 0x2c]
call fcn.00415980
push 0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x31
push eax
mov ecx, esi
call fcn.004742d0
test eax, eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c]
setne al
mov byte [edi + 0x158], al
call fcn.00415b40
push ecx
lea ecx, [ebp - 0x80]
call fcn.00416a00
push str.CmdLine
lea ecx, [ebp - 0x2c]
call fcn.00415980
lea ecx, [ebp - 0xf0]
call fcn.00415400
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
push eax
lea eax, [ebp - 0x108]
mov ecx, esi
push eax
call fcn.004744a0
mov edx, eax
mov byte [ebp - 4], 0x34
lea ecx, [ebp - 0x80]
call fcn.0043b690
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0xf0]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x38
call fcn.00415b40
mov ecx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x7c]
sub eax, ecx
shr eax, 1
lea eax, [ecx + eax*2]
push eax
push ecx
lea ecx, [edi + 0x15c]
call fcn.0043b590
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
call fcn.00474570
mov byte [ebp - 4], 0x39
mov esi, dword [ebp - 0x54]
mov dword [ebp - 0xc8], esi
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x439d6e
mov ecx, dword [ebp - 0xd8]
push esi
call fcn.00474130
mov ecx, esi
mov edi, eax
call fcn.004159e0
push eax
call fcn.004ba01c
add esp, 4
mov byte [ebp - 0x2d], al
lea ecx, [ebp - 0x24]
call fcn.00434f10
mov byte [ebp - 4], 0x3a
cmp byte [ebp - 0x2d], 0
jbe 0x439d47
push str.IsSilent
lea ecx, [ebp - 0xf0]
mov byte [ebp - 0x18], 1
mov dword [ebp - 0x1c], 1
call fcn.00415980
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x3b
push eax
mov ecx, edi
call fcn.00436b50
lea ecx, [ebp - 0xf0]
mov byte [ebp - 0xc1], al
mov byte [ebp - 4], 0x3a
call fcn.00415b40
cmp byte [ebp - 0xc1], 0
je 0x439c2c
push str.IsSilent
lea ecx, [ebp - 0xf0]
call fcn.00415980
push 1
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x3c
push eax
mov ecx, edi
call fcn.004742d0
test eax, eax
mov byte [ebp - 4], 0x3a
lea ecx, [ebp - 0xf0]
setne byte [ebp - 0x18]
call fcn.00415b40
push str.UiStartType
lea ecx, [ebp - 0xf0]
call fcn.00415980
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x3d
push eax
mov ecx, edi
call fcn.00436b50
lea ecx, [ebp - 0xf0]
mov byte [ebp - 0xc1], al
mov byte [ebp - 4], 0x3a
call fcn.00415b40
cmp byte [ebp - 0xc1], 0
je 0x439ca2
push str.UiStartType
lea ecx, [ebp - 0xf0]
call fcn.00415980
push 1
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x3e
push eax
mov ecx, edi
call fcn.004742d0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 0x3a
call fcn.00415b40
push str.Components
lea ecx, [ebp - 0xf0]
call fcn.00415980
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0x3f
push eax
push ecx
lea eax, [ebp - 0xf0]
mov ecx, edi
push eax
call fcn.00474130
add esp, 4
mov ecx, eax
call fcn.004746b0
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x41
call fcn.00415b40
mov esi, dword [ebp - 0x98]
mov edi, dword [ebp - 0x94]
cmp esi, edi
je 0x439d0c
push esi
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x24]
call fcn.0043b6c0
add esi, 0x18
cmp esi, edi
jne 0x439cf5
lea ecx, [ebp - 0x98]
mov byte [ebp - 4], 0x3a
call fcn.004170e0
mov edi, dword [ebp - 0xd0]
lea eax, [ebp - 0x24]
push eax
push ecx
lea eax, [ebp - 0x2d]
push eax
lea ecx, [edi + 0x174]
call fcn.0043b4e0
add esp, 4
mov ecx, eax
call fcn.0043b500
mov esi, dword [ebp - 0xc8]
jmp 0x439d4d
mov edi, dword [ebp - 0xd0]
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 0x39
call fcn.00433880
add esi, 0x18
mov dword [ebp - 0xc8], esi
cmp esi, dword [ebp - 0xcc]
jne 0x439b71
lea ecx, [ebp - 0x54]
call fcn.004170e0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 1
call fcn.00417380
lea eax, [edi + 0x180]
mov dword [ebp - 0x94], str.product.parts.current
mov dword [ebp - 0x110], eax
xor esi, esi
lea eax, [edi + 0x188]
mov dword [ebp - 0x90], str.product.parts.latest
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0xc8], esi
nop word [eax + eax]
mov ecx, dword [ebp + esi - 0x110]
call fcn.004348b0
push dword [ebp + esi - 0x94]
lea ecx, [ebp - 0xf0]
call fcn.00415980
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
mov esi, eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0xcc], esi
call fcn.00415b40
lea eax, [ebp - 0x54]
mov ecx, esi
push eax
call fcn.004746b0
mov byte [ebp - 4], 0x43
mov esi, dword [ebp - 0x54]
mov edi, dword [ebp - 0x50]
cmp esi, edi
je 0x439f68
push ecx
lea ecx, [ebp - 0x80]
call fcn.00416a00
push 0x4f49c8
lea ecx, [ebp - 0x48]
call fcn.00415980
lea ecx, [ebp - 0x2c]
call fcn.00415400
push eax
push esi
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0xcc]
push eax
call fcn.004744a0
sub esp, 0xc
mov byte [ebp - 4], 0x46
lea ecx, [ebp - 0x48]
mov edx, eax
push ecx
lea ecx, [ebp - 0x80]
call fcn.004189c0
add esp, 0x10
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0x2c]
call fcn.00415b40
lea ecx, [ebp - 0x48]
call fcn.00415b40
lea ecx, [ebp - 0x80]
call fcn.004170c0
cmp eax, 3
jne 0x439f51
push 0
call fcn.004170a0
mov edx, 0x4f87a8
mov ecx, eax
call fcn.00422e20
test al, al
jne 0x439f51
lea ecx, [ebp - 0xc0]
call fcn.00415400
push 0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x4b
call fcn.004170a0
push eax
lea ecx, [ebp - 0xc0]
call fcn.00419800
push 0xa
push 1
lea ecx, [ebp - 0x80]
call fcn.004170a0
mov ecx, eax
call fcn.0043e810
add esp, 4
mov dword [ebp - 0xa8], eax
lea ecx, [ebp - 0x80]
push 2
call fcn.004170a0
mov ecx, eax
call fcn.004159e0
push eax
call fcn.004b9ff7
add esp, 4
mov dword [ebp - 0xa0], eax
lea eax, [ebp - 0xc0]
mov dword [ebp - 0x9c], edx
push eax
mov eax, dword [ebp - 0xc8]
push ecx
push esi
mov ecx, dword [ebp + eax - 0x110]
call fcn.0043b440
add esp, 4
mov ecx, eax
call fcn.00438c40
lea ecx, [ebp - 0xc0]
call fcn.00415b40
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x43
call fcn.004170e0
add esi, 0x18
cmp esi, edi
jne 0x439e25
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 1
call fcn.004170e0
mov esi, dword [ebp - 0xc8]
add esi, 4
mov dword [ebp - 0xc8], esi
cmp esi, 8
jl 0x439dc0
mov eax, dword [ebp - 0xd0]
add eax, 0x190
mov ecx, eax
mov dword [ebp - 0xcc], eax
call fcn.00417a70
push str.product.groups
lea ecx, [ebp - 0xf0]
call fcn.00415980
lea eax, [ebp - 0x54]
mov byte [ebp - 4], 0x4c
push eax
push ecx
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.004746b0
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x4e
call fcn.00415b40
mov esi, dword [ebp - 0x54]
mov edi, dword [ebp - 0x50]
cmp esi, edi
je 0x43a047
nop
push str.product.groups
lea ecx, [ebp - 0x48]
call fcn.00415980
push 0
push esi
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
mov ecx, eax
call fcn.004742d0
mov ecx, dword [ebp - 0xcc]
test eax, eax
push esi
setne byte [ebp - 0xc1]
call fcn.0043b420
mov cl, byte [ebp - 0xc1]
mov byte [ebp - 4], 0x4e
mov byte [eax], cl
lea ecx, [ebp - 0x48]
call fcn.00415b40
add esi, 0x18
cmp esi, edi
jne 0x439ff0
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 1
call fcn.004170e0
mov ecx, dword [ebp - 0xd0]
lea ecx, [ecx + 0x198]
call fcn.00434440
push str.products
lea ecx, [ebp - 0xf0]
call fcn.00415980
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x50
push eax
push ecx
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.00474570
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x52
call fcn.00415b40
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xc8], esi
mov dword [ebp - 0x10c], eax
cmp esi, eax
je 0x43a57b
nop
push esi
mov edx, str.products.
lea ecx, [ebp - 0x158]
call fcn.0042c2a0
add esp, 4
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x53
push ecx
push ecx
push eax
lea ecx, [ebp - 0x74]
call fcn.00474020
add esp, 4
mov ecx, eax
call fcn.00474570
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0x55
call fcn.00415b40
mov eax, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x80]
mov dword [ebp - 0x90], eax
cmp edi, eax
je 0x43a55a
mov edx, 0x4f87a8
mov ecx, edi
call fcn.00422e20
test al, al
jne 0x43a54b
push esi
mov edx, str.products.
lea ecx, [ebp - 0x1a0]
call fcn.0042c2a0
add esp, 4
push 0x4f4344
mov edx, eax
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x188]
call fcn.00415040
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 0x57
lea ecx, [ebp - 0x170]
call fcn.00414ee0
add esp, 4
push str..current
mov edx, eax
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x48]
call fcn.00415040
add esp, 4
lea ecx, [ebp - 0x170]
call fcn.00415b40
lea ecx, [ebp - 0x188]
call fcn.00415b40
lea ecx, [ebp - 0x1a0]
mov byte [ebp - 4], 0x5c
call fcn.00415b40
push str.version
lea ecx, [ebp - 0x108]
call fcn.00415980
push edi
push ecx
mov ecx, dword [ebp - 0xd0]
push esi
mov byte [ebp - 4], 0x5d
lea ecx, [ecx + 0x198]
call fcn.0043b2c0
add esp, 4
mov ecx, eax
call fcn.0043b360
mov dword [ebp - 0xcc], eax
lea ecx, [ebp - 0x74]
push 0
lea eax, [ebp - 0x108]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00473f10
mov ecx, eax
call fcn.004742d0
mov ecx, dword [ebp - 0xcc]
mov byte [ebp - 4], 0x5c
mov dword [ecx], eax
lea ecx, [ebp - 0x108]
call fcn.00415b40
push str.time
lea ecx, [ebp - 0x108]
call fcn.00415980
sub esp, 8
mov byte [ebp - 4], 0x5e
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00473f10
add esp, 4
mov ecx, eax
call fcn.004743b0
push edi
push ecx
mov ecx, dword [ebp - 0xd0]
push esi
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xd8], edx
lea ecx, [ecx + 0x198]
call fcn.0043b2c0
add esp, 4
mov ecx, eax
call fcn.0043b360
mov ecx, dword [ebp - 0xcc]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0xd8]
mov dword [eax + 0xc], ecx
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5c
call fcn.00415b40
push esi
mov edx, str.products.
lea ecx, [ebp - 0xb0]
call fcn.0042c2a0
add esp, 4
push 0x4f4344
mov edx, eax
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x140]
call fcn.00415040
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x128]
call fcn.00414ee0
add esp, 4
push str..latest
mov edx, eax
mov byte [ebp - 4], 0x61
lea ecx, [ebp - 0x108]
call fcn.00415040
add esp, 4
lea ecx, [ebp - 0x48]
push eax
call fcn.00419ec0
lea ecx, [ebp - 0x108]
call fcn.00415b40
lea ecx, [ebp - 0x128]
call fcn.00415b40
lea ecx, [ebp - 0x140]
call fcn.00415b40
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x5c
call fcn.00415b40
push str.version
lea ecx, [ebp - 0x108]
call fcn.00415980
push 0
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x62
push eax
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00473f10
mov ecx, eax
call fcn.004742d0
push edi
push ecx
mov ecx, dword [ebp - 0xd0]
push esi
mov dword [ebp - 0xcc], eax
lea ecx, [ecx + 0x198]
call fcn.0043b2c0
add esp, 4
mov ecx, eax
call fcn.0043b360
mov ecx, dword [ebp - 0xcc]
mov dword [eax + 0x10], ecx
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5c
call fcn.00415b40
push str.time
lea ecx, [ebp - 0x108]
call fcn.00415980
sub esp, 8
mov byte [ebp - 4], 0x63
lea eax, [ebp - 0x108]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00473f10
add esp, 4
mov ecx, eax
call fcn.004743b0
push edi
push ecx
mov ecx, dword [ebp - 0xd0]
push esi
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xd8], edx
lea ecx, [ecx + 0x198]
call fcn.0043b2c0
add esp, 4
mov ecx, eax
call fcn.0043b360
mov ecx, dword [ebp - 0xcc]
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0xd8]
mov dword [eax + 0x1c], ecx
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5c
call fcn.00415b40
push esi
mov edx, str.products.
lea ecx, [ebp - 0x108]
call fcn.0042c2a0
add esp, 4
push 0x4f4344
mov edx, eax
mov byte [ebp - 4], 0x64
lea ecx, [ebp - 0x128]
call fcn.00415040
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x140]
call fcn.00414ee0
add esp, 4
push str..groups
mov edx, eax
mov byte [ebp - 4], 0x66
lea ecx, [ebp - 0xb0]
call fcn.00415040
add esp, 4
lea ecx, [ebp - 0x48]
push eax
call fcn.00419ec0
lea ecx, [ebp - 0xb0]
call fcn.00415b40
lea ecx, [ebp - 0x140]
call fcn.00415b40
lea ecx, [ebp - 0x128]
call fcn.00415b40
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x5c
call fcn.00415b40
lea eax, [ebp - 0x54]
push eax
push ecx
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x74]
call fcn.00473f10
add esp, 4
mov ecx, eax
call fcn.004746b0
mov byte [ebp - 4], 0x67
mov eax, dword [ebp - 0x50]
mov esi, dword [ebp - 0x54]
mov dword [ebp - 0xd8], eax
cmp esi, eax
je 0x43a531
push esi
push ecx
push edi
push ecx
mov ecx, dword [ebp - 0xd0]
push dword [ebp - 0xc8]
lea ecx, [ecx + 0x198]
call fcn.0043b2c0
add esp, 4
mov ecx, eax
call fcn.0043b360
add esp, 4
lea ecx, [eax + 0x20]
call fcn.0043b400
push 0
mov dword [ebp - 0xcc], eax
lea ecx, [ebp - 0x74]
push esi
lea eax, [ebp - 0x48]
push eax
call fcn.00473f10
mov ecx, eax
call fcn.004742d0
mov ecx, dword [ebp - 0xcc]
add esi, 0x18
mov dword [ecx], eax
cmp esi, dword [ebp - 0xd8]
jne 0x43a4d2
lea ecx, [ebp - 0x54]
call fcn.004170e0
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x55
call fcn.00415b40
mov esi, dword [ebp - 0xc8]
add edi, 0x18
cmp edi, dword [ebp - 0x90]
jne 0x43a113
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x52
call fcn.004170e0
add esi, 0x18
mov dword [ebp - 0xc8], esi
cmp esi, dword [ebp - 0x10c]
jne 0x43a0c0
lea ecx, [ebp - 0x20]
call fcn.004170e0
lea ecx, [ebp - 0x74]
call fcn.004320b0
mov al, byte [ebp - 0xd1]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00493bec
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret