Function at 0x10015710
Capabilities:
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xec
mov edi, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov edx, dword [edi + 4]
cmp dword [eax + 4], edx
je 0x10015740
mov esi, 1
lea esp, [ebp - 0xc]
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret 0xc
lea ebx, [eax + 4]
mov eax, dword [edi + 8]
cmp dword [ebx + 4], eax
jne 0x1001572a
mov eax, dword [edi + 0xc]
cmp dword [ebx + 8], eax
jne 0x1001572a
mov eax, dword [edi + 0x10]
cmp dword [ebx + 0xc], eax
jne 0x1001572a
lea eax, [ebp - 0xd8]
lea ebx, [ebp - 0xd4]
xor esi, esi
mov dword [esp + 8], 0
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 4], str.CommandLine
mov eax, dword [edi]
mov dword [ebp - 0xd8], 0xc8
mov eax, dword [eax + 0x24]
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 0x100158f5
test byte [0x1001a08c], 2
jne 0x10015958
lea eax, [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.CurrentDirectory
mov eax, dword [edi]
mov dword [ebp - 0xd8], 0xc8
mov eax, dword [eax + 0x24]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call eax
sub esp, 0x18
test eax, eax
je 0x10015940
test byte [0x1001a08c], 2
jne 0x100159b8
lea eax, [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.File
mov eax, dword [edi]
mov dword [ebp - 0xd8], 0xc8
mov eax, dword [eax + 0x24]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call eax
sub esp, 0x18
test eax, eax
je 0x10015928
test byte [0x1001a08c], 2
jne 0x10015988
lea eax, [ebp - 0xd8]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
lea eax, [ebp - 0xdc]
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0
mov dword [esp + 4], str.Path
mov eax, dword [edi]
mov dword [ebp - 0xd8], 0xc8
mov eax, dword [eax + 0x24]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call eax
sub esp, 0x18
test eax, eax
je 0x10015910
test byte [0x1001a08c], 2
je 0x1001572f
mov dword [esp + 0xc], str.:_missing_Path_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001a08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x1001572f
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x1c], eax
jmp 0x100157c2
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x14], eax
jmp 0x1001572f
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x18], eax
jmp 0x10015876
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll__strdup]
mov dword [edi + 0x20], eax
jmp 0x1001581c
mov dword [esp + 0xc], str.:_missing_CommandLine_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001a08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x100157c2
mov dword [esp + 0xc], str.:_missing_File_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001a08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x10015876
mov dword [esp + 0xc], str.:_missing_CurrentDirectory_registry_data_member_n
mov dword [esp + 8], str.RunApplicationA_EnumLocalApplications
mov dword [esp + 4], 0x1001a08c
mov dword [esp], 1
call sym._wine_dbg_log.constprop.0_6
jmp 0x1001581c