Function at 0x14001a290
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 [0x1400ef424]
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 0x14001a323
movzx edx, word [rdx]
test dx, dx
je 0x14001a323
nop word [rax + rax]
lea rcx, [rsp + 0x98]
mov eax, r9d
nop dword [rax + rax]
cmp dx, ax
je 0x14001a3a9
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001a300
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x14001a2f0
mov rax, rdi
nop word [rax + rax]
cmp word [r14 + rax*2 + 2], r15w
lea rax, [rax + 1]
jne 0x14001a330
lea rsi, [r14 + rax*2]
mov rbx, r15
sub rsi, r14
lea rdx, [0x1400d2dd8]
sar rsi, 1
mov r9, rdi
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
je 0x14001a39f
mov r9, rdi
lea rdx, [0x1400d2df0]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
je 0x14001a39f
mov r9, rdi
lea rdx, [0x1400d2e10]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a3fa
mov ebp, 1
mov dword [0x1400f22cc], ebp
mov eax, 3
jmp 0x14001b267
mov rbx, rsi
nop dword [rax]
movzx eax, word [rbx]
cmp ax, r9w
je 0x14001a3be
cmp ax, bp
jne 0x14001a3c4
add rbx, 2
jmp 0x14001a3b0
movzx eax, word [rbx]
test ax, ax
je 0x14001a340
cmp ax, r8w
jne 0x14001a343
movzx eax, word [rbx + 2]
add rbx, 2
cmp ax, r9w
je 0x14001a3da
cmp ax, bp
je 0x14001a3da
cmp ax, r15w
cmove rbx, r15
jmp 0x14001a343
mov r9, rdi
lea rdx, [0x1400d2e20]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a424
mov byte [0x1400f22d1], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2e38]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a44e
mov byte [0x1400f154c], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2e50]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a4f9
mov ebp, 1
mov dword [0x1400f1568], ebp
test rbx, rbx
je 0x14001a4ef
lea rdx, [0x1400d2e70]
mov rcx, rbx
call fcn.140099630
test eax, eax
jne 0x14001a4a3
mov r15d, 2
lea eax, [rbp + 2]
mov dword [0x1400f1568], r15d
jmp 0x14001b267
lea rdx, [0x1400d2e80]
mov rcx, rbx
call fcn.140099630
test eax, eax
jne 0x14001a4ca
mov dword [0x1400f1568], 3
mov eax, 3
jmp 0x14001b267
lea rdx, [0x1400d14b8]
mov rcx, rbx
call fcn.140099630
mov ecx, dword [0x1400f1568]
test eax, eax
mov ebx, 4
cmove ecx, ebx
mov dword [0x1400f1568], ecx
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2e90]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a523
or byte [0x1400f22f7], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2eb8]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a54d
or byte [0x1400f22f7], 2
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2ee0]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a592
test rbx, rbx
je 0x14001a581
xor edx, edx
mov rcx, rbx
call fcn.140015730
mov byte [0x1400f15b4], r15b
cmp eax, 2
je 0x14001a588
mov byte [0x1400f15b4], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400bf948]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a6c8
lea rsi, [0x1400bdf7c]
test rbx, rbx
jne 0x14001a5de
mov byte [0x1400f17f6], r15b
lea eax, [rbx + 3]
mov qword [0x1400ef438], rsi
mov qword [0x1400ef430], rsi
mov dword [0x1400ef42c], edi
jmp 0x14001b267
mov rax, qword [0x1400edaa8]
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.14001b830
test eax, eax
je 0x14001b267
mov rax, qword [0x1400edaa8]
mov edx, dword [0x1400f22a8]
mov byte [r13 + 0x75], r15b
mov byte [0x1400f17f6], 5
mov qword [rax + 0xd8], rdi
mov rbx, qword [r13 + 8]
mov qword [0x1400ef430], rsi
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [0x1400ef438], rcx
mov ecx, dword [0x1400f22ac]
lea eax, [rcx + 1]
cmp eax, edx
jle 0x14001a6a2
mov rcx, qword [0x1400f22b0]
add edx, 0x64
mov dword [0x1400f22a8], edx
movsxd rdx, edx
shl rdx, 3
call fcn.14009d504
mov qword [0x1400f22b0], rax
mov rdx, rax
test rax, rax
je 0x14001a8c3
mov ecx, dword [0x1400f22ac]
jmp 0x14001a6a9
mov rdx, qword [0x1400f22b0]
movsxd rax, ecx
inc ecx
mov dword [0x1400ef42c], eax
mov dword [0x1400f22ac], ecx
mov qword [rdx + rax*8], rbx
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2ef8]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a6fe
test rbx, rbx
je 0x14001a6f4
mov rcx, rbx
call fcn.140014270
mov dword [0x1400ef428], eax
mov eax, 3
jmp 0x14001b267
mov r8d, 6
lea rdx, [0x1400d2f10]
mov rcx, r14
call fcn.14009bc18
test eax, eax
jne 0x14001a8e4
lea rcx, [r14 + 0xc]
lea r8d, [rax + 3]
lea rdx, [0x1400d1660]
call fcn.14009bc18
test eax, eax
lea rdx, [0x1400d1668]
mov eax, 6
mov r8d, 6
sete sil
test sil, sil
cmovne rax, rbp
lea rbp, [r14 + rax*2]
mov rcx, rbp
call fcn.14009bc18
test eax, eax
jne 0x14001a768
test sil, sil
setne al
inc al
jmp 0x14001a78d
mov r8d, 5
lea rdx, [0x1400d1498]
mov rcx, rbp
call fcn.14009bc18
test eax, eax
jne 0x14001a8da
test sil, sil
setne al
add al, 3
mov byte [0x1400f17f6], al
mov dword [0x1400ef42c], edi
test rbx, rbx
jne 0x14001a7c2
lea rsi, [0x1400bdf7c]
mov byte [0x1400f17f6], r15b
mov qword [0x1400ef438], rsi
lea eax, [rbx + 3]
mov qword [0x1400ef430], rsi
jmp 0x14001b267
movzx edx, word [0x1400ef424]
mov r10, r15
movzx r9d, word [0x1400ef41c]
mov rcx, rbx
movzx r8d, word [0x1400ef420]
nop
movzx eax, word [rcx]
test ax, ax
je 0x14001a806
cmp ax, r9w
je 0x14001a835
cmp ax, dx
je 0x14001a835
cmp ax, r8w
je 0x14001a835
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001a7e8
lea rsi, [0x1400bdf7c]
test r10, r10
je 0x14001a8a2
lea rdi, [r10 + 2]
nop word [rax + rax]
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14001a82f
cmp ax, 9
jne 0x14001a880
add rdi, 2
jmp 0x14001a820
movzx eax, word [rcx]
test ax, ax
je 0x14001a806
cmp ax, r8w
je 0x14001a869
cmp ax, dx
jne 0x14001a856
test r10, r10
jne 0x14001a869
mov r10, rcx
add rcx, 2
jmp 0x14001a7e0
add rcx, 2
cmp word [rcx], r15w
je 0x14001a806
add rcx, 2
jmp 0x14001a7e0
mov r8, r14
lea rdx, [0x1400d2f20]
mov rcx, r13
call fcn.140031460
jmp 0x14001b267
mov word [r10], r15w
mov rcx, rbx
sub r10, rbx
sar r10, 1
mov rdx, r10
call fcn.140014170
mov r8b, 1
mov rcx, rdi
call fcn.14007c800
jmp 0x14001a8a5
mov rdi, rsi
mov r8b, 1
mov rcx, rbx
call fcn.14007c800
mov rdx, rdi
mov rcx, rbx
call fcn.14000ab70
test eax, eax
jne 0x14001a39f
mov r8, rsi
lea rdx, [0x1400d1750]
mov rcx, r13
call fcn.140031460
jmp 0x14001b267
mov eax, 4
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2f98]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001aa1e
test rbx, rbx
je 0x14001a39f
lea rdx, [0x1400d2fb0]
mov rcx, rbx
call fcn.14007a410
test rax, rax
je 0x14001a96d
lea rdx, [0x1400d2fc4]
mov rcx, rax
call fcn.14000a670
test rax, rax
je 0x14001a39f
lea rdx, [rax + 2]
mov r8d, 0x64
lea rcx, [0x1400ef350]
call fcn.1400a2664
xor r8d, r8d
mov word [0x1400ef418], r15w
lea rcx, [0x1400ef350]
call fcn.14007c800
mov eax, 3
jmp 0x14001b267
mov r8d, 7
lea rdx, [0x1400d2fd0]
mov rcx, rbx
call fcn.14009bc18
test eax, eax
jne 0x14001a997
mov byte [0x1400ef348], r15b
mov eax, 3
jmp 0x14001b267
lea rax, [0x1400f15b6]
mov rcx, rbx
mov qword [rsp + 0x58], rax
lea r9, [0x1400ef34c]
lea rax, [0x1400f15b7]
mov qword [rsp + 0x50], rax
lea r8, [0x1400f1720]
lea rax, [0x1400ef349]
mov qword [rsp + 0x48], rax
lea rdx, [0x1400f1724]
lea rax, [0x1400f15bc]
mov qword [rsp + 0x40], rax
lea rax, [0x1400f15bd]
mov qword [rsp + 0x38], rax
lea rax, [0x1400ef34a]
mov qword [rsp + 0x30], rax
lea rax, [0x1400ef34b]
mov qword [rsp + 0x28], rax
lea rax, [0x1400f15be]
mov qword [rsp + 0x20], rax
call fcn.14000e090
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2fe0]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001aa54
test rbx, rbx
je 0x14001aa4a
mov rcx, rbx
call fcn.14000e350
mov dword [0x1400ef450], eax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3010]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001aa94
test rbx, rbx
je 0x14001aa8a
mov rcx, rbx
call fcn.14000e350
mov ecx, 0xa
cmp eax, ecx
cmovl eax, ecx
mov dword [0x1400ef440], eax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3030]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001aad4
test rbx, rbx
je 0x14001aaca
mov rcx, rbx
call fcn.14000e350
mov ebp, 1
cmp eax, ebp
cmovl eax, ebp
mov dword [0x1400ef444], eax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3060]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ab1f
test rbx, rbx
je 0x14001ab15
mov rcx, rbx
call fcn.14000e350
mov ecx, 0xff
cmp eax, ecx
jg 0x14001ab0f
mov ebp, 1
mov ecx, eax
cmp eax, ebp
cmovl ecx, ebp
mov byte [0x1400ef41a], cl
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3090]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ab64
test rbx, rbx
je 0x14001ab53
xor edx, edx
mov rcx, rbx
call fcn.140015730
mov byte [0x1400f22c8], r15b
cmp eax, 2
je 0x14001ab5a
mov byte [0x1400f22c8], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d30b8]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001abaf
test rbx, rbx
je 0x14001aba5
mov rcx, rbx
call fcn.14000e350
mov ecx, 0xff
cmp eax, ecx
jg 0x14001ab9f
mov ebp, 1
mov ecx, eax
cmp eax, ebp
cmovl ecx, ebp
mov dword [0x1400edaa4], ecx
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d30d0]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001abe5
test rbx, rbx
je 0x14001abdb
mov rcx, rbx
call fcn.14000e350
mov dword [0x1400edab4], eax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d30f8]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ac2a
test rbx, rbx
je 0x14001ac19
xor edx, edx
mov rcx, rbx
call fcn.140015730
mov byte [0x1400f15b5], r15b
cmp eax, 2
je 0x14001ac20
mov byte [0x1400f15b5], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3108]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ac54
mov byte [0x1400f22d3], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3130]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ac7f
mov byte [r13 + 0xb8b], 1
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3150]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ad17
test rbx, rbx
je 0x14001ad0d
mov rcx, rbx
call fcn.1400142a0
movaps xmm1, xmm0
movsd xmm0, qword [0x1400dbed8]
comisd xmm1, xmm0
ja 0x14001acc4
movsd xmm0, qword [0x1400dbe80]
comisd xmm0, xmm1
jbe 0x14001acc7
movaps xmm1, xmm0
mulsd xmm1, qword [0x1400dbec8]
xor ecx, ecx
movsd xmm0, qword [0x1400dbf30]
mulsd xmm1, qword [0x1400dbec8]
comisd xmm1, xmm0
jb 0x14001acfe
subsd xmm1, xmm0
comisd xmm1, xmm0
jae 0x14001acfe
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm1
add rax, rcx
mov qword [0x1400ef448], rax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3160]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ad6c
test rbx, rbx
je 0x14001ad62
mov rcx, rbx
call fcn.14000e350
test eax, eax
jns 0x14001ad52
mov dword [0x1400edab0], r15d
mov eax, 3
jmp 0x14001b267
mov ecx, 0x1f4
cmp eax, ecx
cmovg eax, ecx
mov dword [0x1400edab0], eax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d2820]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001ae2e
test rbx, rbx
je 0x14001ae24
cmp word [rbx + 2], r15w
jne 0x14001adf3
movzx ecx, word [rbx]
cmp cx, 0x23
je 0x14001addc
cmp cx, word [0x1400ef420]
je 0x14001addc
cmp cx, word [0x1400ef41c]
je 0x14001addc
cmp cx, word [0x1400ef424]
je 0x14001addc
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x14001add6
movabs rdx, 0x2000000028000609
bt rdx, rax
jb 0x14001addc
cmp cx, 0x7e
jne 0x14001adf3
mov r8, r14
lea rdx, [0x1400d3178]
mov rcx, r13
call fcn.140031460
jmp 0x14001b267
mov rdx, rbx
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
lea rbx, [0x1400ef468]
mov rcx, rbx
call fcn.1400a2664
mov word [0x1400ef486], r15w
inc rdi
cmp word [rbx + rdi*2], r15w
jne 0x14001ae13
mov qword [0x1400ef460], rdi
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d31a8]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001aea5
test rbx, rbx
je 0x14001a39f
movzx eax, word [rbx]
cmp ax, 0x23
je 0x14001addc
cmp ax, word [0x1400ef420]
je 0x14001addc
cmp ax, word [0x1400ef424]
je 0x14001addc
cmp ax, 0x2e
je 0x14001addc
cmp qword [0x1400ef460], 1
jne 0x14001ae94
cmp ax, word [0x1400ef468]
je 0x14001addc
mov word [0x1400ef41c], ax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d31c0]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001af16
test rbx, rbx
je 0x14001a39f
movzx eax, word [rbx]
cmp ax, word [0x1400ef41c]
je 0x14001addc
cmp ax, word [0x1400ef424]
je 0x14001addc
cmp ax, 0x2e
je 0x14001addc
cmp qword [0x1400ef460], 1
jne 0x14001af05
cmp ax, word [0x1400ef468]
je 0x14001addc
mov word [0x1400ef420], ax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d31d8]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001af91
test rbx, rbx
je 0x14001a39f
movzx eax, word [rbx]
cmp ax, 0x23
je 0x14001addc
cmp ax, word [0x1400ef41c]
je 0x14001addc
cmp ax, word [0x1400ef420]
je 0x14001addc
cmp ax, 0x2e
je 0x14001addc
cmp qword [0x1400ef460], 1
jne 0x14001af80
cmp ax, word [0x1400ef468]
je 0x14001addc
mov word [0x1400ef424], ax
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d31f0]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001b000
test rbx, rbx
je 0x14001afdb
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.140013280
mov byte [reloc.OLEAUT32.dll_SafeArrayGetElemsize], al
test al, al
jne 0x14001a39f
test rbx, rbx
lea rax, [0x1400d3178]
lea rdx, [0x1400d3210]
mov r8, r14
cmovne rdx, rax
mov rcx, r13
call fcn.140031460
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3240]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001b043
test rbx, rbx
je 0x14001b032
mov rcx, rbx
call fcn.14000e350
mov r15d, eax
cmp eax, 0x64
ja 0x14001addc
mov byte [0x1400f17f7], r15b
mov eax, 3
jmp 0x14001b267
mov r9, rdi
lea rdx, [0x1400d3258]
mov r8, rsi
mov rcx, r14
call fcn.14007a0c0
test eax, eax
jne 0x14001a8da
movzx edx, word [0x1400ef424]
test rbx, rbx
mov qword [rsp + 0x90], r12
lea r12, [0x1400d3268]
cmovne r12, rbx
mov rcx, r12
call fcn.1400977e8
lea rsi, [0x1400bdf7c]
mov rbx, rdi
test rax, rax
je 0x14001b0e0
lea rsi, [rax + 2]
nop dword [rax + rax]
movzx ecx, word [rsi]
cmp cx, 0x20
je 0x14001b0ae
cmp cx, bp
jne 0x14001b0b4
add rsi, 2
jmp 0x14001b0a0
lea rbx, [rax - 2]
cmp rbx, r12
jbe 0x14001b0d7
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14001b0ce
cmp ax, bp
jne 0x14001b0d7
sub rbx, 2
cmp rbx, r12
ja 0x14001b0c0
sub rbx, r12
sar rbx, 1
inc rbx
mov r9, rdi
lea rdx, [0x1400d3268]
mov r8, rbx
mov rcx, r12
call fcn.14007a0c0
mov ebp, 1
lea r15d, [rbp + 1]
test eax, eax
je 0x14001b191
test rbx, rbx
je 0x14001b191
mov r9, rdi
lea rdx, [0x1400d3270]
mov r8, rbx
mov rcx, r12
call fcn.14007a0c0
test eax, eax
jne 0x14001b12c
xor ebx, ebx
jmp 0x14001b196
mov r9, rdi
lea rdx, [0x1400d3290]
mov r8, rbx
mov rcx, r12
call fcn.14007a0c0
test eax, eax
jne 0x14001b149
mov ebx, ebp
jmp 0x14001b196
mov r9, rdi
lea rdx, [0x1400d32b0]
mov r8, rbx
mov rcx, r12
call fcn.14007a0c0
test eax, eax
jne 0x14001b167
lea ebx, [rax + 3]
jmp 0x14001b196
mov r9, rdi
lea rdx, [0x1400d32c0]
mov r8, rbx
mov rcx, r12
call fcn.14007a0c0
test eax, eax
jne 0x14001b185
mov ebx, r15d
jmp 0x14001b196
lea rdx, [0x1400d3178]
jmp 0x14001b254
mov ebx, 4
cmp word [rsi], 0
je 0x14001b1f6
lea rdx, [0x1400be790]
mov rcx, rsi
call fcn.140099630
test eax, eax
je 0x14001b1f6
lea rdx, [0x1400bf5f8]
mov rcx, rsi
call fcn.140099630
test eax, eax
jne 0x14001b1c7
mov r15d, ebp
jmp 0x14001b1f6
lea rdx, [0x1400d32e8]
mov rcx, rsi
call fcn.140099630
test eax, eax
jne 0x14001b1e0
lea r15d, [rax + 3]
jmp 0x14001b1f6
lea rdx, [0x1400d14b8]
mov rcx, rsi
call fcn.140099630
test eax, eax
jne 0x14001b24d
xor r15d, r15d
mov ecx, dword [0x1400f22e0]
mov eax, ebx
and eax, 0xfffffffb
cmove ecx, r15d
mov dword [0x1400f22e0], ecx
cmp ebx, ebp
je 0x14001b214
cmp ebx, 4
jne 0x14001b21b
mov dword [0x1400f22dc], r15d
mov ecx, dword [0x1400f22d8]
lea eax, [rbx - 3]
cmp eax, ebp
lea eax, [rbx - 2]
cmovbe ecx, r15d
and eax, 0xfffffffd
mov dword [0x1400f22d8], ecx
mov eax, 3
mov ecx, dword [0x1400f22d4]
cmove ecx, r15d
mov dword [0x1400f22d4], ecx
jmp 0x14001b25f
lea rdx, [0x1400d32f8]
mov r8, r14
mov rcx, r13
call fcn.140031460
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