Function at 0x1400a6e70
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
sub rsp, 0x130
mov qword [rsp + 0x20], 0xfffffffffffffffe
lea rdx, str.ADL_Main_Control_Create
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c38], rax
test rax, rax
je 0x1400a6ea6
xor eax, eax
jmp 0x1400a6eac
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a7208
lea rdx, str.ADL_Main_Control_Destroy
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c40], rax
test rax, rax
je 0x1400a6eef
xor eax, eax
jmp 0x1400a6ef5
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a722a
lea rdx, str.ADL_Adapter_NumberOfAdapters_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c48], rax
test rax, rax
je 0x1400a6f38
xor eax, eax
jmp 0x1400a6f3e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a724c
lea rdx, str.ADL_Adapter_AdapterInfo_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c58], rax
test rax, rax
je 0x1400a6f81
xor eax, eax
jmp 0x1400a6f87
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a726e
lea rdx, str.ADL2_Overdrive_Caps
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c60], rax
test rax, rax
je 0x1400a6fca
xor eax, eax
jmp 0x1400a6fd0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a7290
lea rdx, str.ADL2_OverdriveN_FanControl_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c68], rax
test rax, rax
je 0x1400a7013
xor eax, eax
jmp 0x1400a7019
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a72b8
lea rdx, str.ADL2_OverdriveN_Temperature_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c28], rax
test rax, rax
je 0x1400a705c
xor eax, eax
jmp 0x1400a7062
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a72e0
lea rdx, str.ADL2_OverdriveN_PerformanceStatus_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c50], rax
test rax, rax
je 0x1400a70a5
xor eax, eax
jmp 0x1400a70ab
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a7308
lea rdx, str.ADL2_Overdrive6_CurrentPower_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c30], rax
test rax, rax
je 0x1400a70ee
xor eax, eax
jmp 0x1400a70f4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a7331
lea rdx, str.ADL2_New_QueryPMLogData_Get
mov rcx, qword [0x14053c1c8]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140536c70], rax
test rax, rax
je 0x1400a7137
xor eax, eax
jmp 0x1400a713d
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, eax
lea rdx, [0x14042d0b5]
lea rcx, [0x14053c1c8]
call fcn.14019a5d0
cmp eax, 0xffffffff
je 0x1400a7359
mov edx, 1
lea rcx, [0x1400a6b60]
call qword [0x140536c38]
test eax, eax
jne 0x1400a71fd
mov dword [rsp + 0x140], eax
lea rcx, [rsp + 0x140]
call qword [0x140536c48]
test eax, eax
jne 0x1400a71fd
movsxd rax, dword [rsp + 0x140]
test eax, eax
je 0x1400a71fd
mov rdx, rax
call fcn.1400a73e0
mov rdx, qword [0x14053aaf0]
mov rcx, qword [0x14053aae8]
sub rdx, rcx
movabs rax, 0x14d843bedc2c4b9
imul rdx
sar rdx, 3
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rbx, rdx, 0x624
mov r8, rbx
xor edx, edx
call fcn.140362150
mov edx, ebx
mov rcx, qword [0x14053aae8]
call qword [0x140536c58]
test eax, eax
sete al
add rsp, 0x130
pop rbx
ret
xor al, al
add rsp, 0x130
pop rbx
ret
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0x28]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0x28]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0x40]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0x40]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0x58]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0x58]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0x70]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0x70]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0x88]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0x88]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0xa0]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0xa0]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0xb8]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0xb8]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0xd0]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0xd0]
call fcn.1403628d0
nop
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0xe8]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0xe8]
call fcn.1403628d0
lea rdx, str.symbol_not_found
lea rcx, [rsp + 0x100]
call fcn.1400043b0
lea rdx, [0x14051e4a8]
lea rcx, [rsp + 0x100]
call fcn.1403628d0
int3