Function at 0x759cb1c9
Capabilities:
Delete file
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x7ac
mov eax, dword [0x75bc8d18]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x5d8], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x64c], eax
mov eax, dword [ebp + 0x18]
push ebx
push esi
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x6ac], eax
mov eax, dword [ebp + 0x20]
xor ebx, ebx
push edi
mov dword [ebp - 0x694], esi
mov dword [ebp - 0x684], eax
mov dword [ebp - 0x594], ebx
mov byte [ebp - 0x585], bl
call fcn.759cab54
push ebx
call dword [0x75bc847c]
cmp eax, ebx
jl 0x759ec936
mov byte [ebp - 0x585], 1
mov al, byte [ebp - 0x585]
mov byte [ebp - 0x665], al
call fcn.759cafef
push 1
lea ecx, [ebp - 0x630]
call fcn.759b3e6f
mov edi, 0x759b7ff8
cmp dword [0x75bc8ca8], ebx
jne 0x759ec946
mov esi, 0x105
cmp dword [ebp - 0x5d8], ebx
je 0x759cc691
push dword [ebp - 0x5d8]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
inc eax
push eax
lea ecx, [ebp - 0xc4]
call fcn.759ca725
lea eax, [ebp - 0xa8]
push esi
lea ecx, [ebp - 0xe4]
mov dword [ebp - 0xb0], 1
mov dword [ebp - 0xb4], eax
call fcn.759ca725
lea ecx, [ebp - 0x160]
call fcn.759ca767
cmp dword [ebp - 0xc4], ebx
je 0x759cc6b5
cmp dword [ebp - 0xe4], ebx
je 0x759cc6b5
push ebx
push esi
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
je 0x759cc6b5
mov ecx, dword [ebp - 0xb4]
push dword [ebp - 0x64c]
mov esi, 0x75bc8fe0
xor eax, eax
mov word [ecx], ax
mov ecx, dword [ebp - 0x160]
mov word [ecx], ax
mov eax, dword [0x75bcc8f0]
lea ecx, [ebp - 0x58c]
mov byte [ebp - 0x5b9], bl
mov byte [ebp - 0x5fd], bl
mov byte [ebp - 0x5f5], 1
mov dword [ebp - 0x628], ebx
mov byte [ebp - 0x624], bl
mov dword [ebp - 0x594], ebx
mov dword [ebp - 0x5b0], ebx
mov dword [ebp - 0x670], ebx
mov dword [ebp - 0x67c], 7
mov dword [ebp - 0x620], eax
mov dword [ebp - 0x6e0], ebx
mov dword [ebp - 0x5a8], esi
mov dword [ebp - 0x5c8], esi
mov dword [ebp - 0x5ac], esi
mov dword [ebp - 0x5a4], esi
mov dword [ebp - 0x5a0], esi
mov dword [ebp - 0x59c], esi
mov dword [ebp - 0x598], esi
mov dword [ebp - 0x5c0], esi
mov dword [ebp - 0x5c4], esi
mov dword [ebp - 0x5b8], esi
mov dword [ebp - 0x590], esi
mov dword [ebp - 0x5b4], esi
call fcn.759c6e99
push 0x759ca664
lea ecx, [ebp - 0x76c]
call fcn.759c6ec1
mov eax, dword [eax]
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x5a4]
mov dword [ebp - 0x634], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
lea ecx, [ebp - 0x5c8]
call fcn.759c6ee9
push eax
lea ecx, [ebp - 0x5a8]
call fcn.759c6ee9
push eax
push ebx
lea ecx, [ebp - 0x5ac]
call fcn.759c6ee9
push eax
lea ecx, [ebp - 0x59c]
call fcn.759c6ee9
push eax
push ebx
push dword [ebp - 0x634]
call fcn.759c73f5
mov eax, dword [ebp - 0x76c]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759ca648
lea ecx, [ebp - 0x774]
call fcn.759c6ec1
mov eax, dword [eax]
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x5a0]
mov dword [ebp - 0x634], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x634]
call fcn.759c73f5
mov eax, dword [ebp - 0x774]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759ca5dc
lea ecx, [ebp - 0x77c]
call fcn.759c6ec1
mov eax, dword [eax]
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x5c0]
mov dword [ebp - 0x634], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x634]
call fcn.759c73f5
mov eax, dword [ebp - 0x77c]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759ca5bc
lea ecx, [ebp - 0x784]
call fcn.759c6ec1
mov eax, dword [eax]
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x598]
mov dword [ebp - 0x634], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x634]
call fcn.759c73f5
mov eax, dword [ebp - 0x784]
add esp, 0x34
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x759ca5fc
lea ecx, [ebp - 0x78c]
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x5c4]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x78c]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759ca620
lea ecx, [ebp - 0x794]
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x5b8]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x794]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759ca584
lea ecx, [ebp - 0x720]
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x590]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x720]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759cbaf0
lea ecx, [ebp - 0x780]
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x5b4]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x780]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x694], ebx
jne 0x759ec996
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push 0x759ca6bc
push ebx
push eax
call dword [ecx + 0x5c]
neg eax
sbb eax, eax
neg eax
push 0x759ca698
mov dword [ebp - 0x6b8], eax
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0x5c]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x6d4], eax
cmp dword [ebp - 0x6b8], ebx
jne 0x759ec9b6
cmp eax, ebx
jne 0x759ec9b6
mov dword [ebp - 0x678], ebx
mov dword [ebp - 0x638], ebx
mov eax, 0x400
sar eax, 1
inc dword [ebp - 0x638]
test al, 1
je 0x759cb701
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
lea edx, [ebp - 0x5a4]
push edx
push eax
mov byte [ebp - 0x639], bl
call dword [ecx + 0x64]
mov edx, dword [ebp - 0x638]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
lea edx, [edx*2 + 0x759c6940]
push edx
push 6
push eax
call dword [ecx + 0x5c]
test eax, eax
jne 0x759ec9dd
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x759ec9e9
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
mov byte [ebp - 0x5ed], bl
call dword [ecx + 0x14]
test eax, eax
jne 0x759ecb33
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x759ecbae
mov eax, dword [0x75bcc8ec]
cmp eax, ebx
je 0x759cc678
cmp eax, 3
je 0x759cc678
cmp dword [ebp + 8], 1
je 0x759ece41
call fcn.759ca790
push 0x104
lea ecx, [ebp - 0xd4]
call fcn.759ca725
mov ecx, dword [ebp - 0xd4]
cmp ecx, ebx
je 0x759ecfad
mov eax, dword [0x75bcc8ec]
cmp eax, ebx
je 0x759cdee5
cmp eax, 3
je 0x759cdee5
cmp byte [0x75bc9494], bl
jne 0x759ed140
cmp byte [0x75bc9495], bl
jne 0x759ed149
cmp byte [0x75bc9496], bl
jne 0x759ed155
cmp byte [0x75bc9497], bl
jne 0x759ed161
cmp byte [0x75bc9498], bl
jne 0x759ed16d
cmp dword [ebp - 0x6ac], ebx
jne 0x759cb83a
cmp eax, ebx
je 0x759cbb24
cmp eax, 3
je 0x759cbb24
cmp eax, 2
jne 0x759cb955
push 0x759ce960
lea ecx, [ebp - 0x758]
mov dword [ebp - 0x6d8], esi
mov dword [ebp - 0x6dc], esi
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x6d8]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x758]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
push 0x759ce940
lea ecx, [ebp - 0x71c]
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x6dc]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x71c]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6d8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759cb915
mov eax, dword [ebp - 0x6d8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
cmp eax, 0x80000000
je 0x759cb915
mov dword [0x75bcca5c], eax
mov eax, dword [ebp - 0x6dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759cb93d
mov eax, dword [ebp - 0x6dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
cmp eax, 0x80000000
je 0x759cb93d
mov dword [0x75bcca64], eax
mov eax, dword [ebp - 0x6dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6d8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x694], ebx
jne 0x759ed303
cmp dword [ebp - 0x6ac], ebx
jne 0x759cc6a9
cmp dword [ebp + 8], 2
mov byte [ebp - 0x5dd], bl
je 0x759cc6a9
cmp dword [ebp + 8], 1
mov dword [ebp - 0x6d0], ebx
mov dword [ebp - 0x5ec], esi
je 0x759ed329
cmp dword [ebp - 0x678], ebx
jne 0x759ee3c3
cmp dword [ebp + 8], ebx
jne 0x759ee86e
push dword [ebp - 0x5d8]
call sym.msi.dll_MsiQueryProductStateW
cmp eax, 1
je 0x759ee3d2
cmp eax, 5
je 0x759ee3d2
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x670]
call fcn.759ceb35
lea ecx, [ebp - 0x5b0]
call fcn.759ceb35
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759cbadb
call dword [0x75bc8b6c]
mov eax, 0x645
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.759b1748
leave
ret
mov ecx, dword [0x75bc948c]
cmp ecx, 3
jne 0x759ed179
cmp eax, ebx
jne 0x759cbb55
cmp dword [ebp + 8], 1
je 0x759ed193
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x759ed2c5
cmp dword [0x75bc8ca8], ebx
jne 0x759ed2d5
cmp dword [ebp + 8], 1
mov esi, dword [ebp - 0xc4]
je 0x759cbb73
mov esi, dword [ebp - 0x5d8]
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push dword [ebp - 0x684]
push dword [ebp - 0x620]
push dword [ebp + 0x1c]
push eax
push dword [ebp - 0x694]
push esi
push dword [ebp + 8]
call fcn.759cbcba
mov esi, eax
add esp, 0x1c
lea ecx, [ebp - 0xd4]
mov dword [0x75bcc8e4], esi
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
jne 0x759ed2f8
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759cbcae
call dword [0x75bc8b6c]
mov eax, esi
jmp 0x759cbae0
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759cb7a2
jmp 0x759ecd9c
mov eax, esi
jmp 0x759cb284
cmp dword [0x75bcc8ec], ebx
je 0x759cbb41
jmp 0x759cbb55
mov byte [ebp - 0x5dd], 1
jmp 0x759cb97d
cmp dword [ebp - 0x15c], 0x27
jg 0x759f0c06
jmp 0x759f0c12
xor eax, eax
mov word [ecx], ax
push dword [ebp - 0xd4]
push dword [ebp - 0xd0]
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
cmp eax, dword [ebp - 0xd0]
ja 0x759ed0c0
push 0x759ce048
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push dword [ebp - 0xd4]
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push 0x759cc38c
lea ecx, [ebp - 0x58c]
call fcn.759ca705
mov eax, dword [0x75bc948c]
mov dword [ebp - 0x650], 2
cmp eax, 0x2000
je 0x759cdf55
mov dword [ebp - 0x650], eax
push 0x759cc424
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push dword [ebp - 0x650]
lea ecx, [ebp - 0x72c]
call fcn.759cc46d
push eax
lea ecx, [ebp - 0x58c]
call fcn.759c7add
mov eax, dword [ebp - 0x72c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x759cc388
lea ecx, [ebp - 0x58c]
call fcn.759ca705
cmp dword [0x75bc93d4], ebx
jne 0x759ed0f6
cmp dword [0x75bc8da4], ebx
jne 0x759ed0f6
push 0x759ce024
lea ecx, [ebp - 0x58c]
call fcn.759ca705
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
lea ecx, [ebp - 0x728]
call fcn.759cc46d
push eax
lea ecx, [ebp - 0x58c]
call fcn.759c7add
mov eax, dword [ebp - 0x728]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x759cc388
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push 0x759cc390
call fcn.759ce075
mov dword [esp], 0x759cc3f0
call fcn.759ce075
mov eax, dword [0x75bcc8ec]
pop ecx
jmp 0x759cb7e5
cmp eax, 0x80010106
je 0x759cb237
jmp 0x759f0c68
mov eax, 0x759b1758
mov dword [ebp - 0x650], esi
cmp esi, ebx
jne 0x759ec95b
mov dword [ebp - 0x650], eax
mov esi, dword [ebp - 0x5d8]
cmp esi, ebx
jne 0x759ec967
mov esi, eax
push ebx
push ebx
push edi
push edi
push edi
push dword [ebp - 0x64c]
call fcn.75afd8e6
pop ecx
push eax
push dword [ebp - 0x650]
push esi
push 0x759f1900
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
jmp 0x759cb266
mov eax, dword [ebp - 0x694]
cmp word [eax], bx
je 0x759cb6a0
push eax
lea ecx, [ebp - 0x5a8]
call fcn.759c8365
jmp 0x759cb6a0
mov dword [ebp - 0x678], 1
cmp dword [ebp - 0x6b8], ebx
je 0x759cb6f6
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
jmp 0x759cb6f6
mov byte [ebp - 0x639], 1
jmp 0x759cb74a
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759eca0f
test dword [ebp + 0x1c], 0x2000
je 0x759eca0f
call fcn.759c4b5e
test al, al
jne 0x759cb75e
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759ecabb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
cmp dword [ebp - 0x15c], 0x27
jle 0x759ecadb
push dword [ebp - 0x160]
call fcn.759c6f79
pop ecx
cmp dword [ebp - 0xe0], 1
jle 0x759ecaf0
push dword [ebp - 0xe4]
call fcn.759c6f79
pop ecx
lea ecx, [ebp - 0xb4]
call fcn.759b1681
cmp dword [ebp - 0xc0], 1
jle 0x759ecb10
push dword [ebp - 0xc4]
call fcn.759c6f79
pop ecx
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759ecb29
call dword [0x75bc8b6c]
mov eax, 0x667
jmp 0x759cbae0
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ecbf5
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x759ecbf5
cmp dword [ebp + 8], 1
je 0x759ecb7f
cmp dword [0x75bc8ca8], ebx
je 0x759eca0f
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f1848
jmp 0x759ecc0e
cmp dword [ebp - 0x6ac], ebx
je 0x759ecba2
cmp dword [0x75bc8ca8], ebx
je 0x759eca0f
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f1780
jmp 0x759ecc0e
mov byte [ebp - 0x5ed], 1
jmp 0x759cb778
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call sym.msi.dll_MsiQueryProductStateW
cmp eax, 5
je 0x759ecc1f
cmp eax, 1
je 0x759ecc1f
cmp dword [0x75bc8ca8], ebx
je 0x759eca0f
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push eax
call dword [ecx + 0x20]
push eax
push 0x759f16c0
push ebx
push ebx
push 9
jmp 0x759ecc12
cmp dword [0x75bc8ca8], ebx
je 0x759eca0f
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f1670
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
jmp 0x759eca0f
lea ecx, [ebp - 0x3f8]
call fcn.75a210a9
mov eax, dword [ebp - 0x598]
mov dword [ebp - 0x3f0], 0x64
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
lea ecx, [ebp - 0x3f8]
push ecx
push 0x759c3ec4
push eax
call fcn.759d9e8d
add esp, 0xc
test eax, eax
je 0x759ecc6e
push dword [ebp - 0x3f8]
call fcn.75a1d5ab
pop ecx
cmp eax, 1
je 0x759ecd8c
cmp dword [0x75bc8ca8], ebx
je 0x759ecc8f
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f15b0
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
cmp dword [ebp - 0x3f4], 0x64
jle 0x759ecca4
push dword [ebp - 0x3f8]
call fcn.759c6f79
pop ecx
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759ecd50
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
jmp 0x759ecb10
lea ecx, [ebp - 0x3f8]
call fcn.75a210d5
jmp 0x759cb78c
call fcn.75a218b0
mov dword [ebp - 0x638], eax
cmp eax, ebx
je 0x759ecdf3
cmp dword [0x75bc8ca8], ebx
je 0x759ecdd8
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push eax
call dword [ecx + 0x20]
push eax
push 0x759f1574
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov ecx, dword [ebp - 0x638]
mov edx, dword [ecx]
push eax
push ecx
call dword [edx + 0x24]
jmp 0x759ece24
cmp dword [0x75bc8ca8], ebx
je 0x759cb7a2
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push eax
call dword [ecx + 0x20]
push eax
push 0x759f14f8
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
cmp dword [ebp - 0x638], ebx
je 0x759cb7a2
mov eax, dword [ebp - 0x638]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759cb7a2
push dword [ebp - 0x5d8]
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
call fcn.759b3cf5
test eax, eax
jge 0x759ecf48
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759ecf0c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
jmp 0x759f0c47
push ebx
lea eax, [ebp - 0xb4]
push eax
push dword [ebp - 0xc4]
mov dword [ebp - 0xac], 1
call fcn.75afb1e7
add esp, 0xc
test eax, eax
je 0x759ecfbd
push dword [ebp - 0xb0]
lea ecx, [ebp - 0xc4]
call fcn.75a1d5c6
cmp dword [ebp - 0xc4], ebx
je 0x759ece60
push dword [ebp - 0xb4]
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
call fcn.759b3cf5
test eax, eax
jge 0x759cb7ac
jmp 0x759ece60
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
jmp 0x759ece60
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759ed069
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759ed0b9
call dword [0x75bc8b6c]
push 0x57
jmp 0x759f0c62
push eax
lea ecx, [ebp - 0xd4]
call fcn.75a1d5c6
mov eax, dword [ebp - 0xd4]
cmp eax, ebx
je 0x759ecfad
xor ecx, ecx
mov word [eax], cx
push dword [ebp - 0xd4]
push dword [ebp - 0xd0]
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
jmp 0x759cdf08
push 0x759f14c4
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push 1
lea ecx, [ebp - 0x778]
call fcn.759cc46d
push eax
lea ecx, [ebp - 0x58c]
call fcn.759c7add
mov eax, dword [ebp - 0x778]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x759cc388
lea ecx, [ebp - 0x58c]
call fcn.759ca705
jmp 0x759cdfb6
or dword [ebp + 0x1c], 8
jmp 0x759cb7f1
or dword [ebp + 0x1c], 0x8000
jmp 0x759cb7fd
or dword [ebp + 0x1c], 0x10000
jmp 0x759cb809
or dword [ebp + 0x1c], 0x20000
jmp 0x759cb815
or dword [ebp + 0x1c], 0x800000
jmp 0x759cb821
cmp ecx, 2
je 0x759cbb33
cmp ecx, 0x2000
je 0x759cbb33
jmp 0x759cb83a
test dword [ebp + 0x1c], 0x800
jne 0x759cbb41
push dword [ebp - 0xc4]
call fcn.75af5d25
pop ecx
test al, al
je 0x759cc698
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759ed26b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759ed2bb
call dword [0x75bc8b6c]
mov eax, 0x66d
jmp 0x759cbae0
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
jmp 0x759ecca4
push ebx
push ebx
mov eax, 0x759c2dec
push eax
push eax
push eax
push eax
push eax
push eax
push 0x759f1478
push ebx
push ebx
push 9
call fcn.759de326
add esp, 0x30
jmp 0x759cbb61
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759cbc5e
push 0x759f1460
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push dword [ebp - 0x694]
lea ecx, [ebp - 0x58c]
call fcn.759ca705
jmp 0x759cb961
lea eax, [ebp - 0x5fd]
push eax
push dword [ebp - 0x5d8]
call fcn.759d9a99
pop ecx
pop ecx
mov byte [ebp - 0x5b9], al
cmp al, bl
jne 0x759ed368
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x5d8]
jmp 0x759ed3ef
cmp byte [ebp - 0x5fd], bl
je 0x759ed402
push ebx
push 0x105
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
jne 0x759ed397
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
jmp 0x759ecfad
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x6bc], eax
push ebx
lea eax, [ebp - 0x6bc]
push eax
push dword [ebp - 0xb4]
push dword [ebp - 0xc4]
call fcn.75b56d79
add esp, 0x10
test al, al
je 0x759ee3c3
mov eax, dword [ebp - 0xb4]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x5d0], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x5d0]
call fcn.75afa971
add esp, 0x1c
mov dword [ebp - 0x594], eax
jmp 0x759ed7a5
mov eax, dword [ebp - 0x590]
mov dword [ebp - 0x66c], esi
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ed524
cmp dword [0x75bcc8ec], 2
jne 0x759ed524
call fcn.759c4b5e
test al, al
je 0x759ed524
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call fcn.759b5427
cmp eax, 0xffffffff
je 0x759ed54e
cmp dword [0x75bc8ca8], ebx
je 0x759ed47e
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push eax
call dword [ecx + 0x20]
push eax
push 0x759f1418
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
lea eax, [ebp - 0x590]
push eax
lea ecx, [ebp - 0x66c]
call fcn.759cea0e
mov byte [ebp - 0x5b9], 1
cmp byte [ebp - 0x5b9], bl
jne 0x759ed4a9
mov dword [ebp - 0x594], 0x57
cmp dword [ebp - 0x594], ebx
jne 0x759ed799
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x6bc], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x6bc]
call fcn.75afa971
mov dword [ebp - 0x594], eax
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax]
add esp, 0x1c
push eax
call dword [ecx + 0x14]
push ebx
inc eax
push eax
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
jne 0x759ed780
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ed389
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ed54e
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
jmp 0x759ed2c5
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x6bc], eax
lea eax, [ebp - 0x5f5]
push eax
push ebx
lea eax, [ebp - 0x5b9]
push eax
lea ecx, [ebp - 0x66c]
call fcn.759c6ee9
push eax
push dword [ebp - 0x6bc]
call fcn.75af92cf
add esp, 0x14
mov dword [ebp - 0x594], eax
cmp eax, 0x642
jne 0x759ed6ba
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759ed660
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759ed6b0
call dword [0x75bc8b6c]
mov eax, 0x642
jmp 0x759cbae0
cmp byte [ebp - 0x5b9], bl
je 0x759ed49f
cmp dword [ebp - 0x594], ebx
jne 0x759ed497
push dword [ebp - 0xc4]
lea ecx, [ebp - 0x714]
call fcn.759c6e99
mov eax, dword [ebp - 0x66c]
cmp byte [ebp - 0x5f5], bl
jne 0x759ed6f7
mov eax, dword [ebp - 0x714]
sete cl
movzx ecx, cl
push ecx
push eax
lea ecx, [ebp - 0x628]
call fcn.75a21559
call fcn.759c4b5e
test al, al
jne 0x759ed71c
cmp dword [0x75bcc8ec], 2
jne 0x759ed76f
cmp dword [0x75bc8ca8], ebx
je 0x759ed73d
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f13b0
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
push 0x759f1370
lea ecx, [ebp - 0x58c]
call fcn.759ca705
lea eax, [ebp - 0x66c]
push eax
lea ecx, [ebp - 0x58c]
call fcn.759c7add
push 0x759f9340
lea ecx, [ebp - 0x58c]
call fcn.759ca705
mov eax, dword [ebp - 0x714]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ed497
mov eax, dword [ebp - 0xb0]
dec eax
push eax
push dword [ebp - 0xb4]
lea ecx, [ebp - 0x66c]
call fcn.75a8fc79
mov eax, dword [ebp - 0x66c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x594], ebx
jne 0x759ee86e
cmp byte [ebp - 0x5ed], bl
je 0x759ee1c9
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
mov byte [ebp - 0x5ed], bl
mov byte [ebp - 0x5c9], 1
mov dword [ebp - 0x5e4], ebx
call dword [ecx + 0x20]
cmp word [eax], 0x40
jne 0x759ed7ee
mov dword [ebp - 0x5e4], 3
jmp 0x759ed80a
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
cmp word [eax], 0x7c
jne 0x759ed818
mov dword [ebp - 0x5e4], 4
push 1
push ebx
lea ecx, [ebp - 0x59c]
call fcn.75a1d4e0
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
cmp eax, 1
je 0x759ed85b
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
cmp eax, 1
je 0x759ed85b
push ebx
push 1
push 3
call fcn.759b3f62
add esp, 0xc
test eax, eax
jne 0x759ed85b
push ebx
push ebx
push 4
call fcn.759b3f62
add esp, 0xc
test eax, eax
je 0x759ed865
mov dword [ebp - 0x5e4], 1
mov eax, dword [0x75bcc8ec]
mov dword [ebp - 0x648], ebx
mov dword [ebp - 0x654], ebx
mov dword [ebp - 0x664], ebx
mov dword [ebp - 0x65c], esi
cmp eax, ebx
je 0x759ed8dc
cmp eax, 3
je 0x759ed8dc
push 0x759d9764
lea ecx, [ebp - 0x734]
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x65c]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
mov eax, dword [ebp - 0x734]
mov ecx, dword [eax]
add esp, 0x34
push eax
call dword [ecx + 8]
jmp 0x759ed8ed
push dword [ebp - 0xd4]
lea ecx, [ebp - 0x65c]
call fcn.759c8365
mov eax, dword [ebp - 0xc4]
lea ecx, [ebp - 0x674]
mov dword [ebp - 0x660], esi
mov dword [ebp - 0x674], esi
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
lea ecx, [ebp - 0x660]
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d0]
call fcn.75b67805
add esp, 0xc
push eax
lea ecx, [ebp - 0x654]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x759edab9
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x674]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x660]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x65c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x664]
cmp eax, ebx
je 0x759ed97f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x654]
cmp eax, ebx
je 0x759ed98f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x648]
cmp eax, ebx
je 0x759ed99f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b0]
cmp eax, ebx
je 0x759eda5f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759edaaf
call dword [0x75bc8b6c]
mov eax, 0x658
jmp 0x759cbae0
xor eax, eax
cmp byte [ebp - 0x5b9], bl
sete al
dec eax
and eax, 0xffffffd3
add eax, 0x5c
movzx eax, ax
mov dword [ebp - 0x6b0], eax
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759edec5
push 0x3b
push 2
lea ecx, [ebp - 0x59c]
call fcn.75a1d4c3
mov dword [ebp - 0x608], eax
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
cmp word [eax], 0x3a
jne 0x759edb9c
push 1
push ebx
lea ecx, [ebp - 0x608]
call fcn.75a1d4e0
mov eax, dword [ebp - 0x5b0]
mov dword [ebp - 0x650], eax
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov dword [ebp - 0x5d0], eax
mov eax, dword [ebp - 0x650]
mov eax, dword [eax]
add eax, 0x18
lea ecx, [ebp - 0x648]
mov dword [ebp - 0x634], eax
call fcn.759c6f3c
push eax
mov eax, dword [ebp - 0x634]
push ebx
push dword [ebp - 0x5d0]
push dword [ebp - 0x650]
call dword [eax]
push eax
lea ecx, [ebp - 0x654]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x759edd7d
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ed94b
cmp dword [ebp - 0x5e4], ebx
je 0x759edbad
cmp dword [ebp - 0x5e4], 1
jne 0x759edbe4
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call fcn.75a20380
pop ecx
cmp eax, 3
jne 0x759edbd1
mov dword [ebp - 0x5e4], 4
jmp 0x759edbe4
xor eax, eax
cmp dword [ebp - 0x5e4], ebx
setne al
inc eax
inc eax
mov dword [ebp - 0x5e4], eax
cmp dword [ebp - 0x5e4], 2
mov dword [ebp - 0x6a0], esi
je 0x759edc00
cmp dword [ebp - 0x5e4], 3
jne 0x759edc97
lea eax, [ebp - 0x608]
push eax
lea ecx, [ebp - 0x6a0]
call fcn.759cea0e
cmp dword [ebp - 0x5e4], 2
lea ecx, [ebp - 0x608]
jne 0x759edc4e
lea eax, [ebp - 0x65c]
push eax
call fcn.759cea0e
push 0x5c
lea ecx, [ebp - 0x73c]
call fcn.75a1d449
push eax
lea ecx, [ebp - 0x608]
call fcn.759c7add
mov eax, dword [ebp - 0x73c]
jmp 0x759edc7f
lea eax, [ebp - 0x660]
push eax
call fcn.759cea0e
movzx eax, word [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x744]
call fcn.75a1d449
push eax
lea ecx, [ebp - 0x608]
call fcn.759c7add
mov eax, dword [ebp - 0x744]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea eax, [ebp - 0x6a0]
push eax
lea ecx, [ebp - 0x608]
call fcn.759c7add
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x648]
mov dword [ebp - 0x5d0], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push 2
push dword [ebp - 0x5d0]
call fcn.75afa971
add esp, 0x1c
cmp eax, ebx
je 0x759edd71
cmp dword [ebp - 0x5e4], 2
jne 0x759edd69
lea eax, [ebp - 0x660]
push eax
lea ecx, [ebp - 0x608]
call fcn.759cea0e
movzx eax, word [ebp - 0x6b0]
push eax
lea ecx, [ebp - 0x74c]
call fcn.75a1d449
push eax
lea ecx, [ebp - 0x608]
call fcn.759c7add
mov eax, dword [ebp - 0x74c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea eax, [ebp - 0x6a0]
push eax
lea ecx, [ebp - 0x608]
call fcn.759c7add
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x648]
mov dword [ebp - 0x5d0], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push 2
push dword [ebp - 0x5d0]
call fcn.75afa971
add esp, 0x1c
cmp eax, ebx
jne 0x759edef7
mov eax, dword [ebp - 0x6a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x648]
mov dword [ebp - 0x5d0], eax
mov eax, dword [eax]
add eax, 0x3c
lea ecx, [ebp - 0x664]
mov dword [ebp - 0x634], eax
call fcn.759c6f3c
push eax
mov eax, dword [ebp - 0x634]
push ebx
push dword [ebp - 0x5d0]
call dword [eax]
push eax
lea ecx, [ebp - 0x654]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x759edb7f
mov eax, dword [ebp - 0x664]
mov ecx, dword [eax]
push 9
push eax
call dword [ecx + 0x14]
push 0x26
push ebx
lea ecx, [ebp - 0x690]
mov dword [ebp - 0x690], eax
call fcn.75a1d4a7
push 0x3b
push 3
lea ecx, [ebp - 0x690]
mov dword [ebp - 0x6c4], eax
call fcn.75a1d4e0
push 0x26
push ebx
lea ecx, [ebp - 0x690]
call fcn.75a1d4a7
mov ecx, dword [eax]
push eax
mov dword [ebp - 0x640], eax
call dword [ecx + 0x20]
push eax
push 1
lea ecx, [ebp - 0x6c4]
call fcn.75a1d4fd
test eax, eax
jne 0x759ede6f
cmp byte [ebp - 0x5ed], bl
jne 0x759edf14
cmp byte [ebp - 0x5c9], bl
je 0x759edfc8
test byte [ebp + 0x1c], 0x10
mov byte [ebp - 0x5ed], 1
jne 0x759ede6f
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call sym.msi.dll_MsiQueryProductStateW
cmp eax, 5
je 0x759edfe6
cmp eax, 1
je 0x759edfe6
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
mov byte [ebp - 0x5c9], bl
call dword [ecx + 8]
mov eax, dword [ebp - 0x6c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x690]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x759edae8
cmp byte [ebp - 0x5ed], bl
jne 0x759ee16b
cmp dword [0x75bc8ca8], ebx
je 0x759edee6
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f1270
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
jmp 0x759ee05b
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x6a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759edb8b
cmp dword [0x75bc8ca8], ebx
je 0x759edf35
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f1148
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x690]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x674]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x660]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x65c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x664]
cmp eax, ebx
je 0x759edfa5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x654]
cmp eax, ebx
je 0x759edfb5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x648]
cmp eax, ebx
jne 0x759ed53a
jmp 0x759ed540
cmp dword [0x75bc8ca8], ebx
je 0x759edf35
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f1078
jmp 0x759edf29
cmp dword [0x75bc8ca8], ebx
je 0x759ee01f
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push edi
push edi
push edi
push edi
push eax
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
push 0x759f0f80
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x690]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x608]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x674]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x660]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x65c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x664]
call fcn.759ceb35
lea ecx, [ebp - 0x654]
call fcn.759ceb35
lea ecx, [ebp - 0x648]
call fcn.759ceb35
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x670]
call fcn.759ceb35
lea ecx, [ebp - 0x5b0]
call fcn.759ceb35
jmp 0x759ecd50
mov eax, dword [ebp - 0x674]
mov dword [ebp - 0x67c], 3
mov ecx, dword [eax]
push eax
mov dword [ebp - 0x594], 0x645
call dword [ecx + 8]
mov eax, dword [ebp - 0x660]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x65c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x664]
call fcn.759ceb35
lea ecx, [ebp - 0x654]
call fcn.759ceb35
lea ecx, [ebp - 0x648]
call fcn.759ceb35
jmp 0x759ee86e
lea eax, [ebp - 0x6e0]
push eax
lea eax, [ebp - 0xa4]
push eax
push dword [ebp - 0x5b0]
call fcn.75af920d
add esp, 0xc
mov dword [ebp - 0x594], eax
cmp eax, ebx
jne 0x759ee86e
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ee39c
xor eax, eax
push 0x4c
mov word [ebp - 0x54], ax
lea eax, [ebp - 0x52]
push ebx
push eax
call sub.msvcrt.dll_memset
mov eax, dword [ebp - 0x598]
add esp, 0xc
mov dword [ebp - 0x754], 0x27
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
lea ecx, [ebp - 0x754]
push ecx
lea ecx, [ebp - 0x54]
push ecx
push 0x759c3df8
push eax
call sym.msi.dll_MsiGetProductInfoW
test eax, eax
je 0x759ee28a
cmp dword [0x75bc8ca8], ebx
je 0x759ee279
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push eax
call dword [ecx + 0x20]
push eax
push 0x759f0f00
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
jmp 0x759ee0a0
cmp byte [ebp - 0x639], bl
jne 0x759ee2ab
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x54]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x759ee3b4
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
push dword [ebp - 0x15c]
push dword [ebp - 0x160]
call fcn.759b3cf5
test eax, eax
jge 0x759ee3b4
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x670]
call fcn.759ceb35
lea ecx, [ebp - 0x5b0]
call fcn.759ceb35
jmp 0x759ecf0c
push dword [ebp - 0x160]
lea eax, [ebp - 0xa4]
push eax
call sym.msi.dll_MsiGetProductCodeFromPackageCodeW
mov dword [ebp - 0x594], eax
mov dword [ebp - 0x67c], 3
jmp 0x759ee86e
mov dword [ebp - 0x594], 0x57
jmp 0x759ee86e
lea ecx, [ebp - 0x250]
call fcn.75a210a9
lea eax, [ebp - 0x250]
push eax
push 0x759c3ee0
push dword [ebp - 0x5d8]
mov dword [ebp - 0x248], 0x64
call fcn.759d9e8d
add esp, 0xc
test eax, eax
je 0x759ee41a
push dword [ebp - 0x250]
call fcn.75a1d5ab
movzx eax, ax
pop ecx
mov dword [ebp - 0x6e0], eax
lea eax, [ebp - 0x250]
push eax
push 0x759c3ec4
push dword [ebp - 0x5d8]
mov dword [ebp - 0x248], 0x64
call fcn.759d9e8d
add esp, 0xc
test eax, eax
je 0x759ee495
push dword [ebp - 0x250]
call fcn.75a1d5ab
pop ecx
cmp eax, 1
jne 0x759ee495
cmp dword [0x75bc8ca8], ebx
je 0x759ee474
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f0eb0
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
push 0x759f0e8c
lea ecx, [ebp - 0x58c]
call fcn.759ca705
push dword [ebp - 0x5d8]
lea ecx, [ebp - 0x58c]
call fcn.759ca705
test byte [ebp + 0x1c], 2
je 0x759ee771
lea ecx, [ebp - 0x4cc]
call fcn.75a210a9
lea eax, [ebp - 0x4cc]
push eax
push 0x759c3e10
push dword [ebp - 0x5d8]
mov dword [ebp - 0x4c4], 0x64
call fcn.759d9e8d
add esp, 0xc
test eax, eax
jne 0x759ee4ed
lea ecx, [ebp - 0x4cc]
call fcn.75a210d5
lea ecx, [ebp - 0x250]
call fcn.75a210d5
jmp 0x759cb9c5
mov eax, dword [ebp - 0x6ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x8c]
push dword [ebp - 0x4cc]
lea ecx, [ebp - 0x680]
mov dword [ebp - 0x638], eax
call fcn.759c6e99
push 0x26
push ebx
lea ecx, [ebp - 0x680]
call fcn.75a1d4a7
push 0x27
push ebx
lea ecx, [ebp - 0x680]
mov dword [ebp - 0x6f8], eax
call fcn.75a1d4e0
mov eax, dword [ebp - 0x680]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
cmp word [eax], 0x3a
jne 0x759ee710
mov eax, dword [ebp - 0x638]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
push 3
lea ecx, [ebp - 0x6f8]
call fcn.75a1d4fd
test eax, eax
jne 0x759ee6c6
mov edi, 0x645
mov eax, dword [ebp - 0x6f8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x680]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x638]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x4cc]
call fcn.75a210d5
lea ecx, [ebp - 0x250]
call fcn.75a210d5
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x670]
call fcn.759ceb35
lea ecx, [ebp - 0x5b0]
call fcn.759ceb35
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
lea ecx, [ebp - 0x665]
call fcn.75a5c201
mov eax, edi
jmp 0x759cbae0
push 1
push ebx
lea ecx, [ebp - 0x680]
mov dword [ebp + 8], 2
call fcn.75a1d4e0
push 1
push 4
lea ecx, [ebp - 0x680]
call fcn.75a1d4e0
lea eax, [ebp - 0x680]
push eax
lea ecx, [ebp - 0x5ec]
call fcn.759cea0e
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov dword [ebp - 0x5d8], eax
jmp 0x759ee73d
push dword [ebp - 0x5d8]
push dword [ebp - 0x15c]
push dword [ebp - 0x160]
call fcn.759b3cf5
test eax, eax
jge 0x759ee733
push 0xe
pop edi
jmp 0x759ee572
mov dword [ebp - 0x67c], 7
mov eax, dword [ebp - 0x6f8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x680]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x638]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x4cc]
call fcn.75a210d5
jmp 0x759ee85d
push dword [ebp - 0x5d8]
push dword [ebp - 0x15c]
push dword [ebp - 0x160]
call fcn.759b3cf5
test eax, eax
jge 0x759ee853
lea ecx, [ebp - 0x250]
call fcn.75a210d5
mov eax, dword [0x75bc8fe0]
push esi
call dword [eax + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0xe
pop edi
jmp 0x759ee65c
mov dword [ebp - 0x67c], 7
lea ecx, [ebp - 0x250]
mov dword [ebp - 0x594], ebx
call fcn.75a210d5
push 3
call fcn.759c9083
pop ecx
mov ecx, dword [eax]
push ebx
push 1
push eax
mov dword [ebp - 0x5e8], eax
call dword [ecx + 0x34]
movzx ecx, word [ebp - 0x6e0]
mov eax, dword [ebp - 0x5e8]
mov edx, dword [eax]
push ecx
push 2
push eax
mov dword [ebp - 0x5d0], ecx
call dword [edx + 0x34]
mov eax, dword [ebp - 0x5e8]
mov eax, dword [eax]
push dword [ebp - 0x5d0]
add eax, 0x34
mov dword [ebp - 0x634], eax
call fcn.759cb0fd
pop ecx
push eax
mov eax, dword [ebp - 0x634]
push 3
push dword [ebp - 0x5e8]
call dword [eax]
push dword [ebp - 0x5e8]
mov ecx, 0x75bcc9a0
push 0xb000000
call fcn.759d14b0
cmp dword [ebp - 0x678], ebx
jne 0x759eeb5d
cmp dword [ebp + 8], 2
jne 0x759eeaf2
mov eax, dword [ebp - 0x6ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x24]
mov ecx, dword [eax]
push 1
push eax
mov dword [ebp - 0x75c], eax
call dword [ecx + 0x54]
lea ecx, [ebp - 0x75c]
mov dword [ebp - 0x6a8], eax
call fcn.759ceb35
cmp dword [ebp - 0x6a8], ebx
jne 0x759eea04
lea ecx, [ebp - 0x6a8]
call fcn.759ceb35
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, 0x65f
jmp 0x759ee65c
mov eax, dword [ebp - 0x6a8]
mov eax, dword [eax]
add eax, 0x18
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x5d0], eax
call fcn.759c6f3c
push eax
mov eax, dword [ebp - 0x5d0]
push ebx
push dword [ebp - 0x5d8]
push dword [ebp - 0x6a8]
call dword [eax]
mov dword [ebp - 0x710], eax
lea ecx, [ebp - 0x710]
cmp eax, ebx
je 0x759eea50
call fcn.759ceb35
jmp 0x759ee931
mov dword [ebp - 0x67c], ebx
mov dword [ebp - 0x594], ebx
call fcn.759ceb35
lea ecx, [ebp - 0x6a8]
call fcn.759ceb35
cmp byte [ebp - 0x639], bl
je 0x759eea85
or dword [ebp + 0x1c], 0x80
mov dword [ebp - 0x67c], 2
cmp dword [ebp - 0x678], ebx
jne 0x759ef361
cmp dword [ebp + 8], 3
je 0x759ef361
cmp dword [ebp + 8], 2
jne 0x759eec4e
mov ecx, dword [ebp - 0xb4]
push 0x3a
pop eax
push dword [ebp - 0x5d8]
mov word [ecx], ax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb0]
add eax, 2
dec ecx
push ecx
push eax
call fcn.759b3cf5
test eax, eax
jge 0x759ef36b
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ee7a4
cmp dword [ebp + 8], 3
jne 0x759eeb5d
xor ecx, ecx
jmp 0x759eeb12
add dword [ebp - 0x5d8], 2
lea edx, [eax - 0x30]
cmp edx, 9
ja 0x759eeb53
imul ecx, ecx, 0xa
lea ecx, [ecx + eax - 0x30]
mov eax, dword [ebp - 0x5d8]
movzx eax, word [eax]
cmp eax, ebx
jne 0x759eeafc
add dword [ebp - 0x5d8], 2
push 0xc100d
push ecx
call fcn.75a7df0f
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x670]
call fcn.759cbe5f
cmp dword [ebp - 0x670], ebx
jne 0x759eeb57
mov dword [ebp - 0x594], 6
jmp 0x759eeb79
xor ecx, ecx
jmp 0x759eeb26
mov dword [ebp - 0x594], ebx
cmp dword [ebp - 0x594], ebx
je 0x759eea6c
cmp dword [ebp - 0x594], 0x645
je 0x759eea6c
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, dword [ebp - 0x594]
jmp 0x759ee65c
mov ecx, dword [ebp - 0x160]
cmp word [ecx], bx
je 0x759ef36b
test byte [ebp + 0x1c], 0x80
je 0x759eeec8
cmp dword [ebp + 8], ebx
jne 0x759eeebc
mov dword [ebp - 0x6a4], esi
mov dword [ebp - 0x638], esi
mov dword [ebp - 0x6c0], ebx
cmp dword [0x75bc8ca8], ebx
je 0x759eeca8
push ebx
push ebx
mov eax, 0x759c2dec
push eax
push eax
push eax
push eax
push eax
push eax
push 0x759f0e40
push ebx
push ebx
push 9
call fcn.759de326
add esp, 0x30
push 1
push dword [ebp - 0x620]
lea ecx, [ebp - 0x584]
call fcn.75b53b3e
mov eax, dword [ebp - 0x160]
push ebx
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x638]
mov dword [ebp - 0x5d0], eax
call fcn.759c6ee9
push eax
lea ecx, [ebp - 0x6a4]
call fcn.759c6ee9
push eax
push 1
push ebx
push dword [ebp - 0x5d0]
lea ecx, [ebp - 0x584]
call fcn.75b55364
push eax
lea ecx, [ebp - 0x6c0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x6c0]
cmp eax, ebx
je 0x759eed33
mov ecx, dword [eax]
push 1
push eax
call dword [ecx + 0x1c]
sub eax, 0xaa0
neg eax
sbb eax, eax
and eax, 7
add eax, 0x645
mov dword [ebp - 0x594], eax
jmp 0x759eee8c
lea ecx, [ebp - 0x17c]
call fcn.75a34d5d
push ebx
push ebx
lea eax, [ebp - 0x17c]
push eax
push ebx
push dword [ebp - 0x160]
call fcn.75a6abe6
add esp, 0x14
test eax, eax
jne 0x759eee77
push 0x64
pop eax
push ebx
mov dword [ebp - 0x320], eax
mov dword [ebp - 0x31c], eax
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x764]
push eax
push ebx
push 0x759c3e50
push dword [ebp - 0x17c]
lea ecx, [ebp - 0x318]
mov dword [ebp - 0x764], ebx
mov dword [ebp - 0x324], ecx
call fcn.759b5885
mov eax, dword [ebp - 0x6a4]
mov ecx, dword [eax]
add esp, 0x18
push eax
call dword [ecx + 0x14]
push dword [ebp - 0x324]
mov dword [ebp - 0x5d0], eax
call fcn.75aebc07
add eax, dword [ebp - 0x5d0]
pop ecx
inc eax
cmp dword [ebp - 0xb0], eax
jge 0x759eee29
push ebx
push eax
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
jne 0x759eee29
lea ecx, [ebp - 0x324]
call fcn.75a21440
lea ecx, [ebp - 0x17c]
call fcn.75a3adf6
lea ecx, [ebp - 0x584]
call fcn.75b53d4f
lea ecx, [ebp - 0x6c0]
call fcn.759ceb35
mov eax, dword [ebp - 0x638]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759eead6
mov eax, dword [ebp - 0x6a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
call fcn.759b3cf5
test eax, eax
jl 0x759eede0
push dword [ebp - 0x324]
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
call fcn.759b3d8c
test eax, eax
jl 0x759eede0
lea ecx, [ebp - 0x324]
call fcn.75a21440
jmp 0x759eee81
mov dword [ebp - 0x594], 0x645
lea ecx, [ebp - 0x17c]
call fcn.75a3adf6
lea ecx, [ebp - 0x584]
call fcn.75b53d4f
lea ecx, [ebp - 0x6c0]
call fcn.759ceb35
mov eax, dword [ebp - 0x638]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759eeefc
mov dword [ebp - 0x594], 0x645
jmp 0x759eeefc
xor eax, eax
cmp dword [0x75bc948c], 3
mov dword [ebp - 0xac], 1
setne al
push eax
lea eax, [ebp - 0x67c]
push eax
lea eax, [ebp - 0xb4]
push eax
push ecx
call fcn.75a6ac73
add esp, 0x10
mov dword [ebp - 0x594], eax
cmp dword [ebp - 0x594], ebx
jne 0x759ef36b
cmp byte [ebp - 0x5b9], bl
jne 0x759ef398
lea eax, [ebp - 0x5fd]
push eax
push dword [ebp - 0xb4]
mov dword [ebp - 0x658], esi
call fcn.759d9a99
pop ecx
pop ecx
test al, al
je 0x759ef07a
cmp byte [ebp - 0x5fd], bl
je 0x759eefeb
mov eax, dword [ebp - 0xb0]
push eax
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x724], eax
call fcn.75a1d5c6
cmp dword [ebp - 0xc4], ebx
je 0x759eefe0
push dword [ebp - 0xb4]
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
call fcn.759b3cf5
test eax, eax
jl 0x759eefe0
push ebx
lea eax, [ebp - 0x724]
push eax
push dword [ebp - 0xb4]
push dword [ebp - 0xc4]
call fcn.75b56d79
add esp, 0x10
test al, al
jne 0x759eefa5
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x759eefd5
mov eax, dword [ebp - 0xb4]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x5f4], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x5f4]
call fcn.75afa971
add esp, 0x1c
mov dword [ebp - 0x594], eax
jmp 0x759ef07a
mov eax, dword [ebp - 0x658]
jmp 0x759eee1e
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ef156
cmp dword [0x75bcc8ec], 2
jne 0x759ef156
call fcn.759c4b5e
test al, al
je 0x759ef156
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call fcn.759b5427
cmp eax, 0xffffffff
je 0x759ef175
cmp dword [0x75bc8ca8], ebx
je 0x759ef061
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push eax
call dword [ecx + 0x20]
push eax
push 0x759f1418
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
lea eax, [ebp - 0x590]
push eax
lea ecx, [ebp - 0x658]
call fcn.759cea0e
mov byte [ebp - 0x5b9], 1
cmp byte [ebp - 0x5b9], bl
je 0x759ef145
cmp dword [ebp - 0x594], ebx
jne 0x759ef145
mov eax, dword [ebp - 0x658]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x5f4], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x5f4]
call fcn.75afa971
add esp, 0x1c
push dword [ebp - 0xb0]
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x594], eax
call fcn.75a1d5c6
cmp dword [ebp - 0xc4], ebx
je 0x759eefe0
push dword [ebp - 0xb4]
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
call fcn.759b3cf5
test eax, eax
jl 0x759eefe0
mov eax, dword [ebp - 0x658]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
push ebx
inc eax
push eax
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
je 0x759eefe0
mov eax, dword [ebp - 0xb0]
dec eax
push eax
push dword [ebp - 0xb4]
lea ecx, [ebp - 0x658]
call fcn.75a8fc79
mov eax, dword [ebp - 0x658]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ef36b
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ef175
mov dword [ebp - 0x594], 0x667
jmp 0x759ef07a
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x5f4], eax
lea eax, [ebp - 0x5f5]
push eax
push ebx
lea eax, [ebp - 0x5b9]
push eax
lea ecx, [ebp - 0x658]
call fcn.759c6ee9
push eax
push dword [ebp - 0x5f4]
call fcn.75af92cf
add esp, 0x14
mov dword [ebp - 0x594], eax
cmp eax, 0x642
jne 0x759ef29b
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x658]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, 0x642
jmp 0x759ee65c
cmp byte [ebp - 0x5b9], bl
je 0x759ef145
cmp dword [ebp - 0x594], ebx
jne 0x759ef07a
push dword [ebp - 0xb4]
lea ecx, [ebp - 0x704]
call fcn.759c6e99
mov eax, dword [ebp - 0x658]
cmp byte [ebp - 0x5f5], bl
jne 0x759ef2d8
mov eax, dword [ebp - 0x704]
sete cl
movzx ecx, cl
push ecx
push eax
lea ecx, [ebp - 0x628]
call fcn.75a21559
call fcn.759c4b5e
test al, al
jne 0x759ef2fd
cmp dword [0x75bcc8ec], 2
jne 0x759ef350
cmp dword [0x75bc8ca8], ebx
je 0x759ef31e
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f13b0
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
push 0x759f1370
lea ecx, [ebp - 0x58c]
call fcn.759ca705
lea eax, [ebp - 0x658]
push eax
lea ecx, [ebp - 0x58c]
call fcn.759c7add
push 0x759f9340
lea ecx, [ebp - 0x58c]
call fcn.759ca705
mov eax, dword [ebp - 0x704]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759ef07a
mov dword [ebp - 0x594], 0x645
cmp dword [ebp - 0x594], 0x645
jne 0x759ef38c
cmp dword [ebp + 8], ebx
je 0x759eeb79
mov dword [ebp - 0x67c], 2
jmp 0x759ef398
cmp dword [ebp - 0x594], ebx
jne 0x759eeb79
mov eax, dword [0x75bcc938]
mov dword [ebp - 0x614], esi
mov dword [ebp - 0x700], ebx
mov dword [ebp - 0x6b0], ebx
cmp dword [0x75bcca68], ebx
je 0x759eff3e
cmp eax, ebx
je 0x759ef3cd
mov eax, dword [eax + 8]
shr eax, 0x1f
test al, 1
jne 0x759eff3e
lea ecx, [ebp - 0x61c]
mov dword [ebp - 0x618], ebx
mov dword [ebp - 0x5fc], ebx
mov dword [ebp - 0x604], esi
mov dword [ebp - 0x60c], esi
mov dword [ebp - 0x610], ebx
mov dword [ebp - 0x68c], ebx
mov dword [ebp - 0x61c], ebx
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
call fcn.759d7b55
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x610]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x759efefa
mov eax, dword [ebp - 0x61c]
cmp eax, ebx
je 0x759ef43c
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
test eax, eax
jne 0x759efefa
cmp dword [ebp + 8], 2
je 0x759efefa
cmp dword [ebp + 8], 3
je 0x759ef4f7
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x5f4], eax
mov eax, dword [ebp - 0x620]
mov eax, dword [eax]
add eax, 0x70
lea ecx, [ebp - 0x618]
mov dword [ebp - 0x644], eax
call fcn.759c6f3c
push eax
mov eax, dword [ebp - 0x644]
push ebx
push dword [ebp - 0x5f4]
push dword [ebp - 0x620]
call dword [eax]
push eax
lea ecx, [ebp - 0x610]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x759efefa
mov eax, dword [ebp - 0x618]
mov dword [ebp - 0x5f4], eax
mov eax, dword [ebp - 0x620]
mov eax, dword [eax]
add eax, 0x38
lea ecx, [ebp - 0x5fc]
mov dword [ebp - 0x644], eax
call fcn.759c6f3c
push eax
mov eax, dword [ebp - 0x644]
push 1
push dword [ebp - 0x5f4]
push dword [ebp - 0x620]
call dword [eax]
push eax
lea ecx, [ebp - 0x610]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x759efefa
jmp 0x759ef564
mov ecx, dword [ebp - 0x5d8]
mov dword [ebp - 0x644], ebx
jmp 0x759ef52c
inc ecx
inc ecx
lea edx, [eax - 0x30]
mov dword [ebp - 0x5d8], ecx
cmp edx, 9
ja 0x759efefa
mov edx, dword [ebp - 0x644]
imul edx, edx, 0xa
lea eax, [edx + eax - 0x30]
mov dword [ebp - 0x644], eax
movzx eax, word [ecx]
cmp eax, ebx
jne 0x759ef505
add dword [ebp - 0x5d8], 2
push 0xc100d
push dword [ebp - 0x644]
call fcn.75a7df0f
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x5fc]
call fcn.759cbe5f
cmp dword [ebp - 0x5fc], ebx
je 0x759efefa
mov eax, dword [ebp - 0x5fc]
push 0x759f0c78
lea ecx, [ebp - 0x760]
mov dword [ebp - 0x5e4], ebx
mov dword [ebp - 0x5dc], ebx
mov dword [ebp - 0x594], ebx
mov dword [ebp - 0x644], ebx
mov dword [ebp - 0x5f4], eax
call fcn.759c6e99
mov eax, dword [eax]
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x5f4]
mov eax, dword [eax]
add eax, 0x28
lea ecx, [ebp - 0x5e4]
mov dword [ebp - 0x5d4], eax
call fcn.759c6f3c
push eax
mov eax, dword [ebp - 0x5d4]
push ebx
push dword [ebp - 0x698]
push dword [ebp - 0x5f4]
call dword [eax]
push eax
lea ecx, [ebp - 0x610]
call fcn.759cbe5f
cmp dword [eax], ebx
jne 0x759ef68f
mov eax, dword [ebp - 0x5e4]
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0x38]
push eax
lea ecx, [ebp - 0x5dc]
call fcn.759cbe5f
cmp dword [eax], ebx
je 0x759ef68f
mov eax, dword [ebp - 0x5e4]
mov dword [ebp - 0x5d4], eax
mov eax, dword [eax]
add eax, 0x28
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x5fc]
mov ecx, dword [eax]
push 0x759f0c8c
push eax
call dword [ecx + 0x3c]
push eax
push dword [ebp - 0x5d4]
mov eax, dword [ebp - 0x698]
call dword [eax]
mov dword [ebp - 0x594], eax
cmp eax, ebx
je 0x759ef68f
mov eax, dword [ebp - 0x5e4]
mov dword [ebp - 0x5d4], eax
mov eax, dword [eax]
add eax, 0x28
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x5fc]
mov ecx, dword [eax]
push 0x759f0ca0
push eax
call dword [ecx + 0x3c]
push eax
push dword [ebp - 0x5d4]
mov eax, dword [ebp - 0x698]
call dword [eax]
mov dword [ebp - 0x644], eax
mov byte [ebp - 0x5c9], bl
cmp eax, ebx
jne 0x759ef696
mov byte [ebp - 0x5c9], 1
mov eax, dword [ebp - 0x760]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp byte [ebp - 0x5c9], bl
jne 0x759efee4
mov eax, dword [ebp - 0x5dc]
mov eax, dword [eax]
push dword [ebp - 0x594]
mov dword [ebp - 0x5d4], eax
call fcn.75a1d015
pop ecx
push eax
push dword [ebp - 0x5dc]
mov dword [ebp - 0x5f4], eax
mov eax, dword [ebp - 0x5d4]
call dword [eax + 0x18]
mov eax, dword [ebp - 0x5dc]
push 0x759f92dc
lea ecx, [ebp - 0x730]
mov dword [ebp - 0x5d4], eax
call fcn.759c6e99
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5d4]
mov edx, dword [ecx]
push eax
push dword [ebp - 0x594]
push ecx
call dword [edx + 0x30]
mov eax, dword [ebp - 0x730]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759efee4
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x644]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov ecx, dword [eax]
push eax
mov dword [ebp - 0x5d4], eax
call dword [ecx + 0x10]
movzx eax, ax
mov dword [ebp - 0x698], eax
mov eax, dword [ebp - 0x5d4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp + 8], ebx
jne 0x759ef821
push ebx
lea eax, [ebp - 0xe8]
push 0x104
lea ecx, [ebp - 0xf4]
mov dword [ebp - 0xf0], 1
mov dword [ebp - 0xf4], eax
call fcn.759c5bb8
test al, al
jne 0x759ef7a6
lea ecx, [ebp - 0xf4]
call fcn.759b1681
jmp 0x759efee4
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x6ec], eax
jmp 0x759ef7cc
mov eax, dword [ebp - 0x6ec]
push ebx
inc eax
push eax
lea ecx, [ebp - 0xf4]
call fcn.759c5bb8
test al, al
je 0x759ef796
lea eax, [ebp - 0x6ec]
push eax
push dword [ebp - 0xf4]
push 0x759c3d48
push dword [ebp - 0x5d8]
call sym.msi.dll_MsiGetProductInfoW
cmp eax, 0xea
je 0x759ef7b4
cmp eax, ebx
jne 0x759ef796
push dword [ebp - 0x5d8]
lea ecx, [ebp - 0x604]
call fcn.759c8365
push dword [ebp - 0xf4]
lea ecx, [ebp - 0x60c]
call fcn.759c8365
lea ecx, [ebp - 0xf4]
jmp 0x759ef9fe
cmp dword [ebp + 8], 1
je 0x759ef831
cmp dword [ebp + 8], 3
jne 0x759efa03
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x5f4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
mov eax, dword [ebp - 0x5dc]
push 0x759f91dc
lea ecx, [ebp - 0x788]
mov dword [ebp - 0x5d4], eax
call fcn.759c6e99
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5d4]
mov edx, dword [ecx]
push eax
push dword [ebp - 0x594]
push ecx
call dword [edx + 0x30]
mov eax, dword [ebp - 0x788]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759efee4
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x644]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
lea ecx, [ebp - 0x604]
call fcn.759c755e
push ebx
lea eax, [ebp - 0xf8]
push 0x104
lea ecx, [ebp - 0x104]
mov dword [ebp - 0x100], 1
mov dword [ebp - 0x104], eax
call fcn.759c5bb8
test al, al
jne 0x759ef8f4
lea ecx, [ebp - 0x104]
jmp 0x759ef79c
mov eax, dword [ebp - 0x100]
mov dword [ebp - 0x6f0], eax
jmp 0x759ef91a
mov eax, dword [ebp - 0x6f0]
push ebx
inc eax
push eax
lea ecx, [ebp - 0x104]
call fcn.759c5bb8
test al, al
je 0x759ef8e9
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x5d8], eax
mov eax, dword [ebp - 0x604]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
lea ecx, [ebp - 0x6f0]
push ecx
push dword [ebp - 0x5d8]
push 0x759c3d48
push eax
call sym.msi.dll_MsiGetProductInfoW
cmp eax, 0xea
je 0x759ef902
cmp eax, ebx
jne 0x759ef96b
push dword [ebp - 0x104]
lea ecx, [ebp - 0x60c]
call fcn.759c8365
jmp 0x759ef9f8
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x5f4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
mov eax, dword [ebp - 0x5dc]
push 0x759c3d48
lea ecx, [ebp - 0x738]
mov dword [ebp - 0x5d4], eax
call fcn.759c6e99
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5d4]
mov edx, dword [ecx]
push eax
push dword [ebp - 0x594]
push ecx
call dword [edx + 0x30]
mov eax, dword [ebp - 0x738]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759ef8e9
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x644]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
lea ecx, [ebp - 0x60c]
call fcn.759c755e
lea ecx, [ebp - 0x104]
call fcn.759b1681
push 0x759f56f0
lea ecx, [ebp - 0x768]
mov dword [ebp - 0x6e4], ebx
call fcn.759c6ec1
mov eax, dword [eax]
mov dword [ebp - 0x5d4], eax
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x6e4]
push ecx
push dword [ebp - 0x5d4]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push eax
call fcn.759c73f5
add esp, 0x34
neg eax
sbb al, al
inc al
mov byte [ebp - 0x5c9], al
mov eax, dword [ebp - 0x768]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp byte [ebp - 0x5c9], bl
jne 0x759efee4
mov eax, dword [ebp - 0x6e4]
cmp eax, ebx
je 0x759efaaf
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
mov dword [ebp - 0x68c], eax
mov eax, dword [ebp - 0x6e4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [ebp - 0x68c], 0x80000000
jne 0x759efb5f
mov dword [ebp - 0x68c], ebx
jmp 0x759efb5f
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x6f4], esi
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x5f4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
mov eax, dword [ebp - 0x5dc]
push 0x759f56f0
lea ecx, [ebp - 0x740]
mov dword [ebp - 0x5d4], eax
call fcn.759c6ec1
mov eax, dword [eax]
mov ecx, dword [ebp - 0x5d4]
mov edx, dword [ecx]
push eax
push dword [ebp - 0x594]
push ecx
call dword [edx + 0x30]
mov eax, dword [ebp - 0x740]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5dc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759efb53
mov eax, dword [ebp - 0x5dc]
push dword [ebp - 0x644]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
lea ecx, [ebp - 0x6f4]
call fcn.759c755e
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
movzx eax, ax
mov dword [ebp - 0x68c], eax
mov eax, dword [ebp - 0x6f4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push 0x759ce960
lea ecx, [ebp - 0x750]
mov dword [ebp - 0x640], esi
mov dword [ebp - 0x6c8], esi
mov dword [ebp - 0x6b4], esi
mov dword [ebp - 0x6cc], esi
mov dword [ebp - 0x594], 2
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x640]
mov dword [ebp - 0x5d4], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d4]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
add esp, 0x34
test eax, eax
je 0x759efcc9
push 0x759d9788
lea ecx, [ebp - 0x770]
mov dword [ebp - 0x594], 6
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x6c8]
mov dword [ebp - 0x5d4], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d4]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
add esp, 0x34
test eax, eax
je 0x759efcc9
push 0x759f5790
lea ecx, [ebp - 0x748]
mov dword [ebp - 0x594], 0xe
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x6b4]
mov dword [ebp - 0x5d4], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d4]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
add esp, 0x34
test eax, eax
je 0x759efcc9
push 0x759f5710
lea ecx, [ebp - 0x718]
mov dword [ebp - 0x594], 0x1e
call fcn.759c6ec1
mov eax, dword [eax]
push ebx
push ebx
push ebx
push 1
lea ecx, [ebp - 0x6cc]
mov dword [ebp - 0x5d4], eax
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d4]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x64c]
call fcn.759c73f5
add esp, 0x34
mov byte [ebp - 0x5c9], bl
test eax, eax
jne 0x759efcd0
mov byte [ebp - 0x5c9], 1
test byte [ebp - 0x594], 0x10
je 0x759efcec
mov eax, dword [ebp - 0x718]
mov ecx, dword [eax]
and dword [ebp - 0x594], 0xffffffef
push eax
call dword [ecx + 8]
test byte [ebp - 0x594], 8
je 0x759efd08
mov eax, dword [ebp - 0x748]
mov ecx, dword [eax]
and dword [ebp - 0x594], 0xfffffff7
push eax
call dword [ecx + 8]
test byte [ebp - 0x594], 4
je 0x759efd24
mov eax, dword [ebp - 0x770]
mov ecx, dword [eax]
and dword [ebp - 0x594], 0xfffffffb
push eax
call dword [ecx + 8]
test byte [ebp - 0x594], 2
je 0x759efd39
mov eax, dword [ebp - 0x750]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp byte [ebp - 0x5c9], bl
jne 0x759efeb4
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759efeb4
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
cmp eax, 0x80000000
je 0x759efeb4
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x10]
mov dword [ebp - 0x5f4], eax
mov eax, dword [ebp - 0x6cc]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759efd9c
mov dword [ebp - 0x5f4], 2
push 0x759d9798
push 1
lea ecx, [ebp - 0x6c8]
call fcn.75a1d4fd
test eax, eax
setne al
test byte [ebp - 0x68c], 1
mov byte [ebp - 0x5d4], al
jne 0x759efdd8
mov eax, dword [ebp - 0x6b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov byte [ebp - 0x68c], bl
test eax, eax
je 0x759efddf
mov byte [ebp - 0x68c], 1
mov eax, dword [ebp - 0x604]
mov dword [ebp - 0x6fc], ebx
mov dword [ebp - 0x708], ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
lea ecx, [ebp - 0x708]
push ecx
lea ecx, [ebp - 0x6fc]
push ecx
push dword [ebp - 0x6b8]
push eax
call fcn.75a1e7bb
mov eax, dword [ebp - 0x60c]
mov ecx, dword [eax]
add esp, 0x10
push eax
call dword [ecx + 0x20]
push dword [ebp - 0x698]
cmp dword [ebp - 0x6b8], ebx
push dword [ebp - 0x5f4]
mov ecx, dword [0x75bcca68]
push eax
push dword [ebp - 0x68c]
setne al
push dword [ebp - 0x5d4]
cmp dword [ebp - 0x6d4], ebx
movzx eax, al
push eax
setne al
cmp dword [ebp - 0x6fc], ebx
movzx eax, al
push eax
setne al
cmp dword [ebp - 0x708], ebx
movzx eax, al
push eax
setne al
movzx eax, al
push eax
mov eax, dword [ebp + 0x1c]
shr eax, 4
and al, 1
movzx eax, al
push eax
call fcn.75a1df49
mov eax, dword [0x75bc8050]
cmp eax, 6
jg 0x759efea3
jne 0x759efeb4
mov eax, dword [0x75bc8030]
cmp eax, ebx
jg 0x759efea3
jne 0x759efeb4
cmp dword [0x75bcca80], ebx
jl 0x759efeb4
push dword [ebp - 0x5fc]
mov ecx, dword [0x75bcca68]
call fcn.75a3b8c1
mov eax, dword [ebp - 0x6cc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x6c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x640]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5dc]
call fcn.759ceb35
lea ecx, [ebp - 0x5e4]
call fcn.759ceb35
lea ecx, [ebp - 0x61c]
call fcn.759ceb35
lea ecx, [ebp - 0x610]
call fcn.759ceb35
mov eax, dword [ebp - 0x60c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x604]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5fc]
call fcn.759ceb35
lea ecx, [ebp - 0x618]
call fcn.759ceb35
mov eax, dword [ebp - 0x67c]
push 2
pop ecx
cmp eax, ecx
jne 0x759f012a
cmp dword [ebp + 8], 3
je 0x759f012a
cmp dword [ebp + 8], ecx
je 0x759f012a
cmp byte [ebp - 0x5b9], bl
jne 0x759f012a
mov eax, dword [ebp - 0xb4]
push dword [ebp - 0x6b8]
mov dword [ebp - 0x5d4], eax
lea eax, [ebp - 0x6b0]
push eax
push ebx
push dword [ebp - 0x620]
lea ecx, [ebp - 0x678]
mov dword [ebp - 0x678], esi
call fcn.759c6ee9
push eax
lea eax, [ebp - 0x700]
push eax
lea ecx, [ebp - 0x614]
call fcn.759c6ee9
push eax
push dword [ebp - 0x5d4]
call fcn.75af8b38
add esp, 0x20
mov dword [ebp - 0x594], eax
cmp eax, ebx
jne 0x759f0049
cmp dword [ebp + 8], 1
mov eax, dword [ebp - 0xc4]
je 0x759effdd
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x6d4], eax
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
mov dword [ebp - 0x5d4], eax
movzx eax, byte [ebp - 0x5dd]
neg eax
sbb eax, eax
not eax
lea ecx, [ebp - 0x6d0]
and eax, ecx
cmp byte [ebp - 0x5dd], bl
push eax
push dword [ebp - 0x6d4]
sete al
movzx eax, al
push eax
lea ecx, [ebp - 0x5b0]
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x5d4]
call fcn.75afa971
add esp, 0x1c
mov dword [ebp - 0x594], eax
cmp eax, ebx
je 0x759f00c3
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
cmp dword [ebp - 0x6b0], ebx
je 0x759f00a6
cmp dword [0x75bcc8ec], 2
jne 0x759f0093
push 1
lea ecx, [ebp - 0x79c]
call fcn.759b87f0
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x79c]
call fcn.759b87d1
jmp 0x759f00a6
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp - 0x678]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759eeb85
cmp dword [ebp - 0x700], ebx
je 0x759f0119
push 0x759f0e08
lea ecx, [ebp - 0x58c]
call fcn.759ca705
mov eax, dword [ebp - 0x678]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
lea ecx, [ebp - 0x58c]
test eax, eax
je 0x759f00ff
lea eax, [ebp - 0x678]
push eax
call fcn.759c7add
jmp 0x759f0109
push 0x759f0cac
call fcn.759ca705
push 0x759cc38c
lea ecx, [ebp - 0x58c]
call fcn.759ca705
mov eax, dword [ebp - 0x678]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x759f0387
cmp dword [ebp + 8], 1
jne 0x759f02eb
cmp eax, 1
jne 0x759f02eb
mov eax, dword [ebp - 0xb4]
push ebx
push ebx
push ebx
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x5d4], eax
call fcn.759c6f3c
push eax
push dword [ebp - 0x620]
push ebx
push dword [ebp - 0x5d4]
call fcn.75afa971
add esp, 0x1c
mov dword [ebp - 0x594], eax
cmp eax, ebx
jne 0x759f00b2
cmp byte [ebp - 0x5dd], bl
jne 0x759f02a1
push ebx
lea eax, [ebp - 0x6d0]
push eax
push 1
push 0x40000
push 1
call dword [0x75bc8c1c]
test eax, eax
jne 0x759f02a1
cmp dword [0x75bc8ca8], ebx
je 0x759f01cd
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x75a0adf8
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, 0x659
jmp 0x759ee65c
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0xb0], eax
jge 0x759f02cb
push ebx
push eax
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
jne 0x759f02cb
mov eax, dword [ebp - 0x614]
jmp 0x759eee1e
push dword [ebp - 0xc4]
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
call fcn.759b3cf5
test eax, eax
jl 0x759f02c0
jmp 0x759f0387
cmp byte [ebp - 0x5b9], bl
je 0x759f033d
cmp eax, ecx
jne 0x759f033d
cmp byte [ebp - 0x5dd], bl
jne 0x759f033d
lea eax, [ebp - 0x6d0]
push eax
push ebx
push ebx
push dword [ebp - 0xc4]
push dword [ebp - 0xb4]
push dword [ebp - 0x5b0]
push dword [ebp - 0x620]
call fcn.75af663a
add esp, 0x1c
test al, al
jne 0x759f0387
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
jmp 0x759f01cd
cmp dword [ebp + 8], ebx
jne 0x759f0370
cmp eax, 1
jne 0x759f037b
cmp byte [ebp - 0x5dd], bl
jne 0x759f0387
push ebx
lea eax, [ebp - 0x6d0]
push eax
push 1
push 0x40000
push 1
call dword [0x75bc8c1c]
test eax, eax
je 0x759f01a6
jmp 0x759f0387
cmp dword [ebp + 8], ecx
je 0x759f0387
cmp dword [ebp + 8], 3
je 0x759f0387
cmp byte [ebp - 0x5dd], bl
je 0x759f01cd
cmp byte [ebp - 0x5b9], bl
je 0x759f03e1
cmp byte [ebp - 0x5fd], bl
je 0x759f05c1
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0xb0], eax
jge 0x759f03be
push ebx
push eax
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
je 0x759f02c0
mov eax, dword [ebp - 0xc4]
add eax, 0xe
push eax
push dword [ebp - 0xb0]
push dword [ebp - 0xb4]
call fcn.759b3cf5
test eax, eax
jl 0x759f02c0
call fcn.759ca790
mov eax, dword [ebp - 0x5b0]
mov dword [ebp - 0x5d4], eax
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
mov dword [ebp - 0x688], ebx
mov byte [ebp - 0x5c9], bl
call dword [ecx + 0x20]
push dword [ebp - 0x684]
lea ecx, [ebp - 0x70c]
push dword [ebp - 0x6d0]
push ecx
push dword [ebp + 0x1c]
push dword [ebp - 0x6ac]
push dword [ebp - 0x670]
push dword [ebp - 0x5d4]
push 2
push 1
push eax
push dword [ebp - 0x160]
push dword [ebp - 0xb4]
call fcn.75af9539
add esp, 0x30
push ebx
lea ecx, [ebp - 0x5b0]
mov dword [ebp - 0x594], eax
call fcn.759cbe5f
mov dword [ebp - 0x69c], esi
cmp dword [ebp - 0x594], ebx
jne 0x759f0515
mov esi, dword [ebp - 0x70c]
mov eax, dword [esi]
push esi
call dword [eax + 0x28]
push eax
lea ecx, [ebp - 0x688]
call fcn.759cbe5f
mov eax, dword [esi]
push ebx
push dword [ebp - 0x694]
push esi
call dword [eax + 0x38]
mov dword [ebp - 0x684], eax
mov eax, dword [esi]
push esi
call dword [eax + 0x170]
push eax
lea ecx, [ebp - 0x790]
call fcn.75a2103e
push eax
lea ecx, [ebp - 0x69c]
call fcn.759cea0e
mov eax, dword [ebp - 0x790]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [ebp - 0x684]
call fcn.75af5a34
mov esi, dword [ebp - 0x70c]
add esp, 4
push dword [ebp - 0x684]
mov dword [0x75bcc8e4], eax
mov eax, dword [esi]
push esi
call dword [eax + 0x18]
cmp dword [0x75bcc8ec], ebx
jne 0x759f0500
cmp eax, 0xfffffffd
jne 0x759f0500
mov byte [ebp - 0x5c9], 1
push eax
call fcn.75af5a34
add esp, 4
mov dword [ebp - 0x594], eax
mov eax, dword [esi]
push esi
call dword [eax + 8]
call fcn.759ca790
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x6b0], ebx
je 0x759f0746
cmp dword [0x75bcc8ec], 2
jne 0x759f0737
push 1
lea ecx, [ebp - 0x7ac]
call fcn.759b87f0
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call esi
test eax, eax
jne 0x759f05b1
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x5f4], 0xa
call esi
cmp eax, 0x20
jne 0x759f05b1
cmp dword [ebp - 0x5f4], ebx
jle 0x759f05b1
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x759f05b1
call esi
dec dword [ebp - 0x5f4]
push 0xc8
mov dword [ebp - 0x5d4], eax
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x5d4], 0x20
je 0x759f0570
lea ecx, [ebp - 0x7ac]
call fcn.759b87d1
jmp 0x759f0746
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0x6e8], eax
push 0x20000000
lea eax, [ebp - 0x6e8]
push eax
push dword [ebp - 0xb4]
push dword [ebp - 0xc4]
call fcn.75b55d11
add esp, 0x10
test eax, eax
jne 0x759f03e1
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x5f4], eax
cmp eax, 0x7a
jne 0x759f064a
push ebx
push dword [ebp - 0x6e8]
lea ecx, [ebp - 0xb4]
call fcn.759c5bb8
test al, al
je 0x759f02c0
push 0x20000000
lea eax, [ebp - 0x6e8]
push eax
push dword [ebp - 0xb4]
push dword [ebp - 0xc4]
call fcn.75b55d11
add esp, 0x10
test eax, eax
je 0x759f0656
mov dword [ebp - 0x5f4], ebx
cmp dword [ebp - 0x5f4], ebx
je 0x759f03e1
push ebx
lea ecx, [ebp - 0x5b0]
call fcn.759cbe5f
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, dword [ebp - 0x5f4]
jmp 0x759ee65c
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
push eax
call esi
mov esi, dword [ebp - 0x688]
cmp esi, ebx
je 0x759f0948
test dword [ebp + 0x1c], 0x103
jne 0x759f0948
cmp dword [0x75bcc8ec], 2
mov dword [ebp - 0x650], ebx
mov byte [ebp - 0x684], 1
jne 0x759f0789
mov eax, dword [esi]
push esi
call dword [eax + 0x1c]
test al, al
je 0x759f0796
mov byte [ebp - 0x684], bl
jmp 0x759f0796
lea eax, [ebp - 0x650]
push eax
call fcn.759cdc45
pop ecx
cmp dword [0x75bcc8ec], 2
jne 0x759f08d0
cmp dword [0x75bc8ca8], ebx
je 0x759f07c4
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f0da0
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
mov eax, dword [0x75bcc938]
cmp eax, ebx
jne 0x759f08c7
lea ecx, [ebp - 0x650]
call fcn.759cf5f7
mov eax, dword [ebp - 0x69c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x688]
call fcn.759ceb35
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edi, 0x643
jmp 0x759ee65c
mov byte [eax + 0x2dd], 1
jmp 0x759f0937
cmp dword [0x75bc8ca8], ebx
je 0x759f08f1
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push edi
push 0x759f0d30
push ebx
push ebx
push 9
call fcn.759c26bf
add esp, 0x30
push 0xc
call fcn.75a1d0e9
pop ecx
cmp eax, ebx
je 0x759f0906
mov ecx, eax
call fcn.75a349ea
jmp 0x759f0908
xor eax, eax
push eax
lea ecx, [ebp - 0x634]
call fcn.75a2103e
push dword [ebp - 0x684]
mov eax, dword [ebp - 0x688]
push dword [ebp - 0x634]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x28]
lea ecx, [ebp - 0x634]
call fcn.759ceb35
lea ecx, [ebp - 0x650]
call fcn.759cf5f7
mov esi, dword [ebp - 0x688]
mov eax, dword [ebp - 0x69c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
je 0x759f0a99
push 0x3b
push 2
lea ecx, [ebp - 0x69c]
call fcn.75a1d4c3
push eax
lea ecx, [ebp - 0x5d0]
call fcn.75a2103e
mov esi, dword [ebp - 0x5d0]
mov eax, dword [esi]
push esi
call dword [eax + 0x14]
test eax, eax
jne 0x759f0992
mov eax, dword [esi]
push esi
call dword [eax + 8]
jmp 0x759f0a7f
cmp dword [0x75bcc8ec], 2
jne 0x759f0a14
push 1
lea ecx, [ebp - 0x7a4]
call fcn.759b87f0
cmp dword [0x75bc8ca8], ebx
je 0x759f09cf
mov eax, dword [esi]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push esi
call dword [eax + 0x20]
push eax
push 0x759f9ec8
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
mov eax, dword [esi]
push esi
call dword [eax + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x759f0a07
cmp dword [0x75bc8ca8], ebx
je 0x759f0a07
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x759f0cb0
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
lea ecx, [ebp - 0x7a4]
call fcn.759b87d1
jmp 0x759f0a73
cmp dword [0x75bc8ca8], ebx
je 0x759f0a3b
mov eax, dword [esi]
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
push esi
call dword [eax + 0x20]
push eax
push 0x759f9ec8
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
mov eax, dword [esi]
push esi
call dword [eax + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x759f0a73
cmp dword [0x75bc8ca8], ebx
je 0x759f0a73
push ebx
push ebx
push edi
push edi
push edi
push edi
push edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x759f0cb0
push ebx
push ebx
push 0xa
call fcn.759c26bf
add esp, 0x30
mov eax, dword [ebp - 0x5d0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x69c]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
test eax, eax
jne 0x759f095c
mov esi, dword [ebp - 0x688]
cmp byte [ebp - 0x5c9], bl
je 0x759f0aab
cmp esi, ebx
je 0x759f0aab
mov eax, dword [esi]
push esi
call dword [eax + 0x14]
push ebx
lea ecx, [ebp - 0x688]
call fcn.759cbe5f
mov eax, dword [ebp - 0x69c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x688]
call fcn.759ceb35
mov eax, dword [ebp - 0x614]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x5e8]
call fcn.759ceb35
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0xd4]
call fcn.759cfd82
mov eax, dword [ebp - 0x58c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x590]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5b8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x598]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x59c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5ac]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5a8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x670]
call fcn.759ceb35
lea ecx, [ebp - 0x5b0]
call fcn.759ceb35
lea ecx, [ebp - 0x628]
call fcn.759ceb81
lea ecx, [ebp - 0x160]
call fcn.759ceb45
lea ecx, [ebp - 0xe4]
call fcn.759cfd82
lea ecx, [ebp - 0xb4]
call fcn.759b1681
lea ecx, [ebp - 0xc4]
call fcn.759cfd82
lea ecx, [ebp - 0x630]
call fcn.759b4003
lea ecx, [ebp - 0x665]
call fcn.75a5c201
mov eax, dword [ebp - 0x594]
jmp 0x759cbae0
push dword [ebp - 0x160]
call fcn.759c6f79
pop ecx
cmp dword [ebp - 0xe0], 1
jle 0x759f0c27
push dword [ebp - 0xe4]
call fcn.759c6f79
pop ecx
lea ecx, [ebp - 0xb4]
call fcn.759b1681
cmp dword [ebp - 0xc0], 1
jle 0x759f0c47
push dword [ebp - 0xc4]
call fcn.759c6f79
pop ecx
lea ecx, [ebp - 0x630]
call fcn.759b4003
cmp byte [ebp - 0x585], bl
je 0x759f0c60
call dword [0x75bc8b6c]
push 0xe
pop eax
jmp 0x759cbae0
mov eax, 0x643
jmp 0x759cbae0