Function at 0x14004d1b0
Capabilities:
Check if file exists
Get file attributes
Set current directory

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x400]
sub rsp, 0x500
xor esi, esi
mov dword [rsp + 0x70], 0x90020
mov word [rsp + 0x74], si
mov r9d, SafeArrayAllocDescriptor
mov r15, rdx
mov rdi, rcx
mov r8, rdx
lea r12, [r9 - 0x21]
test rdx, rdx
je 0x14004d230
movzx edx, word [rdx]
test dx, dx
je 0x14004d230
nop dword [rax]
lea rcx, [rsp + 0x70]
movzx eax, r9w
nop dword [rax]
cmp dx, ax
je 0x14004d25e
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14004d210
movzx edx, word [r8 + 2]
add r8, 2
test dx, dx
jne 0x14004d200
mov rax, r12
cmp word [r15 + rax*2 + 2], si
lea rax, [rax + 1]
jne 0x14004d233
lea r8, [r15 + rax*2]
mov r14, rsi
mov rbx, r8
sub rbx, r15
sar rbx, 1
cmp rbx, r9
jb 0x14004d27e
mov eax, 4
jmp 0x14004eca1
mov r14, r8
movzx eax, word [r14]
cmp ax, r9w
je 0x14004d271
cmp ax, 9
jne 0x14004d277
add r14, 2
jmp 0x14004d261
test ax, ax
jne 0x14004d246
jmp 0x14004d243
mov qword [rsp + 0x540], r13
cmp word [r8], si
je 0x14004d2a6
mov r8, rbx
lea rcx, [rbp - 0x40]
mov rdx, r15
call fcn.1400d3a74
mov word [rbp + rbx*2 - 0x40], si
lea rbx, [rbp - 0x40]
jmp 0x14004d2a9
mov rbx, r15
lea rdx, str.Include
mov rcx, rbx
xor r13b, r13b
call fcn.1400c4f3c
mov dword [rbp + 0x448], 3
test eax, eax
je 0x14004e7c7
lea rdx, str.IncludeAgain
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
sete r13b
test eax, eax
je 0x14004e7c7
lea rdx, str.DllLoad
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004d65f
test r14, r14
jne 0x14004d371
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
test eax, eax
jne 0x14004ec50
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004d456
test al, al
je 0x14004d456
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004d443
cmp dword [rdi + 0x718], esi
jne 0x14004d443
cmp byte [0x140126ada], sil
jne 0x14004d443
lea r9, [0x140100be0]
lea rdx, str.An_internal_function_call_failed.
jmp 0x14004e324
movzx eax, word [r14]
cmp ax, 0x22
je 0x14004d381
cmp ax, 0x27
jne 0x14004d3a6
lea rbx, [r14 + 2]
xor edx, edx
mov rcx, rbx
call fcn.1400bffc4
mov rcx, rax
movzx eax, word [r14]
cmp word [rcx - 2], ax
jne 0x14004d3a6
mov word [rcx - 2], si
mov r14, rbx
movzx eax, word [rbx]
cmp ax, 0x2a
jne 0x14004d3ec
movzx edx, word [r14 + 2]
mov r9d, 0xffdf
movzx ecx, dx
and cx, r9w
lea eax, [rdx - 0x61]
cmp ax, 0x19
cmova cx, dx
cmp cx, 0x49
jne 0x14004d3ec
movzx eax, word [r14 + 4]
add r14, 4
mov bl, 1
cmp ax, 0x20
je 0x14004d3e6
cmp ax, 9
jne 0x14004d3ee
add r14, 2
jmp 0x14004d3ee
xor bl, bl
mov r8, r14
lea rdx, [rbp + 0x458]
mov rcx, rdi
call fcn.140062950
test eax, eax
je 0x14004ec23
mov r14, qword [rbp + 0x458]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14004d4ca
test al, 0x10
je 0x14004d4ca
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_SetDllDirectoryW]
mov rcx, r14
mov ebx, eax
call fcn.1400c50b8
test ebx, ebx
jmp 0x14004d310
lea r8, [0x140100be0]
lea rdx, str.An_internal_function_call_failed.
jmp 0x14004e983
cmp byte [0x14012ce0f], sil
je 0x14004d4a0
test al, al
jne 0x14004d4a0
test rcx, rcx
je 0x14004d472
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004d47f
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
lea r8, [0x140100be0]
mov dword [rsp + 0x20], eax
lea rdx, str.An_internal_function_call_failed.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, str.An_internal_function_call_failed.
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rbp + 0x450], rax
test rax, rax
je 0x14004d504
lea r8, [rbp + 0x450]
mov rdx, r14
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
mov rax, qword [rbp + 0x450]
test rax, rax
jne 0x14004d64c
test bl, bl
jne 0x14004d64c
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004d5c5
test al, al
je 0x14004d5c5
mov rax, qword [0x1401241d8]
lea rbx, [0x140100be0]
test r14, r14
cmovne rbx, r14
cmp dword [rax + 0x60], esi
jne 0x14004d58e
cmp dword [rdi + 0x718], esi
jne 0x14004d58e
cmp byte [0x140126ada], sil
jne 0x14004d58e
mov qword [rsp + 0x28], rsi
lea rdx, [0x140106ec0]
mov qword [rsp + 0x20], rcx
mov r9, rbx
mov rcx, rdi
xor r8d, r8d
call fcn.140010370
mov rcx, r14
mov dword [rbp + 0x448], eax
call fcn.1400c50b8
mov eax, dword [rbp + 0x448]
jmp 0x14004ec99
mov r9, rcx
mov qword [rsp + 0x28], rsi
mov rcx, rdi
mov dword [rsp + 0x20], esi
mov r8, rbx
lea rdx, [0x140106ec0]
call fcn.14000efc0
mov rcx, r14
mov dword [rbp + 0x448], eax
call fcn.1400c50b8
mov eax, dword [rbp + 0x448]
jmp 0x14004ec99
test r14, r14
lea rbx, [0x140100be0]
cmovne rbx, r14
cmp byte [0x14012ce0f], sil
je 0x14004d627
test al, al
jne 0x14004d627
test rcx, rcx
je 0x14004d5ef
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004d5fc
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, rbx
mov dword [rsp + 0x20], eax
lea rdx, [0x140106ec0]
mov rcx, rdi
call fcn.14000f360
mov rcx, r14
mov dword [rbp + 0x448], esi
call fcn.1400c50b8
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, [0x140106ec0]
mov r9, rbx
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov dword [rbp + 0x448], esi
mov rcx, r14
call fcn.1400c50b8
mov eax, dword [rbp + 0x448]
jmp 0x14004ec99
lea rdx, str.NoTrayIcon
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004d683
mov byte [0x14012acac], 1
mov eax, 3
jmp 0x14004ec99
lea rdx, str.SingleInstance
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004d746
test r14, r14
je 0x14004d730
lea rdx, str.Force
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004d730
lea rdx, [0x14010a028]
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
jne 0x14004d6de
mov eax, 1
mov dword [0x1401241e4], eax
mov eax, 3
jmp 0x14004ec99
lea rdx, str.Ignore
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
jne 0x14004d701
mov eax, 3
mov dword [0x1401241e4], eax
jmp 0x14004ec99
lea rdx, [0x140106160]
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
jne 0x14004e18c
mov dword [0x1401241e4], esi
mov eax, 3
jmp 0x14004ec99
mov r8, rbx
jmp 0x14004e97c
mov r15d, 2
mov dword [0x1401241e4], r15d
lea eax, [r15 + 1]
jmp 0x14004ec99
lea rdx, str.UseHook
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004d824
test r14, r14
je 0x14004d813
cmp word [r14], si
je 0x14004d813
lea rdx, str.True
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004d813
cmp word [r14], 0x31
jne 0x14004d795
cmp word [r14 + 2], si
je 0x14004d813
lea rdx, str.False
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004d802
cmp word [r14], 0x30
jne 0x14004d7b6
cmp word [r14 + 2], si
je 0x14004d802
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004df11
test al, al
je 0x14004df11
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004d7fa
cmp dword [rdi + 0x718], esi
jne 0x14004d7fa
cmp byte [0x140126ada], sil
jne 0x14004d7fa
mov r9, r14
jmp 0x14004e31d
mov r8, r14
jmp 0x14004e97c
mov byte [0x14012ab3f], sil
mov eax, 3
jmp 0x14004ec99
mov byte [0x14012ab3f], 1
mov eax, 3
jmp 0x14004ec99
lea rdx, str.HotIf
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004dc78
mov r10, qword [0x1401241d8]
cmp dword [rdi + 0x94], esi
jne 0x14004db96
mov rax, qword [rdi + 0x30]
cmp qword [r10 + 0x28], rax
jne 0x14004db96
test r14, r14
jne 0x14004d871
mov qword [r10 + 0x80], rsi
lea eax, [r14 + 3]
jmp 0x14004ec99
mov r9, qword [0x14012ae38]
test r9, r9
je 0x14004d8b5
nop dword [rax]
mov r8, qword [r9 + 0x18]
test r8, r8
je 0x14004d8ac
mov rax, r14
sub r8, r14
nop
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x14004d8a4
add rax, 2
test ecx, ecx
jne 0x14004d890
test edx, edx
je 0x14004d934
mov r9, qword [r9 + 0x30]
test r9, r9
jne 0x14004d880
mov qword [r10 + 0x80], rsi
mov r15, qword [rdi + 0x30]
test r15, r15
je 0x14004d8c8
dec dword [rdi + 0x48]
mov rcx, rdi
call fcn.1400667b0
mov rcx, qword [rdi + 0x30]
call fcn.140018b20
cmp eax, 1
je 0x14004d9d0
cmp eax, 0xa00e0001
jne 0x14004ec06
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004d95c
test al, al
je 0x14004d95c
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004d949
cmp dword [rdi + 0x718], esi
jne 0x14004d949
cmp byte [0x140126ada], sil
jne 0x14004d949
lea r9, [0x140100be0]
lea rdx, str.Out_of_memory.
jmp 0x14004e324
mov qword [r10 + 0x80], r9
test r9, r9
jne 0x14004ec50
jmp 0x14004d8bc
lea r8, [0x140100be0]
lea rdx, str.Out_of_memory.
jmp 0x14004e983
cmp byte [0x14012ce0f], sil
je 0x14004d9a6
test al, al
jne 0x14004d9a6
test rcx, rcx
je 0x14004d978
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004d985
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
lea r8, [0x140100be0]
mov dword [rsp + 0x20], eax
lea rdx, str.Out_of_memory.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, str.Out_of_memory.
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
lea rbx, [0x140100be0]
cmp word [r14], si
je 0x14004da28
nop dword [rax]
inc r12
cmp word [r14 + r12*2], si
jne 0x14004d9e0
lea r13, [r12 + r12]
mov qword [rbp + 0x448], r12
lea rcx, [r13 + 2]
call fcn.14009d6e0
mov r12, rax
test rax, rax
je 0x14004ecb3
cmp qword [rbp + 0x448], rsi
je 0x14004da21
mov r8, r13
mov rdx, r14
mov rcx, rax
call fcn.1400e20f0
mov word [r12 + r13], si
jmp 0x14004da2b
mov r12, rbx
mov rax, qword [0x1401241d8]
xor r9d, r9d
mov byte [rsp + 0x28], sil
xor r8d, r8d
mov dl, 3
mov qword [rsp + 0x20], rsi
mov rcx, qword [rax + 0x80]
mov qword [rcx + 0x18], r12
mov rcx, rdi
mov r13, qword [rdi + 0x30]
call fcn.140051c80
test eax, eax
je 0x14004dad8
xor r9d, r9d
mov qword [rsp + 0x20], rsi
mov r8b, 6
mov rdx, r14
mov rcx, rdi
call fcn.14004f050
test eax, eax
je 0x14004dad8
mov byte [rsp + 0x28], sil
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov dl, 4
mov rcx, rdi
call fcn.140051c80
test eax, eax
je 0x14004dad8
mov rcx, qword [r13 + 0x40]
mov r8, qword [0x1401241d8]
mov rax, qword [r8 + 0x80]
mov qword [rcx + 0x10], rax
mov qword [rdi + 0x30], r15
mov qword [r8 + 0x28], r15
test r15, r15
je 0x14004ec50
mov r8d, dword [rdi + 0x48]
lea rcx, [rdi + 0x40]
mov rdx, r15
call fcn.140064bc0
mov eax, 3
jmp 0x14004ec99
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004db2a
test al, al
je 0x14004db2a
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004db1b
cmp dword [rdi + 0x718], esi
jne 0x14004db1b
cmp byte [0x140126ada], sil
jne 0x14004db1b
mov r9, rbx
lea rdx, str.Out_of_memory.
jmp 0x14004e324
mov r8, rbx
lea rdx, str.Out_of_memory.
jmp 0x14004e983
cmp byte [0x14012ce0f], sil
je 0x14004db70
test al, al
jne 0x14004db70
test rcx, rcx
je 0x14004db46
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004db53
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, rbx
mov dword [rsp + 0x20], eax
lea rdx, str.Out_of_memory.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, str.Out_of_memory.
mov r9, rbx
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov rax, qword [rdi + 0x6b8]
movzx ecx, byte [0x14012ce0c]
test rax, rax
je 0x14004dc04
test cl, cl
je 0x14004dc04
cmp dword [r10 + 0x60], esi
jne 0x14004dbee
cmp dword [rdi + 0x718], esi
jne 0x14004dbee
cmp byte [0x140126ada], sil
jne 0x14004dbee
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
lea rdx, str.Invalid_usage.
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov esi, eax
jmp 0x14004ec99
mov r9, rax
lea r8, [0x140100be0]
lea rdx, str.Invalid_usage.
jmp 0x14004e986
cmp byte [0x14012ce0f], sil
je 0x14004dc4e
test cl, cl
jne 0x14004dc4e
test rax, rax
je 0x14004dc20
movzx r9d, word [rax + 2]
mov ecx, dword [rax + 4]
jmp 0x14004dc2d
mov r9d, dword [rdi + 0x2d8]
mov ecx, dword [rdi + 0x2dc]
mov dword [rsp + 0x20], ecx
lea r8, [0x140100be0]
mov rcx, rdi
lea rdx, str.Invalid_usage.
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, str.Invalid_usage.
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
lea rdx, str.HotIfTimeout
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004dcac
test r14, r14
je 0x14004ec50
mov rcx, r14
call fcn.1400a1750
mov dword [0x140124b80], eax
mov eax, 3
jmp 0x14004ec99
lea rdx, str.Hotstring
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004de38
test r14, r14
je 0x14004ec50
lea rdx, str.EndChars
mov rcx, r14
call fcn.1400a1230
mov r8, rax
test rax, rax
je 0x14004dd6f
movzx edx, word [rax]
test dx, dx
je 0x14004ec50
mov r9d, 9
nop dword [rax]
lea rcx, [0x14010a098]
movzx eax, r9w
nop dword [rax + rax]
cmp dx, ax
je 0x14004dd3a
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14004dd10
movzx edx, word [r8 + 2]
add r8, 2
test dx, dx
jne 0x14004dd00
mov eax, 3
jmp 0x14004ec99
lea rdx, [r8 + 2]
mov r8d, WSAAsyncSelect
lea rcx, str._____:____.___n__t
call fcn.1400d3a74
xor edx, edx
mov word [0x140124b78], si
lea rcx, str._____:____.___n__t
call fcn.1400a3640
mov eax, 3
jmp 0x14004ec99
mov r8d, 7
lea rdx, str.NoMouse
mov rcx, r14
call fcn.1400c5128
test eax, eax
jne 0x14004dd99
mov byte [0x1401241f5], sil
mov eax, 3
jmp 0x14004ec99
lea rax, [0x14012ab86]
mov rcx, r14
mov qword [rsp + 0x68], rax
lea r9, [0x140124b7c]
lea rax, [0x14012ab5c]
mov qword [rsp + 0x60], rax
lea r8, [0x14012ac98]
lea rax, [0x14012ab5d]
mov qword [rsp + 0x58], rax
lea rdx, [0x14012ac9c]
lea rax, [0x14012ab5e]
mov qword [rsp + 0x50], rax
lea rax, [0x1401241f6]
mov qword [rsp + 0x48], rax
lea rax, [0x14012ab75]
mov qword [rsp + 0x40], rax
lea rax, [0x14012ab5f]
mov qword [rsp + 0x38], rax
lea rax, [0x1401241f7]
mov qword [rsp + 0x30], rax
lea rax, [0x1401241f8]
mov qword [rsp + 0x28], rax
lea rax, [0x14012ab74]
mov qword [rsp + 0x20], rax
call fcn.14001b9f0
mov eax, 3
jmp 0x14004ec99
lea rdx, str.MaxThreadsPerHotkey
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004de84
test r14, r14
je 0x14004ec50
mov rcx, r14
call fcn.1400a1750
mov ecx, 0xff
mov rdx, rax
cmp eax, ecx
jg 0x14004de74
mov eax, 1
mov ecx, edx
cmp edx, eax
cmovl ecx, eax
mov byte [0x1401241f9], cl
mov eax, 3
jmp 0x14004ec99
lea rdx, str.MaxThreadsBuffer
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004df8e
test r14, r14
je 0x14004df7d
cmp word [r14], si
je 0x14004df7d
lea rdx, str.True
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004df7d
cmp word [r14], 0x31
jne 0x14004ded7
cmp word [r14 + 2], si
je 0x14004df7d
lea rdx, str.False
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004df00
cmp word [r14], 0x30
jne 0x14004d7b6
cmp word [r14 + 2], si
jne 0x14004d7b6
mov byte [0x14012abac], sil
mov eax, 3
jmp 0x14004ec99
cmp byte [0x14012ce0f], sil
je 0x14004df57
test al, al
jne 0x14004df57
test rcx, rcx
je 0x14004df2d
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004df3a
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, r14
mov dword [rsp + 0x20], eax
lea rdx, str.Parameter_1_invalid.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, str.Parameter_1_invalid.
mov r9, r14
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov byte [0x14012abac], 1
mov eax, 3
jmp 0x14004ec99
lea rdx, str.MaxThreads
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004dfda
test r14, r14
je 0x14004ec50
mov rcx, r14
call fcn.1400a1750
mov ecx, 0xff
mov rdx, rax
cmp eax, ecx
jg 0x14004dfca
mov eax, 1
mov ecx, edx
cmp edx, eax
cmovl ecx, eax
mov dword [reloc.WSOCK32.dll_inet_addr], ecx
mov eax, 3
jmp 0x14004ec99
lea rdx, str.SuspendExempt
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e064
test r14, r14
je 0x14004e053
cmp word [r14], si
je 0x14004e053
lea rdx, str.True
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004e053
cmp word [r14], 0x31
jne 0x14004e019
cmp word [r14 + 2], si
je 0x14004e053
lea rdx, str.False
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004e042
cmp word [r14], 0x30
jne 0x14004e18c
cmp word [r14 + 2], si
jne 0x14004e18c
mov byte [0x14012ab87], sil
mov eax, 3
jmp 0x14004ec99
mov byte [0x14012ab87], 1
mov eax, 3
jmp 0x14004ec99
lea rdx, str.ClipboardTimeout
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e098
test r14, r14
je 0x14004ec50
mov rcx, r14
call fcn.1400a1750
mov dword [0x1401241ec], eax
mov eax, 3
jmp 0x14004ec99
lea rdx, str.WinActivateForce
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e0bc
mov byte [0x14012acae], 1
mov eax, 3
jmp 0x14004ec99
lea rdx, str.ErrorStdOut
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e15f
test r14, r14
je 0x14004e105
movzx eax, word [r14]
cmp ax, 0x22
je 0x14004e0e8
cmp ax, 0x27
jne 0x14004e105
xor edx, edx
lea rcx, [r14 + 2]
call fcn.1400bffc4
movzx ecx, word [r14]
cmp word [rax - 2], cx
jne 0x14004e105
mov word [rax - 2], si
add r14, 2
mov rcx, r14
call fcn.14000eb10
cmp eax, 0xffffffff
mov dword [rdi + 0x7a0], eax
setne cl
mov byte [rdi + 0x79f], cl
jne 0x14004ec50
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e14f
test al, al
je 0x14004e14f
test r14, r14
lea rbx, [0x140100be0]
cmovne rbx, r14
jmp 0x14004e2f1
test r14, r14
lea rbx, [0x140100be0]
cmovne rbx, r14
jmp 0x14004e1bd
lea rdx, str.InputLevel
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e1fa
test r14, r14
je 0x14004e1e8
mov rcx, r14
call fcn.1400a1750
test eax, eax
js 0x14004e18c
cmp eax, 0x64
jle 0x14004e1ea
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e1af
test al, al
je 0x14004e1af
lea rbx, [0x140100be0]
jmp 0x14004e2ea
lea rbx, [0x140100be0]
test r15, r15
cmovne rbx, r15
cmp byte [0x14012ce0f], sil
je 0x14004e36a
test al, al
jne 0x14004e36a
test rcx, rcx
je 0x14004e340
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004e34d
mov eax, esi
mov byte [0x14012ab85], al
mov eax, 3
jmp 0x14004ec99
lea rdx, str.Warn
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e4d0
lea rbx, [0x140100be0]
test r14, r14
mov r12, rbx
lea edx, [rax + 0x2c]
cmovne r12, r14
mov rcx, r12
mov qword [rbp + 0x448], r12
call fcn.1400bffc4
mov r14, rbx
test rax, rax
je 0x14004e27c
lea r14, [rax + 2]
movzx ecx, word [r14]
cmp cx, 0x20
je 0x14004e250
cmp cx, 9
jne 0x14004e256
add r14, 2
jmp 0x14004e240
add rax, 0xfffffffffffffffe
cmp rax, r12
jbe 0x14004e278
nop
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14004e26f
cmp cx, 9
jne 0x14004e278
sub rax, 2
cmp rax, r12
ja 0x14004e260
mov word [rax + 2], si
mov r13d, 3
cmp word [r12], si
je 0x14004e390
mov r13d, esi
lea r12, str.LocalSameAsGlobal
nop word [rax + rax]
mov rdx, qword [r12]
mov rcx, qword [rbp + 0x448]
call fcn.1400c4f3c
test eax, eax
je 0x14004e390
inc r13d
lea rax, [0x14010bfb0]
add r12, 8
cmp r12, rax
jne 0x14004e2a0
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e1b6
test al, al
je 0x14004e1b6
test r15, r15
cmovne rbx, r15
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004d728
cmp dword [rdi + 0x718], esi
jne 0x14004d728
cmp byte [0x140126ada], sil
jne 0x14004d728
mov r9, rbx
lea rdx, str.Parameter_1_invalid.
mov qword [rsp + 0x28], rsi
xor r8d, r8d
mov qword [rsp + 0x20], rcx
mov rcx, rdi
call fcn.140010370
mov esi, eax
jmp 0x14004ec99
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, rbx
mov dword [rsp + 0x20], eax
lea rdx, str.Parameter_1_invalid.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, str.Parameter_1_invalid.
mov r9, rbx
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov r15d, 2
cmp word [r14], si
je 0x14004e48e
mov r15d, esi
lea rbx, [0x14010bf70]
lea r12, str.LocalSameAsGlobal
mov rdx, qword [rbx]
mov rcx, r14
call fcn.1400c4f3c
test eax, eax
je 0x14004e48e
inc r15d
add rbx, 8
cmp rbx, r12
jne 0x14004e3b1
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e422
test al, al
je 0x14004e422
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004e413
cmp dword [rdi + 0x718], esi
jne 0x14004e413
cmp byte [0x140126ada], sil
jne 0x14004e413
mov r9, r14
lea rdx, str.Parameter_2_invalid.
jmp 0x14004e324
mov r8, r14
lea rdx, str.Parameter_2_invalid.
jmp 0x14004e842
cmp byte [0x14012ce0f], sil
je 0x14004e468
test al, al
jne 0x14004e468
test rcx, rcx
je 0x14004e43e
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004e44b
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, r14
mov dword [rsp + 0x20], eax
lea rdx, str.Parameter_2_invalid.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, str.Parameter_2_invalid.
mov r9, r14
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
test r13d, r13d
je 0x14004e499
cmp r13d, 3
jne 0x14004e4a0
mov dword [0x14012aba8], r15d
lea eax, [r13 - 1]
test eax, 0xfffffffd
jne 0x14004e4b2
mov dword [reloc.OLEAUT32.dll_SysReAllocString], r15d
lea eax, [r13 - 2]
cmp eax, 1
mov eax, 3
ja 0x14004ec99
mov dword [reloc.OLEAUT32.dll_SysReAllocString], r15d
jmp 0x14004ec99
lea rdx, str.Requires
mov rcx, rbx
call fcn.1400c4f3c
test eax, eax
jne 0x14004e7bd
test r14, r14
jne 0x14004e5b7
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e543
test al, al
je 0x14004e543
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004e537
cmp dword [rdi + 0x718], esi
jne 0x14004e537
cmp byte [0x140126ada], sil
jne 0x14004e537
lea r9, [0x140100be0]
lea rdx, str.Parameter_1_required
jmp 0x14004e324
lea r8, [0x140100be0]
jmp 0x14004e83b
cmp byte [0x14012ce0f], sil
je 0x14004e58d
test al, al
jne 0x14004e58d
test rcx, rcx
je 0x14004e55f
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004e56c
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
lea r8, [0x140100be0]
mov dword [rsp + 0x20], eax
lea rdx, str.Parameter_1_required
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, str.Parameter_1_required
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov r8d, 0xa
lea rdx, [0x140100d90]
mov rcx, r14
call fcn.1400c5128
lea r13, str.64_bit
lea r12, [0x1400f00b8]
test eax, eax
jne 0x14004e694
movzx eax, word [r14 + 0x14]
test ax, ax
je 0x14004ec50
cmp ax, 0x20
je 0x14004e600
cmp ax, 9
jne 0x14004e694
lea r15, [r14 + 0x16]
mov rdx, r15
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14004e616
cmp ax, 9
jne 0x14004e61c
add rdx, 2
jmp 0x14004e607
test ax, ax
je 0x14004ec50
mov r15, rdx
cmp ax, 0x20
je 0x14004e642
cmp ax, 9
je 0x14004e642
movzx eax, word [r15 + 2]
add r15, 2
test ax, ax
jne 0x14004e628
mov eax, SafeArrayAllocDescriptor
lea rcx, [rbp - 0x80]
mov rbx, r15
sub rbx, rdx
sar rbx, 1
inc rbx
cmp rbx, 0x20
cmova rbx, rax
lea r8, [rbx - 1]
call fcn.1400d3a74
mov rdx, r13
mov word [rsp + rbx*2 + 0x7e], si
lea rcx, [rbp - 0x80]
call fcn.1400c4f3c
test eax, eax
je 0x14004e604
xor r8d, r8d
lea rdx, [rbp - 0x80]
mov rcx, r12
call fcn.1400a3ed0
test eax, eax
jne 0x14004e604
mov rax, qword [rdi + 0x780]
lea r8, str.This_script_requires__s._n_nCurrent_interpreter:__s_v_s__s_n_s
mov qword [rsp + 0x38], rax
lea rcx, [rbp]
mov qword [rsp + 0x30], r13
lea rax, [0x140100d90]
mov qword [rsp + 0x28], r12
mov r9, r14
mov edx, 0x200
mov qword [rsp + 0x20], rax
call fcn.1400a0ee0
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e74f
test al, al
je 0x14004e74f
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004e729
cmp dword [rdi + 0x718], esi
jne 0x14004e729
cmp byte [0x140126ada], sil
jne 0x14004e729
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
mov qword [rsp + 0x20], rcx
lea rdx, [rbp]
mov rcx, rdi
xor r8d, r8d
call fcn.140010370
mov esi, eax
jmp 0x14004ec99
mov r9, rcx
mov qword [rsp + 0x28], rsi
mov rcx, rdi
mov dword [rsp + 0x20], esi
lea r8, [0x140100be0]
lea rdx, [rbp]
call fcn.14000efc0
mov esi, eax
jmp 0x14004ec99
cmp byte [0x14012ce0f], sil
je 0x14004e796
test al, al
jne 0x14004e796
test rcx, rcx
je 0x14004e76b
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004e778
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
lea r8, [0x140100be0]
mov dword [rsp + 0x20], eax
lea rdx, [rbp]
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, [rbp]
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov eax, 4
jmp 0x14004ec99
test r14, r14
jne 0x14004e8d7
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e85d
test al, al
je 0x14004e85d
mov rax, qword [0x1401241d8]
lea rbx, [0x140100be0]
test r15, r15
cmovne rbx, r15
cmp dword [rax + 0x60], esi
jne 0x14004e838
cmp dword [rdi + 0x718], esi
jne 0x14004e838
cmp byte [0x140126ada], sil
jne 0x14004e838
mov qword [rsp + 0x28], rsi
lea rdx, str.Parameter_1_required
mov qword [rsp + 0x20], rcx
mov r9, rbx
mov rcx, rdi
xor r8d, r8d
call fcn.140010370
mov esi, eax
jmp 0x14004ec99
mov r8, rbx
lea rdx, str.Parameter_1_required
mov r9, rcx
mov qword [rsp + 0x28], rsi
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.14000efc0
mov esi, eax
jmp 0x14004ec99
test r15, r15
lea rbx, [0x140100be0]
cmovne rbx, r15
cmp byte [0x14012ce0f], sil
je 0x14004e8b1
test al, al
jne 0x14004e8b1
test rcx, rcx
je 0x14004e887
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004e894
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, rbx
mov dword [rsp + 0x20], eax
lea rdx, str.Parameter_1_required
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, str.Parameter_1_required
mov r9, rbx
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
movzx r8d, word [r14]
cmp r8w, 0x22
je 0x14004e8e9
cmp r8w, 0x27
jne 0x14004e90d
lea rbx, [r14 + 2]
xor edx, edx
mov rcx, rbx
call fcn.1400bffc4
movzx r8d, word [r14]
cmp word [rax - 2], r8w
jne 0x14004e90d
mov word [rax - 2], si
mov r14, rbx
movzx r8d, word [rbx]
test r8w, r8w
jne 0x14004ea12
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004e99e
test al, al
je 0x14004e99e
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], esi
jne 0x14004e975
cmp dword [rdi + 0x718], esi
jne 0x14004e975
cmp byte [0x140126ada], sil
jne 0x14004e975
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
mov qword [rsp + 0x20], rcx
lea rdx, str.Parameter_1_invalid.
mov rcx, rdi
xor r8d, r8d
call fcn.140010370
mov esi, eax
jmp 0x14004ec99
lea r8, [0x140100be0]
lea rdx, str.Parameter_1_invalid.
mov r9, rcx
mov qword [rsp + 0x28], rsi
mov rcx, rdi
mov dword [rsp + 0x20], esi
call fcn.14000efc0
mov esi, eax
jmp 0x14004ec99
cmp byte [0x14012ce0f], sil
je 0x14004e9e8
test al, al
jne 0x14004e9e8
test rcx, rcx
je 0x14004e9ba
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004e9c7
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
lea r8, [0x140100be0]
mov dword [rsp + 0x20], eax
lea rdx, str.Parameter_1_invalid.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rsi
lea rdx, str.Parameter_1_invalid.
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
cmp r8w, 0x2a
jne 0x14004ea5b
movzx edx, word [r14 + 2]
mov r9d, 0xffdf
movzx ecx, dx
and cx, r9w
lea eax, [rdx - 0x61]
cmp ax, 0x19
cmova cx, dx
cmp cx, 0x49
jne 0x14004ea5b
movzx eax, word [r14 + 4]
cmp ax, 0x20
je 0x14004ea4d
cmp ax, 9
jne 0x14004ea5b
movzx r8d, word [r14 + 6]
add r14, 6
mov r12b, 1
jmp 0x14004ea5e
xor r12b, r12b
cmp r8w, 0x3c
jne 0x14004ec0d
mov edx, 0x3e
mov rcx, r14
call fcn.1400bffc4
mov rbx, rax
test rax, rax
je 0x14004ec0d
cmp word [rax + 2], si
jne 0x14004ec0d
add r14, 2
mov word [rax], si
call fcn.140067970
mov r13, rax
lea r9, [rbp + 0x448]
lea rax, [rbp + 0x450]
mov r8, rbx
sub r8, r14
mov qword [rsp + 0x20], rax
sar r8, 1
mov rdx, r14
mov rcx, rdi
call fcn.1400576f0
test r13, r13
je 0x14004ead8
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rcx, r13
call fcn.1400c50b8
movzx eax, byte [rbp + 0x448]
test al, al
jne 0x14004eaf9
cmp byte [rbp + 0x450], sil
jne 0x14004ec50
test r12b, r12b
jne 0x14004ec50
mov word [rbx], 0x3e
test al, al
jne 0x14004ec06
mov rcx, qword [rdi + 0x6b8]
movzx eax, byte [0x14012ce0c]
test rcx, rcx
je 0x14004eb93
test al, al
je 0x14004eb93
mov rax, qword [0x1401241d8]
lea rbx, [0x140100be0]
test r15, r15
cmovne rbx, r15
cmp dword [rax + 0x60], esi
jne 0x14004eb6e
cmp dword [rdi + 0x718], esi
jne 0x14004eb6e
cmp byte [0x140126ada], sil
jne 0x14004eb6e
mov qword [rsp + 0x28], rsi
lea rdx, str.Script_library_not_found.
mov qword [rsp + 0x20], rcx
mov r9, rbx
mov rcx, rdi
xor r8d, r8d
call fcn.140010370
mov esi, eax
jmp 0x14004ec99
mov r9, rcx
mov qword [rsp + 0x28], rsi
mov rcx, rdi
mov dword [rsp + 0x20], esi
mov r8, rbx
lea rdx, str.Script_library_not_found.
call fcn.14000efc0
mov esi, eax
jmp 0x14004ec99
test r15, r15
lea rbx, [0x140100be0]
cmovne rbx, r15
cmp byte [0x14012ce0f], sil
je 0x14004ebe7
test al, al
jne 0x14004ebe7
test rcx, rcx
je 0x14004ebbd
movzx r9d, word [rcx + 2]
mov eax, dword [rcx + 4]
jmp 0x14004ebca
mov r9d, dword [rdi + 0x2d8]
mov eax, dword [rdi + 0x2dc]
mov r8, rbx
mov dword [rsp + 0x20], eax
lea rdx, str.Script_library_not_found.
mov rcx, rdi
call fcn.14000f360
mov eax, esi
jmp 0x14004ec99
mov qword [rsp + 0x28], rsi
lea rdx, str.Script_library_not_found.
mov r9, rbx
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov rcx, rdi
call fcn.140010370
mov eax, esi
jmp 0x14004ec99
mov r8, r14
lea rdx, [rbp + 0x448]
mov rcx, rdi
call fcn.140062950
test eax, eax
jne 0x14004ec27
xor eax, eax
jmp 0x14004ec99
mov rbx, qword [rbp + 0x448]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14004ec57
test al, 0x10
je 0x14004ec57
mov rcx, rbx
call fcn.1400678b0
mov rcx, rbx
call fcn.1400c50b8
mov eax, 3
jmp 0x14004ec99
call fcn.140067970
movzx r9d, r12b
movzx r8d, r13b
mov rdx, rbx
mov rcx, rdi
mov rsi, rax
call fcn.140048960
neg eax
sbb edi, edi
and edi, 3
test rsi, rsi
je 0x14004ec8f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rcx, rsi
call fcn.1400c50b8
mov rcx, rbx
call fcn.1400c50b8
mov eax, edi
mov r13, qword [rsp + 0x540]
add rsp, 0x500
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140010e40
int3