Function at 0x14001f284
Capabilities:
Get keyboard layout

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x40
movzx r8d, word [0x1401873d4]
xor r15d, r15d
or rdi, 0xffffffffffffffff
mov dword [rsp + 0x78], 0x90020
mov word [rsp + 0x7c], r8w
mov r14, rdx
mov word [rsp + 0x7e], r15w
mov r13, rcx
mov r9d, SafeArrayAllocDescriptor
mov rsi, rdx
test rdx, rdx
je 0x14001f317
movzx edx, word [rdx]
test dx, dx
je 0x14001f317
lea rcx, [rsp + 0x78]
mov eax, r9d
nop dword [rax + rax]
cmp dx, ax
je 0x14001f3af
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001f2ec
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x14001f2dc
mov rax, rdi
nop word [rax + rax]
cmp word [r14 + rax*2 + 2], r15w
lea rax, [rax + 1]
jne 0x14001f324
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.1400978ae
test eax, eax
je 0x14001f3a5
mov r9, rdi
lea rdx, str.IncludeAgain
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
je 0x14001f3a5
mov r9, rdi
lea rdx, str.NoEnv
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f413
mov r15d, 1
mov dword [0x14018ac4c], r15d
mov eax, 3
jmp 0x140020488
mov rbx, rsi
nop
movzx eax, word [rbx]
cmp ax, r9w
je 0x14001f3cb
cmp ax, 9
jne 0x14001f3d4
add rbx, 2
jmp 0x14001f3b4
movzx eax, word [rbx]
test ax, ax
je 0x14001f338
cmp ax, r8w
jne 0x14001f33b
movzx eax, word [rbx + 2]
add rbx, 2
cmp ax, r9w
je 0x14001f3ea
cmp ax, 9
je 0x14001f3ea
cmp ax, r15w
cmove rbx, r15
jmp 0x14001f33b
mov r9, rdi
lea rdx, str.NoTrayIcon
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f441
mov byte [0x14018ac51], 1
mov eax, 3
jmp 0x140020488
mov r9, rdi
lea rdx, str.Persistent
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f46f
mov byte [0x140189ec4], 1
mov eax, 3
jmp 0x140020488
mov r9, rdi
mov qword [rsp + 0x70], rbp
mov r8, rsi
lea rdx, str.SingleInstance
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f52b
mov r15d, 1
mov dword [0x140189ee0], r15d
test rbx, rbx
je 0x14001f521
lea rdx, str.Force
mov rcx, rbx
call fcn.1400ba941
test eax, eax
jne 0x14001f4d1
mov ebp, 2
mov dword [0x140189ee0], ebp
lea eax, [rbp + 1]
jmp 0x140020483
lea rdx, str.Ignore
mov rcx, rbx
call fcn.1400ba941
test eax, eax
jne 0x14001f4fc
mov dword [0x140189ee0], 3
mov eax, 3
jmp 0x140020483
lea rdx, [0x140104488]
mov rcx, rbx
call fcn.1400ba941
mov ecx, dword [0x140189ee0]
test eax, eax
mov ebx, 4
cmove ecx, ebx
mov dword [0x140189ee0], ecx
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.InstallKeybdHook
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f559
or byte [0x14018ac77], 1
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.InstallMouseHook
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f587
or byte [0x14018ac77], 2
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.UseHook
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f5d8
test rbx, rbx
je 0x14001f5c7
xor edx, edx
mov rcx, rbx
call fcn.1400196c8
mov byte [0x140189f2c], r15b
cmp eax, 2
je 0x14001f5ce
mov byte [0x140189f2c], 1
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, [0x1400f2928]
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f719
lea rsi, [0x14010d0d8]
test rbx, rbx
jne 0x14001f628
mov byte [0x14018a176], r15b
lea eax, [rbx + 3]
mov qword [0x1401873e8], rsi
mov qword [0x1401873e0], rsi
mov dword [0x1401873dc], edi
jmp 0x140020483
mov rax, qword [0x140185a58]
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.140020d2a
test eax, eax
je 0x140020483
mov rax, qword [0x140185a58]
mov edx, dword [0x14018ac28]
mov byte [r13 + 0x75], r15b
mov byte [0x14018a176], 5
mov qword [rax + 0xd8], rdi
mov rbx, qword [r13 + 8]
mov qword [0x1401873e0], rsi
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [0x1401873e8], rcx
mov ecx, dword [0x14018ac2c]
lea eax, [rcx + 1]
cmp eax, edx
jle 0x14001f6f3
mov rcx, qword [0x14018ac30]
add edx, 0x64
mov dword [0x14018ac28], edx
movsxd rdx, edx
shl rdx, 3
call fcn.1400bf269
mov qword [0x14018ac30], rax
mov rdx, rax
test rax, rax
je 0x14001f969
mov ecx, dword [0x14018ac2c]
jmp 0x14001f6fa
mov rdx, qword [0x14018ac30]
movsxd rax, ecx
inc ecx
mov dword [0x1401873dc], eax
mov dword [0x14018ac2c], ecx
mov qword [rdx + rax*8], rbx
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.IfTimeout
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001f757
test rbx, rbx
je 0x14001f74d
mov rcx, rbx
call fcn.140017cc3
mov dword [0x1401873d8], eax
mov eax, 3
jmp 0x140020483
mov r8d, 6
lea rdx, str.IfWin
mov rcx, r14
call fcn.1400bd57d
test eax, eax
jne 0x14001f980
lea rcx, [r14 + 0xc]
lea r8d, [rax + 3]
lea rdx, [0x140104630]
call fcn.1400bd57d
test eax, eax
lea rdx, str.Active
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov ebp, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
sete sil
test sil, sil
cmovne ebp, ecx
lea r8d, [rcx - 0xc]
add rbp, r14
mov rcx, rbp
call fcn.1400bd57d
test eax, eax
jne 0x14001f7cb
inc sil
mov byte [0x14018a176], sil
jmp 0x14001f7f6
mov r8d, 5
lea rdx, str.Exist
mov rcx, rbp
call fcn.1400bd57d
test eax, eax
jne 0x14002058c
test sil, sil
setne al
add al, 3
mov byte [0x14018a176], al
mov dword [0x1401873dc], edi
test rbx, rbx
jne 0x14001f829
lea rsi, [0x14010d0d8]
mov byte [0x14018a176], r15b
mov qword [0x1401873e8], rsi
lea eax, [rbx + 3]
mov qword [0x1401873e0], rsi
jmp 0x140020483
movzx edx, word [0x1401873d4]
mov r10, r15
movzx r9d, word [0x1401873cc]
mov rcx, rbx
movzx r8d, word [0x1401873d0]
nop dword [rax]
movzx eax, word [rcx]
test ax, ax
je 0x14001f887
cmp ax, r9w
je 0x14001f8c1
cmp ax, dx
je 0x14001f8c1
cmp ax, r8w
je 0x14001f8c1
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001f859
lea rsi, [0x14010d0d8]
test r10, r10
je 0x14001f948
lea rdi, [r10 + 2]
nop word [rax + rax]
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14001f8b8
cmp ax, 9
jne 0x14001f923
add rdi, 2
jmp 0x14001f8a1
movzx eax, word [rcx]
test ax, ax
je 0x14001f887
cmp ax, r8w
je 0x14001f90c
cmp ax, dx
jne 0x14001f8f5
test r10, r10
jne 0x14001f90c
mov r10, rcx
add rcx, 2
jmp 0x14001f84d
add rcx, 2
cmp word [rcx], r15w
je 0x14001f887
add rcx, 2
jmp 0x14001f84d
mov r8, r14
lea rdx, str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
mov rcx, r13
call fcn.14003c3c4
jmp 0x140020483
mov word [r10], r15w
mov rcx, rbx
sub r10, rbx
sar r10, 1
mov rdx, r10
call fcn.140017b7d
mov r8b, 1
mov rcx, rdi
call fcn.14009a403
jmp 0x14001f94b
mov rdi, rsi
mov r8b, 1
mov rcx, rbx
call fcn.14009a403
mov rdx, rdi
mov rcx, rbx
call fcn.14000c48a
test eax, eax
jne 0x1400202e3
mov r8, rsi
lea rdx, str.Out_of_memory.
mov rcx, r13
call fcn.14003c3c4
jmp 0x140020483
mov r9, rdi
lea rdx, str.Hotstring
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fbff
test rbx, rbx
je 0x1400202e3
lea rdx, str.EndChars
mov rcx, rbx
call fcn.140097c93
test rax, rax
je 0x14001fa0d
lea rdx, [0x140106df4]
mov rcx, rax
call fcn.14000beb8
test rax, rax
je 0x1400202e3
lea rdx, [rax + 2]
mov r8d, 0x64
lea rcx, str._____:____.___n__t
call fcn.1400c4f15
xor r8d, r8d
mov word [0x1401873c8], r15w
lea rcx, str._____:____.___n__t
call fcn.14009a403
mov eax, 3
jmp 0x140020483
mov r8d, 7
lea rdx, str.NoMouse
mov rcx, rbx
call fcn.1400bd57d
test eax, eax
jne 0x14001fa3b
mov byte [0x1401872f8], r15b
mov eax, 3
jmp 0x140020483
cmp word [rbx], r15w
je 0x1400202e3
mov ebp, 2
lea r14, [0x140000000]
movzx eax, word [rbx]
cmp ax, 0x3a
je 0x1400202e3
movzx edi, ax
lea rsi, [rbx + 2]
test edi, 0xffffff80
jne 0x14001fa85
mov edx, ebp
mov ecx, edi
call fcn.1400bdc33
test eax, eax
je 0x14001fa85
and edi, 0xffffffdf
movzx eax, di
add eax, 0xffffffd6
cmp eax, 0x30
ja case.0x14001faaa.52
cdqe
movzx eax, byte [r14 + rax + 0x205c2]
mov ecx, dword [r14 + rax*4 + 0x20596]
add rcx, r14
jmp rcx
cmp word [rsi], 0x30
sete byte [0x1401872f9]
jmp case.0x14001faaa.52
cmp word [rsi], 0x30
setne byte [0x140189f2f]
jmp case.0x14001faaa.52
cmp word [rsi], 0x30
setne byte [0x1401872fa]
jmp case.0x14001faaa.52
movzx eax, word [rsi]
cmp ax, 0x30
jne 0x14001fafc
mov byte [0x1401872fb], 1
mov byte [0x14018a08e], r15b
jmp case.0x14001faaa.52
mov byte [0x1401872fb], r15b
cmp ax, 0x31
jne 0x14001fb19
mov byte [0x14018a08e], r15b
jmp case.0x14001faaa.52
mov byte [0x14018a08e], 1
jmp case.0x14001faaa.52
cmp word [rsi], 0x30
setne byte [0x14018a08d]
jmp case.0x14001faaa.52
mov rcx, rsi
call fcn.1400bef0f
mov dword [0x14018a0a0], eax
jmp case.0x14001faaa.52
mov rcx, rsi
call fcn.1400bef0f
mov dword [0x14018a0a4], eax
jmp case.0x14001faaa.52
cmp word [rsi], 0x30
setne byte [0x14018a08c]
jmp case.0x14001faaa.52
movzx eax, word [rsi]
test ax, ax
mov edi, eax
cmove rsi, rbx
mov rbx, rsi
test eax, 0xffffff80
jne 0x14001fb99
mov edx, ebp
mov ecx, eax
call fcn.1400bdc33
test eax, eax
je 0x14001fb99
and edi, 0xffffffdf
movzx eax, di
cmp eax, 0x45
je 0x14001fbd1
cmp eax, 0x49
je 0x14001fbc2
cmp eax, 0x50
jne case.0x14001faaa.52
mov dword [0x1401872fc], ebp
jmp case.0x14001faaa.52
mov dword [0x1401872fc], 3
jmp case.0x14001faaa.52
mov dword [0x1401872fc], r15d
jmp case.0x14001faaa.52
cmp word [rsi], 0x30
setne byte [0x140189f2e]
add rbx, rbp
cmp word [rbx], r15w
jne 0x14001fa51
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.HotkeyModifierTimeout
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fc3d
test rbx, rbx
je 0x14001fc33
mov rcx, rbx
call fcn.1400106e4
mov dword [0x140187400], eax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.HotkeyInterval
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fc85
test rbx, rbx
je 0x14001fc7b
mov rcx, rbx
call fcn.1400106e4
mov ecx, 0xa
cmp eax, ecx
cmovl eax, ecx
mov dword [0x1401873f0], eax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.MaxHotkeysPerInterval
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fcd0
test rbx, rbx
je 0x14001fcc6
mov rcx, rbx
call fcn.1400106e4
mov r15d, 1
cmp eax, r15d
cmovl eax, r15d
mov dword [0x1401873f4], eax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.MaxThreadsPerHotkey
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fd2a
test rbx, rbx
je 0x14001fd20
mov rcx, rbx
call fcn.1400106e4
mov ecx, 0xff
cmp eax, ecx
jg 0x14001fd1a
mov r15d, 1
mov ecx, eax
cmp eax, r15d
cmovl ecx, r15d
mov byte [0x1401873ca], cl
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.MaxThreadsBuffer
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fd7b
test rbx, rbx
je 0x14001fd6a
xor edx, edx
mov rcx, rbx
call fcn.1400196c8
mov byte [0x14018ac48], r15b
cmp eax, 2
je 0x14001fd71
mov byte [0x14018ac48], 1
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.MaxThreads
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fdd5
test rbx, rbx
je 0x14001fdcb
mov rcx, rbx
call fcn.1400106e4
mov ecx, 0xff
cmp eax, ecx
jg 0x14001fdc5
mov r15d, 1
mov ecx, eax
cmp eax, r15d
cmovl ecx, r15d
mov dword [0x140185a54], ecx
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.ClipboardTimeout
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fe13
test rbx, rbx
je 0x14001fe09
mov rcx, rbx
call fcn.1400106e4
mov dword [0x140185a64], eax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.LTrim
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fe64
test rbx, rbx
je 0x14001fe53
xor edx, edx
mov rcx, rbx
call fcn.1400196c8
mov byte [0x140189f2d], r15b
cmp eax, 2
je 0x14001fe5a
mov byte [0x140189f2d], 1
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.WinActivateForce
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fe92
mov byte [0x14018ac53], 1
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.ErrorStdOut
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001fec1
mov byte [r13 + 0xb93], 1
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.MaxMem
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001ff65
test rbx, rbx
je 0x14001ff5b
mov rcx, rbx
call fcn.140017cf7
movsd xmm1, qword [0x14010f2d0]
comisd xmm0, xmm1
ja 0x14001ff0d
movsd xmm1, qword [0x14010f278]
maxsd xmm1, xmm0
mulsd xmm1, qword [0x14010f2c0]
xor ecx, ecx
movsd xmm0, qword [0x14010f328]
mulsd xmm1, qword [0x14010f2c0]
comisd xmm1, xmm0
jb 0x14001ff4c
subsd xmm1, xmm0
comisd xmm1, xmm0
jae 0x14001ff4c
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm1
add rax, rcx
mov qword [0x1401873f8], rax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.KeyHistory
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14001ffc6
test rbx, rbx
je 0x14001ffbc
mov rcx, rbx
call fcn.1400106e4
test eax, eax
jns 0x14001ffac
mov dword [0x140185a60], r15d
mov eax, 3
jmp 0x140020483
mov ecx, 0x1f4
cmp eax, ecx
cmovg eax, ecx
mov dword [0x140185a60], eax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.CommentFlag
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x140020095
test rbx, rbx
je 0x14002008b
cmp word [rbx + 2], r15w
jne 0x140020056
movzx ecx, word [rbx]
cmp cx, 0x23
je 0x1400202c5
rol dword [rdx], 0
invalid
cmp cx, word [0x1401873d0]
je 0x1400202c5
cmp cx, word [0x1401873cc]
je 0x1400202c5
cmp cx, word [0x1401873d4]
je 0x1400202c5
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x14002004c
movabs rdx, 0x2000000028000609
bt rdx, rax
jb 0x1400202c5
cmp cx, 0x7e
je 0x1400202c5
mov rdx, rbx
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
lea rbx, [0x140187dd8]
mov rcx, rbx
call fcn.1400c4f15
mov word [0x140187df6], r15w
inc rdi
cmp word [rbx + rdi*2], r15w
jne 0x140020076
mov qword [0x140187dd0], rdi
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.EscapeChar
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x140020118
test rbx, rbx
je 0x1400202e3
movzx eax, word [rbx]
cmp ax, 0x23
je 0x1400202c5
cmp ax, word [0x1401873d0]
je 0x1400202c5
cmp ax, word [0x1401873d4]
je 0x1400202c5
cmp ax, 0x2e
je 0x1400202c5
cmp qword [0x140187dd0], 1
jne 0x140020107
cmp ax, word [0x140187dd8]
je 0x1400202c5
mov word [0x1401873cc], ax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.DerefChar
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x140020191
test rbx, rbx
je 0x1400202e3
movzx eax, word [rbx]
cmp ax, word [0x1401873cc]
je 0x1400202c5
cmp ax, word [0x1401873d4]
je 0x1400202c5
cmp ax, 0x2e
je 0x1400202c5
cmp qword [0x140187dd0], 1
jne 0x140020180
cmp ax, word [0x140187dd8]
je 0x1400202c5
mov word [0x1401873d0], ax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, [0x140107008]
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x140020214
test rbx, rbx
je 0x1400202e3
movzx eax, word [rbx]
cmp ax, 0x23
je 0x1400202c5
cmp ax, word [0x1401873cc]
je 0x1400202c5
cmp ax, word [0x1401873d0]
je 0x1400202c5
cmp ax, 0x2e
je 0x1400202c5
cmp qword [0x140187dd0], 1
jne 0x140020203
cmp ax, word [0x140187dd8]
je 0x1400202c5
mov word [0x1401873d4], ax
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.MenuMaskKey
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14002028b
test rbx, rbx
je 0x140020266
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.140016a65
mov byte [reloc.OLEAUT32.dll_SafeArrayGetElemsize], al
test al, al
jne 0x1400202e3
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.14003c3c4
jmp 0x140020483
mov r9, rdi
lea rdx, str.InputLevel
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x1400202ed
test rbx, rbx
je 0x1400202dc
mov rcx, rbx
call fcn.1400106e4
mov r15d, eax
cmp eax, 0x64
jbe 0x1400202dc
mov r8, r14
lea rdx, str.Parameter_1_invalid.
mov rcx, r13
call fcn.14003c3c4
jmp 0x140020483
mov byte [0x14018a177], r15b
mov eax, 3
jmp 0x140020483
mov r9, rdi
lea rdx, str.Warn
mov r8, rsi
mov rcx, r14
call fcn.1400978ae
test eax, eax
jne 0x14002058c
movzx edx, word [0x1401873d4]
test rbx, rbx
mov qword [rsp + 0x80], r12
lea r12, [0x140107098]
cmovne r12, rbx
mov rcx, r12
call fcn.1400b8b6c
lea rsi, [0x14010d0d8]
mov rbx, rdi
test rax, rax
je 0x1400203a8
lea rsi, [rax + 2]
nop word [rax + rax]
movzx ecx, word [rsi]
cmp cx, 0x20
je 0x140020363
cmp cx, 9
jne 0x14002036c
add rsi, 2
jmp 0x14002034c
lea rbx, [rax - 2]
cmp rbx, r12
jbe 0x14002039f
nop
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140020392
cmp ax, 9
jne 0x14002039f
sub rbx, 2
cmp rbx, r12
ja 0x14002037b
sub rbx, r12
sar rbx, 1
inc rbx
mov r9, rdi
lea rdx, [0x140107098]
mov r8, rbx
mov rcx, r12
call fcn.1400978ae
mov ebp, 2
lea r15d, [rbp - 1]
test eax, eax
je 0x14002049d
test rbx, rbx
je 0x14002049d
mov r9, rdi
lea rdx, str.UseUnsetLocal
mov r8, rbx
mov rcx, r12
call fcn.1400978ae
test eax, eax
jne 0x1400203fb
xor ebx, ebx
jmp 0x1400204a2
mov r9, rdi
lea rdx, str.UseUnsetGlobal
mov r8, rbx
mov rcx, r12
call fcn.1400978ae
test eax, eax
jne 0x140020420
mov ebx, r15d
jmp 0x1400204a2
mov r9, rdi
lea rdx, str.UseEnv
mov r8, rbx
mov rcx, r12
call fcn.1400978ae
test eax, eax
jne 0x140020445
lea ebx, [rax + 3]
jmp 0x1400204a2
mov r9, rdi
lea rdx, str.LocalSameAsGlobal
mov r8, rbx
mov rcx, r12
call fcn.1400978ae
test eax, eax
jne 0x140020469
mov ebx, ebp
jmp 0x1400204a2
mov r8, r14
lea rdx, str.Parameter_1_invalid.
mov rcx, r13
call fcn.14003c3c4
mov r12, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x88]
add rsp, 0x40
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret
mov ebx, 4
cmp word [rsi], 0
je 0x14002051a
lea rdx, str.MsgBox
mov rcx, rsi
call fcn.1400ba941
test eax, eax
je 0x14002051a
lea rdx, str.OutputDebug
mov rcx, rsi
call fcn.1400ba941
test eax, eax
jne 0x1400204e2
mov ebp, r15d
jmp 0x14002051a
lea rdx, str.StdOut
mov rcx, rsi
call fcn.1400ba941
test eax, eax
jne 0x140020501
lea ebp, [rax + 3]
jmp 0x14002051a
lea rdx, [0x140104488]
mov rcx, rsi
call fcn.1400ba941
test eax, eax
jne 0x14002057d
xor ebp, ebp
mov eax, dword [0x14018ac60]
test ebx, 0xfffffffb
cmove eax, ebp
mov dword [0x14018ac60], eax
cmp ebx, r15d
je 0x140020541
cmp ebx, 4
jne 0x140020547
mov dword [0x14018ac5c], ebp
mov ecx, dword [0x14018ac58]
lea eax, [rbx - 3]
cmp eax, r15d
lea eax, [rbx - 2]
cmovbe ecx, ebp
test eax, 0xfffffffd
mov eax, dword [0x14018ac54]
cmove eax, ebp
mov dword [0x14018ac58], ecx
mov dword [0x14018ac54], eax
mov eax, 3
jmp 0x14002047b
mov r8, r14
lea rdx, str.Parameter_2_invalid.
jmp 0x140020473
mov eax, 4
jmp 0x140020483