Function at 0x41853d
Capabilities:
Delete registry value
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov eax, dword [0x4b1040]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp + 0x14]
push esi
mov esi, dword [ebp + 8]
push edi
push dword [ebx + 8]
mov dword [ebp - 0x20], eax
lea edi, [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x1c], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
call fcn.004196cb
push eax
push dword [ebp + 0x18]
push dword [ebx + 0x4c]
push 0x20000172
push 3
call fcn.00409885
add esp, 0x14
test byte [ebp + 0x18], 1
je 0x4185d9
push esi
push dword [ebx + 0x14]
push dword [ebx + 0x44]
push dword [ebx]
push dword [ebp - 0x28]
call fcn.0041d7ea
mov esi, eax
test esi, esi
jns 0x4185d9
push dword [ebp - 0x2c]
push str.Failed_to_cache_bundle_from_path:__ls
push esi
push 0x100
push 5
push 0x275
push str.d:_awixwix_src_burnengine_registration.cpp
call fcn.004012a1
add esp, 0x1c
jmp 0x418e29
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x18]
push eax
xor eax, eax
push eax
push eax
push eax
push 0x20006
push dword [ebx + 0x4c]
push dword [ebx + 0x48]
call fcn.004674cf
mov esi, eax
test esi, esi
jns 0x418613
push str.Failed_to_create_registration_key.
push esi
push 0x100
push 5
push 0x27a
jmp 0x418e1c
push dword [ebx + 0x50]
mov edi, str.BundleCachePath
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x41863f
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x27e
jmp 0x4185c7
push dword [ebx + 0x28]
mov edi, str.BundleUpgradeCode
push dword [ebx + 0x24]
push edi
push dword [ebp - 0x18]
call fcn.004687c5
mov esi, eax
test esi, esi
jns 0x418671
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x281
jmp 0x4185c7
push dword [ebx + 0x30]
mov edi, str.BundleAddonCode
push dword [ebx + 0x2c]
push edi
push dword [ebp - 0x18]
call fcn.004687c5
mov esi, eax
test esi, esi
jns 0x4186a3
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x284
jmp 0x4185c7
push dword [ebx + 0x20]
mov edi, str.BundleDetectCode
push dword [ebx + 0x1c]
push edi
push dword [ebp - 0x18]
call fcn.004687c5
mov esi, eax
test esi, esi
jns 0x4186d5
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x287
jmp 0x4185c7
push dword [ebx + 0x38]
mov edi, str.BundlePatchCode
push dword [ebx + 0x34]
push edi
push dword [ebp - 0x18]
call fcn.004687c5
mov esi, eax
test esi, esi
jns 0x418707
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x28a
jmp 0x4185c7
mov eax, dword [ebx + 0x3c]
mov edi, str.BundleVersion
push dword [eax]
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418738
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x28d
jmp 0x4185c7
mov eax, dword [ebx + 0x3c]
mov edi, str.VersionMajor
push dword [eax + 8]
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x41876a
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x290
jmp 0x4185c7
mov eax, dword [ebx + 0x3c]
mov edi, str.VersionMinor
push dword [eax + 0xc]
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x41879c
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x293
jmp 0x4185c7
cmp dword [ebx + 0x40], 0
je 0x4187d1
push dword [ebx + 0x40]
mov edi, str.BundleProviderKey
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x4187d1
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x298
jmp 0x4185c7
cmp dword [ebx + 0x18], 0
je 0x418806
push dword [ebx + 0x18]
mov edi, str.BundleTag
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418806
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x29e
jmp 0x4185c7
push str.5.0.0.0
push 0x480ec8
mov edi, str.EngineVersion
push edi
push dword [ebp - 0x18]
call fcn.0046896a
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x41883f
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2a2
jmp 0x4185c7
push 1
mov edi, str.EngineProtocolVersion
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x41886d
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2a5
jmp 0x4185c7
push dword [ebx + 0x50]
mov edi, str.DisplayIcon
push str._s_0
push edi
push dword [ebp - 0x18]
call fcn.0046896a
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x4188a4
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2a9
jmp 0x4185c7
mov edi, dword [ebp - 0x20]
xor eax, eax
cmp dword [ebp + 0x24], 1
sete al
push eax
push dword [ebp - 0x18]
push edi
push ebx
call fcn.00416df2
mov esi, eax
test esi, esi
jns 0x4188d8
push str.Failed_to_update_name_and_publisher.
push esi
push 0x100
push 5
push 0x2ad
jmp 0x418e1c
cmp dword [ebx + 0x64], 0
je 0x418910
push dword [ebx + 0x64]
push str.DisplayVersion
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418910
push str.DisplayVersion
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2b3
jmp 0x4185c7
lea eax, [ebp - 0x1c]
push eax
push edi
push ebx
call fcn.00416511
test eax, eax
mov eax, dword [ebp - 0x1c]
jns 0x418925
mov eax, dword [ebx + 0x68]
push eax
mov edi, str.Publisher
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418952
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2b9
jmp 0x4185c7
cmp dword [ebx + 0x6c], 0
je 0x418987
push dword [ebx + 0x6c]
mov edi, str.HelpLink
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418987
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2bf
jmp 0x4185c7
cmp dword [ebx + 0x70], 0
je 0x4189bc
push dword [ebx + 0x70]
mov edi, str.HelpTelephone
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x4189bc
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2c6
jmp 0x4185c7
cmp dword [ebx + 0x74], 0
je 0x4189f1
push dword [ebx + 0x74]
mov edi, str.URLInfoAbout
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x4189f1
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2cd
jmp 0x4185c7
cmp dword [ebx + 0x78], 0
je 0x418a26
push dword [ebx + 0x78]
mov edi, str.URLUpdateInfo
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418a26
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2d4
jmp 0x4185c7
cmp dword [ebx + 0x7c], 0
je 0x418a8a
push dword [ebx + 0x7c]
mov edi, str.ParentDisplayName
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418a5b
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2db
jmp 0x4185c7
push dword [ebx + 0x7c]
mov edi, str.ParentKeyName
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418a8a
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2df
jmp 0x4185c7
mov eax, dword [ebx + 0x80]
test eax, eax
je 0x418ac1
push eax
mov edi, str.Comments
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418ac1
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2e6
jmp 0x4185c7
mov eax, dword [ebx + 0x84]
test eax, eax
je 0x418af8
push eax
mov edi, str.Contact
push edi
push dword [ebp - 0x18]
call fcn.004687ae
mov esi, eax
test esi, esi
jns 0x418af8
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2ed
jmp 0x4185c7
mov eax, dword [ebx + 0x88]
cmp eax, 1
jne 0x418b34
push eax
mov edi, str.NoModify
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x418b9e
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2f7
jmp 0x4185c7
cmp eax, 2
je 0x418b9e
push dword [ebx + 0x50]
mov edi, str.ModifyPath
push str.__ls___modify
push edi
push dword [ebp - 0x18]
call fcn.0046896a
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x418b70
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x2fd
jmp 0x4185c7
push 1
mov edi, str.NoElevateOnModify
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x418b9e
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x301
jmp 0x4185c7
cmp dword [ebx + 0x8c], 0
je 0x418bd5
push 1
mov edi, str.NoRemove
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x418bd5
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x308
jmp 0x4185c7
cmp dword [ebx + 4], 0
jne 0x418c40
test byte [ebp + 0x18], 4
jne 0x418c40
mov edi, str.SystemComponent
push edi
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov esi, eax
cmp esi, 2
je 0x418bfc
cmp esi, 3
jne 0x418bfe
xor esi, esi
test esi, esi
je 0x418c6e
jle 0x418c0f
movzx esi, si
or esi, 0x80070000
test esi, esi
js 0x418c16
mov esi, 0x80004005
push esi
push 0x318
mov ebx, str.d:_awixwix_src_burnengine_registration.cpp
push ebx
call fcn.0040129e
push edi
push str.Failed_to_delete__ls_value.
push esi
push 0x100
push 5
push 0x318
push ebx
jmp 0x4185cc
push 1
mov edi, str.SystemComponent
push edi
push dword [ebp - 0x18]
call fcn.00468739
mov esi, eax
test esi, esi
jns 0x418c6e
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x30f
jmp 0x4185c7
push dword [ebx + 0x50]
mov edi, 0x480594
push str.__ls___uninstall__quiet
push edi
push dword [ebp - 0x18]
call fcn.0046896a
mov esi, eax
add esp, 0x10
test esi, esi
jns 0x418ca5
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x31d
jmp 0x4185c7
cmp dword [ebx + 0x88], 2
mov eax, str._modify
je 0x418cb8
mov eax, str.__uninstall
push eax
push dword [ebx + 0x50]
mov edi, 0x4805c0
push str.__ls___ls
push edi
push dword [ebp - 0x18]
call fcn.0046896a
mov esi, eax
add esp, 0x14
test esi, esi
jns 0x418cf0
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x324
jmp 0x4185c7
cmp dword [ebx + 0x94], 0
mov edi, dword [ebp - 0x20]
je 0x418d26
lea eax, [ebx + 0x90]
push eax
push edi
call fcn.004171bb
mov esi, eax
test esi, esi
jns 0x418d26
push str.Failed_to_write_software_tags.
push esi
push 0x100
push 5
push 0x329
jmp 0x418e1c
cmp dword [ebx + 0x98], 0
je 0x418d53
push edi
push ebx
call fcn.0041733a
mov esi, eax
test esi, esi
jns 0x418d53
push str.Failed_to_write_update_registration.
push esi
push 0x100
push 5
push 0x330
jmp 0x418e1c
cmp dword [ebp - 0x24], 0
je 0x418dce
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
movzx eax, word [ebp - 0xe]
mov edi, str.InstallDate
push eax
movzx eax, word [ebp - 0x12]
push eax
movzx eax, word [ebp - 0x14]
push eax
push str._04u_02u_02u
push edi
push dword [ebp - 0x18]
call fcn.0046896a
mov esi, eax
add esp, 0x18
test esi, esi
jns 0x418da6
push edi
push str.Failed_to_write__ls_value.
push esi
push 0x100
push 5
push 0x33b
jmp 0x4185c7
push dword [ebp + 0x20]
push dword [ebp + 0x1c]
push dword [ebp - 0x18]
call fcn.00416ebb
mov esi, eax
test esi, esi
jns 0x418dce
push str.Failed_to_update_estimated_size.
push esi
push 0x100
push 5
push 0x33f
jmp 0x418e1c
test byte [ebp + 0x18], 2
je 0x418df4
push ebx
call fcn.004209b5
mov esi, eax
test esi, esi
jns 0x418df4
push str.Failed_to_register_the_bundle_dependency_key.
push esi
push 0x100
push 5
push 0x346
jmp 0x418e1c
push 0
push dword [ebp + 0x24]
push 1
push dword [ebp - 0x18]
push ebx
call fcn.00416f25
mov esi, eax
test esi, esi
jns 0x418e29
push str.Failed_to_update_resume_mode.
push esi
push 0x100
push 5
push 0x34b
push str.d:_awixwix_src_burnengine_registration.cpp
call fcn.004012a1
add esp, 0x18
cmp dword [ebp - 0x1c], 0
je 0x418e37
push dword [ebp - 0x1c]
call fcn.00404128
cmp dword [ebp - 0x18], 0
je 0x418e46
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00451586
leave
ret 0x20