Function at 0x449510
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47e5e7
mov eax, dword fs:[0]
push eax
sub esp, 0xbc
mov eax, dword [0x4a8800]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xc8], ebx
mov dword [ebx], 0
mov dword [ebx + 4], 0
call fcn.0044aa00
mov dword [ebx], eax
mov dword [ebp - 4], 0
mov esi, dword [0x4a9c14]
mov dword [ebp - 0xc0], esi
mov eax, dword [ebp + 8]
push 0x497df8
movzx eax, ax
push eax
mov byte [ebp - 4], 1
push dword [0x4abb58]
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov edi, eax
test edi, edi
je 0x449654
push edi
push 0
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov ebx, eax
test ebx, ebx
je 0x44964e
push edi
push 0
call dword [sym.imp.KERNEL32.dll_SizeofResource]
push ebx
mov edi, eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov dword [ebp - 0xb8], eax
test eax, eax
je 0x44964e
lea esi, [edi + 1]
push esi
call fcn.00459559
push edi
push dword [ebp - 0xb8]
mov ebx, eax
push ebx
call fcn.0045b660
add esp, 0x10
mov byte [ebx + edi], 0
lea ecx, [ebp - 0xc0]
push esi
call fcn.00423df0
test eax, eax
je 0x44960a
mov eax, dword [ebp - 0xc0]
xor ecx, ecx
mov dword [eax - 8], esi
mov word [eax + esi*2], cx
push esi
push eax
push edi
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea ecx, [ebp - 0xc0]
mov edi, eax
call fcn.00424000
mov esi, dword [ebp - 0xc0]
cmp edi, 0xffffffff
jne 0x44963c
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
xor eax, eax
mov dword [esi - 8], edi
push ebx
mov word [esi + edi*2], ax
call fcn.0045a610
add esp, 4
mov ebx, dword [ebp - 0xbc]
cmp dword [esi - 8], 0
je 0x44a532
mov ecx, esi
call fcn.0044d300
mov ebx, eax
mov dword [ebp - 0xac], 0
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0xa8], 0
call fcn.00430790
mov dword [ebp - 0xac], eax
xor eax, eax
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.0042db50
add esp, 8
xor eax, eax
mov dword [ebp - 0x2c], 7
mov dword [ebp - 0x30], 0
mov word [ebp - 0x40], ax
push 2
push eax
push 0x496694
lea ecx, [ebp - 0x70]
mov byte [ebp - 4], 5
call fcn.0042a750
lea ecx, [ebp - 0x40]
push 2
cmp eax, 0xffffffff
je 0x4496ed
push 0x496694
jmp 0x4496f2
push 0x49668c
call fcn.00422d00
mov ecx, ebx
call fcn.0044d1b0
mov ecx, ebx
mov esi, eax
call fcn.0044d250
cmp esi, eax
je 0x449803
nop
mov ecx, dword [esi]
test ecx, ecx
je 0x449767
lea eax, [ebp - 0xb4]
push eax
call fcn.00450200
push 4
mov edi, eax
call fcn.0045a077
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44973e
mov eax, dword [edi]
mov dword [ecx], eax
mov dword [edi], 0
mov eax, dword [ebp - 0xb4]
test eax, eax
je 0x449767
dec dword [eax + 0x48]
mov edi, dword [ebp - 0xb4]
cmp dword [edi + 0x48], 0
jne 0x449767
mov ecx, edi
call fcn.0044fb00
push edi
call fcn.0045a050
add esp, 4
mov ecx, dword [esi]
call fcn.0044d410
mov edx, eax
mov dword [ebp - 0x14], 7
xor eax, eax
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
cmp word [edx], ax
jne 0x44978d
xor ecx, ecx
jmp 0x4497a1
mov ecx, edx
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449792
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00422d00
mov byte [ebp - 4], 6
lea eax, [ebp - 0x40]
cmp dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x28]
push dword [ebp - 0x30]
cmovae eax, dword [ebp - 0x40]
push eax
push dword [ebp - 0x18]
push 0
call fcn.00422af0
test eax, eax
mov byte [ebp - 4], 5
sete bl
cmp dword [ebp - 0x14], 8
jb 0x4497e5
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
test bl, bl
jne 0x4498a0
mov ecx, dword [ebp - 0xb8]
add esi, 4
call fcn.0044d250
cmp esi, eax
jne 0x449710
push 0x14
xor eax, eax
mov dword [ebp - 0x14], 7
push str.IDS_INTERNET_PROBLEM
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
call fcn.00422d00
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0xac]
mov esi, eax
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xb0], 0
mov ebx, dword [eax + 4]
cmp byte [ebx + 0xd], 0
jne 0x449baf
lea esp, [esp]
cmp dword [ebp - 0x14], 8
lea ecx, [ebx + 0x10]
mov eax, dword [ecx + 0x10]
lea edx, [ebp - 0x28]
cmovae edx, dword [ebp - 0x28]
cmp dword [ecx + 0x14], 8
mov dword [ebp - 0xa4], eax
jb 0x44986f
mov ecx, dword [ecx]
cmp eax, dword [ebp - 0x18]
cmovb edi, eax
test edi, edi
jne 0x449b61
xor eax, eax
mov edi, dword [ebp - 0x18]
test eax, eax
jne 0x449b8f
mov ecx, dword [ebp - 0xa4]
cmp ecx, edi
jae 0x449b86
or eax, 0xffffffff
jmp 0x449b8d
mov ecx, dword [esi]
test ecx, ecx
jne 0x4498b0
xor edi, edi
mov dword [ebp - 0xb4], edi
jmp 0x449911
lea eax, [ebp - 0xc4]
push eax
call fcn.00450110
push 4
mov esi, eax
call fcn.0045a077
mov edi, eax
mov dword [ebp - 0xb4], eax
add esp, 4
test edi, edi
je 0x4498e0
mov eax, dword [esi]
mov dword [edi], eax
mov dword [esi], 0
jmp 0x4498e8
xor edi, edi
mov dword [ebp - 0xb4], edi
mov eax, dword [ebp - 0xc4]
test eax, eax
je 0x449911
dec dword [eax + 0x48]
mov esi, dword [ebp - 0xc4]
cmp dword [esi + 0x48], 0
jne 0x449911
mov ecx, esi
call fcn.0044fb00
push esi
call fcn.0045a050
add esp, 4
mov ecx, edi
call fcn.0044d1b0
mov ebx, eax
mov dword [ebp - 0xb8], eax
mov esi, dword [edi]
mov eax, dword [esi + 0x48]
cmp eax, 1
jbe 0x44994a
dec eax
push 0x70
mov dword [esi + 0x48], eax
call fcn.0045a077
add esp, 4
test eax, eax
je 0x449948
push esi
mov ecx, eax
call fcn.0044f4d0
mov esi, eax
jmp 0x44994a
xor esi, esi
mov dword [edi], esi
mov al, byte [esi]
cmp al, 5
je 0x44995a
cmp al, 4
je 0x44995a
xor eax, eax
jmp 0x4499aa
cmp byte [esi + 0x4c], 0
jne 0x44999f
movzx eax, al
dec eax
cmp eax, 4
ja case.0x449969.3
jmp dword [eax*4 + 0x44a560]
mov ecx, esi
call fcn.0044fbe0
jmp 0x44999b
mov ecx, esi
call fcn.0044fd30
jmp 0x44999b
mov ecx, esi
call fcn.0044fd90
jmp 0x44999b
mov ecx, esi
call fcn.0044fdf0
jmp 0x44999b
mov ecx, esi
call fcn.0044fee0
mov byte [esi + 0x4c], 1
mov eax, dword [esi + 0x68]
mov ecx, dword [eax + 4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
cmp ebx, eax
je 0x449803
mov ecx, dword [ebx]
call fcn.0044d410
mov edx, eax
mov dword [ebp - 0x14], 7
xor eax, eax
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
cmp word [edx], ax
jne 0x4499d8
xor ecx, ecx
jmp 0x4499ef
mov ecx, edx
lea esi, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4499e0
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00422d00
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0xac]
mov esi, eax
mov edi, dword [ebp - 0x18]
mov ebx, dword [eax + 4]
cmp byte [ebx + 0xd], 0
jne 0x449a9a
cmp dword [ebp - 0x14], 8
lea eax, [ebx + 0x10]
mov ecx, dword [eax + 0x10]
lea edx, [ebp - 0x28]
cmovae edx, dword [ebp - 0x28]
cmp dword [eax + 0x14], 8
mov dword [ebp - 0xb0], ecx
jb 0x449a34
mov eax, dword [eax]
cmp ecx, dword [ebp - 0x18]
cmovb edi, ecx
test edi, edi
jne 0x449a56
xor eax, eax
mov edi, dword [ebp - 0x18]
test eax, eax
jne 0x449a7e
mov ecx, dword [ebp - 0xb0]
cmp ecx, edi
jae 0x449a75
or eax, 0xffffffff
jmp 0x449a7c
mov cx, word [eax]
cmp cx, word [edx]
jne 0x449a67
add eax, 2
add edx, 2
dec edi
jmp 0x449a3c
mov ax, word [eax]
cmp ax, word [edx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x449a40
xor eax, eax
cmp ecx, edi
setne al
test eax, eax
sets al
test al, al
je 0x449a8a
mov ebx, dword [ebx + 8]
jmp 0x449a8e
mov esi, ebx
mov ebx, dword [ebx]
cmp byte [ebx + 0xd], 0
je 0x449a15
mov eax, dword [ebp - 0xac]
cmp esi, eax
je 0x449abd
cmp dword [esi + 0x24], 8
lea eax, [esi + 0x10]
mov ecx, dword [eax + 0x10]
jb 0x449aac
mov eax, dword [eax]
push ecx
push eax
push edi
push 0
lea ecx, [ebp - 0x28]
call fcn.00422af0
test eax, eax
jns 0x449af8
lea eax, [ebp - 0x28]
push ecx
mov dword [ebp - 0xb0], eax
lea eax, [ebp - 0xb0]
push eax
push ecx
lea ecx, [ebp - 0xac]
call fcn.00430d20
push eax
add eax, 0x10
lea ecx, [ebp - 0xac]
push eax
push esi
lea eax, [ebp - 0xa4]
push eax
call fcn.00430d70
mov esi, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0xb8]
lea edi, [esi + 0x28]
mov ecx, dword [ebx]
call fcn.0044d4d0
mov edx, eax
cmp word [edx], 0
jne 0x449b14
xor ecx, ecx
jmp 0x449b2f
mov ecx, edx
lea esi, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449b20
sub ecx, esi
sar ecx, 1
push ecx
push edx
mov ecx, edi
call fcn.00422d00
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x449b4d
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
mov edi, dword [ebp - 0xb4]
add ebx, 4
mov dword [ebp - 0xb8], ebx
jmp 0x449920
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x449b75
add ecx, 2
add edx, 2
dec edi
jmp 0x449877
movzx eax, word [ecx]
cmp ax, word [edx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x44987f
xor eax, eax
cmp ecx, edi
setne al
test eax, eax
sets al
test al, al
je 0x449b9b
mov ebx, dword [ebx + 8]
jmp 0x449b9f
mov esi, ebx
mov ebx, dword [ebx]
cmp byte [ebx + 0xd], 0
je 0x449850
mov eax, dword [ebp - 0xac]
cmp esi, eax
je 0x449bd2
cmp dword [esi + 0x24], 8
lea eax, [esi + 0x10]
mov ecx, dword [eax + 0x10]
jb 0x449bc1
mov eax, dword [eax]
push ecx
push eax
push edi
push 0
lea ecx, [ebp - 0x28]
call fcn.00422af0
test eax, eax
jns 0x449c0d
lea eax, [ebp - 0x28]
push ecx
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa4]
push eax
push ecx
lea ecx, [ebp - 0xac]
call fcn.00430d20
push eax
add eax, 0x10
lea ecx, [ebp - 0xac]
push eax
push esi
lea eax, [ebp - 0xa4]
push eax
call fcn.00430d70
mov esi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xbc]
lea eax, [ebp - 0xb0]
push eax
add esi, 0x28
call fcn.0044a5b0
cmp eax, esi
je 0x449c32
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x449c47
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push 8
xor eax, eax
mov dword [ebp - 0x14], 7
push 0x497b28
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
call fcn.00422d00
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0xac]
mov esi, eax
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xb0], 1
mov ebx, dword [eax + 4]
cmp byte [ebx + 0xd], 0
jne 0x449d15
cmp dword [ebp - 0x14], 8
lea ecx, [ebx + 0x10]
mov eax, dword [ecx + 0x10]
lea edx, [ebp - 0x28]
cmovae edx, dword [ebp - 0x28]
cmp dword [ecx + 0x14], 8
mov dword [ebp - 0xa4], eax
jb 0x449caf
mov ecx, dword [ecx]
cmp eax, dword [ebp - 0x18]
cmovb edi, eax
test edi, edi
jne 0x449cd1
xor eax, eax
mov edi, dword [ebp - 0x18]
test eax, eax
jne 0x449cf9
mov ecx, dword [ebp - 0xa4]
cmp ecx, edi
jae 0x449cf0
or eax, 0xffffffff
jmp 0x449cf7
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x449ce2
add ecx, 2
add edx, 2
dec edi
jmp 0x449cb7
movzx eax, word [ecx]
cmp ax, word [edx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x449cbb
xor eax, eax
cmp ecx, edi
setne al
test eax, eax
sets al
test al, al
je 0x449d05
mov ebx, dword [ebx + 8]
jmp 0x449d09
mov esi, ebx
mov ebx, dword [ebx]
cmp byte [ebx + 0xd], 0
je 0x449c90
mov eax, dword [ebp - 0xac]
cmp esi, eax
je 0x449d38
cmp dword [esi + 0x24], 8
lea eax, [esi + 0x10]
mov ecx, dword [eax + 0x10]
jb 0x449d27
mov eax, dword [eax]
push ecx
push eax
push edi
push 0
lea ecx, [ebp - 0x28]
call fcn.00422af0
test eax, eax
jns 0x449d73
lea eax, [ebp - 0x28]
push ecx
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa4]
push eax
push ecx
lea ecx, [ebp - 0xac]
call fcn.00430d20
push eax
add eax, 0x10
lea ecx, [ebp - 0xac]
push eax
push esi
lea eax, [ebp - 0xa4]
push eax
call fcn.00430d70
mov esi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xbc]
lea eax, [ebp - 0xb0]
push eax
add esi, 0x28
call fcn.0044a5b0
cmp eax, esi
je 0x449d98
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x449dad
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push 0x11
xor eax, eax
mov dword [ebp - 0x14], 7
push str.IDS_ERROR_CAPTION
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
call fcn.00422d00
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0xac]
mov esi, eax
mov edi, dword [ebp - 0x18]
mov dword [ebp - 0xb0], 2
mov ebx, dword [eax + 4]
cmp byte [ebx + 0xd], 0
jne 0x449e7b
cmp dword [ebp - 0x14], 8
lea ecx, [ebx + 0x10]
mov eax, dword [ecx + 0x10]
lea edx, [ebp - 0x28]
cmovae edx, dword [ebp - 0x28]
cmp dword [ecx + 0x14], 8
mov dword [ebp - 0xa4], eax
jb 0x449e15
mov ecx, dword [ecx]
cmp eax, dword [ebp - 0x18]
cmovb edi, eax
test edi, edi
jne 0x449e37
xor eax, eax
mov edi, dword [ebp - 0x18]
test eax, eax
jne 0x449e5f
mov ecx, dword [ebp - 0xa4]
cmp ecx, edi
jae 0x449e56
or eax, 0xffffffff
jmp 0x449e5d
mov ax, word [ecx]
cmp ax, word [edx]
jne 0x449e48
add ecx, 2
add edx, 2
dec edi
jmp 0x449e1d
movzx eax, word [ecx]
cmp ax, word [edx]
sbb eax, eax
and eax, 0xfffffffe
inc eax
jmp 0x449e21
xor eax, eax
cmp ecx, edi
setne al
test eax, eax
sets al
test al, al
je 0x449e6b
mov ebx, dword [ebx + 8]
jmp 0x449e6f
mov esi, ebx
mov ebx, dword [ebx]
cmp byte [ebx + 0xd], 0
je 0x449df6
mov eax, dword [ebp - 0xac]
cmp esi, eax
je 0x449e9e
cmp dword [esi + 0x24], 8
lea eax, [esi + 0x10]
mov ecx, dword [eax + 0x10]
jb 0x449e8d
mov eax, dword [eax]
push ecx
push eax
push edi
push 0
lea ecx, [ebp - 0x28]
call fcn.00422af0
test eax, eax
jns 0x449ed9
lea eax, [ebp - 0x28]
push ecx
mov dword [ebp - 0xa4], eax
lea eax, [ebp - 0xa4]
push eax
push ecx
lea ecx, [ebp - 0xac]
call fcn.00430d20
push eax
add eax, 0x10
lea ecx, [ebp - 0xac]
push eax
push esi
lea eax, [ebp - 0xa4]
push eax
call fcn.00430d70
mov esi, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0xbc]
lea eax, [ebp - 0xb0]
push eax
mov ecx, ebx
add esi, 0x28
call fcn.0044a5b0
cmp eax, esi
je 0x449f00
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x449f15
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push 0x17
xor eax, eax
mov dword [ebp - 0x14], 7
push str.IDS_CANCEL_INSTALLATION
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
call fcn.00422d00
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 3
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x449f75
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x449f8a
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push 0xd
xor eax, eax
mov dword [ebp - 0x14], 7
push str.EMSG_INTERNET
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
call fcn.00422d00
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 4
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x449fea
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x449fff
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push 0x10
xor eax, eax
mov dword [ebp - 0x14], 7
push str.IDS_BROWSER_NAME
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
call fcn.00422d00
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 5
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a05f
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a074
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.IDS_INSTALLATION_CAPTION
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 6
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a0be
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a0d3
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.IDS_WAIT_CONFLICTING_APP
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 7
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a11d
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a132
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.IDS_CONFLICTING_APP_FRM
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 8
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a17c
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a191
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.IDS_PROGRESS_STATUS_CAPTION
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 9
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a1db
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a1f0
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.IDS_INSTALL_INITIAL
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0xa
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a23a
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a24f
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.EMSG_FILESIZE_ERROR
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0xb
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a299
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a2ae
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.EMSG_DOWNLOAD
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0xc
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a2f8
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a30d
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.EMSG_CREATEFILE
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0xd
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a357
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a36c
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.EMSG_ALREADY_RUN
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0xe
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a3b6
push 0xffffffffffffffff
push 0
push esi
mov ecx, eax
call fcn.00421520
mov byte [ebp - 4], 5
cmp dword [ebp - 0x14], 8
jb 0x44a3cb
push dword [ebp - 0x28]
call fcn.0045a050
add esp, 4
push str.BIMSG_ATTENTION
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0xf
call fcn.0042fb00
mov esi, eax
mov ecx, ebx
lea eax, [ebp - 0xa4]
push eax
call fcn.0044a5b0
cmp eax, esi
je 0x44a411
push esi
mov ecx, eax
call fcn.00421500
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 5
call fcn.00421350
push str.IDS_ABORT_DRIVERS
lea ecx, [ebp - 0x28]
call fcn.00422790
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0x10
call fcn.0042fb00
push eax
lea eax, [ebp - 0xa4]
mov ecx, ebx
push eax
call fcn.0044a5b0
mov ecx, eax
call fcn.00421380
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 5
call fcn.00421350
push str.IDS_ABORT_VIRTUALIZATION
lea ecx, [ebp - 0xa0]
call fcn.00422790
lea eax, [ebp - 0xa0]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0x11
call fcn.0042fb00
push eax
lea eax, [ebp - 0xa4]
mov ecx, ebx
push eax
call fcn.0044a5b0
mov ecx, eax
call fcn.00421380
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 5
call fcn.00421350
push str.IDS_BIOS_VIRTUALIZATION
lea ecx, [ebp - 0x88]
call fcn.00422790
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa4], 0x12
call fcn.0042fb00
push eax
lea eax, [ebp - 0xa4]
mov ecx, ebx
push eax
call fcn.0044a5b0
mov ecx, eax
call fcn.00421380
lea ecx, [ebp - 0x88]
call fcn.00421350
lea ecx, [ebp - 0x40]
call fcn.00421350
lea ecx, [ebp - 0x70]
call fcn.00421350
lea ecx, [ebp - 0x58]
call fcn.00421350
lea ecx, [ebp - 0xac]
call fcn.0042d1e0
lea ecx, [ebp - 0xc0]
call fcn.00423e80
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045b1f5
mov esp, ebp
pop ebp
ret 4