Function at 0x4d9220
Capabilities:
Delete file
Set environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x13c
call fcn.004d3630
lea edx, [ebp - 0x120]
call fcn.004d3c40
cmp eax, 0x659
je 0x4d9c20
mov dword [esp + 4], 0xa71
mov ebx, eax
mov edi, 0x568c1f
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.failed_to_create_package__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0x120]
mov dword [esp + 8], 0x56810c
mov dword [esp + 4], str.Manufacturer
mov dword [esp], eax
call sub.msi.dll_MsiSetPropertyA
sub esp, 0xc
mov ebx, eax
mov dword [esp + 4], 0xa74
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 4], str.set_property_failed_n
sete al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], 2
call sub.msi.dll_MsiCreateRecord
sub esp, 4
mov ebx, eax
mov dword [esp + 4], 0xa77
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov dword [esp], ebx
mov dword [esp + 4], str.create_record_failed_n
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], str._ProgramFilesFolder__Manufacturer__asdf
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa7a
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 4], str.format_record_failed_n
sete al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov byte [ebp - 0x118], 0
mov dword [esp], eax
mov dword [ebp - 0x11c], 0x100
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov esi, eax
mov dword [esp + 4], 0xa7f
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], str._foo__1_
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa82
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], 0x568c1f
mov dword [esp + 4], 1
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa84
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
lea esi, [ebp - 0x118]
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x11c], 0x100
mov dword [esp], eax
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov dword [ebp - 0x12c], eax
mov dword [esp + 4], 0xa87
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor edx, edx
cmp dword [ebp - 0x11c], 3
mov dword [esp + 4], str.size_wrong_n
sete dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xa88
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov ecx, 4
lea eax, [ebp - 0x118]
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 8], eax
mov edi, 0x568c55
mov dword [esp + 4], str.wrong_output__s_n
seta dl
sbb dl, 0
test dl, dl
sete dl
movzx edx, dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xa89
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov eax, dword [ebp - 0x12c]
mov dword [esp + 4], str.format_failed_n
test eax, eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], str.x__x
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa8c
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
lea esi, [ebp - 0x118]
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x11c], 0x100
mov dword [esp], eax
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov dword [ebp - 0x12c], eax
mov dword [esp + 4], 0xa8f
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor edx, edx
cmp dword [ebp - 0x11c], 3
mov dword [esp + 4], str.size_wrong_n
sete dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xa90
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov ecx, 2
lea eax, [ebp - 0x118]
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 8], eax
mov edi, 0x568c1f
mov dword [esp + 4], str.wrong_output__s_n
seta dl
sbb dl, 0
test dl, dl
sete dl
movzx edx, dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xa91
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov eax, dword [ebp - 0x12c]
mov dword [esp + 4], str.format_failed_n
test eax, eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], str._foo.____1_
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa94
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], 0x568c1f
mov dword [esp + 4], 1
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa96
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
lea esi, [ebp - 0x118]
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x11c], 0x100
mov dword [esp], eax
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov dword [ebp - 0x12c], eax
mov dword [esp + 4], 0xa99
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor edx, edx
cmp dword [ebp - 0x11c], 3
mov dword [esp + 4], str.size_wrong_n
sete dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xa9a
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov ecx, 4
lea eax, [ebp - 0x118]
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 8], eax
mov edi, 0x568c69
mov dword [esp + 4], str.wrong_output__s_n
seta dl
sbb dl, 0
test dl, dl
sete dl
movzx edx, dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xa9b
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov eax, dword [ebp - 0x12c]
mov dword [esp + 4], str.format_failed_n
test eax, eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], 0x568c64
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xa9e
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
lea esi, [ebp - 0x118]
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x11c], 0x100
mov dword [esp], eax
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov dword [ebp - 0x12c], eax
mov dword [esp + 4], 0xaa1
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor edx, edx
cmp dword [ebp - 0x11c], 1
mov dword [esp + 4], str.size_wrong_n
sete dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xaa2
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov ecx, 2
lea eax, [ebp - 0x118]
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 8], eax
mov edi, 0x568c6b
mov dword [esp + 4], str.wrong_output__s_n
seta dl
sbb dl, 0
test dl, dl
sete dl
movzx edx, dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xaa3
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov eax, dword [ebp - 0x12c]
mov dword [esp + 4], str.format_failed_n
test eax, eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x568c6b
mov dword [esp], 0x568c6f
call dword [sym.imp.kernel32.dll_SetEnvironmentVariableA]
sub esp, 8
mov dword [esp], ebx
mov dword [esp + 8], str.__FOO_
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xaa7
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
lea esi, [ebp - 0x118]
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x11c], 0x100
mov dword [esp], eax
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov dword [ebp - 0x12c], eax
mov dword [esp + 4], 0xaaa
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor edx, edx
cmp dword [ebp - 0x11c], 3
mov dword [esp + 4], str.size_wrong_n
sete dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xaab
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov ecx, 4
lea eax, [ebp - 0x118]
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 8], eax
mov edi, 0x568c6b
mov dword [esp + 4], str.wrong_output__s_n
seta dl
sbb dl, 0
test dl, dl
sete dl
movzx edx, dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xaac
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov eax, dword [ebp - 0x12c]
mov dword [esp + 4], str.format_failed_n
test eax, eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], str.__1__
mov dword [esp + 4], 0
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xaaf
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
mov dword [esp + 8], str._FOO
mov dword [esp + 4], 1
call sub.msi.dll_MsiRecordSetStringA
sub esp, 0xc
mov esi, eax
mov dword [esp + 4], 0xab1
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.Expected_ERROR_SUCCESS_got__d_n
lea esi, [ebp - 0x118]
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x11c]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x118]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x11c], 0x100
mov dword [esp], eax
call sub.msi.dll_MsiFormatRecordA
sub esp, 0x10
mov dword [ebp - 0x12c], eax
mov dword [esp + 4], 0xab4
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
xor edx, edx
cmp dword [ebp - 0x11c], 3
mov dword [esp + 4], str.size_wrong_n
sete dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xab5
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov ecx, 4
lea eax, [ebp - 0x118]
repe cmpsb byte [esi], byte es:[edi]
mov dword [esp + 8], eax
mov dword [esp + 4], str.wrong_output__s_n
seta dl
sbb dl, 0
test dl, dl
sete dl
movzx edx, dl
mov dword [esp], edx
call fcn.0052b0e0
mov dword [esp + 4], 0xab6
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov eax, dword [ebp - 0x12c]
mov dword [esp + 4], str.format_failed_n
test eax, eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp], ebx
call sub.msi.dll_MsiCloseHandle
mov eax, dword [ebp - 0x120]
sub esp, 4
mov dword [esp], eax
call sub.msi.dll_MsiCloseHandle
sub esp, 4
mov dword [esp], str.winetest_package.msi
call dword [sym.imp.kernel32.dll_DeleteFileA]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], 0xa6d
mov dword [esp], str..._wine_dlls_msi_tests_package.c
call fcn.0052ae70
mov dword [esp], str.Not_enough_rights_to_perform_tests_n
call fcn.0052b1d0
mov dword [esp], str.winetest_package.msi
call dword [sym.imp.kernel32.dll_DeleteFileA]
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret