Function at 0x18001d770
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x60
mov edi, edx
mov eax, edx
test edx, edx
je 0x18001d8bb
cmp eax, 1
je 0x18001d7a6
test edx, edx
je 0x18001d8e9
cmp eax, 1
je 0x18001d83b
jmp 0x18001d92c
call fcn.18001cbc0
mov rsi, rax
xor ecx, ecx
call fcn.18001cc30
mov rbx, rax
test rax, rax
je 0x18001d8a9
lea rdx, str.ReShadeRegisterAddon
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x18001d8a9
mov edx, 0xd
mov rcx, rsi
call rax
test al, al
je 0x18001d8a9
lea rdx, str.ReShadeGetImGuiFunctionTable
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x18001d8a9
mov ecx, 0x4a60
call rax
mov qword [0x180074810], rax
test rax, rax
je 0x18001d8a9
lea rax, [0x1800047b0]
mov qword [0x180074780], rax
mov byte [0x1800746bb], 1
mov dword [0x180074770], 0x32
cmp byte [0x180074754], 0
jne 0x18001d92c
mov byte [0x180074754], 1
lea rax, [0x1800745f0]
mov qword [0x1800747e8], rax
lea rax, [0x180017760]
mov qword [0x180074788], rax
lea rdx, str.renodx_preset1
xor ecx, ecx
call fcn.180011790
mov edx, dword [0x180074c20]
mov rax, qword gs:[0x58]
mov ecx, 0x2c
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x180074870], eax
jg 0x18001da2f
mov rax, qword [0x180074868]
jmp 0x18001d917
xor eax, eax
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x60
pop rdi
ret
call fcn.18001cbc0
mov rbx, rax
xor ecx, ecx
call fcn.18001cc30
test rax, rax
je 0x18001d8e9
lea rdx, str.ReShadeUnregisterAddon
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x18001d8e9
mov rcx, rbx
call rax
mov edx, dword [0x180074c20]
mov rax, qword gs:[0x58]
mov ecx, 0x2c
mov rax, qword [rax + rdx*8]
mov eax, dword [rcx + rax]
cmp dword [0x180074880], eax
jg 0x18001d9e7
mov rax, qword [0x180074878]
test rax, rax
je 0x18001d92c
lea rdx, [0x180017ef0]
lea rcx, str.RenoDX
call rax
lea rax, [rsp + 0x20]
mov qword [rsp + 0x88], rax
mov eax, dword [0x1800745b0]
mov dword [rsp + 0x20], eax
xor ebx, ebx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x30], rbx
mov ecx, 0x58
call fcn.18001dbcc
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rsp + 0x28], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rbx
mov rcx, qword [0x1800745e0]
mov qword [rsp + 0x50], rcx
mov rcx, qword [0x1800745e8]
mov qword [rsp + 0x58], rcx
mov rdx, qword [0x1800745d0]
sub rdx, qword [0x1800745c8]
sar rdx, 3
mov r8, rax
lea rcx, [rsp + 0x38]
call fcn.180019e00
mov r8, qword [0x1800745b8]
mov rdx, qword [r8]
lea rcx, [rsp + 0x20]
call fcn.180008280
nop
lea r8, [0x180074580]
lea rdx, [rsp + 0x20]
mov ecx, edi
call fcn.180004c60
mov eax, 1
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x60
pop rdi
ret
lea rcx, [0x180074880]
call fcn.18001e0a8
cmp dword [0x180074880], 0xffffffff
jne 0x18001d910
xor ecx, ecx
call fcn.18001cc30
mov rcx, rax
lea rdx, str.ReShadeUnregisterOverlay
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180074878], rax
lea rcx, [0x180074880]
call fcn.18001e03c
jmp 0x18001d910
lea rcx, [0x180074870]
call fcn.18001e0a8
cmp dword [0x180074870], 0xffffffff
jne 0x18001d8a0
xor ecx, ecx
call fcn.18001cc30
mov rcx, rax
lea rdx, str.ReShadeRegisterOverlay
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x180074868], rax
lea rcx, [0x180074870]
call fcn.18001e03c
mov rax, qword [0x180074868]
jmp 0x18001d917