Function at 0x100151d0
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xec
mov ecx, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
xor eax, dword [edi + 4]
mov ecx, dword [ecx + 8]
xor ecx, dword [edi + 8]
or eax, ecx
je 0x10015210
mov ebx, 1
lea esp, [ebp - 0xc]
mov eax, ebx
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
xor eax, dword [edi + 0xc]
xor ecx, dword [edi + 0x10]
or eax, ecx
jne 0x100151f5
lea eax, [ebp - 0xd8]
lea esi, [ebp - 0xd4]
xor ebx, ebx
mov dword [ebp - 0xd8], 0xc8
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.CommandLine
mov eax, dword [edi]
mov eax, dword [eax + 0x4c]
mov dword [esp], eax
mov eax, dword [sym.imp.advapi32.dll_RegQueryValueExA]
mov dword [ebp - 0xe0], eax
call eax
sub esp, 0x18
test eax, eax
je 0x100153c0
test byte [0x1001c08c], 2
jne 0x10015480
mov dword [ebp - 0xd8], 0xc8
lea eax, [ebp - 0xd8]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.CurrentDirectory
mov eax, dword [edi]
mov eax, dword [eax + 0x4c]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call eax
sub esp, 0x18
test eax, eax
je 0x10015408
test byte [0x1001c08c], 2
jne 0x10015450
mov dword [ebp - 0xd8], 0xc8
lea eax, [ebp - 0xd8]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.File
mov eax, dword [edi]
mov eax, dword [eax + 0x4c]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call eax
sub esp, 0x18
test eax, eax
je 0x100153f0
test byte [0x1001c08c], 2
jne 0x10015420
mov dword [ebp - 0xd8], 0xc8
lea eax, [ebp - 0xd8]
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.Path
mov eax, dword [edi]
mov eax, dword [eax + 0x4c]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call eax
sub esp, 0x18
test eax, eax
je 0x100153d8
test byte [0x1001c08c], 2
je 0x100151fa
mov dword [esp + 0xc], str.:_missing_Path_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001c08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x100151fa
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x1c], eax
jmp 0x10015287
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x14], eax
jmp 0x100151fa
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x18], eax
jmp 0x1001533b
mov dword [esp], esi
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x20], eax
jmp 0x100152e1
mov dword [esp + 0xc], str.:_missing_File_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001c08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x1001533b
mov dword [esp + 0xc], str.:_missing_CurrentDirectory_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001c08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x100152e1
mov dword [esp + 0xc], str.:_missing_CommandLine_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001c08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x10015287