Function at 0x140001210
Capabilities:
Extract resource via kernel32 functions
Link many functions at runtime

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0xa60
mov rax, qword [0x140022008]
xor rax, rsp
mov qword [rsp + 0xa50], rax
mov r14d, edx
mov qword [rsp + 0xa88], rbp
mov edx, 0xc
mov ebp, ecx
mov rcx, qword [0x140023e60]
lea r8d, [rdx - 2]
call qword [sym.imp.KERNEL32.dll_FindResourceW]
xor esi, esi
test rax, rax
je 0x1400012d6
mov rcx, qword [0x140023e60]
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x1400012d6
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
test rax, rax
je 0x1400012d6
mov ecx, dword [rax]
sub ecx, 1
je 0x1400012d6
sub ecx, 1
je 0x1400013e9
cmp ecx, 1
jne 0x1400012d6
mov ebx, esi
call fcn.140008e04
cmp dword [rax], ebx
jle 0x1400012d6
mov edi, esi
call fcn.140008e0c
lea rdx, str._unicode
mov rcx, qword [rax]
mov rcx, qword [rdi + rcx]
call fcn.140009f3c
test eax, eax
je 0x1400013e9
inc ebx
add rdi, 8
call fcn.140008e04
cmp ebx, dword [rax]
jl 0x1400012a7
mov edx, esi
cmp si, word [0x140023c50]
lea r15, [0x140023c50]
jne 0x140001356
test edx, edx
lea r8, [0x14001f420]
lea rcx, [0x14001f434]
mov rax, rcx
lea rdx, [0x14001f438]
cmovne rax, r8
test ebp, ebp
mov qword [rsp + 0x30], rax
lea rax, [0x14001f440]
cmovne rcx, rdx
xor r9d, r9d
mov qword [rsp + 0x28], rcx
lea rdx, str.dyalog_i_i_ls_ls_ls.dll
lea rcx, [rsp + 0x250]
mov qword [rsp + 0x20], rax
lea r8d, [r9 + 0x13]
call fcn.140001070
mov rcx, rsi
movzx eax, word [rsp + rcx + 0x250]
mov word [rcx + r15], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x140001340
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rbp, qword [rsp + 0xa88]
mov qword [0x140023e58], rax
test rax, rax
jne 0x14000142b
mov rcx, qword [0x140023e60]
lea rdx, [rsp + 0x40]
mov r8d, 0x103
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rcx, [rsp + 0x40]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
cmp word [rcx + rax*2 + 2], si
lea rax, [rax + 1]
jne 0x1400013a0
lea rdx, [rsp + 0x40]
lea rax, [rdx + rax*2]
mov rdx, rax
sub rdx, r15
add rdx, 2
nop
lea rcx, [rsp + 0x40]
cmp rax, rcx
jbe 0x140001424
movzx ecx, word [rax]
cmp cx, 0x2f
je 0x1400013f3
cmp cx, 0x3a
je 0x1400013f3
cmp cx, 0x5c
je 0x1400013f3
sub rax, 2
sub rdx, 2
jmp 0x1400013c0
mov edx, 1
jmp 0x1400012d8
mov rcx, r15
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rdx + rcx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x140001400
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140023e58], rax
jmp 0x14000142b
mov rax, qword [0x140023e58]
cmp rax, 0x20
jb 0x140001553
lea rdx, str.Dyalog_LoadWorkspace
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140023e58]
lea rdx, str.Dyalog_RunLX
test rax, rax
mov qword [0x140023eb0], rax
mov ebx, esi
setne bl
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140023e58]
lea rdx, str.Dyalog_Initialize
test rax, rax
mov qword [0x140023e98], rax
mov edi, esi
setne dil
and edi, ebx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140023e58]
lea rdx, str.Dyalog_Load
test rax, rax
mov qword [0x140023e90], rax
mov ebx, esi
cmovne ebx, edi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140023e58]
lea rdx, str.Dyalog_RegisterActiveXControls
test rax, rax
mov qword [0x140023eb8], rax
mov edi, esi
setne dil
and edi, ebx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140023e58]
lea rdx, str.Dyalog_DllCanUnloadNow
test rax, rax
mov qword [0x140023e88], rax
mov ebx, esi
cmovne ebx, edi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140023e58]
lea rdx, str.Dyalog_DllGetClassObject
test rax, rax
mov qword [0x140023ea0], rax
mov edi, esi
setne dil
and edi, ebx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ebx, esi
mov edx, r14d
test rax, rax
mov qword [0x140023ea8], rax
cmovne ebx, edi
call fcn.1400010d0
test ebx, eax
jne 0x1400015c0
mov rcx, qword [0x140023e58]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x140023e58], rsi
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9, r15
lea r8, str.APL_Runtime_Engine
lea rcx, [rsp + 0x250]
cmp eax, 0x7e
jne 0x14000157e
lea rdx, str.The__s___s__could_not_be_found.
call fcn.140001070
jmp 0x14000158e
lea rdx, str.Could_not_load_the__s.___s:_Error__i__n_r
mov dword [rsp + 0x20], eax
call fcn.140001070
test byte [0x140023c40], 2
je 0x1400015a6
lea rcx, [rsp + 0x250]
call fcn.140001010
jmp 0x1400015c0
xor r9d, r9d
lea r8, str.Error
lea rdx, [rsp + 0x250]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp qword [0x140023e58], 0x20
setae sil
mov eax, esi
mov rcx, qword [rsp + 0xa50]
xor rcx, rsp
call fcn.1400017e0
lea r11, [rsp + 0xa60]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rdi
ret