Function at 0x14002e470
Capabilities:
Check if file exists
Get file attributes
Get keyboard layout
Set current directory

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4c8
movzx r8d, word [0x1401315b0]
mov r11d, SafeArrayAllocDescriptor
xor esi, esi
mov dword [rsp + 0x70], 0x90020
mov word [rsp + 0x74], r8w
mov rdi, rdx
mov word [rsp + 0x76], si
mov r12, rcx
lea r13d, [r11 - 0x1e]
mov r9, rdx
lea r10, [r11 - 0x21]
test rdx, rdx
je 0x14002e500
movzx edx, word [rdx]
test dx, dx
je 0x14002e500
nop dword [rax]
lea rcx, [rsp + 0x70]
movzx eax, r11w
nop dword [rax]
cmp dx, ax
je 0x14002e57b
add rcx, r13
movzx eax, word [rcx]
test ax, ax
jne 0x14002e4e0
add r9, r13
movzx edx, word [r9]
test dx, dx
jne 0x14002e4d0
mov rax, r10
cmp word [rdi + rax*2 + 2], si
lea rax, [rax + 1]
jne 0x14002e503
lea r9, [rdi + rax*2]
mov qword [rsp + 0x528], rsi
sub r9, rdi
xor r15b, r15b
sar r9, 1
mov qword [rsp + 0x520], r9
mov rbp, r9
test rdi, rdi
je 0x140030b3d
cmp r9, r10
jne 0x14002e549
mov rbp, r10
nop
inc rbp
cmp word [rdi + rbp*2], si
jne 0x14002e540
mov r12d, 8
mov rbx, rsi
cmp rbp, r12
cmovb r12, rbp
test r12, r12
je 0x14002e661
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002e602
mov eax, esi
jmp 0x14002e60d
mov rcx, r9
nop
movzx eax, word [rcx]
cmp ax, r11w
je 0x14002e58f
cmp ax, 9
jne 0x14002e594
add rcx, r13
jmp 0x14002e580
mov qword [rsp + 0x528], rcx
test ax, ax
je 0x14002e512
cmp ax, r8w
je 0x14002e5c1
sub r9, rdi
sar r9, 1
mov qword [rsp + 0x520], r9
mov rbp, r9
jmp 0x14002e537
add rcx, r13
movzx eax, word [rcx]
cmp ax, r11w
je 0x14002e5c1
cmp ax, 9
je 0x14002e5c1
mov qword [rsp + 0x528], rcx
test ax, ax
jne 0x14002e51a
sub r9, rdi
mov qword [rsp + 0x528], rsi
sar r9, 1
mov qword [rsp + 0x520], r9
mov rbp, r9
jmp 0x14002e537
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov r14d, r15d
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, r15d
movzx r15d, word [rax + rbx*2 + 0x113658]
test r15d, 0xffffff80
je 0x14002e637
mov ecx, esi
jmp 0x14002e644
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp r14d, eax
jne 0x14002e66c
inc rbx
cmp rbx, r12
jb 0x14002e562
lea eax, [rbp - 8]
test eax, eax
je 0x140030b32
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002e68a
nop word [rax + rax]
inc r14
cmp word [rdi + r14*2], si
jne 0x14002e680
mov r12d, ntohs
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002e70b
nop
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002e6b2
mov eax, esi
jmp 0x14002e6bd
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113d98]
test r15d, 0xffffff80
je 0x14002e6e6
mov ecx, esi
jmp 0x14002e6f3
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002e71d
inc rbx
cmp rbx, r12
jb 0x14002e6a0
lea eax, [r14 - 0xd]
test eax, eax
sete r15b
test eax, eax
je 0x140030b35
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002e73a
nop dword [rax + rax]
inc r14
cmp word [rdi + r14*2], si
jne 0x14002e730
mov r12d, 6
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002e7bb
nop
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002e762
mov eax, esi
jmp 0x14002e76d
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113e20]
test r15d, 0xffffff80
je 0x14002e796
mov ecx, esi
jmp 0x14002e7a3
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002e7d6
inc rbx
cmp rbx, r12
jb 0x14002e750
lea eax, [r14 - 6]
test eax, eax
jne 0x14002e7d6
mov ecx, 1
mov dword [0x140134fb4], ecx
lea eax, [rcx + 2]
jmp 0x140030cee
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002e7ee
inc r14
cmp word [rdi + r14*2], si
jne 0x14002e7e4
mov r12d, reloc.WSOCK32.dll_inet_ntoa
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002e87b
nop dword [rax]
nop word [rax + rax]
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002e822
mov eax, esi
jmp 0x14002e82d
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113e30]
test r15d, 0xffffff80
je 0x14002e856
mov ecx, esi
jmp 0x14002e863
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002e894
inc rbx
cmp rbx, r12
jb 0x14002e810
lea eax, [r14 - 0xb]
test eax, eax
jne 0x14002e894
mov byte [0x140134298], 1
mov eax, 3
jmp 0x140030cee
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002e8ac
inc r14
cmp word [rdi + r14*2], si
jne 0x14002e8a2
mov r12d, reloc.WSOCK32.dll_inet_ntoa
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002e92c
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002e8d3
mov eax, esi
jmp 0x14002e8de
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113e48]
test r15d, 0xffffff80
je 0x14002e907
mov ecx, esi
jmp 0x14002e914
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002e945
inc rbx
cmp rbx, r12
jb 0x14002e8c1
lea eax, [r14 - 0xb]
test eax, eax
jne 0x14002e945
mov byte [0x14013408c], 1
mov eax, 3
jmp 0x140030cee
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002e95d
inc r14
cmp word [rdi + r14*2], si
jne 0x14002e953
mov r12d, reloc.WSOCK32.dll_ntohs
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002e9e1
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002e984
mov eax, esi
jmp 0x14002e98f
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113e60]
test r15d, 0xffffff80
je 0x14002e9b8
mov ecx, esi
jmp 0x14002e9c5
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002ea7f
inc rbx
cmp rbx, r12
jb 0x14002e972
lea eax, [r14 - 0xf]
test eax, eax
jne 0x14002ea7f
mov rbx, qword [rsp + 0x528]
mov ecx, 1
mov dword [0x140134270], ecx
test rbx, rbx
je 0x140030cc3
lea rdx, str.Force
mov rcx, rbx
call fcn.1400d0944
test eax, eax
jne 0x14002ea2d
mov dword [0x140134270], r13d
mov eax, 3
jmp 0x140030cee
lea rdx, str.Ignore
mov rcx, rbx
call fcn.1400d0944
test eax, eax
jne 0x14002ea54
mov dword [0x140134270], 3
mov eax, 3
jmp 0x140030cee
lea rdx, [0x140110380]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
jne 0x140030cc3
mov dword [0x140134270], 4
mov eax, 3
jmp 0x140030cee
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002ea9a
nop dword [rax]
inc r14
cmp word [rdi + r14*2], si
jne 0x14002ea90
mov r12d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002eb1b
nop
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002eac2
mov eax, esi
jmp 0x14002eacd
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113ea0]
test r15d, 0xffffff80
je 0x14002eaf6
mov ecx, esi
jmp 0x14002eb03
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002eb34
inc rbx
cmp rbx, r12
jb 0x14002eab0
lea eax, [r14 - 0x11]
test eax, eax
jne 0x14002eb34
or byte [0x1401343f7], 1
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002eb4c
inc r15
cmp word [rdi + r15*2], si
jne 0x14002eb42
mov r12d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002ebcc
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002eb73
mov eax, esi
jmp 0x14002eb7e
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x113ec8]
test r14d, 0xffffff80
je 0x14002eba7
mov ecx, esi
jmp 0x14002ebb4
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002ebe5
inc rbx
cmp rbx, r12
jb 0x14002eb61
lea eax, [r15 - 0x11]
test eax, eax
jne 0x14002ebe5
or byte [0x1401343f7], r13b
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002ebfd
inc r15
cmp word [rdi + r15*2], si
jne 0x14002ebf3
cmp r15, 8
mov r12d, 8
mov rbx, rsi
cmovb r12, r15
test r12, r12
je 0x14002ec8f
nop dword [rax]
nop word [rax + rax]
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002ec32
mov eax, esi
jmp 0x14002ec3d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x113ef0]
test r14d, 0xffffff80
je 0x14002ec66
mov ecx, esi
jmp 0x14002ec73
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002ed0b
inc rbx
cmp rbx, r12
jb 0x14002ec20
lea eax, [r15 - 8]
test eax, eax
jne 0x14002ed0b
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x14002ecf9
cmp word [rbx], si
je 0x14002ecf9
lea rdx, [0x140110374]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x14002ecf9
cmp word [rbx], 0x31
jne 0x14002ecc8
cmp word [rbx + 2], si
je 0x14002ecf9
lea rdx, [0x140110380]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x14002ece7
cmp word [rbx], 0x30
jne 0x14002ecf9
cmp word [rbx + 2], si
jne 0x14002ecf9
xor al, al
mov byte [0x140134098], al
mov eax, 3
jmp 0x140030cee
mov al, 1
mov byte [0x140134098], al
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002ed2a
nop dword [rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002ed20
mov r12d, 3
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002edaf
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002ed52
mov eax, esi
jmp 0x14002ed5d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x10f100]
test r14d, 0xffffff80
je 0x14002ed86
mov ecx, esi
jmp 0x14002ed93
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002ef05
inc rbx
cmp rbx, r12
jb 0x14002ed40
lea eax, [r15 - 3]
test eax, eax
jne 0x14002ef05
mov r10, qword [rsp + 0x528]
test r10, r10
je 0x14002f092
mov r9, qword [0x140134fc0]
test r9, r9
je 0x14002ee14
nop dword [rax + rax]
mov r8, qword [r9 + 8]
mov rax, r10
sub r8, r10
nop word [rax + rax]
movzx edx, word [rax]
movzx ecx, word [rax + r8]
sub edx, ecx
jne 0x14002ee03
add rax, r13
test ecx, ecx
jne 0x14002edf0
test edx, edx
je 0x14002eea4
mov r9, qword [r9 + 0x20]
test r9, r9
jne 0x14002ede0
mov qword [0x140134fd8], rsi
mov rax, qword [0x14012fc08]
lea rbx, [0x1400fb87c]
mov rbp, qword [rsp + 0x510]
xor r9d, r9d
mov qword [rsp + 0x38], rsi
mov r8b, 0xe3
mov qword [rsp + 0x30], rsi
mov rdx, r10
mov rdi, qword [rax + 0xd8]
mov rcx, rbp
mov qword [rax + 0xd8], rsi
mov qword [rsp + 0x28], rsi
mov byte [rbp + 0x7d], 1
mov qword [rsp + 0x20], rbx
call fcn.140031160
test eax, eax
je 0x140030c95
mov rax, qword [0x14012fc08]
mov ecx, 0x28
mov byte [rbp + 0x7d], sil
mov qword [rax + 0xd8], rdi
mov rdi, qword [rbp + 8]
call fcn.1400a96d0
mov rdx, rax
test rax, rax
jne 0x14002eeb9
mov qword [0x140134fd8], rsi
jmp 0x140030cee
mov qword [0x140134fd8], r9
test r9, r9
jne 0x140030cc3
jmp 0x14002ee1b
mov qword [rax + 0x20], rsi
mov rax, qword [0x140134fb8]
test rax, rax
je 0x14002eecf
mov qword [rax + 0x20], rdx
jmp 0x14002eed6
mov qword [0x140134fc0], rdx
mov byte [rdx], 5
mov qword [rdx + 0x18], rdi
mov rax, qword [rdi + 8]
mov qword [0x140134fb8], rdx
mov qword [0x140134fd8], rdx
mov rcx, qword [rax + 8]
mov eax, 3
mov qword [rdx + 8], rcx
mov qword [rdx + 0x10], rbx
jmp 0x140030cee
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002ef1d
inc r14
cmp word [rdi + r14*2], si
jne 0x14002ef13
mov r12d, 0xa
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002ef9d
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002ef44
mov eax, esi
jmp 0x14002ef4f
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x113f08]
test r15d, 0xffffff80
je 0x14002ef78
mov ecx, esi
jmp 0x14002ef85
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002eff5
inc rbx
cmp rbx, r12
jb 0x14002ef32
lea eax, [r14 - 0xa]
test eax, eax
jne 0x14002eff5
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002efe0
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d22a0
mov dword [0x1401315b4], eax
mov eax, 3
jmp 0x140030cee
call fcn.1400d283c
mov dword [0x1401315b4], eax
mov eax, 3
jmp 0x140030cee
mov r14d, 6
lea rdx, str.IfWin
mov r8d, r14d
mov rcx, rdi
call fcn.1400d2a10
test eax, eax
jne 0x14002f223
lea rcx, [rdi + 0xc]
lea r8d, [r14 - 3]
lea rdx, [0x140110530]
call fcn.1400d2a10
test eax, eax
lea rdx, str.Active
mov ecx, reloc.OLEAUT32.dll_SafeArrayGetUBound
mov ebp, reloc.WSOCK32.dll_ioctlsocket
cmove ebp, ecx
mov r8d, r14d
add rbp, rdi
mov ebx, eax
mov rcx, rbp
call fcn.1400d2a10
test eax, eax
jne 0x14002f05e
test ebx, ebx
sete bpl
inc bpl
jmp 0x14002f085
mov r8d, 5
lea rdx, str.Exist
mov rcx, rbp
call fcn.1400d2a10
test eax, eax
jne 0x14002f219
test ebx, ebx
sete bpl
add bpl, 3
mov r14, qword [rsp + 0x528]
test r14, r14
jne 0x14002f0a3
mov qword [0x140134fd8], rsi
mov eax, 3
jmp 0x140030cee
movzx r9d, word [0x1401315b0]
mov r8, rsi
movzx r11d, word [0x1401304bc]
mov rdx, r14
movzx r10d, word [0x1401314d8]
movzx eax, word [rdx]
test ax, ax
je 0x14002f13a
movzx ecx, ax
nop dword [rax]
movzx eax, cx
cmp cx, r11w
je 0x14002f0f8
cmp cx, r9w
je 0x14002f0f3
cmp cx, r10w
je 0x14002f0f3
add rdx, r13
movzx eax, word [rdx]
movzx ecx, ax
test ax, ax
jne 0x14002f0d0
test ax, ax
je 0x14002f13a
cmp ax, r10w
je 0x14002f11e
cmp ax, r9w
jne 0x14002f111
test r8, r8
jne 0x14002f11e
mov r8, rdx
add rdx, r13
jmp 0x14002f0c1
add rdx, r13
cmp word [rdx], si
je 0x14002f13a
add rdx, r13
jmp 0x14002f0c1
mov rcx, qword [rsp + 0x510]
lea rdx, str.Literal_commas_and_percent_signs_must_be_escaped__e.g.____
mov r8, rdi
call fcn.1400515e0
jmp 0x140030cee
lea rbx, [0x1400fb87c]
test r8, r8
je 0x14002f1d8
lea rdi, [r8 + 2]
nop
movzx eax, word [rdi]
cmp ax, 0x20
je 0x14002f15f
cmp ax, 9
jne 0x14002f164
add rdi, r13
jmp 0x14002f150
mov word [r8], si
sub r8, r14
sar r8, 1
cmp word [r14], si
je 0x14002f1cb
cmp r8, 0xffffffffffffffff
jne 0x14002f18a
nop word [rax + rax]
inc r8
cmp word [r14 + r8*2], si
jne 0x14002f180
lea rax, [r14 - 2]
lea rax, [rax + r8*2]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x14002f1a1
cmp cx, 9
jne 0x14002f1ab
cmp rax, r14
je 0x14002f1bc
sub rax, r13
jmp 0x14002f192
mov r8b, 1
mov word [rax + 2], si
mov rcx, rdi
call fcn.1400af440
jmp 0x14002f1db
cmp cx, 0x20
je 0x14002f1c8
cmp cx, 9
jne 0x14002f1cb
mov word [rax], si
mov r8b, 1
mov rcx, rdi
call fcn.1400af440
jmp 0x14002f1db
mov rdi, rbx
mov r8b, 1
mov rcx, r14
call fcn.1400af440
mov r8, rdi
mov rdx, r14
movzx ecx, bpl
call fcn.1400158f0
test eax, eax
jne 0x140030cc3
mov rcx, qword [rsp + 0x510]
lea rdx, str.Out_of_memory.
mov r8, rbx
call fcn.1400515e0
jmp 0x140030cee
mov eax, 4
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002f23b
inc r15
cmp word [rdi + r15*2], si
jne 0x14002f231
mov r12d, 0xa
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002f2bf
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002f262
mov eax, esi
jmp 0x14002f26d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x113fa8]
test r14d, 0xffffff80
je 0x14002f296
mov ecx, esi
jmp 0x14002f2a3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002f439
inc rbx
cmp rbx, r12
jb 0x14002f250
lea eax, [r15 - 0xa]
test eax, eax
jne 0x14002f439
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
lea rdx, str.EndChars
mov rcx, rbx
call fcn.1400ad2f0
mov r8, rax
test rax, rax
je 0x14002f37c
movzx edx, word [rax]
test dx, dx
je 0x140030cc3
mov r9d, 9
nop dword [rax]
lea rcx, [0x140113fc0]
movzx eax, r9w
nop dword [rax + rax]
cmp dx, ax
je 0x14002f346
add rcx, r13
movzx eax, word [rcx]
test ax, ax
jne 0x14002f320
add r8, r13
movzx edx, word [r8]
test dx, dx
jne 0x14002f310
mov eax, 3
jmp 0x140030cee
lea rdx, [r8 + 2]
mov r8d, WSAAsyncSelect
lea rcx, str._____:____.___n__t
call fcn.1400de184
xor r8d, r8d
mov word [0x1401315a8], si
lea rcx, str._____:____.___n__t
call fcn.1400af440
mov eax, 3
jmp 0x140030cee
mov r8d, 7
lea rdx, str.NoMouse
mov rcx, rbx
call fcn.1400d2a10
test eax, eax
jne 0x14002f3a6
mov byte [0x14012fc18], sil
mov eax, 3
jmp 0x140030cee
lea rax, [0x14013409a]
mov rcx, rbx
mov qword [rsp + 0x60], rax
lea r9, [0x1401315ac]
lea rax, [0x14013409b]
mov qword [rsp + 0x58], rax
lea r8, [0x140134408]
lea rax, [0x14013409c]
mov qword [rsp + 0x50], rax
lea rdx, [0x14013440c]
lea rax, [0x14012fc19]
mov qword [rsp + 0x48], rax
lea rax, [0x14013409f]
mov qword [rsp + 0x40], rax
lea rax, [0x14013409d]
mov qword [rsp + 0x38], rax
lea rax, [0x14012fc1a]
mov qword [rsp + 0x30], rax
lea rax, [0x14012fc1b]
mov qword [rsp + 0x28], rax
lea rax, [0x14013409e]
mov qword [rsp + 0x20], rax
call fcn.140019a50
mov eax, 3
jmp 0x140030cee
mov rbp, qword [rsp + 0x520]
cmp rbp, 0xffffffffffffffff
jne 0x14002f450
inc rbp
cmp word [rdi + rbp*2], si
jne 0x14002f447
mov r12d, reloc.WSOCK32.dll_shutdown
mov rbx, rsi
cmp rbp, r12
cmovb r12, rbp
test r12, r12
je 0x14002f4dd
nop word [rax + rax]
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002f482
mov eax, esi
jmp 0x14002f48d
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov r14d, r15d
and r14d, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove r14d, r15d
movzx r15d, word [rax + rbx*2 + 0x113fd8]
test r15d, 0xffffff80
je 0x14002f4b7
mov ecx, esi
jmp 0x14002f4c4
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp r14d, eax
jne 0x14002f534
inc rbx
cmp rbx, r12
jb 0x14002f470
lea eax, [rbp - 0x16]
test eax, eax
jne 0x14002f534
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002f51f
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
mov dword [0x1401315c8], eax
mov eax, 3
jmp 0x140030cee
call fcn.1400d278c
mov dword [0x1401315c8], eax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002f54c
inc r15
cmp word [rdi + r15*2], si
jne 0x14002f542
mov r12d, reloc.WSOCK32.dll_ntohs
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002f5cc
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002f573
mov eax, esi
jmp 0x14002f57e
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114008]
test r14d, 0xffffff80
je 0x14002f5a7
mov ecx, esi
jmp 0x14002f5b4
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002f629
inc rbx
cmp rbx, r12
jb 0x14002f561
lea eax, [r15 - 0xf]
test eax, eax
jne 0x14002f629
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002f601
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
jmp 0x14002f606
call fcn.1400d278c
mov dword [0x1401315b8], eax
cmp eax, 0xa
jge 0x140030cc3
mov dword [0x1401315b8], 0xa
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002f64a
nop word [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002f640
cmp r15, 0x16
mov r12d, reloc.WSOCK32.dll_shutdown
mov rbx, rsi
cmovb r12, r15
test r12, r12
je 0x14002f6cb
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002f672
mov eax, esi
jmp 0x14002f67d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114028]
test r14d, 0xffffff80
je 0x14002f6a6
mov ecx, esi
jmp 0x14002f6b3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002f727
inc rbx
cmp rbx, r12
jb 0x14002f660
lea eax, [r15 - 0x16]
test eax, eax
jne 0x14002f727
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002f700
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
jmp 0x14002f705
call fcn.1400d278c
mov dword [0x1401315bc], eax
cmp eax, 1
jge 0x140030cc3
mov ecx, 1
mov dword [0x1401315bc], ecx
lea eax, [rcx + 2]
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002f73f
inc r15
cmp word [rdi + r15*2], si
jne 0x14002f735
mov r12d, reloc.OLEAUT32.dll_SafeArrayLock
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002f7cb
nop dword [rax]
nop dword [rax + rax]
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002f772
mov eax, esi
jmp 0x14002f77d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114058]
test r14d, 0xffffff80
je 0x14002f7a6
mov ecx, esi
jmp 0x14002f7b3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002f82c
inc rbx
cmp rbx, r12
jb 0x14002f760
lea eax, [r15 - 0x14]
test eax, eax
jne 0x14002f82c
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002f800
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
jmp 0x14002f805
call fcn.1400d278c
mov edx, eax
mov eax, 0xff
cmp edx, eax
jg 0x14002f81c
mov ecx, 1
mov eax, edx
cmp edx, ecx
cmovl eax, ecx
mov byte [0x14012fc1c], al
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002f84a
nop word [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002f840
mov r12d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002f8cf
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002f872
mov eax, esi
jmp 0x14002f87d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114088]
test r14d, 0xffffff80
je 0x14002f8a6
mov ecx, esi
jmp 0x14002f8b3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002f94b
inc rbx
cmp rbx, r12
jb 0x14002f860
lea eax, [r15 - 0x11]
test eax, eax
jne 0x14002f94b
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x14002f939
cmp word [rbx], si
je 0x14002f939
lea rdx, [0x140110374]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x14002f939
cmp word [rbx], 0x31
jne 0x14002f908
cmp word [rbx + 2], si
je 0x14002f939
lea rdx, [0x140110380]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x14002f927
cmp word [rbx], 0x30
jne 0x14002f939
cmp word [rbx + 2], si
jne 0x14002f939
xor al, al
mov byte [0x140134254], al
mov eax, 3
jmp 0x140030cee
mov al, 1
mov byte [0x140134254], al
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002f96a
nop dword [rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002f960
mov r12d, reloc.WSOCK32.dll_inet_ntoa
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002f9eb
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002f992
mov eax, esi
jmp 0x14002f99d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1140b0]
test r14d, 0xffffff80
je 0x14002f9c6
mov ecx, esi
jmp 0x14002f9d3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002fa4c
inc rbx
cmp rbx, r12
jb 0x14002f980
lea eax, [r15 - 0xb]
test eax, eax
jne 0x14002fa4c
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002fa20
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
jmp 0x14002fa25
call fcn.1400d278c
mov edx, eax
mov eax, 0xff
cmp edx, eax
jg 0x14002fa3c
mov ecx, 1
mov eax, edx
cmp edx, ecx
cmovl eax, ecx
mov dword [reloc.WSOCK32.dll_inet_addr], eax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002fa6a
nop word [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002fa60
mov r12d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002faeb
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002fa92
mov eax, esi
jmp 0x14002fa9d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1140c8]
test r14d, 0xffffff80
je 0x14002fac6
mov ecx, esi
jmp 0x14002fad3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002fb43
inc rbx
cmp rbx, r12
jb 0x14002fa80
lea eax, [r15 - 0x11]
test eax, eax
jne 0x14002fb43
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002fb2e
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
mov dword [0x14012fc14], eax
mov eax, 3
jmp 0x140030cee
call fcn.1400d278c
mov dword [0x14012fc14], eax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002fb5b
inc r15
cmp word [rdi + r15*2], si
jne 0x14002fb51
mov r12d, 6
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002fbdf
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002fb82
mov eax, esi
jmp 0x14002fb8d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1140f0]
test r14d, 0xffffff80
je 0x14002fbb6
mov ecx, esi
jmp 0x14002fbc3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002fc5b
inc rbx
cmp rbx, r12
jb 0x14002fb70
lea eax, [r15 - 6]
test eax, eax
jne 0x14002fc5b
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x14002fc49
cmp word [rbx], si
je 0x14002fc49
lea rdx, [0x140110374]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x14002fc49
cmp word [rbx], 0x31
jne 0x14002fc18
cmp word [rbx + 2], si
je 0x14002fc49
lea rdx, [0x140110380]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x14002fc37
cmp word [rbx], 0x30
jne 0x14002fc49
cmp word [rbx + 2], si
jne 0x14002fc49
xor al, al
mov byte [0x140134099], al
mov eax, 3
jmp 0x140030cee
mov al, 1
mov byte [0x140134099], al
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002fc7a
nop dword [rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002fc70
cmp r15, 0x11
mov r12d, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rbx, rsi
cmovb r12, r15
test r12, r12
je 0x14002fcfb
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002fca2
mov eax, esi
jmp 0x14002fcad
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114100]
test r14d, 0xffffff80
je 0x14002fcd6
mov ecx, esi
jmp 0x14002fce3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002fd14
inc rbx
cmp rbx, r12
jb 0x14002fc90
lea eax, [r15 - 0x11]
test eax, eax
jne 0x14002fd14
mov byte [0x140134299], 1
mov eax, 3
jmp 0x140030cee
mov r14, qword [rsp + 0x520]
cmp r14, 0xffffffffffffffff
jne 0x14002fd2c
inc r14
cmp word [rdi + r14*2], si
jne 0x14002fd22
mov r12d, reloc.WSOCK32.dll_ioctlsocket
mov rbx, rsi
cmp r14, r12
cmovb r12, r14
test r12, r12
je 0x14002fdac
movzx r15d, word [rdi + rbx*2]
test r15d, 0xffffff80
je 0x14002fd53
mov eax, esi
jmp 0x14002fd5e
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ebp, r15d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r15d
movzx r15d, word [rax + rbx*2 + 0x114128]
test r15d, 0xffffff80
je 0x14002fd87
mov ecx, esi
jmp 0x14002fd94
mov edx, r13d
mov ecx, r15d
call fcn.1400d7464
mov ecx, eax
mov eax, r15d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r15d
cmp ebp, eax
jne 0x14002fde0
inc rbx
cmp rbx, r12
jb 0x14002fd41
lea eax, [r14 - 0xc]
test eax, eax
jne 0x14002fde0
mov rbp, qword [rsp + 0x510]
mov rcx, qword [rsp + 0x528]
mov byte [rbp + 0xbb7], 1
call fcn.140027730
mov dword [rbp + 0xbb8], eax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002fdfa
nop
inc r15
cmp word [rdi + r15*2], si
jne 0x14002fdf0
mov r12d, 7
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002fe7f
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002fe22
mov eax, esi
jmp 0x14002fe2d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114148]
test r14d, 0xffffff80
je 0x14002fe56
mov ecx, esi
jmp 0x14002fe63
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14002ff0c
inc rbx
cmp rbx, r12
jb 0x14002fe10
lea eax, [r15 - 7]
test eax, eax
jne 0x14002ff0c
mov rax, qword [rsp + 0x528]
test rax, rax
je 0x140030cc3
mov rcx, rax
call fcn.140023cb0
movsd xmm1, qword [0x14011c688]
xor ecx, ecx
movsd xmm2, qword [0x14011c6d8]
maxsd xmm1, xmm0
movsd xmm0, qword [0x14011c710]
minsd xmm2, xmm1
mulsd xmm2, qword [0x14011c6c8]
mulsd xmm2, qword [0x14011c6c8]
comisd xmm2, xmm0
jb 0x14002fef3
subsd xmm2, xmm0
comisd xmm2, xmm0
jae 0x14002fef3
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rax, xmm2
add rax, rcx
mov qword [0x1401315c0], rax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14002ff2a
nop word [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x14002ff20
mov r12d, reloc.WSOCK32.dll_inet_ntoa
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14002ffab
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x14002ff52
mov eax, esi
jmp 0x14002ff5d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114158]
test r14d, 0xffffff80
je 0x14002ff86
mov ecx, esi
jmp 0x14002ff93
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14003001e
inc rbx
cmp rbx, r12
jb 0x14002ff40
lea eax, [r15 - 0xb]
test eax, eax
jne 0x14003001e
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x140030cc3
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14002ffe0
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
jmp 0x14002ffe5
call fcn.1400d278c
mov dword [0x14012fc10], eax
test eax, eax
jns 0x14002ffff
mov dword [0x14012fc10], esi
mov eax, 3
jmp 0x140030cee
cmp eax, 0x1f4
jle 0x140030cc3
mov dword [0x14012fc10], 0x1f4
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14003003a
nop dword [rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x140030030
mov r12d, reloc.WSOCK32.dll_ioctlsocket
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x1400300bf
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x140030062
mov eax, esi
jmp 0x14003006d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1136d0]
test r14d, 0xffffff80
je 0x140030096
mov ecx, esi
jmp 0x1400300a3
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14003017a
inc rbx
cmp rbx, r12
jb 0x140030050
lea eax, [r15 - 0xc]
test eax, eax
jne 0x14003017a
mov rdx, qword [rsp + 0x528]
test rdx, rdx
je 0x140030cc3
cmp word [rdx + 2], si
jne 0x14003013d
movzx ecx, word [rdx]
cmp cx, 0x23
je 0x1400307fd
cmp cx, word [0x1401314d8]
je 0x1400307fd
cmp cx, word [0x1401304bc]
je 0x1400307fd
cmp cx, word [0x1401315b0]
je 0x1400307fd
lea eax, [rcx - 0x21]
cmp ax, 0x3d
ja 0x140030133
movabs r8, 0x2000000028000609
bt r8, rax
jb 0x1400307fd
cmp cx, 0x7e
je 0x1400307fd
lea rbx, [0x140132110]
mov r8d, reloc.WSOCK32.dll_ntohs
mov rcx, rbx
call fcn.1400de184
mov rax, 0xffffffffffffffff
mov word [0x14013212e], si
inc rax
cmp word [rbx + rax*2], si
jne 0x140030160
mov qword [0x140132130], rax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x14003019a
nop dword [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x140030190
mov r12d, reloc.WSOCK32.dll_inet_ntoa
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14003021b
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x1400301c2
mov eax, esi
jmp 0x1400301cd
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114170]
test r14d, 0xffffff80
je 0x1400301f6
mov ecx, esi
jmp 0x140030203
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14003028d
inc rbx
cmp rbx, r12
jb 0x1400301b0
lea eax, [r15 - 0xb]
test eax, eax
jne 0x14003028d
mov rax, qword [rsp + 0x528]
test rax, rax
je 0x140030cc3
movzx eax, word [rax]
cmp ax, 0x23
je 0x1400307fd
cmp ax, word [0x1401314d8]
je 0x1400307fd
cmp ax, word [0x1401315b0]
je 0x1400307fd
cmp ax, 0x2e
je 0x1400307fd
cmp qword [0x140132130], 1
jne 0x14003027c
cmp ax, word [0x140132110]
je 0x1400307fd
mov word [0x1401304bc], ax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x1400302aa
nop dword [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x1400302a0
mov r12d, 0xa
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14003032b
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x1400302d2
mov eax, esi
jmp 0x1400302dd
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x114188]
test r14d, 0xffffff80
je 0x140030306
mov ecx, esi
jmp 0x140030313
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x140030393
inc rbx
cmp rbx, r12
jb 0x1400302c0
lea eax, [r15 - 0xa]
test eax, eax
jne 0x140030393
mov rax, qword [rsp + 0x528]
test rax, rax
je 0x140030cc3
movzx eax, word [rax]
cmp ax, word [0x1401304bc]
je 0x1400307fd
cmp ax, word [0x1401315b0]
je 0x1400307fd
cmp ax, 0x2e
je 0x1400307fd
cmp qword [0x140132130], 1
jne 0x140030382
cmp ax, word [0x140132110]
je 0x1400307fd
mov word [0x1401314d8], ax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x1400303ab
inc r15
cmp word [rdi + r15*2], si
jne 0x1400303a1
mov r12d, 0xa
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14003042b
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x1400303d2
mov eax, esi
jmp 0x1400303dd
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1141a0]
test r14d, 0xffffff80
je 0x140030406
mov ecx, esi
jmp 0x140030413
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x14003049d
inc rbx
cmp rbx, r12
jb 0x1400303c0
lea eax, [r15 - 0xa]
test eax, eax
jne 0x14003049d
mov rax, qword [rsp + 0x528]
test rax, rax
je 0x140030cc3
movzx eax, word [rax]
cmp ax, 0x23
je 0x1400307fd
cmp ax, word [0x1401304bc]
je 0x1400307fd
cmp ax, word [0x1401314d8]
je 0x1400307fd
cmp ax, 0x2e
je 0x1400307fd
cmp qword [0x140132130], 1
jne 0x14003048c
cmp ax, word [0x140132110]
je 0x1400307fd
mov word [0x1401315b0], ax
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x1400304ba
nop dword [rax + rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x1400304b0
cmp r15, 0xc
mov r12d, reloc.WSOCK32.dll_ioctlsocket
mov rbx, rsi
cmovb r12, r15
test r12, r12
je 0x14003053b
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x1400304e2
mov eax, esi
jmp 0x1400304ed
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1141b8]
test r14d, 0xffffff80
je 0x140030516
mov ecx, esi
jmp 0x140030523
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x1400305ab
inc rbx
cmp rbx, r12
jb 0x1400304d0
lea eax, [r15 - 0xc]
test eax, eax
jne 0x1400305ab
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x14003057e
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetKeyboardLayout]
xor r9d, r9d
lea r8, [0x1401315cc]
lea rdx, [0x14012fc1e]
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140022400
test al, al
jne 0x140030cc3
mov rcx, qword [rsp + 0x510]
lea rdx, str.Parameter_1_invalid.
test rbx, rbx
lea rax, str.Parameter_1_required
mov r8, rdi
cmovne rax, rdx
mov rdx, rax
call fcn.1400515e0
jmp 0x140030cee
mov r12, qword [rsp + 0x520]
mov r15, r12
cmp r12, 0xffffffffffffffff
jne 0x1400305ca
nop dword [rax]
inc r15
cmp word [rdi + r15*2], si
jne 0x1400305c0
cmp r15, 0xb
mov eax, reloc.WSOCK32.dll_inet_ntoa
mov rbx, rsi
cmovb rax, r15
mov qword [rsp + 0x78], rax
test rax, rax
je 0x14003065d
nop dword [rax]
nop dword [rax + rax]
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x140030602
mov eax, esi
jmp 0x14003060d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1141d8]
test r14d, 0xffffff80
je 0x140030636
mov ecx, esi
jmp 0x140030643
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, eax
mov eax, r14d
and eax, 0xffffffdf
test ecx, ecx
cmove eax, r14d
cmp ebp, eax
jne 0x1400306b7
inc rbx
cmp rbx, qword [rsp + 0x78]
jb 0x1400305f0
lea eax, [r15 - 0xb]
test eax, eax
jne 0x1400306b7
mov rbx, qword [rsp + 0x528]
test rbx, rbx
je 0x1400306a6
mov rcx, rbx
call fcn.140005a80
mov rcx, rbx
test al, al
je 0x14003068e
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.1400d2570
jmp 0x140030693
call fcn.1400d278c
mov esi, eax
test eax, eax
js 0x1400307fd
cmp eax, 0x64
jg 0x1400307fd
mov byte [0x14013421f], sil
mov eax, 3
jmp 0x140030cee
mov r15, r12
cmp r12, 0xffffffffffffffff
jne 0x1400306ca
inc r15
cmp word [rdi + r15*2], si
jne 0x1400306c0
mov r12d, 5
mov rbx, rsi
cmp r15, r12
cmovb r12, r15
test r12, r12
je 0x14003074d
nop
movzx r14d, word [rdi + rbx*2]
test r14d, 0xffffff80
je 0x1400306f2
mov eax, esi
jmp 0x1400306fd
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebp, r14d
and ebp, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebp, r14d
movzx r14d, word [rax + rbx*2 + 0x1141f0]
test r14d, 0xffffff80
je 0x140030726
mov eax, esi
jmp 0x140030731
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, r14d
and ecx, 0xffffffdf
test eax, eax
cmove ecx, r14d
cmp ebp, ecx
jne 0x1400308e8
inc rbx
cmp rbx, r12
jb 0x1400306e0
lea eax, [r15 - 5]
test eax, eax
jne 0x1400308e8
mov rax, qword [rsp + 0x528]
lea rbx, [0x1400fb87c]
movzx edx, word [0x1401315b0]
test rax, rax
mov rbp, rbx
cmovne rbp, rax
mov rcx, rbp
call fcn.1400cbb24
test rax, rax
je 0x1400307cb
lea rbx, [rax + 2]
nop word [rax + rax]
movzx ecx, word [rbx]
cmp cx, 0x20
je 0x14003079f
cmp cx, 9
jne 0x1400307a4
add rbx, r13
jmp 0x140030790
add rax, 0xfffffffffffffffe
cmp rax, rbp
jbe 0x1400307c7
nop dword [rax]
movzx ecx, word [rax]
cmp cx, 0x20
je 0x1400307bf
cmp cx, 9
jne 0x1400307c7
sub rax, r13
cmp rax, rbp
ja 0x1400307b0
mov word [rax + 2], si
cmp word [rbp], si
je 0x14003081e
mov r15d, esi
lea r14, str.UseUnsetLocal
lea r12, [0x140117f60]
mov rdx, qword [r14]
mov rcx, rbp
call fcn.1400d0944
test eax, eax
je 0x140030819
inc r15d
add r14, 8
cmp r14, r12
jne 0x1400307e2
mov rcx, qword [rsp + 0x510]
lea rdx, str.Parameter_1_invalid.
mov r8, rdi
call fcn.1400515e0
jmp 0x140030cee
mov ebp, r15d
jmp 0x140030823
mov ebp, 6
cmp word [rbx], si
je 0x140030877
mov r13d, esi
lea rdi, [0x140117f08]
lea rsi, str.UseUnsetLocal
nop dword [rax]
mov rdx, qword [rdi]
mov rcx, rbx
call fcn.1400d0944
test eax, eax
je 0x140030877
inc r13d
add rdi, 8
cmp rdi, rsi
jne 0x140030840
mov rcx, qword [rsp + 0x510]
lea rdx, str.Parameter_2_invalid.
mov r8, rbx
call fcn.1400515e0
jmp 0x140030cee
test ebp, ebp
je 0x140030880
cmp ebp, 6
jne 0x140030887
mov dword [0x140134ff4], r13d
cmp ebp, 1
je 0x140030891
cmp ebp, 6
jne 0x140030898
mov dword [0x140134ff0], r13d
cmp ebp, 3
je 0x1400308a2
cmp ebp, 6
jne 0x1400308a9
mov dword [0x140134fec], r13d
lea eax, [rbp - 2]
test eax, 0xfffffffb
jne 0x1400308ba
mov dword [0x140134fe8], r13d
lea eax, [rbp - 4]
test eax, 0xfffffffd
jne 0x1400308cb
mov dword [0x140134fe4], r13d
lea eax, [rbp - 5]
cmp eax, 1
ja 0x140030cc3
mov dword [0x140134fe0], r13d
mov eax, 3
jmp 0x140030cee
mov r15, qword [rsp + 0x520]
cmp r15, 0xffffffffffffffff
jne 0x140030900
inc r15
cmp word [rdi + r15*2], si
jne 0x1400308f6
cmp r15, 9
mov r12d, 9
mov rbp, rsi
cmovb r12, r15
test r12, r12
je 0x14003098d
nop word [rax + rax]
movzx r14d, word [rdi + rbp*2]
test r14d, 0xffffff80
je 0x140030932
mov eax, esi
jmp 0x14003093d
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ebx, r14d
and ebx, 0xffffffdf
test eax, eax
lea rax, [0x140000000]
cmove ebx, r14d
movzx r14d, word [rax + rbp*2 + 0x114200]
test r14d, 0xffffff80
je 0x140030966
mov eax, esi
jmp 0x140030971
mov edx, r13d
mov ecx, r14d
call fcn.1400d7464
mov ecx, r14d
and ecx, 0xffffffdf
test eax, eax
cmove ecx, r14d
cmp ebx, ecx
jne 0x14002f219
inc rbp
cmp rbp, r12
jb 0x140030920
lea eax, [r15 - 9]
test eax, eax
jne 0x14002f219
mov r14, qword [rsp + 0x528]
test r14, r14
jne 0x1400309c6
mov rcx, qword [rsp + 0x510]
lea r8, [0x1400fb87c]
lea rdx, str.Parameter_1_required
call fcn.1400515e0
jmp 0x140030cee
mov r8d, 0xa
lea rdx, str.AutoHotkey
mov rcx, r14
call fcn.1400d2a10
lea r13, str.Unicode
lea r15, str.64_bit
lea r12, [0x140114238]
test eax, eax
jne 0x140030acb
movzx eax, word [r14 + 0x14]
test ax, ax
je 0x140030cc3
cmp ax, 0x20
je 0x140030a16
cmp ax, 9
jne 0x140030acb
lea rdi, [r14 + 0x16]
mov ebp, SafeArrayAllocDescriptor
nop
mov rdx, rdi
movzx eax, word [rdx]
cmp ax, bp
je 0x140030a31
cmp ax, 9
jne 0x140030a37
add rdx, 2
jmp 0x140030a23
test ax, ax
je 0x140030cc3
mov rdi, rdx
cmp ax, bp
je 0x140030a5b
cmp ax, 9
je 0x140030a5b
movzx eax, word [rdi + 2]
add rdi, 2
test ax, ax
jne 0x140030a43
mov rbx, rdi
lea rcx, [rsp + 0x80]
sub rbx, rdx
sar rbx, 1
inc rbx
cmp rbx, rbp
cmova rbx, rbp
lea r8, [rbx - 1]
call fcn.1400de184
mov rdx, r13
mov word [rsp + rbx*2 + 0x7e], si
lea rcx, [rsp + 0x80]
call fcn.1400d0944
test eax, eax
je 0x140030a20
mov rdx, r15
lea rcx, [rsp + 0x80]
call fcn.1400d0944
test eax, eax
je 0x140030a20
xor r8d, r8d
lea rdx, [rsp + 0x80]
mov rcx, r12
call fcn.1400afbd0
test eax, eax
jne 0x140030a20
mov rbp, qword [rsp + 0x510]
lea r8, str.This_script_requires__s._n_nCurrent_interpreter:__s_v_s__s__s_n_s
mov r9, r14
lea rcx, [rsp + 0xc0]
mov edx, 0x200
mov rax, qword [rbp + 0xb98]
mov qword [rsp + 0x40], rax
lea rax, [0x1400fba48]
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.1400acf50
lea r8, [0x1400fb87c]
mov rcx, rbp
lea rdx, [rsp + 0xc0]
call fcn.1400515e0
jmp 0x140030cee
xor r15b, r15b
mov r12, qword [rsp + 0x510]
mov rdx, qword [rsp + 0x528]
test rdx, rdx
jne 0x140030b61
mov r8, rdi
lea rdx, str.Parameter_1_required
mov rcx, r12
call fcn.1400515e0
jmp 0x140030cee
cmp word [rdx], 0x2a
jne 0x140030bb7
movzx ebx, word [rdx + 2]
test ebx, 0xffffff80
je 0x140030b77
mov eax, esi
jmp 0x140030b89
mov edx, r13d
mov ecx, ebx
call fcn.1400d7464
mov rdx, qword [rsp + 0x528]
movzx ecx, bx
mov r8d, 0xffdf
and cx, r8w
test eax, eax
cmove cx, bx
cmp cx, 0x49
jne 0x140030bb7
movzx eax, word [rdx + 4]
cmp ax, 0x20
je 0x140030bb2
cmp ax, 9
jne 0x140030bb7
mov bpl, 1
jmp 0x140030bba
xor bpl, bpl
test bpl, bpl
lea rbx, [rdx + 6]
cmove rbx, rdx
cmp word [rbx], 0x3c
jne 0x140030c81
mov r13d, 0x3e
mov rcx, rbx
mov edx, r13d
call fcn.1400cbb24
mov r14, rax
test rax, rax
je 0x140030c81
cmp word [rax + 2], si
jne 0x140030c81
add rbx, 2
mov word [rax], si
call fcn.1400672a0
mov r15, rax
mov byte [rsp + 0x28], sil
lea rax, [rsp + 0x520]
mov r8, r14
sub r8, rbx
mov qword [rsp + 0x20], rax
sar r8, 1
lea r9, [rsp + 0x518]
mov rdx, rbx
call fcn.14003d4a0
test r15, r15
je 0x140030c46
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov rcx, r15
call fcn.1400d29a8
movzx eax, byte [rsp + 0x518]
test al, al
jne 0x140030c61
cmp byte [rsp + 0x520], sil
jne 0x140030cc3
test bpl, bpl
jne 0x140030cc3
mov word [r14], r13w
test al, al
jne 0x140030c7d
mov r8, rdi
lea rdx, str.Function_library_not_found.
mov rcx, r12
call fcn.1400515e0
mov esi, eax
mov eax, esi
jmp 0x140030cee
mov r8, rbx
lea rdx, [rsp + 0x518]
call fcn.14004ffa0
test eax, eax
jne 0x140030c99
xor eax, eax
jmp 0x140030cee
mov rdi, qword [rsp + 0x518]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140030cca
test al, 0x10
je 0x140030cca
mov rcx, rdi
call fcn.140067190
mov rcx, rdi
call fcn.1400d29a8
mov eax, 3
jmp 0x140030cee
movzx r9d, bpl
movzx r8d, r15b
mov rdx, rdi
mov rcx, r12
call fcn.14002add0
neg eax
mov rcx, rdi
sbb ebx, ebx
and ebx, 3
call fcn.1400d29a8
mov eax, ebx
add rsp, 0x4c8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret