Function at 0x40f737
Capabilities:
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40f7a6
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40f7a2
imul eax, dword [ebx]
jmp 0x40f797
mov ecx, eax
test ecx, ecx
je 0x40f7c5
push ecx
mov eax, dword [ebx]
test eax, eax
je 0x40f7be
push ebx
push eax
call fcn.0041c1fe
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40f7ac
call fcn.0041c1fe
add esp, 4
mov eax, 0x43756b
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov eax, str.rootCIMV2
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
call fcn.0040fd80
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40f807
push ebx
call fcn.0041c1fe
add esp, 4
lea eax, [ebp - 0x34]
push eax
call fcn.0041003b
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x34]
test ebx, ebx
je 0x40f823
push ebx
call fcn.0041c1fe
add esp, 4
mov eax, dword [ebp - 0x38]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x40fd39
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov eax, 0x437e7b
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
call fcn.0040fd80
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40f863
push ebx
call fcn.0041c1fe
add esp, 4
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40f877
push ebx
call fcn.0041c1fe
add esp, 4
pop eax
mov dword [ebp - 8], eax
cmp dword [ebp + 0x10], 0
jne 0x40f8d2
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov eax, str.SELECT_HotFixID_FROM_Win32_QuickFixEngineering
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
call fcn.0040fd80
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40f8b5
push ebx
call fcn.0041c1fe
add esp, 4
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40f8c9
push ebx
call fcn.0041c1fe
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
jmp 0x40f931
push 0x437eae
mov ebx, dword [ebp + 0xc]
push dword [ebx]
push str.SELECT_HotFixID_FROM_Win32_QuickFixEngineering_WHERE_HotFixID__
mov ecx, 3
call fcn.00401469
add esp, 0xc
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
lea eax, [ebp - 0x2c]
push eax
call fcn.0040fd80
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40f919
push ebx
call fcn.0041c1fe
add esp, 4
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40f92d
push ebx
call fcn.0041c1fe
add esp, 4
pop eax
mov dword [ebp - 0xc], eax
lea eax, [ebp - 8]
push eax
call fcn.004086f4
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0xc]
push eax
call fcn.004086f4
mov dword [ebp - 0x30], eax
push 0x80000301
push 0
push 0x10
push 0x80000301
push 0
push 0x20
push 2
mov ebx, 0xc8
call sub.wmvert.dll_wm_BOr
add esp, 0x1c
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x14]
push eax
call fcn.00410201
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
mov dword [ebp - 0x48], 0
push 0
push dword [ebp - 0x48]
push 1
push dword [ebp - 0x38]
push 1
push 0
push 1
push dword [ebp - 0x34]
push 1
push dword [ebp - 0x30]
push 1
push dword [ebp - 0x2c]
push 0x14
push dword [ebp - 4]
call fcn.0041021b
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x40f9f8
cmp dword [ebp - 0x14], 0
je 0x40f9f8
mov eax, 1
jmp 0x40f9fd
mov eax, 0
test eax, eax
je 0x40fd30
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
mov eax, str.HotFixID
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push eax
call fcn.0040fd80
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40fa35
push ebx
call fcn.0041c1fe
add esp, 4
mov eax, dword [ebp - 0x34]
push eax
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40fa49
push ebx
call fcn.0041c1fe
add esp, 4
pop eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], esp
push 0x10
push 0x40
mov eax, 0x1a
call sub.Kernel32.dll_LocalAlloc
cmp dword [ebp - 0x2c], esp
je 0x40fa80
push 0x372
push 0x4014723
push 6
call fcn.0041c20a
add esp, 0xc
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
je 0x40fd27
lea eax, [ebp - 0x20]
push eax
call fcn.00410201
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x24]
push eax
call fcn.00410201
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
mov dword [ebp - 0x40], 0
push 0
push dword [ebp - 0x40]
mov dword [ebp - 0x44], 0
push 0
push dword [ebp - 0x44]
push 1
push dword [ebp - 0x30]
push 1
push dword [ebp - 0x2c]
push 1
push 1
push 1
push 0xffffffff
push 4
push dword [ebp - 0x14]
call fcn.0041021b
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x40fb24
cmp dword [ebp - 0x20], 0
je 0x40fb24
mov eax, 1
jmp 0x40fb29
mov eax, 0
test eax, eax
je 0x40fcf1
mov dword [ebp - 0x2c], esp
push 0x10
push 0
push dword [ebp - 0x1c]
mov eax, 0x1b
call sub.msvcrt.dll_memset
add esp, 0xc
cmp dword [ebp - 0x2c], esp
je 0x40fb6a
push 0x4bd
push 0x4014723
push 6
call fcn.0041c20a
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
call fcn.004086f4
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
mov dword [ebp - 0x3c], 0
push 0
push dword [ebp - 0x3c]
push 1
push 0
push 1
push 0
push 1
push dword [ebp - 0x1c]
push 1
push 0
push 1
push dword [ebp - 0x2c]
push 4
push dword [ebp - 0x20]
call fcn.0041021b
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jne 0x40fce8
push 8
push dword [ebp - 0x1c]
call fcn.00410378
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x40fce8
push dword [ebp - 0x28]
call fcn.004104c6
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0040873c
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x40fc20
push ebx
call fcn.0041c1fe
add esp, 4
push dword [ebp + 8]
push 4
mov eax, 2
call fcn.0041c1f2
add esp, 8
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
call fcn.004022cc
mov dword [ebp - 0x3c], ecx
mov edi, dword [ebp - 0x38]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40fc64
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x3c]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x38]
call fcn.0041c228
add esp, 8
mov ebx, dword [ebp + 8]
mov dword [ebx], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x3c]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x34]
push edi
test eax, eax
je 0x40fca9
push eax
mov ebx, eax
call fcn.004013fe
inc eax
push eax
call fcn.0041c1f8
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40fcbc
push ebx
call fcn.0041c1fe
add esp, 4
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x28]
mov eax, 0x1c
call sub.oleaut32.dll_SysFreeString
cmp dword [ebp - 0x2c], esp
je 0x40fce8
push 0x652
push 0x4014723
push 6
call fcn.0041c20a
add esp, 0xc
lea eax, [ebp - 0x20]
push eax
call fcn.00410415
cmp dword [ebp - 0x24], 0
jne 0x40fa8d
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x1c]
mov eax, 0x1d
call sub.Kernel32.dll_LocalFree
cmp dword [ebp - 0x2c], esp
je 0x40fd27
push 0x6e9
push 0x4014723
push 6
call fcn.0041c20a
add esp, 0xc
lea eax, [ebp - 0x14]
push eax
call fcn.00410415
lea eax, [ebp - 4]
push eax
call fcn.00410415
mov ebx, dword [ebp + 8]
mov ebx, dword [ebx]
call fcn.004022b3
jmp 0x40fd48
push eax
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x40fd59
push ebx
call fcn.0041c1fe
add esp, 4
mov ebx, dword [ebp - 0xc]
test ebx, ebx
je 0x40fd69
push ebx
call fcn.0041c1fe
add esp, 4
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x40fd79
push ebx
call fcn.0041c1fe
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0xc