Function at 0x140023820
Capabilities:
Get keyboard layout

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x70
movzx r8d, word [0x140111474]
xor r13d, r13d
mov edi, SafeArrayAllocDescriptor
mov rsi, rdx
mov r14, rcx
mov dword [rax + 0x10], 0x90020
mov word [rax + 0x14], r8w
lea r12d, [rdi - 0x17]
mov word [rax + 0x16], r13w
mov rbx, rdx
test rdx, rdx
je 0x1400238a3
movzx edx, word [rdx]
test dx, dx
je 0x1400238a3
nop
lea rcx, [rsp + 0xa8]
mov eax, edi
nop word [rax + rax]
cmp dx, ax
je 0x140023923
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x140023880
movzx edx, word [rbx + 2]
add rbx, 2
test dx, dx
jne 0x140023870
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rsi
repne scasw ax, word [rdi]
not rcx
lea rbx, [rsi + rcx*2 - 2]
mov rdi, r13
sub rbx, rsi
lea rdx, str.Include
or r9, 0xffffffffffffffff
sar rbx, 1
mov rcx, rsi
mov r8, rbx
call fcn.1400abb90
test eax, eax
je 0x140023919
lea rdx, str.IncludeAgain
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
je 0x140023919
lea rdx, str.NoEnv
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023972
mov edx, 1
mov dword [0x140116940], edx
mov eax, 3
jmp 0x1400246bc
mov rdi, rbx
movzx eax, word [rdi]
cmp ax, 0x20
je 0x140023935
cmp ax, r12w
jne 0x14002393b
add rdi, 2
jmp 0x140023926
movzx eax, word [rdi]
test ax, ax
je 0x1400238b7
cmp ax, r8w
jne 0x1400238ba
movzx eax, word [rdi + 2]
add rdi, 2
cmp ax, 0x20
je 0x140023951
cmp ax, r12w
je 0x140023951
cmp ax, r13w
cmove rdi, r13
jmp 0x1400238ba
lea rdx, str.NoTrayIcon
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x14002399d
mov byte [0x140116913], 1
mov eax, 3
jmp 0x1400246bc
lea rdx, str.Persistent
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x1400239c8
mov byte [0x140116912], 1
mov eax, 3
jmp 0x1400246bc
lea rdx, str.SingleInstance
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023a72
mov edx, 1
mov dword [0x14011692c], edx
test rdi, rdi
je 0x140023a68
lea rdx, str.Force
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x140023a1c
mov edi, 2
mov dword [0x14011692c], edi
lea eax, [rdi + 1]
jmp 0x1400246bc
lea rdx, str.Ignore
mov rcx, rdi
call fcn.1400c8dac
test eax, eax
jne 0x140023a43
mov dword [0x14011692c], 3
mov eax, 3
jmp 0x1400246bc
lea rdx, [0x1400e41c0]
mov rcx, rdi
call fcn.1400c8dac
mov ecx, dword [0x14011692c]
mov edx, 4
test eax, eax
cmove ecx, edx
mov dword [0x14011692c], ecx
mov eax, 3
jmp 0x1400246bc
lea rdx, str.InstallKeybdHook
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023a9d
or byte [0x140117345], 1
mov eax, 3
jmp 0x1400246bc
lea rdx, str.InstallMouseHook
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023ac8
or byte [0x140117345], 2
mov eax, 3
jmp 0x1400246bc
lea rdx, str.UseHook
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023b0e
test rdi, rdi
je 0x140023afd
xor edx, edx
mov rcx, rdi
call fcn.14000c0e0
mov byte [0x140117331], r13b
cmp eax, 2
je 0x140023b04
mov byte [0x140117331], 1
mov eax, 3
jmp 0x1400246bc
lea rdx, [0x1400e2370]
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023bf4
test rdi, rdi
jne 0x140023b40
mov qword [0x140116958], r13
lea eax, [rdi + 3]
jmp 0x1400246bc
mov rcx, rdi
call fcn.14000c7d0
mov qword [0x140116958], rax
test rax, rax
jne 0x140023919
mov rax, qword [0x140111488]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov rsi, qword [rax + 0xd8]
mov qword [rax + 0xd8], r13
lea rbx, [0x1400e146c]
xor r9d, r9d
mov r8b, 0xe3
mov rdx, rdi
mov rcx, r14
mov qword [rsp + 0x28], r13
mov byte [r14 + 0x7d], 1
mov qword [rsp + 0x20], rbx
call fcn.140024ee0
test eax, eax
jne 0x140023ba9
xor eax, eax
jmp 0x1400246bc
mov rax, qword [0x140111488]
mov byte [r14 + 0x7d], r13b
mov qword [rax + 0xd8], rsi
mov rdi, qword [r14 + 8]
call fcn.14000c720
mov rdx, rax
mov qword [0x140116958], rax
test rax, rax
je 0x140023ba2
mov byte [rax], 5
mov qword [rax + 0x18], rdi
mov rax, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + 0x10], rbx
mov eax, 3
mov qword [rdx + 8], rcx
jmp 0x1400246bc
lea rdx, str.IfTimeout
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023c2b
test rdi, rdi
je 0x140023c21
mov rcx, rdi
call fcn.14001b8f0
mov dword [0x140111470], eax
mov eax, 3
jmp 0x1400246bc
mov qword [rsp + 0xa0], rbp
mov ebp, 6
lea rdx, str.IfWin
mov r8d, ebp
mov rcx, rsi
call fcn.1400c9004
test eax, eax
jne 0x140023df6
lea rcx, [rsi + 0xc]
lea r8d, [rbp - 3]
lea rdx, [0x1400e4370]
call fcn.1400c9004
lea rdx, str.Active
mov r8d, ebp
test eax, eax
mov eax, ebp
sete bl
test bl, bl
cmovne rax, r12
lea r12, [rsi + rax*2]
mov rcx, r12
call fcn.1400c9004
test eax, eax
jne 0x140023c98
test bl, bl
setne bpl
inc bpl
jmp 0x140023cbf
lea rdx, str.Exist
mov r8d, 5
mov rcx, r12
call fcn.1400c9004
test eax, eax
jne 0x140023dec
test bl, bl
setne bpl
add bpl, 3
test rdi, rdi
jne 0x140023cd3
mov qword [0x140116958], r13
lea eax, [rdi + 3]
jmp 0x1400246b4
movzx edx, word [0x140111474]
movzx r9d, word [0x14011147c]
movzx r8d, word [0x140111478]
mov r10, r13
mov rcx, rdi
movzx eax, word [rcx]
test ax, ax
je 0x140023d16
cmp ax, r9w
je 0x140023d45
cmp ax, dx
je 0x140023d45
cmp ax, r8w
je 0x140023d45
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x140023cf8
lea rbx, [0x1400e146c]
test r10, r10
je 0x140023db1
lea rsi, [r10 + 2]
nop word [rax + rax]
movzx eax, word [rsi]
cmp ax, 0x20
je 0x140023d3f
cmp ax, 9
jne 0x140023d90
add rsi, 2
jmp 0x140023d30
movzx eax, word [rcx]
test ax, ax
je 0x140023d16
cmp ax, r8w
je 0x140023d79
cmp ax, dx
jne 0x140023d66
test r10, r10
jne 0x140023d79
mov r10, rcx
add rcx, 2
jmp 0x140023cf0
add rcx, 2
cmp word [rcx], r13w
je 0x140023d16
add rcx, 2
jmp 0x140023cf0
lea rdx, str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
mov r8, rsi
mov rcx, r14
call fcn.14003ffa0
jmp 0x1400246b4
mov word [r10], r13w
sub r10, rdi
mov rcx, rdi
sar r10, 1
mov rdx, r10
call fcn.14001b870
mov dl, 1
mov rcx, rsi
call fcn.1400ae240
jmp 0x140023db4
mov rsi, rbx
mov dl, 1
mov rcx, rdi
call fcn.1400ae240
mov r8, rsi
mov rdx, rdi
movzx ecx, bpl
call fcn.14000c550
test eax, eax
jne 0x1400245ce
lea rdx, str.Out_of_memory.
mov r8, rbx
mov rcx, r14
call fcn.14003ffa0
jmp 0x1400246b4
mov eax, 4
jmp 0x1400246b4
lea rdx, [0x1400e7138]
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023f3c
test rdi, rdi
je 0x140023f32
lea rdx, str.EndChars
mov rcx, rdi
call fcn.1400abef0
test rax, rax
je 0x140023e7f
lea rdx, [0x1400e7150]
mov rcx, rax
call fcn.14000bff0
test rax, rax
je 0x1400245ce
lea rdx, [rax + 2]
lea rcx, str._____:____.___n__t
mov r8d, 0x64
call fcn.1400cbfa4
lea rcx, str._____:____.___n__t
xor edx, edx
mov word [0x140111558], r13w
call fcn.1400ae240
mov eax, 3
jmp 0x1400246b4
lea rdx, str.NoMouse
mov r8d, 7
mov rcx, rdi
call fcn.1400c9004
test eax, eax
jne 0x140023ea9
mov byte [0x140111476], r13b
mov eax, 3
jmp 0x1400246b4
lea rax, [0x140117317]
lea r9, [0x140111480]
lea r8, [0x140117310]
mov qword [rsp + 0x60], rax
lea rax, [0x140117316]
lea rdx, [0x14011726c]
mov qword [rsp + 0x58], rax
lea rax, [0x140117315]
mov rcx, rdi
mov qword [rsp + 0x50], rax
lea rax, [0x14011144b]
mov qword [rsp + 0x48], rax
lea rax, [0x140116956]
mov qword [rsp + 0x40], rax
lea rax, [0x140117314]
mov qword [rsp + 0x38], rax
lea rax, [0x14011144a]
mov qword [rsp + 0x30], rax
lea rax, [0x140110a03]
mov qword [rsp + 0x28], rax
lea rax, [0x140116957]
mov qword [rsp + 0x20], rax
call fcn.140012550
mov eax, 3
jmp 0x1400246b4
lea rdx, str.HotkeyModifierTimeout
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023f73
test rdi, rdi
je 0x140023f69
mov rcx, rdi
call fcn.1400142f0
mov dword [0x14011144c], eax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.HotkeyInterval
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023fb4
test rdi, rdi
je 0x140023faa
mov rcx, rdi
call fcn.1400142f0
mov ecx, 0xa
cmp eax, ecx
cmovl eax, ecx
mov dword [0x14011146c], eax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.MaxHotkeysPerInterval
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140023ff5
test rdi, rdi
je 0x140023feb
mov rcx, rdi
call fcn.1400142f0
mov edx, 1
cmp eax, edx
cmovl eax, edx
mov dword [0x140111468], eax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.MaxThreadsPerHotkey
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140024041
test rdi, rdi
je 0x140024037
mov rcx, rdi
call fcn.1400142f0
mov ecx, 0xff
cmp eax, ecx
jg 0x140024031
mov edx, 1
mov ecx, eax
cmp eax, edx
cmovl ecx, edx
mov byte [0x140110a02], cl
mov eax, 3
jmp 0x1400246b4
lea rdx, str.MaxThreadsBuffer
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140024087
test rdi, rdi
je 0x140024076
xor edx, edx
mov rcx, rdi
call fcn.14000c0e0
mov byte [0x140116954], r13b
cmp eax, 2
je 0x14002407d
mov byte [0x140116954], 1
mov eax, 3
jmp 0x1400246b4
lea rdx, str.MaxThreads
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x1400240d3
test rdi, rdi
je 0x1400240c9
mov rcx, rdi
call fcn.1400142f0
mov ecx, 0xff
cmp eax, ecx
jg 0x1400240c3
mov edx, 1
mov ecx, eax
cmp eax, edx
cmovl ecx, edx
mov dword [0x14011145c], ecx
mov eax, 3
jmp 0x1400246b4
lea rdx, str.ClipboardTimeout
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x14002410a
test rdi, rdi
je 0x140024100
mov rcx, rdi
call fcn.1400142f0
mov dword [0x140111450], eax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.LTrim
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140024150
test rdi, rdi
je 0x14002413f
xor edx, edx
mov rcx, rdi
call fcn.14000c0e0
mov byte [0x140117330], r13b
cmp eax, 2
je 0x140024146
mov byte [0x140117330], 1
mov eax, 3
jmp 0x1400246b4
lea rdx, str.WinActivateForce
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x14002417b
mov byte [0x140116910], 1
mov eax, 3
jmp 0x1400246b4
lea rdx, str.ErrorStdOut
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x1400241b6
mov rcx, rdi
mov byte [r14 + 0xbb3], 1
call fcn.14001d980
mov dword [r14 + 0xbb4], eax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.MaxMem
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140024255
test rdi, rdi
je 0x14002424b
mov rcx, rdi
call fcn.14001b920
movapd xmm5, xmm0
movsd xmm0, qword [0x1401002a8]
comisd xmm5, xmm0
ja 0x140024201
movsd xmm0, qword [0x1400ffd50]
comisd xmm0, xmm5
jbe 0x140024205
movapd xmm5, xmm0
mulsd xmm5, qword [0x1400ffd30]
movsd xmm0, qword [0x1400ffd88]
xor ecx, ecx
mulsd xmm5, qword [0x1400ffd30]
comisd xmm5, xmm0
jbe 0x14002423c
subsd xmm5, xmm0
comisd xmm5, xmm0
jae 0x14002423c
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm5
add rax, rcx
mov qword [0x140111460], rax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.KeyHistory
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x1400242ab
test rdi, rdi
je 0x1400242a1
mov rcx, rdi
call fcn.1400142f0
test eax, eax
jns 0x140024291
mov dword [0x140111458], r13d
mov eax, 3
jmp 0x1400246b4
mov ecx, 0x1f4
cmp eax, ecx
cmovg eax, ecx
mov dword [0x140111458], eax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.CommentFlag
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x1400243a5
test rdi, rdi
je 0x14002439b
cmp word [rdi + 2], r13w
jne 0x140024361
movzx eax, word [rdi]
cmp ax, 0x23
je 0x1400245b0
cmp ax, word [0x140111478]
je 0x1400245b0
cmp ax, word [0x14011147c]
je 0x1400245b0
cmp ax, word [0x140111474]
je 0x1400245b0
cmp ax, 0x21
je 0x1400245b0
cmp ax, 0x5e
je 0x1400245b0
cmp ax, 0x2b
je 0x1400245b0
cmp ax, 0x24
je 0x1400245b0
cmp ax, 0x7e
je 0x1400245b0
cmp ax, 0x2a
je 0x1400245b0
cmp ax, 0x3c
je 0x1400245b0
cmp ax, 0x3e
je 0x1400245b0
lea rcx, [0x140110a08]
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
mov rdx, rdi
call fcn.1400cbfa4
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [0x140110a08]
mov word [0x140110a26], r13w
repne scasw ax, word [rdi]
not rcx
dec rcx
mov qword [0x140110a28], rcx
mov eax, 3
jmp 0x1400246b4
lea rdx, str.EscapeChar
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140024421
test rdi, rdi
je 0x1400245ce
movzx eax, word [rdi]
cmp ax, 0x23
je 0x1400245b0
cmp ax, word [0x140111478]
je 0x1400245b0
cmp ax, word [0x140111474]
je 0x1400245b0
cmp ax, 0x2e
je 0x1400245b0
cmp qword [0x140110a28], 1
jne 0x140024410
cmp ax, word [0x140110a08]
je 0x1400245b0
mov word [0x14011147c], ax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.DerefChar
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x140024493
test rdi, rdi
je 0x1400245ce
movzx eax, word [rdi]
cmp ax, word [0x14011147c]
je 0x1400245b0
cmp ax, word [0x140111474]
je 0x1400245b0
cmp ax, 0x2e
je 0x1400245b0
cmp qword [0x140110a28], 1
jne 0x140024482
cmp ax, word [0x140110a08]
je 0x1400245b0
mov word [0x140111478], ax
mov eax, 3
jmp 0x1400246b4
lea rdx, [0x1400e7330]
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x14002450f
test rdi, rdi
je 0x1400245ce
movzx eax, word [rdi]
cmp ax, 0x23
je 0x1400245b0
cmp ax, word [0x14011147c]
je 0x1400245b0
cmp ax, word [0x140111478]
je 0x1400245b0
cmp ax, 0x2e
je 0x1400245b0
cmp qword [0x140110a28], 1
jne 0x1400244fe
cmp ax, word [0x140110a08]
je 0x1400245b0
mov word [0x140111474], ax
mov eax, 3
jmp 0x1400246b4
lea rdx, str.MenuMaskKey
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x14002457d
test rdi, rdi
je 0x140024558
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
lea r8, [0x140111448]
lea rdx, [0x140110a01]
xor r9d, r9d
mov rcx, rdi
mov qword [rsp + 0x20], rax
call fcn.14001a760
test al, al
jne 0x1400245ce
lea rax, str.Parameter_1_invalid.
test rdi, rdi
lea rdx, str.Parameter_1_required
mov r8, rsi
mov rcx, r14
cmovne rdx, rax
call fcn.14003ffa0
jmp 0x1400246b4
lea rdx, str.InputLevel
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x1400245d8
test rdi, rdi
je 0x1400245c7
mov rcx, rdi
call fcn.1400142f0
mov r13d, eax
test eax, eax
js 0x1400245b0
cmp eax, 0x64
jle 0x1400245c7
lea rdx, str.Parameter_1_invalid.
mov r8, rsi
mov rcx, r14
call fcn.14003ffa0
jmp 0x1400246b4
mov byte [0x140116955], r13b
mov eax, 3
jmp 0x1400246b4
lea rdx, str.Warn
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
jne 0x14002477f
movzx edx, word [0x140111474]
lea rbx, [0x1400e146c]
test rdi, rdi
mov r12, rbx
cmovne r12, rdi
mov rcx, r12
call fcn.1400c9dc4
test rax, rax
je 0x14002465d
lea rbx, [rax + 2]
nop
movzx ecx, word [rbx]
cmp cx, 0x20
je 0x14002462f
cmp cx, 9
jne 0x140024635
add rbx, 2
jmp 0x140024620
add rax, 0xfffffffffffffffe
cmp rax, r12
jbe 0x140024658
nop
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002464f
cmp cx, 9
jne 0x140024658
sub rax, 2
cmp rax, r12
ja 0x140024640
mov word [rax + 2], r13w
mov qword [rsp + 0xb0], r15
cmp word [r12], r13w
je 0x1400246d1
mov ebp, r13d
lea rdi, str.UseUnsetLocal
lea r15, [0x1401133b8]
nop dword [rax]
mov rdx, qword [rdi]
mov rcx, r12
call fcn.1400c8dac
test eax, eax
je 0x1400246d1
add rdi, 8
inc ebp
cmp rdi, r15
jne 0x140024680
mov r8, rsi
lea rdx, str.Parameter_1_invalid.
mov rcx, r14
call fcn.14003ffa0
mov r15, qword [rsp + 0xb0]
mov rbp, qword [rsp + 0xa0]
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret
mov edi, 2
cmp word [rbx], r13w
je 0x140024716
mov edi, r13d
lea rsi, [0x1401133b8]
lea r12, vtable.type_info.0
nop dword [rax]
mov rdx, qword [rsi]
mov rcx, rbx
call fcn.1400c8dac
test eax, eax
je 0x140024716
add rsi, 8
inc edi
cmp rsi, r12
jne 0x1400246f0
mov r8, rbx
lea rdx, str.Parameter_2_invalid.
jmp 0x1400246a4
test ebp, ebp
je 0x14002471f
cmp ebp, 6
jne 0x140024725
mov dword [0x140116914], edi
cmp ebp, 1
je 0x14002472f
cmp ebp, 6
jne 0x140024735
mov dword [0x140116918], edi
cmp ebp, 3
je 0x14002473f
cmp ebp, 6
jne 0x140024745
mov dword [0x14011691c], edi
cmp ebp, 2
je 0x14002474f
cmp ebp, 6
jne 0x140024755
mov dword [0x140116920], edi
cmp ebp, 4
je 0x14002475f
cmp ebp, 6
jne 0x140024765
mov dword [0x140116924], edi
cmp ebp, 5
je 0x14002476f
cmp ebp, 6
jne 0x140024775
mov dword [0x140116928], edi
mov eax, 3
jmp 0x1400246ac
lea rdx, str.Requires
or r9, 0xffffffffffffffff
mov r8, rbx
mov rcx, rsi
call fcn.1400abb90
test eax, eax
setne r13b
lea eax, [r13 + 3]
jmp 0x1400246b4