Function at 0x10003560
Capabilities:
Contain obfuscated stackstrings
Copy file
Create directory
Get common file path
Parse pe header
Persist via run registry key

Disassembly:
push 0xffffffffffffffff
push 0x1001801f
mov eax, dword fs:[0]
push eax
sub esp, 0xde8
mov eax, dword [0x1001f220]
xor eax, esp
mov dword [esp + 0xde4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1001f220]
xor eax, esp
push eax
lea eax, [esp + 0xdfc]
mov dword fs:[0], eax
mov edi, dword [esp + 0xe0c]
mov ebx, dword [esp + 0xe10]
lea ecx, [esp + 0xc3]
call fcn.1000c510
lea ecx, [esp + 0x17]
call fcn.1000a950
lea ecx, [esp + 0xc8]
call fcn.10008b30
xor esi, esi
mov ebp, 0xf
mov dword [esp + 0xe04], esi
mov dword [esp + 0x3b8], ebp
mov dword [esp + 0x3b4], esi
mov byte [esp + 0x3a4], 0
lea eax, [esp + 0xe8]
push eax
mov byte [esp + 0xe08], 1
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx ecx, word [esp + 0xf6]
movzx edx, word [esp + 0xf4]
movzx eax, word [esp + 0xf2]
push ecx
movzx ecx, word [esp + 0xf4]
push edx
movzx edx, word [esp + 0xf0]
push eax
movzx eax, word [esp + 0xfa]
push ecx
movzx ecx, word [esp + 0xfa]
push edx
push eax
push ecx
push str._____d__02d__d__02d:_02d:_02d:_03d
call fcn.100010e0
add esp, 0x20
push esi
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xb4], esp
mov dword [0x10020238], 1
push esi
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push 0x10019a7b
mov byte [ecx + 4], 0
call fcn.10001d80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xf4], esp
push 0x5a
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstall8A708DD8_A5E6_11D4_A706_000629E95E20
mov byte [esp + 0xe48], 2
mov byte [ecx + 4], 0
call fcn.10001d80
push 0x80000002
lea ecx, [esp + 0x57]
mov byte [esp + 0xe44], 1
call fcn.1000ad80
push 0x31c
lea edx, [esp + 0x3c0]
push esi
push edx
call fcn.1000d040
add esp, 0xc
lea eax, [esp + 0x3bc]
push eax
push ebx
push edi
mov dword [esp + 0x3c8], 0x31c
call dword [sym.imp.SETUPAPI.dll_SetupDiGetSelectedDriverA]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupDiGetSelectedDriver_returned:__d
call fcn.100010e0
add esp, 8
lea ecx, [esp + 0x98]
mov ebp, dword [sym.imp.SETUPAPI.dll_SetupDiGetDriverInfoDetailA]
push ecx
push esi
push esi
lea edx, [esp + 0x3c8]
push edx
push ebx
push edi
call ebp
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupDiGetDriverInfoDetail_returned:__d
call fcn.100010e0
mov eax, dword [esp + 0xa0]
push eax
push str.Required_Size:__d
call fcn.100010e0
lea ecx, [esp + 0x3d8]
push ecx
push str.Driver_Description:__s
call fcn.100010e0
mov edx, dword [esp + 0xb0]
push edx
call fcn.1000cf00
mov ecx, dword [esp + 0xb4]
push ecx
push esi
push eax
mov dword [esp + 0xe0], eax
call fcn.1000d040
mov eax, dword [esp + 0xe0]
add esp, 0x28
lea edx, [esp + 0x98]
push edx
mov dword [eax], 0x31d
mov ecx, dword [esp + 0x9c]
push ecx
push eax
lea edx, [esp + 0x3c8]
push edx
push ebx
push edi
call ebp
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupDiGetDriverInfoDetail_2_returned:__d
call fcn.100010e0
mov edi, dword [esp + 0xc0]
add edi, 0x118
push edi
push str.Driver_Details:__s
mov dword [esp + 0x5c], edi
call fcn.100010e0
mov eax, edi
add esp, 0x10
mov dword [esp + 0x32c], 0xf
mov dword [esp + 0x328], esi
mov byte [esp + 0x318], 0
lea ecx, [eax + 1]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100037f1
sub eax, ecx
push eax
push edi
lea ecx, [esp + 0x31c]
call fcn.10001d80
push 1
push 0xffffffffffffffff
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x320]
mov byte [esp + 0xe10], 3
mov byte [esp + 0x38], 0x5c
call fcn.10001680
push eax
push esi
lea ecx, [esp + 0x38]
push ecx
lea ecx, [esp + 0x320]
call fcn.10001fc0
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x320]
mov byte [esp + 0xe10], 4
call fcn.10001ab0
mov ebx, 0x10
cmp dword [esp + 0x48], ebx
jb 0x1000386f
mov edx, dword [esp + 0x34]
push edx
call fcn.1000cb22
add esp, 4
mov eax, 0xf
mov dword [esp + 0x310], eax
mov dword [esp + 0x30c], esi
mov byte [esp + 0x2fc], 0
mov dword [esp + 0x364], eax
mov dword [esp + 0x360], esi
mov byte [esp + 0x350], 0
push esi
mov byte [esp + 0xe08], 6
call dword [sym.imp.KERNEL32.dll_SetLastError]
push esi
push 2
push esi
push edi
call dword [sym.imp.SETUPAPI.dll_SetupOpenInfFileA]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xe0000100
je 0x10003a6c
cmp eax, esi
jne 0x10003a6c
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xb0], esp
push 9
mov ebp, 0xf
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push str.DriverVer
mov byte [ecx + 4], 0
call fcn.10001d80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x50], esp
push 7
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push str.Version
mov byte [esp + 0xe44], 7
mov byte [ecx + 4], 0
call fcn.10001d80
lea eax, [esp + 0x68]
push edi
push eax
mov byte [esp + 0xe44], 6
call fcn.100026b0
add esp, 0x40
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x358]
mov byte [esp + 0xe10], 8
call fcn.10001ab0
cmp dword [esp + 0x48], ebx
mov byte [esp + 0xe04], 6
jb 0x1000396c
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
mov ebp, dword [esp + 0x360]
push 1
push esi
lea edx, [esp + 0x34]
push edx
lea ecx, [esp + 0x358]
mov byte [esp + 0x38], 0x2c
call fcn.100015c0
push ebp
add eax, 1
push eax
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x358]
call fcn.10001fc0
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x358]
mov byte [esp + 0xe10], 9
call fcn.10001ab0
cmp dword [esp + 0x48], ebx
mov byte [esp + 0xe04], 6
jb 0x100039d5
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x34], esp
push 9
mov ebp, 0xf
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push str.INFSource
mov byte [ecx + 4], 0
call fcn.10001d80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xcc], esp
push 0xb
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push str.PackageInfo
mov byte [esp + 0xe44], 0xa
mov byte [ecx + 4], 0
call fcn.10001d80
lea edx, [esp + 0x68]
push edi
push edx
mov byte [esp + 0xe44], 6
call fcn.100026b0
add esp, 0x40
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x304]
mov byte [esp + 0xe10], 0xb
call fcn.10001ab0
cmp dword [esp + 0x48], ebx
mov byte [esp + 0xe04], 6
jb 0x10003a6c
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
push edi
call dword [sym.imp.SETUPAPI.dll_SetupCloseInfFile]
cmp dword [esp + 0x30c], esi
jne 0x10003ad0
mov ecx, dword [esp + 0x4c]
push ecx
lea edx, [esp + 0x9ec]
push 0x104
push edx
call fcn.1000d265
add esp, 0xc
lea eax, [esp + 0x9e8]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecA]
lea eax, [esp + 0x9e8]
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10003ab0
sub eax, edx
push eax
lea ecx, [esp + 0x9ec]
push ecx
lea ecx, [esp + 0x300]
call fcn.10001d80
mov edi, dword [esp + 0x310]
cmp edi, ebx
mov edx, dword [esp + 0x2fc]
jb 0x10003db8
cmp edx, esi
mov ecx, edx
mov dword [esp + 0x94], ecx
je 0x10003b1e
cmp edi, ebx
mov eax, edx
jae 0x10003b00
lea eax, [esp + 0x2fc]
cmp eax, ecx
ja 0x10003b1e
cmp edi, ebx
mov eax, edx
jae 0x10003b11
lea eax, [esp + 0x2fc]
mov ebp, dword [esp + 0x30c]
add eax, ebp
cmp ecx, eax
jbe 0x10003b31
call fcn.1000d255
mov edx, dword [esp + 0x2fc]
mov edi, dword [esp + 0x310]
cmp edi, ebx
mov eax, edx
jae 0x10003b3e
lea eax, [esp + 0x2fc]
mov ecx, dword [esp + 0x30c]
lea ebp, [eax + ecx]
cmp ebp, esi
je 0x10003b77
cmp edi, ebx
mov eax, edx
jae 0x10003b59
lea eax, [esp + 0x2fc]
cmp eax, ebp
ja 0x10003b77
cmp edi, ebx
mov eax, edx
jae 0x10003b6a
lea eax, [esp + 0x2fc]
mov ecx, dword [esp + 0x30c]
add ecx, eax
cmp ebp, ecx
jbe 0x10003b8a
call fcn.1000d255
mov edx, dword [esp + 0x2fc]
mov edi, dword [esp + 0x310]
cmp edi, ebx
jb 0x10003dcb
cmp edx, esi
mov edi, edx
je 0x10003bca
mov ecx, dword [esp + 0x310]
cmp ecx, ebx
mov eax, edx
jae 0x10003bac
lea eax, [esp + 0x2fc]
cmp eax, edi
ja 0x10003bca
cmp ecx, ebx
mov eax, edx
jae 0x10003bbd
lea eax, [esp + 0x2fc]
mov edx, dword [esp + 0x30c]
add edx, eax
cmp edi, edx
jbe 0x10003bcf
call fcn.1000d255
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x94]
push eax
push ecx
push 0x1000dad5
push edx
lea eax, [esp + 0x308]
push eax
push ebp
lea eax, [esp + 0x68]
push edi
push eax
call fcn.10001a30
add esp, 0x20
push 0x104
lea ecx, [esp + 0xbf4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x100199f0
lea edx, [esp + 0xbf4]
push edx
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
lea eax, [esp + 0xbf0]
push 0x104
push eax
call fcn.1000d516
mov eax, dword [esp + 0x304]
add esp, 8
cmp dword [esp + 0x310], ebx
jae 0x10003c4f
lea eax, [esp + 0x2fc]
push eax
push str.INF_Path:__s
call fcn.100010e0
lea ecx, [esp + 0xbf8]
push ecx
push str.WinINF_Dir:__s
call fcn.100010e0
add esp, 0x10
push 0xffffffffffffffff
push esi
lea edx, [esp + 0x300]
push edx
lea ecx, [esp + 0x320]
call fcn.10001ab0
cmp dword [esp + 0x32c], ebx
mov eax, dword [esp + 0x318]
jae 0x10003c9d
lea eax, [esp + 0x318]
push eax
push str.Source_Path:__s
call fcn.100010e0
mov ebp, 0xf
mov dword [esp + 0x350], ebp
mov dword [esp + 0x34c], esi
mov byte [esp + 0x33c], 0
lea eax, [esp + 0xaf4]
push 0x104
push eax
mov byte [esp + 0xe14], 0xc
mov dword [esp + 0xa0], 0x104
call fcn.10009100
lea eax, [esp + 0xafc]
add esp, 0x10
lea edi, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10003cf5
sub eax, edi
push eax
lea ecx, [esp + 0xaf0]
push ecx
lea ecx, [esp + 0x338]
call fcn.10001d80
push 0x104
lea edx, [esp + 0xaf0]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
mov dword [esp + 0x39c], ebp
mov dword [esp + 0x398], esi
mov byte [esp + 0x388], 0
lea eax, [esp + 0xaec]
mov byte [esp + 0xe04], 0xd
lea edi, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x10003d50
sub eax, edi
push eax
lea eax, [esp + 0xaf0]
push eax
lea ecx, [esp + 0x38c]
call fcn.10001d80
push str.difxapi.dll
lea ecx, [esp + 0x388]
push ecx
lea edx, [esp + 0x38]
push edx
call fcn.100023e0
mov edi, eax
push str.difx64.dll
lea eax, [esp + 0x324]
push eax
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0xe1c], 0xe
call fcn.100023e0
add esp, 0x18
cmp dword [edi + 0x18], ebx
jb 0x10003dd7
mov edi, dword [edi + 4]
jmp 0x10003dda
lea ecx, [esp + 0x2fc]
mov dword [esp + 0x94], ecx
jmp 0x10003af3
lea edi, [esp + 0x2fc]
jmp 0x10003b98
add edi, 4
cmp dword [eax + 0x18], ebx
jb 0x10003de4
mov eax, dword [eax + 4]
jmp 0x10003de7
add eax, 4
mov ebp, dword [sym.imp.KERNEL32.dll_CopyFileA]
push esi
push edi
push eax
call ebp
cmp dword [esp + 0x8c], ebx
jb 0x10003e08
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x48], ebx
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], 0xd
jb 0x10003e3a
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
push str.difxapi.dll
lea ecx, [esp + 0x334]
push ecx
lea edx, [esp + 0x38]
push edx
call fcn.100023e0
mov edi, eax
push str.difx32.dll
lea eax, [esp + 0x324]
push eax
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0xe1c], 0xf
call fcn.100023e0
add esp, 0x18
cmp dword [edi + 0x18], ebx
jb 0x10003e82
mov edi, dword [edi + 4]
jmp 0x10003e85
add edi, 4
cmp dword [eax + 0x18], ebx
jb 0x10003e8f
mov eax, dword [eax + 4]
jmp 0x10003e92
add eax, 4
push esi
push edi
push eax
call ebp
cmp dword [esp + 0x8c], ebx
jb 0x10003ead
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x48], ebx
mov dword [esp + 0x8c], 0xf
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], 0xd
jb 0x10003edf
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x32c], ebx
mov eax, dword [esp + 0x318]
jae 0x10003ef6
lea eax, [esp + 0x318]
push eax
lea ecx, [esp + 0x8e8]
push 0x104
push ecx
call fcn.1000d265
mov edi, dword [esp + 0x58]
add esp, 0xc
push edi
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameA]
push eax
lea edx, [esp + 0x8e8]
push edx
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
push esi
push 2
push esi
push edi
call dword [sym.imp.SETUPAPI.dll_SetupOpenInfFileA]
mov edi, eax
cmp edi, 0xffffffff
mov dword [esp + 0x94], edi
jne 0x10003f53
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupOpenInfFile_FAILED:__d
call fcn.100010e0
add esp, 8
lea eax, [esp + 0xbc]
push eax
push esi
push esi
push 1
push edi
mov dword [esp + 0xd0], esi
call dword [sym.imp.SETUPAPI.dll_SetupGetInfInformationA]
test eax, eax
jne 0x10003f85
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupGetInfInformation_FAILED:__d
call fcn.100010e0
add esp, 8
mov ecx, dword [esp + 0xbc]
push ecx
call fcn.1000cf00
mov ebp, eax
add esp, 4
cmp ebp, esi
jne 0x10003faf
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.malloc_FAILED:__d
call fcn.100010e0
add esp, 8
mov edx, dword [esp + 0xbc]
push esi
push edx
push ebp
push 1
push edi
call dword [sym.imp.SETUPAPI.dll_SetupGetInfInformationA]
test eax, eax
jne 0x10003fda
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupGetInfInformation_FAILED:__d
call fcn.100010e0
add esp, 8
lea eax, [esp + 0x6d8]
push eax
push esi
push esi
push ebp
mov dword [esp + 0x6e8], 0x20c
call dword [sym.imp.SETUPAPI.dll_SetupQueryInfOriginalFileInformationA]
test eax, eax
mov eax, dword [esp + 0x318]
jne 0x10004057
cmp dword [esp + 0x32c], ebx
jae 0x10004011
lea eax, [esp + 0x318]
push eax
lea ecx, [esp + 0x8e8]
push 0x104
push ecx
call fcn.1000d265
mov edx, dword [esp + 0x58]
add esp, 0xc
push edx
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameA]
push eax
lea eax, [esp + 0x8e8]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.SetupQueryInfOriginalFileInformation_FAILED:__d
call fcn.100010e0
add esp, 8
jmp 0x10004093
cmp dword [esp + 0x32c], ebx
jae 0x10004067
lea eax, [esp + 0x318]
push eax
lea ecx, [esp + 0x8e8]
push 0x104
push ecx
call fcn.1000d265
add esp, 0xc
lea edx, [esp + 0x6dc]
push edx
lea eax, [esp + 0x8e8]
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendA]
lea ecx, [esp + 0xf8]
mov dword [esp + 0xc4], esi
call fcn.1000a2d0
push 1
push 0x400
lea ecx, [esp + 0x100]
call fcn.1000a870
test eax, eax
je 0x1000415d
push str.Using_Difx_Call
call fcn.100010e0
add esp, 4
push esi
push 0x10001140
call dword [sym.imp.DIFXAPI.dll_DIFXAPISetLogCallbackA]
mov edi, dword [sym.imp.DIFXAPI.dll_DriverPackagePreinstallA]
push 0x15
lea ecx, [esp + 0x8e8]
push ecx
call edi
cmp eax, 0x780
mov ebp, dword [sym.imp.DIFXAPI.dll_DriverPackageGetPathA]
jne 0x10004148
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x90]
push edx
lea eax, [esp + 0x8e8]
push eax
push ecx
mov dword [esp + 0x9c], 0x104
call ebp
lea edx, [esp + 0x8e4]
push edx
push eax
push str.might_be_vista__try_useing_DriverPackageGetPath__d____s
call fcn.100010e0
add esp, 0xc
push 0x15
lea eax, [esp + 0x8e8]
push eax
mov dword [esp + 0x98], 0x104
call edi
lea ecx, [esp + 0xc4]
push ecx
push esi
push 0x14
lea edx, [esp + 0x8f0]
push edx
jmp 0x100041d9
push str.On_Vista__Skipping_driver_install
call fcn.100010e0
push str.Using_Difx_Call
call fcn.100010e0
add esp, 8
push esi
push 0x10001140
call dword [sym.imp.DIFXAPI.dll_DIFXAPISetLogCallbackA]
mov edx, dword [esp + 0x4c]
mov ebp, dword [sym.imp.DIFXAPI.dll_DriverPackageGetPathA]
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x8e8]
push ecx
mov edi, 0x104
push edx
mov dword [esp + 0x9c], edi
call ebp
lea ecx, [esp + 0x8e4]
push ecx
push eax
push str.might_be_vista__try_useing_DriverPackageGetPath__d____s
call fcn.100010e0
add esp, 0xc
lea edx, [esp + 0xc4]
push edx
push esi
push 0x14
lea eax, [esp + 0x8f0]
mov dword [esp + 0x9c], edi
push eax
call dword [sym.imp.DIFXAPI.dll_DriverPackageInstallA]
mov edi, eax
push edi
push str.Difx_returned:__d
call fcn.100010e0
add esp, 8
cmp edi, esi
jne 0x100069c8
cmp dword [0x1001f01c], ebx
mov eax, dword [0x1001f008]
jae 0x10004209
mov eax, 0x1001f008
push eax
lea ecx, [esp + 0x1b]
call fcn.1000b020
lea ecx, [esp + 0x90]
push ecx
lea edx, [esp + 0xcf8]
push edx
lea eax, [esp + 0x8ec]
push eax
call ebp
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x28], esi
xor ecx, ecx
push ecx
lea eax, [esp + 0x20]
push eax
push esi
mov edx, eax
push edx
lea ecx, [esp + 0x60]
push ecx
mov ecx, eax
mov byte [esp + 0xe18], bl
call fcn.10002dd0
push ebx
mov edi, 0xf
push str.driverstorepath
lea ecx, [esp + 0x7c]
mov dword [esp + 0x94], edi
mov dword [esp + 0x90], esi
mov byte [esp + 0x80], 0
call fcn.10001d80
lea edx, [esp + 0xcf4]
push edx
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0xe10], 0x11
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x12
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x100042c9
mov edx, dword [esp + 0x34]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], edi
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x100042f3
mov eax, dword [esp + 0x78]
push eax
call fcn.1000cb22
add esp, 4
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x78], esp
push 3
mov ebp, 0xf
mov dword [ecx + 0x18], ebp
mov dword [ecx + 0x14], esi
push 0x100199f0
mov byte [esp + 0xe38], 0x13
mov byte [ecx + 4], 0
call fcn.10001d80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
lea eax, [esp + 0xcf4]
push eax
push str.Uninstall_Key_writen:_inf:driverstore__s
call fcn.100010e0
push str.igxpun.exe
lea ecx, [esp + 0x33c]
push ecx
lea edx, [esp + 0x84]
push edx
call fcn.100023e0
mov edi, eax
push str.igxpun.exe
lea eax, [esp + 0x32c]
push eax
lea ecx, [esp + 0x4c]
push ecx
mov byte [esp + 0xe24], 0x14
call fcn.100023e0
add esp, 0x20
cmp dword [edi + 0x18], ebx
jb 0x1000439c
mov edi, dword [edi + 4]
jmp 0x1000439f
add edi, 4
cmp dword [eax + 0x18], ebx
jb 0x100043a9
mov eax, dword [eax + 4]
jmp 0x100043ac
add eax, 4
push esi
push edi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
cmp dword [esp + 0x48], ebx
jb 0x100043c8
mov edx, dword [esp + 0x34]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x100043f2
mov eax, dword [esp + 0x78]
push eax
call fcn.1000cb22
add esp, 4
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.source
lea ecx, [esp + 0x5c]
call fcn.10001f80
lea ecx, [esp + 0x314]
push ecx
push eax
lea edx, [esp + 0x7c]
push edx
mov byte [esp + 0xe10], 0x15
call fcn.100024a0
push str.igxpun.exe
push eax
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x16
call fcn.100023e0
add esp, 0x18
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x17
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004464
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
jb 0x10004487
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], bl
jb 0x100044b4
mov eax, dword [esp + 0x5c]
push eax
call fcn.1000cb22
add esp, 4
push str.destination
lea ecx, [esp + 0x5c]
call fcn.10001f80
lea ecx, [esp + 0x330]
push ecx
push eax
lea edx, [esp + 0x7c]
push edx
mov byte [esp + 0xe10], 0x18
call fcn.100024a0
push str.igxpun.exe
push eax
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x19
call fcn.100023e0
add esp, 0x18
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x1a
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x1000451d
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
jb 0x10004540
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], bl
jb 0x1000456d
mov eax, dword [esp + 0x5c]
push eax
call fcn.1000cb22
add esp, 4
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x78], esp
push str.copyfile
mov byte [esp + 0xe34], 0x1b
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
cmp dword [esp + 0x348], ebx
mov eax, dword [esp + 0x334]
jae 0x100045c2
lea eax, [esp + 0x334]
push str.igxpun.exe
push eax
push str.Uninstall_Key_writen:_copyfile:destination__s_s
call fcn.100010e0
add esp, 0xc
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.destination
lea ecx, [esp + 0x5c]
call fcn.10001f80
lea ecx, [esp + 0x330]
push ecx
push eax
lea edx, [esp + 0x7c]
push edx
mov byte [esp + 0xe10], 0x1c
call fcn.100024a0
push str.igfxsrvc.exe
push eax
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x1d
call fcn.100023e0
add esp, 0x18
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x1e
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004647
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
jb 0x1000466a
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], bl
jb 0x10004697
mov eax, dword [esp + 0x5c]
push eax
call fcn.1000cb22
add esp, 4
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x78], esp
push str.copyfile
mov byte [esp + 0xe34], 0x1f
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.destination
lea ecx, [esp + 0x5c]
call fcn.10001f80
lea ecx, [esp + 0x330]
push ecx
push eax
lea edx, [esp + 0x7c]
push edx
mov byte [esp + 0xe10], 0x20
call fcn.100024a0
push str.igfxtray.exe
push eax
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x21
call fcn.100023e0
add esp, 0x18
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x22
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004747
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
jb 0x1000476a
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], bl
jb 0x10004797
mov eax, dword [esp + 0x5c]
push eax
call fcn.1000cb22
add esp, 4
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x78], esp
push str.copyfile
mov byte [esp + 0xe34], 0x23
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push str.difxapi.dll
lea eax, [esp + 0x334]
push eax
lea ecx, [esp + 0x60]
push ecx
call fcn.100023e0
mov edi, eax
push str.difx32.dll
lea edx, [esp + 0x324]
push edx
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x24
call fcn.100023e0
add esp, 0x18
cmp dword [edi + 0x18], ebx
jb 0x1000481a
mov edi, dword [edi + 4]
jmp 0x1000481d
add edi, 4
cmp dword [eax + 0x18], ebx
jb 0x10004827
mov eax, dword [eax + 4]
jmp 0x1000482a
add eax, 4
push esi
push edi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
cmp dword [esp + 0x48], ebx
jb 0x10004846
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x1000486d
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.x64
lea eax, [esp + 0x334]
push eax
lea ecx, [esp + 0x60]
push ecx
call fcn.100023e0
add esp, 0xc
cmp dword [eax + 0x18], ebx
jb 0x10004891
mov eax, dword [eax + 4]
jmp 0x10004894
add eax, 4
push esi
push eax
push esi
call dword [sym.imp.SHELL32.dll_SHCreateDirectoryExA]
cmp dword [esp + 0x70], ebx
jb 0x100048b0
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.x64difxapi.dll
lea eax, [esp + 0x334]
push eax
lea ecx, [esp + 0x60]
push ecx
call fcn.100023e0
mov edi, eax
push str.difx64.dll
lea edx, [esp + 0x324]
push edx
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x25
call fcn.100023e0
add esp, 0x18
cmp dword [edi + 0x18], ebx
jb 0x100048f5
mov edi, dword [edi + 4]
jmp 0x100048f8
add edi, 4
cmp dword [eax + 0x18], ebx
jb 0x10004902
mov eax, dword [eax + 4]
jmp 0x10004905
add eax, 4
push esi
push edi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
cmp dword [esp + 0x48], ebx
jb 0x10004921
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004948
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.x64Difx64.exe
lea eax, [esp + 0x334]
push eax
lea ecx, [esp + 0x60]
push ecx
call fcn.100023e0
mov edi, eax
push str.Difx64.exe
lea edx, [esp + 0x324]
push edx
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x26
call fcn.100023e0
add esp, 0x18
cmp dword [edi + 0x18], ebx
jb 0x1000498d
mov edi, dword [edi + 4]
jmp 0x10004990
add edi, 4
cmp dword [eax + 0x18], ebx
jb 0x1000499a
mov eax, dword [eax + 4]
jmp 0x1000499d
add eax, 4
push esi
push edi
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
cmp dword [esp + 0x48], ebx
jb 0x100049b9
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x100049e0
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.Writing_Add_Remove_Programs_Keys
call fcn.100010e0
add esp, 4
push esi
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push str.Intel_R__Graphics_Media_Accelerator_Driver
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x88], esp
push str.DisplayName
mov byte [esp + 0xe44], 0x27
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa8], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe60], 0x28
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], bl
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x29
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x2a
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004aa9
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004ad0
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keypath
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x2b
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x2c
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004b1e
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004b45
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keyvalue
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.DisplayName
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x2d
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x2e
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004b93
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004bba
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keydata
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.Intel_R__Graphics_Media_Accelerator_Driver
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x2f
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x30
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004c08
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004c2f
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keytype
lea ecx, [esp + 0x5c]
call fcn.10001f80
push 0x10019738
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x31
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x32
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004c7d
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004ca4
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
sub esp, 0x10
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x33
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push esi
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x70], esp
push str.igxpun.exe__uninstall
lea edx, [esp + 0x354]
push edx
push ecx
call fcn.100023e0
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x54], esp
push str.UninstallString
mov byte [esp + 0xe44], 0x34
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe60], 0x35
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], bl
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x36
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x37
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004da4
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004dcb
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keypath
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x38
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x39
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004e19
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004e40
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keyvalue
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.UninstallString
push eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0xe10], 0x3a
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x3b
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004e8e
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004eb5
mov edx, dword [esp + 0x5c]
push edx
call fcn.1000cb22
add esp, 4
push str.keydata
lea ecx, [esp + 0x5c]
call fcn.10001f80
lea ecx, [esp + 0x330]
push ecx
push eax
lea edx, [esp + 0x7c]
push edx
mov byte [esp + 0xe10], 0x3c
call fcn.100024a0
push str.igxpun.exe__uninstall
push eax
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0xe1c], 0x3d
call fcn.100023e0
add esp, 0x18
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x3e
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004f1e
mov ecx, dword [esp + 0x34]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
jb 0x10004f41
mov edx, dword [esp + 0x78]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], bl
jb 0x10004f6e
mov eax, dword [esp + 0x5c]
push eax
call fcn.1000cb22
add esp, 4
push str.keytype
lea ecx, [esp + 0x5c]
call fcn.10001f80
push 0x10019738
push eax
lea ecx, [esp + 0x38]
push ecx
mov byte [esp + 0xe10], 0x3f
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x40
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10004fbc
mov edx, dword [esp + 0x34]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x10004fe3
mov eax, dword [esp + 0x5c]
push eax
call fcn.1000cb22
add esp, 4
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x41
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push esi
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x70], esp
push str.igxpun.exe_0
lea ecx, [esp + 0x354]
push ecx
push eax
call fcn.100023e0
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x54], esp
push str.DisplayIcon
mov byte [esp + 0xe44], 0x42
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe60], 0x43
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], bl
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.HKLM
push eax
lea edx, [esp + 0x38]
push edx
mov byte [esp + 0xe10], 0x44
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x45
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x100050e3
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x1000510a
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.1000cb22
add esp, 4
push str.keypath
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea edx, [esp + 0x38]
push edx
mov byte [esp + 0xe10], 0x46
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x47
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x10005158
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x1000517f
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.1000cb22
add esp, 4
push str.keyvalue
lea ecx, [esp + 0x5c]
call fcn.10001f80
push str.DisplayIcon
push eax
lea edx, [esp + 0x38]
push edx
mov byte [esp + 0xe10], 0x48
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x49
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x100051cd
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
jb 0x100051f4
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.1000cb22
add esp, 4
push str.keydata
lea ecx, [esp + 0x5c]
call fcn.10001f80
lea edx, [esp + 0x330]
push edx
push eax
lea eax, [esp + 0x7c]
push eax
mov byte [esp + 0xe10], 0x4a
call fcn.100024a0
push str.igxpun.exe_0
push eax
lea ecx, [esp + 0x44]
push ecx
mov byte [esp + 0xe1c], 0x4b
call fcn.100023e0
add esp, 0x18
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x4c
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x1000525d
mov edx, dword [esp + 0x34]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x8c], ebx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
jb 0x10005280
mov eax, dword [esp + 0x78]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x70], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov byte [esp + 0x78], 0
mov byte [esp + 0xe04], bl
jb 0x100052ad
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.1000cb22
add esp, 4
push str.keytype
lea ecx, [esp + 0x5c]
call fcn.10001f80
push 0x10019738
push eax
lea edx, [esp + 0x38]
push edx
mov byte [esp + 0xe10], 0x4d
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x4e
call fcn.100034b0
cmp dword [esp + 0x48], ebx
jb 0x100052fb
mov eax, dword [esp + 0x34]
push eax
call fcn.1000cb22
add esp, 4
lea ecx, [esp + 0x58]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], esi
mov byte [esp + 0x34], 0
mov byte [esp + 0xe04], bl
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x4f
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push esi
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x70], esp
push 0x100196d4
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.Publisher
mov byte [esp + 0xe44], 0x50
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe60], 0x51
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], bl
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x78]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0x60]
push eax
mov byte [esp + 0xe10], 0x52
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x53
call fcn.100034b0
lea ecx, [esp + 0x58]
call fcn.10001a00
lea ecx, [esp + 0x74]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x2e0]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea ecx, [esp + 0x60]
push ecx
mov byte [esp + 0xe10], 0x54
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x55
call fcn.100034b0
lea ecx, [esp + 0x58]
call fcn.10001a00
lea ecx, [esp + 0x2dc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x200]
call fcn.10001f80
push str.Publisher
push eax
lea edx, [esp + 0x2e4]
push edx
mov byte [esp + 0xe10], 0x56
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x57
call fcn.100034b0
lea ecx, [esp + 0x2dc]
call fcn.10001a00
lea ecx, [esp + 0x1fc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keydata
lea ecx, [esp + 0x254]
call fcn.10001f80
push 0x100196d4
push eax
lea eax, [esp + 0x204]
push eax
mov byte [esp + 0xe10], 0x58
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x59
call fcn.100034b0
lea ecx, [esp + 0x1fc]
call fcn.10001a00
lea ecx, [esp + 0x250]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keytype
lea ecx, [esp + 0x238]
call fcn.10001f80
push 0x10019738
push eax
lea ecx, [esp + 0x258]
push ecx
mov byte [esp + 0xe10], 0x5a
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x5b
call fcn.100034b0
lea ecx, [esp + 0x250]
call fcn.10001a00
lea ecx, [esp + 0x234]
mov byte [esp + 0xe04], bl
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
mov byte [esp + 0xe14], 0x5c
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push esi
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x74], esp
push str.NoModify
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe48], 0x5d
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x5b]
mov byte [esp + 0xe48], bl
call fcn.1000a960
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x2a8]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0x23c]
push eax
mov byte [esp + 0xe10], 0x5e
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x5f
call fcn.100034b0
lea ecx, [esp + 0x234]
call fcn.10001a00
lea ecx, [esp + 0x2a4]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x270]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea ecx, [esp + 0x2ac]
push ecx
mov byte [esp + 0xe10], 0x60
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x61
call fcn.100034b0
lea ecx, [esp + 0x2a4]
call fcn.10001a00
lea ecx, [esp + 0x26c]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x2c4]
call fcn.10001f80
push str.NoModify
push eax
lea edx, [esp + 0x274]
push edx
mov byte [esp + 0xe10], 0x62
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x63
call fcn.100034b0
lea ecx, [esp + 0x26c]
call fcn.10001a00
lea ecx, [esp + 0x2c0]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keydata
lea ecx, [esp + 0x28c]
call fcn.10001f80
push 0x100196b8
push eax
lea eax, [esp + 0x2c8]
push eax
mov byte [esp + 0xe10], 0x64
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x65
call fcn.100034b0
lea ecx, [esp + 0x2c0]
call fcn.10001a00
lea ecx, [esp + 0x288]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keytype
lea ecx, [esp + 0x21c]
call fcn.10001f80
push 0x100196b4
push eax
lea ecx, [esp + 0x290]
push ecx
mov byte [esp + 0xe10], 0x66
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x67
call fcn.100034b0
lea ecx, [esp + 0x288]
call fcn.10001a00
lea ecx, [esp + 0x218]
mov byte [esp + 0xe04], bl
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x68
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push esi
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x74], esp
push str.NoRepair
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe48], 0x69
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x5b]
mov byte [esp + 0xe48], bl
call fcn.1000a960
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x174]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0x220]
push eax
mov byte [esp + 0xe10], 0x6a
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x6b
call fcn.100034b0
lea ecx, [esp + 0x218]
call fcn.10001a00
lea ecx, [esp + 0x170]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x1ac]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea ecx, [esp + 0x178]
push ecx
mov byte [esp + 0xe10], 0x6c
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x6d
call fcn.100034b0
lea ecx, [esp + 0x170]
call fcn.10001a00
lea ecx, [esp + 0x1a8]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x1e4]
call fcn.10001f80
push str.NoRepair
push eax
lea edx, [esp + 0x1b0]
push edx
mov byte [esp + 0xe10], 0x6e
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x6f
call fcn.100034b0
lea ecx, [esp + 0x1a8]
call fcn.10001a00
lea ecx, [esp + 0x1e0]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keydata
lea ecx, [esp + 0x1c8]
call fcn.10001f80
push 0x100196b8
push eax
lea eax, [esp + 0x1e8]
push eax
mov byte [esp + 0xe10], 0x70
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x71
call fcn.100034b0
lea ecx, [esp + 0x1e0]
call fcn.10001a00
lea ecx, [esp + 0x1c4]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keytype
lea ecx, [esp + 0x190]
call fcn.10001f80
push 0x100196b4
push eax
lea ecx, [esp + 0x1cc]
push ecx
mov byte [esp + 0xe10], 0x72
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x73
call fcn.100034b0
lea ecx, [esp + 0x1c4]
call fcn.10001a00
lea ecx, [esp + 0x18c]
mov byte [esp + 0xe04], bl
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x74
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
push esi
push 0xd930
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x74], esp
push str.EstimatedSize
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x58], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe48], 0x75
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x5b]
mov byte [esp + 0xe48], bl
call fcn.1000a960
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x11c]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0x194]
push eax
mov byte [esp + 0xe10], 0x76
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe04], 0x77
push eax
lea ecx, [esp + 0x20]
call fcn.100034b0
lea ecx, [esp + 0x18c]
call fcn.10001a00
lea ecx, [esp + 0x118]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x138]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea ecx, [esp + 0x120]
push ecx
mov byte [esp + 0xe10], 0x78
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x79
call fcn.100034b0
lea ecx, [esp + 0x118]
call fcn.10001a00
lea ecx, [esp + 0x134]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x100]
call fcn.10001f80
push str.EstimatedSize
push eax
lea edx, [esp + 0x13c]
push edx
mov byte [esp + 0xe10], 0x7a
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x7b
call fcn.100034b0
lea ecx, [esp + 0x134]
call fcn.10001a00
lea ecx, [esp + 0xfc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keydata
lea ecx, [esp + 0xd0]
call fcn.10001f80
push str.55600
push eax
lea eax, [esp + 0x104]
push eax
mov byte [esp + 0xe10], 0x7c
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x7d
call fcn.100034b0
lea ecx, [esp + 0xfc]
call fcn.10001a00
lea ecx, [esp + 0xcc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keytype
lea ecx, [esp + 0xa0]
call fcn.10001f80
push 0x100196b4
push eax
lea ecx, [esp + 0xd4]
push ecx
mov byte [esp + 0xe10], 0x7e
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x7f
call fcn.100034b0
lea ecx, [esp + 0xcc]
call fcn.10001a00
lea ecx, [esp + 0x9c]
mov byte [esp + 0xe04], bl
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x80
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
cmp dword [esp + 0x364], ebx
mov eax, dword [esp + 0x350]
push esi
jae 0x10005d2f
lea eax, [esp + 0x354]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x70], esp
push eax
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.DisplayVersion
mov byte [esp + 0xe44], 0x81
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe60], 0x82
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], bl
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0xd0]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0xa4]
push eax
mov byte [esp + 0xe10], 0x83
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x84
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xcc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x100]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0x85
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x86
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xfc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x138]
call fcn.10001f80
push str.DisplayVersion
push eax
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0xe10], 0x87
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe04], 0x88
push eax
lea ecx, [esp + 0x20]
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x134]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keydata
lea ecx, [esp + 0x11c]
call fcn.10001f80
cmp dword [esp + 0x364], ebx
mov ecx, dword [esp + 0x350]
mov byte [esp + 0xe04], 0x89
jae 0x10005ee5
lea ecx, [esp + 0x350]
push ecx
push eax
lea eax, [esp + 0xa4]
push eax
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x8a
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x118]
mov byte [esp + 0xe04], bl
call fcn.10001a00
push str.keytype
lea ecx, [esp + 0xd0]
call fcn.10001f80
push 0x10019738
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0x8b
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x8c
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xcc]
mov byte [esp + 0xe04], bl
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x8d
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], bl
call fcn.1000bb00
lea eax, [esp + 0x8e4]
push eax
lea ecx, [esp + 0x36c]
call fcn.10001f80
push 1
push 0xffffffffffffffff
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x374]
mov byte [esp + 0xe10], 0x8e
mov byte [esp + 0x38], 0x5c
call fcn.10001680
add eax, 1
push eax
push esi
lea edx, [esp + 0x104]
push edx
lea ecx, [esp + 0x374]
call fcn.10001fc0
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x374]
mov byte [esp + 0xe10], 0x8f
call fcn.10001ab0
mov byte [esp + 0xe04], 0x8e
lea ecx, [esp + 0xfc]
call fcn.10001a00
cmp dword [esp + 0x380], ebx
mov eax, dword [esp + 0x36c]
push esi
jae 0x10006059
lea eax, [esp + 0x370]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x70], esp
push eax
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.InstallLocation
mov byte [esp + 0xe44], 0x90
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
mov byte [esp + 0xe60], 0x91
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], 0x8e
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0xd0]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0xa4]
push eax
mov byte [esp + 0xe10], 0x92
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x93
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xcc]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x100]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionUninstallHDMI
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0x94
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x95
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xfc]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x138]
call fcn.10001f80
push str.InstallLocation
push eax
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0xe10], 0x96
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe04], 0x97
push eax
lea ecx, [esp + 0x20]
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x134]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keydata
lea ecx, [esp + 0x11c]
call fcn.10001f80
cmp dword [esp + 0x380], ebx
mov ecx, dword [esp + 0x36c]
mov byte [esp + 0xe04], 0x98
jae 0x10006213
lea ecx, [esp + 0x36c]
push ecx
push eax
lea eax, [esp + 0xa4]
push eax
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x99
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x118]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keytype
lea ecx, [esp + 0xd0]
call fcn.10001f80
push 0x10019738
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0x9a
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0x9b
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xcc]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0x9c
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], 0x8e
call fcn.1000bb00
push 0x75
push str.reg_add__HKCUSOFTWAREMicrosoftWindowsCurrentVersionApp_ManagementARPCacheHDMI___v_Changed__t_REG_DWORD__d_1__f
lea ecx, [esp + 0x370]
call fcn.10001d80
cmp dword [esp + 0x380], ebx
mov eax, dword [esp + 0x36c]
push esi
jae 0x10006322
lea eax, [esp + 0x370]
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x70], esp
push eax
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.HDMI_ARP_Update
mov byte [esp + 0xe44], 0x9d
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SOFTWAREMicrosoftWindowsCurrentVersionRunOnce
mov byte [esp + 0xe60], 0x9e
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], 0x8e
call fcn.1000ab10
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0xd0]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0xa4]
push eax
mov byte [esp + 0xe10], 0x9f
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0xa0
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xcc]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x100]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionRun
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0xa1
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0xa2
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0xfc]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x138]
call fcn.10001f80
push str.HotKeysCmds
push eax
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0xe10], 0xa3
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe04], 0xa4
push eax
lea ecx, [esp + 0x20]
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x134]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
sub esp, 0x10
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0xa5
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], 0x8e
call fcn.1000bb00
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x11c]
call fcn.10001f80
push str.HKLM
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0xa6
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0xa7
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x118]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x190]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionRun
push eax
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0xe10], 0xa8
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0xa9
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x18c]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x1c8]
call fcn.10001f80
push str.IGFXTRAY
push eax
lea eax, [esp + 0xa4]
push eax
mov byte [esp + 0xe10], 0xaa
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe04], 0xab
push eax
lea ecx, [esp + 0x20]
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x1c4]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
sub esp, 0x10
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push edx
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0xac
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], 0x8e
call fcn.1000bb00
lea ecx, [esp + 0x1c]
call fcn.10002ff0
push str.keyroot
lea ecx, [esp + 0x1e4]
call fcn.10001f80
push str.HKLM
push eax
lea eax, [esp + 0xa4]
push eax
mov byte [esp + 0xe10], 0xad
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0xae
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x1e0]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keypath
lea ecx, [esp + 0x1ac]
call fcn.10001f80
push str.SOFTWAREMicrosoftWindowsCurrentVersionRun
push eax
lea ecx, [esp + 0xa4]
push ecx
mov byte [esp + 0xe10], 0xaf
call fcn.100023e0
add esp, 0xc
push eax
lea ecx, [esp + 0x20]
mov byte [esp + 0xe08], 0xb0
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x1a8]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
push str.keyvalue
lea ecx, [esp + 0x174]
call fcn.10001f80
push str.Persistence
push eax
lea edx, [esp + 0xa4]
push edx
mov byte [esp + 0xe10], 0xb1
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe04], 0xb2
push eax
lea ecx, [esp + 0x20]
call fcn.100034b0
lea ecx, [esp + 0x9c]
call fcn.10001a00
lea ecx, [esp + 0x170]
mov byte [esp + 0xe04], 0x8e
call fcn.10001a00
sub esp, 0x10
lea eax, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x60], esp
push eax
call fcn.10002ee0
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x44], esp
push str.registry
mov byte [esp + 0xe34], 0xb3
call fcn.10001f80
lea ecx, [esp + 0x43]
mov byte [esp + 0xe30], 0x8e
call fcn.1000bb00
mov dword [esp + 0x154], esi
mov dword [esp + 0x158], esi
mov dword [esp + 0x15c], esi
mov dword [esp + 0x164], esi
mov dword [esp + 0x168], esi
mov dword [esp + 0x16c], esi
lea ecx, [esp + 0x160]
push ecx
lea edx, [esp + 0x154]
push edx
sub esp, 0x1c
mov eax, esp
mov dword [esp + 0x74], esp
push str.Lang
lea ecx, [esp + 0x358]
push ecx
push eax
mov byte [esp + 0xe34], 0xb5
call fcn.100023e0
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x58], esp
push str.Lang
lea eax, [esp + 0x358]
push eax
push edx
mov byte [esp + 0xe50], 0xb6
call fcn.100023e0
add esp, 0xc
mov byte [esp + 0xe44], 0xb5
call fcn.10009ae0
add esp, 0x40
push 0x100
lea ecx, [esp + 0x9ec]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
push esi
sub esp, 0x1c
lea edx, [esp + 0xa08]
mov ecx, esp
mov dword [esp + 0x70], esp
push edx
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.SystemDirectory
mov byte [esp + 0xe44], 0xb7
call fcn.10001f80
sub esp, 0x1c
mov byte [esp + 0xe5c], 0xb8
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SystemCurrentControlSetControlWindows
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], 0xb5
call fcn.1000ab10
push esi
sub esp, 0x1c
lea eax, [esp + 0xa08]
mov ecx, esp
mov dword [esp + 0x70], esp
push eax
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.SystemDirectory
mov byte [esp + 0xe44], 0xb9
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SystemCurrentControlSetServicesialmDevice0
mov byte [esp + 0xe60], 0xba
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], 0xb5
call fcn.1000ab10
push esi
sub esp, 0x1c
lea edx, [esp + 0xa08]
mov ecx, esp
mov dword [esp + 0x70], esp
push edx
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x54], esp
push str.SystemDirectory
mov byte [esp + 0xe44], 0xbb
call fcn.10001f80
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0xa4], esp
push str.SystemCurrentControlSetServicesialmDevice1
mov byte [esp + 0xe60], 0xbc
call fcn.10001f80
push 0x80000002
lea ecx, [esp + 0x73]
mov byte [esp + 0xe60], 0xb5
call fcn.1000ab10
lea ecx, [esp + 0x160]
call fcn.10002fb0
lea ecx, [esp + 0x150]
call fcn.10002fb0
lea ecx, [esp + 0x368]
call fcn.10001a00
lea ecx, [esp + 0x1c]
call fcn.10002fb0
mov eax, dword [esp + 0x94]
push eax
call dword [sym.imp.SETUPAPI.dll_SetupCloseInfFile]
mov ecx, dword [esp + 0xb8]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x39c], ebx
jb 0x100069ff
mov edx, dword [esp + 0x388]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x348], ebx
mov edi, 0xf
mov dword [esp + 0x39c], edi
mov dword [esp + 0x398], esi
mov byte [esp + 0x388], 0
jb 0x10006a33
mov eax, dword [esp + 0x334]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x364], ebx
mov dword [esp + 0x348], edi
mov dword [esp + 0x344], esi
mov byte [esp + 0x334], 0
jb 0x10006a62
mov ecx, dword [esp + 0x350]
push ecx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x310], ebx
mov dword [esp + 0x364], edi
mov dword [esp + 0x360], esi
mov byte [esp + 0x350], 0
jb 0x10006a91
mov edx, dword [esp + 0x2fc]
push edx
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x32c], ebx
mov dword [esp + 0x310], edi
mov dword [esp + 0x30c], esi
mov byte [esp + 0x2fc], 0
jb 0x10006ac0
mov eax, dword [esp + 0x318]
push eax
call fcn.1000cb22
add esp, 4
cmp dword [esp + 0x3b8], ebx
mov dword [esp + 0x32c], edi
mov dword [esp + 0x328], esi
mov byte [esp + 0x318], 0
jb 0x10006aef
mov ecx, dword [esp + 0x3a4]
push ecx
call fcn.1000cb22
add esp, 4
lea ecx, [esp + 0xc8]
mov dword [esp + 0x3b8], edi
mov dword [esp + 0x3b4], esi
mov byte [esp + 0x3a4], 0
mov dword [esp + 0xe04], 0xffffffff
call fcn.10008b50
xor eax, eax
mov ecx, dword [esp + 0xdfc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xde4]
xor ecx, esp
call fcn.1000d030
add esp, 0xdf4
ret