Function at 0x1400269f0
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 [0x140131460]
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 0x140026a73
movzx edx, word [rdx]
test dx, dx
je 0x140026a73
lea rcx, [rsp + 0x78]
mov eax, r9d
nop dword [rax + rax]
cmp dx, ax
je 0x140026afb
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x140026a50
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x140026a40
mov rax, rdi
nop word [rax + rax]
cmp word [r14 + rax*2 + 2], r15w
lea rax, [rax + 1]
jne 0x140026a80
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.1400a6790
test eax, eax
je 0x140026af1
mov r9, rdi
lea rdx, str.IncludeAgain
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
je 0x140026af1
mov r9, rdi
lea rdx, str.5wc7giln5Nr870E67WAeXMQf6TOMHVqEr3Cuy7cRjaGK9Pl0lflbqgUNn8pkM83PwZT0fwlXhigwHaXfR5Xtyi2JmYwXqh4bG4MVg22wEexRQ859x
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026b4c
mov r15d, 1
mov dword [0x140131484], r15d
mov eax, 3
jmp 0x140027a5d
mov rbx, rsi
nop
movzx eax, word [rbx]
cmp ax, r9w
je 0x140026b0f
cmp ax, 9
jne 0x140026b15
add rbx, 2
jmp 0x140026b00
movzx eax, word [rbx]
test ax, ax
je 0x140026a90
cmp ax, r8w
jne 0x140026a93
movzx eax, word [rbx + 2]
add rbx, 2
cmp ax, r9w
je 0x140026b2b
cmp ax, 9
je 0x140026b2b
cmp ax, r15w
cmove rbx, r15
jmp 0x140026a93
mov r9, rdi
lea rdx, str.xt84GgF1cNv9RxEr9CtNvnQwZ86xVNlBBeY3u2TPDiSBfIUfDvXr0xrK6P8yI9q43QerCPa2APk2A00H9IOu9wqTKq6JNEbnm1qRGZxBZcTt41TJoqOhDEc50ZHi
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026b76
mov byte [0x1401344f7], 1
mov eax, 3
jmp 0x140027a5d
mov r9, rdi
lea rdx, str.KTSOoeMpyKKMoUUZaMSuA8I6NKV1kEYtzBweso4vvDK5K7qahXyTc4RVFXrj4xba0J4iA7XKy1OuOVbOQjGat97yDxBrCilgizsBKgf1gAaa6OuERwX
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026ba0
mov byte [0x140134434], 1
mov eax, 3
jmp 0x140027a5d
mov r9, rdi
mov qword [rsp + 0x70], rbp
mov r8, rsi
lea rdx, str.oXshnjqWusNEfes6VTZN3nXsHqQvgsTTANsCmTV74iOkyNwVvzyIzTbPcUyDPSCqhWSaoiviDp79PNKQ7APH8GRrBhvqseHf5K7hvPJGPklbYIAgAGe7CIo4RR
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026c50
mov r15d, 1
mov dword [0x140134458], r15d
test rbx, rbx
je 0x140026c46
lea rdx, str.Force
mov rcx, rbx
call fcn.1400c8580
test eax, eax
jne 0x140026bfa
mov ebp, 2
mov dword [0x140134458], ebp
lea eax, [rbp + 1]
jmp 0x140027a58
lea rdx, str.Ignore
mov rcx, rbx
call fcn.1400c8580
test eax, eax
jne 0x140026c21
mov dword [0x140134458], 3
mov eax, 3
jmp 0x140027a58
lea rdx, [0x14010c610]
mov rcx, rbx
call fcn.1400c8580
mov ecx, dword [0x140134458]
test eax, eax
mov ebx, 4
cmove ecx, ebx
mov dword [0x140134458], ecx
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.TZuSKuw36xeb1kXlp0etOwcYCexrg74rD8zRJxo0ZA38Vw8DCGiKC5tyTUgn6Z50rsWBvNntBY0zpkGLmBkgoyqQeYRjaYXW8QpVq8HFQRO6Yxr8TyM0DUX
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026c7a
or byte [0x14013535b], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.X07jb5oOf0BQDkkHxccAsOn1Oja6j1bCFkDcLfaZvVFGLsPR1No0EGChAnw8aJ8wz0psEsDTT85SgbvjuVx9Euf6W9wAWfs03sQshTClkuKvoROEsiiIsCoDxt
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026ca4
or byte [0x14013535b], 2
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.kzZSQJY777uR6UMI4SNiHMy6cSBu0AkoLaMDY5vStaIlHIXZ4VKHHRlmgvVWIbsBHYyDwenr0IyyGjztybh7ck5vjpk1sxrjgCzGtnT6ci5o5s1vNauzH7Sm
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026ce9
test rbx, rbx
je 0x140026cd8
xor edx, edx
mov rcx, rbx
call fcn.140020e20
mov byte [0x1401344d6], r15b
cmp eax, 2
je 0x140026cdf
mov byte [0x1401344d6], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, [0x1400f88b0]
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026e22
lea rsi, [0x140117ad8]
test rbx, rbx
jne 0x140026d35
mov byte [0x1401344ea], r15b
lea eax, [rbx + 3]
mov qword [0x140131478], rsi
mov qword [0x140131470], rsi
mov dword [0x140131468], edi
jmp 0x140027a58
mov rax, qword [0x14012fa58]
xor r9d, r9d
mov qword [rsp + 0x38], r15
mov r8b, 0xe3
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 + 0x35], 1
mov qword [rsp + 0x20], rsi
call fcn.1400281f0
test eax, eax
je 0x140027a58
mov rax, qword [0x14012fa58]
mov edx, dword [0x1401351f0]
mov byte [r13 + 0x35], r15b
mov byte [0x1401344ea], 5
mov qword [rax + 0xd8], rdi
mov rbx, qword [r13 + 0x660]
mov qword [0x140131470], rsi
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [0x140131478], rcx
mov ecx, dword [0x1401351f4]
lea eax, [rcx + 1]
cmp eax, edx
jle 0x140026dfc
mov rcx, qword [0x1401351f8]
add edx, 0x64
mov dword [0x1401351f0], edx
movsxd rdx, edx
shl rdx, 3
call fcn.1400cc45c
mov qword [0x1401351f8], rax
mov rdx, rax
test rax, rax
je 0x140027023
mov ecx, dword [0x1401351f4]
jmp 0x140026e03
mov rdx, qword [0x1401351f8]
movsxd rax, ecx
inc ecx
mov dword [0x140131468], eax
mov dword [0x1401351f4], ecx
mov qword [rdx + rax*8], rbx
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.IfTimeout
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140026e58
test rbx, rbx
je 0x140026e4e
mov rcx, rbx
call fcn.14001cf30
mov dword [0x140131464], eax
mov eax, 3
jmp 0x140027a58
mov r8d, 6
lea rdx, str.IfWin
mov rcx, r14
call fcn.1400cab68
test eax, eax
jne 0x14002703a
lea rcx, [r14 + 0xc]
lea r8d, [rax + 3]
lea rdx, [0x14010c7b0]
call fcn.1400cab68
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.1400cab68
test eax, eax
jne 0x140026ec5
inc sil
mov byte [0x1401344ea], sil
jmp 0x140026ef0
mov r8d, 5
lea rdx, str.Exist
mov rcx, rbp
call fcn.1400cab68
test eax, eax
jne 0x140027b68
test sil, sil
setne al
add al, 3
mov byte [0x1401344ea], al
mov dword [0x140131468], edi
test rbx, rbx
jne 0x140026f1f
lea rsi, [0x140117ad8]
mov byte [0x1401344ea], r15b
mov qword [0x140131478], rsi
lea eax, [rbx + 3]
mov qword [0x140131470], rsi
jmp 0x140027a58
movzx edx, word [0x140131460]
mov r10, r15
movzx r9d, word [0x14013138c]
mov rcx, rbx
movzx r8d, word [0x14013145c]
nop dword [rax]
movzx eax, word [rcx]
test ax, ax
je 0x140026f66
cmp ax, r9w
je 0x140026f95
cmp ax, dx
je 0x140026f95
cmp ax, r8w
je 0x140026f95
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x140026f48
lea rsi, [0x140117ad8]
test r10, r10
je 0x140027002
lea rdi, [r10 + 2]
nop word [rax + rax]
movzx eax, word [rdi]
cmp ax, 0x20
je 0x140026f8f
cmp ax, 9
jne 0x140026fe0
add rdi, 2
jmp 0x140026f80
movzx eax, word [rcx]
test ax, ax
je 0x140026f66
cmp ax, r8w
je 0x140026fc9
cmp ax, dx
jne 0x140026fb6
test r10, r10
jne 0x140026fc9
mov r10, rcx
add rcx, 2
jmp 0x140026f40
add rcx, 2
cmp word [rcx], r15w
je 0x140026f66
add rcx, 2
jmp 0x140026f40
mov r8, r14
lea rdx, str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
mov rcx, r13
call fcn.1400410d0
jmp 0x140027a58
mov word [r10], r15w
mov rcx, rbx
sub r10, rbx
sar r10, 1
mov rdx, r10
call fcn.14001f620
mov r8b, 1
mov rcx, rdi
call fcn.1400a8eb0
jmp 0x140027005
mov rdi, rsi
mov r8b, 1
mov rcx, rbx
call fcn.1400a8eb0
mov rdx, rdi
mov rcx, rbx
call fcn.14000b6a0
test eax, eax
jne 0x1400278f8
mov r8, rsi
lea rdx, str.Out_of_memory.
mov rcx, r13
call fcn.1400410d0
jmp 0x140027a58
mov r9, rdi
lea rdx, str.Hotstring
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x14002727b
test rbx, rbx
je 0x1400278f8
lea rdx, str.EndChars
mov rcx, rbx
call fcn.1400a6ae0
test rax, rax
je 0x1400270c3
lea rdx, [0x14010fbe4]
mov rcx, rax
call fcn.14000b180
test rax, rax
je 0x1400278f8
lea rdx, [rax + 2]
mov r8d, 0x64
lea rcx, str._____:____.___n__t
call fcn.1400cc9b8
xor r8d, r8d
mov word [0x140131458], r15w
lea rcx, str._____:____.___n__t
call fcn.1400a8eb0
mov eax, 3
jmp 0x140027a58
mov r8d, 7
lea rdx, str.NoMouse
mov rcx, rbx
call fcn.1400cab68
test eax, eax
jne 0x1400270ed
mov byte [0x14013131c], r15b
mov eax, 3
jmp 0x140027a58
cmp word [rbx], r15w
je 0x1400278f8
mov ebp, 2
lea r14, sym.MZ_kiv9nMDWjqg_I7rrTcpI88_u4Z_bB_FPuaQ9q_
movzx eax, word [rbx]
cmp ax, 0x3a
je 0x1400278f8
movzx edi, ax
lea rsi, [rbx + 2]
test edi, 0xffffff80
jne 0x14002712f
mov edx, ebp
mov ecx, edi
call fcn.1400cb124
test eax, eax
je 0x14002712f
and edi, 0xffffffdf
movzx eax, di
add eax, 0xffffffd6
cmp eax, 0x30
ja case.0x140027154.52
cdqe
movzx eax, byte [r14 + rax + 0x27ba0]
mov ecx, dword [r14 + rax*4 + 0x27b74]
add rcx, r14
jmp rcx
cmp word [rsi], 0x30
sete byte [0x14013131d]
jmp case.0x140027154.52
cmp word [rsi], 0x30
setne byte [0x1401344db]
jmp case.0x140027154.52
cmp word [rsi], 0x30
setne byte [0x14013131e]
jmp case.0x140027154.52
movzx eax, word [rsi]
cmp ax, 0x30
jne 0x1400271a2
mov byte [0x14013131f], 1
mov byte [0x1401344e2], r15b
jmp case.0x140027154.52
mov byte [0x14013131f], r15b
cmp ax, 0x31
jne 0x1400271bb
mov byte [0x1401344e2], r15b
jmp case.0x140027154.52
mov byte [0x1401344e2], 1
jmp case.0x140027154.52
cmp word [rsi], 0x30
setne byte [0x1401344df]
jmp case.0x140027154.52
mov rcx, rsi
call fcn.1400cc148
mov dword [0x14013465c], eax
jmp case.0x140027154.52
mov rcx, rsi
call fcn.1400cc148
mov dword [0x140134670], eax
jmp case.0x140027154.52
cmp word [rsi], 0x30
setne byte [0x1401344de]
jmp case.0x140027154.52
movzx eax, word [rsi]
test ax, ax
mov edi, eax
cmove rsi, rbx
mov rbx, rsi
test eax, 0xffffff80
jne 0x14002722a
mov edx, ebp
mov ecx, eax
call fcn.1400cb124
test eax, eax
je 0x14002722a
and edi, 0xffffffdf
movzx eax, di
cmp eax, 0x45
je 0x140027250
cmp eax, 0x49
je 0x140027244
cmp eax, 0x50
jne case.0x140027154.52
mov dword [0x140131388], ebp
jmp case.0x140027154.52
mov dword [0x140131388], 3
jmp case.0x140027154.52
mov dword [0x140131388], r15d
jmp case.0x140027154.52
cmp word [rsi], 0x30
setne byte [0x1401344da]
add rbx, rbp
cmp word [rbx], r15w
jne 0x140027103
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.HotkeyModifierTimeout
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400272b1
test rbx, rbx
je 0x1400272a7
mov rcx, rbx
call fcn.14000f080
mov dword [0x140131490], eax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.HotkeyInterval
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400272f1
test rbx, rbx
je 0x1400272e7
mov rcx, rbx
call fcn.14000f080
mov ecx, 0xa
cmp eax, ecx
cmovl eax, ecx
mov dword [0x14013146c], eax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.MaxHotkeysPerInterval
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027334
test rbx, rbx
je 0x14002732a
mov rcx, rbx
call fcn.14000f080
mov r15d, 1
cmp eax, r15d
cmovl eax, r15d
mov dword [0x140131480], eax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.MaxThreadsPerHotkey
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027382
test rbx, rbx
je 0x140027378
mov rcx, rbx
call fcn.14000f080
mov ecx, 0xff
cmp eax, ecx
jg 0x140027372
mov r15d, 1
mov ecx, eax
cmp eax, r15d
cmovl ecx, r15d
mov byte [0x14013138e], cl
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.GzYZig4EYm4RjDW9r1Fcvvu72UzfmkpafeWO7zIJuauGPyXjziKbiVrre60piye5fsN5GBv2ul66DxSCEvqIv8No086lQxZAl22NLLeAkrE2W3MM5wjsT7Bic
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400273c7
test rbx, rbx
je 0x1400273b6
xor edx, edx
mov rcx, rbx
call fcn.140020e20
mov byte [0x1401344ee], r15b
cmp eax, 2
je 0x1400273bd
mov byte [0x1401344ee], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.MaxThreads
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027415
test rbx, rbx
je 0x14002740b
mov rcx, rbx
call fcn.14000f080
mov ecx, 0xff
cmp eax, ecx
jg 0x140027405
mov r15d, 1
mov ecx, eax
cmp eax, r15d
cmovl ecx, r15d
mov dword [0x14012fa54], ecx
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.ClipboardTimeout
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x14002744b
test rbx, rbx
je 0x140027441
mov rcx, rbx
call fcn.14000f080
mov dword [0x14012fa64], eax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.LTrim
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027490
test rbx, rbx
je 0x14002747f
xor edx, edx
mov rcx, rbx
call fcn.140020e20
mov byte [0x1401344d7], r15b
cmp eax, 2
je 0x140027486
mov byte [0x1401344d7], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.vVv8hFzn0Cquhf0JHyK58eQXqIJzc4X6KeAwHKvilJ5qTVRsHfUsOmwej0MJa6Rytm5foXce83rwnSk2O8pwwM2OJfRa64YojfRqsa7RAgqnnpTbQg
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400274ba
mov byte [0x1401344fe], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.RQpbAqj9JgsiiAL944GezqUTbe8KNFA6S4wjUA5ISuhuMr7HNNFFN6WOSDR3L3PTyT6xUDGfaN4kwaDQfAJGuMneFLbAAZwztJ9YYxUl40OSizI
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400274e5
mov byte [r13 + 0xbc3], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.NmMjR0H4VQPE6QOPVfXpvsZrNkibBv4rNGYb6NtFsqkXAGpOSyjN2W0ppMGbU0ms1Ir6OAOIbatMPTDtamD12ZLKNxXSgt0SNq2UFSYu8Ur6cl3MI
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027575
test rbx, rbx
je 0x14002756b
mov rcx, rbx
call fcn.14001f720
movsd xmm1, qword [0x14011bb80]
comisd xmm0, xmm1
ja 0x140027525
movsd xmm1, qword [0x14011bb28]
maxsd xmm1, xmm0
mulsd xmm1, qword [0x14011bb70]
xor ecx, ecx
movsd xmm0, qword [0x14011bbd8]
mulsd xmm1, qword [0x14011bb70]
comisd xmm1, xmm0
jb 0x14002755c
subsd xmm1, xmm0
comisd xmm1, xmm0
jae 0x14002755c
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm1
add rax, rcx
mov qword [0x140131488], rax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.KeyHistory
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400275ca
test rbx, rbx
je 0x1400275c0
mov rcx, rbx
call fcn.14000f080
test eax, eax
jns 0x1400275b0
mov dword [0x14012fa60], r15d
mov eax, 3
jmp 0x140027a58
mov ecx, 0x1f4
cmp eax, ecx
cmovg eax, ecx
mov dword [0x14012fa60], eax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.cnnI3qxroG2pXMc4AM1Nl9nXzrbxgRswbMqmhY5PPinwHFncJ3pjRDe4Etl7e0qRcaWTZb7w5nR2rKENHC25HOfJNnqiq9EsxOGT1oT
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x14002768d
test rbx, rbx
je 0x140027683
cmp word [rbx + 2], r15w
jne 0x140027652
movzx ecx, word [rbx]
cmp cx, 0x23
je 0x140027891
cmp cx, word [0x14013145c]
je 0x140027891
cmp cx, word [0x14013138c]
je 0x140027891
cmp cx, word [0x140131460]
je 0x140027891
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x140027648
movabs rdx, 0x2000000028000609
bt rdx, rax
jb 0x140027891
cmp cx, 0x7e
je 0x140027891
mov rdx, rbx
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
lea rbx, [0x140131f08]
mov rcx, rbx
call fcn.1400cc9b8
mov word [0x140131f26], r15w
inc rdi
cmp word [rbx + rdi*2], r15w
jne 0x140027672
mov qword [0x140131f00], rdi
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.EscapeChar
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027708
test rbx, rbx
je 0x1400278f8
movzx eax, word [rbx]
cmp ax, 0x23
je 0x140027891
cmp ax, word [0x14013145c]
je 0x140027891
cmp ax, word [0x140131460]
je 0x140027891
cmp ax, 0x2e
je 0x140027891
cmp qword [0x140131f00], 1
jne 0x1400276f7
cmp ax, word [0x140131f08]
je 0x140027891
mov word [0x14013138c], ax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.DerefChar
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027779
test rbx, rbx
je 0x1400278f8
movzx eax, word [rbx]
cmp ax, word [0x14013138c]
je 0x140027891
cmp ax, word [0x140131460]
je 0x140027891
cmp ax, 0x2e
je 0x140027891
cmp qword [0x140131f00], 1
jne 0x140027768
cmp ax, word [0x140131f08]
je 0x140027891
mov word [0x14013145c], ax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, [0x140110218]
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400277f4
test rbx, rbx
je 0x1400278f8
movzx eax, word [rbx]
cmp ax, 0x23
je 0x140027891
cmp ax, word [0x14013138c]
je 0x140027891
cmp ax, word [0x14013145c]
je 0x140027891
cmp ax, 0x2e
je 0x140027891
cmp qword [0x140131f00], 1
jne 0x1400277e3
cmp ax, word [0x140131f08]
je 0x140027891
mov word [0x140131460], ax
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.MenuMaskKey
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027863
test rbx, rbx
je 0x14002783e
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.140014c80
mov byte [reloc.OLEAUT32.dll_SafeArrayGetElemsize], al
test al, al
jne 0x1400278f8
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.1400410d0
jmp 0x140027a58
mov r9, rdi
lea rdx, str.InputLevel
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x1400278b9
test rbx, rbx
je 0x1400278a8
mov rcx, rbx
call fcn.14000f080
mov r15d, eax
cmp eax, 0x64
jbe 0x1400278a8
mov r8, r14
lea rdx, str.Parameter_1_invalid.
mov rcx, r13
call fcn.1400410d0
jmp 0x140027a58
mov byte [0x1401344eb], r15b
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.WarnContinuableException
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027902
test rbx, rbx
je 0x1400278f1
lea rdx, [0x14010c610]
mov rcx, rbx
call fcn.1400c8580
mov byte [0x14013138f], r15b
test eax, eax
je 0x1400278f8
mov byte [0x14013138f], 1
mov eax, 3
jmp 0x140027a58
mov r9, rdi
lea rdx, str.Warn
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027b3f
movzx edx, word [0x140131460]
test rbx, rbx
mov qword [rsp + 0x80], r12
lea r12, [0x1401102e0]
cmovne r12, rbx
mov rcx, r12
call fcn.1400c6908
lea rsi, [0x140117ad8]
mov rbx, rdi
test rax, rax
je 0x140027996
lea rsi, [rax + 2]
movzx ecx, word [rsi]
cmp cx, 0x20
je 0x140027966
cmp cx, 9
jne 0x14002796c
add rsi, 2
jmp 0x140027957
lea rbx, [rax - 2]
cmp rbx, r12
jbe 0x14002798d
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140027984
cmp ax, 9
jne 0x14002798d
sub rbx, 2
cmp rbx, r12
ja 0x140027975
sub rbx, r12
sar rbx, 1
inc rbx
mov r9, rdi
lea rdx, [0x1401102e0]
mov r8, rbx
mov rcx, r12
call fcn.1400a6790
mov ebp, 2
lea r15d, [rbp - 1]
test eax, eax
je 0x140027a72
test rbx, rbx
je 0x140027a72
mov r9, rdi
lea rdx, str.UseUnsetLocal
mov r8, rbx
mov rcx, r12
call fcn.1400a6790
test eax, eax
jne 0x1400279e5
xor ebx, ebx
jmp 0x140027a77
mov r9, rdi
lea rdx, str.UseUnsetGlobal
mov r8, rbx
mov rcx, r12
call fcn.1400a6790
test eax, eax
jne 0x140027a03
mov ebx, r15d
jmp 0x140027a77
mov r9, rdi
lea rdx, str.UseEnv
mov r8, rbx
mov rcx, r12
call fcn.1400a6790
test eax, eax
jne 0x140027a21
lea ebx, [rax + 3]
jmp 0x140027a77
mov r9, rdi
lea rdx, str.LocalSameAsGlobal
mov r8, rbx
mov rcx, r12
call fcn.1400a6790
test eax, eax
jne 0x140027a3e
mov ebx, ebp
jmp 0x140027a77
mov r8, r14
lea rdx, str.Parameter_1_invalid.
mov rcx, r13
call fcn.1400410d0
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 0x140027ad5
lea rdx, str.MsgBox
mov rcx, rsi
call fcn.1400c8580
test eax, eax
je 0x140027ad5
lea rdx, str.OutputDebug
mov rcx, rsi
call fcn.1400c8580
test eax, eax
jne 0x140027aa8
mov ebp, r15d
jmp 0x140027ad5
lea rdx, str.StdOut
mov rcx, rsi
call fcn.1400c8580
test eax, eax
jne 0x140027ac0
lea ebp, [rax + 3]
jmp 0x140027ad5
lea rdx, [0x14010c610]
mov rcx, rsi
call fcn.1400c8580
test eax, eax
jne 0x140027b30
xor ebp, ebp
mov eax, dword [0x14013521c]
test ebx, 0xfffffffb
cmove eax, ebp
mov dword [0x14013521c], eax
cmp ebx, r15d
je 0x140027af4
cmp ebx, 4
jne 0x140027afa
mov dword [0x140135218], ebp
mov ecx, dword [0x140135214]
lea eax, [rbx - 3]
cmp eax, r15d
lea eax, [rbx - 2]
cmovbe ecx, ebp
test eax, 0xfffffffd
mov eax, dword [0x140135210]
cmove eax, ebp
mov dword [0x140135214], ecx
mov dword [0x140135210], eax
mov eax, 3
jmp 0x140027a50
mov r8, r14
lea rdx, str.Parameter_2_invalid.
jmp 0x140027a48
mov r9, rdi
lea rdx, [0x1401103c8]
mov r8, rsi
mov rcx, r14
call fcn.1400a6790
test eax, eax
jne 0x140027b68
mov rdx, r14
mov rcx, rbx
call fcn.1400a92d0
jmp 0x140027a58
mov eax, 4
jmp 0x140027a58