Function at 0x42b7a0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5c9537
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push esi
push edi
mov eax, dword [0x640844]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
push 0x34
mov dword [edi + 4], 0
lea esi, [edi + 0x20]
mov dword [edi + 0x14], 0
push 0
push esi
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
call fcn.004ef230
mov dword [edi + 0x24], 0x80
add esp, 0xc
mov dword [esi], 0x34
mov eax, dword [0x647e58]
mov dword [edi + 0x28], eax
mov dword [edi + 0x2c], 0x66
mov dword [edi + 0x38], 0x426c60
mov dword [edi + 0x40], 0x4251f0
mov dword [edi + 0x3c], edi
mov dword [edi + 0x34], 0x66
mov dword [edi + 0x24], 0x88
mov dword [ebp - 4], 0
mov dword [edi + 0x54], 0
mov dword [edi + 0x58], 0
mov dword [edi + 0x5c], 0
call fcn.00427f00
mov esi, dword [0x647e58]
push 5
push 0x66
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x42b8df
push 0xf0
push 0x66
push esi
call dword [sym.imp.KERNEL32.dll_FindResourceW]
mov ecx, dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x10], 0
test eax, eax
je 0x42b8a2
push eax
push esi
call ecx
push eax
mov dword [edi + 0x54], eax
call dword [sym.imp.KERNEL32.dll_LockResource]
mov ecx, dword [sym.imp.KERNEL32.dll_LoadResource]
mov dword [ebp - 0x10], eax
push dword [ebp - 0x14]
push esi
call ecx
push eax
mov dword [edi + 0x58], eax
call dword [sym.imp.KERNEL32.dll_LockResource]
push dword [ebp - 0x10]
mov esi, eax
push esi
call fcn.00426930
add esp, 8
mov dword [ebp - 0x14], eax
cmp eax, esi
je 0x42b8d4
push eax
call dword [sym.imp.KERNEL32.dll_GlobalHandle]
mov dword [edi + 0x5c], eax
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x42b8df
or dword [edi + 0x24], 1
mov dword [edi + 0x2c], eax
mov eax, dword [ebp + 0xc]
mov dword [edi + 0x60], vtable.dxi::IInstallerPanel.0
mov dword [edi + 0x64], eax
mov eax, dword [ebp + 8]
mov dword [edi], vtable.WizardPage_class_ComponentsPageView_.0
mov dword [edi + 0x60], vtable.WizardPage_class_ComponentsPageView_.1.0
mov dword [edi + 0x68], eax
mov dword [edi + 0x6c], 0
movups xmm0, xmmword [0x5e5fb0]
xor eax, eax
mov dword [ebp - 4], 1
movups xmmword [edi + 0x74], xmm0
movups xmm0, xmmword [0x5e5fb0]
mov dword [edi + 0x94], eax
mov dword [edi + 0x98], 0xfefefefe
movups xmmword [edi + 0x84], xmm0
movups xmm0, xmmword [0x5e5fb0]
movups xmmword [edi + 0x74], xmm0
movups xmm0, xmmword [0x5e5fb0]
movups xmmword [edi + 0x84], xmm0
mov dword [edi], vtable.ComponentsPageView.0
mov dword [edi + 0x60], vtable.ComponentsPageView.1.0
mov dword [edi + 0x70], vtable.ComponentsPageView.2.0
mov dword [edi + 0xa0], eax
call fcn.00427f00
push 1
push 2
push 0x15
mov dword [edi + 0xa4], 0
mov dword [edi + 0x9c], vtable.WebBrowserCtrl.0
call sub.urlmon.dll_CoInternetSetFeatureEnabled
test eax, eax
jns 0x42b9a0
push str.Failed_to_disable_IE_navigation_sounds_n
call fcn.00438280
add esp, 4
lea ecx, [edi + 0xa8]
mov byte [ebp - 4], 2
call fcn.00419840
lea ecx, [edi + 0xd8]
mov byte [ebp - 4], 3
call fcn.0041b750
mov byte [ebp - 4], 4
call fcn.0041a4a0
mov ecx, eax
test ecx, ecx
je 0x42bbf5
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [edi + 0x100], eax
mov word [edi + 0x140], 0
mov dword [edi + 0x144], 0
mov dword [edi + 0x148], 0
mov dword [edi + 0x150], 0
mov dword [edi + 0x154], 0
mov dword [edi + 0x158], 0
mov dword [edi + 0x15c], 0
mov dword [edi + 0x160], 0
mov dword [edi + method.ATL::CImage.virtual_0], vtable.ATL::CImage.0
mov dword [edi + 0x168], 0
mov dword [edi + 0x16c], 0
mov dword [edi + 0x170], 0
mov dword [edi + 0x174], 0
mov dword [edi + 0x178], 0
mov dword [edi + 0x17c], 0
mov word [edi + 0x180], 0
mov dword [edi + 0x184], 0xffffffff
mov dword [edi + 0x188], 0xffffffff
mov dword [edi + 0x18c], 0
mov dword [edi + 0x190], 0
mov dword [edi + 0x194], 0
call fcn.0041a400
mov esi, eax
lea edi, [esi + 4]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
inc dword [esi + 0x1c]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [ebp - 0x18]
mov byte [ebp - 4], 7
lea ecx, [edi + 0x198]
call fcn.004666a0
push 1
push 0
push 0
mov byte [ebp - 4], 8
mov dword [edi + 0x1e8], 0
mov dword [ebp + 0xc], 0
mov dword [ebp - 0x10], 0
call dword [sym.imp.USER32.dll_MonitorFromPoint]
push str.SHCore
mov dword [ebp - 0x20], eax
call fcn.00438170
mov dword [ebp - 0x1c], eax
test eax, eax
jne 0x42bb54
push eax
call dword [sym.imp.USER32.dll_GetDC]
mov dword [ebp + 8], eax
test eax, eax
je 0x42bbc1
mov esi, dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 0x58
push eax
call esi
push 0x5a
push dword [ebp + 8]
mov dword [ebp + 0xc], eax
call esi
push dword [ebp + 8]
mov dword [ebp - 0x10], eax
push 0
call dword [sym.imp.USER32.dll_ReleaseDC]
mov ecx, dword [ebp + 0xc]
jmp 0x42bbc6
push str.SHCore
call fcn.00438170
test eax, eax
je 0x42bbc1
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.GetProcessDpiAwareness
push eax
call esi
mov dword [ebp - 0x14], eax
test eax, eax
je 0x42bbc1
lea eax, [ebp + 8]
mov dword [ebp + 8], 0
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [ebp - 0x14]
test eax, eax
jne 0x42bbc1
cmp dword [ebp + 8], eax
je 0x42bbc1
push str.GetDpiForMonitor
push dword [ebp - 0x1c]
call esi
test eax, eax
je 0x42bbc1
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp + 0xc]
push ecx
push 0
push dword [ebp - 0x20]
call eax
mov ecx, dword [ebp + 0xc]
test eax, eax
mov edx, 0x60
cmovne ecx, edx
jmp 0x42bbc6
mov ecx, 0x60
mov dword [edi + 0x1f0], ecx
mov eax, edi
mov dword [edi + 0x108], 0xffffffff
mov dword [edi + 0x10c], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push 0x80004005
call fcn.0041a0e0
int3