Function at 0x1400374e0
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 - 0x1c078]
mov eax, 0x1c178
call fcn.1400d7ad0
sub rsp, rax
mov ebx, dword [0x140114ac8]
lea rax, [rbp + 0xc050]
xor r14d, r14d
mov qword [rsp + 0x48], rax
xor al, al
mov qword [rsp + 0x20], rdx
dec ebx
mov byte [rbp + 0x1c0d0], al
lea r15, [rbp + 0x14060]
mov dword [rbp - 0x28], ebx
xor r9d, r9d
mov word [rbp + 0x4040], r14w
lea rdx, [rbp + 0xc050]
mov qword [rsp + 0x68], r15
mov r13, rcx
mov word [rsp + 0x62], r14w
mov word [rsp + 0x7c], r14w
mov edi, r14d
mov dword [rcx + 0x288], ebx
call fcn.14003a3f0
mov rcx, qword [rsp + 0x48]
lea r8d, [r14 + 2]
lea rdx, [0x1400f4608]
mov qword [rbp - 0x80], rax
mov rsi, rax
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 0x1400375a7
mov rax, qword [rsp + 0x48]
mov esi, r14d
mov qword [rbp - 0x80], r14
mov word [rax], r14w
mov eax, dword [rbp + 0x1c0c0]
mov edx, dword [rbp + 0x1c0c0]
mov rcx, qword [rsp + 0x48]
mov dword [rbp - 0x48], eax
movzx eax, byte [rbp + 0x1c0c0]
mov byte [rbp + 0x1c0d8], al
movzx eax, byte [rbp + 0x1c0c0]
mov byte [rsp + 0x40], al
mov dword [rbp - 0x4c], edx
mov qword [rbp + 0x18], r15
mov r8d, reloc.WSOCK32.dll_ioctlsocket
cmp rsi, 0xffffffffffffffff
je 0x14003a00d
lea eax, [rdi + 1]
mov qword [r13 + 0x6d0], r14
lea rdx, str.CommentFlag
mov dword [r13 + 0x28c], eax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x140037621
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.14003a760
test eax, eax
je 0x140038daf
mov r12, qword [rbp - 0x18]
mov byte [rsp + 0x76], 0
mov dword [rbp - 0x60], r14d
jmp 0x140037640
mov edi, dword [rbp - 0x6c]
movzx ebx, byte [rsp + 0x41]
nop dword [rax + rax]
mov rax, qword [rbp + 0x1c0c8]
inc edi
mov r9d, r14d
mov dword [rbp - 0x6c], edi
mov rdx, r15
mov qword [rsp + 0x20], rax
call fcn.14003a3f0
mov r13, rax
mov qword [rbp - 0x30], rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x14003776e
test r14d, r14d
jne 0x14003776e
lea r8d, [r14 + 2]
mov rcx, r15
lea rdx, [0x1400f462c]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
jne 0x140037741
test bl, bl
jne 0x1400376ad
cmp word [r15 + 4], 0x3a
jne 0x1400376ad
cmp word [r15 + 6], 0x3a
je 0x140037749
sub r13, 2
lea rdx, [r15 + 4]
xor bl, bl
mov rcx, r15
mov byte [rsp + 0x41], bl
lea r8, [r13*2 + 2]
call sub.VCRUNTIME140.dll_memmove
movzx eax, word [r15]
test ax, ax
je 0x140037640
mov rdx, r15
nop dword [rax + rax]
cmp ax, 0x20
je 0x1400376ec
cmp ax, 9
jne 0x1400376f6
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x1400376e0
mov rax, rdx
sub rax, r15
sar rax, 1
je 0x140037730
cmp r13, 0xffffffffffffffff
jne 0x14003771d
nop word [rax + rax]
inc r13
cmp word [rdx + r13*2], 0
jne 0x140037710
jmp 0x140037720
sub r13, rax
lea r8, [r13*2 + 2]
mov rcx, r15
call sub.VCRUNTIME140.dll_memmove
cmp word [r15], 0
mov qword [rbp - 0x30], r13
je 0x140037640
jmp 0x140037749
test bl, bl
jne 0x140037640
mov r8d, 2
lea rdx, [0x1400f4608]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
jne 0x14003776e
mov bl, 1
mov byte [rsp + 0x41], bl
jmp 0x140037640
test bl, bl
je 0x140037781
cmp r13, 0xffffffffffffffff
jne 0x140037640
jmp 0x1400387ce
test r14d, r14d
jne 0x140037ce6
cmp r13, 0xffffffffffffffff
je 0x1400379d5
cmp word [r15], 0x28
jne 0x1400379d5
movzx eax, word [r15 + 2]
lea rbx, [r15 + 2]
cmp ax, 0x3a
je 0x1400379d0
cmp word [r15 + r13*2 - 2], 0x3a
je 0x1400379d0
movzx ecx, byte [0x140113b46]
mov r14d, 1
xor r13d, r13d
mov byte [rsp + 0x71], cl
mov ecx, 0xa
mov dword [rbp - 0x60], r14d
mov dword [rbp + 0x20], ecx
mov r12d, r14d
mov dword [rbp - 0x24], r13d
mov byte [rsp + 0x70], r14b
mov byte [rsp + 0x72], r13b
mov byte [rsp + 0x73], r13b
mov byte [rsp + 0x74], r14b
mov qword [rbp - 0x18], r14
nop
cmp ax, 0x20
je 0x14003780c
cmp ax, 9
jne 0x140037816
movzx eax, word [rbx + 2]
add rbx, 2
jmp 0x140037800
test ax, ax
je 0x1400379c6
nop
mov rsi, rbx
test rbx, rbx
je 0x14003785f
movzx edx, word [rbx]
test dx, dx
je 0x14003785f
lea rcx, [0x1400f16e0]
mov eax, SafeArrayAllocDescriptor
nop dword [rax]
cmp dx, ax
je 0x140037880
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x140037840
movzx edx, word [rsi + 2]
add rsi, 2
test dx, dx
jne 0x140037830
mov rax, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rbx + rax*2 + 2], r13w
lea rax, [rax + 1]
jne 0x140037870
lea rsi, [rbx + rax*2]
movzx edi, word [rsi]
lea rdx, str.Join
mov r8d, 4
mov word [rsi], r13w
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x1400378e3
lea rdx, [rbx + 8]
lea r8d, [rax + 0xf]
lea rcx, [rbp + 0x20]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov r8b, 1
mov word [rbp + 0x3e], r13w
lea rcx, [rbp + 0x20]
call fcn.1400bca90
lea rax, [rbp + 0x20]
mov r12, 0xffffffffffffffff
nop
inc r12
cmp word [rax + r12*2], r13w
jne 0x1400378d0
mov qword [rbp - 0x18], r12
jmp 0x140037994
mov r8d, 5
lea rdx, [0x1400f46e8]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14003790c
cmp word [rbx + 0xa], 0x30
setne byte [rsp + 0x71]
jmp 0x140037994
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 0x140037932
cmp word [rbx + 0xa], 0x30
setne byte [rsp + 0x70]
jmp 0x140037994
movzx eax, word [rbx]
test ax, ax
je 0x140037994
nop word [rax + rax]
movzx eax, ax
add eax, 0xffffffdb
cmp eax, 0x3e
ja case.0x140037966.38
lea rdx, [0x140000000]
cdqe
movzx eax, byte [rdx + rax + 0x3a0e8]
mov ecx, dword [rdx + rax*4 + 0x3a0d0]
add rcx, rdx
jmp rcx
mov byte [rsp + 0x72], 1
jmp case.0x140037966.38
mov byte [rsp + 0x73], 1
jmp case.0x140037966.38
mov byte [rsp + 0x74], r13b
jmp case.0x140037966.38
mov r14d, 2
mov dword [rbp - 0x60], r14d
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x140037940
mov word [rsi], di
mov rbx, rsi
nop word [rax + rax]
cmp di, 0x20
je 0x1400379ac
cmp di, 9
jne 0x1400379b6
movzx edi, word [rbx + 2]
add rbx, 2
jmp 0x1400379a0
test di, di
jne 0x140037820
mov rsi, qword [rbp - 0x80]
mov edi, dword [rbp - 0x6c]
mov byte [rsp + 0x76], 1
jmp 0x140037633
movzx ebx, byte [rsp + 0x41]
xor edx, edx
mov dword [rbp - 0x60], edx
mov r14d, edx
cmp r13, 0xffffffffffffffff
je 0x1400387ce
test r13, r13
je 0x140037640
cmp word [r15 + r13*2 - 2], 0x3a
jne 0x140037a04
cmp word [r15], 0x2c
jne 0x1400387ce
movzx ebx, word [r15]
test ebx, 0xffffff80
je 0x140037a14
mov ecx, edx
jmp 0x140037a25
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 0x140037c96
cmp eax, 0x4f
je 0x140037c11
movzx edx, word [r15]
cmp dx, 0x3a
ja 0x140037a66
movabs rcx, 0x400280000000000
bt rcx, rdx
jae 0x140037a66
cmp word [r15 + 2], dx
je 0x1400387ce
lea rcx, str.____:.___
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x1400387ce
lea rdx, [0x1400f467c]
mov rcx, r15
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rdi, rax
test rax, rax
je 0x140037b62
cmp word [r15], 0x3a
jne 0x140037afc
movzx eax, word [r15 + 2]
lea rbx, [r15 + 2]
test ax, ax
je 0x140037af2
nop dword [rax]
cmp ax, 0x3a
je 0x140037af2
movzx ecx, ax
test ecx, 0xffffff80
jne 0x140037ad0
mov edx, 0x107
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
test eax, eax
jne 0x140037ae5
movzx edx, word [rbx]
lea rcx, str.____t
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x140037afc
movzx eax, word [rbx + 2]
add rbx, 2
test ax, ax
jne 0x140037ab0
cmp word [rbx], 0x3a
je 0x1400387ce
cmp word [r15], 0x2c
jne 0x140037bb2
lea rbx, [r15 + 2]
nop dword [rax + rax]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140037b1f
cmp ax, 9
jne 0x140037b25
add rbx, 2
jmp 0x140037b10
mov r8d, 2
lea rdx, [0x1400f467c]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
je 0x1400387ce
lea rcx, [rbx - 2]
mov r8d, 3
lea rdx, [0x1400f16d0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncmp]
test eax, eax
je 0x1400387ce
mov edi, dword [rbp - 0x6c]
lea rax, [rsi + r13]
cmp rax, 0x4000
jae 0x140039e8d
cmp word [r15], 0x2c
je 0x140037b8d
mov rax, qword [rsp + 0x48]
mov ecx, SafeArrayAllocDescriptor
mov word [rax + rsi*2], cx
inc rsi
mov rax, qword [rsp + 0x48]
lea r8, [r13*2 + 2]
mov rdx, r15
lea rcx, [rax + rsi*2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, r13
mov qword [rbp - 0x80], rsi
jmp 0x140037633
mov rax, r15
cmp r15, rdi
jae 0x140037bcf
nop word [rax + rax]
cmp word [rax], 0x22
je 0x140037bcf
add rax, 2
cmp rax, rdi
jb 0x140037bc0
cmp rax, rdi
je 0x1400387ce
movzx ecx, word [rdi + 4]
lea rdx, [rdi + 4]
test cx, cx
je 0x1400387ce
movzx eax, cx
nop dword [rax]
movzx ecx, ax
cmp ax, 0x22
je 0x140037c09
movzx eax, word [rdx + 2]
add rdx, 2
movzx ecx, ax
test ax, ax
jne 0x140037bf0
test cx, cx
jmp 0x140037b5c
movzx ebx, word [r15 + 2]
test ebx, 0xffffff80
je 0x140037c22
mov ecx, edx
jmp 0x140037c31
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 0x1400387ce
movzx edx, word [r15 + 4]
lea rax, [r15 + 4]
cmp dx, 0x20
je 0x140037c71
cmp dx, 9
jne 0x1400387ce
cmp dx, 0x20
je 0x140037c71
cmp dx, 9
jne 0x140037c7b
movzx edx, word [rax + 2]
add rax, 2
jmp 0x140037c65
lea rcx, [0x1400f4640]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x1400387ce
jmp 0x140037b65
mov r8d, 3
lea rdx, [0x1400f4638]
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x1400387ce
movzx edx, word [r15 + 6]
lea rax, [r15 + 6]
cmp dx, 0x20
je 0x140037cdc
cmp dx, 9
jne 0x1400387ce
nop dword [rax]
cmp dx, 0x20
je 0x140037cdc
cmp dx, 9
jne 0x140037c7b
movzx edx, word [rax + 2]
add rax, 2
jmp 0x140037cd0
cmp r13, 0xffffffffffffffff
je 0x140039ff0
cmp r13, 0xfffffffffffffffe
je 0x140037640
movzx eax, word [r15]
cmp ax, 0x29
jne 0x140037d70
xor edx, edx
mov rdi, 0xffffffffffffffff
mov r14d, edx
mov dword [rbp - 0x60], edx
inc rdi
cmp word [r15 + rdi*2], dx
jne 0x140037d13
lea rax, [rdi - 1]
lea rax, [r15 + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140037d34
cmp cx, 9
jne 0x140037d42
cmp rax, r15
je 0x140037d52
sub rax, 2
dec rdi
jmp 0x140037d25
mov word [rax + 2], dx
lea rbx, [r15 + 2]
dec rdi
jmp 0x14003874e
cmp cx, 0x20
je 0x140037d5e
cmp cx, 9
jne 0x140037d64
mov word [rax], dx
mov rdi, rdx
lea rbx, [r15 + 2]
dec rdi
jmp 0x14003874e
cmp byte [rsp + 0x70], 0
mov qword [rbp - 8], r15
je 0x140037dd4
test ax, ax
jne 0x140037d8b
xor esi, esi
mov r13d, esi
mov qword [rbp - 0x30], rsi
jmp 0x140037dd6
lea rax, [r13 - 1]
lea rax, [r15 + rax*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x140037da2
cmp cx, 9
jne 0x140037db0
cmp rax, r15
je 0x140037dbc
sub rax, 2
dec r13
jmp 0x140037d93
xor esi, esi
mov qword [rbp - 0x30], r13
mov word [rax + 2], si
jmp 0x140037dd6
cmp cx, 0x20
je 0x140037ea1
cmp cx, 9
je 0x140037ea1
mov qword [rbp - 0x30], r13
xor esi, esi
cmp byte [rsp + 0x71], 0
je 0x140037dec
mov rdx, r13
mov rcx, r15
call fcn.14002f7d0
mov qword [rbp - 0x30], rax
cmp byte [rsp + 0x72], 0
mov r12d, esi
mov dword [rsp + 0x5c], esi
je 0x140038115
movzx eax, word [0x140111c10]
mov ebx, 0xffffffff
mov word [rsp + 0x60], ax
mov r13, 0xffffffffffffffff
mov word [rsp + 0x78], ax
mov word [rsp + 0x7a], ax
mov dword [rsp + 0x54], ebx
inc r13
cmp word [r15 + r13*2], 0
jne 0x140037e24
mov rdx, qword [rsp + 0x68]
mov r12, rsi
mov r15, rsi
mov qword [rbp - 0x78], rsi
mov qword [rbp - 0x58], rsi
cmp word [rdx], 0
je 0x14003810e
test ax, ax
je 0x14003810e
lea rcx, [rsp + 0x60]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x140037e61
mov qword [rbp - 0x40], rax
lea rcx, [rsp + 0x78]
mov r14, 0xffffffffffffffff
nop dword [rax + rax]
inc r14
cmp word [rcx + r14*2], 0
jne 0x140037e80
mov ecx, r14d
sub ecx, eax
mov eax, 0x4000
sub eax, r13d
mov dword [rbp - 0x68], ecx
jns 0x140037eb2
mov ebx, esi
jmp 0x140037ec3
xor esi, esi
mov word [rax], si
mov r13d, esi
mov qword [rbp - 0x30], rsi
jmp 0x140037dd6
test ecx, ecx
jle 0x140037ec9
cdq
idiv ecx
mov rdx, qword [rsp + 0x68]
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x54], ebx
test ecx, ecx
je 0x140038071
cmp r13, 0x1388
jb 0x140038071
mov dword [rsp + 0x5c], esi
mov rdi, rdx
test ebx, ebx
je 0x140038018
nop dword [rax + rax]
lea rdx, [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x140037fd1
mov r10d, dword [rsp + 0x5c]
dec ebx
mov dword [rsp + 0x54], ebx
inc r10d
mov rbx, rax
mov dword [rsp + 0x5c], r10d
sub rbx, rdi
sar rbx, 1
add r15, rbx
lea rcx, [r14 + r15]
cmp rcx, qword [rbp - 0x58]
jb 0x140037f7c
sub rax, qword [rsp + 0x68]
mov r8d, dword [rsp + 0x54]
sar rax, 1
movsxd rdx, eax
mov qword [rsp + 0x28], rdx
mov edx, r10d
movsxd rax, ecx
movsxd rcx, dword [rbp - 0x68]
movsxd r9, r13d
mov qword [rsp + 0x20], rax
call fcn.1400bb050
mov rcx, r12
mov qword [rbp - 0x58], rax
lea rdx, [rax + rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x140038008
mov r12, rax
test rbx, rbx
je 0x140037f9b
mov rax, qword [rbp - 0x78]
lea r8, [rbx + rbx]
mov rdx, rdi
lea rcx, [r12 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x78], r15
jmp 0x140037f9f
mov r15, qword [rbp - 0x78]
test r14, r14
je 0x140037fbd
lea r8, [r14 + r14]
lea rcx, [r12 + r15*2]
lea rdx, [rsp + 0x78]
call sub.VCRUNTIME140.dll_memcpy
add r15, r14
mov qword [rbp - 0x78], r15
mov rax, qword [rbp - 0x40]
mov ebx, dword [rsp + 0x54]
lea rdi, [rsi + rax*2]
test ebx, ebx
jne 0x140037ef0
cmp dword [rsp + 0x5c], 0
je 0x140038016
mov rax, rdi
sub rax, qword [rsp + 0x68]
sar rax, 1
sub r13, rax
je 0x14003803f
lea rbx, [r15 + r13]
cmp rbx, qword [rbp - 0x58]
jb 0x140038028
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 0x140038025
test r12, r12
je 0x140038016
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
xor esi, esi
mov r15, qword [rsp + 0x68]
mov r12d, esi
jmp 0x140038111
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 + 0x68]
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 + 0x5c]
jmp 0x140038115
mov r15, qword [rsp + 0x68]
mov dword [rsp + 0x5c], r12d
mov rsi, r15
test ebx, ebx
je 0x14003810a
movsxd r15, ecx
nop dword [rax]
lea rdx, [rsp + 0x60]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x140038100
lea rdi, [r14 + r14]
lea rsi, [rax + rdi]
test r15d, r15d
je 0x1400380dc
sub rax, qword [rsp + 0x68]
mov r8, r13
sar rax, 1
mov rcx, rsi
sub r8, rax
mov rax, qword [rbp - 0x40]
sub r8, rax
lea rdx, [rbx + rax*2]
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
lea rdx, [rsp + 0x78]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x54]
add r13, r15
dec eax
inc r12d
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x140038090
mov r15, qword [rsp + 0x68]
mov dword [rsp + 0x5c], r12d
xor esi, esi
jmp 0x140038115
mov r15, rdx
mov dword [rsp + 0x5c], esi
cmp byte [rsp + 0x73], 0
je 0x140038350
movzx ecx, word [0x140111c14]
mov ebx, 0xffffffff
movzx eax, word [0x140111c10]
mov rdi, 0xffffffffffffffff
mov word [rsp + 0x60], cx
mov word [rsp + 0x78], ax
mov word [rsp + 0x7a], cx
mov dword [rsp + 0x54], ebx
nop dword [rax]
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x140038150
mov rdx, qword [rsp + 0x68]
mov r12, rsi
mov qword [rbp - 0x78], rdi
mov r15, rsi
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x40], rsi
cmp word [rdx], 0
je 0x140038340
test cx, cx
je 0x140038340
lea rcx, [rsp + 0x60]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], 0
jne 0x140038191
mov qword [rbp - 0x20], rax
lea rcx, [rsp + 0x78]
mov r14, 0xffffffffffffffff
nop dword [rax + rax]
inc r14
cmp word [rcx + r14*2], 0
jne 0x1400381b0
mov ecx, r14d
sub ecx, eax
mov eax, 0x4000
sub eax, edi
mov dword [rbp - 0x68], ecx
jns 0x1400381d0
mov ebx, esi
jmp 0x1400381e1
test ecx, ecx
jle 0x1400381e7
cdq
idiv ecx
mov rdx, qword [rsp + 0x68]
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x54], ebx
test ecx, ecx
je 0x140038455
cmp rdi, 0x1388
jb 0x140038455
mov r13d, esi
mov rdi, rdx
test ebx, ebx
je 0x140038340
nop dword [rax + rax]
lea rdx, [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x1400382e8
dec ebx
inc r13d
mov dword [rsp + 0x54], ebx
mov rbx, rax
sub rbx, rdi
sar rbx, 1
add r15, rbx
lea rcx, [r14 + r15]
cmp rcx, qword [rbp - 0x40]
jb 0x140038293
sub rax, qword [rsp + 0x68]
movsxd r9, dword [rbp - 0x78]
mov r8d, dword [rsp + 0x54]
sar rax, 1
movsxd rdx, eax
mov qword [rsp + 0x28], rdx
mov edx, r13d
movsxd rax, ecx
movsxd rcx, dword [rbp - 0x68]
mov qword [rsp + 0x20], rax
call fcn.1400bb050
mov rcx, r12
mov qword [rbp - 0x40], rax
lea rdx, [rax + rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x140038330
mov r12, rax
test rbx, rbx
je 0x1400382b2
mov rax, qword [rbp - 0x58]
lea r8, [rbx + rbx]
mov rdx, rdi
lea rcx, [r12 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x58], r15
jmp 0x1400382b6
mov r15, qword [rbp - 0x58]
test r14, r14
je 0x1400382d4
lea r8, [r14 + r14]
lea rcx, [r12 + r15*2]
lea rdx, [rsp + 0x78]
call sub.VCRUNTIME140.dll_memcpy
add r15, r14
mov qword [rbp - 0x58], r15
mov rax, qword [rbp - 0x20]
mov ebx, dword [rsp + 0x54]
lea rdi, [rsi + rax*2]
test ebx, ebx
jne 0x140038210
test r13d, r13d
je 0x14003833e
mov r14, qword [rsp + 0x68]
mov rax, rdi
mov rsi, qword [rbp - 0x78]
sub rax, r14
sar rax, 1
sub rsi, rax
je 0x14003842d
lea rbx, [rsi + r15]
cmp rbx, qword [rbp - 0x40]
jb 0x14003841a
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 0x140038417
test r12, r12
je 0x14003833e
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 + 0x5c]
add r12d, r13d
mov dword [rsp + 0x5c], r12d
cmp byte [rsp + 0x74], 0
je 0x14003864f
movzx ecx, word [0x140111c18]
mov ebx, 0xffffffff
movzx eax, word [0x140111c10]
mov rdi, 0xffffffffffffffff
mov rdx, qword [rsp + 0x68]
mov word [rsp + 0x60], cx
mov word [rsp + 0x78], ax
mov word [rsp + 0x7a], cx
mov dword [rsp + 0x54], ebx
nop dword [rax]
inc rdi
cmp word [rdx + rdi*2], 0
jne 0x140038390
cmp word [rdx], 0
mov r12, rsi
mov qword [rbp - 0x78], rdi
mov r15, rsi
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x40], rsi
je 0x140038644
test cx, cx
je 0x140038644
lea rcx, [rsp + 0x60]
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400383d0
mov qword [rbp - 0x20], rax
lea rcx, [rsp + 0x78]
mov r14, 0xffffffffffffffff
nop word [rax + rax]
inc r14
cmp word [rcx + r14*2], 0
jne 0x1400383f0
mov ecx, r14d
sub ecx, eax
mov eax, 0x4000
sub eax, edi
mov dword [rbp - 0x68], ecx
jns 0x1400384e7
mov ebx, esi
jmp 0x1400384f8
mov r12, rax
lea r8, [rsi + rsi]
mov rdx, rdi
lea rcx, [r12 + r15*2]
call sub.VCRUNTIME140.dll_memcpy
mov r15, rbx
xor esi, esi
lea r8, [r15*2 + 2]
mov rdx, r12
mov word [r12 + r15*2], si
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140038343
mov r12, qword [rsp + 0x68]
mov r13d, esi
mov rsi, r12
test ebx, ebx
je 0x1400384e0
movsxd r15, ecx
nop word [rax + rax]
lea rdx, [rsp + 0x60]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x1400384e0
lea rdi, [r14 + r14]
lea rsi, [rax + rdi]
test r15d, r15d
je 0x1400384bb
mov r8, qword [rbp - 0x78]
sub rax, r12
sar rax, 1
mov rcx, rsi
sub r8, rax
mov rax, qword [rbp - 0x20]
sub r8, rax
lea rdx, [rbx + rax*2]
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
lea rdx, [rsp + 0x78]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x54]
inc r13d
add qword [rbp - 0x78], r15
dec eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x140038470
xor esi, esi
jmp 0x140038343
test ecx, ecx
jle 0x1400384fe
cdq
idiv ecx
mov rdx, qword [rsp + 0x68]
cmp eax, ebx
cmovb ebx, eax
mov dword [rsp + 0x54], ebx
test ecx, ecx
je 0x1400386af
cmp rdi, 0x1388
jb 0x1400386af
mov r13d, esi
mov rdi, rdx
test ebx, ebx
je 0x140038644
nop
lea rdx, [rsp + 0x60]
mov rcx, rdi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rsi, rax
test rax, rax
je 0x1400385f8
dec ebx
inc r13d
mov dword [rsp + 0x54], ebx
mov rbx, rax
sub rbx, rdi
sar rbx, 1
add r15, rbx
lea rcx, [r15 + r14]
cmp rcx, qword [rbp - 0x40]
jb 0x1400385a3
sub rax, qword [rsp + 0x68]
movsxd r9, dword [rbp - 0x78]
mov r8d, dword [rsp + 0x54]
sar rax, 1
movsxd rdx, eax
mov qword [rsp + 0x28], rdx
mov edx, r13d
movsxd rax, ecx
movsxd rcx, dword [rbp - 0x68]
mov qword [rsp + 0x20], rax
call fcn.1400bb050
mov rcx, r12
mov qword [rbp - 0x40], rax
lea rdx, [rax + rax]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_realloc]
test rax, rax
je 0x140038634
mov r12, rax
test rbx, rbx
je 0x1400385c2
mov rax, qword [rbp - 0x58]
lea r8, [rbx + rbx]
mov rdx, rdi
lea rcx, [r12 + rax*2]
call sub.VCRUNTIME140.dll_memcpy
mov qword [rbp - 0x58], r15
jmp 0x1400385c6
mov r15, qword [rbp - 0x58]
test r14, r14
je 0x1400385e4
lea r8, [r14 + r14]
lea rcx, [r12 + r15*2]
lea rdx, [rsp + 0x78]
call sub.VCRUNTIME140.dll_memcpy
add r15, r14
mov qword [rbp - 0x58], r15
mov rax, qword [rbp - 0x20]
mov ebx, dword [rsp + 0x54]
lea rdi, [rsi + rax*2]
test ebx, ebx
jne 0x140038520
test r13d, r13d
je 0x140038642
mov r14, qword [rsp + 0x68]
mov rax, rdi
mov rsi, qword [rbp - 0x78]
sub rax, r14
sar rax, 1
sub rsi, rax
je 0x14003868a
lea rbx, [r15 + rsi]
cmp rbx, qword [rbp - 0x40]
jb 0x140038677
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 0x140038674
test r12, r12
je 0x140038642
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 + 0x5c]
add r12d, r13d
mov r15, qword [rsp + 0x68]
test r12d, r12d
je 0x14003873a
mov rdi, 0xffffffffffffffff
inc rdi
cmp word [r15 + rdi*2], 0
jne 0x140038664
jmp 0x14003873e
mov r12, rax
lea r8, [rsi + rsi]
mov rdx, rdi
lea rcx, [r12 + r15*2]
call sub.VCRUNTIME140.dll_memcpy
mov r15, rbx
xor esi, esi
lea r8, [r15*2 + 2]
mov rdx, r12
mov word [r12 + r15*2], si
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x140038647
mov r12, qword [rsp + 0x68]
mov r13d, esi
mov rsi, r12
test ebx, ebx
je 0x140038647
movsxd r15, ecx
lea rdx, [rsp + 0x60]
mov rcx, rsi
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov rbx, rax
test rax, rax
je 0x140038647
lea rdi, [r14 + r14]
lea rsi, [rdi + rax]
test r15d, r15d
je 0x140038710
mov r8, qword [rbp - 0x78]
sub rax, r12
sar rax, 1
mov rcx, rsi
sub r8, rax
mov rax, qword [rbp - 0x20]
sub r8, rax
lea rdx, [rbx + rax*2]
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
lea rdx, [rsp + 0x78]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [rsp + 0x54]
inc r13d
add qword [rbp - 0x78], r15
dec eax
mov dword [rsp + 0x54], eax
test eax, eax
jne 0x1400386c1
jmp 0x140038647
mov rdi, qword [rbp - 0x30]
mov r12, qword [rbp - 0x18]
mov rsi, qword [rbp - 0x80]
mov r14d, dword [rbp - 0x60]
mov rbx, qword [rbp - 8]
lea rax, [r12 + rdi]
add rax, rsi
cmp rax, 0x4001
jae 0x140039fe8
mov eax, dword [rbp - 0x24]
inc eax
mov dword [rbp - 0x24], eax
cmp eax, 1
jle 0x140038799
test r12, r12
je 0x140038799
cmp rbx, r15
jne 0x140038799
mov rax, qword [rsp + 0x48]
lea r8, [r12*2 + 2]
lea rdx, [rbp + 0x20]
lea rcx, [rax + rsi*2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, r12
mov qword [rbp - 0x80], rsi
test rdi, rdi
je 0x140037630
mov rax, qword [rsp + 0x48]
lea r8, [rdi*2 + 2]
mov rdx, rbx
lea rcx, [rax + rsi*2]
call sub.VCRUNTIME140.dll_memcpy
add rsi, rdi
mov qword [rbp - 0x80], rsi
jmp 0x140037630
mov word [rsi], di
mov rsi, qword [rbp - 0x80]
mov r13, qword [rbp + 0x1c0c0]
xor edi, edi
test rsi, rsi
je 0x140038ed9
cmp word [rbp + 0x4040], 0
je 0x14003899a
mov eax, dword [rbp - 0x50]
mov ebx, dword [r13 + 0x28c]
mov dword [r13 + 0x28c], eax
mov rax, qword [rsp + 0x48]
cmp word [rax], 0x7b
je 0x140038878
cmp byte [rsp + 0x50], 0
jne 0x140038878
mov edi, dword [rbp - 0x5c]
test edi, edi
jne 0x140039ed9
cmp dword [r13 + 0x40], edi
je 0x140038837
mov rax, qword [0x1401101f0]
cmp qword [rax + 0xd8], 0
je 0x140039ea8
xor eax, eax
lea rdx, [rbp + 0x4040]
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov qword [rsp + 0x30], rax
mov r8b, 3
mov qword [rsp + 0x28], rax
mov rcx, r13
mov qword [rsp + 0x20], rax
call fcn.14003d6e0
test eax, eax
je 0x140038daf
xor esi, esi
mov qword [r13 + 0x6d0], rsi
jmp 0x140038926
mov edi, dword [rbp - 0x5c]
mov ecx, edi
test edi, edi
je 0x1400388c2
sub ecx, 1
je 0x1400388a0
cmp ecx, 1
jne 0x140038924
lea rdx, [rbp + 0x4040]
mov rcx, r13
call fcn.1400447e0
jmp 0x1400388af
lea rdx, [rbp + 0x4040]
mov rcx, r13
call fcn.1400440a0
test eax, eax
je 0x140038daf
xor esi, esi
mov word [rbp + 0x4040], si
jmp 0x140038931
mov rax, qword [0x1401101f0]
mov rcx, r13
cmp qword [rax + 0xd8], 0
jne 0x140039ef4
lea r8, [rbp + 0x1c0]
lea rdx, [rbp + 0x4040]
call fcn.140043300
test eax, eax
je 0x140038daf
xor esi, esi
cmp byte [rsp + 0x50], sil
je 0x140038926
xor r9d, r9d
mov qword [rsp + 0x20], rsi
xor r8d, r8d
mov dl, 0x77
mov rcx, r13
call fcn.14003fc70
test eax, eax
je 0x140038daf
mov qword [r13 + 0x6d0], rsi
jmp 0x140038926
xor esi, esi
mov word [rbp + 0x4040], si
test edi, edi
je 0x140038991
cmp byte [rsp + 0x50], 0
jne 0x140038991
mov rax, qword [rsp + 0x48]
lea rdx, [rax + 2]
movzx eax, word [rdx]
cmp ax, 0x20
je 0x140038950
cmp ax, 9
jne 0x140038956
add rdx, 2
jmp 0x140038941
test ax, ax
je 0x140038ed0
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140038970
mov rcx, qword [rsp + 0x48]
mov qword [rbp - 0x80], r8
lea r8, [r8*2 + 2]
call sub.VCRUNTIME140.dll_memmove
mov dword [r13 + 0x28c], ebx
jmp 0x14003899c
xor esi, esi
mov rax, qword [rsp + 0x48]
cmp word [rax], 0x7d
jne 0x140038aea
movsxd rdx, dword [r13 + 0x40]
test edx, edx
je 0x140038aea
mov rax, qword [0x1401101f0]
cmp qword [rax + 0xd8], 0
jne 0x140038aea
cmp qword [r13 + 0x278], 0
je 0x140038a01
mov rcx, qword [r13 + 0x280]
xor edi, edi
mov qword [r13 + 0x278], rdi
test rcx, rcx
je 0x140038aa0
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov qword [r13 + 0x280], rdi
jmp 0x140038aa0
lea ecx, [rdx - 1]
mov dword [r13 + 0x40], ecx
mov rsi, qword [r13 + rdx*8 + 0x40]
mov rbx, qword [rsi + 0x20]
sub rbx, 1
js 0x140038a71
mov rdi, rbx
shl rdi, 5
nop
mov rcx, qword [rsi + 0x18]
cmp dword [rcx + rdi + 0x18], 1
jne 0x140038a63
cmp rbx, qword [rsi + 0x38]
jl 0x140038a3c
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 0x140038a63
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 0x140038a20
mov ecx, dword [r13 + 0x40]
movsxd rax, ecx
mov rcx, qword [r13 + rax*8 + 0x48]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
lea rbx, [r13 + 0x70]
mov edx, 0x2e
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_wcsrchr]
xor edi, edi
test rax, rax
je 0x140038a9d
mov word [rax], di
jmp 0x140038aa0
mov word [rbx], di
mov rax, qword [rsp + 0x48]
movzx ecx, word [rax + 2]
add rax, 2
cmp cx, 0x20
je 0x140038aa5
cmp cx, 9
je 0x140038aa5
mov qword [rsp + 0x48], rax
cmp word [rax], 0
je 0x140038ed9
mov rsi, 0xffffffffffffffff
nop
inc rsi
cmp word [rax + rsi*2], 0
jne 0x140038ad0
mov qword [rbp - 0x80], rsi
mov qword [r13 + 0x6d0], rdi
jmp 0x1400387d7
cmp qword [r13 + 0x278], 0
je 0x140038bee
mov rax, qword [0x1401101f0]
cmp qword [rax + 0xd8], 0
jne 0x140038bee
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1400f47e8]
mov r8d, 3
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x140038b49
mov rcx, qword [rsp + 0x48]
lea rdx, [0x1400f47f0]
mov r8d, 3
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x140039f0c
mov r8, qword [rsp + 0x48]
lea rbx, [r8 + 6]
movzx eax, word [rbx]
cmp ax, 0x20
je 0x140038b61
cmp ax, 9
jne 0x140038b67
add rbx, 2
jmp 0x140038b52
test ax, ax
je 0x140038b81
cmp ax, 0x7b
jne 0x140039f11
cmp word [rbx + 2], 0
jne 0x140039f11
mov rcx, qword [r13 + 0x280]
lea rdx, [rbp + 0x4040]
sub rdx, rcx
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x140038ba0
mov edx, 0x2e
lea rcx, [rbp + 0x4040]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
mov rdx, rax
mov rax, qword [rsp + 0x48]
movzx ecx, word [rax]
mov word [rdx + 2], cx
cmp word [rbx], 0x7b
mov eax, dword [r13 + 0x28c]
sete byte [rsp + 0x50]
mov dword [rbp - 0x50], eax
xor edi, edi
mov dword [rbp - 0x5c], edi
jmp 0x140038ed9
mov rcx, qword [rsp + 0x48]
lea rdx, [rsp + 0x50]
call fcn.140036ae0
test al, al
je 0x140038c34
mov rcx, qword [rsp + 0x48]
lea rdx, [rbp + 0x4040]
sub rdx, rcx
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x140038c10
mov eax, dword [r13 + 0x28c]
xor edi, edi
mov dword [rbp - 0x5c], edi
mov dword [rbp - 0x50], eax
jmp 0x140038ed9
mov rax, qword [0x1401101f0]
cmp qword [rax + 0xd8], 0
jne 0x140038ec7
mov rdi, qword [rsp + 0x48]
lea rdx, str.Class
mov rcx, rdi
mov r8d, 5
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x140038d16
movzx eax, word [rdi + 0xa]
cmp ax, 0x20
je 0x140038c80
cmp ax, 9
jne 0x140038d16
lea rbx, [rdi + 0xc]
movzx edx, word [rbx]
cmp dx, 0x20
je 0x140038c93
cmp dx, 9
jne 0x140038c99
add rbx, 2
jmp 0x140038c84
lea rcx, [0x1400f44c8]
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
jne 0x140038d16
mov rax, 0xffffffffffffffff
cmp word [rbx + rax*2 + 2], 0
lea rax, [rax + 1]
jne 0x140038cb2
lea rdx, [rax - 1]
cmp word [rbx + rdx*2], 0x7b
lea rdx, [rbx + rdx*2]
sete byte [rsp + 0x50]
jne 0x140038ce3
mov word [rdx], si
mov rcx, rdi
sub rdx, rdi
sar rdx, 1
call fcn.14002f850
lea rcx, [rbp + 0x4040]
sub rcx, rbx
nop dword [rax]
movzx eax, word [rbx]
mov word [rbx + rcx], ax
add rbx, 2
test ax, ax
jne 0x140038cf0
mov eax, dword [r13 + 0x28c]
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x5c], 1
jmp 0x140038ed7
cmp dword [r13 + 0x40], 0
je 0x140038ec7
mov rbx, qword [rsp + 0x48]
nop word [rax + rax]
movzx ecx, word [rbx]
test ecx, 0xffffff80
jne 0x140038d4d
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 0x140038d5f
cmp cx, 0x5f
je 0x140038d5f
cmp cx, 0x7f
ja 0x140038d5f
cmp cx, 0x2e
jne 0x140038d65
add rbx, 2
jmp 0x140038d30
cmp rbx, qword [rsp + 0x48]
jbe 0x140038e46
cmp cx, 0x20
je 0x140038d7c
cmp cx, 9
jne 0x140038d86
movzx ecx, word [rbx + 2]
add rbx, 2
jmp 0x140038d70
cmp cx, 0x3a
jne 0x140038db6
cmp word [rbx + 2], 0x3d
jne 0x140038e46
mov rdx, qword [rsp + 0x48]
xor r8d, r8d
mov rcx, r13
call fcn.140044a20
test eax, eax
jne 0x140038ed7
xor eax, eax
jmp 0x14003a0b9
test cx, cx
je 0x140038dce
cmp cx, 0x5b
je 0x140038dce
cmp cx, 0x7b
jne 0x140038e46
cmp word [rbx + 2], 0
jne 0x140038e46
mov rax, qword [rsp + 0x48]
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp word [rax + rdx*2], 0
jne 0x140038de0
mov rcx, qword [rsp + 0x48]
cmp word [rcx + rdx*2 - 2], 0x7b
sete byte [rsp + 0x50]
jne 0x140038e04
dec rdx
call fcn.14002f850
mov rcx, qword [rsp + 0x48]
lea rdx, [rbp + 0x4040]
sub rdx, rcx
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx]
mov word [rcx + rdx], ax
lea rcx, [rcx + 2]
test ax, ax
jne 0x140038e20
mov eax, dword [r13 + 0x28c]
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x5c], 2
jmp 0x140038ed7
mov rcx, qword [rsp + 0x48]
lea rdx, str.Static
mov r8d, 6
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
mov r8, qword [rsp + 0x48]
test eax, eax
jne 0x140038e84
movzx eax, word [r8 + 0xc]
cmp ax, 0x20
je 0x140038e78
cmp ax, 9
jne 0x140038e84
lea rdx, [r8 + 0xe]
mov r8b, 1
jmp 0x140038d9f
cmp word [r8], 0x23
jne 0x140038eb3
mov ebx, dword [r13 + 0x28c]
mov rdx, r8
mov rcx, r13
call fcn.14003a760
test eax, eax
je 0x140038daf
cmp eax, 3
je 0x140039cdc
mov r8, qword [rsp + 0x48]
lea rdx, str.Not_a_valid_method__class_or_property_definition.
mov rcx, r13
call fcn.140057630
jmp 0x14003a0b9
mov r15, qword [rbp - 0x80]
jmp 0x140039070
mov dword [r13 + 0x28c], ebx
xor edi, edi
movzx r15d, byte [rbp + 0x1c0d0]
test r15b, r15b
je 0x140039e46
mov ebx, dword [rbp - 0x38]
movzx r13d, byte [rbp - 0x70]
inc ebx
mov ecx, ebx
mov dword [rbp - 0x38], ebx
sub ecx, 1
je 0x14003904a
sub ecx, 1
je 0x140038f51
sub ecx, 1
je 0x140039db8
cmp ecx, 7
jne 0x140039dac
lea r8, [0x1400da7a4]
cmp r15b, 0x12
je 0x140038f32
lea eax, [r15 + 0x5c]
cmp al, 1
ja 0x140038fbf
movzx ecx, r13b
sub ecx, 0x11
je 0x140038fb8
sub ecx, 0x91
je 0x140038fb8
cmp ecx, 1
jne 0x140038fbf
lea r8, str.RCtrl_up
jmp 0x140038fbf
mov rcx, qword [rsp + 0x48]
lea r8, [rsp + 0x48]
mov eax, dword [0x1400f11f8]
mov r9d, 1
cmp byte [rsp + 0x59], 0
mov qword [rsp + 0x20], rdi
mov dword [rcx], eax
setne dl
movzx eax, word [0x1400f11fc]
add dl, 0xc5
mov word [rcx + 4], ax
mov rcx, qword [rbp + 0x1c0c0]
call fcn.14003fc70
cmp byte [rsp + 0x75], 0
je 0x140038f19
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x40]
lea rdx, str.if_not_GetKeyState___s__
call fcn.140006ca0
mov dword [rbp - 0x38], 9
jmp 0x140039062
lea r8, str.LCtrl_up
mov r13, qword [rbp + 0x1c0c0]
lea rax, [rbp + 0x40]
mov rcx, qword [rsp + 0x48]
lea r9, [rbp + 8]
lea rdx, str.Blind_s_s_s_DownR
mov qword [rsp + 0x20], rax
mov qword [r13 + 0x6d0], rdi
call fcn.140006ca0
mov r9d, 1
mov qword [rsp + 0x20], rdi
lea r8, [rsp + 0x48]
mov dl, 0x41
mov rcx, r13
call fcn.14003fc70
test eax, eax
je 0x140038daf
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov dl, 0x67
mov rcx, r13
call fcn.14003fc70
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x80]
lea rdx, str._s_up::
mov qword [r13 + 0x6d0], rdi
call fcn.140006ca0
mov dword [rbp - 0x38], 2
jmp 0x140039069
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x80]
lea rdx, str._s::
call fcn.140006ca0
mov r13, qword [rbp + 0x1c0c0]
movsxd r15, eax
mov qword [rbp - 0x80], r15
mov rcx, qword [rsp + 0x48]
xor esi, esi
mov r12d, esi
mov qword [rbp - 0x68], rsi
mov r14d, esi
cmp word [rcx], 0x3a
jne 0x14003929f
movzx edx, word [rcx + 2]
lea rax, [rcx + 2]
test dx, dx
je 0x14003929f
mov qword [rbp], rax
mov r8, rax
cmp dx, 0x3a
je 0x1400390d0
lea edx, [rsi + 0x3a]
mov rcx, rax
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
mov rcx, qword [rsp + 0x48]
mov r12, rax
test rax, rax
je 0x140039298
mov r8, qword [rbp]
add r12, 2
jmp 0x1400390e1
cmp word [rcx + 4], si
lea rax, [rcx + 4]
je 0x14003929f
mov r12, rax
mov qword [rbp - 0x68], r12
test r12, r12
je 0x14003929f
movzx ebx, byte [0x140113a64]
mov rdi, r8
mov byte [rsp + 0x58], bl
cmp r8, r12
jae 0x140039159
mov edx, 0xffdf
nop word [rax + rax]
movzx ebx, word [rdi]
test ebx, 0xffffff80
je 0x14003911f
mov ecx, esi
jmp 0x140039133
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 0x140039150
cmp rdi, r12
jb 0x140039110
jmp 0x140039159
cmp word [rdi], 0x30
setne byte [rsp + 0x58]
movzx esi, word [0x140111c10]
mov rbx, r12
movzx r13d, byte [rsp + 0x58]
lea r12, [0x140000000]
mov r15d, 9
nop word [rax + rax]
movzx eax, word [rbx]
mov rdx, r14
test ax, ax
je 0x140039279
movzx ecx, ax
movzx eax, cx
cmp cx, si
je 0x1400391b0
cmp cx, 0x3a
je 0x1400391b0
movzx ecx, word [rbx + 2]
add rbx, 2
movzx eax, cx
test cx, cx
jne 0x140039192
test ax, ax
je 0x140039279
movzx ecx, word [rbx + 2]
lea rdi, [rbx + 2]
cmp ax, 0x3a
jne 0x1400391f0
cmp cx, ax
jne 0x1400391d8
mov r14, rbx
test r13b, r13b
jne 0x140039279
cmp cx, 0x3a
mov r14, rbx
cmovne rdi, rbx
cmovne r14, rdx
mov rbx, rdi
add rbx, 2
jmp 0x140039180
movzx eax, cx
add eax, 0xffffff9f
cmp eax, 0x15
ja case.0x140039208.99
cdqe
mov ecx, dword [r12 + rax*4 + 0x3a128]
add rcx, r12
jmp rcx
mov eax, 7
jmp 0x140039238
mov eax, 8
jmp 0x140039238
mov eax, reloc.WSOCK32.dll_ioctlsocket
jmp 0x140039238
mov eax, 0xa
jmp 0x140039238
mov eax, ntohs
jmp 0x140039238
mov word [rdi], r15w
jmp case.0x140039208.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 0x140039242
lea r8, [r8*2 + 2]
mov rdx, rdi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
cmp word [rbx], 0x3a
jne 0x140039270
cmp word [rdi], 0x3a
cmove rbx, rdi
add rbx, 2
jmp 0x140039180
mov r15, qword [rbp - 0x80]
mov r12, qword [rbp - 0x68]
mov r13, qword [rbp + 0x1c0c0]
test r14, r14
jne 0x140039347
mov rcx, qword [rsp + 0x48]
xor esi, esi
mov qword [rbp - 0x68], rsi
mov r12, rsi
lea rdx, [0x1400f467c]
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
mov r14, rax
test rax, rax
je 0x140039bc6
mov rcx, qword [rsp + 0x48]
cmp rax, rcx
jne 0x1400392cd
cmp word [rax + 4], 0x3a
jne 0x1400392cd
add r14, 2
mov rbx, r14
cmp r14, rcx
jbe 0x1400392ed
movzx eax, word [rbx]
cmp ax, 0x20
je 0x1400392e4
cmp ax, 9
jne 0x1400392ed
sub rbx, 2
cmp rbx, rcx
ja 0x1400392d5
movzx edi, word [rbx]
mov word [rbx], si
mov rcx, qword [rsp + 0x48]
nop dword [rax + rax]
movzx eax, word [rcx]
cmp ax, 0x20
je 0x14003930f
cmp ax, 9
jne 0x140039315
add rcx, 2
jmp 0x140039300
xor r8d, r8d
xor edx, edx
call fcn.140018930
mov dword [rbp - 0x10], eax
test eax, eax
je 0x140039331
cmp eax, 4
je 0x140038daf
jmp 0x140039334
mov r14, rsi
mov word [rbx], di
test r14, r14
je 0x140039bc6
movzx esi, word [0x140111c10]
mov rcx, qword [rsp + 0x48]
cmp r14, rcx
jbe 0x140039bd2
mov rax, qword [0x1401101f0]
cmp qword [rax + 0xd8], 0
jne 0x140039fba
mov rax, qword [r13 + 0x668]
test rax, rax
je 0x14003937f
cmp byte [rax], 0x1a
je 0x140039f25
xor edi, edi
mov word [r14], di
add r14, 4
test r12, r12
jne 0x14003989d
movzx eax, word [r14]
test ax, ax
je 0x1400393ec
mov rdx, r14
nop
cmp ax, 0x20
je 0x1400393ac
cmp ax, 9
jne 0x1400393b6
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x1400393a0
mov rax, rdx
sub rax, r14
cmp rax, 2
jb 0x1400393ec
mov r8, 0xffffffffffffffff
nop dword [rax]
cmp word [rdx + r8*2 + 2], di
lea r8, [r8 + 1]
jne 0x1400393d0
lea r8, [r8*2 + 2]
mov rcx, r14
call sub.VCRUNTIME140.dll_memmove
mov rsi, r14
cmp word [r14], di
je 0x14003989d
movzx eax, word [r14 + 2]
test ax, ax
je 0x140039549
movzx r13d, byte [rbp + 0x1c0d8]
lea r9, [0x140000000]
mov r12d, dword [rbp - 0x48]
xor dl, dl
xor r8b, r8b
nop
cmp ax, 0x20
je case.0x14003944f.40
movzx eax, word [rsi]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x14003944f.40
cdqe
movzx eax, byte [r9 + rax + 0x3a1a0]
mov ecx, dword [r9 + rax*4 + 0x3a180]
add rcx, r9
jmp rcx
mov r8b, 1
jmp case.0x14003944f.35
mov dl, 1
jmp case.0x14003944f.35
test r8b, r8b
jne 0x140039472
test dl, dl
jne 0x140039476
or r12d, 1
jmp case.0x14003944f.35
test dl, dl
je 0x14003947c
or r13b, 4
xor dl, dl
test r8b, r8b
je case.0x14003944f.35
or r13b, 8
jmp 0x1400394f1
test r8b, r8b
jne 0x140039496
test dl, dl
jne 0x14003949a
or r12d, 2
jmp case.0x14003944f.35
test dl, dl
je 0x1400394a0
or r13b, 1
xor dl, dl
test r8b, r8b
je case.0x14003944f.35
or r13b, 2
jmp 0x1400394f1
test r8b, r8b
jne 0x1400394ba
test dl, dl
jne 0x1400394be
or r12d, 4
jmp case.0x14003944f.35
test dl, dl
je 0x1400394c4
or r13b, 0x10
xor dl, dl
test r8b, r8b
je case.0x14003944f.35
or r13b, 0x20
jmp 0x1400394f1
test r8b, r8b
jne 0x1400394de
test dl, dl
jne 0x1400394e2
or r12d, 8
jmp case.0x14003944f.35
test dl, dl
je 0x1400394e8
or r13b, 0x40
xor dl, dl
test r8b, r8b
je case.0x14003944f.35
or r13b, 0x80
xor r8b, r8b
movzx eax, word [rsi + 4]
add rsi, 2
test ax, ax
jne 0x140039420
xor ecx, ecx
mov dword [rbp - 0x48], r12d
mov byte [rbp + 0x1c0d8], r13b
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
xor r8d, r8d
xor edx, edx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.140021fa0
mov r12, qword [rbp - 0x68]
movzx r15d, al
mov r13, qword [rbp + 0x1c0c0]
mov byte [rbp + 0x1c0d0], al
test al, al
je 0x1400398a5
jmp 0x140039553
mov r15b, 0xff
mov byte [rbp + 0x1c0d0], r15b
mov rbx, qword [rsp + 0x48]
cmp word [rbx], di
je 0x14003968a
movzx eax, word [rbx + 2]
lea r9, [rbx + 2]
xor dl, dl
xor r8b, r8b
test ax, ax
je 0x14003968a
movzx r13d, byte [rsp + 0x40]
lea r10, [0x140000000]
mov r15d, dword [rbp - 0x4c]
nop dword [rax + rax]
cmp ax, 0x20
je case.0x1400395bf.40
movzx eax, word [rbx]
add eax, 0xffffffdf
cmp eax, 0x5d
ja case.0x1400395bf.40
cdqe
movzx eax, byte [r10 + rax + 0x3a220]
mov ecx, dword [r10 + rax*4 + 0x3a200]
add rcx, r10
jmp rcx
mov r8b, 1
jmp case.0x1400395bf.35
mov dl, 1
jmp case.0x1400395bf.35
test r8b, r8b
jne 0x1400395e2
test dl, dl
jne 0x1400395e6
or r15d, 1
jmp case.0x1400395bf.35
test dl, dl
je 0x1400395ec
or r13b, 4
xor dl, dl
test r8b, r8b
je case.0x1400395bf.35
or r13b, 8
jmp 0x140039661
test r8b, r8b
jne 0x140039606
test dl, dl
jne 0x14003960a
or r15d, 2
jmp case.0x1400395bf.35
test dl, dl
je 0x140039610
or r13b, 1
xor dl, dl
test r8b, r8b
je case.0x1400395bf.35
or r13b, 2
jmp 0x140039661
test r8b, r8b
jne 0x14003962a
test dl, dl
jne 0x14003962e
or r15d, 4
jmp case.0x1400395bf.35
test dl, dl
je 0x140039634
or r13b, 0x10
xor dl, dl
test r8b, r8b
je case.0x1400395bf.35
or r13b, 0x20
jmp 0x140039661
test r8b, r8b
jne 0x14003964e
test dl, dl
jne 0x140039652
or r15d, 8
jmp case.0x1400395bf.35
test dl, dl
je 0x140039658
or r13b, 0x40
xor dl, dl
test r8b, r8b
je case.0x1400395bf.35
or r13b, 0x80
xor r8b, r8b
movzx eax, word [r9 + 2]
mov rbx, r9
add r9, 2
test ax, ax
jne 0x140039590
mov dword [rbp - 0x4c], r15d
movzx r15d, byte [rbp + 0x1c0d0]
mov byte [rsp + 0x40], r13b
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.140021fa0
lea rdx, [0x1400f16d0]
mov byte [rbp - 0x70], al
mov rcx, rbx
movzx r13d, al
call qword [sym.imp.VCRUNTIME140.dll_wcsstr]
test rax, rax
lea ecx, [r13 - 1]
setne dil
cmp cl, 5
ja 0x1400396d1
cmp r13b, 3
jne 0x1400396d9
lea eax, [r13 + 0x66]
cmp al, 5
ja 0x1400396dd
mov cl, 1
jmp 0x1400396df
xor cl, cl
lea eax, [r15 - 1]
cmp al, 5
ja 0x1400396ed
cmp r15b, 3
jne 0x1400396f5
lea eax, [r15 + 0x66]
cmp al, 5
ja 0x1400396f9
mov al, 1
jmp 0x1400396fb
xor al, al
mov byte [rsp + 0x59], al
test cl, cl
jne 0x14003970c
mov byte [rsp + 0x75], 1
test al, al
jne 0x140039711
mov byte [rsp + 0x75], 0
mov rax, 0xffffffffffffffff
nop dword [rax + rax]
inc rax
cmp word [rbx + rax*2], 0
jne 0x140039720
cmp rax, 1
jne 0x14003974d
movzx ecx, word [rbx]
call qword [sym.imp.USER32.dll_IsCharUpperW]
test eax, eax
je 0x14003974d
lea rcx, [0x1400f48f0]
lea rax, [0x1400da7a4]
jmp 0x140039757
lea rax, [0x1400da7a4]
mov rcx, rax
test dil, dil
lea r9, [0x1400f44c4]
lea r8, [0x1400f48f8]
mov edx, SafeArrayAllocDescriptor
cmovne r9, rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x80]
call fcn.1400ba350
mov r8d, SafeArrayAllocDescriptor
lea rcx, [rbp + 0x40]
mov rdx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov eax, 7
lea rcx, [rbp + 8]
xor edi, edi
mov r8d, eax
mov rdx, r14
mov word [rbp + 0x7e], di
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
sub rsi, r14
mov word [rbp + 0x16], di
sar rsi, 1
cmp rsi, 8
jae 0x1400397cf
mov word [rbp + rsi*2 + 8], di
mov ebx, edi
mov dword [rbp - 0x38], ebx
cmp word [rbp + 8], di
jne 0x140039bb8
cmp r15b, 0xd
jne 0x140039813
lea rdx, str.Return
lea rcx, [rbp + 0x40]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x140038ef2
mov r13, qword [rbp + 0x1c0c0]
xor r15b, r15b
mov byte [rbp + 0x1c0d0], r15b
jmp 0x1400398a5
cmp r15b, 0x13
jne 0x140039bb8
movzx eax, word [rbp + 0x40]
mov ebx, eax
test eax, 0xffffff80
je 0x14003982e
mov edx, edi
jmp 0x140039841
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 + 0x40]
movzx ecx, bx
mov esi, 0xffdf
and cx, si
test edx, edx
cmove cx, bx
cmp cx, 0x50
je 0x14003988a
movzx ebx, ax
test ebx, 0xffffff80
je 0x140039867
mov eax, edi
jmp 0x140039874
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 0x140039bb8
mov r13, qword [rbp + 0x1c0c0]
xor r15b, r15b
mov byte [rbp + 0x1c0d0], r15b
jmp 0x1400398a5
movzx r15d, byte [rbp + 0x1c0d0]
cmp byte [r13 + 0x290], 0
je 0x1400398ed
mov r9d, 0xff
mov byte [r13 + 0x290], 0
xor r8d, r8d
mov qword [rsp + 0x20], rdi
mov dl, 0x67
mov rcx, r13
call fcn.14003fc70
test eax, eax
je 0x140038daf
mov rax, qword [r13 + 0x668]
mov qword [rax + 0x10], 1
mov qword [r13 + 0x6d0], rdi
mov rdx, qword [rsp + 0x48]
mov r8b, 1
mov rcx, r13
call fcn.14003d5a0
test eax, eax
je 0x140038daf
test r12, r12
je 0x140039a14
cmp word [r12], 0
je 0x140039f66
mov rcx, qword [r13 + 0x688]
lea rdx, [0x1400da7a4]
movzx ebx, byte [rsp + 0x58]
mov rax, r14
mov r8, qword [rbp]
test bl, bl
mov byte [rsp + 0x30], 0
mov r9, r12
cmovne rax, rdx
movzx edx, byte [rsp + 0x76]
mov byte [rsp + 0x28], dl
mov rdx, rcx
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x20], rax
call fcn.140019e60
test eax, eax
je 0x140038daf
movzx eax, word [r14]
test ax, ax
je 0x140039bbf
test bl, bl
je 0x1400399e3
mov rdx, r14
cmp ax, 0x20
je 0x140039984
cmp ax, 9
jne 0x14003998e
movzx eax, word [rdx + 2]
add rdx, 2
jmp 0x140039978
mov qword [rsp + 0x38], rdi
xor r9d, r9d
mov qword [rsp + 0x30], rdi
xor r8d, r8d
mov qword [rsp + 0x28], rdi
mov rcx, r13
mov qword [rsp + 0x20], rdi
call fcn.14003d6e0
test eax, eax
je 0x140038daf
mov rax, qword [r13 + 0x668]
movzx ecx, byte [rax]
lea eax, [rcx - 9]
cmp al, 0x18
jbe 0x140039f43
sub cl, 0x69
cmp cl, 0xa
ja 0x1400399e3
mov eax, 0x707
bt eax, ecx
jb 0x140039f43
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov dl, 0x67
mov rcx, r13
call fcn.14003fc70
test eax, eax
je 0x140038daf
mov rax, qword [r13 + 0x668]
mov qword [rax + 0x10], 1
jmp 0x140038ee1
cmp word [r14], 0
movzx ebx, di
je 0x140039ab8
xor edx, edx
mov rcx, r14
call fcn.1400166e0
movzx ebx, ax
test ax, ax
jne 0x140039a8c
mov qword [rsp + 0x38], rdi
xor r9d, r9d
mov qword [rsp + 0x30], rdi
xor r8d, r8d
mov qword [rsp + 0x28], rdi
mov rdx, r14
mov rcx, r13
mov qword [rsp + 0x20], rdi
call fcn.14003d6e0
test eax, eax
je 0x140038daf
mov rax, qword [r13 + 0x668]
movzx ecx, byte [rax]
lea eax, [rcx - 9]
cmp al, 0x18
jbe 0x140039f43
sub cl, 0x69
cmp cl, 0xa
ja 0x140039a8c
mov eax, 0x707
bt eax, ecx
jb 0x140039f43
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov dl, 0x67
mov rcx, r13
call fcn.14003fc70
test eax, eax
je 0x140038daf
mov rax, qword [r13 + 0x668]
mov qword [rax + 0x10], 1
mov rcx, qword [rsp + 0x48]
lea r8, [rbp - 0x6f]
lea rdx, [rsp + 0x77]
call fcn.140018fd0
mov rdi, rax
test rax, rax
je 0x140039b42
test bx, bx
je 0x140039ae3
mov word [rax + 6], bx
xor edi, edi
jmp 0x140038ee1
mov rax, qword [rax + 0x28]
test rax, rax
je 0x140039b06
mov rcx, qword [0x140114898]
cmp qword [rax + 8], rcx
je 0x140039f7f
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x140039af3
movzx r8d, byte [rsp + 0x77]
mov rcx, rdi
mov rdx, qword [r13 + 0x688]
call fcn.1400187c0
test rax, rax
je 0x140039fa1
cmp byte [rbp - 0x6f], 0
jne 0x140039b37
cmp byte [0x140113b33], 0
je 0x140039bbf
mov byte [rdi + 0x14], 1
xor edi, edi
jmp 0x140038ee1
mov rcx, qword [r13 + 0x688]
movzx edx, bx
movzx r9d, byte [rsp + 0x77]
mov byte [rsp + 0x20], 0
mov r8, qword [rcx + 8]
call fcn.140017ff0
test rax, rax
jne 0x140039bbf
cmp dword [rbp - 0x10], 3
jne 0x140038daf
cmp qword [r13 + 0xbe8], rax
jne 0x140039bbf
mov r9, qword [rsp + 0x48]
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 + 0xc0]
call fcn.1400ba350
xor edi, edi
lea rcx, [rbp + 0xc0]
xorps xmm3, xmm3
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov edx, 0x10000
call fcn.1400c1280
jmp 0x140038ee1
mov r13, qword [rbp + 0x1c0c0]
xor edi, edi
jmp 0x140038ee1
mov rcx, qword [rsp + 0x48]
movzx esi, word [0x140111c10]
cmp word [rcx + r15*2 - 2], 0x3a
jne 0x140039cb7
cmp r15, 1
je 0x140039fd1
movzx eax, word [rcx]
mov rdx, rcx
test ax, ax
je 0x140039c34
movzx r8d, word [0x140111c18]
nop dword [rax]
cmp ax, 0x20
je 0x140039cb7
cmp ax, 9
je 0x140039cb7
cmp ax, r8w
je 0x140039cb7
cmp ax, si
je 0x140039cb7
movzx eax, word [rdx + 2]
add rdx, 2
test ax, ax
jne 0x140039c00
cmp word [rcx + r15*2 - 4], 0x3a
jne 0x140039c43
cmp r15, 2
ja 0x140039cb7
xor edi, edi
lea rdx, str.Default
mov word [rcx + r15*2 - 2], di
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x140039c9a
mov rax, qword [r13 + 0x30]
test rax, rax
je 0x140039c9a
mov rcx, qword [rax + 0x18]
test rcx, rcx
je 0x140039c9a
cmp byte [rcx], 0x75
jne 0x140039c9a
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov dl, 0x76
mov rcx, r13
call fcn.14003fc70
test eax, eax
je 0x140038daf
jmp 0x140038ed9
mov rdx, qword [rsp + 0x48]
xor r8d, r8d
mov rcx, r13
call fcn.14003d5a0
test eax, eax
je 0x140038daf
jmp 0x140038ed9
cmp word [rcx], 0x23
jne 0x140039cf0
mov ebx, dword [r13 + 0x28c]
mov rdx, rcx
mov rcx, r13
call fcn.14003a760
test eax, eax
je 0x140038daf
cmp eax, 3
jne 0x140039ceb
mov eax, dword [rbp - 0x28]
mov dword [r13 + 0x288], eax
jmp 0x140038ed0
mov rcx, qword [rsp + 0x48]
movzx edx, word [rcx]
mov r8d, 0xfffd
lea eax, [rdx - 0x7b]
test r8w, ax
je 0x140039d36
xor edi, edi
mov rdx, rcx
mov qword [rsp + 0x38], rdi
xor r9d, r9d
mov qword [rsp + 0x30], rdi
xor r8d, r8d
mov qword [rsp + 0x28], rdi
mov rcx, r13
mov qword [rsp + 0x20], rdi
call fcn.14003d6e0
test eax, eax
je 0x140038daf
jmp 0x140038ed9
cmp dx, 0x7b
mov rcx, r13
setne dl
xor edi, edi
add dl, 0x77
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
call fcn.14003fc70
test eax, eax
je 0x140038daf
mov rax, qword [rsp + 0x48]
movzx ecx, word [rax + 2]
add rax, 2
cmp cx, 0x20
je 0x140039d62
cmp cx, 9
je 0x140039d62
movzx r15d, byte [rbp + 0x1c0d0]
mov qword [rsp + 0x48], rax
cmp word [rax], di
je 0x140038ee1
mov rsi, 0xffffffffffffffff
inc rsi
cmp word [rax + rsi*2], di
jne 0x140039d93
mov qword [rbp - 0x80], rsi
mov qword [r13 + 0x6d0], rdi
jmp 0x1400387d7
mov r13, qword [rbp + 0x1c0c0]
jmp 0x140039e46
mov rcx, qword [rsp + 0x48]
lea r8, [rsp + 0x48]
mov eax, dword [0x1400f11f8]
mov r9d, 1
cmp byte [rsp + 0x59], 0
mov r13, qword [rbp + 0x1c0c0]
mov dword [rcx], eax
setne dl
movzx eax, word [0x1400f11fc]
add dl, 0xc5
mov word [rcx + 4], ax
mov rcx, r13
mov qword [rsp + 0x20], rdi
call fcn.14003fc70
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x40]
lea rdx, str.Blind_s_Up
call fcn.140006ca0
mov r9d, 1
mov qword [rsp + 0x20], rdi
lea r8, [rsp + 0x48]
mov dl, 0x41
mov rcx, r13
call fcn.14003fc70
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
mov dl, 0x67
mov rcx, r13
call fcn.14003fc70
xor al, al
mov byte [rbp + 0x1c0d0], al
mov rax, qword [rbp - 0x30]
lea r15, [rbp + 0x14060]
mov rcx, qword [rsp + 0x68]
lea rdx, [rbp + 0xc050]
movzx ebx, byte [rsp + 0x41]
mov rsi, rax
mov edi, dword [rbp - 0x6c]
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0xc050]
cmp qword [rbp + 0x18], rax
mov qword [rsp + 0x48], rcx
cmovne r15, rdx
xor r14d, r14d
mov qword [rsp + 0x68], r15
jmp 0x1400375d6
mov r8, r15
mov rcx, qword [rbp + 0x1c0c0]
lea rdx, str.Continuation_section_too_long.
call fcn.140057630
jmp 0x14003a0b9
cmp qword [r13 + 0x278], 0
lea rdx, [0x1400f4768]
lea rax, str.Not_a_valid_method__class_or_property_definition.
mov rcx, r13
cmovne rax, rdx
lea r8, [rbp + 0x4040]
mov rdx, rax
call fcn.140057630
jmp 0x14003a0b9
lea r8, [rbp + 0x4040]
mov rcx, r13
lea rdx, [0x1400f4768]
call fcn.140057630
jmp 0x14003a0b9
lea r8, [rbp + 0x4040]
lea rdx, str.Functions_cannot_contain_functions.
call fcn.140057630
jmp 0x14003a0b9
mov r8, qword [rsp + 0x48]
lea rdx, str.Not_a_valid_property_getter_setter.
mov rcx, r13
call fcn.140057630
jmp 0x14003a0b9
mov r8, rcx
mov qword [r13 + 0x6d0], rax
mov rcx, r13
lea rdx, str.IfWin_should_be_IfWin.
call fcn.140057630
jmp 0x14003a0b9
mov eax, 0x3a
lea rdx, str.Invalid_single_line_hotkey_hotstring.
mov word [r14 - 4], ax
mov rcx, r13
mov r8, qword [rsp + 0x48]
call fcn.140057630
jmp 0x14003a0b9
mov r8, qword [rsp + 0x48]
lea rdx, str.This_hotstring_is_missing_its_abbreviation.
mov rcx, r13
call fcn.140057630
jmp 0x14003a0b9
mov r8, qword [rsp + 0x48]
lea rdx, str.Duplicate_hotkey.
xor esi, esi
mov rcx, r13
mov qword [r13 + 0x6d0], rsi
call fcn.140057630
jmp 0x14003a0b9
mov r8, qword [rsp + 0x48]
lea rdx, str.Out_of_memory.
mov rcx, r13
call fcn.140057630
jmp 0x14003a0b9
mov r8, rcx
lea rdx, str.Hotkeys_hotstrings_are_not_allowed_inside_functions.
mov rcx, r13
call fcn.140057630
jmp 0x14003a0b9
mov r8, rcx
lea rdx, str.This_line_does_not_contain_a_recognized_action.
mov rcx, r13
call fcn.140057630
jmp 0x14003a0b9
mov r8, rbx
jmp 0x140039e90
mov r8, qword [rsp + 0x48]
lea rdx, [0x1400f4708]
mov rcx, qword [rbp + 0x1c0c0]
call fcn.140057630
jmp 0x14003a0b9
cmp word [rbp + 0x4040], 0
je 0x14003a08b
cmp dword [rbp - 0x5c], 0
mov rcx, r13
mov ebx, dword [r13 + 0x28c]
mov eax, dword [rbp - 0x50]
mov dword [r13 + 0x28c], eax
je 0x14003a056
cmp byte [rsp + 0x50], 0
lea rax, str.Missing___
lea rdx, [0x1400f4768]
cmovne rdx, rax
lea r8, [rbp + 0x4040]
call fcn.140057630
jmp 0x14003a0b9
mov qword [rsp + 0x38], r14
lea rdx, [rbp + 0x4040]
mov qword [rsp + 0x30], r14
xor r9d, r9d
mov qword [rsp + 0x28], r14
mov r8b, 3
mov qword [rsp + 0x20], r14
call fcn.14003d6e0
test eax, eax
je 0x140038daf
mov dword [r13 + 0x28c], ebx
cmp dword [r13 + 0x40], 0
je 0x14003a0ad
cmp dword [rbp - 0x28], 0
jne 0x14003a0ad
lea r8, [r13 + 0x70]
mov rcx, r13
lea rdx, str.Missing___
call fcn.140057630
jmp 0x14003a0b9
inc dword [r13 + 0x28c]
mov eax, 1
add rsp, 0x1c178
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret