Function at 0x40a650
Capabilities:
Parse pe header

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 0x55ea39
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x188
push esi
push edi
sub esp, 0x18
mov ecx, esp
push 0xd
push str.auto_start_on
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov dword [ebp - 4], 0
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x194], 0
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x180], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40a6e0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x194]
call fcn.00424490
mov byte [ebp - 4], 2
or esi, 0xffffffff
mov edx, dword [ebp - 0x14]
mov eax, esi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40a71d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0xd
push str.start_menu_on
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 3
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40a776
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x17c]
call fcn.00424490
mov byte [ebp - 4], 5
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40a7b0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x11
push str.contextual_offers
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 6
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x150], 0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40a810
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x164]
call fcn.00424490
mov byte [ebp - 4], 8
mov eax, esi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40a84a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x11
push str.periodical_offers
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 9
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x14c], 0
mov dword [ebp - 0x13c], 0
mov dword [ebp - 0x138], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40a8a3
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x14c]
call fcn.00424490
mov byte [ebp - 4], 0xb
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40a8dd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x1a
push str.personilized_notifications
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0xc
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x120], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40a936
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x134]
call fcn.00424490
mov byte [ebp - 4], 0xe
mov eax, esi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40a970
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x13
push str.hardware_collecting
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0xf
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x11c], 0
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40a9d0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x11c]
call fcn.00424490
mov byte [ebp - 4], 0x11
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40aa0a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x13
push str.software_collecting
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x12
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x104], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40aa63
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x104]
call fcn.00424490
mov byte [ebp - 4], 0x14
mov eax, esi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40aa9d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0xe
push str.browser_search
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x15
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40aaf6
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xec]
call fcn.00424490
mov byte [ebp - 4], 0x17
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ab30
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0xb
push str.search_menu
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x18
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xc4], 0
mov dword [ebp - 0xc0], 0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ab90
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xd4]
call fcn.00424490
mov byte [ebp - 4], 0x1a
mov eax, esi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40abca
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x11
push str.link_substitution
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x1b
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xa8], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ac23
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xbc]
call fcn.00424490
mov byte [ebp - 4], 0x1d
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ac5d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x10
push str.browser_activity
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x1e
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40acb6
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0xa4]
call fcn.00424490
mov byte [ebp - 4], 0x20
mov eax, esi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40acf0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0xb
push str.btn_x_close
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x21
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ad43
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x8c]
call fcn.00424490
mov byte [ebp - 4], 0x23
mov eax, esi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ad7d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0x12
push str.should_auto_update
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x5c]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x24
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0
lea edi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40add0
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x74]
call fcn.00424490
mov byte [ebp - 4], 0x26
mov eax, esi
mov edx, dword [ebp - 0x5c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ae07
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x194]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x194]
mov ecx, esp
push eax
je 0x40af95
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x28
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40aea6
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x2a
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40af10
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40af56
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40af4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0bc
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40af89
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
setne al
jmp 0x40b06f
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x2b
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40afc5
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x2c
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b03a
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b030
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0c1
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b06d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x59ecda], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0x17c]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x17c]
mov ecx, esp
push eax
je 0x40b202
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x2e
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b113
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x30
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40b17d
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b1c3
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b1b9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0c6
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b1f6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
setne al
jmp 0x40b2dc
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x31
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b232
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x32
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b2a7
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b29d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0cb
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b2da
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x59ecd8], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x164]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x164]
mov ecx, esp
push eax
je 0x40b46f
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x34
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b380
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x35
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x36
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40b3ea
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b430
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b426
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0d0
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b463
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
setne al
jmp 0x40b54a
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x37
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b4a0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x38
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b515
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b50b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0d5
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b548
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x59ecdb], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x14c]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x14c]
mov ecx, esp
push eax
je 0x40b6df
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x3a
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b5f0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x3b
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x3c
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40b65a
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x3a
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b6a0
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b696
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0da
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b6d3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
sete al
jmp 0x40b7ba
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x3d
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b710
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x3e
call fcn.00418240
push 1
push 0x5760f4
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x3d
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b785
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b77b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0df
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b7b8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x59ecd9], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x134]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x134]
mov ecx, esp
push eax
je 0x40b910
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x40
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b860
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x41
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x42
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40b8ca
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x40
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40b98a
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40b980
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
jmp 0x40b980
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x43
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40b940
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x44
call fcn.00418240
push 1
push 0x5760f4
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x43
jmp 0x40b8d6
push ecx
push edx
call fcn.00532241
add esp, 8
mov byte [ebp - 4], 0x26
xor eax, eax
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40b9bd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x45
lea eax, [ebp - 0x11c]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x11c]
mov ecx, esp
push eax
je 0x40be2d
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x46
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40ba60
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x47
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x48
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40baca
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40bb10
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40bb06
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov byte [ebp - 4], 0x26
xor eax, eax
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40bb43
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0x104]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x104]
mov ecx, esp
push eax
je 0x40bea0
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x4c
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40bbe2
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x4e
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40bc4c
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x4c
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40bc92
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40bc88
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov byte [ebp - 4], 0x26
xor eax, eax
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40bcc5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x51
lea eax, [ebp - 0xec]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0xec]
mov ecx, esp
push eax
je 0x40bf10
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x52
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40bd64
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x53
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x54
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40bdce
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x52
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40be14
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40be0a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
jmp 0x40bf7f
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x49
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40be60
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x4a
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x49
jmp 0x40bad6
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x4f
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40bed0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x50
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x4f
jmp 0x40bc58
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x55
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40bf40
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x56
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
lea ecx, [ebp - 0x30]
call fcn.00425650
mov byte [ebp - 4], 0x26
or eax, 0xffffffff
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40bf9e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x57
lea eax, [ebp - 0xd4]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0xd4]
mov ecx, esp
push eax
je 0x40c12f
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x58
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c040
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x59
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x5a
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40c0aa
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x58
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c0f0
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c0e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c123
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
sete al
jmp 0x40c20a
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x5b
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c160
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x5c
call fcn.00418240
push 1
push 0x5760f4
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x5b
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c1d5
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c1cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c208
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, 1
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x59ecdc], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x5d
lea eax, [ebp - 0xbc]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0xbc]
mov ecx, esp
push eax
je 0x40c39f
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x5e
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c2b0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x5f
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x60
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40c31a
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x5e
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c360
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c356
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c393
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
setne al
jmp 0x40c47a
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x61
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c3d0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x62
call fcn.00418240
push 2
push 0x576a64
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x61
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c445
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c43b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c478
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xor al, al
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5a3afc], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x63
lea eax, [ebp - 0xa4]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0xa4]
mov ecx, esp
push eax
je 0x40c60f
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x64
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c520
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x65
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x66
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40c58a
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x64
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c5d0
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c5c6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c603
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
setne al
jmp 0x40c6ea
call fcn.00424b70
lea ecx, [ebp - 0x14]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x67
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c640
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x68
call fcn.00418240
push 2
push 0x576a64
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x67
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c6b5
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c6ab
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x14]
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c6e8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
xor al, al
push ecx
mov dword [ebp - 0x18], esp
mov edi, esp
push ecx
mov esi, esp
mov byte [0x5a3afd], al
mov dword [ebp - 0x14], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x69
lea eax, [ebp - 0x74]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x74]
mov ecx, esp
push eax
je 0x40c997
call fcn.00424b70
lea ecx, [ebp - 0x38]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x6a
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c790
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x6b
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x6c
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40c7fa
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov byte [ebp - 4], 0x6a
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40c840
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40c836
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x38]
or edi, 0xffffffff
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
mov eax, edi
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c875
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp dword [ebp - 0x34], 0
setne byte [0x59ecdd]
sub esp, 0x18
mov ecx, esp
push 0x15
push str.PCAppStoreAutoUpdater
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x6d
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x40d0e9
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x38], eax
push 0x57ec7c
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x6e
call fcn.00425090
test al, al
jne 0x40c8f4
push 1
push 0x57ec7c
lea ecx, [ebp - 0x38]
call fcn.00425360
push ecx
mov byte [ebp - 4], 0x6f
mov esi, esp
mov dword [ebp - 0x40], esi
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x18]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
lea edx, [ebp - 0x38]
mov byte [ebp - 4], 0x70
mov ecx, eax
call fcn.0043f1a0
mov edx, dword [ebp - 0x18]
mov ecx, edi
mov byte [ebp - 0x39], al
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x40c944
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x6d
mov eax, edi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40c962
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov al, byte [0x59ecdd]
test al, al
je 0x40c983
cmp byte [ebp - 0x39], 0
jne 0x40c97b
call fcn.0043f7b0
mov al, byte [0x59ecdd]
test al, al
jne 0x40cb65
cmp byte [ebp - 0x39], 0
je 0x40cb65
call fcn.00440070
jmp 0x40cb65
call fcn.00424b70
lea ecx, [ebp - 0x18]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x71
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40c9c7
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x72
call fcn.00418240
push 1
push 0x5760f0
mov ecx, eax
call fcn.00424700
mov byte [ebp - 4], 0x71
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40ca3c
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ca32
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
xor eax, eax
mov byte [ebp - 4], 0x26
mov edx, dword [ebp - 0x18]
or edi, 0xffffffff
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
mov dword [ebp - 0x20], 0
mov eax, edi
mov dword [ebp - 0x1c], 7
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ca71
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov byte [0x59ecdd], 1
mov ecx, esp
push 0x15
push str.PCAppStoreAutoUpdater
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
add esp, 0x18
mov byte [ebp - 4], 0x73
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x40d0f3
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x38], eax
push 0x57ec7c
lea ecx, [ebp - 0x38]
mov byte [ebp - 4], 0x74
call fcn.00425090
test al, al
jne 0x40caec
push 1
push 0x57ec7c
lea ecx, [ebp - 0x38]
call fcn.00425360
push ecx
mov byte [ebp - 4], 0x75
mov esi, esp
mov dword [ebp - 0x40], esi
mov ecx, dword [ebp - 0x14]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x18]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
lea edx, [ebp - 0x38]
mov byte [ebp - 4], 0x76
mov ecx, eax
call fcn.0043f1a0
mov edx, dword [ebp - 0x18]
mov ecx, edi
mov byte [ebp - 0x39], al
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x40cb3c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x73
mov eax, edi
mov edx, dword [ebp - 0x38]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40cb5a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
cmp byte [ebp - 0x39], 0
jne 0x40cb65
call fcn.0043f7b0
mov byte [ebp - 4], 0x26
mov eax, edi
mov edx, dword [ebp - 0x14]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40cb83
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov dword [ebp - 0x40], esp
mov edi, esp
push ecx
mov esi, esp
mov dword [ebp - 0x18], esi
mov ecx, dword [0x5a3734]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
sub esp, 0x18
mov byte [ebp - 4], 0x77
lea eax, [ebp - 0x8c]
mov ecx, esp
lea edi, [ebp - 0x34]
push eax
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x26
mov edx, SysReAllocString
mov ecx, edi
call fcn.00439960
add esp, 8
sub esp, 0x18
test al, al
lea eax, [ebp - 0x8c]
mov ecx, esp
push eax
je 0x40d04b
call fcn.00424b70
lea ecx, [ebp - 0x18]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x78
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40cc22
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov byte [ebp - 4], 0x79
lea ecx, [ebp - 0x58]
mov edx, dword [ebp - 0x34]
call fcn.00424530
mov esi, eax
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x7a
call fcn.00418240
mov edi, eax
cmp edi, esi
je 0x40cc8c
mov ecx, edi
call fcn.00425650
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [edi], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [edi + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
lea ecx, [ebp - 0x58]
call fcn.00425650
mov ecx, dword [ebp - 0x1c]
cmp ecx, 8
jb 0x40ccce
mov edx, dword [ebp - 0x30]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ccc4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov edx, dword [ebp - 0x18]
xor eax, eax
mov word [ebp - 0x30], ax
add edx, 0xfffffff0
or eax, 0xffffffff
mov dword [ebp - 0x1c], 7
mov dword [ebp - 0x20], 0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x40ccfd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebp - 0x60]
cmp ecx, 8
jb 0x40cd37
mov edx, dword [ebp - 0x74]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cd2d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x78]
cmp ecx, 8
jb 0x40cd74
mov edx, dword [ebp - 0x8c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cd6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x90]
cmp ecx, 8
jb 0x40cdb4
mov edx, dword [ebp - 0xa4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cdaa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0xa8]
cmp ecx, 8
jb 0x40cdf4
mov edx, dword [ebp - 0xbc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cdea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0xc0]
cmp ecx, 8
jb 0x40ce34
mov edx, dword [ebp - 0xd4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ce2a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0xd8]
cmp ecx, 8
jb 0x40ce74
mov edx, dword [ebp - 0xec]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ce6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0xf0]
cmp ecx, 8
jb 0x40ceb4
mov edx, dword [ebp - 0x104]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ceaa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x108]
cmp ecx, 8
jb 0x40cef4
mov edx, dword [ebp - 0x11c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ceea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x120]
cmp ecx, 8
jb 0x40cf34
mov edx, dword [ebp - 0x134]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cf2a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x138]
cmp ecx, 8
jb 0x40cf74
mov edx, dword [ebp - 0x14c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cf6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x150]
cmp ecx, 8
jb 0x40cfb4
mov edx, dword [ebp - 0x164]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cfaa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x168]
cmp ecx, 8
jb 0x40cff4
mov edx, dword [ebp - 0x17c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40cfea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0x180]
cmp ecx, 8
jb 0x40d034
mov edx, dword [ebp - 0x194]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40d02a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40d0e4
push ecx
push edx
call fcn.00532241
add esp, 8
mov ecx, dword [ebp - 0xc]
xor al, al
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
call fcn.00424b70
lea ecx, [ebp - 0x18]
call fcn.00437900
add esp, 0x18
mov byte [ebp - 4], 0x7b
mov edx, dword [eax]
mov ecx, edx
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
lea esi, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x40d080
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.00424490
mov ecx, dword [ebx + 8]
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x7c
call fcn.00418240
push 1
push 0x5760f4
mov ecx, eax
call fcn.00424700
jmp 0x40cc94
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
call fcn.005370ef
push 0x80004005
call fcn.00425520
push 0x80004005
call fcn.00425520
int3