Function at 0x14001bfb0
Capabilities:
Get keyboard layout

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x60
movzx r8d, word [0x1400fe424]
xor r15d, r15d
mov r9d, SafeArrayAllocDescriptor
mov dword [rax + 0x10], 0x90020
or rdi, 0xffffffffffffffff
mov word [rax + 0x14], r8w
mov word [rax + 0x16], r15w
mov r14, rdx
mov r13, rcx
mov rsi, rdx
lea ebp, [r9 - 0x17]
test rdx, rdx
je 0x14001c043
movzx edx, word [rdx]
test dx, dx
je 0x14001c043
nop word [rax + rax]
lea rcx, [rsp + 0x98]
mov eax, r9d
nop dword [rax + rax]
cmp dx, ax
je 0x14001c0c9
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001c020
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x14001c010
mov rax, rdi
nop word [rax + rax]
cmp word [r14 + rax*2 + 2], r15w
lea rax, [rax + 1]
jne 0x14001c050
lea rsi, [r14 + rax*2]
mov rbx, r15
sub rsi, r14
lea rdx, str.Include
sar rsi, 1
mov r9, rdi
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
je 0x14001c0bf
mov r9, rdi
lea rdx, str.IncludeAgain
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
je 0x14001c0bf
mov r9, rdi
lea rdx, str.NoEnv
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c11a
mov ebp, 1
mov dword [0x140101c9c], ebp
mov eax, 3
jmp 0x14001cf87
mov rbx, rsi
nop dword [rax]
movzx eax, word [rbx]
cmp ax, r9w
je 0x14001c0de
cmp ax, bp
jne 0x14001c0e4
add rbx, 2
jmp 0x14001c0d0
movzx eax, word [rbx]
test ax, ax
je 0x14001c060
cmp ax, r8w
jne 0x14001c063
movzx eax, word [rbx + 2]
add rbx, 2
cmp ax, r9w
je 0x14001c0fa
cmp ax, bp
je 0x14001c0fa
cmp ax, r15w
cmove rbx, r15
jmp 0x14001c063
mov r9, rdi
lea rdx, str.NoTrayIcon
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c144
mov byte [0x140101ca1], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.Persistent
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c16e
mov byte [0x140100f14], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.SingleInstance
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c219
mov ebp, 1
mov dword [0x140100f30], ebp
test rbx, rbx
je 0x14001c20f
lea rdx, str.Force
mov rcx, rbx
call fcn.1400a7970
test eax, eax
jne 0x14001c1c3
mov r15d, 2
lea eax, [rbp + 2]
mov dword [0x140100f30], r15d
jmp 0x14001cf87
lea rdx, str.Ignore
mov rcx, rbx
call fcn.1400a7970
test eax, eax
jne 0x14001c1ea
mov dword [0x140100f30], 3
mov eax, 3
jmp 0x14001cf87
lea rdx, [0x1400df4f8]
mov rcx, rbx
call fcn.1400a7970
mov ecx, dword [0x140100f30]
test eax, eax
mov ebx, 4
cmove ecx, ebx
mov dword [0x140100f30], ecx
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.InstallKeybdHook
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c243
or byte [0x140101cc7], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.InstallMouseHook
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c26d
or byte [0x140101cc7], 2
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.UseHook
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c2b2
test rbx, rbx
je 0x14001c2a1
xor edx, edx
mov rcx, rbx
call fcn.140016d30
mov byte [0x140100f7c], r15b
cmp eax, 2
je 0x14001c2a8
mov byte [0x140100f7c], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, [0x1400cd998]
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c3e8
lea rsi, [0x1400e8120]
test rbx, rbx
jne 0x14001c2fe
mov byte [0x1401011c6], r15b
lea eax, [rbx + 3]
mov qword [0x1400fe438], rsi
mov qword [0x1400fe430], rsi
mov dword [0x1400fe42c], edi
jmp 0x14001cf87
mov rax, qword [0x1400fcaa8]
xor r9d, r9d
mov qword [rsp + 0x38], r15
mov r8b, 0xe1
mov qword [rsp + 0x30], r15
mov rdx, rbx
mov qword [rsp + 0x28], r15
mov rcx, r13
mov rdi, qword [rax + 0xd8]
mov qword [rax + 0xd8], r15
mov byte [r13 + 0x75], 1
mov qword [rsp + 0x20], rsi
call fcn.14001d590
test eax, eax
je 0x14001cf87
mov rax, qword [0x1400fcaa8]
mov edx, dword [0x140101c78]
mov byte [r13 + 0x75], r15b
mov byte [0x1401011c6], 5
mov qword [rax + 0xd8], rdi
mov rbx, qword [r13 + 8]
mov qword [0x1400fe430], rsi
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [0x1400fe438], rcx
mov ecx, dword [0x140101c7c]
lea eax, [rcx + 1]
cmp eax, edx
jle 0x14001c3c2
mov rcx, qword [0x140101c80]
add edx, 0x64
mov dword [0x140101c78], edx
movsxd rdx, edx
shl rdx, 3
call fcn.1400ab858
mov qword [0x140101c80], rax
mov rdx, rax
test rax, rax
je 0x14001c5e3
mov ecx, dword [0x140101c7c]
jmp 0x14001c3c9
mov rdx, qword [0x140101c80]
movsxd rax, ecx
inc ecx
mov dword [0x1400fe42c], eax
mov dword [0x140101c7c], ecx
mov qword [rdx + rax*8], rbx
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.IfTimeout
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c41e
test rbx, rbx
je 0x14001c414
mov rcx, rbx
call fcn.140015650
mov dword [0x1400fe428], eax
mov eax, 3
jmp 0x14001cf87
mov r8d, 6
lea rdx, str.IfWin
mov rcx, r14
call fcn.1400a9f58
test eax, eax
jne 0x14001c604
lea rcx, [r14 + 0xc]
lea r8d, [rax + 3]
lea rdx, [0x1400df6a0]
call fcn.1400a9f58
test eax, eax
lea rdx, str.Active
mov eax, 6
mov r8d, 6
sete sil
test sil, sil
cmovne rax, rbp
lea rbp, [r14 + rax*2]
mov rcx, rbp
call fcn.1400a9f58
test eax, eax
jne 0x14001c488
test sil, sil
setne al
inc al
jmp 0x14001c4ad
mov r8d, 5
lea rdx, str.Exist
mov rcx, rbp
call fcn.1400a9f58
test eax, eax
jne 0x14001c5fa
test sil, sil
setne al
add al, 3
mov byte [0x1401011c6], al
mov dword [0x1400fe42c], edi
test rbx, rbx
jne 0x14001c4e2
lea rsi, [0x1400e8120]
mov byte [0x1401011c6], r15b
mov qword [0x1400fe438], rsi
lea eax, [rbx + 3]
mov qword [0x1400fe430], rsi
jmp 0x14001cf87
movzx edx, word [0x1400fe424]
mov r10, r15
movzx r9d, word [0x1400fe41c]
mov rcx, rbx
movzx r8d, word [0x1400fe420]
nop
movzx eax, word [rcx]
test ax, ax
je 0x14001c526
cmp ax, r9w
je 0x14001c555
cmp ax, dx
je 0x14001c555
cmp ax, r8w
je 0x14001c555
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001c508
lea rsi, [0x1400e8120]
test r10, r10
je 0x14001c5c2
lea rdi, [r10 + 2]
nop word [rax + rax]
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14001c54f
cmp ax, 9
jne 0x14001c5a0
add rdi, 2
jmp 0x14001c540
movzx eax, word [rcx]
test ax, ax
je 0x14001c526
cmp ax, r8w
je 0x14001c589
cmp ax, dx
jne 0x14001c576
test r10, r10
jne 0x14001c589
mov r10, rcx
add rcx, 2
jmp 0x14001c500
add rcx, 2
cmp word [rcx], r15w
je 0x14001c526
add rcx, 2
jmp 0x14001c500
mov r8, r14
lea rdx, str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
mov rcx, r13
call fcn.140035c60
jmp 0x14001cf87
mov word [r10], r15w
mov rcx, rbx
sub r10, rbx
sar r10, 1
mov rdx, r10
call fcn.140015550
mov r8b, 1
mov rcx, rdi
call fcn.140089f00
jmp 0x14001c5c5
mov rdi, rsi
mov r8b, 1
mov rcx, rbx
call fcn.140089f00
mov rdx, rdi
mov rcx, rbx
call fcn.14000b390
test eax, eax
jne 0x14001c0bf
mov r8, rsi
lea rdx, str.Out_of_memory.
mov rcx, r13
call fcn.140035c60
jmp 0x14001cf87
mov eax, 4
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.Hotstring
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c73e
test rbx, rbx
je 0x14001c0bf
lea rdx, str.EndChars
mov rcx, rbx
call fcn.140087b90
test rax, rax
je 0x14001c68d
lea rdx, [0x1400e1e64]
mov rcx, rax
call fcn.14000aed0
test rax, rax
je 0x14001c0bf
lea rdx, [rax + 2]
mov r8d, 0x64
lea rcx, str._____:____.___n__t
call fcn.1400b0a34
xor r8d, r8d
mov word [0x1400fe418], r15w
lea rcx, str._____:____.___n__t
call fcn.140089f00
mov eax, 3
jmp 0x14001cf87
mov r8d, 7
lea rdx, str.NoMouse
mov rcx, rbx
call fcn.1400a9f58
test eax, eax
jne 0x14001c6b7
mov byte [0x1400fe348], r15b
mov eax, 3
jmp 0x14001cf87
lea rax, [0x140100f7e]
mov rcx, rbx
mov qword [rsp + 0x58], rax
lea r9, [0x1400fe34c]
lea rax, [0x140100f7f]
mov qword [rsp + 0x50], rax
lea r8, [0x1401010f0]
lea rax, [0x1400fe349]
mov qword [rsp + 0x48], rax
lea rdx, [0x1401010f4]
lea rax, [0x1401010dc]
mov qword [rsp + 0x40], rax
lea rax, [0x1401010dd]
mov qword [rsp + 0x38], rax
lea rax, [0x1400fe34a]
mov qword [rsp + 0x30], rax
lea rax, [0x1400fe34b]
mov qword [rsp + 0x28], rax
lea rax, [0x1401010de]
mov qword [rsp + 0x20], rax
call fcn.14000ead0
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.HotkeyModifierTimeout
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c774
test rbx, rbx
je 0x14001c76a
mov rcx, rbx
call fcn.14000ed90
mov dword [0x1400fe450], eax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.HotkeyInterval
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c7b4
test rbx, rbx
je 0x14001c7aa
mov rcx, rbx
call fcn.14000ed90
mov ecx, 0xa
cmp eax, ecx
cmovl eax, ecx
mov dword [0x1400fe440], eax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.MaxHotkeysPerInterval
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c7f4
test rbx, rbx
je 0x14001c7ea
mov rcx, rbx
call fcn.14000ed90
mov ebp, 1
cmp eax, ebp
cmovl eax, ebp
mov dword [0x1400fe444], eax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.MaxThreadsPerHotkey
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c83f
test rbx, rbx
je 0x14001c835
mov rcx, rbx
call fcn.14000ed90
mov ecx, 0xff
cmp eax, ecx
jg 0x14001c82f
mov ebp, 1
mov ecx, eax
cmp eax, ebp
cmovl ecx, ebp
mov byte [0x1400fe41a], cl
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.MaxThreadsBuffer
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c884
test rbx, rbx
je 0x14001c873
xor edx, edx
mov rcx, rbx
call fcn.140016d30
mov byte [0x140101c98], r15b
cmp eax, 2
je 0x14001c87a
mov byte [0x140101c98], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.MaxThreads
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c8cf
test rbx, rbx
je 0x14001c8c5
mov rcx, rbx
call fcn.14000ed90
mov ecx, 0xff
cmp eax, ecx
jg 0x14001c8bf
mov ebp, 1
mov ecx, eax
cmp eax, ebp
cmovl ecx, ebp
mov dword [0x1400fcaa4], ecx
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.ClipboardTimeout
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c905
test rbx, rbx
je 0x14001c8fb
mov rcx, rbx
call fcn.14000ed90
mov dword [0x1400fcab4], eax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.LTrim
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c94a
test rbx, rbx
je 0x14001c939
xor edx, edx
mov rcx, rbx
call fcn.140016d30
mov byte [0x140100f7d], r15b
cmp eax, 2
je 0x14001c940
mov byte [0x140100f7d], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.WinActivateForce
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c974
mov byte [0x140101ca3], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.ErrorStdOut
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c99f
mov byte [r13 + 0xb93], 1
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.MaxMem
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001ca37
test rbx, rbx
je 0x14001ca2d
mov rcx, rbx
call fcn.140015680
movaps xmm1, xmm0
movsd xmm0, qword [0x1400ea310]
comisd xmm1, xmm0
ja 0x14001c9e4
movsd xmm0, qword [0x1400ea2b8]
comisd xmm0, xmm1
jbe 0x14001c9e7
movaps xmm1, xmm0
mulsd xmm1, qword [0x1400ea300]
xor ecx, ecx
movsd xmm0, qword [0x1400ea368]
mulsd xmm1, qword [0x1400ea300]
comisd xmm1, xmm0
jb 0x14001ca1e
subsd xmm1, xmm0
comisd xmm1, xmm0
jae 0x14001ca1e
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm1
add rax, rcx
mov qword [0x1400fe448], rax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.KeyHistory
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001ca8c
test rbx, rbx
je 0x14001ca82
mov rcx, rbx
call fcn.14000ed90
test eax, eax
jns 0x14001ca72
mov dword [0x1400fcab0], r15d
mov eax, 3
jmp 0x14001cf87
mov ecx, 0x1f4
cmp eax, ecx
cmovg eax, ecx
mov dword [0x1400fcab0], eax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.CommentFlag
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001cb4e
test rbx, rbx
je 0x14001cb44
cmp word [rbx + 2], r15w
jne 0x14001cb13
movzx ecx, word [rbx]
cmp cx, 0x23
je 0x14001cafc
cmp cx, word [0x1400fe420]
je 0x14001cafc
cmp cx, word [0x1400fe41c]
je 0x14001cafc
cmp cx, word [0x1400fe424]
je 0x14001cafc
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x14001caf6
movabs rdx, 0x2000000028000609
bt rdx, rax
jb 0x14001cafc
cmp cx, 0x7e
jne 0x14001cb13
mov r8, r14
lea rdx, str.Parameter_1_invalid.
mov rcx, r13
call fcn.140035c60
jmp 0x14001cf87
mov rdx, rbx
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
lea rbx, [0x1400fee28]
mov rcx, rbx
call fcn.1400b0a34
mov word [0x1400fee46], r15w
inc rdi
cmp word [rbx + rdi*2], r15w
jne 0x14001cb33
mov qword [0x1400fee20], rdi
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.EscapeChar
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001cbc5
test rbx, rbx
je 0x14001c0bf
movzx eax, word [rbx]
cmp ax, 0x23
je 0x14001cafc
cmp ax, word [0x1400fe420]
je 0x14001cafc
cmp ax, word [0x1400fe424]
je 0x14001cafc
cmp ax, 0x2e
je 0x14001cafc
cmp qword [0x1400fee20], 1
jne 0x14001cbb4
cmp ax, word [0x1400fee28]
je 0x14001cafc
mov word [0x1400fe41c], ax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.DerefChar
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001cc36
test rbx, rbx
je 0x14001c0bf
movzx eax, word [rbx]
cmp ax, word [0x1400fe41c]
je 0x14001cafc
cmp ax, word [0x1400fe424]
je 0x14001cafc
cmp ax, 0x2e
je 0x14001cafc
cmp qword [0x1400fee20], 1
jne 0x14001cc25
cmp ax, word [0x1400fee28]
je 0x14001cafc
mov word [0x1400fe420], ax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, [0x1400e2078]
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001ccb1
test rbx, rbx
je 0x14001c0bf
movzx eax, word [rbx]
cmp ax, 0x23
je 0x14001cafc
cmp ax, word [0x1400fe41c]
je 0x14001cafc
cmp ax, word [0x1400fe420]
je 0x14001cafc
cmp ax, 0x2e
je 0x14001cafc
cmp qword [0x1400fee20], 1
jne 0x14001cca0
cmp ax, word [0x1400fee28]
je 0x14001cafc
mov word [0x1400fe424], ax
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.MenuMaskKey
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001cd20
test rbx, rbx
je 0x14001ccfb
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
mov r9b, 1
xor edx, edx
movzx r8d, r9b
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140014610
mov byte [reloc.OLEAUT32.dll_SafeArrayGetElemsize], al
test al, al
jne 0x14001c0bf
test rbx, rbx
lea rax, str.Parameter_1_invalid.
lea rdx, str.Parameter_1_required
mov r8, r14
cmovne rdx, rax
mov rcx, r13
call fcn.140035c60
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.InputLevel
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001cd63
test rbx, rbx
je 0x14001cd52
mov rcx, rbx
call fcn.14000ed90
mov r15d, eax
cmp eax, 0x64
ja 0x14001cafc
mov byte [0x1401011c7], r15b
mov eax, 3
jmp 0x14001cf87
mov r9, rdi
lea rdx, str.Warn
mov r8, rsi
mov rcx, r14
call fcn.140087840
test eax, eax
jne 0x14001c5fa
movzx edx, word [0x1400fe424]
test rbx, rbx
mov qword [rsp + 0x90], r12
lea r12, [0x1400e2108]
cmovne r12, rbx
mov rcx, r12
call fcn.1400a5b28
lea rsi, [0x1400e8120]
mov rbx, rdi
test rax, rax
je 0x14001ce00
lea rsi, [rax + 2]
nop dword [rax + rax]
movzx ecx, word [rsi]
cmp cx, 0x20
je 0x14001cdce
cmp cx, bp
jne 0x14001cdd4
add rsi, 2
jmp 0x14001cdc0
lea rbx, [rax - 2]
cmp rbx, r12
jbe 0x14001cdf7
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14001cdee
cmp ax, bp
jne 0x14001cdf7
sub rbx, 2
cmp rbx, r12
ja 0x14001cde0
sub rbx, r12
sar rbx, 1
inc rbx
mov r9, rdi
lea rdx, [0x1400e2108]
mov r8, rbx
mov rcx, r12
call fcn.140087840
mov ebp, 1
lea r15d, [rbp + 1]
test eax, eax
je 0x14001ceb1
test rbx, rbx
je 0x14001ceb1
mov r9, rdi
lea rdx, str.UseUnsetLocal
mov r8, rbx
mov rcx, r12
call fcn.140087840
test eax, eax
jne 0x14001ce4c
xor ebx, ebx
jmp 0x14001ceb6
mov r9, rdi
lea rdx, str.UseUnsetGlobal
mov r8, rbx
mov rcx, r12
call fcn.140087840
test eax, eax
jne 0x14001ce69
mov ebx, ebp
jmp 0x14001ceb6
mov r9, rdi
lea rdx, str.UseEnv
mov r8, rbx
mov rcx, r12
call fcn.140087840
test eax, eax
jne 0x14001ce87
lea ebx, [rax + 3]
jmp 0x14001ceb6
mov r9, rdi
lea rdx, str.LocalSameAsGlobal
mov r8, rbx
mov rcx, r12
call fcn.140087840
test eax, eax
jne 0x14001cea5
mov ebx, r15d
jmp 0x14001ceb6
lea rdx, str.Parameter_1_invalid.
jmp 0x14001cf74
mov ebx, 4
cmp word [rsi], 0
je 0x14001cf16
lea rdx, str.MsgBox
mov rcx, rsi
call fcn.1400a7970
test eax, eax
je 0x14001cf16
lea rdx, str.OutputDebug
mov rcx, rsi
call fcn.1400a7970
test eax, eax
jne 0x14001cee7
mov r15d, ebp
jmp 0x14001cf16
lea rdx, str.StdOut
mov rcx, rsi
call fcn.1400a7970
test eax, eax
jne 0x14001cf00
lea r15d, [rax + 3]
jmp 0x14001cf16
lea rdx, [0x1400df4f8]
mov rcx, rsi
call fcn.1400a7970
test eax, eax
jne 0x14001cf6d
xor r15d, r15d
mov ecx, dword [0x140101cb0]
mov eax, ebx
and eax, 0xfffffffb
cmove ecx, r15d
mov dword [0x140101cb0], ecx
cmp ebx, ebp
je 0x14001cf34
cmp ebx, 4
jne 0x14001cf3b
mov dword [0x140101cac], r15d
mov ecx, dword [0x140101ca8]
lea eax, [rbx - 3]
cmp eax, ebp
lea eax, [rbx - 2]
cmovbe ecx, r15d
and eax, 0xfffffffd
mov dword [0x140101ca8], ecx
mov eax, 3
mov ecx, dword [0x140101ca4]
cmove ecx, r15d
mov dword [0x140101ca4], ecx
jmp 0x14001cf7f
lea rdx, str.Parameter_2_invalid.
mov r8, r14
mov rcx, r13
call fcn.140035c60
mov r12, qword [rsp + 0x90]
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret