Function at 0x49f180
Capabilities:
Contain obfuscated stackstrings
Set registry value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
lea esi, [ebp - 0x734]
lea edx, [ebp - 0x630]
push ebx
mov eax, esi
sub esp, 0xa9c
call fcn.0047cb90
lea edx, [ebp - 0x93c]
lea eax, [ebp - 0xa40]
call fcn.0047cb90
lea eax, [ebp - 0x220]
mov dword [esp + 8], esi
mov dword [esp + 0x14], 0x104
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [sym.imp.kernel32.dll_MultiByteToWideChar]
sub esp, 0x18
cmp dword [0x58b784], 1
mov dword [esp + 0xc], 0
sbb edi, edi
mov dword [esp + 8], 0
and edi, 0xffffff00
mov dword [esp + 4], 0
add edi, 0xf013f
mov dword [esp], 0
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x327c
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x57
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.expected_ERROR_INVALID_PARAMETER__got__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x327f
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x57
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.expected_ERROR_INVALID_PARAMETER__got__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x560396
mov dword [esp], esi
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x3282
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x645
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], 0x561364
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa44]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0
mov dword [esp], esi
mov dword [ebp - 0xa44], 0
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x3286
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x57
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.expected_ERROR_INVALID_PARAMETER__got__u_n
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa44]
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x55fb90
mov dword [esp], esi
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x3289
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp ebx, 0x648
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PROPERTY__got__u_n
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x93c]
mov dword [ebp - 0x52c], 0x74666f53
mov dword [esp + 4], eax
lea eax, [ebp - 0x508]
mov dword [esp], eax
mov dword [ebp - 0x528], 0x65726177
mov dword [ebp - 0x524], 0x616c435c
mov dword [ebp - 0x520], 0x73657373
mov dword [ebp - 0x51c], 0x736e495c
mov dword [ebp - 0x518], 0x6c6c6174
mov dword [ebp - 0x514], 0x505c7265
mov dword [ebp - 0x510], 0x75646f72
mov dword [ebp - 0x50c], 0x5c737463
call sub.msvcrt.dll_strcpy
lea eax, [ebp - 0xa68]
lea edx, [ebp - 0x52c]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], edx
mov dword [esp], 0x80000002
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
cmp eax, 5
je 0x4a0730
mov dword [esp + 4], 0x3294
mov ebx, eax
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
lea ebx, [ebp - 0x838]
mov dword [esp], eax
call fcn.0052b0e0
mov eax, 0x65
mov dword [esp + 8], ebx
mov word [ebp - 0x834], ax
lea eax, [ebp - 0xa44]
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x560396
mov dword [esp], esi
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa6c], eax
mov dword [esp + 4], 0x329a
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x329b
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [sym.imp.kernel32.dll_lstrcmpA]
mov dword [esp + 4], 0x5607ac
mov dword [esp], ebx
mov dword [ebp - 0xa6c], eax
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged__got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x329c
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa60]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xa68]
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.Patches
mov dword [esp], eax
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov dword [ebp - 0xa70], eax
mov dword [esp + 4], 0x329f
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa70]
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea ecx, [ebp - 0xa44]
mov dword [esp], esi
mov edx, 0x65
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x560396
mov word [ebp - 0x834], dx
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa70], eax
mov dword [esp + 4], 0x32a5
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa70]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32a6
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged_got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32a7
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa64]
lea ecx, [ebp - 0x630]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xa60]
mov dword [esp + 4], ecx
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp], eax
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov dword [ebp - 0xa70], eax
mov dword [esp + 4], 0x32aa
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa70]
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov ecx, 0x65
mov dword [esp + 8], ebx
mov word [ebp - 0x834], cx
lea ecx, [ebp - 0xa44]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], 0x560396
mov dword [esp], esi
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa70], eax
mov dword [esp + 4], 0x32b0
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa70]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32b1
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged_got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32b2
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0x93c]
mov dword [ebp - 0x4fc], 0x72656c
mov dword [esp + 4], eax
lea eax, [ebp - 0x4dd]
mov dword [esp], eax
mov dword [ebp - 0x52c], 0x74666f53
mov dword [ebp - 0x528], 0x65726177
mov dword [ebp - 0x524], 0x63694d5c
mov dword [ebp - 0x520], 0x6f736f72
mov dword [ebp - 0x51c], 0x575c7466
mov dword [ebp - 0x518], 0x6f646e69
mov dword [ebp - 0x514], 0x435c7377
mov dword [ebp - 0x510], 0x65727275
mov dword [ebp - 0x50c], 0x6556746e
mov dword [ebp - 0x508], 0x6f697372
mov dword [ebp - 0x504], 0x6e495c6e
mov dword [ebp - 0x500], 0x6c617473
mov dword [ebp - 0x4f9], 0x6573555c
mov dword [ebp - 0x4f5], 0x74614472
mov dword [ebp - 0x4f1], 0x2d535c61
mov dword [ebp - 0x4ed], 0x2d352d31
mov dword [ebp - 0x4e9], 0x505c3831
mov dword [ebp - 0x4e5], 0x75646f72
mov dword [ebp - 0x4e1], 0x5c737463
call sub.msvcrt.dll_strcpy
lea eax, [ebp - 0xa58]
lea edx, [ebp - 0x52c]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edi
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], edx
mov dword [esp], 0x80000002
call sub.advapi32.dll_RegCreateKeyExA
mov ecx, edi
and ecx, 0x100
sub esp, 0x24
mov dword [ebp - 0xa70], ecx
cmp eax, 5
je 0x4a0760
mov dword [esp + 4], 0x32be
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
mov dword [ebp - 0xa74], eax
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], 0x561478
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, 0x65
mov dword [esp], esi
mov word [ebp - 0x834], ax
lea eax, [ebp - 0xa44]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x560396
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32c4
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32c5
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged_got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32c6
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa5c]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xa58]
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x56071f
mov dword [esp], eax
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32c9
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea ecx, [ebp - 0xa44]
mov dword [esp], esi
mov edx, 0x65
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x560396
mov word [ebp - 0x834], dx
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32cf
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32d0
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged__got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32d1
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa50]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xa58]
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.Patches
mov dword [esp], eax
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32d4
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov ecx, 0x65
mov dword [esp], esi
mov word [ebp - 0x834], cx
lea ecx, [ebp - 0xa44]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x560396
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32da
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32db
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged_got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32dc
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa4c]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xa58]
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.Patches
mov dword [esp], eax
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32df
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], 0x5600bc
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea eax, [ebp - 0xa48]
lea ecx, [ebp - 0x630]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0xa4c]
mov dword [esp + 4], ecx
mov dword [esp + 0x20], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp], eax
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32e2
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], 0x5600bc
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea ecx, [ebp - 0xa44]
mov dword [esp], esi
mov eax, 0x65
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x560396
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
mov word [ebp - 0x834], ax
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov dword [ebp - 0xa74], eax
mov dword [esp + 4], 0x32e8
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa74]
mov dword [esp + 4], str.expected_ERROR_UNKNOWN_PRODUCT_got__u_n
cmp eax, 0x645
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32e9
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov eax, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call eax
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected_val_to_be_unchanged_got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32ea
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_size_to_be_unchanged_got__u_n
cmp eax, 0x104
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
lea ecx, [ebp - 0x630]
lea eax, [ebp - 0x4de]
mov dword [ebp - 0x4fc], 0x72656c
mov dword [esp + 4], ecx
mov dword [esp], eax
mov dword [ebp - 0x52c], 0x74666f53
mov dword [ebp - 0x528], 0x65726177
mov dword [ebp - 0x524], 0x63694d5c
mov dword [ebp - 0x520], 0x6f736f72
mov dword [ebp - 0x51c], 0x575c7466
mov dword [ebp - 0x518], 0x6f646e69
mov dword [ebp - 0x514], 0x435c7377
mov dword [ebp - 0x510], 0x65727275
mov dword [ebp - 0x50c], 0x6556746e
mov dword [ebp - 0x508], 0x6f697372
mov dword [ebp - 0x504], 0x6e495c6e
mov dword [ebp - 0x500], 0x6c617473
mov dword [ebp - 0x4f9], 0x6573555c
mov dword [ebp - 0x4f5], 0x74614472
mov dword [ebp - 0x4f1], 0x2d535c61
mov dword [ebp - 0x4ed], 0x2d352d31
mov dword [ebp - 0x4e9], 0x505c3831
mov dword [ebp - 0x4e5], 0x68637461
mov dword [ebp - 0x4e1], 0x5c7365
call sub.msvcrt.dll_strcpy
lea edx, [ebp - 0x52c]
lea eax, [ebp - 0xa54]
mov dword [esp + 0x14], edi
mov dword [esp + 4], edx
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp], 0x80000002
call sub.advapi32.dll_RegCreateKeyExA
sub esp, 0x24
mov edi, eax
mov dword [esp + 4], 0x32f1
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
test edi, edi
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
mov dword [esp], eax
call fcn.0052b0e0
mov eax, dword [ebp - 0xa54]
mov dword [esp + 0x14], 0xc
mov dword [esp + 0x10], str.c:_test.msp
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], 0x560396
mov dword [esp], eax
call sub.advapi32.dll_RegSetValueExA
sub esp, 0x18
mov edi, eax
mov dword [esp + 4], 0x32f4
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
test edi, edi
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__d_n
mov dword [esp], eax
call fcn.0052b0e0
lea ecx, [ebp - 0xa44]
mov dword [esp], esi
mov eax, 0x65
mov dword [esp + 0xc], ecx
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x560396
mov dword [ebp - 0xa44], 0
mov dword [ebp - 0x838], 0x6c707061
mov word [ebp - 0x834], ax
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov edi, eax
mov dword [esp + 4], 0x32fa
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp edi, 0xea
mov dword [esp + 8], edi
sete al
mov dword [esp + 4], str.expected_ERROR_MORE_DATA_got__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32fb
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov edi, dword [ebp - 0xa6c]
mov dword [esp + 4], 0x5607ac
call edi
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
movzx eax, al
mov dword [esp + 4], str.expected__apple___got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x32fc
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_11_got__u_n
cmp eax, 0xb
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov eax, 0x65
mov dword [esp], esi
mov word [ebp - 0x834], ax
lea eax, [ebp - 0xa44]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x560396
mov dword [ebp - 0xa44], 0x104
mov dword [ebp - 0x838], 0x6c707061
call sub.msi.dll_MsiGetPatchInfoA
sub esp, 0x10
mov esi, eax
mov dword [esp + 4], 0x3301
mov dword [esp], str..._wine_dlls_msi_tests_msi.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__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x3302
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], ebx
mov dword [esp + 4], str.c:_test.msp
call edi
sub esp, 8
test eax, eax
sete al
mov dword [esp + 8], ebx
lea ebx, [ebp - 0x428]
movzx eax, al
mov dword [esp + 4], str.expected__c:_test.msp___got___s__n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x3303
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_11_got__u_n
cmp eax, 0xb
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
xor eax, eax
mov dword [esp + 8], ebx
mov word [ebp - 0x428], ax
lea eax, [ebp - 0xa44]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x220]
mov dword [esp + 4], 0x566c90
mov dword [esp], eax
mov dword [ebp - 0xa44], 0
call sub.msi.dll_MsiGetPatchInfoW
sub esp, 0x10
mov esi, eax
mov dword [esp + 4], 0x3308
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
cmp esi, 0xea
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.expected_ERROR_MORE_DATA_got__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x3309
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
movzx edx, word [ebp - 0x428]
mov dword [esp + 4], str.expected_0_got__u_n
test dx, dx
mov dword [esp + 8], edx
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x330a
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_11_got__u_n
cmp eax, 0xb
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
xor eax, eax
mov dword [esp + 8], ebx
mov word [ebp - 0x428], ax
lea eax, [ebp - 0xa44]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x220]
mov dword [esp + 4], 0x566c90
mov dword [esp], eax
mov dword [ebp - 0xa44], 0x104
call sub.msi.dll_MsiGetPatchInfoW
sub esp, 0x10
mov ebx, eax
mov dword [esp + 4], 0x330f
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
xor eax, eax
test ebx, ebx
mov dword [esp + 8], ebx
sete al
mov dword [esp + 4], str.expected_ERROR_SUCCESS_got__u_n
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x3310
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
movzx eax, word [ebp - 0x428]
mov dword [esp + 4], str.expected___0_got__u_n
mov dword [esp + 8], eax
mov dword [esp], eax
call fcn.0052b0e0
mov dword [esp + 4], 0x3311
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov eax, dword [ebp - 0xa44]
mov dword [esp + 4], str.expected_11_got__u_n
cmp eax, 0xb
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0052b0e0
mov esi, dword [ebp - 0xa70]
mov eax, dword [ebp - 0xa48]
mov edx, 0x55fb90
mov ecx, esi
call fcn.00476540
mov eax, dword [ebp - 0xa48]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa4c]
mov ecx, esi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa4c]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa54]
mov ecx, esi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa54]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa50]
mov ecx, esi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa50]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa5c]
mov ecx, esi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa5c]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa58]
mov ecx, esi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa58]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
sub esp, 4
mov edi, dword [ebp - 0xa70]
mov eax, dword [ebp - 0xa60]
mov edx, 0x55fb90
mov ecx, edi
call fcn.00476540
mov eax, dword [ebp - 0xa60]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa68]
mov ecx, edi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa68]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
mov eax, dword [ebp - 0xa64]
mov ecx, edi
mov edx, 0x55fb90
sub esp, 4
call fcn.00476540
mov eax, dword [ebp - 0xa64]
mov dword [esp], eax
call sub.advapi32.dll_RegCloseKey
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], 0x3291
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], 0x55fb58
call fcn.0052b1d0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 4], 0x32bb
mov dword [esp], str..._wine_dlls_msi_tests_msi.c
call fcn.0052ae70
mov dword [esp], 0x55fb58
call fcn.0052b1d0
jmp 0x4a06b6