Function at 0x14001beb0
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 [0x1400fc3d4]
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 0x14001bf33
movzx edx, word [rdx]
test dx, dx
je 0x14001bf33
lea rcx, [rsp + 0x78]
mov eax, r9d
nop dword [rax + rax]
cmp dx, ax
je 0x14001bfbb
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001bf10
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x14001bf00
mov rax, rdi
nop word [rax + rax]
cmp word [r14 + rax*2 + 2], r15w
lea rax, [rax + 1]
jne 0x14001bf40
lea rsi, [r14 + rax*2]
mov rbx, r15
sub rsi, r14
lea rdx, [0x1400e0be8]
sar rsi, 1
mov r9, rdi
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
je 0x14001bfb1
mov r9, rdi
lea rdx, [0x1400e0c00]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
je 0x14001bfb1
mov r9, rdi
lea rdx, [0x1400e0c20]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c00c
mov r15d, 1
mov dword [0x1400ffc4c], r15d
mov eax, 3
jmp 0x14001ced8
mov rbx, rsi
nop
movzx eax, word [rbx]
cmp ax, r9w
je 0x14001bfcf
cmp ax, 9
jne 0x14001bfd5
add rbx, 2
jmp 0x14001bfc0
movzx eax, word [rbx]
test ax, ax
je 0x14001bf50
cmp ax, r8w
jne 0x14001bf53
movzx eax, word [rbx + 2]
add rbx, 2
cmp ax, r9w
je 0x14001bfeb
cmp ax, 9
je 0x14001bfeb
cmp ax, r15w
cmove rbx, r15
jmp 0x14001bf53
mov r9, rdi
lea rdx, [0x1400e0c30]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c036
mov byte [0x1400ffc51], 1
mov eax, 3
jmp 0x14001ced8
mov r9, rdi
lea rdx, [0x1400e0c48]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c060
mov byte [0x1400feec4], 1
mov eax, 3
jmp 0x14001ced8
mov r9, rdi
mov qword [rsp + 0x70], rbp
mov r8, rsi
lea rdx, [0x1400e0c60]
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c110
mov r15d, 1
mov dword [0x1400feee0], r15d
test rbx, rbx
je 0x14001c106
lea rdx, [0x1400e0c80]
mov rcx, rbx
call fcn.1400a7220
test eax, eax
jne 0x14001c0ba
mov ebp, 2
mov dword [0x1400feee0], ebp
lea eax, [rbp + 1]
jmp 0x14001ced3
lea rdx, [0x1400e0c90]
mov rcx, rbx
call fcn.1400a7220
test eax, eax
jne 0x14001c0e1
mov dword [0x1400feee0], 3
mov eax, 3
jmp 0x14001ced3
lea rdx, [0x1400de468]
mov rcx, rbx
call fcn.1400a7220
mov ecx, dword [0x1400feee0]
test eax, eax
mov ebx, 4
cmove ecx, ebx
mov dword [0x1400feee0], ecx
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0ca0]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c13a
or byte [0x1400ffc77], 1
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0cc8]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c164
or byte [0x1400ffc77], 2
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0cf0]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c1a9
test rbx, rbx
je 0x14001c198
xor edx, edx
mov rcx, rbx
call fcn.140016c50
mov byte [0x1400fef2c], r15b
cmp eax, 2
je 0x14001c19f
mov byte [0x1400fef2c], 1
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400cc908]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c2df
lea rsi, [0x1400e70b8]
test rbx, rbx
jne 0x14001c1f5
mov byte [0x1400ff176], r15b
lea eax, [rbx + 3]
mov qword [0x1400fc3e8], rsi
mov qword [0x1400fc3e0], rsi
mov dword [0x1400fc3dc], edi
jmp 0x14001ced3
mov rax, qword [0x1400faa58]
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.14001d630
test eax, eax
je 0x14001ced3
mov rax, qword [0x1400faa58]
mov edx, dword [0x1400ffc28]
mov byte [r13 + 0x75], r15b
mov byte [0x1400ff176], 5
mov qword [rax + 0xd8], rdi
mov rbx, qword [r13 + 8]
mov qword [0x1400fc3e0], rsi
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [0x1400fc3e8], rcx
mov ecx, dword [0x1400ffc2c]
lea eax, [rcx + 1]
cmp eax, edx
jle 0x14001c2b9
mov rcx, qword [0x1400ffc30]
add edx, 0x64
mov dword [0x1400ffc28], edx
movsxd rdx, edx
shl rdx, 3
call fcn.1400ab108
mov qword [0x1400ffc30], rax
mov rdx, rax
test rax, rax
je 0x14001c4e3
mov ecx, dword [0x1400ffc2c]
jmp 0x14001c2c0
mov rdx, qword [0x1400ffc30]
movsxd rax, ecx
inc ecx
mov dword [0x1400fc3dc], eax
mov dword [0x1400ffc2c], ecx
mov qword [rdx + rax*8], rbx
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0d08]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c315
test rbx, rbx
je 0x14001c30b
mov rcx, rbx
call fcn.140015560
mov dword [0x1400fc3d8], eax
mov eax, 3
jmp 0x14001ced3
mov r8d, 6
lea rdx, [0x1400e0d20]
mov rcx, r14
call fcn.1400a9808
test eax, eax
jne 0x14001c4fa
lea rcx, [r14 + 0xc]
lea r8d, [rax + 3]
lea rdx, [0x1400de610]
call fcn.1400a9808
test eax, eax
lea rdx, [0x1400de618]
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.1400a9808
test eax, eax
jne 0x14001c382
inc sil
mov byte [0x1400ff176], sil
jmp 0x14001c3ad
mov r8d, 5
lea rdx, [0x1400de448]
mov rcx, rbp
call fcn.1400a9808
test eax, eax
jne 0x14001cfba
test sil, sil
setne al
add al, 3
mov byte [0x1400ff176], al
mov dword [0x1400fc3dc], edi
test rbx, rbx
jne 0x14001c3dc
lea rsi, [0x1400e70b8]
mov byte [0x1400ff176], r15b
mov qword [0x1400fc3e8], rsi
lea eax, [rbx + 3]
mov qword [0x1400fc3e0], rsi
jmp 0x14001ced3
movzx edx, word [0x1400fc3d4]
mov r10, r15
movzx r9d, word [0x1400fc3cc]
mov rcx, rbx
movzx r8d, word [0x1400fc3d0]
nop dword [rax]
movzx eax, word [rcx]
test ax, ax
je 0x14001c426
cmp ax, r9w
je 0x14001c455
cmp ax, dx
je 0x14001c455
cmp ax, r8w
je 0x14001c455
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14001c408
lea rsi, [0x1400e70b8]
test r10, r10
je 0x14001c4c2
lea rdi, [r10 + 2]
nop word [rax + rax]
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14001c44f
cmp ax, 9
jne 0x14001c4a0
add rdi, 2
jmp 0x14001c440
movzx eax, word [rcx]
test ax, ax
je 0x14001c426
cmp ax, r8w
je 0x14001c489
cmp ax, dx
jne 0x14001c476
test r10, r10
jne 0x14001c489
mov r10, rcx
add rcx, 2
jmp 0x14001c400
add rcx, 2
cmp word [rcx], r15w
je 0x14001c426
add rcx, 2
jmp 0x14001c400
mov r8, r14
lea rdx, [0x1400e0d30]
mov rcx, r13
call fcn.140035a70
jmp 0x14001ced3
mov word [r10], r15w
mov rcx, rbx
sub r10, rbx
sar r10, 1
mov rdx, r10
call fcn.140015460
mov r8b, 1
mov rcx, rdi
call fcn.140089b10
jmp 0x14001c4c5
mov rdi, rsi
mov r8b, 1
mov rcx, rbx
call fcn.140089b10
mov rdx, rdi
mov rcx, rbx
call fcn.14000b290
test eax, eax
jne 0x14001cd6b
mov r8, rsi
lea rdx, [0x1400de770]
mov rcx, r13
call fcn.140035a70
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0da8]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c73b
test rbx, rbx
je 0x14001cd6b
lea rdx, [0x1400e0dc0]
mov rcx, rbx
call fcn.1400877c0
test rax, rax
je 0x14001c583
lea rdx, [0x1400e0dd4]
mov rcx, rax
call fcn.14000ad70
test rax, rax
je 0x14001cd6b
lea rdx, [rax + 2]
mov r8d, 0x64
lea rcx, [0x1400fc300]
call fcn.1400b02e4
xor r8d, r8d
mov word [0x1400fc3c8], r15w
lea rcx, [0x1400fc300]
call fcn.140089b10
mov eax, 3
jmp 0x14001ced3
mov r8d, 7
lea rdx, [0x1400e0de0]
mov rcx, rbx
call fcn.1400a9808
test eax, eax
jne 0x14001c5ad
mov byte [0x1400fc2f8], r15b
mov eax, 3
jmp 0x14001ced3
cmp word [rbx], r15w
je 0x14001cd6b
mov ebp, 2
lea r14, [0x140000000]
movzx eax, word [rbx]
cmp ax, 0x3a
je 0x14001cd6b
movzx edi, ax
lea rsi, [rbx + 2]
test edi, 0xffffff80
jne 0x14001c5ef
mov edx, ebp
mov ecx, edi
call fcn.1400a9dc4
test eax, eax
je 0x14001c5ef
and edi, 0xffffffdf
movzx eax, di
add eax, 0xffffffd6
cmp eax, 0x30
ja case.0x14001c614.52
cdqe
movzx eax, byte [r14 + rax + 0x1cff0]
mov ecx, dword [r14 + rax*4 + 0x1cfc4]
add rcx, r14
jmp rcx
cmp word [rsi], 0x30
sete byte [0x1400fc2f9]
jmp case.0x14001c614.52
cmp word [rsi], 0x30
setne byte [0x1400fef2f]
jmp case.0x14001c614.52
cmp word [rsi], 0x30
setne byte [0x1400fc2fa]
jmp case.0x14001c614.52
movzx eax, word [rsi]
cmp ax, 0x30
jne 0x14001c662
mov byte [0x1400fc2fb], 1
mov byte [0x1400ff08e], r15b
jmp case.0x14001c614.52
mov byte [0x1400fc2fb], r15b
cmp ax, 0x31
jne 0x14001c67b
mov byte [0x1400ff08e], r15b
jmp case.0x14001c614.52
mov byte [0x1400ff08e], 1
jmp case.0x14001c614.52
cmp word [rsi], 0x30
setne byte [0x1400ff08d]
jmp case.0x14001c614.52
mov rcx, rsi
call fcn.1400aadfc
mov dword [0x1400ff0a0], eax
jmp case.0x14001c614.52
mov rcx, rsi
call fcn.1400aadfc
mov dword [0x1400ff0a4], eax
jmp case.0x14001c614.52
cmp word [rsi], 0x30
setne byte [0x1400ff08c]
jmp case.0x14001c614.52
movzx eax, word [rsi]
test ax, ax
mov edi, eax
cmove rsi, rbx
mov rbx, rsi
test eax, 0xffffff80
jne 0x14001c6ea
mov edx, ebp
mov ecx, eax
call fcn.1400a9dc4
test eax, eax
je 0x14001c6ea
and edi, 0xffffffdf
movzx eax, di
cmp eax, 0x45
je 0x14001c710
cmp eax, 0x49
je 0x14001c704
cmp eax, 0x50
jne case.0x14001c614.52
mov dword [0x1400fc2fc], ebp
jmp case.0x14001c614.52
mov dword [0x1400fc2fc], 3
jmp case.0x14001c614.52
mov dword [0x1400fc2fc], r15d
jmp case.0x14001c614.52
cmp word [rsi], 0x30
setne byte [0x1400fef2e]
add rbx, rbp
cmp word [rbx], r15w
jne 0x14001c5c3
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0df0]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c771
test rbx, rbx
je 0x14001c767
mov rcx, rbx
call fcn.14000ec70
mov dword [0x1400fc400], eax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0e20]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c7b1
test rbx, rbx
je 0x14001c7a7
mov rcx, rbx
call fcn.14000ec70
mov ecx, 0xa
cmp eax, ecx
cmovl eax, ecx
mov dword [0x1400fc3f0], eax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0e40]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c7f4
test rbx, rbx
je 0x14001c7ea
mov rcx, rbx
call fcn.14000ec70
mov r15d, 1
cmp eax, r15d
cmovl eax, r15d
mov dword [0x1400fc3f4], eax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0e70]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c842
test rbx, rbx
je 0x14001c838
mov rcx, rbx
call fcn.14000ec70
mov ecx, 0xff
cmp eax, ecx
jg 0x14001c832
mov r15d, 1
mov ecx, eax
cmp eax, r15d
cmovl ecx, r15d
mov byte [0x1400fc3ca], cl
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0ea0]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c887
test rbx, rbx
je 0x14001c876
xor edx, edx
mov rcx, rbx
call fcn.140016c50
mov byte [0x1400ffc48], r15b
cmp eax, 2
je 0x14001c87d
mov byte [0x1400ffc48], 1
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0ec8]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c8d5
test rbx, rbx
je 0x14001c8cb
mov rcx, rbx
call fcn.14000ec70
mov ecx, 0xff
cmp eax, ecx
jg 0x14001c8c5
mov r15d, 1
mov ecx, eax
cmp eax, r15d
cmovl ecx, r15d
mov dword [0x1400faa54], ecx
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0ee0]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c90b
test rbx, rbx
je 0x14001c901
mov rcx, rbx
call fcn.14000ec70
mov dword [0x1400faa64], eax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0f08]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c950
test rbx, rbx
je 0x14001c93f
xor edx, edx
mov rcx, rbx
call fcn.140016c50
mov byte [0x1400fef2d], r15b
cmp eax, 2
je 0x14001c946
mov byte [0x1400fef2d], 1
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0f18]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c97a
mov byte [0x1400ffc53], 1
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0f40]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001c9a5
mov byte [r13 + 0xb93], 1
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0f60]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001ca35
test rbx, rbx
je 0x14001ca2b
mov rcx, rbx
call fcn.140015590
movsd xmm1, qword [0x1400e92c0]
comisd xmm0, xmm1
ja 0x14001c9e5
movsd xmm1, qword [0x1400e9268]
maxsd xmm1, xmm0
mulsd xmm1, qword [0x1400e92b0]
xor ecx, ecx
movsd xmm0, qword [0x1400e9318]
mulsd xmm1, qword [0x1400e92b0]
comisd xmm1, xmm0
jb 0x14001ca1c
subsd xmm1, xmm0
comisd xmm1, xmm0
jae 0x14001ca1c
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm1
add rax, rcx
mov qword [0x1400fc3f8], rax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0f70]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001ca8a
test rbx, rbx
je 0x14001ca80
mov rcx, rbx
call fcn.14000ec70
test eax, eax
jns 0x14001ca70
mov dword [0x1400faa60], r15d
mov eax, 3
jmp 0x14001ced3
mov ecx, 0x1f4
cmp eax, ecx
cmovg eax, ecx
mov dword [0x1400faa60], eax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0630]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001cb4d
test rbx, rbx
je 0x14001cb43
cmp word [rbx + 2], r15w
jne 0x14001cb12
movzx ecx, word [rbx]
cmp cx, 0x23
je 0x14001cd4d
cmp cx, word [0x1400fc3d0]
je 0x14001cd4d
cmp cx, word [0x1400fc3cc]
je 0x14001cd4d
cmp cx, word [0x1400fc3d4]
je 0x14001cd4d
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x14001cb08
movabs rdx, 0x2000000028000609
bt rdx, rax
jb 0x14001cd4d
cmp cx, 0x7e
je 0x14001cd4d
mov rdx, rbx
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
lea rbx, [0x1400fcdd8]
mov rcx, rbx
call fcn.1400b02e4
mov word [0x1400fcdf6], r15w
inc rdi
cmp word [rbx + rdi*2], r15w
jne 0x14001cb32
mov qword [0x1400fcdd0], rdi
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0fb8]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001cbc8
test rbx, rbx
je 0x14001cd6b
movzx eax, word [rbx]
cmp ax, 0x23
je 0x14001cd4d
cmp ax, word [0x1400fc3d0]
je 0x14001cd4d
cmp ax, word [0x1400fc3d4]
je 0x14001cd4d
cmp ax, 0x2e
je 0x14001cd4d
cmp qword [0x1400fcdd0], 1
jne 0x14001cbb7
cmp ax, word [0x1400fcdd8]
je 0x14001cd4d
mov word [0x1400fc3cc], ax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0fd0]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001cc39
test rbx, rbx
je 0x14001cd6b
movzx eax, word [rbx]
cmp ax, word [0x1400fc3cc]
je 0x14001cd4d
cmp ax, word [0x1400fc3d4]
je 0x14001cd4d
cmp ax, 0x2e
je 0x14001cd4d
cmp qword [0x1400fcdd0], 1
jne 0x14001cc28
cmp ax, word [0x1400fcdd8]
je 0x14001cd4d
mov word [0x1400fc3d0], ax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e0fe8]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001ccb4
test rbx, rbx
je 0x14001cd6b
movzx eax, word [rbx]
cmp ax, 0x23
je 0x14001cd4d
cmp ax, word [0x1400fc3cc]
je 0x14001cd4d
cmp ax, word [0x1400fc3d0]
je 0x14001cd4d
cmp ax, 0x2e
je 0x14001cd4d
cmp qword [0x1400fcdd0], 1
jne 0x14001cca3
cmp ax, word [0x1400fcdd8]
je 0x14001cd4d
mov word [0x1400fc3d4], ax
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e1000]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001cd1f
test rbx, rbx
je 0x14001ccfa
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.140014530
mov byte [reloc.OLEAUT32.dll_SafeArrayGetElemsize], al
test al, al
jne 0x14001cd6b
test rbx, rbx
lea rax, [0x1400e0f88]
lea rdx, [0x1400e1020]
mov r8, r14
cmovne rdx, rax
mov rcx, r13
call fcn.140035a70
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e1050]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001cd75
test rbx, rbx
je 0x14001cd64
mov rcx, rbx
call fcn.14000ec70
mov r15d, eax
cmp eax, 0x64
jbe 0x14001cd64
mov r8, r14
lea rdx, [0x1400e0f88]
mov rcx, r13
call fcn.140035a70
jmp 0x14001ced3
mov byte [0x1400ff177], r15b
mov eax, 3
jmp 0x14001ced3
mov r9, rdi
lea rdx, [0x1400e1068]
mov r8, rsi
mov rcx, r14
call fcn.140087470
test eax, eax
jne 0x14001cfba
movzx edx, word [0x1400fc3d4]
test rbx, rbx
mov qword [rsp + 0x80], r12
lea r12, [0x1400e1078]
cmovne r12, rbx
mov rcx, r12
call fcn.1400a5798
lea rsi, [0x1400e70b8]
mov rbx, rdi
test rax, rax
je 0x14001ce11
lea rsi, [rax + 2]
nop word [rax + rax]
movzx ecx, word [rsi]
cmp cx, 0x20
je 0x14001cddf
cmp cx, 9
jne 0x14001cde5
add rsi, 2
jmp 0x14001cdd0
lea rbx, [rax - 2]
cmp rbx, r12
jbe 0x14001ce08
nop
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14001cdff
cmp ax, 9
jne 0x14001ce08
sub rbx, 2
cmp rbx, r12
ja 0x14001cdf0
sub rbx, r12
sar rbx, 1
inc rbx
mov r9, rdi
lea rdx, [0x1400e1078]
mov r8, rbx
mov rcx, r12
call fcn.140087470
mov ebp, 2
lea r15d, [rbp - 1]
test eax, eax
je 0x14001ceed
test rbx, rbx
je 0x14001ceed
mov r9, rdi
lea rdx, [0x1400e1080]
mov r8, rbx
mov rcx, r12
call fcn.140087470
test eax, eax
jne 0x14001ce60
xor ebx, ebx
jmp 0x14001cef2
mov r9, rdi
lea rdx, [0x1400e10a0]
mov r8, rbx
mov rcx, r12
call fcn.140087470
test eax, eax
jne 0x14001ce7e
mov ebx, r15d
jmp 0x14001cef2
mov r9, rdi
lea rdx, [0x1400e10c0]
mov r8, rbx
mov rcx, r12
call fcn.140087470
test eax, eax
jne 0x14001ce9c
lea ebx, [rax + 3]
jmp 0x14001cef2
mov r9, rdi
lea rdx, [0x1400e10d0]
mov r8, rbx
mov rcx, r12
call fcn.140087470
test eax, eax
jne 0x14001ceb9
mov ebx, ebp
jmp 0x14001cef2
mov r8, r14
lea rdx, [0x1400e0f88]
mov rcx, r13
call fcn.140035a70
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 0x14001cf50
lea rdx, [0x1400cb750]
mov rcx, rsi
call fcn.1400a7220
test eax, eax
je 0x14001cf50
lea rdx, [0x1400cc5b8]
mov rcx, rsi
call fcn.1400a7220
test eax, eax
jne 0x14001cf23
mov ebp, r15d
jmp 0x14001cf50
lea rdx, [0x1400e10f8]
mov rcx, rsi
call fcn.1400a7220
test eax, eax
jne 0x14001cf3b
lea ebp, [rax + 3]
jmp 0x14001cf50
lea rdx, [0x1400de468]
mov rcx, rsi
call fcn.1400a7220
test eax, eax
jne 0x14001cfab
xor ebp, ebp
mov eax, dword [0x1400ffc60]
test ebx, 0xfffffffb
cmove eax, ebp
mov dword [0x1400ffc60], eax
cmp ebx, r15d
je 0x14001cf6f
cmp ebx, 4
jne 0x14001cf75
mov dword [0x1400ffc5c], ebp
mov ecx, dword [0x1400ffc58]
lea eax, [rbx - 3]
cmp eax, r15d
lea eax, [rbx - 2]
cmovbe ecx, ebp
test eax, 0xfffffffd
mov eax, dword [0x1400ffc54]
cmove eax, ebp
mov dword [0x1400ffc58], ecx
mov dword [0x1400ffc54], eax
mov eax, 3
jmp 0x14001cecb
mov r8, r14
lea rdx, [0x1400e1108]
jmp 0x14001cec3
mov eax, 4
jmp 0x14001ced3