Function at 0x140045dc0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
mov r14, rcx
xorps xmm0, xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
mov rcx, qword [rcx + 0xa0]
mov r13, rdx
nop word [rax + rax]
mov eax, dword [0x141dc6338]
sub eax, dword [0x141dc633c]
and eax, 0x200c0810
cmp eax, 0x121b36db
je 0x140045e30
cmp rcx, r8
jae 0x140046090
nop word cs:[rax + rax]
mov eax, dword [0x141dc63e0]
or eax, dword [0x141dc63e4]
or eax, 0x410e9248
and eax, 0x490e9249
cmp eax, 0x2225b671
jb 0x140045e60
cmp rcx, 0x29
jae 0x1400464fb
lea r9, [r14 + rcx*4]
lea rax, [r8*4]
add rax, r13
mov qword [rsp + 0x28], rax
lea rax, [r8 + 1]
mov qword [rsp + 0x30], rax
xor edi, edi
nop word cs:[rax + rax]
mov eax, dword [0x141dc6400]
or eax, dword [0x141dc6404]
xor eax, 0x4419ac9c
add eax, 0xb5117d9
cmp eax, 0xd6bf8ce2
ja 0x140045eb0
mov r10d, 0xbd437d9d
xor r15d, r15d
mov r12, r14
xor ebx, ebx
mov rax, r12
nop
cmp rax, r9
je 0x140046381
lea r12, [rax + 4]
inc rdi
mov ecx, dword [0x141dc6408]
imul ecx, dword [0x141dc640c]
imul rcx, r10
shr rcx, 0x3e
add ecx, 0xcce82739
or ecx, 0x8d7ff7e6
cmp ecx, 0x6f07490c
je 0x140045ef0
mov ebp, dword [rax]
mov rax, r12
test rbp, rbp
je 0x140045ee0
mov qword [rsp + 0x38], r9
mov qword [rsp + 0x20], r14
lea r14, [rdi - 1]
xor esi, esi
xor r10d, r10d
mov r9, r13
nop dword [rax]
test r15b, r15b
jne 0x140045f40
lea rcx, [r10 + r14]
cmp rcx, 0x28
jae 0x140046589
inc r10
mov eax, dword [r9]
add r9, 4
mov edx, dword [rsp + rcx*4 + 0x40]
mov r11, rsi
add r11, rdx
imul rax, rbp
nop dword [rax + rax]
mov edx, dword [0x141dc6430]
xor edx, dword [0x141dc6434]
and edx, 0x25afbb53
imul rdx, rdx, 0x44c680f9
shr rdx, 0x3b
add edx, 0x51663ac5
cmp edx, 0xc7a0250e
ja 0x140045f70
add r11, rax
test r15b, r15b
je 0x140045fa8
mov dword [rsp + rcx*4 + 0x40], r11d
mov rsi, r11
shr rsi, 0x20
nop
mov eax, dword [0x141dc6438]
xor edx, edx
div dword [0x141dc643c]
imul eax, eax, 0x1e182a6b
mov dword [rsp + rcx*4 + 0x40], r11d
cmp eax, 0x392a535a
je 0x140045fb0
cmp r9, qword [rsp + 0x28]
jne 0x140045f40
mov rax, r8
test rsi, rsi
je 0x140046043
mov eax, dword [0x141dc6410]
xor edx, edx
div dword [0x141dc6414]
and eax, 0xce77a3c0
cmp eax, 0xb5be638c
je 0x140045fe3
lea rax, [r14 + r8]
nop word cs:[rax + rax]
test r15b, r15b
jne 0x140046010
cmp rax, 0x28
jae 0x140046420
nop
mov ecx, dword [0x141dc6420]
and ecx, dword [0x141dc6424]
and ecx, 0x5eb1e25b
cmp ecx, 0xeaa0dad6
je 0x140046020
mov dword [rsp + rax*4 + 0x40], esi
mov rax, qword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov r10d, 0xbd437d9d
nop
mov ecx, dword [0x141dc6418]
mov edx, dword [0x141dc641c]
add edx, ecx
add edx, 0xee4a493e
and edx, 0x26883000
lea rcx, [rax + r14]
cmp rbx, rcx
cmova rcx, rbx
cmp edx, 0x54c69a32
je 0x140046050
mov rbx, rcx
mov r14, qword [rsp + 0x20]
jmp 0x140045edb
mov eax, dword [0x141dc6340]
and eax, dword [0x141dc6344]
and eax, 0xd1d32c93
xor eax, 0xa1579ce5
add eax, 0xc14d7d06
cmp eax, 0xfa1c3e67
ja 0x140046090
cmp rcx, 0x29
jae 0x14004651f
lea r8, [r8*4]
add r8, r13
lea r10, [r14 + rcx*4]
nop dword [rax + rax]
mov eax, dword [0x141dc6360]
and eax, dword [0x141dc6364]
imul eax, eax, 0x1622a710
add eax, 0x3b3508a1
xor eax, 0xca873af
cmp eax, 0x20ac068b
jb 0x1400460d0
lea rax, [rcx + 1]
mov qword [rsp + 0x20], rax
nop dword [rax]
mov eax, dword [0x141dc6368]
or eax, dword [0x141dc636c]
add eax, 0x75b94b00
and eax, 0x37b415ef
cmp eax, 0x59d13096
je 0x140046100
xor edi, edi
xor r12d, r12d
xor ebx, ebx
mov qword [rsp + 0x28], rcx
nop dword [rax]
mov eax, dword [0x141dc6370]
imul eax, dword [str..x]
cmp eax, 0x775c42f3
je 0x140046130
nop word cs:[rax + rax]
cmp r13, r8
je 0x140046381
mov r15, r12
mov eax, dword [0x141dc6378]
or eax, dword [0x141dc637c]
imul eax, eax, 0x447ba0fb
xor eax, 0x3769ec3f
add eax, 0x4ebee219
cmp eax, 0xcb88b51e
ja 0x14004615c
lea r11, [r13 + 4]
mov eax, dword [0x141dc6380]
imul eax, dword [0x141dc6384]
or eax, 0x85d94c56
xor eax, 0xdaa6face
cmp eax, 0xb6d33044
ja 0x140046183
lea r12, [r15 + 1]
nop word cs:[rax + rax]
mov eax, dword [0x141dc6388]
xor eax, dword [0x141dc638c]
imul eax, eax, 0xfd9f1c92
add eax, 0x3cda6373
cmp eax, 0x2eb0881e
jb 0x1400461b0
mov ebp, dword [r13]
mov r13, r11
test rbp, rbp
je 0x140046150
mov eax, dword [0x141dc6390]
add eax, dword [0x141dc6394]
or eax, 0xcee04473
imul eax, eax, 0xc3d065db
or eax, 0x1c754670
cmp eax, 0x47464b48
ja 0x1400461de
xor r9d, r9d
xor r13d, r13d
mov rsi, r14
nop word [rax + rax]
mov eax, dword [0x141dc6398]
xor edx, edx
div dword [0x141dc639c]
imul rax, rax, 0x639e335f
shr rax, 0x3c
imul eax, eax, 0x3f8682a4
xor eax, 0x8717fa56
cmp eax, 0x61e33f6b
jb 0x140046210
lea rax, [r15 + r13]
cmp rax, 0x28
jae 0x140046468
inc r13
test dil, dil
jne 0x14004624c
mov edx, dword [rsi]
add rsi, 4
mov ecx, dword [rsp + rax*4 + 0x40]
add r9, rcx
imul rdx, rbp
add rdx, r9
mov r9, rdx
shr r9, 0x20
mov dword [rsp + rax*4 + 0x40], edx
cmp rsi, r10
jne 0x140046210
mov rcx, qword [rsp + 0x28]
mov rsi, rcx
test r9, r9
mov r13d, 0xf893e767
je 0x140046347
nop dword [rax]
mov eax, dword [0x141dc63a0]
xor edx, edx
div dword [0x141dc63a4]
add eax, 0x4298b0c2
imul rax, rax, 0x6a4a70a1
shr rax, 0x3e
or eax, 0xf0a9eebe
cmp eax, 0x4bb97c84
jb 0x140046290
lea rax, [r15 + rcx]
nop
mov edx, dword [0x141dc63a8]
xor edx, dword [0x141dc63ac]
xor edx, 0x5ab56323
imul edx, edx, 0x155e0276
add edx, 0xc2d045a7
cmp edx, 0x2ccc1e52
jb 0x1400462c0
cmp rax, 0x28
jae 0x1400464df
mov edx, dword [0x141dc63b8]
sub edx, dword [0x141dc63bc]
or edx, 0x49c6686f
imul rdx, r13
shr rdx, 0x3c
and edx, 0xfffffff9
cmp edx, 0x9bcb0611
ja 0x1400462f0
mov dword [rsp + rax*4 + 0x40], r9d
nop word [rax + rax]
mov eax, dword [0x141dc63c0]
or eax, dword [0x141dc63c4]
and eax, 0xb040b860
add eax, 0xa87deba2
xor eax, 0x572a921
cmp eax, 0x52103551
jb 0x140046320
mov rsi, qword [rsp + 0x20]
mov eax, dword [0x141dc63b0]
xor edx, edx
div dword [str.0T_r]
add eax, 0x3f20e14d
xor eax, 0x4f3344dd
add eax, 0xfae67cea
lea rdx, [rsi + r15]
cmp rbx, rdx
cmova rdx, rbx
cmp eax, 0xcd883679
jae 0x140046347
mov r13, r11
mov rbx, rdx
jmp 0x140046130
mov eax, dword [0x141dc6440]
or eax, dword [str.d__]
xor eax, 0x2380080
or eax, 0xdc81f777
xor eax, 0x2feb3b4b
cmp eax, 0x871f1716
jae 0x1400463bd
lea rdx, [rsp + 0x40]
mov r8d, 0xa0
mov rcx, r14
call sub.VCRUNTIME140.dll_memcpy
mov qword [r14 + 0xa0], rbx
lea rdi, [rsp + 0x40]
nop word cs:[rax + rax]
mov esi, dword [0x141dc6448]
imul esi, dword [0x141dc644c]
or esi, 0xa984d856
and esi, 0xabe4d97e
mov r8d, 0xa0
mov rcx, r14
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov qword [r14 + 0xa0], rbx
cmp esi, 0x650b1d1
je 0x1400463d0
mov rax, r14
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
mov eax, dword [0x141dc63c8]
xor edx, edx
div dword [0x141dc63cc]
xor eax, 0x109d5bc8
imul rax, rax, 0x141418e7
shr rax, 0x3c
or eax, 0xe021abb6
cmp eax, 0xa515c02e
jae 0x1400464a0
ud2
mov eax, dword [0x141dc63d0]
add eax, dword [0x141dc63d4]
or eax, 0xfedffb7f
ud2
xor eax, eax
test al, al
je 0x1400464e7
ud2
xor eax, eax
nop dword [rax]
ud2
mov eax, dword [0x141dc63e8]
xor edx, edx
div dword [0x141dc63ec]
add eax, 0xbc659e3f
xor eax, 0x843193b9
cmp eax, 0xfd65c911
jbe 0x14004658b
jmp 0x1400465b9
mov eax, dword [0x141dc6348]
imul eax, dword [0x141dc634c]
xor eax, 0x25888e8d
add eax, 0x9ca08151
cmp eax, 0x31dc27b9
jb 0x14004655d
mov eax, dword [0x141dc6350]
and eax, dword [0x141dc6354]
and eax, 0x20190
imul eax, eax, 0x1a8e19ac
ud2
ud2
ud2
mov eax, dword [str._E_ra]
add eax, dword [0x141dc63f4]
imul eax, eax, 0x3f430eac
xor eax, 0x3bbc8dbb
mov ecx, 0xbca9c371
imul rcx, rax
shr rcx, 0x3f
ud2
ud2