Function at 0x1400451c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rbx, r8
mov r14, rdx
mov rsi, rcx
mov eax, dword [0x141dc6c48]
mov ecx, dword [0x141dc6c4c]
add eax, ecx
add eax, 0xef5017e6
and eax, 0x4f660a3c
add eax, 0xeee01d80
cmp eax, 0x57b1cae1
jbe 0x14004520a
mov eax, 0x310
call fcn.1400f07c0
sub rsp, rax
xor ecx, ecx
nop dword [rax]
mov eax, 0x310
call fcn.1400f07c0
sub rsp, rax
mov rdi, rsp
test cl, cl
jne 0x140045210
sub rsp, 0x20
mov r8d, 0x30d
mov rcx, rdi
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
mov eax, 0x89658f2b
nop word cs:[rax + rax]
mov ecx, dword [0x141dc6c50]
imul ecx, dword [0x141dc6c54]
imul rcx, rax
shr rcx, 0x3d
add ecx, 0x3cdcf7b3
or ecx, 0x991c2850
cmp ecx, 0x10f6ac40
je 0x140045250
xor r9d, r9d
mov r10, rbx
mov r11, r14
nop word cs:[rax + rax]
mov rcx, r10
sub r10, 1
jb 0x140045c09
mov r8, r11
inc r11
mov eax, dword [0x141dc6c58]
xor edx, edx
div dword [0x141dc6c5c]
mov eax, dword [str.je]
sub eax, dword [0x141dc6c64]
imul eax, eax, 0xd74daca7
and eax, 0x1687df9e
imul eax, eax, 0xd912917e
cmp eax, 0xa35f1f34
ja 0x1400452b1
movzx eax, byte [r8]
nop dword [rax]
test r9b, r9b
jne 0x1400452e0
cmp al, 0x30
je 0x140045290
xor r10d, r10d
xor r9d, r9d
nop
movzx eax, byte [r8]
lea r11d, [rax - 0x30]
cmp r11b, 9
ja 0x140045452
mov eax, dword [0x141dc6c68]
xor edx, edx
div dword [0x141dc6c6c]
mov eax, dword [0x141dc6c70]
sub eax, dword [str..Ow._]
add eax, 0xac822f14
and eax, 0x6520b706
cmp eax, 0xfcdf586b
je 0x140045310
dec rcx
inc r8
nop word cs:[rax + rax]
mov eax, dword [0x141dc6c78]
sub eax, dword [0x141dc6c7c]
xor eax, 0x48ee7376
add eax, 0xc4eed32f
cmp eax, 0xd2e6fee5
jb 0x140045340
cmp r9, 0x2ff
ja 0x140045390
mov eax, dword [0x141dc6c80]
mov edx, dword [0x141dc6c84]
add eax, edx
add eax, 0x97df41c7
cmp eax, 0x8faab172
jae 0x1400453a0
jmp 0x1400453aa
mov rax, r9
jmp 0x1400453ea
mov byte [rdi + r9 + 8], r11b
test r10b, r10b
je 0x1400453c0
mov byte [rdi + r9 + 8], r11b
jmp 0x1400453a0
mov rax, qword [rdi]
nop word cs:[rax + rax]
mov edx, dword [0x141dc6c88]
sub edx, dword [0x141dc6c8c]
imul edx, edx, 0xc9cdb040
cmp edx, 0x4ad2ee08
je 0x1400453d0
mov edx, dword [0x141dc6c90]
imul edx, dword [0x141dc6c94]
imul edx, edx, 0xa72c6a42
xor edx, 0xa7c3ca5b
imul rdx, rdx, 0x2d65447f
shr rdx, 0x3c
cmp edx, 0x1543fbf3
jbe 0x140045420
lea rdx, [rax + 1]
mov qword [rdi], rdx
nop dword [rax]
mov edx, dword [0x141dc6c98]
imul edx, dword [0x141dc6c9c]
imul edx, edx, 0x1ae98510
lea r9, [rax + 1]
mov qword [rdi], r9
cmp edx, 0xf32febd4
ja 0x140045420
test rcx, rcx
jne 0x1400452f0
xor ecx, ecx
jmp 0x1400457f4
cmp al, 0x2e
jne 0x1400457f4
lea rdx, [r8 + 1]
lea r10, [rcx - 1]
nop word cs:[rax + rax]
mov eax, dword [0x141dc6ca0]
sub eax, dword [0x141dc6ca4]
xor eax, 0xa3d2fa4
add eax, 0x69ced16
cmp eax, 0x33981909
jb 0x140045470
xor eax, eax
nop
test al, al
jne 0x140045490
test r9, r9
je 0x1400454a4
mov rcx, r10
mov rax, rdx
jmp 0x140045547
lea r11, [r8 + rcx]
nop dword [rax + rax]
mov eax, dword [0x141dc6ca8]
imul eax, dword [0x141dc6cac]
xor eax, 0xe1d7444
add eax, 0xbd77cbb6
xor eax, 0x53c2066d
cmp eax, 0xa775c916
jb 0x1400454b0
mov r15d, 0x863c83cd
mov r12, r10
nop dword [rax]
cmp rcx, 1
je 0x1400457e1
mov eax, dword [0x141dc6cb0]
xor eax, dword [0x141dc6cb4]
shr eax, 1
imul rax, r15
shr rax, 0x3c
imul eax, eax, 0x16afc858
and eax, 0x75443c90
cmp eax, 0x2c03c
je 0x1400454ea
mov eax, dword [0x141dc6cb8]
sub eax, dword [0x141dc6cbc]
xor eax, 0x205cb99a
imul eax, eax, 0x9cc4245
cmp eax, 0xdd535132
je 0x140045512
inc rdx
dec rcx
lea rax, [r8 + 1]
dec r12
cmp byte [r8 + 1], 0x30
mov r8, rax
je 0x1400454e0
cmp rcx, 8
jb 0x140045679
movabs rdx, 0xcfcfcfcfcfcfcfd0
movabs r8, 0x8080808080808080
movabs r11, 0x4646464646464646
xor r15d, r15d
nop word cs:[rax + rax]
lea r12, [r9 + 8]
cmp r12, 0x300
jae 0x140045682
nop word cs:[rax + rax]
mov r12d, dword [0x141dc6cf0]
add r12d, dword [0x141dc6cf4]
and r12d, 0xb01d02c4
xor r12d, 0xa2bf7e65
cmp r12d, 0x829dffd5
jb 0x1400455a0
mov r12, qword [rax]
lea r13, [r12 + r11]
add r12, rdx
nop
test r15b, r15b
jne 0x1400455d0
or r13, r12
test r13, r8
jne 0x140045682
mov r13d, dword [0x141dc6cf8]
sub r13d, dword [0x141dc6cfc]
imul r13, r13, 0x673cae6f
shr r13, 0x3d
imul r13d, r13d, 0xf65d3a0f
or r13d, 0x1dfe5ae6
cmp r13d, 0x405469b6
je 0x1400455e1
cmp r9, 0x301
jae 0x14004595f
mov qword [rdi + r9 + 8], r12
mov r9, qword [rdi]
add r9, 8
mov qword [rdi], r9
add rcx, 0xfffffffffffffff8
add rax, 8
nop word cs:[rax + rax]
mov r12d, dword [0x141dc6d08]
mov r13d, dword [0x141dc6d0c]
add r12d, r13d
add r12d, 0xa0398a5a
or r12d, 0xca459ef5
and r12d, 0xda7fbff5
cmp r12d, 0xcbbff293
je 0x140045640
cmp rcx, 7
ja 0x140045580
test rcx, rcx
je 0x1400457da
mov r11, rax
jmp 0x140045699
test rcx, rcx
je 0x1400457e4
movzx r8d, byte [r11]
add r8b, 0xd0
cmp r8b, 9
ja 0x1400457e6
nop dword [rax + rax]
mov eax, dword [0x141dc6cc0]
mov edx, dword [0x141dc6cc4]
add eax, edx
add eax, 0xe8ebc869
and eax, 0x10608204
cmp eax, 0x71cdba36
ja 0x1400456b0
cmp r9, 0x2ff
ja 0x140045730
mov eax, dword [0x141dc6cc8]
xor edx, edx
div dword [0x141dc6ccc]
or eax, 0x22088532
and eax, 0x62989533
cmp eax, 0x41d94e9b
ja 0x1400456d8
mov eax, dword [0x141dc6cd0]
xor eax, dword [0x141dc6cd4]
imul rax, rax, 0x667105a9
shr rax, 0x3e
imul eax, eax, 0x7f9ee357
xor eax, 0x8d76c744
cmp eax, 0xa19adb81
jbe 0x140045740
jmp 0x140045769
mov rax, r9
jmp 0x140045773
mov eax, dword [0x141dc6cd8]
xor edx, edx
div dword [0x141dc6cdc]
or eax, 0xb52aeba6
xor eax, 0xf0b68220
add eax, 0x25537763
mov byte [rdi + r9 + 8], r8b
cmp eax, 0xcad95668
jbe 0x140045770
mov byte [rdi + r9 + 8], r8b
jmp 0x140045740
mov rax, qword [rdi]
dec rcx
inc r11
mov edx, dword [0x141dc6ce0]
sub edx, dword [0x141dc6ce4]
or edx, 0xf917e806
cmp edx, 0x87c9eb77
je 0x1400457d1
nop word cs:[rax + rax]
mov edx, dword [0x141dc6ce8]
and edx, dword [0x141dc6cec]
xor edx, 0x2ad0186
and edx, 0x3aad2587
add edx, 0x303545d5
lea r9, [rax + 1]
mov qword [rdi], r9
cmp edx, 0xf911358b
jbe 0x140045690
lea rdx, [rax + 1]
mov qword [rdi], rdx
jmp 0x1400457a0
xor ecx, ecx
mov r11, rax
jmp 0x1400457e6
xor r9d, r9d
xor ecx, ecx
mov eax, ecx
sub eax, r10d
mov dword [rdi + 0x308], eax
mov r8, r11
test r9, r9
je 0x14004587e
nop dword [rax]
mov eax, dword [0x141dc6d10]
and eax, dword [0x141dc6d14]
imul eax, eax, 0x7e5193a7
add eax, 0x444eab10
or eax, 0x22276ed7
cmp eax, 0x9e56b793
ja 0x140045800
cmp rbx, rcx
jb 0x14004593b
sub rbx, rcx
jne 0x140045886
xor eax, eax
mov edx, dword [rdi + 0x308]
add edx, eax
sub r9, rax
mov qword [rdi], r9
lea eax, [r9 + rdx]
mov dword [rdi + 0x308], eax
cmp r9, 0x300
jbe 0x140045991
mov eax, dword [0x141dc6d40]
add eax, dword [0x141dc6d44]
and eax, 0x8b6067ce
add eax, 0x5aedd4bf
cmp eax, 0xdc10a28e
jbe 0x140045c9a
jmp 0x140045cc4
xor r9d, r9d
jmp 0x140045991
add rbx, r14
nop dword [rax]
mov eax, dword [0x141dc6d20]
imul eax, dword [0x141dc6d24]
or eax, 0xcd0847c5
imul eax, eax, 0xd23071ff
add eax, 0x8b5cb0
cmp eax, 0xe459beb4
ja 0x140045890
xor eax, eax
jmp 0x1400458cc
dec rbx
cmp rbx, r14
je 0x140045833
mov edx, dword [0x141dc6d30]
imul edx, dword [0x141dc6d34]
add edx, 0x1c84c47c
and edx, 0x30b246d4
imul rdx, rdx, 0x258dd75f
shr rdx, 0x38
cmp edx, 0x70a85814
ja 0x1400458cc
movzx edx, byte [rbx - 1]
cmp edx, 0x2e
je 0x1400458c0
cmp edx, 0x30
jne 0x140045833
nop word [rax + rax]
mov edx, dword [0x141dc6d38]
and edx, dword [0x141dc6d3c]
or edx, 0xcbaf8563
imul edx, edx, 0xe7d206f2
and edx, 0xa93fd0d2
cmp edx, 0xa48fff6
ja 0x140045910
inc rax
jmp 0x1400458c0
ud2
ud2
lea r10, [r8 + 1]
lea r11, [rcx - 1]
nop dword [rax]
mov eax, dword [0x141dc6d18]
mov edx, dword [0x141dc6d1c]
add eax, edx
add eax, 0x877c0763
cmp eax, 0x1a030cd5
jb 0x1400459a0
test rcx, rcx
je 0x140045be0
mov eax, 0x8527e4e7
nop dword [rax + rax]
mov edx, dword [0x141dc6d58]
xor edx, dword [0x141dc6d5c]
shr edx, 1
imul rdx, rax
shr rdx, 0x3c
imul edx, edx, 0xe4c306c2
cmp edx, 0x68dd9366
jb 0x1400459d0
movzx ebx, byte [r8]
nop dword [rax + rax]
mov eax, dword [0x141dc6d60]
xor edx, edx
div dword [0x141dc6d64]
imul eax, eax, 0x93e9a100
xor eax, 0x84ceb820
cmp eax, 0x3cdd0954
jb 0x140045a00
or ebx, 0x20
cmp ebx, 0x65
jne 0x140045be0
nop dword [rax]
mov eax, dword [0x141dc6d70]
or eax, dword [0x141dc6d74]
add eax, 0x89d90eb2
or eax, 0x9fdfb4ff
cmp eax, 0x42e3d3bb
jb 0x140045a30
test r11, r11
je 0x140045bb3
add r8, 2
add rcx, 0xfffffffffffffffe
movzx eax, byte [r10]
nop word cs:[rax + rax]
mov edx, dword [0x141dc6d78]
add edx, dword [0x141dc6d7c]
imul edx, edx, 0xda7998f4
and edx, 0x470e6074
cmp edx, 0xffdb1abe
ja 0x140045a70
mov edx, dword [0x141dc6d80]
sub edx, dword [0x141dc6d84]
imul rdx, rdx, 0x36a6943d
shr rdx, 0x3d
or edx, 0x7c7d50f8
cmp edx, 0x40dd8248
je 0x140045a90
cmp eax, 0x2d
je 0x140045abf
cmp eax, 0x2b
jne 0x140045ad0
mov r10, r8
mov r11, rcx
test rcx, rcx
je 0x140045bc1
nop
mov ecx, dword [0x141dc6d88]
imul ecx, dword [0x141dc6d8c]
add ecx, 0xc2bc617c
xor ecx, 0xe6258008
or ecx, 0x8982b96
cmp ecx, 0x121afc27
je 0x140045ad0
xor ecx, ecx
xor edx, edx
nop dword [rax + rax]
movzx r8d, byte [r10]
add r8b, 0xd0
cmp r8b, 9
ja 0x140045bbd
mov ebx, dword [0x141dc6d90]
add ebx, dword [0x141dc6d94]
and ebx, 0x998780e2
imul ebx, ebx, 0x4b698f5f
imul rbx, rbx, 0x64458eb1
shr rbx, 0x3b
cmp ebx, 0x2334451b
ja 0x140045b12
dec r11
mov ebx, dword [0x141dc6d98]
imul ebx, dword [0x141dc6d9c]
and ebx, 0x40685899
cmp ebx, 0xe9b5ad7
je 0x140045b40
inc r10
lea ebx, [rdx + rdx]
lea r14d, [rbx + rbx*4]
nop word cs:[rax + rax]
mov ebx, dword [0x141dc6da0]
or ebx, dword [0x141dc6da4]
imul r12d, ebx, 0x69943772
movzx r15d, r8b
add r15d, r14d
cmp edx, 0x10000
mov ebx, ecx
cmovl ebx, r15d
cmovge r15d, edx
cmp r12d, 0xaa6f6b20
je 0x140045b70
mov ecx, ebx
mov edx, r15d
test r11, r11
jne 0x140045b00
jmp 0x140045bc3
xor ecx, ecx
add dword [rdi + 0x308], ecx
jmp 0x140045be0
mov ebx, ecx
jmp 0x140045bc3
xor ebx, ebx
mov ecx, ebx
neg ecx
cmp eax, 0x2d
cmovne ecx, ebx
add dword [rdi + 0x308], ecx
nop word cs:[rax + rax]
mov eax, dword [0x141dc6d68]
add eax, dword [0x141dc6d6c]
imul eax, eax, 0x23453105
xor eax, 0x51b9f710
add eax, 0x59a74bf3
cmp eax, 0xa7261181
jb 0x140045be0
cmp r9, 0x12
ja 0x140045c29
lea rcx, [r9 + rdi]
add rcx, 8
mov r8d, 0x13
sub r8, r9
sub rsp, 0x20
xor edx, edx
call sub.VCRUNTIME140.dll_memset
add rsp, 0x20
xor eax, eax
test al, al
je 0x140045c50
sub rsp, 0x20
mov r8d, 0x310
mov rcx, rsi
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
nop dword [rax + rax]
mov eax, dword [0x141dc6da8]
imul eax, dword [0x141dc6dac]
or eax, 0xe7e8ee57
imul ebx, eax, 0x255e7c01
sub rsp, 0x20
mov r8d, 0x310
mov rcx, rsi
mov rdx, rdi
call sub.VCRUNTIME140.dll_memcpy
add rsp, 0x20
cmp ebx, 0xd6f79fa6
je 0x140045c50
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141dc6d48]
or eax, dword [0x141dc6d4c]
imul eax, eax, 0xf3fc9301
add eax, 0x7ce6d912
and eax, 0x7a9ba7d6
mov byte [rdi + 0x30c], 1
cmp eax, 0x875bb7e0
jbe 0x140045ccd
mov byte [rdi + 0x30c], 1
jmp 0x140045c9a
mov qword [rdi], 0x300
nop word cs:[rax + rax]
mov eax, dword [0x141dc6d50]
imul eax, dword [0x141dc6d54]
xor eax, 0x4a0010a8
or eax, 0x35d74f57
imul eax, eax, 0x9d5e8a49
cmp eax, 0x60b2080e
ja 0x140045ce0
mov r9d, 0x300
jmp 0x140045991