Function at 0x410e10
Capabilities:
Check for peb ntglobalflag flag
Contain obfuscated stackstrings
Create http request
Create thread
Get number of processors
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4867b1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2b0
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x18c], edi
mov dword [ebp - 4], 0
xor eax, eax
push 0xd
mov dword [edi], 0
push str.FileTable.xml
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 7
mov word [edi], ax
call fcn.00408820
lea ecx, [edi + 0x18]
mov byte [ebp - 4], 1
push 6
xor eax, eax
mov dword [ecx], 0
push str.Failed
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.00408820
lea ecx, [edi + 0x30]
mov byte [ebp - 4], 2
push 0xa
xor eax, eax
mov dword [ecx], 0
push str.No_Changes
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.00408820
lea ecx, [edi + 0x48]
mov byte [ebp - 4], 3
push 7
xor eax, eax
mov dword [ecx], 0
push str.Changed
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.00408820
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x184]
push 0x10
xor eax, eax
mov dword [ebp - 0x184], 0
push str._s_is_up_to_date
mov dword [ebp - 0x188], 0
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 7
mov word [ebp - 0x184], ax
call fcn.00408820
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x168]
push 0xb
xor eax, eax
mov dword [ebp - 0x168], 0
push str.Updating__s
mov dword [ebp - 0x16c], 1
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x154], 7
mov word [ebp - 0x168], ax
call fcn.00408820
mov byte [ebp - 4], 6
xor eax, eax
push 0xb
mov dword [ebp - 0x14c], 0
mov dword [ebp - 0x150], 2
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 7
mov word [ebp - 0x14c], ax
push str.Updating__s
lea ecx, [ebp - 0x14c]
call fcn.00408820
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x130]
push 0xb
xor eax, eax
mov dword [ebp - 0x130], 0
push str.Updating__s
mov dword [ebp - 0x134], 3
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 7
mov word [ebp - 0x130], ax
call fcn.00408820
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x114]
push 0xe
xor eax, eax
mov dword [ebp - 0x114], 0
push str.Downloading__s
mov dword [ebp - 0x118], 4
mov dword [ebp - 0x104], 0
mov dword [ebp - 0x100], 7
mov word [ebp - 0x114], ax
call fcn.00408820
mov byte [ebp - 4], 9
lea ecx, [ebp - 0xf8]
push 0xb
xor eax, eax
mov dword [ebp - 0xf8], 0
push str.Updating__s
mov dword [ebp - 0xfc], 5
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe4], 7
mov word [ebp - 0xf8], ax
call fcn.00408820
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0xdc]
push 0xb
xor eax, eax
mov dword [ebp - 0xdc], 0
push str.Updating__s
mov dword [ebp - 0xe0], 6
mov dword [ebp - 0xcc], 0
mov dword [ebp - 0xc8], 7
mov word [ebp - 0xdc], ax
call fcn.00408820
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xc0]
push 0xb
xor eax, eax
mov dword [ebp - 0xc0], 0
push str._s_is_ready
mov dword [ebp - 0xc4], 7
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 7
mov word [ebp - 0xc0], ax
call fcn.00408820
lea eax, [ebp - 0xa8]
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x188]
push eax
push ecx
lea ecx, [edi + 0x60]
call fcn.00427820
push 0x412b30
push 8
push 0x1c
lea eax, [ebp - 0x188]
mov byte [ebp - 4], 0xe
push eax
call fcn.00460577
mov dword [ebp - 0x26c], 0
mov dword [ebp - 0x268], 0
xor eax, eax
mov dword [ebp - 0x258], 0
push eax
push 0x49b078
lea ecx, [ebp - 0x268]
mov dword [ebp - 0x254], 7
mov word [ebp - 0x268], ax
call fcn.00408820
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x24c]
push 0xb
xor eax, eax
mov dword [ebp - 0x24c], 0
push str.out_of_date
mov dword [ebp - 0x250], 1
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x238], 7
mov word [ebp - 0x24c], ax
call fcn.00408820
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x230]
push 0xe
xor eax, eax
mov dword [ebp - 0x230], 0
push str.different_hash
mov dword [ebp - 0x234], 2
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 7
mov word [ebp - 0x230], ax
call fcn.00408820
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0x214]
push 0xe
xor eax, eax
mov dword [ebp - 0x214], 0
push str.different_size
mov dword [ebp - 0x218], 3
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x200], 7
mov word [ebp - 0x214], ax
call fcn.00408820
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x1f8]
push 0x13
xor eax, eax
mov dword [ebp - 0x1f8], 0
push str.file_does_not_exist
mov dword [ebp - 0x1fc], 4
mov dword [ebp - 0x1e8], 0
mov dword [ebp - 0x1e4], 7
mov word [ebp - 0x1f8], ax
call fcn.00408820
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1dc]
push 0x3d
xor eax, eax
mov dword [ebp - 0x1dc], 0
push str.unknown_timestamp_and_unknown_hash__one_of_these_is_required_
mov dword [ebp - 0x1e0], 5
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1c8], 7
mov word [ebp - 0x1dc], ax
call fcn.00408820
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x1c0]
push 0xc
xor eax, eax
mov dword [ebp - 0x1c0], 0
push str.unknown_size
mov dword [ebp - 0x1c4], 6
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1ac], 7
mov word [ebp - 0x1c0], ax
call fcn.00408820
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x1a4]
push 0x12
xor eax, eax
mov dword [ebp - 0x1a4], 0
push str.already_downloaded
mov dword [ebp - 0x1a8], 7
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x190], 7
mov word [ebp - 0x1a4], ax
call fcn.00408820
lea eax, [ebp - 0x18c]
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x26c]
push eax
push ecx
lea ecx, [edi + 0x68]
call fcn.00427820
push 0x412b30
push 8
push 0x1c
lea eax, [ebp - 0x26c]
mov byte [ebp - 4], 0x18
push eax
call fcn.00460577
mov dword [edi + 0x70], 0
mov dword [edi + 0x74], 0
mov dword [edi + 0x78], 0
push 0x412d50
push 0x412bb0
push 3
push 0x4c
lea eax, [edi + 0x8c]
mov byte [ebp - 4], 0x19
push eax
mov byte [edi + 0x88], 0
call fcn.0046068c
push fcn.00408070
push 0x40f030
push 3
lea eax, [edi + 0x174]
mov byte [ebp - 4], 0x1a
push 0x18
push eax
call fcn.0046068c
push fcn.00408070
push 0x40f030
push 3
lea eax, [edi + 0x1bc]
mov byte [ebp - 4], 0x1b
push 0x18
push eax
call fcn.0046068c
push fcn.00408070
push 0x40f030
push 3
lea eax, [edi + 0x204]
mov byte [ebp - 4], 0x1c
push 0x18
push eax
call fcn.0046068c
push 0x40b120
push 0x40c540
lea esi, [edi + 0x24c]
mov byte [ebp - 4], 0x1d
push 3
push 8
lea eax, [esi + 4]
mov dword [ebp - 0x28], esi
push eax
mov dword [esi], vtable.CFileTable.0
call fcn.0046068c
lea ecx, [esi + 0x1c]
mov byte [ebp - 4], 0x1e
xor eax, eax
mov dword [ecx], 0
push eax
push 0x49b078
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.00408820
xor eax, eax
mov dword [edi + 0x280], 0
mov dword [edi + 0x290], 0
mov dword [edi + 0x294], 7
mov word [edi + 0x280], ax
lea ecx, [edi + 0x298]
mov byte [ebp - 4], 0x20
push eax
mov dword [ecx], eax
push 0x49b078
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.00408820
mov byte [ebp - 4], 0x21
lea ecx, [edi + 0x2b0]
push dword [ebp + 8]
call fcn.00441e30
mov dword [edi + 0x2e8], 0
xor eax, eax
mov dword [edi + 0x2ec], 0
mov dword [edi + 0x2f0], 0
mov dword [edi + 0x300], 0
mov dword [edi + 0x304], 7
mov word [edi + 0x2f0], ax
mov dword [edi + 0x308], eax
mov dword [edi + 0x318], eax
mov dword [edi + 0x31c], 7
mov word [edi + 0x308], ax
mov dword [edi + 0x320], eax
mov dword [edi + 0x324], eax
mov dword [edi + 0x328], eax
mov dword [edi + 0x32c], 0xffffffff
mov dword [edi + 0x330], 0xffffffff
mov dword [edi + 0x334], 0xffffffff
mov dword [edi + 0x338], 0xffffffff
mov byte [edi + 0x33c], al
mov dword [edi + 0x340], eax
mov dword [edi + 0x344], eax
mov dword [edi + 0x348], eax
mov dword [edi + 0x358], eax
mov dword [edi + 0x35c], 7
mov word [edi + 0x348], ax
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x24]
push eax
mov dword [ebp - 0x24], eax
push 0x49b078
mov word [edi + 0x360], ax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
xor eax, eax
mov byte [ebp - 4], 0x26
push eax
mov dword [ebp - 0x40], 0
lea ecx, [ebp - 0x40]
push 0x49b078
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.00408820
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xa8], 0x49f8f4
mov dword [ebp - 0xa4], edi
mov dword [ebp - 0x84], eax
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], vtable.std::_Func_impl_no_alloc_class__lambda_ed6ff49966b108455ef5e0815b9923d4___void__short_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__.0
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x44], eax
lea esi, [edi + 0x368]
mov byte [ebp - 4], 0x29
mov dword [ebp + 8], esi
lea eax, [ebp - 0x40]
push eax
lea ecx, [esi + 0x18]
mov dword [esi], vtable.CStatusMessage.0
mov word [esi + 8], 1
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0040ab20
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x2a
push eax
lea ecx, [esi + 0x34]
mov dword [esi + 0x30], 0
call fcn.0040ab20
lea ecx, [esi + 0x50]
mov dword [ebp - 0x28], ecx
mov dword [ecx + 0x24], 0
mov byte [ebp - 4], 0x2c
mov esi, dword [ebp - 0x44]
test esi, esi
je 0x4116b7
mov eax, dword [esi]
push ecx
mov ecx, esi
mov eax, dword [eax]
call eax
mov esi, dword [ebp - 0x44]
mov dword [edi + 0x3dc], eax
lea edx, [edi + 0x3e0]
mov dword [ebp - 0x28], edx
mov dword [edx + 0x24], 0
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x4116eb
mov eax, dword [ecx]
push edx
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x44]
mov dword [edi + 0x404], eax
test esi, esi
je 0x41170f
mov edx, dword [esi]
lea eax, [ebp - 0x68]
cmp esi, eax
mov ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x44], 0
test ecx, ecx
je 0x411731
mov edx, dword [ecx]
lea eax, [ebp - 0xa8]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [ebp - 0x84], 0
mov byte [ebp - 4], 0x32
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x41176f
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411765
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ac0
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x33
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x4117ad
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4117a3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ac0
push edx
push ecx
call fcn.00460334
add esp, 8
xor eax, eax
mov dword [ebp - 0x40], 0
push eax
push 0x49b078
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.00408820
xor eax, eax
mov byte [ebp - 4], 0x34
push eax
mov dword [ebp - 0x24], 0
lea ecx, [ebp - 0x24]
push 0x49b078
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
lea eax, [ebp - 0x294]
mov dword [ebp - 0x294], 0x49f878
mov dword [ebp - 0x290], edi
mov dword [ebp - 0x270], eax
lea eax, [ebp - 0x2bc]
mov dword [ebp - method.std::_Func_impl_no_alloc_class__lambda_5a495690cba6138aef62a2a3720c27e2___void__short_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__.virtual_0], vtable.std::_Func_impl_no_alloc_class__lambda_5a495690cba6138aef62a2a3720c27e2___void__short_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__.0
mov dword [ebp - 0x2b8], edi
mov dword [ebp - 0x298], eax
lea esi, [edi + 0x408]
mov byte [ebp - 4], 0x37
mov dword [ebp + 8], esi
lea eax, [ebp - 0x24]
push eax
lea ecx, [esi + 0x18]
mov dword [esi], vtable.CStatusMessage.0
mov word [esi + 8], 1
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0040ab20
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x38
push eax
lea ecx, [esi + 0x34]
mov dword [esi + 0x30], 0
call fcn.0040ab20
lea edx, [esi + 0x50]
mov dword [ebp - 0x28], edx
mov dword [edx + 0x24], 0
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x298]
test ecx, ecx
je 0x4118aa
mov eax, dword [ecx]
push edx
mov eax, dword [eax]
call eax
mov dword [esi + 0x74], eax
add esi, 0x78
mov dword [ebp - 0x28], esi
mov dword [esi + 0x24], 0
mov byte [ebp - 4], 0x3c
mov ecx, dword [ebp - 0x270]
test ecx, ecx
je 0x4118d5
mov eax, dword [ecx]
push esi
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x270]
mov dword [esi + 0x24], eax
mov esi, dword [ebp - 0x298]
test esi, esi
je 0x411905
mov edx, dword [esi]
lea eax, [ebp - 0x2bc]
cmp esi, eax
mov ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov ecx, dword [ebp - 0x270]
mov dword [ebp - 0x298], 0
test ecx, ecx
je 0x411927
mov edx, dword [ecx]
lea eax, [ebp - 0x294]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [ebp - 0x270], 0
mov byte [ebp - 4], 0x40
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x411965
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41195b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ac5
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x41
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x4119a3
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411999
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ac5
push edx
push ecx
call fcn.00460334
add esp, 8
xor eax, eax
mov dword [ebp - 0x40], 0
push eax
push 0x49b078
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.00408820
xor eax, eax
mov byte [ebp - 4], 0x42
push eax
mov dword [ebp - 0x24], 0
lea ecx, [ebp - 0x24]
push 0x49b078
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
lea eax, [ebp - 0xa8]
mov dword [ebp - 0xa8], 0x49f894
mov dword [ebp - 0xa4], edi
mov dword [ebp - 0x84], eax
lea eax, [ebp - 0x68]
mov dword [ebp - 0x68], vtable.std::_Func_impl_no_alloc_class__lambda_8fa71c4eb41229ad8cfdf7822084ae0e___void__short_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const__.0
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x44], eax
lea esi, [edi + 0x4a8]
mov byte [ebp - 4], 0x45
mov dword [ebp + 8], esi
lea eax, [ebp - 0x24]
push eax
lea ecx, [esi + 0x18]
mov dword [esi], vtable.CStatusMessage.0
mov word [esi + 8], 1
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
call fcn.0040ab20
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x46
push eax
lea ecx, [esi + 0x34]
mov dword [esi + 0x30], 0
call fcn.0040ab20
lea edx, [esi + 0x50]
mov dword [ebp - 0x28], edx
mov dword [edx + 0x24], 0
mov byte [ebp - 4], 0x48
mov ecx, dword [ebp - 0x44]
test ecx, ecx
je 0x411a91
mov eax, dword [ecx]
push edx
mov eax, dword [eax]
call eax
mov dword [esi + 0x74], eax
add esi, 0x78
mov dword [ebp - 0x28], esi
mov dword [esi + 0x24], 0
mov byte [ebp - 4], 0x4a
mov ecx, dword [ebp - 0x84]
test ecx, ecx
je 0x411abc
mov eax, dword [ecx]
push esi
mov eax, dword [eax]
call eax
mov ecx, dword [ebp - 0x84]
mov dword [esi + 0x24], eax
mov esi, dword [ebp - 0x44]
test esi, esi
je 0x411ae3
mov edx, dword [esi]
lea eax, [ebp - 0x68]
cmp esi, eax
mov ecx, esi
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov ecx, dword [ebp - 0x84]
mov dword [ebp - 0x44], 0
test ecx, ecx
je 0x411b05
mov edx, dword [ecx]
lea eax, [ebp - 0xa8]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
mov dword [ebp - 0x84], 0
mov byte [ebp - 4], 0x4e
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x411b43
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411b39
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412aca
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x4f
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x411b81
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411b77
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412aca
push edx
push ecx
call fcn.00460334
add esp, 8
mov dword [edi + 0x548], 0
xor eax, eax
mov dword [edi + 0x54c], 0
mov dword [edi + 0x550], 0
mov dword [edi + 0x560], 0
mov dword [edi + 0x564], 7
mov word [edi + 0x550], ax
mov dword [edi + 0x568], eax
mov dword [edi + 0x56c], eax
mov dword [edi + 0x57c], eax
mov dword [edi + 0x580], 7
mov dword [edi + 0x584], eax
mov dword [edi + 0x594], eax
mov dword [edi + 0x598], 7
mov dword [edi + 0x59c], eax
mov dword [edi + 0x5ac], eax
mov dword [edi + 0x5b0], 7
mov dword [edi + 0x5b4], eax
xor ecx, ecx
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x5b8], eax
mov dword [edi + 0x5bc], 0
mov dword [edi + 0x5c0], 0
mov dword [edi + 0x5d0], 0
mov dword [edi + 0x5d4], 7
mov word [edi + 0x5c0], cx
push fcn.00408070
push 0x40f030
push 2
mov byte [ebp - 4], 0x52
lea eax, [edi + 0x5ec]
push 0x18
push eax
mov word [edi + 0x5d8], cx
mov byte [edi + 0x5da], cl
mov dword [edi + 0x5e0], ecx
mov dword [edi + 0x5e4], ecx
mov dword [edi + 0x5e8], ecx
call fcn.0046068c
mov byte [ebp - 4], 0x53
lea ecx, [edi + 0x624]
xor eax, eax
mov dword [edi + 0x61c], 0xffffffff
mov word [edi + 0x620], 0
push eax
mov dword [ecx], 0
push 0x49b078
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
mov word [ecx], ax
call fcn.00408820
mov word [edi + 0x63c], 0
xor eax, eax
mov dword [edi + 0x640], 0x3e8
mov dword [edi + 0x644], 0x384
mov dword [edi + 0x648], 0x12c
mov dword [edi + 0x64c], 3
mov dword [edi + 0x650], 0
mov dword [edi + 0x654], 0x1f4
mov dword [edi + 0x658], 0x384
mov dword [edi + 0x65c], 0x258
mov dword [edi + 0x660], 0x1d4c0
mov word [edi + 0x664], 0
mov dword [edi + 0x668], 0
mov dword [edi + 0x66c], 0
mov dword [edi + 0x67c], 0
mov dword [edi + 0x680], 7
mov word [edi + 0x66c], ax
mov byte [ebp - 4], 0x55
mov word [edi + 0x684], ax
mov dword [edi + 0x688], eax
lea eax, [edi + 0x2b0]
push 4
mov dword [0x4b1e58], eax
push str.Core
lea ecx, [edi + 0x1bc]
call fcn.00408820
push 3
push 0x49ff78
lea ecx, [edi + 0x1d4]
call fcn.00408820
push 7
push str.Project
lea ecx, [edi + 0x1ec]
call fcn.00408820
push 0
push 0x49b078
lea ecx, [edi + 0x174]
call fcn.00408820
push 0
push 0x49b078
lea ecx, [edi + 0x18c]
call fcn.00408820
push 0
push 0x49b078
lea ecx, [edi + 0x1a4]
call fcn.00408820
push 0x22
push 0x49b638
lea ecx, [edi + 0x204]
call fcn.00408820
push 0x21
push str.api_api_feed_map_unit_uid
lea ecx, [edi + 0x21c]
call fcn.00408820
push 0x25
push str.api_api_feed_project_unit_uid
lea ecx, [edi + 0x234]
call fcn.00408820
mov esi, dword [sym.imp.KERNEL32.dll_CreateEventW]
push 0
push 0
push 1
push 0
call esi
push 0
push 0
push 1
push 0
mov dword [edi + 0x32c], eax
call esi
push 0
push 0
push 1
push 0
mov dword [edi + 0x330], eax
call esi
push 0
push 0
push 1
push 0
mov dword [edi + 0x338], eax
call esi
cmp dword [edi + 0x32c], 0
mov dword [edi + 0x334], eax
je 0x4129e9
cmp dword [edi + 0x330], 0
je 0x4129e9
cmp dword [edi + 0x338], 0
je 0x4129e9
test eax, eax
je 0x4129e9
mov eax, dword [ebp + 0x10]
lea ecx, [edi + 0x5c0]
mov dword [edi + 0x5bc], eax
lea eax, [ebp + 0x14]
mov word [edi + 0x5d9], 0
cmp ecx, eax
je 0x411ec2
cmp dword [ebp + 0x28], 8
push dword [ebp + 0x24]
cmovae eax, dword [ebp + 0x14]
push eax
call fcn.00408820
mov al, byte [ebp + 0x2c]
mov ecx, edi
mov byte [edi + 0x5d8], al
call fcn.00423130
test al, al
jne 0x411ff4
xor eax, eax
mov dword [ebp - 0x40], 0
push eax
push 0x49b078
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.00408820
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0x24]
push 0x1c
xor eax, eax
mov dword [ebp - 0x24], 0
push str.Error_accessing_the_registry
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
push 1
push 0x3ac
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x59
push eax
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
push 0
call fcn.00414c00
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x411f87
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411f7d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af7
push edx
push ecx
call fcn.00460334
add esp, 8
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x411fc1
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411fb7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af7
push edx
push ecx
call fcn.00460334
add esp, 8
mov eax, dword [edi + 0x61c]
mov ecx, 3
cmp eax, 3
cmovl eax, ecx
mov dword [edi + 0x61c], eax
lea ecx, [ebp + 0x14]
call fcn.00408070
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x28
lea eax, [ebp - 0x40]
push eax
call fcn.004481f0
add esp, 4
push 0x12
push str.Wayfinder_Updater_
push 0
mov ecx, eax
mov byte [ebp - 4], 0x5a
call fcn.0042cf10
mov dword [ebp - 0x80], 0
xor ecx, ecx
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x80], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x70], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x41208b
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412081
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412acf
push edx
push ecx
call fcn.00460334
add esp, 8
xor eax, eax
mov dword [ebp - 0x30], 0
push 1
lea ecx, [ebp - 0x158]
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.00427210
mov edx, str.Starting_Wayfinder_Updater_for
mov byte [ebp - 4], 0x5d
lea ecx, [ebp - 0x148]
call fcn.0042b1f0
mov eax, dword [edi + 0x2e8]
test eax, eax
je 0x4120e9
push eax
mov edx, 0x49ba54
lea ecx, [ebp - 0x148]
call fcn.0042b1f0
mov ecx, eax
call fcn.00427550
mov edx, 0x49ba50
jmp 0x4120f4
lea eax, [ebp - 0x148]
mov edx, str._not_registered_on_PLUS_Network_
mov ecx, eax
call fcn.0042b1f0
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x158]
call fcn.00427140
mov edx, eax
mov byte [ebp - 4], 0x5e
cmp dword [edx + 0x14], 8
jb 0x412118
mov edx, dword [edx]
mov ecx, edx
mov dword [ebp - 0x24], 0
xor eax, eax
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x412140
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x24]
call fcn.00408820
push 0
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x5f
push eax
push 0x3e7
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x5e
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x4121ad
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4121a3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ad4
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x5d
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x4121eb
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4121e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ad4
push edx
push ecx
call fcn.00460334
add esp, 8
cmp dword [ebp - 0x6c], 8
lea edx, [ebp - 0x80]
mov dword [ebp - 0x24], 0
cmovae edx, dword [ebp - 0x80]
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x412216
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x24]
call fcn.00408820
push 0
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x60
push eax
push 0x3e7
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x5d
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x412283
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412279
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ad9
push edx
push ecx
call fcn.00460334
add esp, 8
lea ecx, [ebp - 0x158]
mov byte [ebp - 4], 0x5c
call fcn.00412f30
push 0x22
xor eax, eax
mov dword [ebp - 0x24], 0
push str.About_to_create_network_connection
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
push 1
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x61
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x412310
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412306
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af7
push edx
push ecx
call fcn.00460334
add esp, 8
cmp dword [ebp - 0x6c], 8
lea eax, [ebp - 0x80]
push 0
cmovae eax, dword [ebp - 0x80]
push 0
push 0
push 0
push eax
call dword [sym.imp.WININET.dll_InternetOpenW]
mov ecx, eax
mov dword [edi + 0x5b4], ecx
test ecx, ecx
jne 0x412461
push 0x16
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0x24]
push str.Error_opening_internet
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x62
push eax
call fcn.00425df0
push 1
push 0x3e7
push eax
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x63
push eax
push 0
mov ecx, edi
call fcn.00414c00
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x4123ba
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4123b0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ade
push edx
push ecx
call fcn.00460334
add esp, 8
mov edx, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
cmp edx, 8
jb 0x412408
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4123fe
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ade
push edx
push ecx
call fcn.00460334
add esp, 8
mov eax, dword [edi + 0x61c]
mov ecx, 3
mov edx, dword [ebp - 0x6c]
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x61c], eax
cmp edx, 8
jb 0x411fd8
mov ecx, dword [ebp - 0x80]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412452
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af7
push edx
push ecx
call fcn.00460334
add esp, 8
jmp 0x411fd8
mov esi, dword [sym.imp.WININET.dll_InternetSetOptionW]
lea eax, [edi + 0x660]
push 4
push eax
push 2
push ecx
call esi
test eax, eax
jne 0x41254f
lea eax, [ebp - 0x24]
push eax
call fcn.00425df0
push 0x2f
push str.Warning___Cant_set_internet_connect_timeout__
push 0
mov ecx, eax
mov byte [ebp - 4], 0x64
call fcn.0042cf10
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
push ecx
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x65
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x64
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x412511
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412507
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ae3
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x41254f
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412545
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ae3
push edx
push ecx
call fcn.00460334
add esp, 8
push 4
lea eax, [edi + 0x660]
push eax
push 5
push dword [edi + 0x5b4]
call esi
test eax, eax
jne 0x41263c
lea eax, [ebp - 0x24]
push eax
call fcn.00425df0
push 0x2d
push str.Warning____Cant_set_internet_send_timeout__
push 0
mov ecx, eax
mov byte [ebp - 4], 0x66
call fcn.0042cf10
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
push ecx
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x67
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x66
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x4125fe
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4125f4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ae8
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x41263c
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412632
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412ae8
push edx
push ecx
call fcn.00460334
add esp, 8
push 4
lea eax, [edi + 0x660]
push eax
push 6
push dword [edi + 0x5b4]
call esi
test eax, eax
jne 0x412729
lea eax, [ebp - 0x24]
push eax
call fcn.00425df0
push 0x30
push str.Warning____Cant_set_internet_receive_timeout__
push 0
mov ecx, eax
mov byte [ebp - 4], 0x68
call fcn.0042cf10
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
push ecx
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x69
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x68
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x4126eb
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4126e1
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412aed
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x412729
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41271f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412aed
push edx
push ecx
call fcn.00460334
add esp, 8
push 4
lea eax, [edi + 0x660]
push eax
push 8
push dword [edi + 0x5b4]
call esi
test eax, eax
jne 0x412816
lea eax, [ebp - 0x24]
push eax
call fcn.00425df0
push 0x35
push str.Warning____Cant_set_internet_date_receive_timeout__
push 0
mov ecx, eax
mov byte [ebp - 4], 0x6a
call fcn.0042cf10
xor ecx, ecx
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x58], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x48], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 7
mov word [eax], cx
push ecx
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x6b
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x6a
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x4127d8
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4127ce
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af2
push edx
push ecx
call fcn.00460334
add esp, 8
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x412816
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41280c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af2
push edx
push ecx
call fcn.00460334
add esp, 8
push 0x11
xor eax, eax
mov dword [ebp - 0x24], 0
push str.Network_connected
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
push 0
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x6c
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov byte [ebp - 4], 0x5c
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x412894
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x41288a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412af7
push edx
push ecx
call fcn.00460334
add esp, 8
push 8
call fcn.004600b3
mov esi, eax
mov dword [ebp + 8], esi
push 4
mov byte [ebp - 4], 0x6d
call fcn.004600b3
mov dword [ebp + 0xc], eax
mov dword [eax], edi
lea ecx, [esi + 4]
mov byte [ebp - 4], 0x6e
push ecx
push 0
push eax
push 0x42e440
push 0
push 0
mov dword [ebp + 0x2c], ecx
call fcn.0046a5a4
add esp, 0x20
mov dword [esi], eax
test eax, eax
je 0x412afc
mov byte [ebp - 4], 0x5c
push 8
mov dword [edi + 0x320], esi
call fcn.004600b3
mov esi, eax
mov dword [ebp + 8], esi
push 4
mov byte [ebp - 4], 0x6f
call fcn.004600b3
mov dword [ebp + 0xc], eax
mov dword [eax], edi
lea ecx, [esi + 4]
mov byte [ebp - 4], 0x70
push ecx
push 0
push eax
push 0x42e500
push 0
push 0
mov dword [ebp + 0x2c], ecx
call fcn.0046a5a4
add esp, 0x20
mov dword [esi], eax
test eax, eax
je 0x412b0c
mov byte [ebp - 4], 0x5c
lea ecx, [ebp - 0x24]
push 0x13
xor eax, eax
mov dword [ebp - 0x24], 0
push str.Exiting_constructor
mov dword [edi + 0x328], esi
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
push 1
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x71
push eax
push 0x3e6
mov ecx, edi
call fcn.00410ac0
mov edx, dword [ebp - 0x10]
cmp edx, 8
jb 0x4129ac
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x4129a2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412b1c
push edx
push ecx
call fcn.00460334
add esp, 8
mov edx, dword [ebp - 0x6c]
cmp edx, 8
jb 0x411fd8
mov ecx, dword [ebp - 0x80]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412452
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412b1c
jmp 0x412452
push 0x15
xor eax, eax
mov dword [ebp - 0x24], 0
push str.Error_creating_events
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x10], 7
mov word [ebp - 0x24], ax
call fcn.00408820
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 0x56
push eax
call fcn.00425df0
push 1
push 0x3ae
push eax
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x57
push eax
push 0
mov ecx, edi
call fcn.00414c00
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x412a6f
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x412a65
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x412abb
push edx
push ecx
call fcn.00460334
add esp, 8
mov edx, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
cmp edx, 8
jb 0x411fc1
mov ecx, dword [ebp - 0x24]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x411fb7
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x411fb7
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
call fcn.00465850
mov eax, dword [ebp + 0x2c]
push 6
mov dword [eax], 0
call fcn.0044b842
mov eax, dword [ebp + 0x2c]
push 6
mov dword [eax], 0
call fcn.0044b842
call fcn.00465850
int3