Function at 0x140006420
Capabilities:
Encode data using xor

Disassembly:
push r15
mov eax, 0x2048
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
call fcn.140005ec0
sub rsp, rax
movaps xmmword [rsp + 0x2010], xmm6
movaps xmmword [rsp + 0x2020], xmm7
movaps xmmword [rsp + 0x2030], xmm8
lea rbp, [0x140978980]
call fcn.140004927
movdqa xmm0, xmmword [0x140972640]
mov eax, 0x4a
cmp byte [0x140978960], 0
mov dword [rsp + 0xfb0], 0x3600c0
movaps xmmword [rsp + 0xf60], xmm0
movdqa xmm0, xmmword [0x140972650]
mov word [rsp + 0xfb4], ax
movaps xmmword [rsp + 0xf70], xmm0
movdqa xmm0, xmmword [0x140972660]
movaps xmmword [rsp + 0xf80], xmm0
movdqa xmm0, xmmword [0x140972670]
movaps xmmword [rsp + 0xf90], xmm0
movdqa xmm0, xmmword [0x140972680]
movaps xmmword [rsp + 0xfa0], xmm0
jne 0x1400064fe
lea rbx, [rsp + 0xf60]
mov ecx, 0x56
mov rdi, rbp
mov byte [0x1409789d6], 1
mov rsi, rbx
mov byte [0x140978960], 1
rep movsb byte [rdi], byte [rsi]
lea rcx, [0x1400016d0]
call fcn.140001583
cmp byte [0x1409789d6], 0
je 0x14000654d
movabs r9, 0xad63ed3d7549b775
xor r8d, r8d
nop dword [rax]
mov rcx, r8
movzx eax, byte [rbp + r8*2]
mov rdx, r9
and ecx, 7
shl rcx, 3
ror al, 3
shr rdx, cl
xor eax, edx
movzx eax, al
mov word [rbp + r8*2], ax
add r8, 1
cmp r8, 0x2b
jne 0x140006518
mov byte [0x1409789d6], 0
lea rbx, [rsp + 0x70]
mov r8d, 0x104
mov rdx, rbp
mov rcx, rbx
call fcn.140001a60
pxor xmm0, xmm0
lea rcx, [rsp + 0x60]
mov r9d, 1
lea r8, [rsp + 0x80]
mov edx, 0x1f0001
mov dword [rsp + 0x80], 0x30
mov qword [rsp + 0x88], 0
mov dword [rsp + 0x98], 0
mov qword [rsp + 0x90], rbx
movaps xmmword [rsp + 0xa0], xmm0
call fcn.140004801
test eax, eax
js 0x14000789a
call fcn.1400018c0
lea r13, [rsp + 0xf0]
call fcn.1400018f0
mov rdi, r13
call fcn.1400018c0
call fcn.1400018f0
mov qword [rsp + 0x68], 0xfffffffff5de0180
call fcn.1400018f0
xor ecx, ecx
lea rdx, [rsp + 0x68]
call fcn.1400047a7
call fcn.140003ca0
call fcn.1400043b0
mov ecx, 0x41
movdqa xmm0, xmmword [0x140972690]
mov rax, qword [rax + 0x20]
mov r15, qword [rax + 0x80]
xor eax, eax
cmp byte [0x140978938], 0
movaps xmmword [rsp + 0xf60], xmm0
rep stosq qword [rdi], rax
mov rax, qword [0x1409726a0]
mov qword [rsp + 0xf70], rax
jne 0x140006677
movdqa xmm4, xmmword [rsp + 0xf60]
mov rax, qword [rsp + 0xf70]
lea rcx, [0x1400016e0]
mov byte [0x140978958], 1
mov byte [0x140978938], 1
mov qword [0x140978950], rax
movaps xmmword [0x140978940], xmm4
call fcn.140001583
cmp byte [0x140978958], 0
je 0x1400067ba
movzx eax, byte [0x14097894c]
movzx r8d, byte [0x140978944]
mov byte [0x140978958], 0
movzx ecx, byte [0x140978948]
movzx edx, byte [0x140978940]
ror al, 3
ror r8b, 3
movzx ebx, byte [0x140978942]
movzx r11d, byte [0x140978946]
ror cl, 3
xor eax, 0xffffffd7
xor r8d, 0xfffffff7
ror dl, 3
movzx eax, al
movzx r8d, r8b
xor ecx, 0xffffff93
xor edx, 0xffffff97
movd xmm0, eax
movzx eax, byte [0x140978956]
movzx ecx, cl
movzx edx, dl
movd xmm3, r8d
movd xmm2, ecx
movzx r8d, byte [0x140978954]
movzx ecx, byte [0x140978952]
ror al, 3
movzx r10d, byte [0x14097894a]
movd xmm1, edx
movzx edx, byte [0x140978950]
ror r8b, 3
xor eax, 0xffffffdf
movzx r9d, byte [0x14097894e]
ror cl, 3
xor r8d, 0xfffffff7
movzx eax, al
ror bl, 3
xor ecx, 0x47
movzx r8d, r8b
shl rax, 0x10
xor ebx, 0x47
movzx ecx, cl
ror r11b, 3
or rax, r8
ror r10b, 3
movzx ebx, bl
xor r11d, 0xffffffdf
ror dl, 3
xor r10d, 0xffffffbf
pinsrw xmm1, ebx, 1
ror r9b, 3
shl rax, 0x10
movzx r11d, r11b
xor edx, 0xffffff97
xor r9d, 0xffffffe1
or rax, rcx
movzx r10d, r10b
movzx edx, dl
movzx r9d, r9b
pinsrw xmm3, r11d, 1
shl rax, 0x10
pinsrw xmm2, r10d, 1
pinsrw xmm0, r9d, 1
punpckldq xmm1, xmm3
or rax, rdx
punpckldq xmm2, xmm0
mov qword [0x140978950], rax
movdqa xmm0, xmm1
punpcklqdq xmm0, xmm2
movaps xmmword [0x140978940], xmm0
lea rdx, [0x140978940]
mov rcx, r15
lea rbp, [rsp + 0x300]
call fcn.140003260
mov rcx, r13
mov rdi, rbp
mov rdx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscat
movdqa xmm0, xmmword [str.n_r__]
xor eax, eax
mov ecx, 0x41
rep stosq qword [rdi], rax
cmp byte [0x140978918], 0
mov dword [rsp + 0xf70], 0xba001d
movaps xmmword [rsp + 0xf60], xmm0
jne 0x140006844
movdqa xmm5, xmmword [rsp + 0xf60]
mov eax, dword [rsp + 0xf70]
lea rcx, [0x1400016f0]
mov byte [0x140978934], 1
mov byte [0x140978918], 1
mov dword [0x140978930], eax
movaps xmmword [0x140978920], xmm5
call fcn.140001583
cmp byte [0x140978934], 0
je 0x140006955
movzx eax, byte [0x14097892c]
movzx edx, byte [0x140978920]
mov byte [0x140978934], 0
movzx r8d, byte [0x140978924]
movzx ebx, byte [0x140978922]
ror al, 3
movzx r11d, byte [0x140978926]
movzx ecx, byte [0x140978928]
ror dl, 3
ror r8b, 3
xor eax, 0x7f
xor edx, 0xffffff91
ror bl, 3
movzx eax, al
xor r8d, 0x37
ror r11b, 3
movzx edx, dl
movd xmm0, eax
movzx eax, byte [0x140978930]
ror cl, 3
xor ebx, 0x57
movzx r8d, r8b
xor r11d, 0x7b
xor ecx, 0x1f
movzx ebx, bl
ror al, 3
movzx r11d, r11b
movd xmm1, edx
movzx ecx, cl
movd xmm3, r8d
pinsrw xmm1, ebx, 1
movd xmm2, ecx
xor eax, 0xffffff91
movzx r10d, byte [0x14097892a]
movzx eax, al
movzx r9d, byte [0x14097892e]
pinsrw xmm3, r11d, 1
mov word [0x140978930], ax
movzx eax, byte [0x140978932]
punpckldq xmm1, xmm3
ror r10b, 3
ror r9b, 3
xor r10d, 0xffffffbf
xor r9d, 0xffffffe5
ror al, 3
movzx r10d, r10b
movzx r9d, r9b
xor eax, 0x57
pinsrw xmm0, r9d, 1
pinsrw xmm2, r10d, 1
movzx eax, al
punpckldq xmm2, xmm0
mov word [0x140978932], ax
movdqa xmm0, xmm1
punpcklqdq xmm0, xmm2
movaps xmmword [0x140978920], xmm0
mov rcx, rbp
lea r8, [0x140978920]
mov rdx, r13
call fcn.140003230
lea r12, [rsp + 0x510]
xor eax, eax
movdqa xmm0, xmmword [0x1409726c0]
mov ecx, 0x41
mov rdi, r12
cmp byte [0x1409788f0], 0
mov word [rsp + 0xf70], 0x5f
rep stosq qword [rdi], rax
movaps xmmword [rsp + 0xf60], xmm0
jne 0x1400069d2
movdqa xmm4, xmmword [rsp + 0xf60]
lea rcx, [0x140001700]
mov byte [0x140978912], 1
mov word [0x140978910], 0x5f
mov byte [0x1409788f0], 1
movaps xmmword [0x140978900], xmm4
call fcn.140001583
cmp byte [0x140978912], 0
je 0x140006acc
movzx eax, byte [0x14097890c]
movzx edx, byte [0x140978900]
mov byte [0x140978912], 0
movzx r8d, byte [0x140978904]
movzx ebx, byte [0x140978902]
ror al, 3
movzx r11d, byte [0x140978906]
movzx ecx, byte [0x140978908]
ror dl, 3
ror r8b, 3
xor eax, 0xfffffff7
xor edx, 0xffffffeb
ror bl, 3
movzx eax, al
xor r8d, 0x49
ror r11b, 3
movzx edx, dl
movd xmm0, eax
ror cl, 3
movzx eax, byte [0x140978910]
xor ebx, 0xfffffffd
movzx r8d, r8b
xor r11d, 0x6f
xor ecx, 0xffffffcf
movzx ebx, bl
movzx r11d, r11b
movzx ecx, cl
movd xmm1, edx
ror al, 3
movd xmm3, r8d
pinsrw xmm1, ebx, 1
movd xmm2, ecx
xor eax, 0xffffffeb
movzx r10d, byte [0x14097890a]
movzx r9d, byte [0x14097890e]
pinsrw xmm3, r11d, 1
movzx eax, al
punpckldq xmm1, xmm3
mov word [0x140978910], ax
ror r10b, 3
ror r9b, 3
xor r10d, 0x7d
xor r9d, 0xffffffdf
movzx r10d, r10b
movzx r9d, r9b
pinsrw xmm0, r9d, 1
pinsrw xmm2, r10d, 1
punpckldq xmm2, xmm0
movdqa xmm0, xmm1
punpcklqdq xmm0, xmm2
movaps xmmword [0x140978900], xmm0
mov rcx, r12
lea r8, [0x140978900]
mov rdx, rbp
call fcn.140003230
xor eax, eax
movdqa xmm0, xmmword [0x1409726d0]
lea r14, [rsp + 0x720]
mov ecx, 0x41
mov rdi, r14
cmp byte [0x140978890], 0
mov dword [rsp + 0xfa8], 0x210008
movaps xmmword [rsp + 0xf60], xmm0
movdqa xmm0, xmmword [0x1409726e0]
lea rbx, [rsp + 0xf60]
rep stosq qword [rdi], rax
mov rax, qword [0x140972710]
mov word [rsp + 0xfac], 0xd9
movaps xmmword [rsp + 0xf70], xmm0
movdqa xmm0, xmmword [0x1409726f0]
mov qword [rsp + 0xfa0], rax
movaps xmmword [rsp + 0xf80], xmm0
movdqa xmm0, xmmword [0x140972700]
movaps xmmword [rsp + 0xf90], xmm0
jne 0x140006b96
lea r8, [0x1409788a0]
mov ecx, 0x4e
mov rsi, rbx
mov byte [0x1409788ee], 1
mov rdi, r8
mov byte [0x140978890], 1
rep movsb byte [rdi], byte [rsi]
lea rcx, [0x140001710]
call fcn.140001583
cmp byte [0x1409788ee], 0
je 0x140006bee
xor edx, edx
lea r8, [0x1409788a0]
movabs r9, 0x9b3b417967055da1
nop word [rax + rax]
mov rcx, rdx
mov rax, r9
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r8 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r8 + rdx*2], ax
add rdx, 1
cmp rdx, 0x27
jne 0x140006bb8
mov byte [0x1409788ee], 0
mov rcx, r14
lea r8, [0x1409788a0]
mov rdx, rbp
call fcn.140003230
lea rsi, [rsp + 0x930]
xor eax, eax
mov ecx, 0x41
mov rdi, rsi
movdqa xmm0, xmmword [0x140972720]
cmp byte [0x140978860], 0
mov word [rsp + 0xf78], 0xcd
rep stosq qword [rdi], rax
mov rax, qword [0x140972730]
movaps xmmword [rsp + 0xf60], xmm0
mov qword [rsp + 0xf70], rax
jne 0x140006c81
movdqa xmm5, xmmword [rsp + 0xf60]
lea rcx, [0x140001720]
movdqu xmm4, xmmword [rsp + 0xf6a]
mov byte [0x14097888a], 1
mov byte [0x140978860], 1
movaps xmmword [0x140978870], xmm5
movups xmmword [0x14097887a], xmm4
call fcn.140001583
cmp byte [0x14097888a], 0
je 0x140006dd9
movzx eax, byte [0x140978870]
movzx r8d, byte [0x140978874]
mov byte [0x14097888a], 0
movzx ecx, byte [0x14097887c]
movzx edx, byte [0x140978878]
ror al, 3
ror r8b, 3
movzx edi, byte [0x140978872]
movzx r11d, byte [0x140978876]
ror cl, 3
xor eax, 0xffffffcd
xor r8d, 0xffffffc3
ror dl, 3
movzx eax, al
movzx r8d, r8b
xor ecx, 0xffffffb3
xor edx, 0xffffffb9
movd xmm0, eax
movzx eax, byte [0x140978886]
movzx ecx, cl
movzx edx, dl
movd xmm3, r8d
movd xmm2, ecx
movd xmm1, edx
ror dil, 3
movzx r8d, byte [0x140978884]
ror al, 3
movzx ecx, byte [0x140978882]
ror r11b, 3
xor eax, 7
xor edi, 0x4b
xor r11d, 7
movzx edx, byte [0x140978880]
ror r8b, 3
movzx eax, al
ror cl, 3
movzx edi, dil
xor r8d, 0xffffffc3
shl rax, 0x10
xor ecx, 0x4b
movzx r11d, r11b
movzx r8d, r8b
ror dl, 3
movzx ecx, cl
pinsrw xmm0, edi, 1
or rax, r8
xor edx, 0xffffffcd
movzx r10d, byte [0x14097887a]
movzx r9d, byte [0x14097887e]
shl rax, 0x10
movzx edx, dl
pinsrw xmm3, r11d, 1
ror r10b, 3
or rax, rcx
ror r9b, 3
punpckldq xmm0, xmm3
shl rax, 0x10
xor r10d, 0x71
xor r9d, 0x1b
or rax, rdx
movzx r10d, r10b
movzx r9d, r9b
mov qword [0x140978880], rax
movzx eax, byte [0x140978888]
pinsrw xmm1, r10d, 1
pinsrw xmm2, r9d, 1
punpckldq xmm1, xmm2
ror al, 3
punpcklqdq xmm0, xmm1
xor eax, 0xffffffb9
movaps xmmword [0x140978870], xmm0
movzx eax, al
mov word [0x140978888], ax
mov rcx, rsi
lea r8, [0x140978870]
mov rdx, rbp
call fcn.140003230
lea r14, [rsp + 0xb40]
xor eax, eax
mov ecx, 0x41
mov rdi, r14
cmp byte [0x140978848], 0
mov dword [rsp + 0xf68], 0xfa00e7
rep stosq qword [rdi], rax
mov rax, qword [0x140972738]
mov qword [rsp + 0xf60], rax
jne 0x140006e59
mov rax, qword [rsp + 0xf60]
lea rcx, [0x140001730]
mov byte [0x14097885c], 1
mov byte [0x140978848], 1
mov qword [0x140978850], rax
mov eax, dword [rsp + 0xf68]
mov dword [0x140978858], eax
call fcn.140001583
cmp byte [0x14097885c], 0
je 0x140006efb
movzx eax, byte [0x140978856]
movzx r8d, byte [0x140978854]
mov byte [0x14097885c], 0
movzx ecx, byte [0x140978852]
movzx edx, byte [0x140978850]
ror al, 3
ror r8b, 3
ror cl, 3
xor eax, 0x75
xor r8d, 0xfffffff3
ror dl, 3
movzx eax, al
movzx r8d, r8b
xor ecx, 0x11
xor edx, 0xffffffed
shl rax, 0x10
movzx ecx, cl
movzx edx, dl
or rax, r8
shl rax, 0x10
or rax, rcx
shl rax, 0x10
or rax, rdx
mov qword [0x140978850], rax
movzx eax, byte [0x140978858]
ror al, 3
xor eax, 0xffffffc1
movzx eax, al
mov word [0x140978858], ax
movzx eax, byte [0x14097885a]
ror al, 3
xor eax, 0x5f
movzx eax, al
mov word [0x14097885a], ax
lea rdx, [0x140978850]
mov rcx, r15
lea rdi, [rsp + 0xd50]
call fcn.140003260
mov rcx, r14
mov rdx, rax
call sub.api_ms_win_crt_string_l1_1_0.dll_wcscat
movdqa xmm0, xmmword [0x140972740]
xor eax, eax
mov ecx, 0x41
cmp byte [0x140978818], 0
mov qword [rsp + 0x48], rdi
rep stosq qword [rdi], rax
movaps xmmword [rsp + 0xf60], xmm0
movdqa xmm0, xmmword [0x140972750]
mov dword [rsp + 0xf80], 0xce0059
movaps xmmword [rsp + 0xf70], xmm0
jne 0x140006f8e
lea r8, [0x140978820]
mov ecx, 9
mov rsi, rbx
mov byte [0x140978844], 1
mov rdi, r8
mov byte [0x140978818], 1
rep movsd dword [rdi], dword [rsi]
lea rcx, [0x140001740]
call fcn.140001583
cmp byte [0x140978844], 0
je 0x140006fe6
xor edx, edx
lea r8, [0x140978820]
movabs r9, 0x1ff1a10b71ffd95b
nop word [rax + rax]
mov rcx, rdx
mov rax, r9
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r8 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r8 + rdx*2], ax
add rdx, 1
cmp rdx, 0x12
jne 0x140006fb0
mov byte [0x140978844], 0
mov rcx, qword [rsp + 0x48]
mov rdx, r14
mov rdi, rbx
lea r8, [0x140978820]
lea rsi, [0x140971060]
call fcn.140003230
cmp byte [0x1409786c0], 0
mov ecx, 0x26
rep movsq qword [rdi], qword [rsi]
jne 0x140007044
lea r8, [0x1409786e0]
mov ecx, 0x26
mov rsi, rbx
mov byte [0x140978810], 1
mov rdi, r8
mov byte [0x1409786c0], 1
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x140001750]
call fcn.140001583
cmp byte [0x140978810], 0
je 0x140007099
xor edx, edx
lea r8, [0x1409786e0]
movabs r9, 0xf9a5637305338b95
mov rcx, rdx
mov rax, r9
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r8 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r8 + rdx*2], ax
add rdx, 1
cmp rdx, 0x98
jne 0x140007060
mov byte [0x140978810], 0
mov qword [rsp + 0x20], r12
xor ecx, ecx
mov r8, r12
mov rdx, rbp
lea r9, [0x1409786e0]
call fcn.140002e00
call fcn.140002350
cmp byte [0x1409786a8], 0
mov byte [rsp + 0x5b], al
jne 0x1400070ef
lea rcx, [0x140001760]
mov byte [0x1409786b8], 1
movabs rax, 0xaa00cf0011004c
mov qword [0x1409786b0], rax
mov byte [0x1409786a8], 1
call fcn.140001583
cmp byte [0x1409786b8], 0
je 0x14000715f
movzx eax, byte [0x1409786b6]
movzx r8d, byte [0x1409786b4]
mov byte [0x1409786b8], 0
movzx ecx, byte [0x1409786b2]
movzx edx, byte [0x1409786b0]
ror al, 3
ror r8b, 3
ror cl, 3
xor eax, 0x55
xor r8d, 0xffffff8b
ror dl, 3
movzx eax, al
movzx r8d, r8b
xor ecx, 0x4f
xor edx, 0xfffffff1
shl rax, 0x10
movzx ecx, cl
movzx edx, dl
or rax, r8
shl rax, 0x10
or rax, rcx
shl rax, 0x10
or rax, rdx
mov qword [0x1409786b0], rax
movdqa xmm0, xmmword [0x140972780]
movdqa xmm7, xmmword [0x140972770]
lea rax, [0x1409786b0]
mov dword [rsp + 0xfa0], 0x6100e4
movdqa xmm8, xmmword [str.mhW1]
cmp byte [0x140978658], 0
mov qword [rsp + 0xb0], rax
lea r12, [0x140978660]
movaps xmmword [rsp + 0xf80], xmm0
movdqa xmm0, xmmword [0x140972790]
mov word [rsp + 0xfa4], 0x5c
movaps xmmword [rsp + 0xf60], xmm8
movaps xmmword [rsp + 0xf70], xmm7
movaps xmmword [rsp + 0xf90], xmm0
jne 0x1400071fc
mov ecx, 0x46
mov rdi, r12
mov rsi, rbx
mov byte [0x1409786a6], 1
rep movsb byte [rdi], byte [rsi]
lea rcx, [0x140001770]
mov byte [0x140978658], 1
call fcn.140001583
cmp byte [0x1409786a6], 0
je 0x14000724e
movabs r8, 0x211b3d99558b4ff1
xor edx, edx
nop dword [rax]
mov rcx, rdx
mov rax, r8
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r12 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r12 + rdx*2], ax
add rdx, 1
cmp rdx, 0x23
jne 0x140007218
mov byte [0x1409786a6], 0
movdqa xmm6, xmmword [0x1409727a0]
cmp byte [0x140978638], 0
mov qword [rsp + 0xb8], r12
mov word [rsp + 0xf70], 0x8f
movaps xmmword [rsp + 0xf60], xmm6
jne 0x1400072ac
movdqa xmm5, xmmword [rsp + 0xf60]
lea rcx, [0x140001780]
mov byte [0x140978652], 1
mov word [0x140978650], 0x8f
mov byte [0x140978638], 1
movaps xmmword [0x140978640], xmm5
call fcn.140001583
cmp byte [0x140978652], 0
je 0x1400073a8
movzx eax, byte [0x14097864c]
movzx edx, byte [0x140978640]
mov byte [0x140978652], 0
movzx r8d, byte [0x140978644]
movzx esi, byte [0x140978642]
ror al, 3
movzx r11d, byte [0x140978646]
movzx ecx, byte [0x140978648]
ror dl, 3
ror r8b, 3
xor eax, 0x1b
xor edx, 0xfffffff1
ror sil, 3
movzx eax, al
xor r8d, 0xffffff8b
ror r11b, 3
movzx edx, dl
movd xmm0, eax
ror cl, 3
movzx eax, byte [0x140978650]
xor esi, 0x4f
movzx r8d, r8b
xor r11d, 0x55
xor ecx, 0xffffff99
movzx esi, sil
movzx r11d, r11b
movzx ecx, cl
movd xmm1, edx
ror al, 3
movd xmm3, r8d
pinsrw xmm1, esi, 1
movd xmm2, ecx
xor eax, 0xfffffff1
movzx r10d, byte [0x14097864a]
movzx r9d, byte [0x14097864e]
pinsrw xmm3, r11d, 1
movzx eax, al
punpckldq xmm1, xmm3
mov word [0x140978650], ax
ror r10b, 3
ror r9b, 3
xor r10d, 0x3d
xor r9d, 0x21
movzx r10d, r10b
movzx r9d, r9b
pinsrw xmm0, r9d, 1
pinsrw xmm2, r10d, 1
punpckldq xmm2, xmm0
movdqa xmm0, xmm1
punpcklqdq xmm0, xmm2
movaps xmmword [0x140978640], xmm0
lea rsi, [0x1409711a0]
mov ecx, 0x7a
mov rdi, rbx
cmp byte [0x140978240], 0
rep movsq qword [rdi], qword [rsi]
lea rax, [0x140978640]
lea r12, [0x140978260]
mov qword [rsp + 0xc0], rax
mov eax, dword [rsi]
mov dword [rdi], eax
jne 0x140007407
mov ecx, 0x7a
mov rdi, r12
mov rsi, rbx
mov byte [0x140978634], 1
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x140001790]
mov byte [0x140978240], 1
mov dword [rdi], eax
call fcn.140001583
cmp byte [0x140978634], 0
je 0x140007459
movabs r8, 0x211b3d99558b4ff1
xor edx, edx
nop dword [rax]
mov rcx, rdx
mov rax, r8
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r12 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r12 + rdx*2], ax
add rdx, 1
cmp rdx, 0x1ea
jne 0x140007420
mov byte [0x140978634], 0
cmp byte [0x140978228], 0
mov qword [rsp + 0xc8], r12
jne 0x140007495
lea rcx, [0x1400017a0]
mov byte [0x140978238], 1
movabs rax, 0xaa001f00d900a4
mov qword [0x140978230], rax
mov byte [0x140978228], 1
call fcn.140001583
cmp byte [0x140978238], 0
je 0x140007505
movzx eax, byte [0x140978236]
movzx r8d, byte [0x140978234]
mov byte [0x140978238], 0
movzx ecx, byte [0x140978232]
movzx edx, byte [0x140978230]
ror al, 3
ror r8b, 3
ror cl, 3
xor eax, 0x55
xor r8d, 0xffffff8b
ror dl, 3
movzx eax, al
movzx r8d, r8b
xor ecx, 0x4f
xor edx, 0xfffffff1
shl rax, 0x10
movzx ecx, cl
movzx edx, dl
or rax, r8
shl rax, 0x10
or rax, rcx
shl rax, 0x10
or rax, rdx
mov qword [0x140978230], rax
movdqa xmm0, xmmword [0x1409727b0]
lea rax, [0x140978230]
cmp byte [0x1409781c8], 0
mov dword [rsp + 0xfa0], 0x2100ac
mov qword [rsp + 0xd0], rax
lea r12, [0x1409781e0]
movaps xmmword [rsp + 0xf80], xmm0
movdqa xmm0, xmmword [0x1409727c0]
mov word [rsp + 0xfa4], 0x5c
movaps xmmword [rsp + 0xf60], xmm8
movaps xmmword [rsp + 0xf70], xmm7
movaps xmmword [rsp + 0xf90], xmm0
jne 0x140007591
mov ecx, 0x46
mov rdi, r12
mov rsi, rbx
mov byte [0x140978226], 1
rep movsb byte [rdi], byte [rsi]
lea rcx, [0x1400017b0]
mov byte [0x1409781c8], 1
call fcn.140001583
cmp byte [0x140978226], 0
je 0x1400075e6
movabs r8, 0x211b3d99558b4ff1
xor edx, edx
nop word cs:[rax + rax]
mov rcx, rdx
mov rax, r8
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r12 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r12 + rdx*2], ax
add rdx, 1
cmp rdx, 0x23
jne 0x1400075b0
mov byte [0x140978226], 0
cmp byte [0x1409781a8], 0
mov qword [rsp + 0xd8], r12
mov word [rsp + 0xf70], 0x8f
movaps xmmword [rsp + 0xf60], xmm6
jne 0x14000763c
movdqa xmm4, xmmword [rsp + 0xf60]
lea rcx, [0x1400017c0]
mov byte [0x1409781c2], 1
mov word [0x1409781c0], 0x8f
mov byte [0x1409781a8], 1
movaps xmmword [0x1409781b0], xmm4
call fcn.140001583
cmp byte [0x1409781c2], 0
je 0x140007738
movzx eax, byte [0x1409781bc]
movzx edx, byte [0x1409781b0]
mov byte [0x1409781c2], 0
movzx r8d, byte [0x1409781b4]
movzx esi, byte [0x1409781b2]
ror al, 3
movzx r11d, byte [0x1409781b6]
movzx ecx, byte [0x1409781b8]
ror dl, 3
ror r8b, 3
xor eax, 0x1b
xor edx, 0xfffffff1
ror sil, 3
movzx eax, al
xor r8d, 0xffffff8b
ror r11b, 3
movzx edx, dl
movd xmm0, eax
ror cl, 3
movzx eax, byte [0x1409781c0]
xor esi, 0x4f
movzx r8d, r8b
xor r11d, 0x55
xor ecx, 0xffffff99
movzx esi, sil
movzx r11d, r11b
movzx ecx, cl
movd xmm1, edx
ror al, 3
movd xmm3, r8d
pinsrw xmm1, esi, 1
movd xmm2, ecx
xor eax, 0xfffffff1
movzx r10d, byte [0x1409781ba]
movzx r9d, byte [0x1409781be]
pinsrw xmm3, r11d, 1
movzx eax, al
punpckldq xmm1, xmm3
mov word [0x1409781c0], ax
ror r10b, 3
ror r9b, 3
xor r10d, 0x3d
xor r9d, 0x21
movzx r10d, r10b
movzx r9d, r9b
pinsrw xmm0, r9d, 1
pinsrw xmm2, r10d, 1
punpckldq xmm2, xmm0
movdqa xmm0, xmm1
punpcklqdq xmm0, xmm2
movaps xmmword [0x1409781b0], xmm0
lea rsi, [0x140971580]
mov ecx, 0x214
mov rdi, rbx
cmp byte [0x1409770e8], 0
rep movsq qword [rdi], qword [rsi]
lea rax, [0x1409781b0]
lea r12, [0x140977100]
mov qword [rsp + 0xe0], rax
mov eax, dword [rsi]
mov dword [rdi], eax
jne 0x140007797
mov ecx, 0x214
mov rdi, r12
mov rsi, rbx
mov byte [0x1409781a4], 1
rep movsq qword [rdi], qword [rsi]
lea rcx, [0x1400017d0]
mov byte [0x1409770e8], 1
mov dword [rdi], eax
call fcn.140001583
cmp byte [0x1409781a4], 0
jne 0x1400078c9
lea rsi, [rsp + 0xb0]
mov qword [rsp + 0xe8], r12
movq xmm6, qword [0x1409727d0]
mov r12, rbp
lea r15, [0x1409770d0]
lea r14, [0x1409770d8]
mov rbp, rsi
cmp byte [r15], 0
mov rsi, qword [rbp]
jne 0x1400077f9
lea rcx, [0x1400017e0]
mov byte [0x1409770e0], 1
mov byte [0x1409770d0], 1
movq qword [r14], xmm6
call fcn.140001583
cmp byte [0x1409770e0], 0
je 0x140007862
movzx eax, byte [0x1409770de]
movzx edx, byte [r14]
mov byte [0x1409770e0], 0
movzx r8d, byte [0x1409770dc]
movzx ecx, byte [0x1409770da]
ror al, 3
ror dl, 3
ror r8b, 3
xor eax, 0x5d
ror cl, 3
xor edx, 0xffffffe3
xor r8d, 0xffffffd9
movzx eax, al
xor ecx, 0x51
movzx edx, dl
movzx r8d, r8b
shl rax, 0x10
movzx ecx, cl
or rax, r8
shl rax, 0x10
or rax, rcx
shl rax, 0x10
or rax, rdx
mov qword [r14], rax
mov rdx, rsi
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll__wcsicmp
mov esi, eax
test eax, eax
jne 0x140007916
cmp byte [rsp + 0x5b], 0
jne 0x140007916
add rbp, 0x20
cmp rbp, r13
jne 0x1400077d0
mov rcx, qword [rsp + 0x60]
call fcn.14000472c
nop
movaps xmm6, xmmword [rsp + 0x2010]
movaps xmm7, xmmword [rsp + 0x2020]
xor eax, eax
movaps xmm8, xmmword [rsp + 0x2030]
add rsp, 0x2048
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movabs r8, 0x211b3d99558b4ff1
xor edx, edx
nop dword [rax]
mov rcx, rdx
mov rax, r8
and ecx, 7
shl rcx, 3
shr rax, cl
mov rcx, rax
movzx eax, byte [r12 + rdx*2]
ror al, 3
xor eax, ecx
movzx eax, al
mov word [r12 + rdx*2], ax
add rdx, 1
cmp rdx, 0x852
jne 0x1400078d8
mov byte [0x1409781a4], 0
jmp 0x1400077a4
xor eax, eax
mov ecx, 0x41
mov rdi, rbx
cmp byte [0x1409770a0], 0
rep stosq qword [rdi], rax
mov rdi, qword [rbp + 0x10]
jne 0x140007971
movdqa xmm0, xmmword [0x1409727e0]
mov rax, qword [0x1409727f0]
lea rcx, [0x1400017f0]
mov byte [0x1409770cc], 1
mov dword [0x1409770c8], 0x7b00f1
mov qword [0x1409770c0], rax
mov byte [0x1409770a0], 1
movaps xmmword [0x1409770b0], xmm0
call fcn.140001583
cmp byte [0x1409770cc], 0
je 0x140007ae5
movzx eax, byte [0x1409770b6]
movzx r8d, byte [0x1409770b0]
mov byte [0x1409770cc], 0
movzx ecx, byte [0x1409770b4]
movzx edx, byte [0x1409770b8]
ror al, 3
ror r8b, 3
movzx r11d, byte [0x1409770b2]
movzx r10d, byte [0x1409770ba]
ror cl, 3
xor eax, 0xffffffb5
xor r8d, 0xffffffbd
ror dl, 3
movzx eax, al
movzx r8d, r8b
xor ecx, 0xffffffd1
xor edx, 0x5b
mov word [rsp + 0x50], ax
movd xmm0, r8d
movzx ecx, cl
movzx edx, dl
movzx eax, byte [0x1409770bc]
movd xmm3, ecx
movzx ecx, byte [0x1409770c2]
movd xmm1, edx
movzx r8d, byte [0x1409770c4]
movzx edx, byte [0x1409770c0]
ror r11b, 3
ror r10b, 3
ror al, 3
ror cl, 3
xor r11d, 0xffffff89
xor r10d, 0x6f
xor eax, 0xffffff91
ror r8b, 3
xor ecx, 0xffffff89
movzx r11d, r11b
movzx eax, al
xor r8d, 0xffffffd1
ror dl, 3
movzx ecx, cl
movd xmm2, eax
movzx r8d, r8b
xor edx, 0xffffffbd
movzx r10d, r10b
movzx eax, byte [0x1409770c6]
movzx edx, dl
movzx r9d, byte [0x1409770be]
pinsrw xmm0, r11d, 1
pinsrw xmm3, word [rsp + 0x50], 1
pinsrw xmm1, r10d, 1
ror al, 3
ror r9b, 3
xor eax, 0xffffffb5
xor r9d, 0x51
punpckldq xmm0, xmm3
movzx eax, al
movzx r9d, r9b
shl rax, 0x10
pinsrw xmm2, r9d, 1
or rax, r8
punpckldq xmm1, xmm2
shl rax, 0x10
punpcklqdq xmm0, xmm1
or rax, rcx
movaps xmmword [0x1409770b0], xmm0
shl rax, 0x10
or rax, rdx
mov qword [0x1409770c0], rax
movzx eax, byte [0x1409770c8]
ror al, 3
xor eax, 0x5b
movzx eax, al
mov word [0x1409770c8], ax
movzx eax, byte [0x1409770ca]
ror al, 3
xor eax, 0x6f
movzx eax, al
mov word [0x1409770ca], ax
mov rdx, rdi
lea rcx, [0x1409770b0]
call sub.api_ms_win_crt_string_l1_1_0.dll__wcsicmp
mov rdx, r13
mov r8, rdi
mov rcx, rbx
test eax, eax
cmovne rdx, r12
call fcn.140003230
mov rax, qword [rbp + 0x18]
mov qword [rsp + 0x50], rax
test esi, esi
je 0x140007b81
movsxd rdi, dword [0x14096f840]
lea rsi, [0x140456840]
mov rcx, qword [rbp + 8]
call fcn.140003180
test al, al
jne 0x140007882
mov edx, edi
mov rcx, rsi
mov dword [rsp + 0x5c], edi
call fcn.140002fe0
mov dword [rsp + 0x28], edi
mov r8, rbx
mov rdx, rbx
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x20], rsi
call fcn.1400041b0
mov edx, dword [rsp + 0x5c]
mov rcx, rsi
mov rdi, rax
call fcn.140002fe0
mov rcx, rdi
call fcn.14000472c
jmp 0x140007882
movsxd rdi, dword [0x140456820]
lea rsi, [0x140008020]
jmp 0x140007b23