Function at 0x427cb0
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push edi
mov edi, 0x80000000
push esi
push ebx
sub esp, 0x3c
call fcn.00427080
mov dword [esp + 4], 0x1fe1
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov esi, eax
mov dword [ebp - 0x38], eax
call fcn.0052ae70
mov dword [esp], esi
mov dword [esp + 4], str.failed_to_create_db_n
call fcn.0052b0e0
xor edx, edx
mov ecx, str.CREATE_TABLE__T_____A__SHORT___B__SHORT___C__SHORT_PRIMARY_KEY__A__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x1fe5
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____A____B____C____VALUES___1__2__3__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x1fe9
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____B____C____A____VALUES___4__5__6__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x1fed
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____C____A____B____VALUES___7__8__9__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x1ff1
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____A____B____VALUES___10__11__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x1ff5
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____B____C____VALUES___12__13__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x1ff9
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____C____VALUES___14__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x2000
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x65b
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543e54
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____A____C____VALUES___1__14__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x2006
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x65b
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543e54
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T_____A____C____VALUES___14__15__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x200b
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T__VALUES___16__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x200f
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x64f
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543efc
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T__VALUES___17__18__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x2014
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x64f
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543efc
mov dword [esp], eax
call fcn.0052b0e0
xor edx, edx
mov ecx, str.INSERT_INTO__T__VALUES___19__20__21__
mov eax, esi
call fcn.00427af0
mov dword [esp + 4], 0x2019
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov ebx, eax
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x64f
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543efc
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x20]
mov dword [esp], esi
mov esi, 0x54e12c
mov dword [esp + 8], eax
mov dword [esp + 4], str.SELECT__FROM__T_
call sub.msi.dll_MsiDatabaseOpenViewA
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0x201e
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.msi.dll_MsiViewExecute
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2020
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543d04
mov ebx, esi
mov dword [esp], eax
call fcn.0052b0e0
mov edx, 0xc
mov dword [ebp - 0x34], esi
mov ecx, 0xd
mov esi, edx
jmp 0x4280ab
mov edi, dword [ebx]
mov esi, dword [ebx + 4]
add ebx, 0xc
mov ecx, dword [ebx - 4]
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x30], ecx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sub.msi.dll_MsiViewFetch
sub esp, 8
mov dword [ebp - 0x2c], eax
mov dword [esp + 4], 0x2025
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], 0x543d04
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], 1
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetInteger
sub esp, 8
mov dword [ebp - 0x2c], eax
mov dword [esp + 4], 0x2028
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
mov eax, dword [ebp - 0x2c]
mov dword [esp + 8], edi
mov dword [esp + 4], 0x543f84
cmp eax, edi
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], 2
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetInteger
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x202b
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
cmp esi, edi
mov dword [esp + 0xc], edi
sete al
mov dword [esp + 8], esi
mov dword [esp], eax
mov dword [esp + 4], 0x543f84
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], 3
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetInteger
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x202e
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
mov ecx, dword [ebp - 0x30]
xor eax, eax
mov dword [esp + 0xc], edi
mov dword [esp + 4], 0x543f84
cmp edi, ecx
mov dword [esp + 8], ecx
sete al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
sub esp, 4
cmp ebx, 0x54e168
jne 0x4280a0
lea eax, [ebp - 0x1c]
mov esi, dword [ebp - 0x34]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sub.msi.dll_MsiViewFetch
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x2034
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
cmp edi, 0x103
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], 0x543f9c
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
mov eax, dword [ebp - 0x38]
xor edx, edx
mov ecx, str.DELETE_FROM__T__WHERE__A__IS_NULL
sub esp, 4
call fcn.00427af0
mov dword [esp + 4], 0x203b
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov edi, eax
call fcn.0052ae70
xor eax, eax
test edi, edi
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x38]
mov ecx, str.INSERT_INTO__T_____B____C____VALUES___12__13___TEMPORARY
xor edx, edx
call fcn.00427af0
mov dword [esp + 4], 0x203f
mov dword [esp], str..._wine_dlls_msi_tests_db.c
mov edi, eax
call fcn.0052ae70
xor eax, eax
test edi, edi
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x20]
mov dword [esp + 4], str.SELECT__FROM__T_
mov dword [esp + 8], edx
mov dword [esp], eax
call sub.msi.dll_MsiDatabaseOpenViewA
sub esp, 0xc
mov edi, eax
mov dword [esp + 4], 0x2043
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
test edi, edi
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], 0x543d04
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.msi.dll_MsiViewExecute
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x2045
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
test edi, edi
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], 0x543d04
mov edi, 0x80000000
mov dword [esp], eax
call fcn.0052b0e0
mov edx, 0xc
mov dword [ebp - 0x34], ebx
mov ecx, 0xd
mov ebx, edx
jmp 0x42839b
mov edi, dword [esi]
mov ebx, dword [esi + 4]
add esi, 0xc
mov ecx, dword [esi - 4]
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x30], ecx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sub.msi.dll_MsiViewFetch
sub esp, 8
mov dword [ebp - 0x2c], eax
mov dword [esp + 4], 0x204a
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
mov eax, dword [ebp - 0x2c]
mov dword [esp + 4], 0x543d04
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], 1
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetInteger
sub esp, 8
mov dword [ebp - 0x2c], eax
mov dword [esp + 4], 0x204d
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
mov eax, dword [ebp - 0x2c]
mov dword [esp + 8], edi
mov dword [esp + 4], 0x543f84
cmp eax, edi
mov dword [esp + 0xc], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], 2
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetInteger
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x2050
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
cmp edi, ebx
mov dword [esp + 0xc], edi
sete al
mov dword [esp + 8], ebx
mov dword [esp], eax
mov dword [esp + 4], 0x543f84
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp + 4], 3
mov dword [esp], eax
call sub.msi.dll_MsiRecordGetInteger
sub esp, 8
mov edi, eax
mov dword [esp + 4], 0x2053
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
mov ecx, dword [ebp - 0x30]
xor eax, eax
mov dword [esp + 0xc], edi
mov dword [esp + 4], 0x543f84
cmp edi, ecx
mov dword [esp + 8], ecx
sete al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
sub esp, 4
cmp dword [ebp - 0x34], esi
jne 0x428390
lea eax, [ebp - 0x1c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sub.msi.dll_MsiViewFetch
sub esp, 8
mov ebx, eax
mov dword [esp + 4], 0x2059
mov dword [esp], str..._wine_dlls_msi_tests_db.c
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x103
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x543f9c
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call sub.msi.dll_MsiViewClose
mov eax, dword [ebp - 0x20]
sub esp, 4
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
mov eax, dword [ebp - 0x38]
sub esp, 4
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
sub esp, 4
mov dword [esp], 0x543a7e
call dword [sym.imp.kernel32.dll_DeleteFileA]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret