Function at 0x14002a060
Capabilities:
Get keyboard layout

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1c088]
mov eax, 0x1c188
call fcn.1400c8fe0
sub rsp, rax
mov ebx, dword [0x140102c68]
lea r13, [rbp + 0xc060]
xor r12d, r12d
mov qword [rsp + 0x20], rdx
dec ebx
mov word [rbp + 0x4050], r12w
xor al, al
mov dword [rbp - 0x30], ebx
lea r15, [rbp + 0x14070]
mov dword [rcx + 0x288], ebx
mov r14d, 0xffffffff
mov qword [rbp - 0x50], r13
xor r9d, r9d
mov qword [rbp - 0x28], r13
lea rdx, [rbp + 0xc060]
mov qword [rsp + 0x50], r15
mov rdi, rcx
mov byte [rbp + 0x1c0e0], al
mov word [rsp + 0x5a], r12w
mov word [rsp + 0x6c], r12w
mov dword [rbp - 0x2c], r14d
call fcn.14002cee0
lea r8d, [r12 + 2]
mov qword [rsp + 0x70], rax
lea rdx, [0x1400e33f8]
mov rsi, rax
lea rcx, [rbp + 0xc060]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
sete bl
mov byte [rsp + 0x41], bl
test eax, eax
jne 0x14002a135
mov word [rbp + 0xc060], r12w
mov esi, r12d
mov qword [rsp + 0x70], r12
mov eax, dword [rbp + 0x1c0d0]
mov ecx, dword [rbp + 0x1c0d0]
mov dword [rbp - 0x60], eax
movzx eax, byte [rbp + 0x1c0d0]
mov byte [rbp + 0x1c0e8], al
movzx eax, byte [rbp + 0x1c0d0]
mov byte [rsp + 0x40], al
mov dword [rbp - 0x5c], ecx
mov qword [rbp + 0x20], r15
mov edx, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
cmp rsi, 0xffffffffffffffff
je 0x14002cafa
lea eax, [r14 + 1]
mov qword [rdi + 0x6d0], r12
mov r8d, edx
mov dword [rdi + 0x28c], eax
lea rdx, str.CommentFlag
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002a1ad
mov rdx, r13
mov rcx, rdi
call fcn.14002d250
test eax, eax
je 0x14002b91d
mov byte [rsp + 0x63], 0
mov r14d, r12d
mov dword [rbp - 0x74], r12d
jmp 0x14002a1d0
mov qword [rsp + 0x70], rsi
movzx ebx, byte [rsp + 0x41]
nop word [rax + rax]
mov rax, qword [rbp + 0x1c0d8]
mov r9d, r14d
inc dword [rbp - 0x2c]
mov rdx, r15
mov qword [rsp + 0x20], rax
call fcn.14002cee0
mov r12, rax
mov qword [rbp - 0x38], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x14002a2fe
test r14d, r14d
jne 0x14002a2fe
lea r8d, [r14 + 2]
mov rcx, r15
lea rdx, [0x1400e341c]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
jne 0x14002a2d1
test bl, bl
jne 0x14002a23b
cmp word [r15 + 4], 0x3a
jne 0x14002a23b
cmp word [r15 + 6], 0x3a
je 0x14002a2d9
sub r12, 2
lea rdx, [r15 + 4]
xor bl, bl
mov rcx, r15
mov byte [rsp + 0x41], bl
lea r8, [r12*2 + 2]
call sub.VCRUNTIME140.dll_memmove
movzx eax, word [r15]
test ax, ax
je 0x14002a1d0
mov rdx, r15
nop dword [rax]
cmp ax, 0x20
je 0x14002a27c
cmp ax, 9
jne 0x14002a286
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x14002a270
mov rax, rdx
sub rax, r15
sar rax, 1
je 0x14002a2c0
cmp r12, 0xffffffffffffffff
jne 0x14002a2ad
nop word [rax + rax]
inc r12
cmp word [rdx + r12*2], 0
jne 0x14002a2a0
jmp 0x14002a2b0
sub r12, rax
lea r8, [r12*2 + 2]
mov rcx, r15
call sub.VCRUNTIME140.dll_memmove
cmp word [r15], 0
mov qword [rbp - 0x38], r12
je 0x14002a1d0
jmp 0x14002a2d9
test bl, bl
jne 0x14002a1d0
mov r8d, 2
lea rdx, [0x1400e33f8]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
jne 0x14002a2fe
mov bl, 1
mov byte [rsp + 0x41], bl
jmp 0x14002a1d0
test bl, bl
je 0x14002a3b0
cmp r12, 0xffffffffffffffff
jne 0x14002a1d0
xor r12d, r12d
mov rdi, qword [rbp + 0x1c0d0]
nop word [rax + rax]
test rsi, rsi
je 0x14002ba16
cmp word [rbp + 0x4050], 0
je 0x14002b51b
mov ebx, dword [rdi + 0x28c]
mov eax, dword [rbp - 0x58]
mov dword [rdi + 0x28c], eax
cmp word [r13], 0x7b
je 0x14002b40a
cmp byte [rsp + 0x42], 0
jne 0x14002b40a
mov esi, dword [rbp - 0x70]
test esi, esi
jne 0x14002c9cf
cmp dword [rdi + 0x40], esi
je 0x14002a382
mov rax, qword [0x1400fe060]
cmp qword [rax + 0xd8], 0
je 0x14002c99e
mov qword [rsp + 0x38], r12
lea rdx, [rbp + 0x4050]
mov qword [rsp + 0x30], r12
xor r9d, r9d
mov qword [rsp + 0x28], r12
mov r8b, 3
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.14002fb60
jmp 0x14002b4a2
test r14d, r14d
jne 0x14002a904
cmp r12, 0xffffffffffffffff
je 0x14002a603
cmp word [r15], 0x28
jne 0x14002a603
movzx eax, word [r15 + 2]
lea rbx, [r15 + 2]
cmp ax, 0x3a
je 0x14002a5fe
cmp word [r15 + r12*2 - 2], 0x3a
je 0x14002a5fe
movzx ecx, byte [0x140101d26]
mov r14d, 1
xor r12d, r12d
mov byte [rsp + 0x5d], cl
mov ecx, 0xa
mov dword [rbp - 0x74], r14d
mov dword [rbp + 0x28], ecx
mov dword [rbp - 0x20], r12d
mov byte [rsp + 0x5c], r14b
mov byte [rsp + 0x5e], r12b
mov byte [rsp + 0x5f], r12b
mov byte [rsp + 0x60], r14b
mov qword [rbp], r14
nop word [rax + rax]
cmp ax, 0x20
je 0x14002a43c
cmp ax, 9
jne 0x14002a446
movzx eax, word [rbx + 2]
add rbx, 2
jmp 0x14002a430
test ax, ax
je 0x14002a5f4
nop
mov rsi, rbx
test rbx, rbx
je 0x14002a48f
movzx edx, word [rbx]
test dx, dx
je 0x14002a48f
lea rcx, [0x1400e1130]
mov eax, SafeArrayAllocDescriptor
nop dword [rax]
cmp dx, ax
je 0x14002a4b0
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14002a470
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x14002a460
mov rax, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rbx + rax*2 + 2], r12w
lea rax, [rax + 1]
jne 0x14002a4a0
lea rsi, [rbx + rax*2]
movzx edi, word [rsi]
lea rdx, str.Join
mov r8d, 4
mov word [rsi], r12w
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002a513
lea rdx, [rbx + 8]
lea r8d, [rax + 0xf]
lea rcx, [rbp + 0x28]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov r8b, 1
mov word [rbp + 0x46], r12w
lea rcx, [rbp + 0x28]
call fcn.1400ad9b0
lea rax, [rbp + 0x28]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp word [rax + rcx*2], r12w
jne 0x14002a500
mov qword [rbp], rcx
jmp 0x14002a5c4
mov r8d, 5
lea rdx, [0x1400e34d8]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002a53c
cmp word [rbx + 0xa], 0x30
setne byte [rsp + 0x5d]
jmp 0x14002a5c4
mov r8d, 5
lea rdx, str.RTrim
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002a562
cmp word [rbx + 0xa], 0x30
setne byte [rsp + 0x5c]
jmp 0x14002a5c4
movzx eax, word [rbx]
test ax, ax
je 0x14002a5c4
nop word [rax + rax]
movzx eax, ax
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x14002a596.38
lea rdx, [0x140000000]
cdqe
movzx eax, byte [rdx + rax + 0x2cbd0]
mov ecx, dword [rdx + rax*4 + 0x2cbb8]
add rcx, rdx
jmp rcx
mov byte [rsp + 0x5e], 1
jmp case.0x14002a596.38
mov byte [rsp + 0x5f], 1
jmp case.0x14002a596.38
mov byte [rsp + 0x60], r12b
jmp case.0x14002a596.38
mov r14d, 2
mov dword [rbp - 0x74], r14d
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x14002a570
mov word [rsi], di
mov rbx, rsi
nop word [rax + rax]
cmp di, 0x20
je 0x14002a5dc
cmp di, 9
jne 0x14002a5e6
movzx edi, word [rbx + 2]
add rbx, 2
jmp 0x14002a5d0
test di, di
jne 0x14002a450
mov rsi, qword [rsp + 0x70]
mov byte [rsp + 0x63], 1
jmp 0x14002a1c0
movzx ebx, byte [rsp + 0x41]
xor edx, edx
mov dword [rbp - 0x74], edx
mov r14d, edx
cmp r12, 0xffffffffffffffff
je 0x14002a310
test r12, r12
je 0x14002a1d0
cmp word [r15 + r12*2 - 2], 0x3a
jne 0x14002a632
cmp word [r15], 0x2c
jne 0x14002a310
movzx ebx, word [r15]
test ebx, 0xffffff80
je 0x14002a642
mov ecx, edx
jmp 0x14002a653
mov edx, 2
mov ecx, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
xor edx, edx
mov eax, ebx
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebx
cmp eax, 0x41
je 0x14002a856
cmp eax, 0x4f
je 0x14002a7e9
movzx edx, word [r15]
cmp dx, 0x3a
ja 0x14002a694
movabs rcx, 0x400280000000000
bt rcx, rdx
jae 0x14002a694
cmp word [r15 + 2], dx
je 0x14002a310
lea rcx, str.____:.___
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x14002a310
lea rdx, [0x1400e346c]
mov rcx, r15
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rdi, rax
test rax, rax
je 0x14002a8bc
cmp word [r15], 0x3a
jne 0x14002a72c
movzx eax, word [r15 + 2]
lea rbx, [r15 + 2]
test ax, ax
je 0x14002a722
nop dword [rax + rax]
cmp ax, 0x3a
je 0x14002a722
movzx ecx, ax
test ecx, 0xffffff80
jne 0x14002a700
mov edx, 0x107
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
test eax, eax
jne 0x14002a715
movzx edx, word [rbx]
lea rcx, [0x1400e3478]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x14002a72c
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x14002a6e0
cmp word [rbx], 0x3a
je 0x14002a310
cmp word [r15], 0x2c
jne 0x14002a78e
lea rbx, [r15 + 2]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14002a746
cmp ax, 9
jne 0x14002a74c
add rbx, 2
jmp 0x14002a737
mov r8d, 2
lea rdx, [0x1400e346c]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
je 0x14002a310
lea rcx, [rbx - 2]
mov r8d, 3
lea rdx, [0x1400e1120]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
je 0x14002a310
jmp 0x14002a8bc
mov rax, r15
cmp r15, rdi
jae 0x14002a7a5
cmp word [rax], 0x22
je 0x14002a7a5
add rax, 2
cmp rax, rdi
jb 0x14002a796
cmp rax, rdi
je 0x14002a310
movzx ecx, word [rdi + 4]
lea rdx, [rdi + 4]
test cx, cx
je 0x14002a310
movzx eax, cx
movzx ecx, ax
cmp ax, 0x22
je 0x14002a7db
movzx eax, word [rdx + 2]
add rdx, 2
movzx ecx, ax
test ax, ax
jne 0x14002a7c2
test cx, cx
je 0x14002a310
jmp 0x14002a8bc
movzx ebx, word [r15 + 2]
test ebx, 0xffffff80
je 0x14002a7fa
mov ecx, edx
jmp 0x14002a809
mov edx, 2
mov ecx, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
movzx eax, bx
mov edx, 0xffdf
and ax, dx
test ecx, ecx
cmove ax, bx
cmp ax, 0x52
jne 0x14002a310
movzx edx, word [r15 + 4]
lea rax, [r15 + 4]
cmp dx, 0x20
je 0x14002a84c
cmp dx, 9
jne 0x14002a310
nop dword [rax]
cmp dx, 0x20
je 0x14002a84c
cmp dx, 9
jne 0x14002a8a6
movzx edx, word [rax + 2]
add rax, 2
jmp 0x14002a840
mov r8d, 3
lea rdx, [0x1400e3428]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002a310
movzx edx, word [r15 + 6]
lea rax, [r15 + 6]
cmp dx, 0x20
je 0x14002a89c
cmp dx, 9
jne 0x14002a310
nop dword [rax]
cmp dx, 0x20
je 0x14002a89c
cmp dx, 9
jne 0x14002a8a6
movzx edx, word [rax + 2]
add rax, 2
jmp 0x14002a890
lea rcx, [0x1400e3430]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x14002a310
lea rax, [r12 + rsi]
cmp rax, 0x4000
jae 0x14002c983
cmp word [r15], 0x2c
je 0x14002a8e1
mov eax, SafeArrayAllocDescriptor
mov word [r13 + rsi*2], ax
inc rsi
lea rcx, [rsi*2]
mov rdx, r15
add rcx, r13
lea r8, [r12*2 + 2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, r12
jmp 0x14002a1bb
cmp r12, 0xffffffffffffffff
je 0x14002cadf
cmp r12, 0xfffffffffffffffe
je 0x14002a1d0
movzx eax, word [r15]
cmp ax, 0x29
jne 0x14002a98e
xor edx, edx
mov rdi, 0xffffffffffffffff
mov r14d, edx
mov dword [rbp - 0x74], edx
inc rdi
cmp word [r15 + rdi*2], dx
jne 0x14002a931
lea rax, [rdi - 1]
lea rax, [r15 + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002a952
cmp cx, 9
jne 0x14002a960
cmp rax, r15
je 0x14002a970
sub rax, 2
dec rdi
jmp 0x14002a943
mov word [rax + 2], dx
lea rbx, [r15 + 2]
dec rdi
jmp 0x14002b37f
cmp cx, 0x20
je 0x14002a97c
cmp cx, 9
jne 0x14002a982
mov word [rax], dx
mov rdi, rdx
lea rbx, [r15 + 2]
dec rdi
jmp 0x14002b37f
cmp byte [rsp + 0x5c], 0
mov qword [rbp - 0x10], r15
je 0x14002a9f3
test ax, ax
jne 0x14002a9a9
xor esi, esi
mov r12d, esi
mov qword [rbp - 0x38], rsi
jmp 0x14002a9f5
lea rax, [r12 - 1]
lea rax, [r15 + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002a9c1
cmp cx, 9
jne 0x14002a9cf
cmp rax, r15
je 0x14002a9db
sub rax, 2
dec r12
jmp 0x14002a9b2
xor esi, esi
mov qword [rbp - 0x38], r12
mov word [rax + 2], si
jmp 0x14002a9f5
cmp cx, 0x20
je 0x14002aac2
cmp cx, 9
je 0x14002aac2
mov qword [rbp - 0x38], r12
xor esi, esi
cmp byte [rsp + 0x5d], 0
je 0x14002aa0b
mov rdx, r12
mov rcx, r15
call fcn.140025bf0
mov qword [rbp - 0x38], rax
cmp byte [rsp + 0x5e], 0
mov r12d, esi
mov dword [rsp + 0x4c], esi
je 0x14002ad35
movzx eax, word [0x1400ff9ac]
mov ebx, 0xffffffff
mov word [rsp + 0x58], ax
mov r13, 0xffffffffffffffff
mov word [rsp + 0x68], ax
mov word [rsp + 0x6a], ax
mov dword [rsp + 0x44], ebx
inc r13
cmp word [r15 + r13*2], 0
jne 0x14002aa43
mov rdx, qword [rsp + 0x50]
mov r12, rsi
mov r15, rsi
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x68], rsi
cmp word [rdx], 0
je 0x14002ad2e
test ax, ax
je 0x14002ad2e
lea rcx, [rsp + 0x58]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x14002aa80
mov qword [rbp - 0x48], rax
lea rcx, [rsp + 0x68]
mov r14, 0xffffffffffffffff
nop word [rax + rax]
inc r14
cmp word [rcx + r14*2], 0
jne 0x14002aaa0
mov ecx, r14d
sub ecx, eax
mov eax, 0x4000
sub eax, r13d
mov dword [rsp + 0x78], ecx
jns 0x14002aad3
mov ebx, esi
jmp 0x14002aae4
xor esi, esi
mov word [rax], si
mov r12d, esi
mov qword [rbp - 0x38], rsi
jmp 0x14002a9f5
test ecx, ecx
jle 0x14002aaea
cdq
idiv ecx
mov rdx, qword [rsp + 0x50]
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x44], ebx
test ecx, ecx
je 0x14002ac92
cmp r13, 0x1388
jb 0x14002ac92
mov dword [rsp + 0x4c], esi
mov rdi, rdx
test ebx, ebx
je 0x14002ac39
nop dword [rax]
lea rdx, [rsp + 0x58]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x14002abf2
mov r10d, dword [rsp + 0x4c]
dec ebx
mov dword [rsp + 0x44], ebx
inc r10d
mov rbx, rax
mov dword [rsp + 0x4c], r10d
sub rbx, rdi
sar rbx, 1
add r15, rbx
lea rcx, [r14 + r15]
cmp rcx, qword [rbp - 0x68]
jb 0x14002ab9d
sub rax, qword [rsp + 0x50]
mov r8d, dword [rsp + 0x44]
sar rax, 1
movsxd rdx, eax
mov qword [rsp + 0x28], rdx
mov edx, r10d
movsxd rax, ecx
movsxd rcx, dword [rsp + 0x78]
movsxd r9, r13d
mov qword [rsp + 0x20], rax
call fcn.1400abf90
mov rcx, r12
mov qword [rbp - 0x68], rax
lea rdx, [rax + rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x14002ac29
mov r12, rax
test rbx, rbx
je 0x14002abbc
mov rax, qword [rbp - 0x80]
lea r8, [rbx + rbx]
mov rdx, rdi
lea rcx, [r12 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x80], r15
jmp 0x14002abc0
mov r15, qword [rbp - 0x80]
test r14, r14
je 0x14002abde
lea r8, [r14 + r14]
lea rcx, [r12 + r15*2]
lea rdx, [rsp + 0x68]
call sub.VCRUNTIME140.dll_memcpy
add r15, r14
mov qword [rbp - 0x80], r15
mov rax, qword [rbp - 0x48]
mov ebx, dword [rsp + 0x44]
lea rdi, [rsi + rax*2]
test ebx, ebx
jne 0x14002ab10
cmp dword [rsp + 0x4c], 0
je 0x14002ac37
mov rax, rdi
sub rax, qword [rsp + 0x50]
sar rax, 1
sub r13, rax
je 0x14002ac60
lea rbx, [r15 + r13]
cmp rbx, qword [rbp - 0x68]
jb 0x14002ac49
lea rdx, [rbx*2 + 2]
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
jne 0x14002ac46
test r12, r12
je 0x14002ac37
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor esi, esi
mov r15, qword [rsp + 0x50]
mov r12d, esi
jmp 0x14002ad31
mov r12, rax
lea r8, [r13*2]
mov rdx, rdi
lea rcx, [r12 + r15*2]
call sub.VCRUNTIME140.dll_memcpy
mov r15, rbx
lea r8, [r15*2 + 2]
xor esi, esi
mov word [r12 + r15*2], si
mov rdx, r12
mov r15, qword [rsp + 0x50]
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r12d, dword [rsp + 0x4c]
jmp 0x14002ad35
mov r15, qword [rsp + 0x50]
mov dword [rsp + 0x4c], r12d
mov rsi, r15
test ebx, ebx
je 0x14002ad2a
movsxd r15, ecx
nop word [rax + rax]
lea rdx, [rsp + 0x58]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x14002ad20
lea rdi, [r14 + r14]
lea rsi, [rax + rdi]
test r15d, r15d
je 0x14002acfc
sub rax, qword [rsp + 0x50]
mov r8, r13
sar rax, 1
mov rcx, rsi
sub r8, rax
mov rax, qword [rbp - 0x48]
sub r8, rax
lea rdx, [rbx + rax*2]
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
lea rdx, [rsp + 0x68]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x44]
add r13, r15
dec eax
inc r12d
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14002acb0
mov r15, qword [rsp + 0x50]
mov dword [rsp + 0x4c], r12d
xor esi, esi
jmp 0x14002ad35
mov r15, rdx
mov dword [rsp + 0x4c], esi
cmp byte [rsp + 0x5f], 0
je 0x14002afa9
movzx ecx, word [0x1400ffa7c]
mov ebx, 0xffffffff
movzx eax, word [0x1400ff9ac]
mov rdi, 0xffffffffffffffff
mov word [rsp + 0x58], cx
mov word [rsp + 0x68], ax
mov word [rsp + 0x6a], cx
mov dword [rsp + 0x44], ebx
nop dword [rax]
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x14002ad70
cmp word [r15], 0
mov r12, rsi
mov qword [rbp - 0x80], rdi
mov r14, rsi
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x48], rsi
je 0x14002af99
test cx, cx
je 0x14002af99
lea rcx, [rsp + 0x58]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x14002adb0
mov qword [rbp - 0x18], rax
lea rcx, [rsp + 0x68]
mov r15, 0xffffffffffffffff
nop word [rax + rax]
inc r15
cmp word [rcx + r15*2], 0
jne 0x14002add0
mov ecx, r15d
sub ecx, eax
mov eax, 0x4000
sub eax, edi
mov dword [rsp + 0x78], ecx
jns 0x14002adf1
mov ebx, esi
jmp 0x14002adfd
test ecx, ecx
jle 0x14002ae03
cdq
idiv ecx
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x44], ebx
test ecx, ecx
je 0x14002b074
cmp rdi, 0x1388
jb 0x14002b074
mov rdi, qword [rsp + 0x50]
mov r13d, esi
test ebx, ebx
je 0x14002b06a
nop word [rax + rax]
lea rdx, [rsp + 0x58]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x14002af09
dec ebx
inc r13d
mov dword [rsp + 0x44], ebx
mov rbx, rax
sub rbx, rdi
sar rbx, 1
add r14, rbx
lea rcx, [r15 + r14]
cmp rcx, qword [rbp - 0x48]
jb 0x14002aeb4
sub rax, qword [rsp + 0x50]
movsxd r9, dword [rbp - 0x80]
mov r8d, dword [rsp + 0x44]
sar rax, 1
movsxd rdx, eax
mov qword [rsp + 0x28], rdx
mov edx, r13d
movsxd rax, ecx
movsxd rcx, dword [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.1400abf90
mov rcx, r12
mov qword [rbp - 0x48], rax
lea rdx, [rax + rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x14002af84
mov r12, rax
test rbx, rbx
je 0x14002aed3
mov rax, qword [rbp - 0x68]
lea r8, [rbx + rbx]
mov rdx, rdi
lea rcx, [r12 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x68], r14
jmp 0x14002aed7
mov r14, qword [rbp - 0x68]
test r15, r15
je 0x14002aef5
lea r8, [r15 + r15]
lea rcx, [r12 + r14*2]
lea rdx, [rsp + 0x68]
call sub.VCRUNTIME140.dll_memcpy
add r14, r15
mov qword [rbp - 0x68], r14
mov rax, qword [rbp - 0x18]
mov ebx, dword [rsp + 0x44]
lea rdi, [rsi + rax*2]
test ebx, ebx
jne 0x14002ae30
test r13d, r13d
je 0x14002b068
mov r15, qword [rsp + 0x50]
mov rax, rdi
mov rsi, qword [rbp - 0x80]
sub rax, r15
sar rax, 1
sub rsi, rax
je 0x14002af5f
lea rbx, [rsi + r14]
cmp rbx, qword [rbp - 0x48]
jb 0x14002af4c
lea rdx, [rbx*2 + 2]
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x14002af89
mov r12, rax
lea r8, [rsi + rsi]
mov rdx, rdi
lea rcx, [r12 + r14*2]
call sub.VCRUNTIME140.dll_memcpy
mov r14, rbx
xor esi, esi
lea r8, [r14*2 + 2]
mov rdx, r12
mov word [r12 + r14*2], si
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14002af9c
mov r15, qword [rsp + 0x50]
test r12, r12
je 0x14002af97
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor esi, esi
mov r13d, esi
mov r12d, dword [rsp + 0x4c]
add r12d, r13d
mov dword [rsp + 0x4c], r12d
cmp byte [rsp + 0x60], 0
je 0x14002b2c0
movzx ecx, word [0x1400ffa80]
mov ebx, 0xffffffff
movzx eax, word [0x1400ff9ac]
mov rdi, 0xffffffffffffffff
mov word [rsp + 0x58], cx
mov word [rsp + 0x68], ax
mov word [rsp + 0x6a], cx
mov dword [rsp + 0x44], ebx
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x14002afe1
cmp word [r15], 0
mov r12, rsi
mov qword [rbp - 0x80], rdi
mov r14, rsi
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x48], rsi
je 0x14002b2b5
test cx, cx
je 0x14002b2b5
lea rcx, [rsp + 0x58]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp word [rcx + rax*2], 0
jne 0x14002b020
mov qword [rbp - 0x18], rax
lea rcx, [rsp + 0x68]
mov r15, 0xffffffffffffffff
nop word [rax + rax]
inc r15
cmp word [rcx + r15*2], 0
jne 0x14002b040
mov ecx, r15d
sub ecx, eax
mov eax, 0x4000
sub eax, edi
mov dword [rsp + 0x78], ecx
jns 0x14002b10a
mov ebx, esi
jmp 0x14002b116
xor esi, esi
mov r15, qword [rsp + 0x50]
jmp 0x14002af99
mov r12, qword [rsp + 0x50]
mov r13d, esi
mov rsi, r12
test ebx, ebx
je 0x14002b100
movsxd r14, ecx
nop word [rax + rax]
lea rdx, [rsp + 0x58]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x14002b100
lea rdi, [r15 + r15]
lea rsi, [rax + rdi]
test r14d, r14d
je 0x14002b0db
mov r8, qword [rbp - 0x80]
sub rax, r12
sar rax, 1
mov rcx, rsi
sub r8, rax
mov rax, qword [rbp - 0x18]
sub r8, rax
lea rdx, [rbx + rax*2]
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
lea rdx, [rsp + 0x68]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x44]
inc r13d
add qword [rbp - 0x80], r14
dec eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14002b090
mov r15, r12
xor esi, esi
jmp 0x14002af9c
test ecx, ecx
jle 0x14002b11c
cdq
idiv ecx
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x44], ebx
test ecx, ecx
je 0x14002b2e0
cmp rdi, 0x1388
jb 0x14002b2e0
mov rdi, qword [rsp + 0x50]
mov r13d, esi
test ebx, ebx
je 0x14002b2b0
nop
lea rdx, [rsp + 0x58]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x14002b219
dec ebx
inc r13d
mov dword [rsp + 0x44], ebx
mov rbx, rax
sub rbx, rdi
sar rbx, 1
add r14, rbx
lea rcx, [r14 + r15]
cmp rcx, qword [rbp - 0x48]
jb 0x14002b1c4
sub rax, qword [rsp + 0x50]
movsxd r9, dword [rbp - 0x80]
mov r8d, dword [rsp + 0x44]
sar rax, 1
movsxd rdx, eax
mov qword [rsp + 0x28], rdx
mov edx, r13d
movsxd rax, ecx
movsxd rcx, dword [rsp + 0x78]
mov qword [rsp + 0x20], rax
call fcn.1400abf90
mov rcx, r12
mov qword [rbp - 0x48], rax
lea rdx, [rax + rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x14002b294
mov r12, rax
test rbx, rbx
je 0x14002b1e3
mov rax, qword [rbp - 0x68]
lea r8, [rbx + rbx]
mov rdx, rdi
lea rcx, [r12 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x68], r14
jmp 0x14002b1e7
mov r14, qword [rbp - 0x68]
test r15, r15
je 0x14002b205
lea r8, [r15 + r15]
lea rcx, [r12 + r14*2]
lea rdx, [rsp + 0x68]
call sub.VCRUNTIME140.dll_memcpy
add r14, r15
mov qword [rbp - 0x68], r14
mov rax, qword [rbp - 0x18]
mov ebx, dword [rsp + 0x44]
lea rdi, [rsi + rax*2]
test ebx, ebx
jne 0x14002b140
test r13d, r13d
je 0x14002b2ae
mov r15, qword [rsp + 0x50]
mov rax, rdi
mov rsi, qword [rbp - 0x80]
sub rax, r15
sar rax, 1
sub rsi, rax
je 0x14002b26f
lea rbx, [r14 + rsi]
cmp rbx, qword [rbp - 0x48]
jb 0x14002b25c
lea rdx, [rbx*2 + 2]
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x14002b299
mov r12, rax
lea r8, [rsi + rsi]
mov rdx, rdi
lea rcx, [r12 + r14*2]
call sub.VCRUNTIME140.dll_memcpy
mov r14, rbx
xor eax, eax
lea r8, [r14*2 + 2]
mov rdx, r12
mov word [r12 + r14*2], ax
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14002b2b8
mov r15, qword [rsp + 0x50]
test r12, r12
je 0x14002b2a7
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor eax, eax
mov r13d, eax
jmp 0x14002b2b8
xor esi, esi
mov r15, qword [rsp + 0x50]
mov r13d, esi
mov r12d, dword [rsp + 0x4c]
add r12d, r13d
test r12d, r12d
je 0x14002b36a
mov rdi, 0xffffffffffffffff
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x14002b2d0
jmp 0x14002b36e
mov r12, qword [rsp + 0x50]
mov r13d, esi
mov rsi, r12
test ebx, ebx
je 0x14002b362
movsxd r14, ecx
lea rdx, [rsp + 0x58]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x14002b362
lea rdi, [r15 + r15]
lea rsi, [rdi + rax]
test r14d, r14d
je 0x14002b33d
mov r8, qword [rbp - 0x80]
sub rax, r12
sar rax, 1
mov rcx, rsi
sub r8, rax
mov rax, qword [rbp - 0x18]
sub r8, rax
lea rdx, [rbx + rax*2]
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
lea rdx, [rsp + 0x68]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x44]
inc r13d
add qword [rbp - 0x80], r14
dec eax
mov dword [rsp + 0x44], eax
test eax, eax
jne 0x14002b2f2
mov r15, r12
jmp 0x14002b2b8
mov rdi, qword [rbp - 0x38]
mov r13, qword [rbp - 0x50]
mov rsi, qword [rsp + 0x70]
mov r14d, dword [rbp - 0x74]
mov rbx, qword [rbp - 0x10]
mov r12, qword [rbp]
lea rax, [r12 + rdi]
add rax, rsi
cmp rax, 0x4001
jae 0x14002cad7
mov eax, dword [rbp - 0x20]
inc eax
mov dword [rbp - 0x20], eax
cmp eax, 1
jle 0x14002b3d1
test r12, r12
je 0x14002b3d1
cmp rbx, r15
jne 0x14002b3d1
lea rcx, [rsi*2]
add rcx, r13
lea r8, [r12*2 + 2]
lea rdx, [rbp + 0x28]
call sub.VCRUNTIME140.dll_memcpy
add rsi, r12
mov qword [rsp + 0x70], rsi
test rdi, rdi
je 0x14002a1c0
lea rcx, [rsi*2]
mov rdx, rbx
add rcx, r13
lea r8, [rdi*2 + 2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rdi
jmp 0x14002a1bb
mov word [rsi], di
mov rsi, qword [rsp + 0x70]
jmp 0x14002a313
mov esi, dword [rbp - 0x70]
mov ecx, esi
test esi, esi
je 0x14002b453
sub ecx, 1
je 0x14002b432
cmp ecx, 1
jne 0x14002b4b1
lea rdx, [rbp + 0x4050]
mov rcx, rdi
call fcn.140035990
jmp 0x14002b441
lea rdx, [rbp + 0x4050]
mov rcx, rdi
call fcn.1400351f0
test eax, eax
je 0x14002b91d
mov word [rbp + 0x4050], r12w
jmp 0x14002b4bd
mov rax, qword [0x1400fe060]
mov rcx, rdi
cmp qword [rax + 0xd8], 0
jne 0x14002c9ea
lea r8, [rbp + 0x1d0]
lea rdx, [rbp + 0x4050]
call fcn.140034450
test eax, eax
je 0x14002b91d
cmp byte [rsp + 0x42], 0
je 0x14002b4b1
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x77
mov rcx, rdi
call fcn.140032050
test eax, eax
je 0x14002b91d
mov qword [rdi + 0x6d0], r12
mov word [rbp + 0x4050], r12w
test esi, esi
je 0x14002b515
cmp byte [rsp + 0x42], 0
jne 0x14002b515
lea rdx, [r13 + 2]
nop dword [rax + rax]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14002b4df
cmp ax, 9
jne 0x14002b4e5
add rdx, 2
jmp 0x14002b4d0
test ax, ax
je 0x14002ba10
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002b4f5
mov qword [rsp + 0x70], r8
mov rcx, r13
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov dword [rdi + 0x28c], ebx
cmp word [r13], 0x7d
jne 0x14002b67d
movsxd rdx, dword [rdi + 0x40]
test edx, edx
je 0x14002b67d
mov rax, qword [0x1400fe060]
cmp qword [rax + 0xd8], 0
jne 0x14002b67d
cmp qword [rdi + 0x278], 0
je 0x14002b57b
mov rcx, qword [rdi + 0x280]
mov qword [rdi + 0x278], r12
test rcx, rcx
je 0x14002b626
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x280], r12
jmp 0x14002b626
lea ecx, [rdx - 1]
mov dword [rdi + 0x40], ecx
mov rsi, qword [rdi + rdx*8 + 0x40]
mov rbx, qword [rsi + 0x20]
sub rbx, 1
js 0x14002b5f7
mov rdi, rbx
shl rdi, 5
nop word [rax + rax]
mov rcx, qword [rsi + 0x18]
cmp dword [rcx + rdi + 0x18], 1
jne 0x14002b5e3
cmp rbx, qword [rsi + 0x38]
jl 0x14002b5bc
mov rcx, qword [rcx + rdi + 0x10]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r8, qword [rsi + 0x20]
dec r8
mov qword [rsi + 0x20], r8
cmp rbx, r8
jge 0x14002b5e3
mov rcx, qword [rsi + 0x18]
sub r8, rbx
add rcx, rdi
shl r8, 5
lea rdx, [rcx + 0x20]
call sub.VCRUNTIME140.dll_memmove
sub rdi, 0x20
sub rbx, 1
jns 0x14002b5a0
mov rdi, qword [rbp + 0x1c0d0]
mov ecx, dword [rdi + 0x40]
movsxd rax, ecx
mov rcx, qword [rdi + rax*8 + 0x48]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_SafeArrayGetDim]
lea rbx, [rdi + 0x70]
mov edx, 0x2e
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_wcsrchr]
test rax, rax
je 0x14002b622
mov word [rax], r12w
jmp 0x14002b626
mov word [rbx], r12w
add r13, 2
mov qword [rbp - 0x50], r13
nop
movzx eax, word [r13]
cmp ax, 0x20
je 0x14002b641
cmp ax, 9
jne 0x14002b647
add r13, 2
jmp 0x14002b630
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x28], r13
test ax, ax
je 0x14002ba16
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp word [r13 + rsi*2], 0
jne 0x14002b660
mov qword [rsp + 0x70], rsi
mov qword [rdi + 0x6d0], r12
jmp 0x14002a320
cmp qword [rdi + 0x278], 0
je 0x14002b769
mov rax, qword [0x1400fe060]
cmp qword [rax + 0xd8], 0
jne 0x14002b769
mov r8d, 3
lea rdx, [0x1400e35d8]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x14002b6d8
mov r8d, 3
lea rdx, [0x1400e35e0]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002ca02
lea rbx, [r13 + 6]
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14002b6ef
cmp ax, 9
jne 0x14002b6f5
add rbx, 2
jmp 0x14002b6e0
test ax, ax
je 0x14002b70f
cmp ax, 0x7b
jne 0x14002ca02
cmp word [rbx + 2], 0
jne 0x14002ca02
mov rcx, qword [rdi + 0x280]
lea rdx, [rbp + 0x4050]
sub rdx, rcx
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14002b720
mov edx, 0x2e
lea rcx, [rbp + 0x4050]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
mov rcx, rax
mov dword [rbp - 0x70], r12d
movzx eax, word [r13]
mov word [rcx + 2], ax
cmp word [rbx], 0x7b
mov eax, dword [rdi + 0x28c]
sete byte [rsp + 0x42]
mov dword [rbp - 0x58], eax
jmp 0x14002ba16
lea rdx, [rsp + 0x42]
mov rcx, r13
call fcn.140029bf0
test al, al
je 0x14002b7b2
lea rdx, [rbp + 0x4050]
mov rcx, r13
sub rdx, r13
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14002b790
mov eax, dword [rdi + 0x28c]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x70], r12d
jmp 0x14002ba16
mov rax, qword [0x1400fe060]
cmp qword [rax + 0xd8], 0
jne 0x14002ba8e
mov r8d, 5
lea rdx, str.Class
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002b895
movzx eax, word [r13 + 0xa]
cmp ax, 0x20
je 0x14002b7fa
cmp ax, 9
jne 0x14002b895
lea rbx, [r13 + 0xc]
nop
movzx edx, word [rbx]
cmp dx, 0x20
je 0x14002b80f
cmp dx, 9
jne 0x14002b815
add rbx, 2
jmp 0x14002b800
lea rcx, str.__t____:_______.___
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x14002b895
mov rax, 0xffffffffffffffff
nop
cmp word [rbx + rax*2 + 2], 0
lea rax, [rax + 1]
jne 0x14002b830
lea rdx, [rax - 1]
cmp word [rbx + rdx*2], 0x7b
lea rdx, [rbx + rdx*2]
sete byte [rsp + 0x42]
jne 0x14002b862
mov word [rdx], r12w
mov rcx, r13
sub rdx, r13
sar rdx, 1
call fcn.140025c70
lea rcx, [rbp + 0x4050]
sub rcx, rbx
nop dword [rax]
movzx eax, word [rbx]
mov word [rbx + rcx], ax
add rbx, 2
test ax, ax
jne 0x14002b870
mov eax, dword [rdi + 0x28c]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x70], 1
jmp 0x14002ba16
cmp dword [rdi + 0x40], 0
je 0x14002ba8e
mov rbx, r13
movzx ecx, word [rbx]
test ecx, 0xffffff80
jne 0x14002b8bf
mov edx, 0x107
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
movzx ecx, word [rbx]
test eax, eax
jne 0x14002b8d1
cmp cx, 0x5f
je 0x14002b8d1
cmp cx, 0x7f
ja 0x14002b8d1
cmp cx, 0x2e
jne 0x14002b8d7
add rbx, 2
jmp 0x14002b8a2
cmp rbx, r13
jbe 0x14002b9a2
cmp cx, 0x20
je 0x14002b8ec
cmp cx, 9
jne 0x14002b8f6
movzx ecx, word [rbx + 2]
add rbx, 2
jmp 0x14002b8e0
cmp cx, 0x3a
jne 0x14002b924
cmp word [rbx + 2], 0x3d
jne 0x14002b9a2
xor r8d, r8d
mov rdx, r13
mov rcx, rdi
call fcn.140035bd0
test eax, eax
jne 0x14002ba16
xor eax, eax
jmp 0x14002cba1
test cx, cx
je 0x14002b93c
cmp cx, 0x5b
je 0x14002b93c
cmp cx, 0x7b
jne 0x14002b9a2
cmp word [rbx + 2], 0
jne 0x14002b9a2
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [r13 + rdx*2], 0
jne 0x14002b943
cmp word [r13 + rdx*2 - 2], 0x7b
sete byte [rsp + 0x42]
jne 0x14002b968
dec rdx
mov rcx, r13
call fcn.140025c70
lea rdx, [rbp + 0x4050]
mov rcx, r13
sub rdx, r13
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x14002b980
mov eax, dword [rdi + 0x28c]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x70], 2
jmp 0x14002ba16
mov r8d, 6
lea rdx, str.Static
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002b9d9
movzx eax, word [r13 + 0xc]
cmp ax, 0x20
je 0x14002b9cd
cmp ax, 9
jne 0x14002b9d9
lea rdx, [r13 + 0xe]
mov r8b, 1
jmp 0x14002b90d
cmp word [r13], 0x23
jne 0x14002ca19
mov ebx, dword [rdi + 0x28c]
mov rdx, r13
mov rcx, rdi
call fcn.14002d250
test eax, eax
je 0x14002b91d
cmp eax, 3
jne 0x14002ca19
mov eax, dword [rbp - 0x30]
mov dword [rdi + 0x288], eax
mov dword [rdi + 0x28c], ebx
movzx r15d, byte [rbp + 0x1c0e0]
test r15b, r15b
je 0x14002c93a
mov ebx, dword [rbp - 0x40]
inc ebx
mov ecx, ebx
mov dword [rbp - 0x40], ebx
sub ecx, 1
je 0x14002bb80
sub ecx, 1
je 0x14002ba98
sub ecx, 1
je 0x14002c8b9
cmp ecx, 7
jne 0x14002c93a
lea r8, [0x1400cb664]
cmp r15b, 0x12
je 0x14002ba6a
lea eax, [r15 + 0x5c]
cmp al, 1
ja 0x14002bb01
movzx ecx, byte [rsp + 0x61]
sub ecx, 0x11
je 0x14002bafa
sub ecx, 0x91
je 0x14002bafa
cmp ecx, 1
jne 0x14002bb01
lea r8, str.RCtrl_up
jmp 0x14002bb01
mov r15, qword [rsp + 0x70]
jmp 0x14002bb9e
mov eax, dword [0x1400e0c48]
lea r8, [rbp - 0x28]
cmp byte [rsp + 0x49], 0
mov r9d, 1
mov dword [r13], eax
mov rcx, rdi
movzx eax, word [0x1400e0c4c]
setne dl
add dl, 0xc5
mov word [r13 + 4], ax
mov qword [rsp + 0x20], r12
call fcn.140032050
cmp byte [rsp + 0x62], 0
je 0x14002ba51
lea r8, [rbp + 0x50]
mov rcx, r13
lea rdx, str.if_not_GetKeyState___s__
call fcn.140005bf0
mov dword [rbp - 0x40], 9
jmp 0x14002bb96
lea r8, str.LCtrl_up
lea rax, [rbp + 0x50]
mov qword [rdi + 0x6d0], r12
lea r9, [rbp + 0x10]
mov qword [rsp + 0x20], rax
lea rdx, str.Blind_s_s_s_DownR
mov rcx, r13
call fcn.140005bf0
mov r9d, 1
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x28]
mov dl, 0x41
mov rcx, rdi
call fcn.140032050
test eax, eax
je 0x14002b91d
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.140032050
lea r8, [rbp + 0x90]
mov qword [rdi + 0x6d0], r12
lea rdx, str._s_up::
mov rcx, r13
call fcn.140005bf0
mov dword [rbp - 0x40], 2
jmp 0x14002bb96
lea r8, [rbp + 0x90]
mov rcx, r13
lea rdx, str._s::
call fcn.140005bf0
movsxd r15, eax
mov qword [rsp + 0x70], r15
xor esi, esi
cmp word [r13], 0x3a
mov r14d, esi
jne 0x14002bdb4
movzx ecx, word [r13 + 2]
lea rax, [r13 + 2]
test cx, cx
je 0x14002bdb4
mov qword [rbp + 8], rax
mov r8, rax
cmp cx, 0x3a
je 0x14002bbf0
lea edx, [rsi + 0x3a]
mov rcx, rax
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
mov r12, rax
test rax, rax
je 0x14002bdb1
mov r8, qword [rbp + 8]
add r12, 2
jmp 0x14002bc02
cmp word [r13 + 4], si
lea rax, [r13 + 4]
je 0x14002bdb4
mov r12, rax
mov qword [rbp - 0x10], r12
test r12, r12
je 0x14002bdb4
movzx ebx, byte [0x140101c60]
mov rdi, r8
mov byte [rsp + 0x48], bl
cmp r8, r12
jae 0x14002bc79
mov edx, 0xffdf
nop word [rax + rax]
movzx ebx, word [rdi]
test ebx, 0xffffff80
je 0x14002bc3f
mov ecx, esi
jmp 0x14002bc53
mov edx, 2
mov ecx, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov edx, 0xffdf
add rdi, 2
movzx eax, bx
and ax, dx
test ecx, ecx
cmove ax, bx
cmp ax, 0x58
je 0x14002bc70
cmp rdi, r12
jb 0x14002bc30
jmp 0x14002bc79
cmp word [rdi], 0x30
setne byte [rsp + 0x48]
movzx esi, word [0x1400ff9ac]
lea r15, [0x140000000]
movzx r13d, byte [rsp + 0x48]
mov rbx, r12
mov r12d, 9
nop word [rax + rax]
movzx eax, word [rbx]
mov rdx, r14
test ax, ax
je 0x14002bd99
movzx ecx, ax
movzx eax, cx
cmp cx, si
je 0x14002bcd0
cmp cx, 0x3a
je 0x14002bcd0
movzx ecx, word [rbx + 2]
add rbx, 2
movzx eax, cx
test cx, cx
jne 0x14002bcb2
test ax, ax
je 0x14002bd99
movzx ecx, word [rbx + 2]
lea rdi, [rbx + 2]
cmp ax, 0x3a
jne 0x14002bd10
cmp cx, ax
jne 0x14002bcf8
mov r14, rbx
test r13b, r13b
jne 0x14002bd99
cmp cx, 0x3a
mov r14, rbx
cmovne rdi, rbx
cmovne r14, rdx
mov rbx, rdi
add rbx, 2
jmp 0x14002bca0
movzx eax, cx
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x14002bd28.99
cdqe
mov ecx, dword [r15 + rax*4 + 0x2cc10]
add rcx, r15
jmp rcx
mov eax, 7
jmp 0x14002bd58
mov eax, 8
jmp 0x14002bd58
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
jmp 0x14002bd58
mov eax, 0xa
jmp 0x14002bd58
mov eax, SafeArrayDestroy
jmp 0x14002bd58
mov word [rdi], r12w
jmp case.0x14002bd28.99
mov eax, reloc.WSOCK32.dll_inet_ntoa
mov word [rdi], ax
mov r8, 0xffffffffffffffff
cmp word [rdi + r8*2 + 2], 0
lea r8, [r8 + 1]
jne 0x14002bd62
lea r8, [r8*2 + 2]
mov rdx, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
cmp word [rbx], 0x3a
jne 0x14002bd90
cmp word [rdi], 0x3a
cmove rbx, rdi
add rbx, 2
jmp 0x14002bca0
mov r15, qword [rsp + 0x70]
mov r12, qword [rbp - 0x10]
mov r13, qword [rbp - 0x50]
test r14, r14
jne 0x14002be58
xor esi, esi
mov r12, rsi
lea rdx, [0x1400e346c]
mov rcx, r13
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov r14, rax
test rax, rax
je 0x14002c6b2
cmp rax, r13
jne 0x14002bde0
cmp word [rax + 4], 0x3a
jne 0x14002bde0
add r14, 2
mov rbx, r14
cmp r14, r13
jbe 0x14002be08
nop dword [rax + rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14002bdff
cmp ax, 9
jne 0x14002be08
sub rbx, 2
cmp rbx, r13
ja 0x14002bdf0
movzx edi, word [rbx]
mov rcx, r13
mov word [rbx], si
movzx eax, word [rcx]
cmp ax, 0x20
je 0x14002be20
cmp ax, 9
jne 0x14002be26
add rcx, 2
jmp 0x14002be11
xor r8d, r8d
xor edx, edx
call fcn.14000f7a0
mov dword [rbp - 8], eax
test eax, eax
je 0x14002be42
cmp eax, 4
je 0x14002b91d
jmp 0x14002be45
mov r14, rsi
mov word [rbx], di
test r14, r14
je 0x14002c6b2
movzx esi, word [0x1400ff9ac]
cmp r14, r13
jbe 0x14002c6b9
mov rax, qword [0x1400fe060]
cmp qword [rax + 0xd8], 0
jne 0x14002caa1
mov rdi, qword [rbp + 0x1c0d0]
mov rax, qword [rdi + 0x668]
test rax, rax
je 0x14002be92
cmp byte [rax], 0x1a
je 0x14002ca30
xor ebx, ebx
mov word [r14], bx
add r14, 4
test r12, r12
jne 0x14002c391
movzx eax, word [r14]
test ax, ax
je 0x14002befc
mov rdx, r14
cmp ax, 0x20
je 0x14002bebd
cmp ax, 9
jne 0x14002bec7
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x14002beb1
mov rax, rdx
sub rax, r14
cmp rax, 2
jb 0x14002befc
mov r8, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rdx + r8*2 + 2], bx
lea r8, [r8 + 1]
jne 0x14002bee0
lea r8, [r8*2 + 2]
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
mov rsi, r14
cmp word [r14], bx
je 0x14002c391
movzx eax, word [r14 + 2]
test ax, ax
je 0x14002c051
movzx r13d, byte [rbp + 0x1c0e8]
lea r9, [0x140000000]
mov edi, dword [rbp - 0x60]
xor dl, dl
xor r8b, r8b
nop
cmp ax, 0x20
je case.0x14002bf5f.40
movzx eax, word [rsi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x14002bf5f.40
cdqe
movzx eax, byte [r9 + rax + 0x2cc88]
mov ecx, dword [r9 + rax*4 + 0x2cc68]
add rcx, r9
jmp rcx
mov r8b, 1
jmp case.0x14002bf5f.35
mov dl, 1
jmp case.0x14002bf5f.35
test r8b, r8b
jne 0x14002bf7e
test dl, dl
jne 0x14002bf82
or edi, 1
jmp case.0x14002bf5f.35
test dl, dl
je 0x14002bf88
or r13b, 4
xor dl, dl
test r8b, r8b
je case.0x14002bf5f.35
or r13b, 8
jmp 0x14002bffa
test r8b, r8b
jne 0x14002bfa1
test dl, dl
jne 0x14002bfa5
or edi, 2
jmp case.0x14002bf5f.35
test dl, dl
je 0x14002bfab
or r13b, 1
xor dl, dl
test r8b, r8b
je case.0x14002bf5f.35
or r13b, 2
jmp 0x14002bffa
test r8b, r8b
jne 0x14002bfc4
test dl, dl
jne 0x14002bfc8
or edi, 4
jmp case.0x14002bf5f.35
test dl, dl
je 0x14002bfce
or r13b, 0x10
xor dl, dl
test r8b, r8b
je case.0x14002bf5f.35
or r13b, 0x20
jmp 0x14002bffa
test r8b, r8b
jne 0x14002bfe7
test dl, dl
jne 0x14002bfeb
or edi, 8
jmp case.0x14002bf5f.35
test dl, dl
je 0x14002bff1
or r13b, 0x40
xor dl, dl
test r8b, r8b
je case.0x14002bf5f.35
or r13b, 0x80
xor r8b, r8b
movzx eax, word [rsi + 4]
add rsi, 2
test ax, ax
jne 0x14002bf30
xor ecx, ecx
mov dword [rbp - 0x60], edi
mov byte [rbp + 0x1c0e8], r13b
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140018d40
mov r13, qword [rbp - 0x50]
movzx r15d, al
mov rdi, qword [rbp + 0x1c0d0]
mov byte [rbp + 0x1c0e0], al
test al, al
je 0x14002c399
jmp 0x14002c05b
mov r15b, 0xff
mov byte [rbp + 0x1c0e0], r15b
cmp word [r13], bx
mov rbx, r13
je 0x14002c18f
movzx eax, word [r13 + 2]
lea r9, [r13 + 2]
xor dl, dl
xor r8b, r8b
test ax, ax
je 0x14002c18f
movzx r15d, byte [rsp + 0x40]
lea r10, [0x140000000]
mov r13d, dword [rbp - 0x5c]
cmp ax, 0x20
je case.0x14002c0c0.40
movzx eax, word [rbx]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x14002c0c0.40
cdqe
movzx eax, byte [r10 + rax + 0x2cd08]
mov ecx, dword [r10 + rax*4 + 0x2cce8]
add rcx, r10
jmp rcx
mov r8b, 1
jmp case.0x14002c0c0.35
mov dl, 1
jmp case.0x14002c0c0.35
test r8b, r8b
jne 0x14002c0e3
test dl, dl
jne 0x14002c0e7
or r13d, 1
jmp case.0x14002c0c0.35
test dl, dl
je 0x14002c0ed
or r15b, 4
xor dl, dl
test r8b, r8b
je case.0x14002c0c0.35
or r15b, 8
jmp 0x14002c162
test r8b, r8b
jne 0x14002c107
test dl, dl
jne 0x14002c10b
or r13d, 2
jmp case.0x14002c0c0.35
test dl, dl
je 0x14002c111
or r15b, 1
xor dl, dl
test r8b, r8b
je case.0x14002c0c0.35
or r15b, 2
jmp 0x14002c162
test r8b, r8b
jne 0x14002c12b
test dl, dl
jne 0x14002c12f
or r13d, 4
jmp case.0x14002c0c0.35
test dl, dl
je 0x14002c135
or r15b, 0x10
xor dl, dl
test r8b, r8b
je case.0x14002c0c0.35
or r15b, 0x20
jmp 0x14002c162
test r8b, r8b
jne 0x14002c14f
test dl, dl
jne 0x14002c153
or r13d, 8
jmp case.0x14002c0c0.35
test dl, dl
je 0x14002c159
or r15b, 0x40
xor dl, dl
test r8b, r8b
je case.0x14002c0c0.35
or r15b, 0x80
xor r8b, r8b
movzx eax, word [r9 + 2]
mov rbx, r9
add r9, 2
test ax, ax
jne 0x14002c091
mov dword [rbp - 0x5c], r13d
mov r13, qword [rbp - 0x50]
mov byte [rsp + 0x40], r15b
movzx r15d, byte [rbp + 0x1c0e0]
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
xor r8d, r8d
xor edx, edx
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140018d40
lea rdx, [0x1400e1120]
mov byte [rsp + 0x61], al
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
test rax, rax
movzx eax, byte [rsp + 0x61]
setne dil
lea ecx, [rax - 1]
cmp cl, 5
ja 0x14002c1d5
cmp al, 3
jne 0x14002c1db
add al, 0x66
cmp al, 5
ja 0x14002c1df
mov cl, 1
jmp 0x14002c1e1
xor cl, cl
lea eax, [r15 - 1]
cmp al, 5
ja 0x14002c1ef
cmp r15b, 3
jne 0x14002c1f7
lea eax, [r15 + 0x66]
cmp al, 5
ja 0x14002c1fb
mov al, 1
jmp 0x14002c1fd
xor al, al
mov byte [rsp + 0x49], al
test cl, cl
jne 0x14002c20e
mov byte [rsp + 0x62], 1
test al, al
jne 0x14002c213
mov byte [rsp + 0x62], 0
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x14002c220
cmp rax, 1
jne 0x14002c244
movzx ecx, word [rbx]
call qword [sym.imp.USER32.dll_IsCharUpperW]
test eax, eax
lea rax, [0x1400e36e0]
jne 0x14002c24b
lea rax, [0x1400cb664]
lea rcx, [0x1400cb664]
mov qword [rsp + 0x28], r13
test dil, dil
mov qword [rsp + 0x20], rax
lea r9, [0x1400e3328]
mov edx, SafeArrayAllocDescriptor
cmovne r9, rcx
lea r8, [0x1400e36e8]
lea rcx, [rbp + 0x90]
call fcn.1400ab290
mov r8d, SafeArrayAllocDescriptor
lea rcx, [rbp + 0x50]
mov rdx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov eax, 7
lea rcx, [rbp + 0x10]
xor edi, edi
mov r8d, eax
mov rdx, r14
mov word [rbp + 0x8e], di
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
sub rsi, r14
mov word [rbp + 0x1e], di
sar rsi, 1
cmp rsi, 8
jae 0x14002c2c8
mov word [rbp + rsi*2 + 0x10], di
mov ebx, edi
mov dword [rbp - 0x40], ebx
cmp word [rbp + 0x10], di
jne 0x14002c8aa
cmp r15b, 0xd
jne 0x14002c305
lea rdx, str.Return
lea rcx, [rbp + 0x50]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
je 0x14002c37c
mov rdi, qword [rbp + 0x1c0d0]
xor r12d, r12d
jmp 0x14002ba2a
cmp r15b, 0x13
jne 0x14002c8aa
movzx eax, word [rbp + 0x50]
mov ebx, eax
test eax, 0xffffff80
je 0x14002c320
mov edx, edi
jmp 0x14002c333
mov edx, 2
mov ecx, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov edx, eax
movzx eax, word [rbp + 0x50]
movzx ecx, bx
mov esi, 0xffdf
and cx, si
test edx, edx
cmove cx, bx
cmp cx, 0x50
je 0x14002c37c
movzx ebx, ax
test ebx, 0xffffff80
je 0x14002c359
mov eax, edi
jmp 0x14002c366
mov edx, 2
mov ecx, ebx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
movzx ecx, bx
and cx, si
test eax, eax
cmove cx, bx
cmp cx, 0x42
jne 0x14002c8aa
mov rdi, qword [rbp + 0x1c0d0]
xor r15b, r15b
mov byte [rbp + 0x1c0e0], r15b
xor ebx, ebx
jmp 0x14002c399
movzx r15d, byte [rbp + 0x1c0e0]
cmp byte [rdi + 0x290], 0
je 0x14002c3d0
mov r9d, 0xff
mov byte [rdi + 0x290], 0
xor r8d, r8d
mov qword [rsp + 0x20], rbx
mov dl, 0x67
mov rcx, rdi
call fcn.140032050
test eax, eax
je 0x14002b91d
mov qword [rdi + 0x6d0], rbx
mov r8b, 1
mov rdx, r13
mov rcx, rdi
call fcn.14002fa20
test eax, eax
je 0x14002b91d
test r12, r12
je 0x14002c50c
cmp word [r12], 0
je 0x14002ca4e
mov rcx, qword [rdi + 0x688]
lea rdx, [0x1400cb664]
movzx ebx, byte [rsp + 0x48]
mov rax, r14
mov r8, qword [rbp + 8]
test bl, bl
mov byte [rsp + 0x30], 0
mov r9, r12
cmovne rax, rdx
movzx edx, byte [rsp + 0x63]
mov byte [rsp + 0x28], dl
mov rdx, rcx
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x20], rax
call fcn.140010bd0
test eax, eax
je 0x14002b91d
movzx eax, word [r14]
test ax, ax
je 0x14002c8b1
test bl, bl
je 0x14002c4e7
mov rdx, r14
nop dword [rax]
cmp ax, 0x20
je 0x14002c46c
cmp ax, 9
jne 0x14002c476
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x14002c460
xor r12d, r12d
xor r9d, r9d
mov qword [rsp + 0x38], r12
xor r8d, r8d
mov qword [rsp + 0x30], r12
mov rcx, rdi
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r12
call fcn.14002fb60
test eax, eax
je 0x14002b91d
mov rax, qword [rdi + 0x668]
movzx ecx, byte [rax]
lea eax, [rcx - 9]
cmp al, 0x18
jbe 0x14002c4c6
sub cl, 0x69
cmp cl, 0xa
ja 0x14002c4ea
mov eax, 0x707
bt eax, ecx
jae 0x14002c4ea
mov eax, 0x3a
lea rdx, str.Invalid_single_line_hotkey_hotstring.
mov r8, r13
mov word [r14 - 4], ax
mov rcx, rdi
call fcn.140046d70
jmp 0x14002cba1
xor r12d, r12d
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.140032050
test eax, eax
jne 0x14002ba1e
jmp 0x14002cba1
movzx ebx, r12w
cmp word [r14], r12w
je 0x14002c5a1
xor edx, edx
mov rcx, r14
call fcn.14000d420
movzx ebx, ax
test ax, ax
jne 0x14002c584
mov qword [rsp + 0x38], r12
xor r9d, r9d
mov qword [rsp + 0x30], r12
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov rdx, r14
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.14002fb60
test eax, eax
je 0x14002b91d
mov rax, qword [rdi + 0x668]
movzx ecx, byte [rax]
lea eax, [rcx - 9]
cmp al, 0x18
jbe 0x14002c4c6
sub cl, 0x69
cmp cl, 0xa
ja 0x14002c584
mov eax, 0x707
bt eax, ecx
jb 0x14002c4c6
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.140032050
test eax, eax
je 0x14002b91d
lea r8, [rbp - 0x78]
mov rcx, r13
lea rdx, [rsp + 0x64]
call fcn.14000fe40
mov rdi, rax
test rax, rax
je 0x14002c63e
test bx, bx
je 0x14002c5d3
mov rdi, qword [rbp + 0x1c0d0]
mov word [rax + 6], bx
jmp 0x14002ba1e
mov rax, qword [rax + 0x28]
test rax, rax
je 0x14002c5f6
mov rcx, qword [0x140102a70]
cmp qword [rax + 8], rcx
je 0x14002ca65
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14002c5e3
mov rbx, qword [rbp + 0x1c0d0]
mov rcx, rdi
movzx r8d, byte [rsp + 0x64]
mov rdx, qword [rbx + 0x688]
call fcn.14000f630
test rax, rax
je 0x14002ca8a
cmp byte [rbp - 0x78], r12b
jne 0x14002c62e
cmp byte [0x140101d23], r12b
je 0x14002c89e
mov byte [rdi + 0x14], 1
mov rdi, qword [rbp + 0x1c0d0]
jmp 0x14002ba1e
mov rdi, qword [rbp + 0x1c0d0]
movzx edx, bx
movzx r9d, byte [rsp + 0x64]
mov byte [rsp + 0x20], r12b
mov rcx, qword [rdi + 0x688]
mov r8, qword [rcx + 8]
call fcn.14000ee60
test rax, rax
jne 0x14002ba16
cmp dword [rbp - 8], 3
jne 0x14002b91d
mov r9, r13
lea r8, str.Note:_The_hotkey__s_will_not_be_active_because_it_does_not_exist_in_the_current_keyboard_layout.
mov edx, 0x80
lea rcx, [rbp + 0xd0]
call fcn.1400ab290
xorps xmm3, xmm3
mov qword [rsp + 0x20], r12
xor r8d, r8d
lea rcx, [rbp + 0xd0]
mov edx, 0x10000
call fcn.1400b1f70
jmp 0x14002ba1e
movzx esi, word [0x1400ff9ac]
cmp word [r13 + r15*2 - 2], 0x3a
jne 0x14002c79e
cmp r15, 1
je 0x14002cabc
movzx eax, word [r13]
mov rcx, r13
test ax, ax
je 0x14002c717
movzx edx, word [0x1400ffa80]
cmp ax, 0x20
je 0x14002c79e
cmp ax, 9
je 0x14002c79e
cmp ax, dx
je 0x14002c79e
cmp ax, si
je 0x14002c79e
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14002c6e4
cmp word [r13 + r15*2 - 4], 0x3a
jne 0x14002c726
cmp r15, 2
ja 0x14002c79e
xor r12d, r12d
lea rdx, str.Default
mov rcx, r13
mov word [r13 + r15*2 - 2], r12w
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
mov rdi, qword [rbp + 0x1c0d0]
test eax, eax
jne 0x14002c783
mov rax, qword [rdi + 0x30]
test rax, rax
je 0x14002c783
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14002c783
cmp byte [rcx], 0x75
jne 0x14002c783
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x76
mov rcx, rdi
call fcn.140032050
test eax, eax
je 0x14002b91d
jmp 0x14002ba16
xor r8d, r8d
mov rdx, r13
mov rcx, rdi
call fcn.14002fa20
test eax, eax
je 0x14002b91d
jmp 0x14002ba16
cmp word [r13], 0x23
mov rdi, qword [rbp + 0x1c0d0]
jne 0x14002c7dc
mov ebx, dword [rdi + 0x28c]
mov rdx, r13
mov rcx, rdi
call fcn.14002d250
test eax, eax
je 0x14002b91d
cmp eax, 3
jne 0x14002c7dc
mov eax, dword [rbp - 0x30]
xor r12d, r12d
mov dword [rdi + 0x288], eax
jmp 0x14002ba10
movzx ecx, word [r13]
mov edx, 0xfffd
lea eax, [rcx - 0x7b]
test dx, ax
je 0x14002c823
xor r12d, r12d
xor r9d, r9d
mov qword [rsp + 0x38], r12
xor r8d, r8d
mov qword [rsp + 0x30], r12
mov rdx, r13
mov qword [rsp + 0x28], r12
mov rcx, rdi
mov qword [rsp + 0x20], r12
call fcn.14002fb60
test eax, eax
je 0x14002b91d
jmp 0x14002ba16
cmp cx, 0x7b
mov rcx, rdi
setne dl
xor r12d, r12d
add dl, 0x77
mov qword [rsp + 0x20], r12
xor r9d, r9d
xor r8d, r8d
call fcn.140032050
test eax, eax
je 0x14002b91d
add r13, 2
mov qword [rbp - 0x50], r13
movzx eax, word [r13]
cmp ax, 0x20
je 0x14002c864
cmp ax, 9
jne 0x14002c86a
add r13, 2
jmp 0x14002c853
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x28], r13
test ax, ax
je 0x14002ba16
mov rsi, 0xffffffffffffffff
inc rsi
cmp word [r13 + rsi*2], r12w
jne 0x14002c882
mov qword [rsp + 0x70], rsi
mov qword [rdi + 0x6d0], r12
jmp 0x14002a320
mov rdi, qword [rbp + 0x1c0d0]
jmp 0x14002ba16
mov rdi, qword [rbp + 0x1c0d0]
xor r12d, r12d
jmp 0x14002ba16
mov eax, dword [0x1400e0c48]
lea r8, [rbp - 0x28]
cmp byte [rsp + 0x49], 0
mov r9d, 1
mov dword [r13], eax
mov rcx, rdi
movzx eax, word [0x1400e0c4c]
setne dl
add dl, 0xc5
mov word [r13 + 4], ax
mov qword [rsp + 0x20], r12
call fcn.140032050
lea r8, [rbp + 0x50]
mov rcx, r13
lea rdx, str.Blind_s_Up
call fcn.140005bf0
mov r9d, 1
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x28]
mov dl, 0x41
mov rcx, rdi
call fcn.140032050
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.140032050
xor al, al
mov byte [rbp + 0x1c0e0], al
mov rax, qword [rbp - 0x38]
lea r15, [rbp + 0x14070]
mov r13, qword [rsp + 0x50]
lea rcx, [rbp + 0xc060]
movzx ebx, byte [rsp + 0x41]
mov rsi, rax
mov r14d, dword [rbp - 0x2c]
mov qword [rsp + 0x70], rax
lea rax, [rbp + 0xc060]
cmp qword [rbp + 0x20], rax
mov qword [rbp - 0x50], r13
cmovne r15, rcx
mov qword [rbp - 0x28], r13
mov qword [rsp + 0x50], r15
jmp 0x14002a15f
mov r8, r15
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, str.Continuation_section_too_long.
call fcn.140046d70
jmp 0x14002cba1
cmp qword [rdi + 0x278], 0
lea rdx, [0x1400e3558]
lea rax, str.Not_a_valid_method__class_or_property_definition.
mov rcx, rdi
cmovne rax, rdx
lea r8, [rbp + 0x4050]
mov rdx, rax
call fcn.140046d70
jmp 0x14002cba1
lea r8, [rbp + 0x4050]
mov rcx, rdi
lea rdx, [0x1400e3558]
call fcn.140046d70
jmp 0x14002cba1
lea r8, [rbp + 0x4050]
lea rdx, str.Functions_cannot_contain_functions.
call fcn.140046d70
jmp 0x14002cba1
mov r8, r13
lea rdx, str.Not_a_valid_property_getter_setter.
mov rcx, rdi
call fcn.140046d70
jmp 0x14002cba1
mov r8, r13
lea rdx, str.Not_a_valid_method__class_or_property_definition.
mov rcx, rdi
call fcn.140046d70
jmp 0x14002cba1
mov r8, r13
mov qword [rdi + 0x6d0], rax
lea rdx, str.IfWin_should_be_IfWin.
mov rcx, rdi
call fcn.140046d70
jmp 0x14002cba1
mov r8, r13
lea rdx, str.This_hotstring_is_missing_its_abbreviation.
mov rcx, rdi
call fcn.140046d70
jmp 0x14002cba1
mov rbx, qword [rbp + 0x1c0d0]
lea rdx, str.Duplicate_hotkey.
mov r8, r13
mov rcx, rbx
mov qword [rbx + 0x6d0], r12
call fcn.140046d70
jmp 0x14002cba1
mov r8, r13
lea rdx, str.Out_of_memory.
mov rcx, rbx
call fcn.140046d70
jmp 0x14002cba1
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
mov r8, r13
call fcn.140046d70
jmp 0x14002cba1
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, str.This_line_does_not_contain_a_recognized_action.
mov r8, r13
call fcn.140046d70
jmp 0x14002cba1
mov r8, rbx
jmp 0x14002c986
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, [0x1400e34f8]
mov r8, r13
call fcn.140046d70
jmp 0x14002cba1
cmp word [rbp + 0x4050], 0
je 0x14002cb75
cmp dword [rbp - 0x70], 0
mov rcx, rdi
mov ebx, dword [rdi + 0x28c]
mov eax, dword [rbp - 0x58]
mov dword [rdi + 0x28c], eax
je 0x14002cb41
cmp byte [rsp + 0x42], 0
lea rax, str.Missing___
lea rdx, [0x1400e3558]
cmovne rdx, rax
lea r8, [rbp + 0x4050]
call fcn.140046d70
jmp 0x14002cba1
mov qword [rsp + 0x38], r12
lea rdx, [rbp + 0x4050]
mov qword [rsp + 0x30], r12
xor r9d, r9d
mov qword [rsp + 0x28], r12
mov r8b, 3
mov qword [rsp + 0x20], r12
call fcn.14002fb60
test eax, eax
je 0x14002b91d
mov dword [rdi + 0x28c], ebx
cmp dword [rdi + 0x40], 0
je 0x14002cb96
cmp dword [rbp - 0x30], 0
jne 0x14002cb96
lea r8, [rdi + 0x70]
mov rcx, rdi
lea rdx, str.Missing___
call fcn.140046d70
jmp 0x14002cba1
inc dword [rdi + 0x28c]
mov eax, 1
add rsp, 0x1c188
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret