Function at 0x1400f1450
Capabilities:
Check if file exists
Link many functions at runtime

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x690
mov qword [rax - 0x620], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
mov rax, qword [0x1402a98a8]
xor rax, rsp
mov qword [rsp + 0x680], rax
mov r14, rdx
mov qword [rsp + 0x78], rdx
mov r15, rcx
mov qword [rsp + 0x80], rcx
mov qword [rsp + 0x68], rdx
xor r12d, r12d
mov dword [rsp + 0x38], r12d
mov rcx, rdx
call qword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov rsi, rax
mov qword [rsp + 0x40], rax
mov edi, r12d
mov rdx, qword [r15 + 0x50]
mov rcx, qword [r15 + 0x58]
sub rcx, rdx
sar rcx, 6
test rcx, rcx
je 0x1400f151c
mov ebx, r12d
nop dword [rax]
nop word [rax + rax]
add rdx, 0x20
add rdx, rbx
cmp qword [rdx + 0x18], 8
jb 0x1400f14f1
mov rdx, qword [rdx]
mov rcx, rsi
call fcn.1401b43bc
test eax, eax
je 0x1400f1594
inc rdi
add rbx, 0x40
mov rdx, qword [r15 + 0x50]
mov rax, qword [r15 + 0x58]
sub rax, rdx
sar rax, 6
cmp rdi, rax
jb 0x1400f14e0
call fcn.14000c990
mov r13, rax
mov ecx, 0x90
call fcn.140181288
mov rbx, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400f159b
mov qword [rax], r12
mov qword [rax + 8], r12
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], r12
mov qword [rax + 0x20], r12
mov qword [rax + 0x28], r12
mov qword [rax + 0x30], r12
mov qword [rax + 0x38], r12
mov qword [rax + 0x40], r12
mov dword [rax + 0x48], r12d
mov qword [rax + 0x60], r12
mov qword [rax + 0x68], 7
mov word [rax + 0x50], r12w
mov qword [rax + 0x80], r12
mov qword [rax + 0x88], 7
mov word [rax + 0x70], r12w
mov qword [rsp + 0x30], rax
mov rdi, rax
jmp 0x1400f15a6
xor eax, eax
jmp 0x1400f1c88
mov rbx, r12
mov qword [rsp + 0x30], rbx
mov rdi, r12
lea rcx, [rdi + 0x50]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rsi + r8*2], 0
jne 0x1400f15b1
mov rdx, rsi
call fcn.140006d70
mov rcx, r14
call fcn.1400f1170
mov ecx, 0x8664
cmp ax, cx
jne 0x1400f1cb7
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rcx, rax
lea rdx, str.AddDllDirectory
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
neg rax
sbb r8d, r8d
and r8d, 0x1100
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov qword [rbx], rax
test rax, rax
jne 0x1400f163b
xor edx, edx
lea rcx, [rsp + 0x110]
call fcn.140027880
nop
cmp qword [rsp + 0x120], 0
jne 0x1400f1d08
jmp 0x1400f1ce0
lea rdx, str.isUnicode
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x38], rax
test rax, rax
je 0x1400f1f1a
call rax
test eax, eax
je 0x1400f1f1a
lea rdx, str.setInfo
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x10], rax
test rax, rax
je 0x1400f1d3a
lea rdx, str.getName
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x18], rax
test rax, rax
je 0x1400f1d62
call rax
lea rcx, [rdi + 0x70]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1400f16b0
mov rdx, rax
call fcn.140006d70
lea rdx, str.beNotified
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x20], rax
test rax, rax
je 0x1400f1d8a
lea rdx, str.messageProc
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x30], rax
test rax, rax
je 0x1400f1db2
movups xmm0, xmmword [r15]
movaps xmmword [rsp + 0xd0], xmm0
movsd xmm1, qword [r15 + 0x10]
movsd qword [rsp + 0xe0], xmm1
lea rcx, [rsp + 0xd0]
call qword [rbx + InitCommonControls]
lea rdx, str.getFuncsArray
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x28], rax
test rax, rax
je 0x1400f1dda
lea rcx, [rdi + 0x48]
call rax
mov qword [rbx + 0x40], rax
test rax, rax
je 0x1400f1ef2
cmp dword [rbx + 0x48], 0
jle 0x1400f1ef2
call qword [sym.imp.USER32.dll_CreateMenu]
mov qword [rbx + 8], rax
lea rdx, str.GetLexerCount
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x1400f1c43
lea rdx, str.GetLexerName
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
mov qword [rsp + 0x48], rax
test rax, rax
je 0x1400f1e02
lea rdx, str.GetLexerStatusText
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400f1e2a
mov byte [rsp + 0x420], 0
mov word [rsp + 0x430], r12w
call rdi
mov r12d, eax
call fcn.14000ca20
mov qword [rsp + 0x60], rax
xor edi, edi
mov dword [rsp + 0x50], edi
nop dword [rax + rax]
cmp edi, r12d
jge 0x1400f18d6
mov r8d, InitCommonControls
lea rdx, [rsp + 0x420]
mov ecx, edi
call rsi
mov r8d, 0x20
lea rdx, [rsp + 0x430]
mov ecx, edi
call r14
xor eax, eax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
lea r9d, [rax - 1]
xor r8d, r8d
lea rdx, [rsp + 0x420]
mov rcx, qword [rsp + 0x60]
call fcn.140028080
mov r14, rax
mov rdx, rax
mov rcx, r13
call fcn.1400e7660
test al, al
jne 0x1400f18b7
cmp dword [r13 + 0xfc0], 0x1e
jge 0x1400f18b7
mov ecx, 0x60
call fcn.140181288
mov rsi, rax
mov qword [rsp + 0x88], rax
test rax, rax
je 0x1400f18a3
mov r8d, InitCommonControls
mov rdx, r14
mov rcx, rax
call fcn.1401b4554
lea rcx, [rsi + 0x20]
mov r8d, 0x20
lea rdx, [rsp + 0x430]
call fcn.1401b4554
jmp 0x1400f18a5
xor esi, esi
movsxd rax, edi
mov qword [rsp + rax*8 + 0x330], rsi
mov rsi, qword [rsp + 0x48]
jmp 0x1400f18c6
movsxd rax, edi
mov qword [rsp + rax*8 + 0x330], 0
inc edi
mov dword [rsp + 0x50], edi
mov r14, qword [rsp + 0x58]
jmp 0x1400f17f0
mov qword [rsp + 0x100], 0
mov qword [rsp + 0x108], 0
lea rdi, [r13 + 0x33138]
mov r14, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 8
jb 0x1400f1903
mov rdi, qword [rdi]
cmp r14, 8
jae 0x1400f191b
movups xmm0, xmmword [rdi]
movups xmmword [rsp + 0xf0], xmm0
mov esi, 7
jmp 0x1400f199a
movabs rax, 0x7fffffffffffffff
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x58], 8
movabs rcx, 0x7ffffffffffffffe
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], rcx
mov rsi, r14
or rsi, 7
mov qword [rsp + 0x90], rsi
cmp rsi, rcx
cmova rsi, rcx
lea rdx, [rsi + 1]
lea rcx, [rsp + 0xf0]
call fcn.1400069a0
mov qword [rsp + 0xf0], rax
lea r8, [r14*2 + 2]
mov rdx, rdi
mov rcx, rax
call fcn.14019f8d0
mov qword [rsp + 0x100], r14
mov qword [rsp + 0x108], rsi
mov dword [rsp + 0x38], 1
lea r8, [rsp + 0xf0]
cmp rsi, 8
cmovae r8, qword [rsp + 0xf0]
mov edx, 0x104
lea rcx, [rsp + 0x470]
call fcn.1401a83c0
mov eax, 1
and eax, 0xfffffffe
mov dword [rsp + 0x38], eax
mov rdx, qword [rsp + 0x108]
cmp rdx, 8
jb 0x1400f1a37
lea rdx, [rdx*2 + 2]
mov qword [rsp + 0x70], rdx
mov rcx, qword [rsp + 0xf0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400f1a32
add rdx, 0x27
mov qword [rsp + 0x70], rdx
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400f1e52
call fcn.1401812c4
xor r14d, r14d
mov qword [rsp + 0x100], r14
mov qword [rsp + 0x108], 7
mov word [rsp + 0xf0], r14w
lea rdx, str.pluginsConfig
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
lea rdi, [rbx + 0x50]
mov rdx, rdi
cmp qword [rdi + 0x18], 8
jb 0x1400f1a7d
mov rdx, qword [rdi]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathRemoveExtensionW]
lea rdx, [0x1401e63a8]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathAddExtensionW]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x1400f1b6b
mov r8d, 0x104
lea rdx, [0x140229228]
lea rcx, [rsp + 0x470]
call qword [sym.imp.KERNEL32.dll_lstrcpynW]
lea r8, [r13 + 0x33198]
cmp qword [r8 + 0x18], 8
jb 0x1400f1af0
mov r8, qword [r8]
mov edx, 0x104
lea rcx, [rsp + 0x470]
call fcn.1401a83c0
lea rdx, str.pluginsConfig
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
cmp qword [rdi + 0x18], 8
jb 0x1400f1b21
mov rdi, qword [rdi]
mov rdx, rdi
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathRemoveExtensionW]
lea rdx, [0x1401e63a8]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathAddExtensionW]
lea rcx, [rsp + 0x470]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1400f1e57
mov ecx, 0xa0
call fcn.140181288
mov qword [rsp + 0x90], rax
test rax, rax
je 0x1400f1b97
lea rdx, [rsp + 0x470]
mov rcx, rax
call fcn.14012f580
mov rsi, rax
jmp 0x1400f1b9a
mov rsi, r14
mov qword [rsp + 0x48], rsi
mov rcx, rsi
call fcn.140130c40
test al, al
je 0x1400f1e99
mov edi, r14d
mov dword [rsp + 0x54], r14d
cmp edi, r12d
jge 0x1400f1bdc
movsxd rax, edi
mov rdx, qword [rsp + rax*8 + 0x330]
test rdx, rdx
je 0x1400f1bd4
mov rcx, r13
call fcn.1400d4820
inc edi
mov dword [rsp + 0x54], edi
jmp 0x1400f1bb7
mov rdx, rsi
mov rcx, r13
call fcn.1400e06d0
lea rcx, [r13 + 0x78]
mov rdx, qword [rcx + 8]
cmp qword [rcx + 0x10], rdx
je 0x1400f1bff
mov qword [rdx], rsi
add qword [rcx + 8], 8
jmp 0x1400f1c09
lea r8, [rsp + 0x48]
call fcn.14001c1e0
mov qword [rsp + 0x20], r14
mov r9d, 0xffffffff
xor r8d, r8d
mov r14, qword [rsp + 0x78]
mov rdx, r14
mov rcx, qword [rsp + 0x60]
call fcn.14002c0e0
mov r9, rax
xor r8d, r8d
mov edx, 0xfa7
mov rcx, qword [r15 + 8]
call qword [sym.imp.USER32.dll_SendMessageW]
mov rsi, qword [rsp + 0x40]
mov r8, rsi
mov rdx, r14
mov rcx, r15
call fcn.1400f0520
mov rdx, qword [r15 + 0x28]
cmp qword [r15 + 0x30], rdx
je 0x1400f1c65
mov qword [rdx], rbx
add qword [r15 + 0x28], 8
jmp 0x1400f1c73
lea r8, [rsp + 0x30]
lea rcx, [r15 + 0x20]
call fcn.14001c1e0
mov rax, qword [r15 + 0x28]
sub rax, qword [r15 + 0x20]
sar rax, 3
dec eax
jmp 0x1400f1c88
mov rcx, qword [rsp + 0x680]
xor rcx, rsp
call fcn.1401813e0
lea r11, [rsp + 0x690]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov rdx, qword [str.Cannot_load_32_bit_plugin.]
lea rcx, [rsp + 0x130]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x130]
call fcn.14019f1ec
nop
lea rdx, str.Load_Library_has_failed._nChanging_the_projects__Runtime_Library__setting_to__Multi_threaded__MT___might_solve_this_problem.
lea rcx, [rsp + 0x150]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x150]
call fcn.14019f1ec
lea rcx, [rsp + 0x110]
call fcn.1400b65e0
mov rdx, rax
lea rcx, [rsp + 0x170]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x170]
call fcn.14019f1ec
nop
lea rdx, str.Missing__setInfo__function
lea rcx, [rsp + 0x190]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x190]
call fcn.14019f1ec
lea rdx, str.Missing__getName__function
lea rcx, [rsp + 0x1b0]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x1b0]
call fcn.14019f1ec
lea rdx, str.Missing__beNotified__function
lea rcx, [rsp + 0x1d0]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x1d0]
call fcn.14019f1ec
lea rdx, str.Missing__messageProc__function
lea rcx, [rsp + 0x1f0]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x1f0]
call fcn.14019f1ec
lea rdx, str.Missing__getFuncsArray__function
lea rcx, [rsp + 0x210]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x210]
call fcn.14019f1ec
lea rdx, str.Loading_GetLexerName_function_failed.
lea rcx, [rsp + 0x230]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x230]
call fcn.14019f1ec
lea rdx, str.Loading_GetLexerStatusText_function_failed.
lea rcx, [rsp + 0x250]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x250]
call fcn.14019f1ec
call fcn.1401a2d8c
lea rdx, [rsp + 0x470]
lea rcx, [rsp + 0x2f0]
call fcn.140002ff0
nop
lea r8, str._is_missing.
mov rdx, rax
lea rcx, [rsp + 0x270]
call fcn.140001c30
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x270]
call fcn.14019f1ec
nop
test rsi, rsi
je 0x1400f1eab
mov rax, qword [rsi]
mov edx, 1
mov rcx, rsi
call qword [rax]
mov qword [rsp + 0x48], r14
lea rdx, [rsp + 0x470]
lea rcx, [rsp + 0x310]
call fcn.140002ff0
nop
lea r8, str._failed_to_load.
mov rdx, rax
lea rcx, [rsp + 0x290]
call fcn.140001c30
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x290]
call fcn.14019f1ec
nop
lea rdx, str.Missing__FuncItems__array__or_the_nb_of_Function_Item_is_not_set_correctly
lea rcx, [rsp + 0x2b0]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x2b0]
call fcn.14019f1ec
lea rdx, str.This_ANSI_plugin_is_not_compatible_with_your_Unicode_Notepad.
lea rcx, [rsp + 0x2d0]
call fcn.140002ff0
lea rdx, [0x14029f5e0]
lea rcx, [rsp + 0x2d0]
call fcn.14019f1ec
int3