Function at 0x14002d250
Capabilities:
Get keyboard layout

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rdi
sub rsp, 0xa0
movzx r8d, word [0x1400ffa80]
xor ebx, ebx
mov dword [rsp + 0xc8], 0x90020
mov r11d, SafeArrayAllocDescriptor
mov word [rsp + 0xcc], r8w
mov rdi, rdx
mov word [rsp + 0xce], bx
mov r9, rdx
lea r10, [rbx - 1]
lea eax, [r11 - 0x17]
test rdx, rdx
je 0x14002d2e4
movzx edx, word [rdx]
test dx, dx
je 0x14002d2e4
nop word [rax + rax]
lea rcx, [rsp + 0xc8]
movzx eax, r11w
nop dword [rax]
cmp dx, ax
je 0x14002d392
movzx eax, word [rcx + 2]
add rcx, 2
test ax, ax
jne 0x14002d2c0
movzx edx, word [r9 + 2]
add r9, 2
test dx, dx
jne 0x14002d2b0
mov rax, r10
nop word [rax + rax]
cmp word [rdi + rax*2 + 2], bx
lea rax, [rax + 1]
jne 0x14002d2f0
lea r9, [rdi + rax*2]
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x98], rsi
sub r9, rdi
sar r9, 1
mov qword [rsp + 0x90], r12
mov rbp, r9
mov qword [rsp + 0x88], r13
mov qword [rsp + 0x80], r14
mov qword [rsp + 0x78], r15
mov qword [rsp + 0xc8], r9
test rdi, rdi
je 0x14002d5c0
cmp r9, r10
jne 0x14002d359
mov rbp, r10
nop
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002d350
mov r13d, 8
mov rsi, rbx
cmp rbp, r13
mov r15d, 2
cmovb r13, rbp
test r13, r13
je 0x14002d44e
nop dword [rax + rax]
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002d3ed
mov eax, ebx
jmp 0x14002d3f9
mov rcx, r9
movzx eax, word [rcx]
cmp ax, r11w
je 0x14002d3a4
cmp ax, 9
jne 0x14002d3aa
add rcx, 2
jmp 0x14002d395
mov qword [rsp + 0xd0], rcx
test ax, ax
je 0x14002d2ff
cmp ax, r8w
jne 0x14002d307
movzx eax, word [rcx + 2]
add rcx, 2
cmp ax, r11w
je 0x14002d3c5
cmp ax, 9
je 0x14002d3c5
test ax, ax
cmove rcx, rbx
mov qword [rsp + 0xd0], rcx
jmp 0x14002d307
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, r12d
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, r12d
movzx r12d, word [rax + rsi*2 + 0xe3ab0]
test r12d, 0xffffff80
je 0x14002d423
mov ecx, ebx
jmp 0x14002d431
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r12d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r12d
sub r14d, eax
jne 0x14002d452
inc rsi
cmp rsi, r13
jb 0x14002d380
lea r14d, [rbp - 8]
test r14d, r14d
je 0x14002d5c0
mov r14, qword [rsp + 0xc8]
cmp r14, 0xffffffffffffffff
jne 0x14002d47a
nop dword [rax]
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002d470
mov r13d, SafeArrayDestroy
mov rsi, rbx
cmp r14, r13
cmovb r13, r14
test r13, r13
je 0x14002d4fd
nop
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002d4a2
mov eax, ebx
jmp 0x14002d4ae
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r12d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r12d
movzx r12d, word [rax + rsi*2 + 0xe3ac8]
test r12d, 0xffffff80
je 0x14002d4d7
mov ecx, ebx
jmp 0x14002d4e5
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r12d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r12d
sub ebp, eax
jne 0x14002d501
inc rsi
cmp rsi, r13
jb 0x14002d490
lea ebp, [r14 - 0xd]
test ebp, ebp
je 0x14002d5c0
mov r14, qword [rsp + 0xc8]
cmp r14, 0xffffffffffffffff
jne 0x14002d52a
nop word [rax + rax]
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002d520
mov r13d, 6
mov rsi, rbx
cmp r14, r13
cmovb r13, r14
test r13, r13
je 0x14002d5ad
nop
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002d552
mov eax, ebx
jmp 0x14002d55e
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r12d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r12d
movzx r12d, word [rax + rsi*2 + 0xe3ae8]
test r12d, 0xffffff80
je 0x14002d587
mov ecx, ebx
jmp 0x14002d595
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r12d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r12d
sub ebp, eax
jne 0x14002d5b1
inc rsi
cmp rsi, r13
jb 0x14002d540
lea ebp, [r14 - 6]
test ebp, ebp
jne 0x14002d5f5
mov ecx, 1
mov dword [0x1400ffa98], ecx
mov eax, 3
mov r15, qword [rsp + 0x78]
mov r14, qword [rsp + 0x80]
mov r13, qword [rsp + 0x88]
mov r12, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x98]
add rsp, 0xa0
pop rdi
pop rbp
pop rbx
ret
mov rbp, qword [rsp + 0xc8]
cmp rbp, 0xffffffffffffffff
jne 0x14002d60c
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002d603
mov r13d, reloc.WSOCK32.dll_inet_ntoa
mov rsi, rbx
cmp rbp, r13
cmovb r13, rbp
test r13, r13
je 0x14002d690
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002d633
mov eax, ebx
jmp 0x14002d63f
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, r12d
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, r12d
movzx r12d, word [rax + rsi*2 + 0xe3af8]
test r12d, 0xffffff80
je 0x14002d669
mov ecx, ebx
jmp 0x14002d677
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r12d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r12d
sub r14d, eax
jne 0x14002d694
inc rsi
cmp rsi, r13
jb 0x14002d621
lea r14d, [rbp - 0xb]
test r14d, r14d
jne 0x14002d6a5
mov byte [0x140101d43], 1
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002d6bd
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002d6b3
mov r13d, reloc.WSOCK32.dll_inet_ntoa
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002d73f
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002d6e4
mov eax, ebx
jmp 0x14002d6f0
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3b10]
test r14d, 0xffffff80
je 0x14002d719
mov ecx, ebx
jmp 0x14002d727
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002d744
inc rsi
cmp rsi, r13
jb 0x14002d6d2
lea ebp, [r12 - 0xb]
test ebp, ebp
jne 0x14002d754
mov byte [0x140101c61], 1
jmp 0x14002d5c0
mov rbp, qword [rsp + 0xc8]
cmp rbp, 0xffffffffffffffff
jne 0x14002d76b
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002d762
mov r13d, reloc.OLEAUT32.dll_SafeArrayDestroy
mov rsi, rbx
cmp rbp, r13
cmovb r13, rbp
test r13, r13
je 0x14002d7ef
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002d792
mov eax, ebx
jmp 0x14002d79e
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, r14d
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, r14d
movzx r14d, word [rax + rsi*2 + 0xe3b28]
test r14d, 0xffffff80
je 0x14002d7c8
mov ecx, ebx
jmp 0x14002d7d6
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub r12d, eax
jne 0x14002d7f3
inc rsi
cmp rsi, r13
jb 0x14002d780
lea r12d, [rbp - 0xf]
test r12d, r12d
jne 0x14002d882
mov rbx, qword [rsp + 0xd0]
mov ecx, 1
mov dword [0x140101c64], ecx
test rbx, rbx
je 0x14002d5c0
lea rdx, str.Force
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x14002d838
mov dword [0x140101c64], r15d
jmp 0x14002d5c0
lea rdx, str.Ignore
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x14002d85b
mov dword [0x140101c64], 3
jmp 0x14002d5c0
lea rdx, [0x1400e0c30]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x14002d5c0
mov dword [0x140101c64], 4
jmp 0x14002d5c0
mov rbp, qword [rsp + 0xc8]
cmp rbp, 0xffffffffffffffff
jne 0x14002d899
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002d890
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rsi, rbx
cmp rbp, r13
cmovb r13, rbp
test r13, r13
je 0x14002d91f
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002d8c2
mov eax, ebx
jmp 0x14002d8ce
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, r14d
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, r14d
movzx r14d, word [rax + rsi*2 + 0xe3b68]
test r14d, 0xffffff80
je 0x14002d8f8
mov ecx, ebx
jmp 0x14002d906
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub r12d, eax
jne 0x14002d923
inc rsi
cmp rsi, r13
jb 0x14002d8b0
lea r12d, [rbp - 0x11]
test r12d, r12d
jne 0x14002d934
or byte [0x140102bca], 1
jmp 0x14002d5c0
mov r14, qword [rsp + 0xc8]
cmp r14, 0xffffffffffffffff
jne 0x14002d94c
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002d942
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rsi, rbx
cmp r14, r13
cmovb r13, r14
test r13, r13
je 0x14002d9c8
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002d971
mov eax, ebx
jmp 0x14002d97c
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, ebp
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3b90]
test ebp, 0xffffff80
je 0x14002d9a4
mov ecx, ebx
jmp 0x14002d9b1
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r12d, eax
jne 0x14002d9cc
inc rsi
cmp rsi, r13
jb 0x14002d961
lea r12d, [r14 - 0x11]
test r12d, r12d
jne 0x14002d9dd
or byte [0x140102bca], r15b
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002d9fa
nop dword [rax + rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002d9f0
cmp r12, 8
mov r13d, 8
mov rsi, rbx
cmovb r13, r12
test r13, r13
je 0x14002da77
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002da20
mov eax, ebx
jmp 0x14002da2b
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3bb8]
test ebp, 0xffffff80
je 0x14002da53
mov ecx, ebx
jmp 0x14002da60
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002da7c
inc rsi
cmp rsi, r13
jb 0x14002da10
lea r14d, [r12 - 8]
test r14d, r14d
jne 0x14002dab7
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002daaa
xor edx, edx
mov rcx, rax
call fcn.14000d280
cmp eax, r15d
jne 0x14002daaa
xor al, al
mov byte [0x140101d23], al
jmp 0x14002d5c0
mov al, 1
mov byte [0x140101d23], al
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002dacf
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002dac5
mov r13d, 3
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002db4b
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002daf4
mov eax, ebx
jmp 0x14002daff
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xcd280]
test ebp, 0xffffff80
je 0x14002db27
mov ecx, ebx
jmp 0x14002db34
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002db50
inc rsi
cmp rsi, r13
jb 0x14002dae4
lea r14d, [r12 - 3]
test r14d, r14d
jne 0x14002dc22
mov r11, qword [rsp + 0xd0]
test r11, r11
je 0x14002dd87
mov rcx, r11
call fcn.14000d960
mov qword [0x140102a70], rax
test rax, rax
jne 0x14002d5c0
mov rax, qword [0x1400fe060]
lea rsi, [0x1400cb664]
mov rbp, qword [rsp + 0xc0]
xor r9d, r9d
mov qword [rsp + 0x38], rbx
mov r8b, 0xe5
mov qword [rsp + 0x30], rbx
mov rdx, r11
mov rdi, qword [rax + 0xd8]
mov rcx, rbp
mov qword [rax + 0xd8], rbx
mov qword [rsp + 0x28], rbx
mov byte [rbp + 0x3d], 1
mov qword [rsp + 0x20], rsi
call fcn.14002fb60
test eax, eax
je 0x14002dc1b
mov rax, qword [0x1400fe060]
mov byte [rbp + 0x3d], bl
mov qword [rax + 0xd8], rdi
mov rbx, qword [rbp + 0x668]
call fcn.14000d8b0
mov qword [0x140102a70], rax
mov rdx, rax
test rax, rax
je 0x14002dc1b
mov byte [rax], 5
mov qword [rax + 0x18], rbx
mov rax, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rsi
jmp 0x14002d5c0
xor eax, eax
jmp 0x14002d5c5
mov rbp, qword [rsp + 0xc8]
cmp rbp, 0xffffffffffffffff
jne 0x14002dc39
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002dc30
mov r13d, 0xa
mov rsi, rbx
cmp rbp, r13
cmovb r13, rbp
test r13, r13
je 0x14002dcbf
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002dc62
mov eax, ebx
jmp 0x14002dc6e
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, r14d
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, r14d
movzx r14d, word [rax + rsi*2 + 0xe3bd0]
test r14d, 0xffffff80
je 0x14002dc98
mov ecx, ebx
jmp 0x14002dca6
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub r12d, eax
jne 0x14002dcc3
inc rsi
cmp rsi, r13
jb 0x14002dc50
lea r12d, [rbp - 0xa]
test r12d, r12d
jne 0x14002dcec
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.1400231a0
mov dword [0x1400ffa84], eax
jmp 0x14002d5c0
mov r14d, 6
lea rdx, str.IfWin
mov r8d, r14d
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002dec2
lea rcx, [rdi + 0xc]
lea r8d, [r14 - 3]
lea rdx, [0x1400e0de0]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
mov edx, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov esi, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
test eax, eax
mov r8d, r14d
sete bpl
test eax, eax
cmove esi, edx
lea rdx, str.Active
add rsi, rdi
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002dd56
mov r14b, 1
jmp 0x14002dd77
mov r8d, 5
lea rdx, str.Exist
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002deb8
mov r14b, 3
mov r15, qword [rsp + 0xd0]
add r14b, bpl
test r15, r15
jne 0x14002dd93
mov qword [0x140102a70], rbx
jmp 0x14002d5c0
movzx r8d, word [0x1400ffa80]
mov r11, rbx
movzx r10d, word [0x1400ff9ac]
mov rdx, r15
movzx r9d, word [0x1400ffa7c]
movzx eax, word [rdx]
test ax, ax
je 0x14002de2f
movzx ecx, ax
nop dword [rax]
movzx eax, cx
cmp cx, r10w
je 0x14002dde5
cmp cx, r8w
je 0x14002dde5
cmp cx, r9w
je 0x14002dde5
movzx eax, word [rdx + 2]
add rdx, 2
movzx ecx, ax
test ax, ax
jne 0x14002ddc0
test ax, ax
je 0x14002de2f
cmp ax, r9w
je 0x14002de13
cmp ax, r8w
jne 0x14002de04
test r11, r11
jne 0x14002de13
mov r11, rdx
add rdx, 2
jmp 0x14002ddb1
add rdx, 2
cmp word [rdx], bx
je 0x14002de2f
add rdx, 2
jmp 0x14002ddb1
mov rcx, qword [rsp + 0xc0]
lea rdx, str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
mov r8, rdi
call fcn.140046d70
jmp 0x14002d5c5
lea rsi, [0x1400cb664]
test r11, r11
je 0x14002de77
lea rdi, [r11 + 2]
nop
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14002de4f
cmp ax, 9
jne 0x14002de55
add rdi, 2
jmp 0x14002de40
mov word [r11], bx
mov rcx, r15
sub r11, r15
sar r11, 1
mov rdx, r11
call fcn.140025c70
mov r8b, 1
mov rcx, rdi
call fcn.1400ad9b0
jmp 0x14002de7a
mov rdi, rsi
mov r8b, 1
mov rcx, r15
call fcn.1400ad9b0
mov r8, rdi
mov rdx, r15
movzx ecx, r14b
call fcn.14000d6d0
test eax, eax
jne 0x14002d5c0
mov rcx, qword [rsp + 0xc0]
lea rdx, str.Out_of_memory.
mov r8, rsi
call fcn.140046d70
jmp 0x14002d5c5
mov eax, 4
jmp 0x14002d5c5
mov r14, qword [rsp + 0xc8]
cmp r14, 0xffffffffffffffff
jne 0x14002deda
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002ded0
mov r13d, 0xa
mov rsi, rbx
cmp r14, r13
cmovb r13, r14
test r13, r13
je 0x14002df57
nop
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002df00
mov eax, ebx
jmp 0x14002df0b
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, ebp
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3c78]
test ebp, 0xffffff80
je 0x14002df33
mov ecx, ebx
jmp 0x14002df40
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r12d, eax
jne 0x14002df5b
inc rsi
cmp rsi, r13
jb 0x14002def0
lea r12d, [r14 - 0xa]
test r12d, r12d
jne 0x14002e0b6
mov rdi, qword [rsp + 0xd0]
test rdi, rdi
je 0x14002d5c0
lea rdx, str.EndChars
mov rcx, rdi
call fcn.1400ab710
mov r8, rax
test rax, rax
je 0x14002e003
movzx edx, word [rax]
test dx, dx
je 0x14002d5c0
mov r9d, 9
nop
lea rcx, [0x1400e3c90]
movzx eax, r9w
nop dword [rax + rax]
cmp dx, ax
je 0x14002dfd1
add rcx, r15
movzx eax, word [rcx]
test ax, ax
jne 0x14002dfb0
add r8, r15
movzx edx, word [r8]
test dx, dx
jne 0x14002dfa0
jmp 0x14002d5c0
lea rdx, [r8 + 2]
mov r8d, 0x64
lea rcx, str._____:____.___n__t
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
xor r8d, r8d
mov word [0x1400ffa78], bx
lea rcx, str._____:____.___n__t
call fcn.1400ad9b0
jmp 0x14002d5c0
mov r8d, 7
lea rdx, str.NoMouse
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
jne 0x14002e028
mov byte [0x1400ff9a4], bl
jmp 0x14002d5c0
lea rax, [0x140101c60]
mov rcx, rdi
mov qword [rsp + 0x60], rax
lea r9, [0x1400ff9a8]
lea rax, [0x140101d27]
mov qword [rsp + 0x58], rax
lea r8, [0x140101d4c]
lea rax, [0x140101d2a]
mov qword [rsp + 0x50], rax
lea rdx, [0x140101eb0]
lea rax, [0x1400ff9a5]
mov qword [rsp + 0x48], rax
lea rax, [0x140101d2f]
mov qword [rsp + 0x40], rax
lea rax, [0x140101d2b]
mov qword [rsp + 0x38], rax
lea rax, [0x1400ff9a6]
mov qword [rsp + 0x30], rax
lea rax, [0x1400ff9a7]
mov qword [rsp + 0x28], rax
lea rax, [0x140101d2e]
mov qword [rsp + 0x20], rax
call fcn.140011040
jmp 0x14002d5c0
mov rbp, qword [rsp + 0xc8]
cmp rbp, 0xffffffffffffffff
jne 0x14002e0cd
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002e0c4
mov r13d, reloc.OLEAUT32.dll_SafeArrayAccessData
mov rsi, rbx
cmp rbp, r13
cmovb r13, rbp
test r13, r13
je 0x14002e151
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002e0f4
mov eax, ebx
jmp 0x14002e100
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, r14d
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, r14d
movzx r14d, word [rax + rsi*2 + 0xe3ca8]
test r14d, 0xffffff80
je 0x14002e12a
mov ecx, ebx
jmp 0x14002e138
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub r12d, eax
jne 0x14002e155
inc rsi
cmp rsi, r13
jb 0x14002e0e2
lea r12d, [rbp - 0x16]
test r12d, r12d
jne 0x14002e17e
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov dword [0x1400ffa9c], eax
jmp 0x14002d5c0
mov r14, qword [rsp + 0xc8]
cmp r14, 0xffffffffffffffff
jne 0x14002e19a
nop dword [rax]
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002e190
mov r13d, reloc.OLEAUT32.dll_SafeArrayDestroy
mov rsi, rbx
cmp r14, r13
cmovb r13, r14
test r13, r13
je 0x14002e217
nop
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002e1c0
mov eax, ebx
jmp 0x14002e1cb
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r12d, ebp
and r12d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r12d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3cd8]
test ebp, 0xffffff80
je 0x14002e1f3
mov ecx, ebx
jmp 0x14002e200
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r12d, eax
jne 0x14002e21b
inc rsi
cmp rsi, r13
jb 0x14002e1b0
lea r12d, [r14 - 0xf]
test r12d, r12d
jne 0x14002e257
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov dword [0x1400ffa88], eax
cmp eax, 0xa
jge 0x14002d5c0
mov dword [0x1400ffa88], 0xa
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002e26f
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e265
cmp r12, 0x16
mov r13d, reloc.OLEAUT32.dll_SafeArrayAccessData
mov rsi, rbx
cmovb r13, r12
test r13, r13
je 0x14002e2f7
nop word [rax + rax]
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002e2a0
mov eax, ebx
jmp 0x14002e2ab
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3cf8]
test ebp, 0xffffff80
je 0x14002e2d3
mov ecx, ebx
jmp 0x14002e2e0
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002e2fc
inc rsi
cmp rsi, r13
jb 0x14002e290
lea r14d, [r12 - 0x16]
test r14d, r14d
jne 0x14002e339
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov dword [0x1400ffa8c], eax
cmp eax, 1
jge 0x14002d5c0
mov ecx, 1
mov dword [0x1400ffa8c], ecx
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002e35a
nop word [rax + rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e350
mov r13d, reloc.OLEAUT32.dll_SafeArrayLock
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002e3d7
nop
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002e380
mov eax, ebx
jmp 0x14002e38b
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3d28]
test ebp, 0xffffff80
je 0x14002e3b3
mov ecx, ebx
jmp 0x14002e3c0
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002e3dc
inc rsi
cmp rsi, r13
jb 0x14002e370
lea r14d, [r12 - 0x14]
test r14d, r14d
jne 0x14002e41c
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov edx, eax
mov eax, 0xff
cmp edx, eax
jg 0x14002e411
mov ecx, 1
mov eax, edx
cmp edx, ecx
cmovl eax, ecx
mov byte [0x1400ff9ae], al
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002e43a
nop word [rax + rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e430
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002e4b7
nop
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002e460
mov eax, ebx
jmp 0x14002e46b
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3d58]
test ebp, 0xffffff80
je 0x14002e493
mov ecx, ebx
jmp 0x14002e4a0
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002e4bc
inc rsi
cmp rsi, r13
jb 0x14002e450
lea r14d, [r12 - 0x11]
test r14d, r14d
jne 0x14002e4f7
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002e4ea
xor edx, edx
mov rcx, rax
call fcn.14000d280
cmp eax, r15d
jne 0x14002e4ea
xor al, al
mov byte [0x140101d3a], al
jmp 0x14002d5c0
mov al, 1
mov byte [0x140101d3a], al
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002e50f
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e505
mov r13d, reloc.WSOCK32.dll_inet_ntoa
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002e58b
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002e534
mov eax, ebx
jmp 0x14002e53f
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3d80]
test ebp, 0xffffff80
je 0x14002e567
mov ecx, ebx
jmp 0x14002e574
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002e590
inc rsi
cmp rsi, r13
jb 0x14002e524
lea r14d, [r12 - 0xb]
test r14d, r14d
jne 0x14002e5d0
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov edx, eax
mov eax, 0xff
cmp edx, eax
jg 0x14002e5c5
mov ecx, 1
mov eax, edx
cmp edx, ecx
cmovl eax, ecx
mov dword [0x1400fe058], eax
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002e5ea
nop
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e5e0
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002e667
nop
movzx ebp, word [rdi + rsi*2]
test ebp, 0xffffff80
je 0x14002e610
mov eax, ebx
jmp 0x14002e61b
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, ebp
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, ebp
movzx ebp, word [rax + rsi*2 + 0xe3d98]
test ebp, 0xffffff80
je 0x14002e643
mov ecx, ebx
jmp 0x14002e650
mov edx, r15d
mov ecx, ebp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, ebp
and eax, 0xffffffdf
test ecx, ecx
cmove eax, ebp
sub r14d, eax
jne 0x14002e66c
inc rsi
cmp rsi, r13
jb 0x14002e600
lea r14d, [r12 - 0x11]
test r14d, r14d
jne 0x14002e695
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov dword [0x1400fe068], eax
jmp 0x14002d5c0
mov r13, qword [rsp + 0xc8]
mov r12, r13
cmp r13, 0xffffffffffffffff
jne 0x14002e6b0
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e6a6
cmp r12, 6
mov eax, 6
mov rsi, rbx
cmovb rax, r12
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x14002e742
nop dword [rax]
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002e6e2
mov eax, ebx
jmp 0x14002e6ee
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3dc0]
test r14d, 0xffffff80
je 0x14002e717
mov ecx, ebx
jmp 0x14002e725
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002e747
inc rsi
cmp rsi, qword [rsp + 0xd8]
jb 0x14002e6d0
lea ebp, [r12 - 6]
test ebp, ebp
jne 0x14002e781
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002e774
xor edx, edx
mov rcx, rax
call fcn.14000d280
cmp eax, r15d
jne 0x14002e774
xor al, al
mov byte [0x140101d26], al
jmp 0x14002d5c0
mov al, 1
mov byte [0x140101d26], al
jmp 0x14002d5c0
mov r12, r13
cmp r13, 0xffffffffffffffff
jne 0x14002e79a
nop word [rax + rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e790
cmp r12, 0x11
mov r13d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rsi, rbx
cmovb r13, r12
test r13, r13
je 0x14002e81d
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002e7c2
mov eax, ebx
jmp 0x14002e7ce
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3dd0]
test r14d, 0xffffff80
je 0x14002e7f7
mov ecx, ebx
jmp 0x14002e805
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002e822
inc rsi
cmp rsi, r13
jb 0x14002e7b0
lea ebp, [r12 - 0x11]
test ebp, ebp
jne 0x14002e832
mov byte [0x140102a8c], 1
jmp 0x14002d5c0
mov rbp, qword [rsp + 0xc8]
cmp rbp, 0xffffffffffffffff
jne 0x14002e849
inc rbp
cmp word [rdi + rbp*2], bx
jne 0x14002e840
mov r13d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov rsi, rbx
cmp rbp, r13
cmovb r13, rbp
test r13, r13
je 0x14002e8cf
nop
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002e872
mov eax, ebx
jmp 0x14002e87e
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov r14d, r12d
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, r12d
movzx r12d, word [rax + rsi*2 + 0xe3df8]
test r12d, 0xffffff80
je 0x14002e8a8
mov ecx, ebx
jmp 0x14002e8b6
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r12d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r12d
sub r14d, eax
jne 0x14002e8d3
inc rsi
cmp rsi, r13
jb 0x14002e860
lea r14d, [rbp - 0xc]
test r14d, r14d
jne 0x14002e8ec
mov rcx, qword [rsp + 0xc0]
mov byte [rcx + 0xbe3], 1
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002e90a
nop word [rax + rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002e900
mov r13d, 7
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002e98d
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002e932
mov eax, ebx
jmp 0x14002e93e
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3e18]
test r14d, 0xffffff80
je 0x14002e967
mov ecx, ebx
jmp 0x14002e975
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002e992
inc rsi
cmp rsi, r13
jb 0x14002e920
lea ebp, [r12 - 7]
test ebp, ebp
jne 0x14002ea12
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140025dd0
movsd xmm1, qword [0x1400ee0e8]
xor ecx, ecx
movsd xmm2, qword [0x1400ee140]
maxsd xmm1, xmm0
movsd xmm0, qword [0x1400ee198]
minsd xmm2, xmm1
mulsd xmm2, qword [0x1400ee130]
mulsd xmm2, qword [0x1400ee130]
comisd xmm2, xmm0
jb 0x14002e9fe
subsd xmm2, xmm0
comisd xmm2, xmm0
jae 0x14002e9fe
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm2
add rax, rcx
mov qword [0x1400ffa90], rax
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002ea2a
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002ea20
mov r13d, reloc.WSOCK32.dll_inet_ntoa
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002eaad
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002ea52
mov eax, ebx
jmp 0x14002ea5e
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3e28]
test r14d, 0xffffff80
je 0x14002ea87
mov ecx, ebx
jmp 0x14002ea95
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002eab2
inc rsi
cmp rsi, r13
jb 0x14002ea40
lea ebp, [r12 - 0xb]
test ebp, ebp
jne 0x14002eafe
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
mov rcx, rax
call fcn.140012f20
mov dword [0x1400fe05c], eax
test eax, eax
jns 0x14002eae4
mov dword [0x1400fe05c], ebx
jmp 0x14002d5c0
cmp eax, 0x1f4
jle 0x14002d5c0
mov dword [0x1400fe05c], 0x1f4
jmp 0x14002d5c0
mov rax, qword [rsp + 0xc8]
mov r12, rax
cmp rax, 0xffffffffffffffff
jne 0x14002eb1a
nop
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002eb10
mov r13d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002eb9d
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002eb42
mov eax, ebx
jmp 0x14002eb4e
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3400]
test r14d, 0xffffff80
je 0x14002eb77
mov ecx, ebx
jmp 0x14002eb85
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002eba2
inc rsi
cmp rsi, r13
jb 0x14002eb30
lea ebp, [r12 - 0xc]
test ebp, ebp
jne 0x14002ec55
mov rdx, qword [rsp + 0xd0]
test rdx, rdx
je 0x14002d5c0
cmp word [rdx + 2], bx
jne 0x14002ec1c
movzx ecx, word [rdx]
cmp cx, 0x23
je 0x14002f39e
cmp cx, word [0x1400ffa7c]
je 0x14002f39e
cmp cx, word [0x1400ff9ac]
je 0x14002f39e
cmp cx, word [0x1400ffa80]
je 0x14002f39e
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x14002ec12
movabs r8, 0x2000000028000609
bt r8, rax
jb 0x14002f39e
cmp cx, 0x7e
je 0x14002f39e
lea rdi, [0x1401007a0]
mov r8d, reloc.OLEAUT32.dll_SafeArrayDestroy
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
mov rax, 0xffffffffffffffff
mov word [0x1401007be], bx
inc rax
cmp word [rdi + rax*2], bx
jne 0x14002ec40
mov qword [0x1401007c0], rax
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002ec6d
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002ec63
mov r13d, reloc.WSOCK32.dll_inet_ntoa
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002ecef
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002ec94
mov eax, ebx
jmp 0x14002eca0
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3e40]
test r14d, 0xffffff80
je 0x14002ecc9
mov ecx, ebx
jmp 0x14002ecd7
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002ecf4
inc rsi
cmp rsi, r13
jb 0x14002ec82
lea ebp, [r12 - 0xb]
test ebp, ebp
jne 0x14002ed5d
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
movzx eax, word [rax]
cmp ax, 0x23
je 0x14002f39e
cmp ax, word [0x1400ffa7c]
je 0x14002f39e
cmp ax, word [0x1400ffa80]
je 0x14002f39e
cmp ax, 0x2e
je 0x14002f39e
cmp qword [0x1401007c0], 1
jne 0x14002ed51
cmp ax, word [0x1401007a0]
je 0x14002f39e
mov word [0x1400ff9ac], ax
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002ed7a
nop dword [rax + rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002ed70
mov r13d, 0xa
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002edfd
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002eda2
mov eax, ebx
jmp 0x14002edae
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3e58]
test r14d, 0xffffff80
je 0x14002edd7
mov ecx, ebx
jmp 0x14002ede5
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002ee02
inc rsi
cmp rsi, r13
jb 0x14002ed90
lea ebp, [r12 - 0xa]
test ebp, ebp
jne 0x14002ee61
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
movzx eax, word [rax]
cmp ax, word [0x1400ff9ac]
je 0x14002f39e
cmp ax, word [0x1400ffa80]
je 0x14002f39e
cmp ax, 0x2e
je 0x14002f39e
cmp qword [0x1401007c0], 1
jne 0x14002ee55
cmp ax, word [0x1401007a0]
je 0x14002f39e
mov word [0x1400ffa7c], ax
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002ee7a
nop
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002ee70
mov r13d, 0xa
mov rsi, rbx
cmp r12, r13
cmovb r13, r12
test r13, r13
je 0x14002eefd
nop
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002eea2
mov eax, ebx
jmp 0x14002eeae
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3e70]
test r14d, 0xffffff80
je 0x14002eed7
mov ecx, ebx
jmp 0x14002eee5
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002ef02
inc rsi
cmp rsi, r13
jb 0x14002ee90
lea ebp, [r12 - 0xa]
test ebp, ebp
jne 0x14002ef6b
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002d5c0
movzx eax, word [rax]
cmp ax, 0x23
je 0x14002f39e
cmp ax, word [0x1400ff9ac]
je 0x14002f39e
cmp ax, word [0x1400ffa7c]
je 0x14002f39e
cmp ax, 0x2e
je 0x14002f39e
cmp qword [0x1401007c0], 1
jne 0x14002ef5f
cmp ax, word [0x1401007a0]
je 0x14002f39e
mov word [0x1400ffa80], ax
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002ef8a
nop dword [rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002ef80
cmp r12, 0xc
mov r13d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
mov rsi, rbx
cmovb r13, r12
test r13, r13
je 0x14002f00d
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002efb2
mov eax, ebx
jmp 0x14002efbe
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3e88]
test r14d, 0xffffff80
je 0x14002efe7
mov ecx, ebx
jmp 0x14002eff5
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002f012
inc rsi
cmp rsi, r13
jb 0x14002efa0
lea ebp, [r12 - 0xc]
test ebp, ebp
jne 0x14002f07b
mov rbx, qword [rsp + 0xd0]
test rbx, rbx
je 0x14002f051
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
xor r9d, r9d
lea r8, [0x1400ffaa0]
lea rdx, [0x1400ffa7a]
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140018f70
test al, al
jne 0x14002d5c0
mov rcx, qword [rsp + 0xc0]
lea rax, str.Parameter_1_invalid.
test rbx, rbx
lea rdx, str.Parameter_1_required
mov r8, rdi
cmovne rdx, rax
call fcn.140046d70
jmp 0x14002d5c5
mov r13, qword [rsp + 0xc8]
mov r12, r13
cmp r13, 0xffffffffffffffff
jne 0x14002f09a
nop dword [rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002f090
cmp r12, 0xb
mov eax, reloc.WSOCK32.dll_inet_ntoa
mov rsi, rbx
cmovb rax, r12
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x14002f132
nop word [rax + rax]
movzx r14d, word [rdi + rsi*2]
test r14d, 0xffffff80
je 0x14002f0d2
mov eax, ebx
jmp 0x14002f0de
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rsi*2 + 0xe3ed8]
test r14d, 0xffffff80
je 0x14002f107
mov ecx, ebx
jmp 0x14002f115
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
sub ebp, eax
jne 0x14002f137
inc rsi
cmp rsi, qword [rsp + 0xd8]
jb 0x14002f0c0
lea ebp, [r12 - 0xb]
test ebp, ebp
jne 0x14002f166
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002f15b
mov rcx, rax
call fcn.140012f20
mov ebx, eax
cmp eax, 0x64
ja 0x14002f39e
mov byte [0x140101d37], bl
jmp 0x14002d5c0
mov r14, r13
cmp r13, 0xffffffffffffffff
jne 0x14002f17a
nop
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002f170
mov r13d, DispGetParam
mov rsi, rbx
cmp r14, r13
cmovb r13, r14
test r13, r13
je 0x14002f1fb
nop
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002f1a2
mov eax, ebx
jmp 0x14002f1ae
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r12d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r12d
movzx r12d, word [rax + rsi*2 + 0xe3ef0]
test r12d, 0xffffff80
je 0x14002f1d7
mov eax, ebx
jmp 0x14002f1e3
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, r12d
and ecx, 0xffffffdf
test eax, eax
cmove ecx, r12d
sub ebp, ecx
jne 0x14002f1ff
inc rsi
cmp rsi, r13
jb 0x14002f190
lea ebp, [r14 - 0x19]
test ebp, ebp
jne 0x14002f23c
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x14002f22f
lea rdx, [0x1400e0c30]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
jne 0x14002f22f
mov byte [0x1400ff9af], al
jmp 0x14002d5c0
mov al, 1
mov byte [0x1400ff9af], al
jmp 0x14002d5c0
mov r14, qword [rsp + 0xc8]
cmp r14, 0xffffffffffffffff
jne 0x14002f25a
nop word [rax + rax]
inc r14
cmp word [rdi + r14*2], bx
jne 0x14002f250
mov r13d, 5
mov rsi, rbx
cmp r14, r13
mov eax, r13d
cmovb rax, r14
mov qword [rsp + 0xd8], rax
test rax, rax
je 0x14002f2f0
nop word [rax + rax]
movzx r12d, word [rdi + rsi*2]
test r12d, 0xffffff80
je 0x14002f292
mov eax, ebx
jmp 0x14002f29e
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ebp, r12d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r12d
movzx r12d, word [rax + rsi*2 + 0xe3f28]
test r12d, 0xffffff80
je 0x14002f2c7
mov eax, ebx
jmp 0x14002f2d3
mov edx, r15d
mov ecx, r12d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, r12d
and ecx, 0xffffffdf
test eax, eax
cmove ecx, r12d
sub ebp, ecx
jne 0x14002f2f4
inc rsi
cmp rsi, qword [rsp + 0xd8]
jb 0x14002f280
lea ebp, [r14 - 5]
test ebp, ebp
jne 0x14002f47b
mov rax, qword [rsp + 0xd0]
lea rsi, [0x1400cb664]
movzx edx, word [0x1400ffa80]
test rax, rax
mov rbp, rsi
cmovne rbp, rax
mov rcx, rbp
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
test rax, rax
je 0x14002f36b
lea rsi, [rax + 2]
nop
movzx ecx, word [rsi]
cmp cx, 0x20
je 0x14002f33f
cmp cx, 9
jne 0x14002f344
add rsi, r15
jmp 0x14002f330
add rax, 0xfffffffffffffffe
cmp rax, rbp
jbe 0x14002f367
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002f35f
cmp cx, 9
jne 0x14002f367
sub rax, r15
cmp rax, rbp
ja 0x14002f350
mov word [rax + 2], bx
cmp word [rbp], bx
je 0x14002f3bd
mov r12d, ebx
lea r14, str.UseUnsetLocal
lea r13, [0x1400e7518]
mov rdx, qword [r14]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
je 0x14002f3ba
inc r12d
add r14, 8
cmp r14, r13
jne 0x14002f382
mov rcx, qword [rsp + 0xc0]
lea rdx, str.Parameter_1_invalid.
mov r8, rdi
call fcn.140046d70
jmp 0x14002d5c5
mov r13d, r12d
cmp word [rsi], bx
je 0x14002f40b
mov r15d, ebx
lea rdi, str.UseUnsetLocal
lea rbx, [0x1400e74c8]
mov rdx, qword [rbx]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsicmp]
test eax, eax
je 0x14002f40b
inc r15d
add rbx, 8
cmp rbx, rdi
jne 0x14002f3d3
mov rcx, qword [rsp + 0xc0]
lea rdx, str.Parameter_2_invalid.
mov r8, rsi
call fcn.140046d70
jmp 0x14002d5c5
test r13d, r13d
je 0x14002f416
cmp r13d, 5
jne 0x14002f41d
mov dword [0x140102a88], r15d
lea eax, [r13 - 1]
test eax, 0xfffffffb
mov eax, dword [0x140102a84]
cmove eax, r15d
mov dword [0x140102a84], eax
lea eax, [r13 - 3]
test eax, 0xfffffffd
mov eax, dword [0x140102a80]
cmove eax, r15d
mov dword [0x140102a80], eax
cmp r13d, 2
je 0x14002f45b
cmp r13d, 5
jne 0x14002f462
mov dword [0x140102a7c], r15d
lea eax, [r13 - 4]
cmp eax, 1
ja 0x14002d5c0
mov dword [0x140102a78], r15d
jmp 0x14002d5c0
mov r12, qword [rsp + 0xc8]
cmp r12, 0xffffffffffffffff
jne 0x14002f49a
nop dword [rax]
inc r12
cmp word [rdi + r12*2], bx
jne 0x14002f490
cmp r12, 0xa
mov r13d, 0xa
mov rbp, rbx
cmovb r13, r12
test r13, r13
je 0x14002f51b
movzx r14d, word [rdi + rbp*2]
test r14d, 0xffffff80
je 0x14002f4c2
mov eax, ebx
jmp 0x14002f4ce
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov esi, r14d
and esi, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove esi, r14d
movzx r14d, word [rax + rbp*2 + 0xe3f38]
test r14d, 0xffffff80
je 0x14002f4f7
mov eax, ebx
jmp 0x14002f503
mov edx, r15d
mov ecx, r14d
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__isctype]
mov ecx, r14d
and ecx, 0xffffffdf
test eax, eax
cmove ecx, r14d
sub esi, ecx
jne 0x14002f520
inc rbp
cmp rbp, r13
jb 0x14002f4b0
lea esi, [r12 - 0xa]
test esi, esi
jne 0x14002deb8
mov rcx, qword [rsp + 0xd0]
mov rdx, rdi
call fcn.1400adfa0
jmp 0x14002d5c5