Function at 0x140224170
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1078
call fcn.14020e090
sub rsp, rax
mov rbx, rdx
mov rsi, rcx
call fcn.140224cd0
mov rdi, rax
mov r11, qword [rbx]
lea r15, [rsp + 0x48]
nop
mov eax, dword [0x141595278]
mov ecx, dword [0x14159527c]
xor ecx, eax
not ecx
and ecx, eax
and ecx, 0x3f2412a
add ecx, 0xaf857d94
or ecx, 0xf8baf134
cmp ecx, 0x9ed4d5e8
jb 0x1402241a0
xor r14d, r14d
xor r12d, r12d
mov eax, dword [0x141595280]
mov ecx, dword [0x141595284]
mov edx, eax
not edx
mov r8d, ecx
not r8d
mov r9d, edx
and r9d, 0xda535f1d
and eax, 0x25aca0e2
or eax, r9d
or edx, r8d
and r8d, 0xda535f1d
and ecx, 0x25aca0e2
or ecx, r8d
xor ecx, eax
not edx
or edx, ecx
mov eax, edx
not eax
or eax, 0xb14901e9
add eax, edx
inc eax
mov ecx, eax
xor ecx, 0x3180282
xor eax, 0xe863f029
mov edx, eax
and edx, 0x1c85dd54
and ecx, 0xe37a22ab
imul ecx, edx
mov edx, eax
and edx, 0xe37a22ab
or eax, 0xe37a22ab
imul eax, edx
add eax, ecx
cmp eax, 0x458e1ca8
ja 0x1402244d0
nop dword [rax + rax]
mov eax, dword [0x141595288]
add eax, dword [0x14159528c]
mov ecx, eax
not ecx
or ecx, 0x88daeb76
add eax, ecx
inc eax
xor eax, 0x7bfe244b
mov ecx, eax
and ecx, 0x696a2a13
or eax, 0x696a2a13
add eax, ecx
mov r13, qword [rsi]
mov rbx, r13
and rbx, 0xfffffffffffffff8
mov rcx, qword [rbx + 0x810]
cmp eax, 0x83ef9906
jb 0x1402244d0
mov rbp, rcx
and rbp, 0xfffffffffffffff8
je 0x140224bf0
inc r12
nop word [rax + rax]
mov eax, dword [0x141595290]
mov edx, eax
not edx
or edx, dword [0x141595294]
add eax, edx
inc eax
not eax
or eax, 0xbc348013
cmp eax, 0x93d65e50
je 0x1402242c0
mov rax, qword [rbp + 0x808]
not rax
or rax, 1
add rax, rdi
inc rax
cmp rax, 4
jl 0x140224bf0
mov eax, dword [0x141595298]
or eax, dword [0x14159529c]
mov edx, eax
not edx
or edx, 0xa84f3975
or eax, 0x57b0c68a
and eax, edx
mov edx, eax
and edx, 0x6fbca275
add edx, edx
neg edx
add eax, edx
add eax, 0xefbca275
xor eax, 0x27a19bda
cmp eax, 0x7dbf7a7d
jbe 0x140224350
mov rax, r13
lock cmpxchg qword [rsi], rcx
nop word cs:[rax + rax]
mov eax, dword [0x1415952a0]
mov edx, dword [0x1415952a4]
mov r8d, eax
and r8d, edx
xor eax, edx
lea eax, [rax + r8*2]
mov edx, eax
not edx
or edx, 0x2851ae0c
and eax, 0x900801d0
xor edx, 0x4fa7f22b
or edx, eax
mov rax, r13
lock cmpxchg qword [rsi], rcx
sete al
cmp edx, 0x68d9367e
je 0x140224350
test r14b, r14b
jne 0x140224392
test al, al
jne 0x1402244f0
mov eax, dword [0x1415952f0]
imul eax, dword [0x1415952f4]
imul eax, eax, 0x6adc17e3
cmp eax, 0x24adfb62
jne 0x1402243c0
mov rax, qword [rsi]
nop dword [rax]
mov r13, qword [rsi]
test r14b, r14b
jne 0x1402243c0
test r14b, r14b
je 0x1402243e0
mov rax, r13
and rax, 0xfffffffffffffff8
mov rax, qword [rax + 0x810]
nop dword [rax + rax]
mov eax, dword [0x1415952f8]
and eax, dword [0x1415952fc]
mov edx, eax
or edx, 0xab0842e0
not eax
and eax, 0x97150d
mov ecx, edx
and ecx, 0x5c60a832
or ecx, eax
xor ecx, 0x12e7bd48
and edx, 0xb178ea85
or edx, ecx
mov eax, r13d
not eax
or rax, 0xfffffffffffffff8
mov rcx, qword [r13 + rax + 0x811]
cmp edx, 0xafed45e6
je 0x1402243e0
mov rbp, rcx
and rbp, 0xfffffffffffffff8
lea rbx, [rax + r13]
inc rbx
nop word [rax + rax]
mov eax, dword [0x141595300]
or eax, dword [0x141595304]
mov edx, eax
not edx
and edx, 0x68526d48
mov r8d, eax
and r8d, 0x17ad92b7
imul r8d, edx
mov edx, eax
and edx, 0x68526d48
or eax, 0x68526d48
imul eax, edx
add eax, r8d
mov edx, eax
and edx, 0x45651318
mov r8d, edx
not r8d
and r8d, 0x6b8b9f6c
mov r9d, eax
and r9d, 0x4640010
imul r9d, r8d
and eax, 0x41011308
or edx, 0x6b8b9f6c
imul edx, eax
add edx, r9d
cmp edx, 0xd8f06b30
jb 0x140224440
test rbp, rbp
jne 0x1402242c0
jmp 0x140224bf0
mov rax, qword [rsi]
and rax, 0xfffffffffffffff8
mov rax, qword [rax + 0x810]
jmp 0x140224260
mov eax, dword [0x1415952a8]
xor edx, edx
div dword [0x1415952ac]
imul eax, eax, 0x9e88bd86
cmp eax, 0x5763fc03
jne 0x140224520
mov rax, qword [rsi + 0x80]
nop word cs:[rax + rax]
mov eax, dword [0x1415952b4]
mov edx, eax
xor edx, eax
not edx
and edx, dword [0x1415952b0]
xor edx, eax
mov eax, edx
xor eax, 0x3b54c9cc
and eax, edx
mov edx, eax
xor edx, 0x1ad38a0f
add edx, eax
and eax, 0x252c75f0
sub edx, eax
or edx, 0xdfb559e8
mov rax, qword [rsi + 0x80]
cmp edx, 0x80bdfed7
je 0x140224520
cmp r13, rax
jne 0x14022459d
mov rax, r13
lock cmpxchg qword [rsi + 0x80], rcx
nop word cs:[rax + rax]
mov eax, dword [str.___y]
add eax, dword [0x1415952ec]
or eax, 0xfeba6612
add eax, 0xe4a12e1e
cmp eax, 0x8217a940
jbe 0x140224580
test r11, r11
mov qword [rsp + 0x38], r11
mov qword [rsp + 0x30], r12
je 0x1402245c1
test r14b, r14b
lea r8, [0x1400f4f80]
je 0x1402246a0
jmp 0x1402246ed
mov eax, dword [0x1415952b8]
or eax, dword [0x1415952bc]
imul eax, eax, 0x77e6b62a
mov ecx, eax
not ecx
or ecx, 0x114d6882
add eax, ecx
inc eax
imul rcx, rax, 0x3e238ca3
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0x1c27474a
je 0x14022467b
mov r13d, dword [0x1415952c0]
mov eax, dword [0x1415952c4]
mov ecx, r13d
not ecx
or r13d, eax
not eax
and eax, ecx
not r13d
or r13d, eax
mov eax, r13d
xor eax, 0x60a48919
xor r13d, 0x1c522046
mov ecx, r13d
and ecx, 0xb5956e2
and eax, 0x74a6a91d
imul eax, ecx
mov ecx, r13d
and ecx, 0x74a6a91d
or r13d, 0x74a6a91d
imul r13d, ecx
add r13d, eax
or r13d, 0x8ac4650c
mov rcx, qword [0x1415acb98]
xor edx, edx
mov r8, rbx
call fcn.14020ae70
cmp r13d, 0xe8cc769c
jbe 0x1402247f8
mov rcx, qword [0x1415acb98]
xor edx, edx
mov r8, rbx
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x140224600
mov eax, dword [0x1415952cc]
add eax, dword [0x1415952c8]
mov ecx, eax
xor ecx, 0x44190051
xor eax, 0x82c6ae8a
mov edx, eax
and edx, 0x39e4df2e
and ecx, 0xc61b20d1
imul ecx, edx
mov edx, eax
and edx, 0xc61b20d1
or eax, 0xc61b20d1
imul eax, edx
add eax, ecx
add eax, 0x13af045a
mov qword [rsp + 0x60], r8
cmp eax, 0x3d6e6e52
jae 0x140224700
mov qword [rsp + 0x60], r8
jmp 0x1402246a0
mov eax, dword [0x1415952d0]
xor edx, edx
div dword [0x1415952d4]
or eax, 0xe7e9ac06
lea ecx, [rax + 0xdb74840]
mov edx, ecx
and edx, 0x4ca68b9f
xor ecx, 0xb3117460
add eax, ecx
add eax, 0xdb74840
sub eax, edx
cmp eax, 0xbe52515a
mov r12, r11
jb 0x140224bd0
nop
mov eax, dword [0x1415952d8]
mov ecx, dword [0x1415952dc]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
mov ecx, eax
xor ecx, 0x20622386
xor eax, 0x8819809
and eax, 0x28e3b909
mov edx, ecx
and edx, 0xd71c46f6
imul edx, eax
mov eax, ecx
and eax, 0x28e3b909
or ecx, 0x28e3b909
imul ecx, eax
add ecx, edx
mov ebx, ecx
xor ebx, 0x15e01ccc
and ebx, ecx
mov qword [rsp + 0x68], r13
mov rcx, r12
lea rdx, [rsp + 0x60]
call fcn.14020c440
cmp ebx, 0x886f610
je 0x140224bd0
nop word cs:[rax + rax]
mov eax, dword [0x1415952e0]
xor eax, dword [0x1415952e4]
xor eax, 0xad1e3866
imul rax, rax, 0x4e95875
shr rax, 0x3a
or eax, 0x861cbc68
cmp eax, 0x871e48ac
jae 0x1402247d0
mov eax, dword [0x141595308]
xor edx, edx
div dword [0x14159530c]
mov eax, 0x75eefe96
add eax, 0xdfda3cc4
jae 0x140224806
mov rbx, qword [rbp]
mov eax, dword [0x141595310]
xor edx, edx
div dword [0x141595314]
mov ecx, eax
and ecx, 0xcfc0f747
mov edx, ecx
not edx
mov r8d, eax
and r8d, 0x8200b206
and edx, 0x6de945c9
imul edx, r8d
and eax, 0x4dc04541
or ecx, 0x6de945c9
imul ecx, eax
add ecx, edx
mov eax, ecx
and eax, 0x7d64211d
add eax, eax
sub ecx, eax
cmp ecx, 0xfcbfdb6b
je 0x140224816
nop word [rax + rax]
test r14b, r14b
jne 0x140224870
test rbx, rbx
je 0x140224bf0
nop
mov eax, dword [0x141595320]
add eax, dword [0x141595324]
imul rax, rax, 0x5eaa8407
shr rax, 0x3e
or eax, 0x2d5bb1da
imul eax, eax, 0x858ebb9b
cmp eax, 0xa8da2cd7
ja 0x140224880
mov qword [rsp + 0x28], rdi
add rbp, 8
mov eax, dword [0x141595328]
mov ecx, dword [0x14159532c]
mov edx, eax
not edx
and edx, ecx
not ecx
and ecx, eax
sub ecx, edx
mov eax, ecx
and eax, 0x377e92e0
add eax, eax
neg eax
add eax, ecx
add eax, 0x377e92e0
xor eax, 0xb62ff657
imul rax, rax, 0x64e1408d
shr rax, 0x3e
cmp eax, 0x6e1bc0bc
lea r12, [rsp + 0x870]
jbe 0x14022490c
mov r8d, 0x808
mov rcx, r12
mov rdx, rbp
call fcn.14021bb50
mov edi, 0x875e5d5b
nop word cs:[rax + rax]
mov eax, dword [0x141595330]
mov r13d, dword [0x141595334]
not eax
not r13d
or r13d, eax
not r13d
or r13d, 0xaaa03de8
xor r13d, 0x50040654
imul r13, rdi
shr r13, 0x3f
mov r8d, 0x808
mov rcx, r12
mov rdx, rbp
call fcn.14021bb50
cmp r13d, 0x825b7772
ja 0x140224920
mov eax, dword [0x141595338]
mov ecx, dword [0x14159533c]
mov edx, eax
not edx
or eax, ecx
not ecx
and ecx, edx
not eax
or eax, ecx
not eax
imul eax, eax, 0x292abf99
mov ecx, 0xac2d7721
imul rax, rcx
shr rax, 0x3f
xor eax, 0x4f82fd7
cmp eax, 0x30096ba8
lea r13, [rsp + 0x68]
jbe 0x1402249be
mov qword [rsp + 0x60], rbx
mov r8d, 0x808
mov rcx, r13
mov rdx, r12
call fcn.14021bb50
mov rdi, qword [rsp + 0x28]
nop word cs:[rax + rax]
mov eax, dword [0x141595340]
and eax, dword [0x141595344]
mov ecx, eax
and ecx, 0x741b5aa
xor eax, 0xf41b5aa
lea ebp, [rax + rcx*2]
and ebp, 0xb7c8c5a
xor ebp, 0xbbd0d5cf
mov qword [rsp + 0x60], rbx
mov r8d, 0x808
mov rcx, r13
mov rdx, r12
call fcn.14021bb50
cmp ebp, 0xeece4bc2
ja 0x1402249d0
mov rbx, qword [rsp + 0x860]
cmp rbx, 0x40
ja 0x140224c71
test r14b, r14b
jne 0x140224a28
test rbx, rbx
je 0x140224b30
shl rbx, 5
xor r13d, r13d
jmp 0x140224a4d
add r13, 0x20
cmp rbx, r13
je 0x140224b30
mov eax, dword [0x141595350]
sub eax, dword [0x141595354]
lea rbp, [rsp + r13]
add rbp, 0x60
mov ecx, eax
xor ecx, 0x48057dcf
or eax, 0xb7fa8230
and eax, ecx
mov ecx, 0xf2fd1a3b
imul rax, rcx
shr rax, 0x3f
cmp eax, 0x47dc05cb
ja 0x140224afc
nop word cs:[rax + rax]
mov eax, dword [0x141595358]
mov r12d, dword [0x14159535c]
not eax
not r12d
or r12d, eax
mov eax, r12d
not eax
and eax, 0x11002
xor r12d, 0x44000040
or r12d, eax
and r12d, 0x44011042
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x40], xmm0
movups xmm0, xmmword [0x141578720]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [0x141578730]
movups xmmword [rbp + 0x10], xmm0
mov rcx, r15
call qword [rsp + 0x40]
cmp r12d, 0xb81445a8
jne 0x140224a40
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
movaps xmmword [rsp + 0x50], xmm1
movaps xmmword [rsp + 0x40], xmm0
movups xmm0, xmmword [0x141578720]
movups xmmword [rbp], xmm0
movups xmm0, xmmword [0x141578730]
movups xmmword [rbp + 0x10], xmm0
mov rcx, r15
call qword [rsp + 0x40]
jmp 0x140224a90
mov eax, dword [0x141595360]
and eax, dword [0x141595364]
mov ecx, eax
and ecx, 0x63465d38
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0xd38a9523
xor eax, 0x364cc0f3
cmp eax, 0x70963775
ja 0x140224b30
mov r11, qword [rsp + 0x38]
mov r12, qword [rsp + 0x30]
nop word cs:[rax + rax]
mov eax, dword [0x141595368]
mov ecx, dword [0x14159536c]
not ecx
mov edx, eax
or edx, ecx
and ecx, eax
not edx
or edx, ecx
mov eax, edx
not eax
or eax, 0x2088111
and eax, 0x9aacf131
and edx, 0x40500c48
or edx, eax
mov eax, edx
xor eax, 0x18609479
xor edx, 0x62000202
or edx, 0x18e81468
or eax, 0xe3176b02
and eax, edx
cmp eax, 0x9804ddc3
ja 0x140224b70
cmp r12, 8
jne 0x1402241d2
jmp 0x140224bf0
mov qword [rsp + 0x68], r13
mov rcx, r12
lea rdx, [rsp + 0x60]
call fcn.14020c440
jmp 0x140224740
mov eax, dword [0x141595318]
mov ecx, dword [0x14159531c]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
mov ecx, eax
xor ecx, 0x36c3fe63
or eax, 0xc93c019c
and eax, ecx
mov ecx, eax
not ecx
and ecx, 0xca530c30
mov edx, eax
and edx, 0x35acf3cf
imul edx, ecx
mov ecx, eax
and ecx, 0xca530c30
or eax, 0xca530c30
imul eax, ecx
add eax, edx
or eax, 0x20c5ae5d
cmp eax, 0x888bfc7f
je 0x140224bf0
add rsp, 0x1078
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2