Function at 0x62a82b10
Capabilities:
Query or enumerate registry value
Set registry value

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
mov esi, eax
push ebx
sub esp, 0x15c
test byte [0x62a8e028], 8
jne 0x62a82d30
lea eax, [ebp - 0x124]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov eax, dword [sym.imp.advapi32.dll_RegCreateKeyExA]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0xf003f
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.SoftwareODBCODBCINST.INI
mov dword [esp], 0x80000002
mov dword [ebp - 0x12c], eax
call eax
sub esp, 0x24
test eax, eax
je 0x62a82c10
movzx edx, byte [0x62a8e028]
test dl, 8
jne 0x62a82ba8
and edx, 4
jne 0x62a82bdc
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_opening_HKLMSOODBCINST.INI_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
movzx edx, byte [0x62a8e028]
and edx, 4
je 0x62a82b9d
mov dword [esp + 0xc], str.May_not_have_replicated_all_ODBC_drivers_to_the_registry_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 2
call sym._wine_dbg_log
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [ebp - 0x120]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x124]
mov dword [esp + 0x18], 0
mov dword [esp], eax
mov eax, dword [ebp - 0x12c]
mov dword [esp + 0x14], 0xf003f
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.ODBC_Drivers
call eax
mov dword [ebp - 0x130], eax
sub esp, 0x24
test eax, eax
jne 0x62a82d60
mov eax, 2
mov edi, 1
lea ebx, [ebp - 0x118]
jmp 0x62a82c95
mov eax, 1
lea ecx, [ebp - 0x126]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], 0x100
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], esi
call sym.odbc32.dll_SQLDrivers
sub esp, 0x20
cmp ax, 1
ja 0x62a82f40
mov dword [esp], ebx
call dword [sym.imp.ucrtbase.dll_strlen]
movsx edx, word [ebp - 0x126]
cmp edx, eax
je 0x62a82dc8
xor edi, edi
test byte [0x62a8e028], 4
je 0x62a82c90
mov dword [esp + 0x10], ebx
mov dword [esp + 0xc], str.Unusually_long_driver_name__s_not_replicated_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 2
call sym._wine_dbg_log
jmp 0x62a82c90
mov dword [esp + 0xc], str.Driver_settings_are_not_currently_replicated_to_the_registry_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82b2b
test byte [0x62a8e028], 8
jne 0x62a83030
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
sub esp, 4
test eax, eax
je 0x62a82bd0
movzx edx, byte [0x62a8e028]
test dl, 8
je 0x62a82b98
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_closing_HKLMSOODBCINST.INI_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82bd0
mov eax, dword [ebp - 0x120]
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegQueryValueExA]
sub esp, 0x18
cmp eax, 2
je 0x62a82fb8
test eax, eax
je 0x62a82e1a
test byte [0x62a8e028], 8
jne 0x62a82eb0
xor edi, edi
lea eax, [ebp - 0x11c]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x124]
mov dword [esp + 0x18], 0
mov dword [esp], eax
mov eax, dword [ebp - 0x12c]
mov dword [esp + 0x14], 0xf003f
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
call eax
sub esp, 0x24
test eax, eax
je 0x62a82ee8
xor edi, edi
test byte [0x62a8e028], 8
je 0x62a82c90
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_ensuring_driver_key__s_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82c90
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_checking_for__s_in_drivers_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82e18
mov eax, dword [ebp - 0x11c]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
sub esp, 4
test eax, eax
je 0x62a82c90
test byte [0x62a8e028], 8
je 0x62a82c90
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_closing__s_key_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82c90
cmp ax, 0x64
je 0x62a83020
test byte [0x62a8e028], 8
jne 0x62a83068
mov eax, dword [ebp - 0x120]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
sub esp, 4
test eax, eax
je 0x62a82f7a
test byte [0x62a8e028], 8
jne 0x62a830c3
mov eax, dword [ebp - 0x124]
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegCloseKey]
sub esp, 4
test eax, eax
je 0x62a82f9d
test byte [0x62a8e028], 8
jne 0x62a83096
mov eax, dword [ebp - 0x130]
test eax, eax
je 0x62a82bd0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp - 0x120]
mov dword [esp + 0x14], 0xa
mov dword [esp + 0x10], str.Installed
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov dword [esp], eax
call dword [sym.imp.advapi32.dll_RegSetValueExA]
sub esp, 0x18
test eax, eax
je 0x62a82e1a
test byte [0x62a8e028], 8
je 0x62a82e18
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_replicating_driver__s_n
jmp 0x62a82ec0
mov dword [ebp - 0x130], edi
jmp 0x62a82f57
mov eax, dword [ebp - 0x130]
mov dword [esp + 0xc], str.Error__ld_opening_HKLMSOOIDrivers_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 0x10], eax
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82d6d
cwde
mov dword [esp + 0xc], str.Error__d_enumerating_drivers_n
mov dword [esp + 0x10], eax
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82f57
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_closing_HKLMSOODBCINST.INI_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82f9d
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], str.Error__ld_closing_hDrivers_n
mov dword [esp + 8], str.ODBC_ReplicateODBCInstToRegistry
mov dword [esp + 4], 0x62a8e028
mov dword [esp], 3
call sym._wine_dbg_log
jmp 0x62a82f7a