Function at 0x1400474b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
mov rsi, rdx
mov rbx, rcx
mov eax, dword [0x141dc5350]
mov ecx, dword [0x141dc5354]
add eax, ecx
add eax, 0x3de1c9fd
or eax, 0x17879b05
cmp eax, 0xe3b53367
ja 0x14004755a
mov ecx, dword [0x141dc5358]
sub ecx, dword [0x141dc535c]
xor ecx, 0x225fa530
add ecx, 0x6d1b5deb
and ecx, 0x20a03f0b
mov eax, 0xa0
call fcn.1400eeec0
sub rsp, rax
mov r9, rsp
xorps xmm0, xmm0
movups xmmword [r9 + 0x90], xmm0
movups xmmword [r9 + 0x80], xmm0
movups xmmword [r9 + 0x70], xmm0
movups xmmword [r9 + 0x60], xmm0
movups xmmword [r9 + 0x50], xmm0
movups xmmword [r9 + 0x40], xmm0
movups xmmword [r9 + 0x30], xmm0
movups xmmword [r9 + 0x20], xmm0
movups xmmword [r9 + 0x10], xmm0
movups xmmword [r9], xmm0
cmp ecx, 0xf657bd79
jbe 0x14004759f
mov eax, 0xa0
call fcn.1400eeec0
sub rsp, rax
mov rax, rsp
xorps xmm0, xmm0
movups xmmword [rax + 0x90], xmm0
movups xmmword [rax + 0x80], xmm0
movups xmmword [rax + 0x70], xmm0
movups xmmword [rax + 0x60], xmm0
movups xmmword [rax + 0x50], xmm0
movups xmmword [rax + 0x40], xmm0
movups xmmword [rax + 0x30], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax], xmm0
jmp 0x1400474ea
mov r11, qword [rbx + 0xa0]
nop word cs:[rax + rax]
mov eax, dword [0x141dc5360]
xor edx, edx
div dword [0x141dc5364]
shr eax, 2
imul rax, rax, 0x2c76672f
shr rax, 0x39
and eax, 3
cmp eax, 0x68314c0d
je 0x1400475b0
cmp r11, r8
mov qword [rbp - 0x18], rbx
jae 0x1400478d1
nop word cs:[rax + rax]
mov eax, dword [0x141dc5400]
xor eax, dword [0x141dc5404]
and eax, 0xbcac9616
cmp eax, 0xc3bf72b6
je 0x1400475f0
cmp r11, 0x29
jae 0x140047cf9
lea rcx, [rbx + r11*4]
lea rax, [rsi + r8*4]
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x10], r8
lea rax, [r8 + 1]
mov qword [rbp - 8], rax
xor r14d, r14d
mov r15d, 0x81a11dfd
mov r10, rbx
xor edi, edi
mov r8, rsi
nop dword [rax + rax]
mov eax, dword [0x141dc5418]
xor edx, edx
div dword [0x141dc541c]
imul eax, eax, 0xe505cfd
and eax, 0x3008ce84
cmp eax, 0xa94e3a63
ja 0x140047640
mov eax, dword [0x141dc5420]
add eax, dword [0x141dc5424]
and eax, 0xcd7058e3
xor eax, 0x5d3c6e3
add eax, 0x9f92b918
cmp eax, 0x6cbfdeff
ja 0x140047660
cmp r10, rcx
je 0x140047c26
lea r12, [r10 + 4]
mov eax, dword [0x141dc5428]
imul eax, dword [0x141dc542c]
imul eax, eax, 0x4b11bf60
add eax, 0xa05931c0
xor eax, 0xc986e2e0
cmp eax, 0x6dec971a
ja 0x14004768f
inc r14
mov esi, dword [r10]
mov r10, r12
test rsi, rsi
je 0x140047660
lea r13, [r14 - 1]
mov eax, dword [0x141dc5430]
xor edx, edx
div dword [0x141dc5434]
mov qword [rbp], r8
nop word [rax + rax]
mov eax, dword [0x141dc5438]
xor edx, edx
div dword [0x141dc543c]
imul eax, eax, 0xc5228217
or eax, 0x7dda8117
add eax, 0x1b62e57b
cmp eax, 0xa914f378
ja 0x1400476e0
xor r8d, r8d
xor edx, edx
mov r10, qword [rbp]
nop
lea rbx, [rdx + r13]
cmp rbx, 0x28
jae 0x140047d53
inc rdx
mov eax, dword [r10]
add r10, 4
nop dword [rax + rax]
mov r11d, dword [0x141dc5470]
or r11d, dword [0x141dc5474]
imul r11d, r11d, 0xe13326da
xor r11d, 0x5942029c
and r11d, 0xd952c29e
cmp r11d, 0xd0fc8b3b
ja 0x140047730
mov r11d, dword [r9 + rbx*4]
imul rax, rsi
add r8, rax
mov rax, r8
add rax, r11
mov r8d, dword [0x141dc5478]
xor r8d, dword [0x141dc547c]
imul r8d, r8d, 0x1daa9aa6
cmp r8d, 0x891ff7c9
jne 0x14004778f
mov dword [r9 + rbx*4], eax
mov r8, rax
shr r8, 0x20
nop word cs:[rax + rax]
mov r11d, dword [0x141dc5480]
xor r11d, dword [0x141dc5484]
add r11d, 0xa49be867
or r11d, 0x8e7b9fa6
imul r11, r15
shr r11, 0x3e
mov dword [r9 + rbx*4], eax
cmp r11d, 0x1af183f1
ja 0x1400477a0
cmp r10, qword [rbp - 0x20]
jne 0x140047710
mov rdx, qword [rbp - 0x10]
mov rax, rdx
test r8, r8
je 0x140047890
mov eax, dword [0x141dc5440]
and eax, dword [0x141dc5444]
xor eax, 0x16a05
and eax, 0x7191ea25
imul rax, rax, 0x138c5daf
shr rax, 0x3b
cmp eax, 0x18825138
ja 0x1400477eb
lea rax, [rdx + r13]
cmp rax, 0x28
jae 0x140047c88
mov edx, dword [0x141dc5450]
xor edx, dword [0x141dc5454]
imul edx, edx, 0xe6a60801
cmp edx, 0x1f857673
jne 0x140047840
mov dword [r9 + rax*4], r8d
nop
mov edx, dword [0x141dc5458]
and edx, dword [0x141dc545c]
or edx, 0x5b211d12
mov dword [r9 + rax*4], r8d
cmp edx, 0xe158b04b
je 0x140047840
nop
mov eax, dword [0x141dc5460]
sub eax, dword [0x141dc5464]
add eax, 0x5bd0fcf4
or eax, 0xb98fc23
add eax, 0x73779e2c
cmp eax, 0xb92ef083
jbe 0x140047860
mov rax, qword [rbp - 8]
nop word cs:[rax + rax]
mov edx, dword [0x141dc5448]
add edx, dword [0x141dc544c]
imul r8d, edx, 0x320f1804
add r8d, 0xeb01c
lea rdx, [rax + r13]
cmp rdi, rdx
cmova rdx, rdi
cmp r8d, 0xa4ef78b6
jae 0x140047890
mov r10, r12
mov rdi, rdx
mov rbx, qword [rbp - 0x18]
mov rsi, qword [rbp]
jmp 0x140047638
cmp r11, 0x29
jae 0x140047c5a
lea r10, [rsi + r8*4]
mov eax, dword [0x141dc5370]
xor edx, edx
div dword [0x141dc5374]
lea rax, [rbx + r11*4]
mov qword [rbp - 0x20], rax
nop word cs:[rax + rax]
mov eax, dword [str.r_Y0]
or eax, dword [0x141dc537c]
imul eax, eax, 0x93dc77f1
xor eax, 0xddf5a455
imul rax, rax, 0x2f6d7875
shr rax, 0x3c
cmp eax, 0x6c6c6834
ja 0x140047900
lea rax, [r11 + 1]
mov qword [rbp - 8], rax
mov r15d, 0xc2c9bf5d
xor r13d, r13d
xor edi, edi
nop dword [rax]
mov eax, dword [0x141dc5380]
imul eax, dword [0x141dc5384]
and eax, 0xc0010035
imul eax, eax, 0xbe0b7491
cmp eax, 0xbed7eea6
ja 0x140047940
nop
cmp rsi, r10
je 0x140047c22
mov r12, r13
mov ecx, dword [0x141dc5388]
sub ecx, dword [0x141dc538c]
and ecx, 0x9908701f
xor ecx, 0xa10689b6
imul rcx, r15
shr rcx, 0x3f
cmp ecx, 0x778dc10b
je 0x14004796c
lea r8, [rsi + 4]
nop dword [rax + rax]
mov ecx, dword [0x141dc5390]
or ecx, dword [0x141dc5394]
xor ecx, 0x583c802a
and ecx, 0x5a3cd0af
cmp ecx, 0x60cfd17d
je 0x1400479a0
lea r13, [r12 + 1]
mov ebx, dword [rsi]
nop word [rax + rax]
mov eax, dword [0x141dc5398]
xor edx, edx
div dword [0x141dc539c]
add eax, 0x8fc4cbc1
shr eax, 3
imul rax, rax, 0x245a1a4f
shr rax, 0x3a
imul eax, eax, 0x8a0b6e2
cmp eax, 0x6dd7a92f
ja 0x1400479d0
mov rsi, r8
test rbx, rbx
je 0x140047960
mov qword [rbp - 0x10], r11
mov qword [rbp], r8
xor eax, eax
test al, al
jne 0x140047a12
xor eax, eax
xor edx, edx
mov rsi, qword [rbp - 0x18]
mov ecx, dword [0x141dc53a0]
sub ecx, dword [0x141dc53a4]
imul r8, rcx, 0x19d2bf07
shr r8, 0x20
sub ecx, r8d
shr ecx, 1
add ecx, r8d
shr ecx, 0x1b
add ecx, 0xc5585d70
cmp ecx, 0x4f63773b
jb 0x140047a20
lea rcx, [rdx + r12]
cmp rcx, 0x28
jae 0x140047cb4
nop
mov r8d, dword [0x141dc53d8]
xor r8d, dword [0x141dc53dc]
add r8d, 0x55af918c
or r8d, 0x31357cd7
imul r14, r8, 0x1b77afc1
shr r14, 0x20
sub r8d, r14d
shr r8d, 1
add r8d, r14d
shr r8d, 0x1f
cmp r8d, 0x8c4efc9e
ja 0x140047a60
inc rdx
mov r14d, dword [rsi]
add rsi, 4
imul r14, rbx
mov r8d, dword [r9 + rcx*4]
nop
mov r11d, dword [0x141dc53e0]
add r11d, dword [0x141dc53e4]
imul r11d, r11d, 0x7bbd64b4
add r11d, 0x3a457f30
and r11d, 0xc44317f0
cmp r11d, 0x18ece128
ja 0x140047ab0
add rax, r8
mov r8, rax
add r8, r14
xor eax, eax
test al, al
je 0x140047aef
mov dword [r9 + rcx*4], r8d
mov rax, r8
shr rax, 0x20
nop word cs:[rax + rax]
mov r11d, dword [0x141dc53e8]
xor r11d, dword [0x141dc53ec]
or r11d, 0x109ac514
and r11d, 0x90dbf514
add r11d, 0xb3f36553
mov dword [r9 + rcx*4], r8d
cmp r11d, 0x52e2500
jb 0x140047b00
cmp rsi, qword [rbp - 0x20]
jne 0x140047a20
mov r11, qword [rbp - 0x10]
mov rcx, r11
test rax, rax
mov rsi, qword [rbp]
je 0x140047c0d
lea rcx, [r12 + r11]
cmp rcx, 0x28
jae 0x140047cd6
mov edx, dword [0x141dc53a8]
xor edx, dword [str.:n.3]
and edx, 0x4c99d823
add edx, 0x7e3676fd
imul rdx, rdx, 0x268ac983
shr rdx, 0x3b
cmp edx, 0xf577dfe2
ja 0x140047b5c
mov edx, dword [0x141dc53b0]
and edx, dword [0x141dc53b4]
add edx, 0x6ed86b9b
or edx, 0x101d0844
and edx, 0x105d0c4e
cmp edx, 0xfc18f869
ja 0x140047c1c
mov edx, dword [0x141dc53b8]
or edx, dword [0x141dc53bc]
or edx, 0x99b20395
add edx, 0x2c8c9d9c
or edx, 0x6455f3d3
mov dword [r9 + rcx*4], eax
cmp edx, 0x87fd6c95
ja 0x140047c1c
nop word [rax + rax]
mov eax, dword [0x141dc53c0]
add eax, dword [0x141dc53c4]
imul rax, rax, 0x1a862f5f
shr rax, 0x3c
imul eax, eax, 0xeede5b50
add eax, 0x4d5d569d
cmp eax, 0x1b9f4457
jb 0x140047be0
mov rcx, qword [rbp - 8]
add rcx, r12
cmp rdi, rcx
cmovbe rdi, rcx
jmp 0x140047940
mov dword [r9 + rcx*4], eax
jmp 0x140047bad
mov rbx, qword [rbp - 0x18]
sub rsp, 0x20
mov r8d, 0xa0
mov rcx, rbx
mov rdx, r9
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
mov qword [rbx + 0xa0], rdi
mov rax, rbx
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
ud2
ud2
mov eax, dword [0x141dc53f0]
xor eax, dword [0x141dc53f4]
imul eax, eax, 0x95e37f45
cmp eax, 0x53023dfa
jne 0x140047d79
jmp 0x140047d93
mov eax, dword [0x141dc53c8]
xor eax, dword [0x141dc53cc]
imul eax, eax, 0xe0778822
add eax, 0xec79ca4b
cmp eax, 0xc7d13c20
jbe 0x140047d55
jmp 0x140047d75
mov eax, dword [0x141dc5408]
xor eax, dword [0x141dc540c]
or eax, 0x770e586f
add eax, 0xa153a8a
and eax, 0x818404f0
cmp eax, 0x7588a54a
jae 0x140047d1d
ud2
xor eax, eax
nop
ud2
ud2
mov eax, dword [0x141dc53d0]
imul eax, dword [0x141dc53d4]
xor eax, 0x218742bd
add eax, 0x7a07c928
ud2
ud2
mov eax, dword [0x141dc53f8]
sub eax, dword [0x141dc53fc]
xor eax, 0xe7f03dbf
ud2
ud2