Function at 0x43ec21
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x50e5e8
mov eax, dword fs:[0]
push eax
sub esp, 0x18
push ebx
push esi
push edi
mov eax, dword [0x5ff740]
xor eax, esp
push eax
lea eax, [esp + 0x28]
mov dword fs:[0], eax
mov esi, ecx
call fcn.0040a7b7
call fcn.004bf17c
fld qword [0x5d1230]
mov eax, dword [eax + 0xc]
push ecx
push ecx
fstp qword [esp]
push 0x18e
push dword [esi + 0x20]
lea ecx, [esi + 0x34c]
mov edx, eax
call fcn.0040c1ff
push 1
push 0xfb
push 0x191
xor edi, edi
push edi
push edi
mov ecx, esi
call fcn.004bf3f0
push edi
mov ecx, esi
call fcn.004c1eef
push str.HKEY_LOCAL_MACHINE
push edi
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, 0x143
push ebx
push dword [esi + 0x310]
call edi
push str.HKEY_CURRENT_USER
push 0
push ebx
push dword [esi + 0x310]
call edi
push str.HKEY_CLASSES_ROOT
push 0
push ebx
push dword [esi + 0x310]
call edi
push str.HKEY_USERS
push 0
push ebx
push dword [esi + 0x310]
call edi
push 0
push 0
push 0x14e
push dword [esi + 0x310]
call edi
lea ecx, [esi + 0x29c]
call fcn.004bf499
call fcn.0043eee9
mov ebx, 0x5afd90
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x24], esp
mov edi, str.RESOURCESTRING
push edi
call fcn.0040253b
and dword [esp + 0x38], 0
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
push 0x5bce38
call fcn.0040253b
or dword [esp + 0x3c], 0xffffffff
lea eax, [esp + 0x20]
push eax
call fcn.00406ef3
mov dword [esp + 0x30], 1
push dword [eax]
lea ecx, [esi + 0x360]
call fcn.004bf38e
or dword [esp + 0x30], 0xffffffff
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.0040285b
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push edi
call fcn.0040253b
push ecx
mov dword [esp + 0x3c], 2
mov ecx, esp
mov dword [esp + 0x28], esp
push str.IDS_ST_SPECIFY_ENTRY
call fcn.0040253b
or dword [esp + 0x3c], 0xffffffff
lea eax, [esp + 0x20]
push eax
call fcn.00406ef3
mov dword [esp + 0x30], 3
push dword [eax]
lea ecx, [esi + 0x3b4]
call fcn.004bf38e
or dword [esp + 0x30], 0xffffffff
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.0040285b
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push edi
call fcn.0040253b
push ecx
mov dword [esp + 0x3c], 4
mov ecx, esp
mov dword [esp + 0x28], esp
push str.IDS_ST_EXAMPLE
call fcn.0040253b
or dword [esp + 0x3c], 0xffffffff
lea eax, [esp + 0x20]
push eax
call fcn.00406ef3
mov dword [esp + 0x30], 5
push dword [eax]
lea ecx, [esi + 0x408]
call fcn.004bf38e
or dword [esp + 0x30], 0xffffffff
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.0040285b
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push edi
call fcn.0040253b
push ecx
mov dword [esp + 0x3c], 6
mov ecx, esp
mov dword [esp + 0x28], esp
push str.IDS_BTN_OK
call fcn.0040253b
or dword [esp + 0x3c], 0xffffffff
lea eax, [esp + 0x20]
push eax
call fcn.00406ef3
mov dword [esp + 0x30], 7
push dword [eax]
lea ecx, [esi + 0x45c]
call fcn.004bf38e
or dword [esp + 0x30], 0xffffffff
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.0040285b
push ebx
push ecx
mov ecx, esp
mov dword [esp + 0x28], esp
push edi
call fcn.0040253b
push ecx
mov dword [esp + 0x3c], 8
mov ecx, esp
mov dword [esp + 0x28], esp
push str.IDS_BTN_CANCEL
call fcn.0040253b
or dword [esp + 0x3c], 0xffffffff
lea eax, [esp + 0x24]
push eax
call fcn.00406ef3
mov dword [esp + 0x30], 9
push dword [eax]
lea ecx, [esi + 0x4b0]
call fcn.004bf38e
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.0040285b
xor eax, eax
mov ecx, dword [esp + 0x28]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret