Function at 0x14002aec0
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.1400caa90
sub rsp, rax
mov ebx, dword [0x140103818]
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.14002dd70
lea r8d, [r12 + 2]
mov qword [rsp + 0x70], rax
lea rdx, [0x1400e44f8]
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 0x14002af95
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 0x14002d988
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 0x14002b00d
mov rdx, r13
mov rcx, rdi
call fcn.14002e0e0
test eax, eax
je 0x14002c77d
mov byte [rsp + 0x63], 0
mov r14d, r12d
mov dword [rbp - 0x74], r12d
jmp 0x14002b030
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.14002dd70
mov r12, rax
mov qword [rbp - 0x38], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x14002b15e
test r14d, r14d
jne 0x14002b15e
lea r8d, [r14 + 2]
mov rcx, r15
lea rdx, [0x1400e451c]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
jne 0x14002b131
test bl, bl
jne 0x14002b09b
cmp word [r15 + 4], 0x3a
jne 0x14002b09b
cmp word [r15 + 6], 0x3a
je 0x14002b139
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 0x14002b030
mov rdx, r15
nop dword [rax]
cmp ax, 0x20
je 0x14002b0dc
cmp ax, 9
jne 0x14002b0e6
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x14002b0d0
mov rax, rdx
sub rax, r15
sar rax, 1
je 0x14002b120
cmp r12, 0xffffffffffffffff
jne 0x14002b10d
nop word [rax + rax]
inc r12
cmp word [rdx + r12*2], 0
jne 0x14002b100
jmp 0x14002b110
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 0x14002b030
jmp 0x14002b139
test bl, bl
jne 0x14002b030
mov r8d, 2
lea rdx, [0x1400e44f8]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
jne 0x14002b15e
mov bl, 1
mov byte [rsp + 0x41], bl
jmp 0x14002b030
test bl, bl
je 0x14002b210
cmp r12, 0xffffffffffffffff
jne 0x14002b030
xor r12d, r12d
mov rdi, qword [rbp + 0x1c0d0]
nop word [rax + rax]
test rsi, rsi
je 0x14002c876
cmp word [rbp + 0x4050], 0
je 0x14002c37b
mov ebx, dword [rdi + 0x28c]
mov eax, dword [rbp - 0x58]
mov dword [rdi + 0x28c], eax
cmp word [r13], 0x7b
je 0x14002c26a
cmp byte [rsp + 0x42], 0
jne 0x14002c26a
mov esi, dword [rbp - 0x70]
test esi, esi
jne 0x14002d85d
cmp dword [rdi + 0x40], esi
je 0x14002b1e2
mov rax, qword [0x1400ff050]
cmp qword [rax + 0xd8], 0
je 0x14002d82c
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.140030cc0
jmp 0x14002c302
test r14d, r14d
jne 0x14002b764
cmp r12, 0xffffffffffffffff
je 0x14002b463
cmp word [r15], 0x28
jne 0x14002b463
movzx eax, word [r15 + 2]
lea rbx, [r15 + 2]
cmp ax, 0x3a
je 0x14002b45e
cmp word [r15 + r12*2 - 2], 0x3a
je 0x14002b45e
movzx ecx, byte [0x14010287e]
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 0x14002b29c
cmp ax, 9
jne 0x14002b2a6
movzx eax, word [rbx + 2]
add rbx, 2
jmp 0x14002b290
test ax, ax
je 0x14002b454
nop
mov rsi, rbx
test rbx, rbx
je 0x14002b2ef
movzx edx, word [rbx]
test dx, dx
je 0x14002b2ef
lea rcx, [0x1400e2230]
mov eax, SafeArrayAllocDescriptor
nop dword [rax]
cmp dx, ax
je 0x14002b310
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14002b2d0
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x14002b2c0
mov rax, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rbx + rax*2 + 2], r12w
lea rax, [rax + 1]
jne 0x14002b300
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 0x14002b373
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.1400af6b0
lea rax, [rbp + 0x28]
mov rcx, 0xffffffffffffffff
nop
inc rcx
cmp word [rax + rcx*2], r12w
jne 0x14002b360
mov qword [rbp], rcx
jmp 0x14002b424
mov r8d, 5
lea rdx, [0x1400e45d8]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002b39c
cmp word [rbx + 0xa], 0x30
setne byte [rsp + 0x5d]
jmp 0x14002b424
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 0x14002b3c2
cmp word [rbx + 0xa], 0x30
setne byte [rsp + 0x5c]
jmp 0x14002b424
movzx eax, word [rbx]
test ax, ax
je 0x14002b424
nop word [rax + rax]
movzx eax, ax
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x14002b3f6.38
lea rdx, [0x140000000]
cdqe
movzx eax, byte [rdx + rax + 0x2da5c]
mov ecx, dword [rdx + rax*4 + 0x2da44]
add rcx, rdx
jmp rcx
mov byte [rsp + 0x5e], 1
jmp case.0x14002b3f6.38
mov byte [rsp + 0x5f], 1
jmp case.0x14002b3f6.38
mov byte [rsp + 0x60], r12b
jmp case.0x14002b3f6.38
mov r14d, 2
mov dword [rbp - 0x74], r14d
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x14002b3d0
mov word [rsi], di
mov rbx, rsi
nop word [rax + rax]
cmp di, 0x20
je 0x14002b43c
cmp di, 9
jne 0x14002b446
movzx edi, word [rbx + 2]
add rbx, 2
jmp 0x14002b430
test di, di
jne 0x14002b2b0
mov rsi, qword [rsp + 0x70]
mov byte [rsp + 0x63], 1
jmp 0x14002b020
movzx ebx, byte [rsp + 0x41]
xor edx, edx
mov dword [rbp - 0x74], edx
mov r14d, edx
cmp r12, 0xffffffffffffffff
je 0x14002b170
test r12, r12
je 0x14002b030
cmp word [r15 + r12*2 - 2], 0x3a
jne 0x14002b492
cmp word [r15], 0x2c
jne 0x14002b170
movzx ebx, word [r15]
test ebx, 0xffffff80
je 0x14002b4a2
mov ecx, edx
jmp 0x14002b4b3
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 0x14002b6b6
cmp eax, 0x4f
je 0x14002b649
movzx edx, word [r15]
cmp dx, 0x3a
ja 0x14002b4f4
movabs rcx, 0x400280000000000
bt rcx, rdx
jae 0x14002b4f4
cmp word [r15 + 2], dx
je 0x14002b170
lea rcx, str.____:.___
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x14002b170
lea rdx, [0x1400e456c]
mov rcx, r15
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rdi, rax
test rax, rax
je 0x14002b71c
cmp word [r15], 0x3a
jne 0x14002b58c
movzx eax, word [r15 + 2]
lea rbx, [r15 + 2]
test ax, ax
je 0x14002b582
nop dword [rax + rax]
cmp ax, 0x3a
je 0x14002b582
movzx ecx, ax
test ecx, 0xffffff80
jne 0x14002b560
mov edx, 0x107
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
test eax, eax
jne 0x14002b575
movzx edx, word [rbx]
lea rcx, [0x1400e4578]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x14002b58c
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x14002b540
cmp word [rbx], 0x3a
je 0x14002b170
cmp word [r15], 0x2c
jne 0x14002b5ee
lea rbx, [r15 + 2]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14002b5a6
cmp ax, 9
jne 0x14002b5ac
add rbx, 2
jmp 0x14002b597
mov r8d, 2
lea rdx, [0x1400e456c]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
je 0x14002b170
lea rcx, [rbx - 2]
mov r8d, 3
lea rdx, [0x1400e2220]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
je 0x14002b170
jmp 0x14002b71c
mov rax, r15
cmp r15, rdi
jae 0x14002b605
cmp word [rax], 0x22
je 0x14002b605
add rax, 2
cmp rax, rdi
jb 0x14002b5f6
cmp rax, rdi
je 0x14002b170
movzx ecx, word [rdi + 4]
lea rdx, [rdi + 4]
test cx, cx
je 0x14002b170
movzx eax, cx
movzx ecx, ax
cmp ax, 0x22
je 0x14002b63b
movzx eax, word [rdx + 2]
add rdx, 2
movzx ecx, ax
test ax, ax
jne 0x14002b622
test cx, cx
je 0x14002b170
jmp 0x14002b71c
movzx ebx, word [r15 + 2]
test ebx, 0xffffff80
je 0x14002b65a
mov ecx, edx
jmp 0x14002b669
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 0x14002b170
movzx edx, word [r15 + 4]
lea rax, [r15 + 4]
cmp dx, 0x20
je 0x14002b6ac
cmp dx, 9
jne 0x14002b170
nop dword [rax]
cmp dx, 0x20
je 0x14002b6ac
cmp dx, 9
jne 0x14002b706
movzx edx, word [rax + 2]
add rax, 2
jmp 0x14002b6a0
mov r8d, 3
lea rdx, [0x1400e4528]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002b170
movzx edx, word [r15 + 6]
lea rax, [r15 + 6]
cmp dx, 0x20
je 0x14002b6fc
cmp dx, 9
jne 0x14002b170
nop dword [rax]
cmp dx, 0x20
je 0x14002b6fc
cmp dx, 9
jne 0x14002b706
movzx edx, word [rax + 2]
add rax, 2
jmp 0x14002b6f0
lea rcx, str.____:
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x14002b170
lea rax, [r12 + rsi]
cmp rax, 0x4000
jae 0x14002d811
cmp word [r15], 0x2c
je 0x14002b741
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 0x14002b01b
cmp r12, 0xffffffffffffffff
je 0x14002d96d
cmp r12, 0xfffffffffffffffe
je 0x14002b030
movzx eax, word [r15]
cmp ax, 0x29
jne 0x14002b7ee
xor edx, edx
mov rdi, 0xffffffffffffffff
mov r14d, edx
mov dword [rbp - 0x74], edx
inc rdi
cmp word [r15 + rdi*2], dx
jne 0x14002b791
lea rax, [rdi - 1]
lea rax, [r15 + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002b7b2
cmp cx, 9
jne 0x14002b7c0
cmp rax, r15
je 0x14002b7d0
sub rax, 2
dec rdi
jmp 0x14002b7a3
mov word [rax + 2], dx
lea rbx, [r15 + 2]
dec rdi
jmp 0x14002c1df
cmp cx, 0x20
je 0x14002b7dc
cmp cx, 9
jne 0x14002b7e2
mov word [rax], dx
mov rdi, rdx
lea rbx, [r15 + 2]
dec rdi
jmp 0x14002c1df
cmp byte [rsp + 0x5c], 0
mov qword [rbp - 0x10], r15
je 0x14002b853
test ax, ax
jne 0x14002b809
xor esi, esi
mov r12d, esi
mov qword [rbp - 0x38], rsi
jmp 0x14002b855
lea rax, [r12 - 1]
lea rax, [r15 + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002b821
cmp cx, 9
jne 0x14002b82f
cmp rax, r15
je 0x14002b83b
sub rax, 2
dec r12
jmp 0x14002b812
xor esi, esi
mov qword [rbp - 0x38], r12
mov word [rax + 2], si
jmp 0x14002b855
cmp cx, 0x20
je 0x14002b922
cmp cx, 9
je 0x14002b922
mov qword [rbp - 0x38], r12
xor esi, esi
cmp byte [rsp + 0x5d], 0
je 0x14002b86b
mov rdx, r12
mov rcx, r15
call fcn.1400269f0
mov qword [rbp - 0x38], rax
cmp byte [rsp + 0x5e], 0
mov r12d, esi
mov dword [rsp + 0x4c], esi
je 0x14002bb95
movzx eax, word [0x140100b20]
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 0x14002b8a3
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 0x14002bb8e
test ax, ax
je 0x14002bb8e
lea rcx, [rsp + 0x58]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x14002b8e0
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 0x14002b900
mov ecx, r14d
sub ecx, eax
mov eax, 0x4000
sub eax, r13d
mov dword [rsp + 0x78], ecx
jns 0x14002b933
mov ebx, esi
jmp 0x14002b944
xor esi, esi
mov word [rax], si
mov r12d, esi
mov qword [rbp - 0x38], rsi
jmp 0x14002b855
test ecx, ecx
jle 0x14002b94a
cdq
idiv ecx
mov rdx, qword [rsp + 0x50]
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x44], ebx
test ecx, ecx
je 0x14002baf2
cmp r13, 0x1388
jb 0x14002baf2
mov dword [rsp + 0x4c], esi
mov rdi, rdx
test ebx, ebx
je 0x14002ba99
nop dword [rax]
lea rdx, [rsp + 0x58]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x14002ba52
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 0x14002b9fd
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.1400adc70
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 0x14002ba89
mov r12, rax
test rbx, rbx
je 0x14002ba1c
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 0x14002ba20
mov r15, qword [rbp - 0x80]
test r14, r14
je 0x14002ba3e
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 0x14002b970
cmp dword [rsp + 0x4c], 0
je 0x14002ba97
mov rax, rdi
sub rax, qword [rsp + 0x50]
sar rax, 1
sub r13, rax
je 0x14002bac0
lea rbx, [r15 + r13]
cmp rbx, qword [rbp - 0x68]
jb 0x14002baa9
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 0x14002baa6
test r12, r12
je 0x14002ba97
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 0x14002bb91
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 0x14002bb95
mov r15, qword [rsp + 0x50]
mov dword [rsp + 0x4c], r12d
mov rsi, r15
test ebx, ebx
je 0x14002bb8a
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 0x14002bb80
lea rdi, [r14 + r14]
lea rsi, [rax + rdi]
test r15d, r15d
je 0x14002bb5c
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 0x14002bb10
mov r15, qword [rsp + 0x50]
mov dword [rsp + 0x4c], r12d
xor esi, esi
jmp 0x14002bb95
mov r15, rdx
mov dword [rsp + 0x4c], esi
cmp byte [rsp + 0x5f], 0
je 0x14002be09
movzx ecx, word [0x140100b24]
mov ebx, 0xffffffff
movzx eax, word [0x140100b20]
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 0x14002bbd0
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 0x14002bdf9
test cx, cx
je 0x14002bdf9
lea rcx, [rsp + 0x58]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x14002bc10
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 0x14002bc30
mov ecx, r15d
sub ecx, eax
mov eax, 0x4000
sub eax, edi
mov dword [rsp + 0x78], ecx
jns 0x14002bc51
mov ebx, esi
jmp 0x14002bc5d
test ecx, ecx
jle 0x14002bc63
cdq
idiv ecx
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x44], ebx
test ecx, ecx
je 0x14002bed4
cmp rdi, 0x1388
jb 0x14002bed4
mov rdi, qword [rsp + 0x50]
mov r13d, esi
test ebx, ebx
je 0x14002beca
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 0x14002bd69
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 0x14002bd14
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.1400adc70
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 0x14002bde4
mov r12, rax
test rbx, rbx
je 0x14002bd33
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 0x14002bd37
mov r14, qword [rbp - 0x68]
test r15, r15
je 0x14002bd55
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 0x14002bc90
test r13d, r13d
je 0x14002bec8
mov r15, qword [rsp + 0x50]
mov rax, rdi
mov rsi, qword [rbp - 0x80]
sub rax, r15
sar rax, 1
sub rsi, rax
je 0x14002bdbf
lea rbx, [rsi + r14]
cmp rbx, qword [rbp - 0x48]
jb 0x14002bdac
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 0x14002bde9
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 0x14002bdfc
mov r15, qword [rsp + 0x50]
test r12, r12
je 0x14002bdf7
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 0x14002c120
movzx ecx, word [0x140100b28]
mov ebx, 0xffffffff
movzx eax, word [0x140100b20]
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 0x14002be41
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 0x14002c115
test cx, cx
je 0x14002c115
lea rcx, [rsp + 0x58]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp word [rcx + rax*2], 0
jne 0x14002be80
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 0x14002bea0
mov ecx, r15d
sub ecx, eax
mov eax, 0x4000
sub eax, edi
mov dword [rsp + 0x78], ecx
jns 0x14002bf6a
mov ebx, esi
jmp 0x14002bf76
xor esi, esi
mov r15, qword [rsp + 0x50]
jmp 0x14002bdf9
mov r12, qword [rsp + 0x50]
mov r13d, esi
mov rsi, r12
test ebx, ebx
je 0x14002bf60
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 0x14002bf60
lea rdi, [r15 + r15]
lea rsi, [rax + rdi]
test r14d, r14d
je 0x14002bf3b
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 0x14002bef0
mov r15, r12
xor esi, esi
jmp 0x14002bdfc
test ecx, ecx
jle 0x14002bf7c
cdq
idiv ecx
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x44], ebx
test ecx, ecx
je 0x14002c140
cmp rdi, 0x1388
jb 0x14002c140
mov rdi, qword [rsp + 0x50]
mov r13d, esi
test ebx, ebx
je 0x14002c110
nop
lea rdx, [rsp + 0x58]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x14002c079
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 0x14002c024
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.1400adc70
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 0x14002c0f4
mov r12, rax
test rbx, rbx
je 0x14002c043
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 0x14002c047
mov r14, qword [rbp - 0x68]
test r15, r15
je 0x14002c065
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 0x14002bfa0
test r13d, r13d
je 0x14002c10e
mov r15, qword [rsp + 0x50]
mov rax, rdi
mov rsi, qword [rbp - 0x80]
sub rax, r15
sar rax, 1
sub rsi, rax
je 0x14002c0cf
lea rbx, [r14 + rsi]
cmp rbx, qword [rbp - 0x48]
jb 0x14002c0bc
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 0x14002c0f9
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 0x14002c118
mov r15, qword [rsp + 0x50]
test r12, r12
je 0x14002c107
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor eax, eax
mov r13d, eax
jmp 0x14002c118
xor esi, esi
mov r15, qword [rsp + 0x50]
mov r13d, esi
mov r12d, dword [rsp + 0x4c]
add r12d, r13d
test r12d, r12d
je 0x14002c1ca
mov rdi, 0xffffffffffffffff
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x14002c130
jmp 0x14002c1ce
mov r12, qword [rsp + 0x50]
mov r13d, esi
mov rsi, r12
test ebx, ebx
je 0x14002c1c2
movsxd r14, ecx
lea rdx, [rsp + 0x58]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x14002c1c2
lea rdi, [r15 + r15]
lea rsi, [rdi + rax]
test r14d, r14d
je 0x14002c19d
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 0x14002c152
mov r15, r12
jmp 0x14002c118
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 0x14002d965
mov eax, dword [rbp - 0x20]
inc eax
mov dword [rbp - 0x20], eax
cmp eax, 1
jle 0x14002c231
test r12, r12
je 0x14002c231
cmp rbx, r15
jne 0x14002c231
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 0x14002b020
lea rcx, [rsi*2]
mov rdx, rbx
add rcx, r13
lea r8, [rdi*2 + 2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rdi
jmp 0x14002b01b
mov word [rsi], di
mov rsi, qword [rsp + 0x70]
jmp 0x14002b173
mov esi, dword [rbp - 0x70]
mov ecx, esi
test esi, esi
je 0x14002c2b3
sub ecx, 1
je 0x14002c292
cmp ecx, 1
jne 0x14002c311
lea rdx, [rbp + 0x4050]
mov rcx, rdi
call fcn.140036af0
jmp 0x14002c2a1
lea rdx, [rbp + 0x4050]
mov rcx, rdi
call fcn.140036350
test eax, eax
je 0x14002c77d
mov word [rbp + 0x4050], r12w
jmp 0x14002c31d
mov rax, qword [0x1400ff050]
mov rcx, rdi
cmp qword [rax + 0xd8], 0
jne 0x14002d878
lea r8, [rbp + 0x1d0]
lea rdx, [rbp + 0x4050]
call fcn.1400355b0
test eax, eax
je 0x14002c77d
cmp byte [rsp + 0x42], 0
je 0x14002c311
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x77
mov rcx, rdi
call fcn.1400331b0
test eax, eax
je 0x14002c77d
mov qword [rdi + 0x6d0], r12
mov word [rbp + 0x4050], r12w
test esi, esi
je 0x14002c375
cmp byte [rsp + 0x42], 0
jne 0x14002c375
lea rdx, [r13 + 2]
nop dword [rax + rax]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x14002c33f
cmp ax, 9
jne 0x14002c345
add rdx, 2
jmp 0x14002c330
test ax, ax
je 0x14002c870
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x14002c355
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 0x14002c4dd
movsxd rdx, dword [rdi + 0x40]
test edx, edx
je 0x14002c4dd
mov rax, qword [0x1400ff050]
cmp qword [rax + 0xd8], 0
jne 0x14002c4dd
cmp qword [rdi + 0x278], 0
je 0x14002c3db
mov rcx, qword [rdi + 0x280]
mov qword [rdi + 0x278], r12
test rcx, rcx
je 0x14002c486
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [rdi + 0x280], r12
jmp 0x14002c486
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 0x14002c457
mov rdi, rbx
shl rdi, 5
nop word [rax + rax]
mov rcx, qword [rsi + 0x18]
cmp dword [rdi + rcx + 0x18], 1
jne 0x14002c443
cmp rbx, qword [rsi + 0x38]
jl 0x14002c41c
mov rcx, qword [rdi + rcx + 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 0x14002c443
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 0x14002c400
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 0x14002c482
mov word [rax], r12w
jmp 0x14002c486
mov word [rbx], r12w
add r13, 2
mov qword [rbp - 0x50], r13
nop
movzx eax, word [r13]
cmp ax, 0x20
je 0x14002c4a1
cmp ax, 9
jne 0x14002c4a7
add r13, 2
jmp 0x14002c490
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x28], r13
test ax, ax
je 0x14002c876
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp word [r13 + rsi*2], 0
jne 0x14002c4c0
mov qword [rsp + 0x70], rsi
mov qword [rdi + 0x6d0], r12
jmp 0x14002b180
cmp qword [rdi + 0x278], 0
je 0x14002c5c9
mov rax, qword [0x1400ff050]
cmp qword [rax + 0xd8], 0
jne 0x14002c5c9
mov r8d, 3
lea rdx, [0x1400e46d8]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x14002c538
mov r8d, 3
lea rdx, [0x1400e46e0]
mov rcx, r13
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002d890
lea rbx, [r13 + 6]
nop dword [rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14002c54f
cmp ax, 9
jne 0x14002c555
add rbx, 2
jmp 0x14002c540
test ax, ax
je 0x14002c56f
cmp ax, 0x7b
jne 0x14002d890
cmp word [rbx + 2], 0
jne 0x14002d890
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 0x14002c580
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 0x14002c876
lea rdx, [rsp + 0x42]
mov rcx, r13
call fcn.14002aa50
test al, al
je 0x14002c612
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 0x14002c5f0
mov eax, dword [rdi + 0x28c]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x70], r12d
jmp 0x14002c876
mov rax, qword [0x1400ff050]
cmp qword [rax + 0xd8], 0
jne 0x14002c8ee
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 0x14002c6f5
movzx eax, word [r13 + 0xa]
cmp ax, 0x20
je 0x14002c65a
cmp ax, 9
jne 0x14002c6f5
lea rbx, [r13 + 0xc]
nop
movzx edx, word [rbx]
cmp dx, 0x20
je 0x14002c66f
cmp dx, 9
jne 0x14002c675
add rbx, 2
jmp 0x14002c660
lea rcx, str.__t____:_______.___
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x14002c6f5
mov rax, 0xffffffffffffffff
nop
cmp word [rbx + rax*2 + 2], 0
lea rax, [rax + 1]
jne 0x14002c690
lea rdx, [rax - 1]
cmp word [rbx + rdx*2], 0x7b
lea rdx, [rbx + rdx*2]
sete byte [rsp + 0x42]
jne 0x14002c6c2
mov word [rdx], r12w
mov rcx, r13
sub rdx, r13
sar rdx, 1
call fcn.140026a70
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 0x14002c6d0
mov eax, dword [rdi + 0x28c]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x70], 1
jmp 0x14002c876
cmp dword [rdi + 0x40], 0
je 0x14002c8ee
mov rbx, r13
movzx ecx, word [rbx]
test ecx, 0xffffff80
jne 0x14002c71f
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 0x14002c731
cmp cx, 0x5f
je 0x14002c731
cmp cx, 0x7f
ja 0x14002c731
cmp cx, 0x2e
jne 0x14002c737
add rbx, 2
jmp 0x14002c702
cmp rbx, r13
jbe 0x14002c802
cmp cx, 0x20
je 0x14002c74c
cmp cx, 9
jne 0x14002c756
movzx ecx, word [rbx + 2]
add rbx, 2
jmp 0x14002c740
cmp cx, 0x3a
jne 0x14002c784
cmp word [rbx + 2], 0x3d
jne 0x14002c802
xor r8d, r8d
mov rdx, r13
mov rcx, rdi
call fcn.140036d30
test eax, eax
jne 0x14002c876
xor eax, eax
jmp 0x14002da2f
test cx, cx
je 0x14002c79c
cmp cx, 0x5b
je 0x14002c79c
cmp cx, 0x7b
jne 0x14002c802
cmp word [rbx + 2], 0
jne 0x14002c802
mov rdx, 0xffffffffffffffff
inc rdx
cmp word [r13 + rdx*2], 0
jne 0x14002c7a3
cmp word [r13 + rdx*2 - 2], 0x7b
sete byte [rsp + 0x42]
jne 0x14002c7c8
dec rdx
mov rcx, r13
call fcn.140026a70
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 0x14002c7e0
mov eax, dword [rdi + 0x28c]
mov dword [rbp - 0x58], eax
mov dword [rbp - 0x70], 2
jmp 0x14002c876
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 0x14002c839
movzx eax, word [r13 + 0xc]
cmp ax, 0x20
je 0x14002c82d
cmp ax, 9
jne 0x14002c839
lea rdx, [r13 + 0xe]
mov r8b, 1
jmp 0x14002c76d
cmp word [r13], 0x23
jne 0x14002d8a7
mov ebx, dword [rdi + 0x28c]
mov rdx, r13
mov rcx, rdi
call fcn.14002e0e0
test eax, eax
je 0x14002c77d
cmp eax, 3
jne 0x14002d8a7
mov eax, dword [rbp - 0x30]
mov dword [rdi + 0x288], eax
mov dword [rdi + 0x28c], ebx
movzx r15d, byte [rbp + 0x1c0e0]
test r15b, r15b
je 0x14002d7c8
mov ebx, dword [rbp - 0x40]
inc ebx
mov ecx, ebx
mov dword [rbp - 0x40], ebx
sub ecx, 1
je 0x14002c9e0
sub ecx, 1
je 0x14002c8f8
sub ecx, 1
je 0x14002d747
cmp ecx, 7
jne 0x14002d7c8
lea r8, [0x1400cc644]
cmp r15b, 0x12
je 0x14002c8ca
lea eax, [r15 + 0x5c]
cmp al, 1
ja 0x14002c961
movzx ecx, byte [rsp + 0x61]
sub ecx, 0x11
je 0x14002c95a
sub ecx, 0x91
je 0x14002c95a
cmp ecx, 1
jne 0x14002c961
lea r8, str.RCtrl_up
jmp 0x14002c961
mov r15, qword [rsp + 0x70]
jmp 0x14002c9fe
mov eax, dword [0x1400e1d48]
lea r8, [rbp - 0x28]
cmp byte [rsp + 0x49], 0
mov r9d, 1
mov dword [r13], eax
mov rcx, rdi
movzx eax, word [0x1400e1d4c]
setne dl
add dl, 0xc5
mov word [r13 + 4], ax
mov qword [rsp + 0x20], r12
call fcn.1400331b0
cmp byte [rsp + 0x62], 0
je 0x14002c8b1
lea r8, [rbp + 0x50]
mov rcx, r13
lea rdx, str.if_not_GetKeyState___s__
call fcn.140005cd0
mov dword [rbp - 0x40], 9
jmp 0x14002c9f6
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.140005cd0
mov r9d, 1
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x28]
mov dl, 0x41
mov rcx, rdi
call fcn.1400331b0
test eax, eax
je 0x14002c77d
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.1400331b0
lea r8, [rbp + 0x90]
mov qword [rdi + 0x6d0], r12
lea rdx, str._s_up::
mov rcx, r13
call fcn.140005cd0
mov dword [rbp - 0x40], 2
jmp 0x14002c9f6
lea r8, [rbp + 0x90]
mov rcx, r13
lea rdx, str._s::
call fcn.140005cd0
movsxd r15, eax
mov qword [rsp + 0x70], r15
xor esi, esi
cmp word [r13], 0x3a
mov r14d, esi
jne 0x14002cc14
movzx ecx, word [r13 + 2]
lea rax, [r13 + 2]
test cx, cx
je 0x14002cc14
mov qword [rbp + 8], rax
mov r8, rax
cmp cx, 0x3a
je 0x14002ca50
lea edx, [rsi + 0x3a]
mov rcx, rax
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
mov r12, rax
test rax, rax
je 0x14002cc11
mov r8, qword [rbp + 8]
add r12, 2
jmp 0x14002ca62
cmp word [r13 + 4], si
lea rax, [r13 + 4]
je 0x14002cc14
mov r12, rax
mov qword [rbp - 0x10], r12
test r12, r12
je 0x14002cc14
movzx ebx, byte [0x1401027a0]
mov rdi, r8
mov byte [rsp + 0x48], bl
cmp r8, r12
jae 0x14002cad9
mov edx, 0xffdf
nop word [rax + rax]
movzx ebx, word [rdi]
test ebx, 0xffffff80
je 0x14002ca9f
mov ecx, esi
jmp 0x14002cab3
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 0x14002cad0
cmp rdi, r12
jb 0x14002ca90
jmp 0x14002cad9
cmp word [rdi], 0x30
setne byte [rsp + 0x48]
movzx esi, word [0x140100b20]
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 0x14002cbf9
movzx ecx, ax
movzx eax, cx
cmp cx, si
je 0x14002cb30
cmp cx, 0x3a
je 0x14002cb30
movzx ecx, word [rbx + 2]
add rbx, 2
movzx eax, cx
test cx, cx
jne 0x14002cb12
test ax, ax
je 0x14002cbf9
movzx ecx, word [rbx + 2]
lea rdi, [rbx + 2]
cmp ax, 0x3a
jne 0x14002cb70
cmp cx, ax
jne 0x14002cb58
mov r14, rbx
test r13b, r13b
jne 0x14002cbf9
cmp cx, 0x3a
mov r14, rbx
cmovne rdi, rbx
cmovne r14, rdx
mov rbx, rdi
add rbx, 2
jmp 0x14002cb00
movzx eax, cx
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x14002cb88.99
cdqe
mov ecx, dword [r15 + rax*4 + 0x2da9c]
add rcx, r15
jmp rcx
mov eax, 7
jmp 0x14002cbb8
mov eax, 8
jmp 0x14002cbb8
mov eax, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
jmp 0x14002cbb8
mov eax, 0xa
jmp 0x14002cbb8
mov eax, SafeArrayDestroy
jmp 0x14002cbb8
mov word [rdi], r12w
jmp case.0x14002cb88.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 0x14002cbc2
lea r8, [r8*2 + 2]
mov rdx, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
cmp word [rbx], 0x3a
jne 0x14002cbf0
cmp word [rdi], 0x3a
cmove rbx, rdi
add rbx, 2
jmp 0x14002cb00
mov r15, qword [rsp + 0x70]
mov r12, qword [rbp - 0x10]
mov r13, qword [rbp - 0x50]
test r14, r14
jne 0x14002ccb8
xor esi, esi
mov r12, rsi
lea rdx, [0x1400e456c]
mov rcx, r13
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov r14, rax
test rax, rax
je 0x14002d540
cmp rax, r13
jne 0x14002cc40
cmp word [rax + 4], 0x3a
jne 0x14002cc40
add r14, 2
mov rbx, r14
cmp r14, r13
jbe 0x14002cc68
nop dword [rax + rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x14002cc5f
cmp ax, 9
jne 0x14002cc68
sub rbx, 2
cmp rbx, r13
ja 0x14002cc50
movzx edi, word [rbx]
mov rcx, r13
mov word [rbx], si
movzx eax, word [rcx]
cmp ax, 0x20
je 0x14002cc80
cmp ax, 9
jne 0x14002cc86
add rcx, 2
jmp 0x14002cc71
xor r8d, r8d
xor edx, edx
call fcn.14000fba0
mov dword [rbp - 8], eax
test eax, eax
je 0x14002cca2
cmp eax, 4
je 0x14002c77d
jmp 0x14002cca5
mov r14, rsi
mov word [rbx], di
test r14, r14
je 0x14002d540
movzx esi, word [0x140100b20]
cmp r14, r13
jbe 0x14002d547
mov rax, qword [0x1400ff050]
cmp qword [rax + 0xd8], 0
jne 0x14002d92f
mov rdi, qword [rbp + 0x1c0d0]
mov rax, qword [rdi + 0x668]
test rax, rax
je 0x14002ccf2
cmp byte [rax], 0x1a
je 0x14002d8be
xor ebx, ebx
mov word [r14], bx
add r14, 4
test r12, r12
jne 0x14002d1f1
movzx eax, word [r14]
test ax, ax
je 0x14002cd5c
mov rdx, r14
cmp ax, 0x20
je 0x14002cd1d
cmp ax, 9
jne 0x14002cd27
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x14002cd11
mov rax, rdx
sub rax, r14
cmp rax, 2
jb 0x14002cd5c
mov r8, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rdx + r8*2 + 2], bx
lea r8, [r8 + 1]
jne 0x14002cd40
lea r8, [r8*2 + 2]
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
mov rsi, r14
cmp word [r14], bx
je 0x14002d1f1
movzx eax, word [r14 + 2]
test ax, ax
je 0x14002ceb1
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.0x14002cdbf.40
movzx eax, word [rsi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x14002cdbf.40
cdqe
movzx eax, byte [r9 + rax + 0x2db14]
mov ecx, dword [r9 + rax*4 + 0x2daf4]
add rcx, r9
jmp rcx
mov r8b, 1
jmp case.0x14002cdbf.35
mov dl, 1
jmp case.0x14002cdbf.35
test r8b, r8b
jne 0x14002cdde
test dl, dl
jne 0x14002cde2
or edi, 1
jmp case.0x14002cdbf.35
test dl, dl
je 0x14002cde8
or r13b, 4
xor dl, dl
test r8b, r8b
je case.0x14002cdbf.35
or r13b, 8
jmp 0x14002ce5a
test r8b, r8b
jne 0x14002ce01
test dl, dl
jne 0x14002ce05
or edi, 2
jmp case.0x14002cdbf.35
test dl, dl
je 0x14002ce0b
or r13b, 1
xor dl, dl
test r8b, r8b
je case.0x14002cdbf.35
or r13b, 2
jmp 0x14002ce5a
test r8b, r8b
jne 0x14002ce24
test dl, dl
jne 0x14002ce28
or edi, 4
jmp case.0x14002cdbf.35
test dl, dl
je 0x14002ce2e
or r13b, 0x10
xor dl, dl
test r8b, r8b
je case.0x14002cdbf.35
or r13b, 0x20
jmp 0x14002ce5a
test r8b, r8b
jne 0x14002ce47
test dl, dl
jne 0x14002ce4b
or edi, 8
jmp case.0x14002cdbf.35
test dl, dl
je 0x14002ce51
or r13b, 0x40
xor dl, dl
test r8b, r8b
je case.0x14002cdbf.35
or r13b, 0x80
xor r8b, r8b
movzx eax, word [rsi + 4]
add rsi, 2
test ax, ax
jne 0x14002cd90
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.140019180
mov r13, qword [rbp - 0x50]
movzx r15d, al
mov rdi, qword [rbp + 0x1c0d0]
mov byte [rbp + 0x1c0e0], al
test al, al
je 0x14002d1f9
jmp 0x14002cebb
mov r15b, 0xff
mov byte [rbp + 0x1c0e0], r15b
cmp word [r13], bx
mov rbx, r13
je 0x14002cfef
movzx eax, word [r13 + 2]
lea r9, [r13 + 2]
xor dl, dl
xor r8b, r8b
test ax, ax
je 0x14002cfef
movzx r15d, byte [rsp + 0x40]
lea r10, [0x140000000]
mov r13d, dword [rbp - 0x5c]
cmp ax, 0x20
je case.0x14002cf20.40
movzx eax, word [rbx]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x14002cf20.40
cdqe
movzx eax, byte [r10 + rax + 0x2db94]
mov ecx, dword [r10 + rax*4 + 0x2db74]
add rcx, r10
jmp rcx
mov r8b, 1
jmp case.0x14002cf20.35
mov dl, 1
jmp case.0x14002cf20.35
test r8b, r8b
jne 0x14002cf43
test dl, dl
jne 0x14002cf47
or r13d, 1
jmp case.0x14002cf20.35
test dl, dl
je 0x14002cf4d
or r15b, 4
xor dl, dl
test r8b, r8b
je case.0x14002cf20.35
or r15b, 8
jmp 0x14002cfc2
test r8b, r8b
jne 0x14002cf67
test dl, dl
jne 0x14002cf6b
or r13d, 2
jmp case.0x14002cf20.35
test dl, dl
je 0x14002cf71
or r15b, 1
xor dl, dl
test r8b, r8b
je case.0x14002cf20.35
or r15b, 2
jmp 0x14002cfc2
test r8b, r8b
jne 0x14002cf8b
test dl, dl
jne 0x14002cf8f
or r13d, 4
jmp case.0x14002cf20.35
test dl, dl
je 0x14002cf95
or r15b, 0x10
xor dl, dl
test r8b, r8b
je case.0x14002cf20.35
or r15b, 0x20
jmp 0x14002cfc2
test r8b, r8b
jne 0x14002cfaf
test dl, dl
jne 0x14002cfb3
or r13d, 8
jmp case.0x14002cf20.35
test dl, dl
je 0x14002cfb9
or r15b, 0x40
xor dl, dl
test r8b, r8b
je case.0x14002cf20.35
or r15b, 0x80
xor r8b, r8b
movzx eax, word [r9 + 2]
mov rbx, r9
add r9, 2
test ax, ax
jne 0x14002cef1
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.140019180
lea rdx, [0x1400e2220]
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 0x14002d035
cmp al, 3
jne 0x14002d03b
add al, 0x66
cmp al, 5
ja 0x14002d03f
mov cl, 1
jmp 0x14002d041
xor cl, cl
lea eax, [r15 - 1]
cmp al, 5
ja 0x14002d04f
cmp r15b, 3
jne 0x14002d057
lea eax, [r15 + 0x66]
cmp al, 5
ja 0x14002d05b
mov al, 1
jmp 0x14002d05d
xor al, al
mov byte [rsp + 0x49], al
test cl, cl
jne 0x14002d06e
mov byte [rsp + 0x62], 1
test al, al
jne 0x14002d073
mov byte [rsp + 0x62], 0
mov rax, 0xffffffffffffffff
nop word [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x14002d080
cmp rax, 1
jne 0x14002d0a4
movzx ecx, word [rbx]
call qword [sym.imp.USER32.dll_IsCharUpperW]
test eax, eax
lea rax, [0x1400e47e0]
jne 0x14002d0ab
lea rax, [0x1400cc644]
lea rcx, [0x1400cc644]
mov qword [rsp + 0x28], r13
test dil, dil
mov qword [rsp + 0x20], rax
lea r9, [0x1400e4428]
mov edx, SafeArrayAllocDescriptor
cmovne r9, rcx
lea r8, [0x1400e47e8]
lea rcx, [rbp + 0x90]
call fcn.1400acf70
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 0x14002d128
mov word [rbp + rsi*2 + 0x10], di
mov ebx, edi
mov dword [rbp - 0x40], ebx
cmp word [rbp + 0x10], di
jne 0x14002d738
cmp r15b, 0xd
jne 0x14002d165
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 0x14002d1dc
mov rdi, qword [rbp + 0x1c0d0]
xor r12d, r12d
jmp 0x14002c88a
cmp r15b, 0x13
jne 0x14002d738
movzx eax, word [rbp + 0x50]
mov ebx, eax
test eax, 0xffffff80
je 0x14002d180
mov edx, edi
jmp 0x14002d193
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 0x14002d1dc
movzx ebx, ax
test ebx, 0xffffff80
je 0x14002d1b9
mov eax, edi
jmp 0x14002d1c6
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 0x14002d738
mov rdi, qword [rbp + 0x1c0d0]
xor r15b, r15b
mov byte [rbp + 0x1c0e0], r15b
xor ebx, ebx
jmp 0x14002d1f9
movzx r15d, byte [rbp + 0x1c0e0]
cmp byte [rdi + 0x290], 0
je 0x14002d23f
mov r9d, 0xff
mov byte [rdi + 0x290], 0
xor r8d, r8d
mov qword [rsp + 0x20], rbx
mov dl, 0x67
mov rcx, rdi
call fcn.1400331b0
test eax, eax
je 0x14002c77d
mov rax, qword [rdi + 0x668]
mov qword [rax + 0x10], 1
mov qword [rdi + 0x6d0], rbx
mov r8b, 1
mov rdx, r13
mov rcx, rdi
call fcn.140030b80
test eax, eax
je 0x14002c77d
test r12, r12
je 0x14002d38b
cmp word [r12], 0
je 0x14002d8dc
mov rcx, qword [rdi + 0x688]
lea rdx, [0x1400cc644]
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.140010fd0
test eax, eax
je 0x14002c77d
movzx eax, word [r14]
test ax, ax
je 0x14002d73f
test bl, bl
je 0x14002d357
mov rdx, r14
nop dword [rax]
cmp ax, 0x20
je 0x14002d2dc
cmp ax, 9
jne 0x14002d2e6
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x14002d2d0
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.140030cc0
test eax, eax
je 0x14002c77d
mov rax, qword [rdi + 0x668]
movzx ecx, byte [rax]
lea eax, [rcx - 9]
cmp al, 0x18
jbe 0x14002d336
sub cl, 0x69
cmp cl, 0xa
ja 0x14002d35a
mov eax, 0x707
bt eax, ecx
jae 0x14002d35a
mov eax, 0x3a
lea rdx, str.Invalid_single_line_hotkey_hotstring.
mov r8, r13
mov word [r14 - 4], ax
mov rcx, rdi
call fcn.1400481c0
jmp 0x14002da2f
xor r12d, r12d
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.1400331b0
test eax, eax
je 0x14002c77d
mov rax, qword [rdi + 0x668]
mov qword [rax + 0x10], 1
jmp 0x14002c87e
movzx ebx, r12w
cmp word [r14], r12w
je 0x14002d42f
xor edx, edx
mov rcx, r14
call fcn.14000d7b0
movzx ebx, ax
test ax, ax
jne 0x14002d403
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.140030cc0
test eax, eax
je 0x14002c77d
mov rax, qword [rdi + 0x668]
movzx ecx, byte [rax]
lea eax, [rcx - 9]
cmp al, 0x18
jbe 0x14002d336
sub cl, 0x69
cmp cl, 0xa
ja 0x14002d403
mov eax, 0x707
bt eax, ecx
jb 0x14002d336
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.1400331b0
test eax, eax
je 0x14002c77d
mov rax, qword [rdi + 0x668]
mov qword [rax + 0x10], 1
lea r8, [rbp - 0x78]
mov rcx, r13
lea rdx, [rsp + 0x64]
call fcn.140010240
mov rdi, rax
test rax, rax
je 0x14002d4cc
test bx, bx
je 0x14002d461
mov rdi, qword [rbp + 0x1c0d0]
mov word [rax + 6], bx
jmp 0x14002c87e
mov rax, qword [rax + 0x28]
test rax, rax
je 0x14002d484
mov rcx, qword [0x140103628]
cmp qword [rax + 8], rcx
je 0x14002d8f3
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x14002d471
mov rbx, qword [rbp + 0x1c0d0]
mov rcx, rdi
movzx r8d, byte [rsp + 0x64]
mov rdx, qword [rbx + 0x688]
call fcn.14000fa30
test rax, rax
je 0x14002d918
cmp byte [rbp - 0x78], r12b
jne 0x14002d4bc
cmp byte [0x14010287b], r12b
je 0x14002d72c
mov byte [rdi + 0x14], 1
mov rdi, qword [rbp + 0x1c0d0]
jmp 0x14002c87e
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.14000f260
test rax, rax
jne 0x14002c876
cmp dword [rbp - 8], 3
jne 0x14002c77d
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.1400acf70
xorps xmm3, xmm3
mov qword [rsp + 0x20], r12
xor r8d, r8d
lea rcx, [rbp + 0xd0]
mov edx, 0x10000
call fcn.1400b4230
jmp 0x14002c87e
movzx esi, word [0x140100b20]
cmp word [r13 + r15*2 - 2], 0x3a
jne 0x14002d62c
cmp r15, 1
je 0x14002d94a
movzx eax, word [r13]
mov rcx, r13
test ax, ax
je 0x14002d5a5
movzx edx, word [0x140100b28]
cmp ax, 0x20
je 0x14002d62c
cmp ax, 9
je 0x14002d62c
cmp ax, dx
je 0x14002d62c
cmp ax, si
je 0x14002d62c
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14002d572
cmp word [r13 + r15*2 - 4], 0x3a
jne 0x14002d5b4
cmp r15, 2
ja 0x14002d62c
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 0x14002d611
mov rax, qword [rdi + 0x30]
test rax, rax
je 0x14002d611
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x14002d611
cmp byte [rcx], 0x75
jne 0x14002d611
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x76
mov rcx, rdi
call fcn.1400331b0
test eax, eax
je 0x14002c77d
jmp 0x14002c876
xor r8d, r8d
mov rdx, r13
mov rcx, rdi
call fcn.140030b80
test eax, eax
je 0x14002c77d
jmp 0x14002c876
cmp word [r13], 0x23
mov rdi, qword [rbp + 0x1c0d0]
jne 0x14002d66a
mov ebx, dword [rdi + 0x28c]
mov rdx, r13
mov rcx, rdi
call fcn.14002e0e0
test eax, eax
je 0x14002c77d
cmp eax, 3
jne 0x14002d66a
mov eax, dword [rbp - 0x30]
xor r12d, r12d
mov dword [rdi + 0x288], eax
jmp 0x14002c870
movzx ecx, word [r13]
mov edx, 0xfffd
lea eax, [rcx - 0x7b]
test dx, ax
je 0x14002d6b1
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.140030cc0
test eax, eax
je 0x14002c77d
jmp 0x14002c876
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.1400331b0
test eax, eax
je 0x14002c77d
add r13, 2
mov qword [rbp - 0x50], r13
movzx eax, word [r13]
cmp ax, 0x20
je 0x14002d6f2
cmp ax, 9
jne 0x14002d6f8
add r13, 2
jmp 0x14002d6e1
mov qword [rbp - 0x50], r13
mov qword [rbp - 0x28], r13
test ax, ax
je 0x14002c876
mov rsi, 0xffffffffffffffff
inc rsi
cmp word [r13 + rsi*2], r12w
jne 0x14002d710
mov qword [rsp + 0x70], rsi
mov qword [rdi + 0x6d0], r12
jmp 0x14002b180
mov rdi, qword [rbp + 0x1c0d0]
jmp 0x14002c876
mov rdi, qword [rbp + 0x1c0d0]
xor r12d, r12d
jmp 0x14002c876
mov eax, dword [0x1400e1d48]
lea r8, [rbp - 0x28]
cmp byte [rsp + 0x49], 0
mov r9d, 1
mov dword [r13], eax
mov rcx, rdi
movzx eax, word [0x1400e1d4c]
setne dl
add dl, 0xc5
mov word [r13 + 4], ax
mov qword [rsp + 0x20], r12
call fcn.1400331b0
lea r8, [rbp + 0x50]
mov rcx, r13
lea rdx, str.Blind_s_Up
call fcn.140005cd0
mov r9d, 1
mov qword [rsp + 0x20], r12
lea r8, [rbp - 0x28]
mov dl, 0x41
mov rcx, rdi
call fcn.1400331b0
xor r9d, r9d
mov qword [rsp + 0x20], r12
xor r8d, r8d
mov dl, 0x67
mov rcx, rdi
call fcn.1400331b0
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 0x14002afbf
mov r8, r15
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, str.Continuation_section_too_long.
call fcn.1400481c0
jmp 0x14002da2f
cmp qword [rdi + 0x278], 0
lea rdx, [0x1400e4658]
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.1400481c0
jmp 0x14002da2f
lea r8, [rbp + 0x4050]
mov rcx, rdi
lea rdx, [0x1400e4658]
call fcn.1400481c0
jmp 0x14002da2f
lea r8, [rbp + 0x4050]
lea rdx, str.Functions_cannot_contain_functions.
call fcn.1400481c0
jmp 0x14002da2f
mov r8, r13
lea rdx, str.Not_a_valid_property_getter_setter.
mov rcx, rdi
call fcn.1400481c0
jmp 0x14002da2f
mov r8, r13
lea rdx, str.Not_a_valid_method__class_or_property_definition.
mov rcx, rdi
call fcn.1400481c0
jmp 0x14002da2f
mov r8, r13
mov qword [rdi + 0x6d0], rax
lea rdx, str.IfWin_should_be_IfWin.
mov rcx, rdi
call fcn.1400481c0
jmp 0x14002da2f
mov r8, r13
lea rdx, str.This_hotstring_is_missing_its_abbreviation.
mov rcx, rdi
call fcn.1400481c0
jmp 0x14002da2f
mov rbx, qword [rbp + 0x1c0d0]
lea rdx, str.Duplicate_hotkey.
mov r8, r13
mov rcx, rbx
mov qword [rbx + 0x6d0], r12
call fcn.1400481c0
jmp 0x14002da2f
mov r8, r13
lea rdx, str.Out_of_memory.
mov rcx, rbx
call fcn.1400481c0
jmp 0x14002da2f
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
mov r8, r13
call fcn.1400481c0
jmp 0x14002da2f
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, str.This_line_does_not_contain_a_recognized_action.
mov r8, r13
call fcn.1400481c0
jmp 0x14002da2f
mov r8, rbx
jmp 0x14002d814
mov rcx, qword [rbp + 0x1c0d0]
lea rdx, [0x1400e45f8]
mov r8, r13
call fcn.1400481c0
jmp 0x14002da2f
cmp word [rbp + 0x4050], 0
je 0x14002da03
cmp dword [rbp - 0x70], 0
mov rcx, rdi
mov ebx, dword [rdi + 0x28c]
mov eax, dword [rbp - 0x58]
mov dword [rdi + 0x28c], eax
je 0x14002d9cf
cmp byte [rsp + 0x42], 0
lea rax, str.Missing___
lea rdx, [0x1400e4658]
cmovne rdx, rax
lea r8, [rbp + 0x4050]
call fcn.1400481c0
jmp 0x14002da2f
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.140030cc0
test eax, eax
je 0x14002c77d
mov dword [rdi + 0x28c], ebx
cmp dword [rdi + 0x40], 0
je 0x14002da24
cmp dword [rbp - 0x30], 0
jne 0x14002da24
lea r8, [rdi + 0x70]
mov rcx, rdi
lea rdx, str.Missing___
call fcn.1400481c0
jmp 0x14002da2f
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