Function at 0x40ea62
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push ebx
push edi
mov edx, 0x42
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x40ea6a
call fcn.004310a0
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x190]
push 0x41
call fcn.00425341
push 0x258
call fcn.0042a25c
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0x38]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434176
push 0xc
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 8]
push eax
call fcn.00430eb0
push 1
push 0x434770
push dword [esp + 0xc]
call fcn.0040d867
mov dword [esp + 8], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
push dword [esp + 0x10]
call fcn.0041e7e0
lea eax, [esp + 0x10]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
push dword [esp + 0x10]
call fcn.0041e8e0
lea eax, [esp + 0x14]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov edx, 0x436dec
call fcn.00430f90
mov edx, dword [esp + 0x14]
call fcn.00430f90
lea eax, [esp + 0x18]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434176
push 4
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x1c]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0xc]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x20]
push eax
call fcn.00430eb0
push dword [esp + 0x1c]
mov edx, 0x437154
pop ecx
call fcn.00431020
je 0x40ebdc
call fcn.00430e40
push eax
mov edx, 0x434796
call fcn.00430f90
mov edx, dword [esp + 0x20]
call fcn.00430f90
mov edx, str._52bdfcb5b0d25cd7
call fcn.00430f90
lea eax, [esp + 0x24]
push eax
call fcn.00430eb0
jmp 0x40ec09
call fcn.00430e40
push eax
mov edx, 0x434796
call fcn.00430f90
mov edx, dword [esp + 0x20]
call fcn.00430f90
mov edx, str._09b11f16e7b3df4f
call fcn.00430f90
lea eax, [esp + 0x24]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x10]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
lea eax, [esp + 0x28]
push eax
call fcn.00430eb0
lea edx, [esp + 0x28]
push edx
push 0x438e9c
push 8
push 2
push 4
call fcn.0042eaf5
lea edx, [esp + 0x28]
push edx
push dword [esp + 0x1c]
push dword [esp + 0xc]
call fcn.00406468
lea edx, [esp + 0x30]
push edx
push 0x438e9c
push 8
push 3
push 4
call fcn.0042eaf5
mov ebp, dword [esp + 0x30]
mov edx, dword [ebp]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 8]
call fcn.00430f90
mov edx, 0x434388
call fcn.00430f90
mov ebp, dword [esp + 0x11c]
mov edx, dword [ebp + 4]
call fcn.00430f90
mov edx, str.inf_
call fcn.00430f90
mov edx, dword [esp + 0x18]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
mov ebp, dword [esp + 0x34]
lea eax, [ebp]
push eax
call fcn.00430eb0
push 0x4349fc
mov ebp, dword [esp + 0x2c]
push dword [ebp]
call fcn.0041e930
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], 1
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x3c]
jl 0x40edd9
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x48]
mov ebp, dword [esp + 0x38]
push dword [ebp]
call fcn.0041e9c0
lea eax, [esp + 0x44]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov edx, dword [esp + 0x10]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
mov edx, dword [esp + 0x48]
call fcn.00430f90
call fcn.00430e92
add dword [esp], edx
call fcn.0042bd5a
call fcn.00430f40
push edx
push eax
pop ebx
pop edi
cmp ebx, 0xffffffff
jne 0x40ed74
cmp edi, 0xffffffff
jne 0x40ed74
xor eax, eax
jmp 0x40ed79
mov eax, 1
or eax, eax
je 0x40edcf
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x48]
mov ebp, dword [esp + 0x38]
push dword [ebp + 4]
call fcn.0041e9c0
lea eax, [esp + 0x48]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
lea edx, [esp + 0x34]
push edx
push dword [esp + 0x2c]
push dword [esp + 0x50]
push dword [esp + 0x50]
push dword [esp + 0x20]
push dword [esp + 0x130]
call fcn.00406d89
call fcn.00430f40
inc dword [esp + 0x3c]
jno 0x40ecf4
mov ebp, dword [esp + 0x30]
mov edx, dword [ebp]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x4c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434176
push 0x4349fc
push dword [esp + 0x58]
call fcn.0041efa0
lea eax, [esp + 0x4c]
push eax
call fcn.00430eb0
push dword [ebp]
call fcn.0041c40a
mov ebx, eax
and ebx, ebx
jle 0x40ee42
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x194]
push 0x41
call fcn.00425341
jmp 0x4117db
lea edx, [esp + 0x4c]
push edx
push 0x438e9c
push 8
push 6
push 4
call fcn.0042eaf5
call fcn.00430e40
push eax
lea edx, [esp + 0x50]
push edx
push dword [esp + 0x20]
push dword [esp + 0x10]
push dword [esp + 0x128]
call fcn.00419f1f
call fcn.00430f40
mov ebp, dword [esp + 0x4c]
push dword [ebp + 4]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x40eebd
push 0x7d0
call fcn.0042a25c
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x1a4]
push 0x41
call fcn.00425341
jmp 0x4117db
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 4]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x58]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0x2c]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x5c]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0x28]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x60]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0x1c]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x64]
push eax
call fcn.00430eb0
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x18c]
push 0x41
call fcn.00425341
call fcn.00430e40
push eax
mov ebp, dword [esp + 0x34]
push dword [ebp]
call fcn.00430e40
push eax
mov edx, str.Inject:
call fcn.00430f90
call fcn.00430e40
push eax
push eax
push 0x434176
push 1
push dword [esp + 0x1c]
call fcn.0041e9c0
pop eax
call fcn.00430ff0
push dword [esp + 0x60]
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00415aaf
call fcn.00430f40
push 0x5dc
call fcn.0042a25c
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x198]
push 0x41
call fcn.00425341
mov ebp, dword [esp + 0x30]
push dword [ebp]
call fcn.00404762
push 0x3e8
call fcn.0042a25c
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x19c]
push 0x41
call fcn.00425341
push dword [esp + 0x54]
call fcn.0040951f
push 0x4349fc
mov ebp, dword [esp + 0x50]
push dword [ebp + 4]
call fcn.0041e930
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 1
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x68]
jl 0x40ff30
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
mov ebp, dword [esp + 0x5c]
push dword [ebp + 4]
call fcn.0041e9c0
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
push dword [ebp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x74]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
push dword [ebp + 0xc]
call fcn.0041e9c0
lea eax, [esp + 0x78]
push eax
call fcn.00430eb0
mov edx, 0x434032
lea ecx, [esp + 0x78]
call fcn.0041e008
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
push dword [ebp + 8]
call fcn.0041e9c0
lea eax, [esp + 0x80]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push 1
push 0x434336
push 0x434586
push dword [esp + 0x94]
call fcn.0041ef70
call fcn.00430e92
add dword [esp], edx
call fcn.0041eaf0
call fcn.00430f40
mov dword [esp + 0x80], eax
mov ebx, dword [esp + 0x80]
and ebx, 2
cmp ebx, 2
jne 0x40f153
call fcn.00430e40
push eax
mov edx, 0x434518
call fcn.00430f90
mov edx, dword [esp + 0x18]
call fcn.00430f90
mov edx, 0x437b6e
call fcn.00430f90
mov edx, dword [esp + 0x88]
call fcn.00430f90
mov edx, 0x43592e
call fcn.00430f90
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
mov edx, dword [esp + 4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
mov edx, dword [esp + 8]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
mov edx, dword [esp + 8]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
mov edx, dword [esp + 8]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
lea eax, [esp + 0x8c]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x74]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
mov edx, dword [esp + 0x1c]
call fcn.00430f90
mov edx, 0x4349fc
call fcn.00430f90
mov edx, dword [esp + 0x1c]
call fcn.00430f90
mov edx, str..Service
call fcn.00430f90
lea eax, [esp + 0x90]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0x1c]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x64]
push eax
call fcn.00430eb0
push 0x4349fc
push dword [esp + 0x90]
call fcn.0041e930
mov dword [esp + 0x64], eax
mov dword [esp + 0x90], 1
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x90]
jl 0x40ff26
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x9c]
push dword [esp + 0x98]
call fcn.0041e9c0
lea eax, [esp + 0x98]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.0041e9c0
lea eax, [esp + 0x9c]
push eax
call fcn.00430eb0
mov dword [esp + 0xa0], 2
mov dword [esp + 0xa4], 1
lea edx, [esp + 0x9c]
push edx
push 0x438e9c
push 8
push 4
push 2
call fcn.0042eb86
lea edx, [esp + 0x9c]
push edx
push dword [esp + 0x9c]
push dword [esp + 0x9c]
call fcn.00405406
mov dword [esp + 0xa8], eax
mov ebx, dword [esp + 0xa8]
and ebx, ebx
jle 0x40ff19
mov dword [esp + 0x3c], 1
mov eax, dword [esp + 0xa8]
cmp eax, dword [esp + 0x3c]
jl 0x40ff19
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push 3
mov eax, dword [esp + 0xb0]
imul eax, eax, 0
mov ebp, eax
push ebp
mov eax, dword [esp + 0x50]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xac]
push dword [ebp]
call fcn.0041332d
call fcn.00430e92
add dword [esp], edx
call fcn.0041e3c0
lea eax, [esp + 0xb0]
push eax
call fcn.00430eb0
push dword [esp + 0xac]
mov edx, str.displayname
pop ecx
call fcn.00431020
je 0x40f4d5
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40f419
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov edx, dword [esp + 0x7c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0xb8]
call fcn.00430f90
call fcn.00430ff0
push 1
push 0x43438c
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0xac]
mov edx, str.servicebinary
pop ecx
call fcn.00431020
je 0x40f724
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40f575
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
push 1
push 0x434770
push dword [esp + 0xb8]
call fcn.0040d867
mov dword [esp + 8], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
push dword [esp + 0xbc]
call fcn.0041e8e0
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov edx, str.System32Drivers_
call fcn.00430f90
mov edx, dword [esp + 0xb8]
call fcn.00430f90
call fcn.00430ff0
push 2
push str.ImagePath
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push 0x4343c8
push 4
push 0x4343c8
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
mov edx, str.StartOverride
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x14]
push 7
push str.Owners
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0xac]
mov edx, str.starttype
pop ecx
call fcn.00431020
je 0x40f85e
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40f7c4
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xb4]
push 4
push str.Start
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0xac]
mov edx, str.servicetype
pop ecx
call fcn.00431020
je 0x40f998
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40f8fe
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xb4]
push 4
push str.Type
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0xac]
mov edx, str.loadordergroup
pop ecx
call fcn.00431020
je 0x40fcac
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40fa38
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xb4]
push 1
push str.Group
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push 0x4374ec
mov edx, dword [esp + 0x64]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x78]
call fcn.00430f90
call fcn.00430ff0
push str.HKLM
push 0
call fcn.00430e92
add dword [esp + 8], edx
call fcn.0041cdce
lea eax, [esp + 0xb8]
push eax
call fcn.00430eb0
push dword [esp + 0xb4]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x40fcac
call fcn.00430e40
push eax
push dword [esp + 0xb4]
mov edx, dword [esp + 0x64]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ControlGroupOrderList
call fcn.00430f90
call fcn.00430ff0
push str.HKLM
push 0
call fcn.00430e92
add dword [esp + 8], edx
call fcn.0041cdce
lea eax, [esp + 0xbc]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xbc]
call fcn.00409693
lea eax, [esp + 0xc0]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push 1
push dword [esp + 0xcc]
call fcn.0041e9c0
lea eax, [esp + 0xc4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push 2
push dword [esp + 0xcc]
call fcn.0041e9c0
lea eax, [esp + 0xc8]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xc4]
push 4
push 0x4374ec
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0xc8]
push 3
push dword [esp + 0xbc]
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ControlGroupOrderList
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0xac]
mov edx, str.errorcontrol
pop ecx
call fcn.00431020
je 0x40fde6
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40fd4c
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xb4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xb4]
push 4
push str.ErrorControl
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0xac]
mov edx, str.addreg
pop ecx
call fcn.00431020
je 0x40ff0f
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x40fe86
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
push dword [esp + 0x68]
push dword [esp + 0xa0]
call fcn.00405de2
lea eax, [esp + 0xcc]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x74]
call fcn.00430f90
call fcn.00430ff0
push dword [esp + 0x64]
push dword [esp + 0x64]
push dword [esp + 0xd8]
push dword [esp + 0xa8]
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0040d901
call fcn.00430f40
inc dword [esp + 0x3c]
jno 0x40f316
inc dword [esp + 0x90]
jno 0x40f23d
inc dword [esp + 0x68]
jno 0x40f015
mov ebp, dword [esp + 0x118]
push dword [ebp + 0x14]
call fcn.0041eaf0
push edx
push eax
pop ebx
pop edi
cmp edi, 0
jl 0x40ff56
jg 0x40ff52
cmp ebx, 0x1e14
jb 0x40ff56
xor eax, eax
jmp 0x40ff5b
mov eax, 1
or eax, eax
je 0x410211
call fcn.00430e40
push eax
push eax
push 0x434176
push 3
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0xd0]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434332
push 0x434770
push dword [esp + 0xdc]
call fcn.0041efa0
lea eax, [esp + 0xd0]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov ebp, dword [esp + 0x50]
push dword [ebp]
push 1
push str.ClassGUID
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ControlCriticalDeviceDatabase_
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
mov edx, 0x434032
lea ecx, [esp + 0xd0]
call fcn.0041e008
push 0x4349fc
mov ebp, dword [esp + 0x50]
push dword [ebp + 4]
call fcn.0041e930
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 1
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x68]
jl 0x41020c
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
mov ebp, dword [esp + 0x5c]
push dword [ebp + 8]
call fcn.0041e9c0
lea eax, [esp + 0x80]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push 1
push 0x434336
push 0x434586
push dword [esp + 0x94]
call fcn.0041ef70
call fcn.00430e92
add dword [esp], edx
call fcn.0041eaf0
call fcn.00430f40
mov dword [esp + 0x80], eax
mov ebx, dword [esp + 0x80]
and ebx, 2
cmp ebx, 2
jne 0x410152
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
mov ebp, dword [esp + 0x5c]
push dword [ebp + 4]
call fcn.0041e9c0
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x70]
push 1
push str.Service
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ControlCriticalDeviceDatabase_
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
mov dword [esp + 0xd4], 0
jmp 0x410202
push dword [esp + 0xd0]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x410202
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
mov ebp, dword [esp + 0x5c]
push dword [ebp + 4]
call fcn.0041e9c0
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0xd4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x70]
push 1
push str.LowerFilters
mov edx, dword [esp + 0x6c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.ControlCriticalDeviceDatabase_
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
inc dword [esp + 0x68]
jno 0x41003b
jmp 0x4115e3
call fcn.00430e40
push eax
mov ebp, dword [esp + 0x34]
push dword [ebp]
call fcn.0040ad17
lea eax, [esp + 0xdc]
push eax
call fcn.00430eb0
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.System32DriverStoreFileRepository_
call fcn.00430f90
mov edx, dword [esp + 0x14]
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
lea eax, [esp + 0xe0]
push eax
call fcn.00430eb0
push dword [esp + 0xdc]
call fcn.00415503
call fcn.00430e40
push eax
push 3
push 0x437452
push dword [esp + 0xe8]
mov edx, dword [esp + 0xe8]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
call fcn.00430e92
add dword [esp], edx
call fcn.0042c542
call fcn.00430f40
push 1
push 0x434770
push dword [esp + 0x64]
call fcn.0040d867
mov dword [esp + 8], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
push dword [esp + 0x68]
call fcn.0041e7e0
lea eax, [esp + 0xe4]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0xe0]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverDatabase
call fcn.00430f90
lea eax, [esp + 0xe8]
push eax
call fcn.00430eb0
mov edx, 0x434032
lea ecx, [esp + 0xe8]
call fcn.0041e008
call fcn.00430e40
push eax
push eax
push 0x434176
push 3
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0xd0]
push eax
call fcn.00430eb0
push 0x434770
push dword [esp + 0xd0]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x4103c1
call fcn.00430e40
push eax
push eax
push dword [esp + 0x10]
push dword [esp + 0xd8]
call fcn.0041e7e0
lea eax, [esp + 0xec]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
inc ebx
push ebx
push dword [esp + 0xd8]
call fcn.0041e8e0
lea eax, [esp + 0xd0]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push 1
mov ebp, dword [esp + 0x5c]
push dword [ebp + 4]
call fcn.0041e9c0
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434176
push 1
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0xf0]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434176
push 6
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x88]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434176
push 4
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x1c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push str.01ff0000
push 3
push dword [esp + 0x20]
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DeviceIds_
call fcn.00430f90
mov edx, dword [esp + 0xfc]
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push eax
push 0x434176
push 0xa
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0xf4]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 0x4343c8
push 0
push dword [esp + 0x20]
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x435934
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
mov edx, dword [esp + 0x14]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x28]
call fcn.00430f90
call fcn.00430ff0
push 7
push 0x434032
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverInfFiles_
call fcn.00430f90
mov edx, dword [esp + 0x28]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
mov edx, dword [esp + 0x14]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0x28]
call fcn.00430f90
call fcn.00430ff0
push 1
push str.Active
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverInfFiles_
call fcn.00430f90
mov edx, dword [esp + 0x28]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push 0x434774
mov edx, dword [esp + 0xec]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverInfFiles_
call fcn.00430f90
mov edx, dword [esp + 0x20]
call fcn.00430f90
call fcn.00430ff0
push str.HKLM
push 0
call fcn.00430e92
add dword [esp + 8], edx
call fcn.0041cdce
lea eax, [esp + 0xf8]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov edx, 0x434176
call fcn.00430f90
call fcn.00430e40
push eax
push eax
push dword [esp + 0x28]
call fcn.0041e3c0
pop eax
mov edx, 0x434176
call fcn.00430f90
call fcn.00430ff0
call fcn.00430e40
push eax
mov edx, 0x434176
call fcn.00430f90
call fcn.00430e40
push eax
push eax
push dword [esp + 0x108]
call fcn.0041e3c0
pop eax
mov edx, 0x434176
call fcn.00430f90
call fcn.00430e92
add dword [esp], edx
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041e4a0
call fcn.00430f40
mov ebx, eax
and ebx, ebx
jne 0x4107be
push dword [esp + 0xf4]
mov edx, 0x434032
pop ecx
call fcn.00431020
je 0x410733
mov edx, dword [esp + 0x18]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0xf8]
push eax
call fcn.00430eb0
jmp 0x410765
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434176
call fcn.00430f90
mov edx, dword [esp + 0x1c]
call fcn.00430f90
lea eax, [esp + 0xf8]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xf8]
push 7
push 0x434774
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverInfFiles_
call fcn.00430f90
mov edx, dword [esp + 0x28]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x18]
push 1
push 0x434032
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push eax
push 0x434176
push 6
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0xfc]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xfc]
push 1
push str.Provider
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x14]
push 1
push str.InfName
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x10]
push 1
push str.OemPath
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push eax
push 0x434176
push 0xb
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x100]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0x100]
push 1
push str.Catalog
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push str.Microsoft_Windows_Hardware_Compatibility_Publisher
push 1
push str.SignerName
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push str.606d1cc43ae0d501
push 3
push str.ImportDate
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push str.0xd000003
push 4
push str.SignerScore
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push str.0xd00001e
push 4
push str.StatusFlags
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
push dword [esp + 0x1c]
mov edx, 0x437154
pop ecx
call fcn.00431020
je 0x410be0
call fcn.00430e40
push eax
push str.00ff0000000000007be9364d25e3ce11bfc108002be10318004035cdc2a8c80100001300050001000040000000000000
push 3
push str.Version
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
jmp 0x410c40
call fcn.00430e40
push eax
push str.00ff0900000000007be9364d25e3ce11bfc108002be103180040c91fa205d30101000000000005000000000000000000
push 3
push str.Version
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x70]
push 1
push str.Service
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Configurations_
call fcn.00430f90
mov edx, dword [esp + 0x2c]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push 0x4343c8
push 4
push str.ConfigFlags
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Configurations_
call fcn.00430f90
mov edx, dword [esp + 0x2c]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push str.1024
push 4
push str.ConfigFlags
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Configurations_
call fcn.00430f90
mov edx, dword [esp + 0x2c]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push 0x43445e
push 4
push str.ConfigScope
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Configurations_
call fcn.00430f90
mov edx, dword [esp + 0x2c]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push 0x434032
push 0xffffffff
push 0x434032
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Configurations_
call fcn.00430f90
mov edx, dword [esp + 0x2c]
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x80]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x1c]
push 1
push str.Configuration
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Descriptors_
call fcn.00430f90
mov edx, dword [esp + 0xfc]
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push eax
mov edx, 0x43433a
call fcn.00430f90
mov edx, dword [esp + 0x8c]
call fcn.00430f90
mov edx, 0x43433a
call fcn.00430f90
call fcn.00430ff0
push 1
push str.Manufacturer
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Descriptors_
call fcn.00430f90
mov edx, dword [esp + 0xfc]
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0041bd24
call fcn.00430f40
mov edx, dword [esp + 0xe8]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0xd0]
call fcn.00430f90
lea eax, [esp + 0x104]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push str.sub
call fcn.00430e40
push eax
push eax
mov edx, dword [esp + 0xf8]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430e92
add dword [esp], edx
call fcn.0041e3c0
call fcn.00430e92
add dword [esp], edx
call fcn.0041e4a0
call fcn.00430f40
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x41108c
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, dword [esp + 0xdc]
call fcn.00430f90
call fcn.00430e92
add dword [esp], edx
call fcn.0041e7e0
lea eax, [esp + 0x104]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov edx, 0x43433a
call fcn.00430f90
mov edx, dword [esp + 0x108]
call fcn.00430f90
mov edx, str..devicedesc_
call fcn.00430f90
call fcn.00430ff0
push 1
push str.Description
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Descriptors_
call fcn.00430f90
mov edx, dword [esp + 0xfc]
call fcn.00430f90
mov edx, dword [esp + 0xe0]
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0x88]
push 1
push dword [esp + 0x90]
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Strings
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.0041bd24
call fcn.00430f40
call fcn.00430e40
push eax
push dword [esp + 0xf0]
push 1
mov edx, dword [esp + 0x10c]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str..devicedesc
call fcn.00430f90
call fcn.00430ff0
mov edx, dword [esp + 0xf4]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x24]
call fcn.00430f90
mov edx, dword [esp + 0x34]
call fcn.00430f90
mov edx, str.Strings
call fcn.00430f90
call fcn.00430ff0
push str.hklm
call fcn.00430e92
add dword [esp + 4], edx
call fcn.00430e92
add dword [esp + 8], edx
call fcn.0041bd24
call fcn.00430f40
mov ebp, dword [esp + 0x118]
mov edx, dword [ebp + 0x1c]
call fcn.00430e40
push eax
call fcn.00430f90
lea eax, [esp + 0x64]
push eax
call fcn.00430eb0
push 0x4349fc
mov ebp, dword [esp + 0x50]
push dword [ebp + 4]
call fcn.0041e930
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], 1
mov eax, dword [esp + 0x64]
cmp eax, dword [esp + 0x68]
jl 0x4115e3
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
mov ebp, dword [esp + 0x5c]
push dword [ebp + 4]
call fcn.0041e9c0
lea eax, [esp + 0x70]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
push dword [ebp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x74]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
push dword [ebp + 0xc]
call fcn.0041e9c0
lea eax, [esp + 0x78]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x4349fc
push dword [esp + 0x74]
push dword [ebp + 8]
call fcn.0041e9c0
lea eax, [esp + 0x80]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push 1
push 0x434336
push 0x434586
push dword [esp + 0x94]
call fcn.0041ef70
call fcn.00430e92
add dword [esp], edx
call fcn.0041eaf0
call fcn.00430f40
mov dword [esp + 0x80], eax
mov ebx, dword [esp + 0x80]
and ebx, 2
cmp ebx, 2
jne 0x4115d9
mov dword [esp + 0xa0], 2
mov dword [esp + 0xa4], 1
lea edx, [esp + 0x9c]
push edx
push 0x438e9c
push 8
push 4
push 2
call fcn.0042eb86
lea edx, [esp + 0x9c]
push edx
push dword [esp + 0x78]
push dword [esp + 0xc]
call fcn.00405406
mov dword [esp + 0xa8], eax
mov ebx, dword [esp + 0xa8]
and ebx, ebx
jle 0x4115d9
mov dword [esp + 0x3c], 1
mov eax, dword [esp + 0xa8]
cmp eax, dword [esp + 0x3c]
jl 0x4115d9
call fcn.00430e40
push eax
push eax
call fcn.00430e40
push eax
push 3
mov eax, dword [esp + 0xb0]
imul eax, eax, 0
mov ebp, eax
push ebp
mov eax, dword [esp + 0x50]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xac]
push dword [ebp]
call fcn.0041332d
call fcn.00430e92
add dword [esp], edx
call fcn.0041e3c0
lea eax, [esp + 0xb0]
push eax
call fcn.00430eb0
push dword [esp + 0xac]
mov edx, str.addreg
pop ecx
call fcn.00431020
je 0x4115cf
push 0x4344da
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
push dword [ebp]
call fcn.0041e4a0
mov dword [esp + 8], eax
mov ebx, dword [esp + 8]
and ebx, ebx
jle 0x4114d1
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041e7e0
mov eax, dword [esp + 0xa4]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x44]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa0]
lea eax, [ebp]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x43432e
mov eax, dword [esp + 0xac]
mov ebp, eax
push ebp
mov eax, dword [esp + 0x4c]
pop ebp
add ebp, eax
shl ebp, 2
add ebp, dword [esp + 0xa8]
push dword [ebp]
call fcn.0041f1e0
lea eax, [esp + 0xcc]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push 3
push dword [esp + 0xd0]
call fcn.0041332d
lea eax, [esp + 0xcc]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push dword [esp + 0xcc]
push dword [esp + 0x68]
push dword [esp + 0x10]
call fcn.00404138
lea eax, [esp + 0xcc]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
mov edx, str.DriverDatabaseDriverPackages_
call fcn.00430f90
mov edx, dword [esp + 0x18]
call fcn.00430f90
mov edx, dword [esp + 0x28]
call fcn.00430f90
mov edx, str.Configurations_
call fcn.00430f90
mov edx, dword [esp + 0x20]
call fcn.00430f90
mov edx, str.Services_
call fcn.00430f90
mov edx, dword [esp + 0x74]
call fcn.00430f90
call fcn.00430ff0
push dword [esp + 0xec]
push dword [esp + 0x64]
push dword [esp + 0xd8]
push dword [esp + 0x18]
call fcn.00430e92
add dword [esp + 0x10], edx
call fcn.0040d901
call fcn.00430f40
inc dword [esp + 0x3c]
jno 0x4113ce
inc dword [esp + 0x68]
jno 0x411273
call fcn.00408daf
call fcn.00430e40
push eax
push eax
push 0x434176
push 1
push dword [esp + 0x10]
call fcn.0041e9c0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434032
push 0x4344d6
push dword [esp + 0x88]
call fcn.0041efa0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434032
push 0x434770
push dword [esp + 0x88]
call fcn.0041efa0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434032
push 0x4343c4
push dword [esp + 0x88]
call fcn.0041efa0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434032
push 0x434372
push dword [esp + 0x88]
call fcn.0041efa0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
push eax
push 0x434032
push 0x43432e
push dword [esp + 0x88]
call fcn.0041efa0
lea eax, [esp + 0x7c]
push eax
call fcn.00430eb0
call fcn.00430e40
push eax
mov ebp, dword [esp + 0x34]
push dword [ebp]
call fcn.0040ad17
lea eax, [esp + 0xdc]
push eax
call fcn.00430eb0
push 0x434770
push dword [esp + 0x58]
call fcn.0041e4a0
mov dword [esp + 8], eax
call fcn.00430e40
push eax
push eax
mov ebx, dword [esp + 0x10]
dec ebx
push ebx
push dword [esp + 0x60]
call fcn.0041e7e0
lea eax, [esp + 0x108]
push eax
call fcn.00430eb0
mov edx, dword [esp + 0x104]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, str.DevManPE_CacheDrivers_
call fcn.00430f90
mov edx, dword [esp + 0x14]
call fcn.00430f90
mov edx, 0x4380c8
call fcn.00430f90
mov edx, dword [esp + 0x7c]
call fcn.00430f90
lea eax, [esp + 0xe0]
push eax
call fcn.00430eb0
push dword [esp + 0xdc]
call fcn.00415503
call fcn.00430e40
push eax
push 3
push 0x437452
push dword [esp + 0xe8]
mov edx, dword [esp + 0xe8]
call fcn.00430e40
push eax
call fcn.00430f90
mov edx, 0x434770
call fcn.00430f90
call fcn.00430e92
add dword [esp], edx
call fcn.0042c542
call fcn.00430f40
push 0x2bc
call fcn.0042a25c
mov ebp, dword [0x43b1b4]
push dword [ebp + 0x1a0]
push 0x41
call fcn.00425341
xor eax, eax
push dword [esp + 0x24]
call fcn.00431170
push dword [esp + 0xc]
call fcn.00431170
push dword [esp + 0xdc]
call fcn.00431170
push dword [esp + 0xb0]
call fcn.00431170
push dword [esp + 0xc8]
call fcn.00431170
push dword [esp + 0x94]
call fcn.00431170
push dword [esp + 0x74]
call fcn.00431170
push dword [esp + 0x7c]
call fcn.00431170
push dword [esp + 0xfc]
call fcn.00431170
push dword [esp + 0x54]
call fcn.00431170
push dword [esp + 0xec]
call fcn.00431170
push dword [esp + 0x70]
call fcn.00431170
push dword [esp + 0x40]
call fcn.00431170
push dword [esp + 0x14]
call fcn.00431170
push dword [esp + 0x104]
call fcn.00431170
push dword [esp + 0xb8]
call fcn.00431170
push dword [esp + 0xf8]
call fcn.00431170
push dword [esp + 0xc0]
call fcn.00431170
push dword [esp + 0xc4]
call fcn.00431170
push dword [esp + 0x5c]
call fcn.00431170
push dword [esp + 0xf4]
call fcn.00431170
push dword [esp + 0x1c]
call fcn.00431170
push dword [esp + 0xd8]
call fcn.00431170
push dword [esp + 0x10]
call fcn.00431170
push dword [esp + 0x60]
call fcn.00431170
push dword [esp + 0x18]
call fcn.00431170
push dword [esp]
call fcn.00431170
push dword [esp + 0x98]
call fcn.00431170
push dword [esp + 0x78]
call fcn.00431170
push dword [esp + 0xcc]
call fcn.00431170
push dword [esp + 0x100]
call fcn.00431170
push dword [esp + 0xf0]
call fcn.00431170
push dword [esp + 4]
call fcn.00431170
push dword [esp + 0x20]
call fcn.00431170
push dword [esp + 0x6c]
call fcn.00431170
push dword [esp + 0xe0]
call fcn.00431170
push dword [esp + 0xb4]
call fcn.00431170
push dword [esp + 0x44]
call fcn.00431170
push dword [esp + 0xbc]
call fcn.00431170
push dword [esp + 0x8c]
call fcn.00431170
push dword [esp + 0x58]
call fcn.00431170
push dword [esp + 0x48]
call fcn.00431170
push dword [esp + 0xe4]
call fcn.00431170
push dword [esp + 0xd0]
call fcn.00431170
push dword [esp + 0xac]
call fcn.00431170
push dword [esp + 0x84]
call fcn.00431170
push dword [esp + 0xe8]
call fcn.00431170
push dword [esp + 0x88]
call fcn.00431170
push eax
push dword [esp + 0x2c]
call fcn.0042ee4d
push dword [esp + 0x34]
call fcn.0042ee4d
push dword [esp + 0x50]
call fcn.0042ee4d
push dword [esp + 0xa0]
call fcn.0042ee4d
pop eax
add esp, 0x108
pop edi
pop ebx
pop ebp
ret 4