Function at 0x14014ff20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
mov r8, rdx
mov eax, dword [0x1415c2b48]
xor edx, edx
div dword [0x1415c2b4c]
nop dword [rax + rax]
mov eax, dword [0x1415c2b50]
mov edx, dword [0x1415c2b54]
xor edx, eax
not edx
and edx, eax
mov eax, edx
not eax
mov r9d, edx
and r9d, 0xaeda79ef
and eax, 0x51258610
imul eax, r9d
mov r9d, edx
and r9d, 0x51258610
or edx, 0x51258610
imul edx, r9d
add eax, edx
add eax, 0x2d080bab
mov edx, eax
and edx, 0x54b47723
add edx, edx
sub eax, edx
cmp eax, 0xb2e0fce4
je 0x14014ff40
movzx r11d, byte [r8 + 0x38]
movzx eax, byte [r8 + 0x3a]
test al, al
setne r9b
cmp r11b, 1
ja 0x1401502d1
nop word cs:[rax + rax]
mov edx, dword [0x1415c2b58]
mov r10d, dword [0x1415c2b5c]
mov esi, r10d
not esi
mov edi, edx
and edi, esi
or esi, edx
not esi
imul esi, edi
mov edi, edx
and edi, r10d
or edx, r10d
imul edx, edi
add edx, esi
mov r10d, edx
not r10d
or r10d, 0x2458431
and r10d, 0x1bc5ecb1
and edx, 0x84180042
sub edx, r10d
not edx
or edx, 0x5165b264
cmp edx, 0xe3dd1c82
ja 0x14014ffc0
test al, al
jne 0x140150169
movzx eax, byte [r8 + 0x10]
lea edx, [rax - 5]
nop word [rax + rax]
mov r10d, dword [0x1415c2b60]
mov esi, dword [0x1415c2b64]
mov edi, esi
not edi
and edi, r10d
xor esi, r10d
add esi, r10d
sub esi, edi
mov r10d, esi
not r10d
and r10d, 0x7f61caea
mov edi, esi
and edi, 0x809e3515
imul edi, r10d
mov r10d, esi
and r10d, 0x7f61caea
or esi, 0x7f61caea
imul esi, r10d
add esi, edi
xor esi, 0xadd42a48
cmp esi, 0xe7058f50
je 0x140150030
cmp dl, 1
ja 0x140150169
mov r10, qword [r8]
mov rsi, qword [r8 + 8]
cmp al, 6
sete dil
setne dl
test r11b, r11b
setne bpl
sete bl
xor eax, eax
cmp bpl, dil
jne 0x140150130
or bl, dl
xor bl, 1
jne 0x140150130
mov eax, dword [0x1415c2b68]
xor edx, edx
div dword [0x1415c2b6c]
nop dword [rax]
mov eax, dword [0x1415c2b70]
imul eax, dword [0x1415c2b74]
imul eax, eax, 0xd1c2bda6
add eax, 0xb9a7832e
cmp eax, 0x565ec0b4
jb 0x1401500d0
nop
mov eax, dword [0x1415c2b78]
mov edx, dword [0x1415c2b7c]
mov edi, eax
not edi
and edi, edx
not edx
and edx, eax
sub edx, edi
add edx, 0x5f29c39e
mov eax, edx
xor eax, 0x88af3c4a
and eax, edx
cmp eax, 0x73d461b6
ja 0x1401500f0
mov eax, 2
cmp rsi, 1
jbe 0x140150c7a
nop dword [rax]
mov edx, dword [str.Dt__n]
xor edx, dword [0x1415c2b9c]
mov edi, edx
xor edi, 0xca75c91
xor edx, 0xe050a220
or edx, 0x1f2b054e
add edx, edi
add edx, 0xc4ebd430
cmp edx, 0xed6080c2
ja 0x140150130
cmp rax, rsi
jne 0x1401508d9
xor r10d, r10d
test r11b, r11b
jne 0x1401502d7
nop word cs:[rax + rax]
mov eax, dword [0x1415c2bd0]
or eax, dword [0x1415c2bd4]
imul eax, eax, 0xfa9dea40
or eax, 0x7fd7898e
add eax, 0x6db19d2d
cmp eax, 0x7b0f9295
ja 0x140150180
movzx edx, byte [r8 + 0x10]
nop dword [rax + rax]
mov eax, dword [0x1415c2bd8]
mov r11d, dword [0x1415c2bdc]
mov esi, r11d
not esi
mov edi, eax
and edi, esi
or esi, eax
not esi
imul esi, edi
mov edi, eax
and edi, r11d
or eax, r11d
imul eax, edi
add eax, esi
mov r11d, eax
and r11d, 0x4923ec5
add r11d, r11d
sub eax, r11d
add eax, 0x4923ec5
mov r11d, eax
and r11d, 0x420460fe
add r11d, r11d
sub eax, r11d
imul eax, eax, 0x71beb9e0
cmp eax, 0x484464da
je 0x1401501b0
cmp edx, 6
je 0x1401502d7
mov eax, 0xe16c2e87
nop word [rax + rax]
mov r11d, dword [0x1415c2be0]
mov esi, dword [0x1415c2be4]
mov edi, r11d
and edi, esi
add edi, edi
add r11d, esi
sub r11d, edi
add r11d, 0x4573c6cb
and r11d, 0xc4823020
imul r11, rax
shr r11, 0x3d
cmp r11d, 0x74648a86
je 0x140150220
cmp rdx, 3
jge 0x1401507f8
mov eax, 6
cmp rdx, 1
jg 0x1401502d9
cmp edx, 1
jne 0x1401503d0
mov rax, qword [r8 + 0x20]
mov rdx, qword [r8 + 0x30]
add rax, 8
lea r11, [rdx + 1]
nop word [rax + rax]
mov esi, dword [0x1415c2bf0]
mov edi, dword [0x1415c2bf4]
add edi, esi
add edi, 0x1471e8b6
or edi, 0x2914e50a
and edi, 0xbb15e58f
test rdx, rdx
mov rsi, r11
cmove rsi, rdx
cmp edi, 0x3c5220d1
ja 0x140150290
mov rdx, rax
and rdx, rsi
xor rax, rsi
lea rax, [rax + rdx*2]
jmp 0x1401502d9
xor r9d, r9d
xor r10d, r10d
xor eax, eax
movzx edx, r10b
and edx, 1
movzx r9d, r9b
add r9, rdx
mov edx, eax
and edx, r9d
or r9, rax
add r9, rdx
mov r11, qword [r8 + 8]
cmp r9, r11
ja 0x1401507c0
mov rsi, qword [r8]
mov eax, dword [0x1415c2c30]
xor edx, edx
div dword [str.xO8p]
mov eax, 0x845a435f
lea r10, [rsi + r9]
lea rdx, [rsi + r11]
nop dword [rax]
mov edi, dword [0x1415c2c38]
sub edi, dword [0x1415c2c3c]
imul rdi, rax
shr rdi, 0x3a
mov ebx, edi
or ebx, 0xc980cff5
not edi
or edi, 0x367f300a
and edi, ebx
cmp edi, 0x2e352d23
je 0x140150320
sub rdx, r10
xor eax, eax
nop word cs:[rax + rax]
test al, al
jne 0x140150360
movzx eax, byte [r8 + 0x10]
cmp r9, r11
jne 0x140150376
xor r8d, r8d
jmp 0x1401505dd
cmp al, 3
jae 0x140150429
xor r8d, r8d
mov rdi, r11
nop word cs:[rax + rax]
mov ebx, dword [0x1415c2c40]
xor ebx, dword [0x1415c2c44]
xor ebx, 0x680a7d15
add ebx, 0xc69814fd
cmp ebx, 0x3f158cda
jb 0x140150390
cmp byte [rsi + rdi - 1], 0x5c
je 0x1401504f9
dec rdi
dec rdx
cmp r9, rdi
jne 0x140150390
jmp 0x1401505dd
mov eax, dword [0x1415c2be8]
mov edx, dword [0x1415c2bec]
add eax, edx
add eax, 0xabf97904
mov edx, eax
not edx
or eax, 0x91a213d4
or edx, 0x6e5dec2b
and edx, eax
mov eax, edx
not eax
xor edx, 0xfc6d5c72
or eax, 0xfc6d5c72
and eax, edx
cmp eax, 0xd1e05622
je 0x1401503d0
mov rax, qword [r8 + 0x20]
add rax, 4
mov dl, 1
nop word cs:[rax + rax]
test dl, dl
je 0x140150420
jmp 0x1401502d9
movabs rdi, 0x8957e2ea17ebf99
mov rbx, rdi
not rbx
xor r8d, r8d
mov r14, r11
jmp 0x14015046c
cmp bpl, 0x2f
je 0x1401504f9
add rdx, rdi
add rdx, rbx
dec r14
cmp r9, r14
je 0x1401505dd
mov ebp, dword [0x1415c2c48]
mov r15d, dword [0x1415c2c4c]
mov r12d, ebp
xor r12d, r15d
not r12d
or ebp, r15d
and ebp, r12d
mov r15d, ebp
not r15d
mov r12d, ebp
and r12d, 0xf97122d2
and r15d, 0x68edd2d
imul r15d, r12d
mov r12d, ebp
and r12d, 0x68edd2d
or ebp, 0x68edd2d
imul ebp, r12d
add ebp, r15d
mov r15d, ebp
xor r15d, 0x51a44671
xor ebp, 0x2c001886
and ebp, 0x2e58188e
and r15d, 0xd1a7e771
sub r15d, ebp
cmp r15d, 0x668b7c62
je 0x14015046c
movzx ebp, byte [rsi + r14 - 1]
cmp bpl, 0x5c
jl 0x140150450
jne 0x14015045a
dec rdx
mov r8d, 0xa4e158c7
add r9, rdx
inc r9
nop dword [rax + rax]
mov edx, dword [0x1415c2c50]
xor edx, dword [0x1415c2c54]
mov r10d, edx
not r10d
mov edi, edx
and edi, 0xc590d03f
and r10d, 0x3a6f2fc0
imul r10d, edi
mov edi, edx
and edi, 0x3a6f2fc0
or edx, 0x3a6f2fc0
imul edx, edi
add edx, r10d
and edx, 0x9afed740
imul rdx, r8
shr rdx, 0x3e
cmp edx, 0x536ce92c
ja 0x140150510
cmp r9, r11
ja 0x140150c1f
add rsi, r9
nop dword [rax + rax]
mov edx, dword [0x1415c2c98]
add edx, dword [0x1415c2c9c]
imul edx, edx, 0x45f68bc4
add edx, 0x413e54cd
mov r8d, edx
not r8d
and r8d, 0xf2f400ee
mov r10d, edx
and r10d, 0xd0bff11
imul r10d, r8d
mov r8d, edx
and r8d, 0xf2f400ec
or edx, 0xf2f400ee
imul edx, r8d
add edx, r10d
cmp edx, 0x7e5b569f
ja 0x140150570
mov dl, 1
nop word cs:[rax + rax]
test dl, dl
je 0x1401505d0
mov r8d, 1
mov r10, rsi
mov rdx, r11
not rdx
and rdx, r9
not r9
and r9, r11
sub r9, rdx
test r9, r9
jle 0x1401506b1
cmp r9, 2
jge 0x1401506eb
nop word cs:[rax + rax]
mov edx, dword [0x1415c2c58]
mov r11d, dword [0x1415c2c5c]
not edx
not r11d
or r11d, edx
not r11d
add r11d, 0x84a7bf80
cmp r11d, 0x84b2d043
jb 0x140150610
movzx edx, byte [r10]
nop dword [rax]
mov r11d, dword [0x1415c2c60]
mov esi, dword [0x1415c2c64]
mov edi, r11d
and edi, esi
xor r11d, esi
lea r11d, [r11 + rdi*2]
cmp r11d, 0xb58f3a57
je 0x140150640
mov r11b, 9
cmp dl, 0x2e
jne 0x1401507a3
nop
mov edx, dword [0x1415c2c68]
mov r11d, dword [0x1415c2c6c]
add edx, r11d
add edx, 0xf85f58d9
imul rsi, rdx, 0x742d3dc3
shr rsi, 0x3e
xor edx, edx
cmp al, 3
setae r11b
cmp esi, 0x851f63fc
je 0x140150670
mov dl, r11b
lea r11d, [rdx + rdx*2]
add r11d, 7
jmp 0x1401507a3
mov r11b, 9
jne 0x1401507a3
nop word [rax + rax]
mov eax, dword [0x1415c2c88]
sub eax, dword [0x1415c2c8c]
or eax, 0x6ee97c4e
imul eax, eax, 0xadb711b7
add eax, 0xe615f33b
cmp eax, 0xe8dc226d
ja 0x1401506c0
mov r11b, 0xa
jmp 0x1401507a3
mov r11b, 9
jne 0x1401507a3
movzx ebx, byte [r10]
mov eax, dword [0x1415c2c70]
xor edx, edx
div dword [0x1415c2c74]
nop word cs:[rax + rax]
mov eax, dword [0x1415c2c7c]
add eax, dword [0x1415c2c78]
or eax, 0x36a6056b
imul eax, eax, 0x4311cada
mov edx, eax
not edx
and edx, 0xc579eaa9
mov esi, eax
and esi, 0x3a861556
imul esi, edx
mov edx, eax
and edx, 0xc579eaa8
or eax, 0xc579eaa9
imul eax, edx
add eax, esi
cmp eax, 0x6599404d
ja 0x140150710
cmp bl, 0x2e
jne 0x1401507a3
mov eax, 0x826b546f
nop
mov edx, dword [0x1415c2c80]
sub edx, dword [0x1415c2c84]
add edx, 0xdef1c671
imul rdx, rax
shr rdx, 0x3e
lea r11d, [rdx - 0xfbfaff8]
xor r11d, 0xf42ef71d
and edx, 1
or edx, r11d
cmp edx, 0xee56988a
ja 0x140150760
cmp byte [r10 + 1], 0x2e
sete r11b
xor r11b, 9
add r8, r9
mov qword [rcx], r8
mov byte [rcx + 8], r11b
mov qword [rcx + 0x10], r10
mov qword [rcx + 0x18], r9
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
ud2
jg 0x140150a51
nop
mov eax, dword [0x1415c2bf8]
xor edx, edx
div dword [0x1415c2bfc]
mov edx, eax
xor edx, 0x80004411
or eax, 0x6a020862
and eax, edx
xor eax, 0xa2004c53
or eax, 0x15fdb38c
cmp eax, 0xff1747fa
je 0x140150800
nop
mov eax, dword [0x1415c2c00]
xor edx, edx
div dword [0x1415c2c04]
mov edx, eax
or edx, 0x136c80b2
mov r11d, eax
not r11d
and r11d, 0xe4834f08
mov esi, edx
and esi, 0x187c30d5
imul esi, r11d
and edx, 0xe783cf2a
or eax, 0xf7efcfba
imul eax, edx
add eax, esi
add eax, 0x1b5031ff
cmp eax, 0x7059e9fb
jb 0x140150830
mov rax, qword [r8 + 0x20]
add rax, 4
nop word cs:[rax + rax]
mov edx, dword [0x1415c2c08]
mov r11d, dword [0x1415c2c0c]
mov esi, edx
and esi, r11d
add esi, esi
add edx, r11d
sub edx, esi
mov r11d, edx
not r11d
or edx, 0x787778e3
or r11d, 0x8788871c
and r11d, edx
imul edx, r11d, 0x270a92d2
add edx, 0x657d9e8e
cmp edx, 0x4dada22e
jbe 0x140150890
jmp 0x1401502d9
add rax, r10
add rsi, r10
nop
mov edx, dword [0x1415c2ba0]
mov r10d, dword [0x1415c2ba4]
mov edi, edx
not edi
mov ebx, r10d
not ebx
mov ebp, edi
and ebp, 0x23800000
and edx, 0x40447323
or edx, ebp
or edi, ebx
and ebx, 0x23800000
and r10d, 0x40447323
or r10d, ebx
xor r10d, edx
not edi
or edi, r10d
xor edi, 0x21000220
or edi, 0x9c3b8cdc
add edi, 0xe90e3162
cmp edi, 0x9a52961f
jb 0x1401508e0
lea rdx, [rax + 1]
nop
mov r10d, dword [0x1415c2ba8]
imul r10d, dword [0x1415c2bac]
mov edi, r10d
not edi
and edi, 0x31441fe0
mov ebx, r10d
and ebx, 0xcebbe01f
imul ebx, edi
mov edi, r10d
and edi, 0x31441fe0
or r10d, 0x31441fe0
imul r10d, edi
add r10d, ebx
mov edi, r10d
and edi, 0x57cba0a0
xor r10d, 0x57cba0b8
lea edi, [r10 + rdi*2]
add edi, 0xaa6ee533
cmp rdx, rsi
sete r10b
cmp edi, 0x1c004ee
jb 0x140150940
nop word cs:[rax + rax]
mov esi, dword [0x1415c2bb0]
mov edi, dword [0x1415c2bb4]
mov ebx, esi
xor ebx, edi
not edi
and edi, esi
add edi, edi
sub edi, ebx
add edi, 0x88b0347d
mov esi, edi
xor esi, 0x3ac97d97
xor edi, 0x1e0368ec
and edi, esi
movzx ebx, byte [rax]
cmp bl, 0x2e
setne sil
cmp edi, 0xf5f01298
ja 0x1401509b0
or sil, r10b
test sil, 1
je 0x140150b4c
nop dword [rax]
cmp bl, 0x2e
sete al
mov edx, dword [0x1415c2bc8]
mov esi, dword [0x1415c2bcc]
mov edi, esi
not edi
and edi, edx
xor esi, edx
add esi, edx
sub esi, edi
add esi, 0x3455d6
mov edx, esi
and edx, 0x725f5d66
add edx, edx
sub esi, edx
add esi, 0x43abf401
cmp esi, 0x893df2be
jb 0x140150a00
mov edx, r10d
xor dl, al
xor dl, 1
or r10b, al
and r10b, dl
jmp 0x14015016c
cmp rdx, 5
jge 0x140150af0
nop dword [rax + rax]
mov eax, dword [0x1415c2c10]
xor eax, dword [0x1415c2c14]
shr eax, 4
imul rax, rax, 0x857519d
shr rax, 0x37
imul eax, eax, 0x1e781197
add eax, 0xbe48a344
cmp eax, 0x914e9520
jb 0x140150a60
mov rdx, qword [r8 + 0x20]
mov eax, 0x99f18447
nop word cs:[rax + rax]
mov r11d, dword [0x1415c2c18]
add r11d, dword [0x1415c2c1c]
imul r11d, r11d, 0x4f0de12c
imul r11, rax
shr r11, 0x3d
cmp r11d, 0xad79fec6
ja 0x140150aa0
mov r11, qword [r8 + 0x30]
lea rsi, [r11 + 1]
xor edi, edi
test r11, r11
mov rax, rsi
cmove rax, r11
add rax, rdx
add rax, 2
test dil, dil
jne 0x140150ad0
jmp 0x1401502d9
mov eax, dword [0x1415c2c20]
sub eax, dword [0x1415c2c24]
mov edx, eax
xor edx, 0x800845
and edx, eax
mov r11d, edx
and r11d, 0x8980c7f
mov eax, r11d
not eax
mov esi, edx
and esi, 0x900c4b
and eax, 0xa84cb334
imul eax, esi
and edx, 0x8080034
or r11d, 0xa84cb334
imul r11d, edx
add r11d, eax
mov eax, 2
cmp r11d, 0x4d058fb0
jb 0x140150af0
jmp 0x1401502d9
movzx eax, byte [rdx]
nop
mov r10d, dword [0x1415c2bb8]
mov edx, dword [0x1415c2bbc]
not r10d
not edx
or edx, r10d
not edx
add edx, 0x3b6e6944
mov r10d, edx
not r10d
mov esi, edx
and esi, 0x43254c62
and r10d, 0xbcdab39d
imul r10d, esi
mov esi, edx
and esi, 0xbcdab39d
or edx, 0xbcdab39d
imul edx, esi
add edx, r10d
mov r10d, edx
and r10d, 0x816cea11
or edx, 0x816cea11
add edx, r10d
cmp edx, 0x9faeec80
je 0x140150b50
nop word cs:[rax + rax]
cmp al, 0x5c
sete r10b
mov edx, dword [0x1415c2bc0]
add edx, dword [0x1415c2bc4]
imul edx, edx, 0x3d9c209a
mov esi, edx
not esi
mov edi, edx
and edi, 0xb5607de
and esi, 0xf4a9f821
imul esi, edi
mov edi, edx
and edi, 0xf4a9f820
or edx, 0xf4a9f821
imul edx, edi
add edx, esi
mov esi, edx
xor esi, 0x4e9af2c4
and esi, edx
cmp al, 0x2f
sete dl
cmp esi, 0xdf10257c
jae 0x140150bc0
or r10b, dl
jmp 0x14015016c
ud2
mov eax, dword [0x1415c2b80]
mov ecx, dword [0x1415c2b84]
not eax
not ecx
or ecx, eax
xor ecx, 0x4001802
or ecx, 0x1030c580
and ecx, 0x3434dd92
cmp ecx, 0x3355225a
ja 0x140150cd5
mov eax, dword [0x1415c2b88]
mov ecx, dword [0x1415c2b8c]
not eax
not ecx
or ecx, eax
mov eax, ecx
not eax
xor ecx, 0x2a02d8ef
add ecx, eax
and eax, 0x2a02d8ef
sub ecx, eax
ud2
ud2