Function at 0x1800112f0
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
mov rbp, rsp
sub rsp, 0x80
xor ebx, ebx
call fcn.180011960
mov qword [0x18006e6f0], rax
mov rcx, rax
test rax, rax
jne 0x180011325
call fcn.180011c30
mov qword [0x18006e6f0], rax
mov rcx, rax
test rcx, rcx
jne 0x1800113e7
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], 0xf
mov ecx, 0x20
call fcn.18001f3e0
mov rcx, rax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x30], 0x1a
mov qword [rbp - 0x28], 0x1f
movups xmm0, xmmword [str.Failed_to_load_ADL_library]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x180064250]
movsd qword [rax + 0x10], xmm0
movzx eax, word [0x180064258]
mov word [rcx + 0x18], ax
mov byte [rcx + 0x1a], bl
mov rax, qword [0x18006e788]
test rax, rax
je 0x180011396
call rax
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x1800113d1
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800113cc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180011945
call fcn.18001f5d0
mov eax, 0x3f0
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rbp
ret
lea rdx, str.ADL_Main_Control_Create
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6a8], rax
lea rdx, str.ADL_Main_Control_Destroy
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e688], rax
lea rdx, str.ADL_Adapter_NumberOfAdapters_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e690], rax
lea rdx, str.ADL_Adapter_AdapterInfo_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e750], rax
lea rdx, str.ADL_Adapter_Active_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.ADL2_OverdriveN_CapabilitiesX2_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e700], rax
lea rdx, str.ADL2_OverdriveN_SystemClocksX2_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e768], rax
lea rdx, str.ADL2_OverdriveN_SystemClocksX2_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e780], rax
lea rdx, str.ADL2_OverdriveN_MemoryClocksX2_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e758], rax
lea rdx, str.ADL2_OverdriveN_MemoryClocksX2_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6d8], rax
lea rdx, str.ADL2_OverdriveN_PerformanceStatus_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e748], rax
lea rdx, str.ADL2_OverdriveN_FanControl_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.ADL2_OverdriveN_FanControl_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.ADL2_OverdriveN_PowerLimit_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6b8], rax
lea rdx, str.ADL2_OverdriveN_PowerLimit_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e698], rax
lea rdx, str.ADL2_OverdriveN_Temperature_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e680], rax
lea rdx, str.ADL2_Overdrive_Caps
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e740], rax
lea rdx, str.ADL2_OverdriveN_SettingsExt_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e720], rax
lea rdx, str.ADL2_OverdriveN_ZeroRPMFan_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.ADL2_Overdrive5_FanSpeedInfo_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.ADL2_Overdrive5_FanSpeed_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e760], rax
lea rdx, str.ADL2_Overdrive5_FanSpeed_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, str.ADL_Overdrive5_CurrentActivity_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6a0], rax
lea rdx, str.ADL2_Overdrive6_CurrentPower_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6c0], rax
lea rdx, str.ADL2_Overdrive8_Init_Setting_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e728], rax
lea rdx, str.ADL2_Overdrive8_Init_SettingX2_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e670], rax
lea rdx, str.ADL2_New_QueryPMLogData_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e710], rax
lea rdx, str.ADL2_Overdrive8_Setting_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e738], rax
lea rdx, str.ADL2_Overdrive8_Current_Setting_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e730], rax
lea rdx, str.ADL2_Overdrive8_Current_SettingX2_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6f8], rax
lea rdx, str.ADL2_Adapter_RegValueInt_Set
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6b0], rax
lea rdx, str.ADL2_Graphics_VersionsX3_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6e0], rax
lea rdx, str.ADL2_Device_PMLog_Device_Create
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6c8], rax
lea rdx, str.ADL2_Adapter_PMLog_Support_Get
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e678], rax
lea rdx, str.ADL2_Adapter_PMLog_Start
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e770], rax
lea rdx, str.ADL2_Adapter_PMLog_Stop
mov rcx, qword [0x18006e6f0]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x18006e6d0], rax
mov rax, qword [0x18006e6a8]
test rax, rax
jne 0x180011868
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], rbx
mov qword [rbp - 0x28], 0xf
lea ecx, [rax + 0x20]
call fcn.18001f3e0
mov rcx, rax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x30], 0x1f
mov qword [rbp - 0x28], 0x1f
movups xmm0, xmmword [str.ADL_Main_Control_Create__NULL]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x180064740]
movsd qword [rax + 0x10], xmm0
mov eax, dword [0x180064748]
mov dword [rcx + 0x18], eax
movzx eax, word [0x18006474c]
mov word [rcx + 0x1c], ax
movzx eax, byte [0x18006474e]
mov byte [rcx + 0x1e], al
mov byte [rcx + 0x1f], bl
mov rax, qword [0x18006e788]
test rax, rax
je 0x180011817
cmp dword [0x18006e790], 2
jl 0x180011817
call rax
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x180011852
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18001184d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001194b
call fcn.18001f5d0
mov eax, 0x3eb
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rbp
ret
mov edx, 1
lea rcx, [0x1800112e0]
call rax
mov ebx, eax
test eax, eax
je 0x18001192c
lea rax, str.Failed_to_initialize_nested_ADL2_context_
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 0x2b
mov dword [rbp - 0x58], ebx
movabs rax, 0x1000000000000000
mov qword [rbp - 0x60], rax
mov qword [rbp - 0x50], 1
lea rax, [rbp - 0x60]
mov qword [rbp - 0x48], rax
movaps xmm0, xmmword [rbp - 0x50]
movdqa xmmword [rbp - 0x50], xmm0
movaps xmm1, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm1
lea r8, [rbp - 0x50]
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x20]
call fcn.180007850
nop
mov rax, qword [0x18006e788]
test rax, rax
je 0x1800118f5
lea rcx, [rbp - 0x20]
cmp qword [rbp - 8], 0xf
cmova rcx, qword [rbp - 0x20]
call rax
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0xf
jbe 0x18001192c
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180011927
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18001193f
call fcn.18001f5d0
mov eax, ebx
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rbp
ret
call fcn.180026300
int3
call fcn.180026300
int3
call fcn.180026300
int3