Function at 0x1400563b0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov r14, r8
mov r15, rdx
mov r13, rcx
xor eax, eax
nop
test al, al
jne 0x1400563d0
mov bpl, 1
cmp byte [r13 + 8], 0
jne 0x140056928
mov rbx, qword [r13]
mov qword [rsp + 0x38], r9
nop dword [rax + rax]
mov eax, dword [0x141dc8f18]
xor edx, edx
div dword [0x141dc8f1c]
imul rax, rax, 0x389f91cf
shr rax, 0x3c
imul eax, eax, 0xe1330d34
cmp eax, 0x81278a98
ja 0x1400563f0
mov r12d, dword [rbx + 0x34]
movzx eax, byte [r13 + 9]
test r12b, 4
jne 0x140056572
mov qword [rsp + 0x30], r13
mov ecx, 0xb1ced5ab
lea rdx, [0x141db7174]
lea r8, [0x141db7177]
nop word cs:[rax + rax]
mov r9d, dword [0x141dc8f20]
sub r9d, dword [0x141dc8f24]
imul r9, rcx
shr r9, 0x3e
imul r10d, r9d, 0xb28a8666
xor r12d, r12d
test al, al
sete r9b
mov r13, r8
cmove r13, rdx
cmp r10d, 0xda0ee0cb
ja 0x140056450
mov r12b, r9b
or r12, 2
nop dword [rax]
mov eax, dword [0x141dc8f28]
or eax, dword [0x141dc8f2c]
add eax, 0xacea1101
or eax, 0x1dc4976b
cmp eax, 0x5c3849db
je 0x140056490
mov rbp, qword [rbx + 0x20]
mov eax, dword [0x141dc8f30]
add eax, dword [0x141dc8f34]
mov rdi, qword [rbx + 0x28]
imul eax, eax, 0xc6a6cc66
or eax, 0xfffae7d5
cmp eax, 0x6be61001
jae 0x1400564e0
mov rcx, rbp
mov rdx, r13
mov r8, r12
call qword [rdi + 0x18]
nop
mov eax, dword [0x141dc8f38]
add eax, dword [0x141dc8f3c]
or eax, 0x7f3cc87
imul esi, eax, 0xfae74ba6
add esi, 0x78a8f738
mov rcx, rbp
mov rdx, r13
mov r8, r12
call qword [rdi + 0x18]
cmp esi, 0x89b09520
jb 0x1400564e0
mov bpl, 1
test al, al
jne 0x14005665b
mov r12, qword [rbx + 0x20]
mov eax, dword [0x141dc8f40]
and eax, dword [0x141dc8f44]
and eax, 0x4fb121b6
cmp eax, 0x8acb793a
je 0x140056520
mov r13, qword [rbx + 0x28]
mov eax, dword [0x141dc8f48]
xor edx, edx
div dword [0x141dc8f4c]
add eax, 0xc4f374af
xor eax, 0xff1acb34
mov ecx, 0xe2555fd1
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0x72bf6365
je 0x1400569bb
jmp 0x140056993
test al, al
jne 0x140056623
nop word [rax + rax]
mov eax, dword [0x141dc8f78]
sub eax, dword [0x141dc8f7c]
or eax, 0x94db3caf
add eax, 0xeed32c30
or eax, 0x175abe21
cmp eax, 0xc44ee708
jb 0x140056580
mov rcx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
lea rdx, [0x141db717b]
mov r8d, 3
call qword [rax + 0x18]
mov bpl, 1
test al, al
jne 0x1400568f0
nop word cs:[rax + rax]
mov eax, dword [0x141dc8f80]
xor edx, edx
div dword [0x141dc8f84]
imul eax, eax, 0x9d20b381
and eax, 0xc3cbaa63
cmp eax, 0xa3d0a85d
ja 0x1400565d0
mov r12d, dword [rbx + 0x34]
nop word cs:[rax + rax]
mov eax, dword [0x141dc8f88]
sub eax, dword [0x141dc8f8c]
and eax, 0x57049da6
imul eax, eax, 0x99b8cacc
add eax, 0x4a7cb1b
cmp eax, 0xe69cbdf5
ja 0x140056600
mov eax, dword [0x141dc8f90]
and eax, dword [0x141dc8f94]
imul rcx, rax, 0x3a3d9251
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1e
imul eax, eax, 0xe5b3d671
add eax, 0xae304814
cmp eax, 0xc4abaae6
ja 0x1400566f6
jmp 0x140056665
mov r13, qword [rsp + 0x30]
jmp 0x1400568f0
mov eax, dword [0x141dc8f98]
xor edx, edx
div dword [0x141dc8f9c]
mov ebp, eax
add ebp, 0xfb43a102
or ebp, 0xdf1bffb7
mov byte [rsp + 0x2f], 1
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rsp + 0x40], xmm0
lea rax, [rsp + 0x2f]
mov qword [rsp + 0x50], rax
mov eax, dword [rbx + 0x30]
movzx ecx, byte [rbx + 0x38]
mov dword [rsp + 0x94], r12d
mov dword [rsp + 0x90], eax
mov byte [rsp + 0x98], cl
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x80], rcx
lea rax, [0x141db7140]
mov qword [rsp + 0x88], rax
mov rdx, r15
mov r8, r14
call fcn.140056af0
cmp ebp, 0xc16c7942
jne 0x140056768
mov byte [rsp + 0x2f], 1
movups xmm0, xmmword [rbx + 0x20]
movaps xmmword [rsp + 0x40], xmm0
lea rax, [rsp + 0x2f]
mov qword [rsp + 0x50], rax
mov eax, dword [rbx + 0x30]
movzx ecx, byte [rbx + 0x38]
mov dword [rsp + 0x94], r12d
mov dword [rsp + 0x90], eax
mov byte [rsp + 0x98], cl
movups xmm0, xmmword [rbx]
movaps xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [rbx + 0x10]
movaps xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x80], rcx
lea rax, [0x141db7140]
mov qword [rsp + 0x88], rax
mov rdx, r15
mov r8, r14
call fcn.140056af0
jmp 0x140056665
test al, al
mov rdi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x110]
jne 0x140056880
mov eax, dword [0x141dc8fa0]
mov ecx, dword [0x141dc8fa4]
add eax, ecx
add eax, 0x9b7c5fe3
or eax, 0x2456c9a0
imul eax, eax, 0x1bd932e9
cmp eax, 0x9b94aeeb
jne 0x1400567b9
lea rdx, [0x141db7179]
lea rcx, [rsp + 0x40]
mov r8d, 2
call fcn.140056af0
lea rbx, [0x141db7179]
lea r14, [rsp + 0x40]
nop word cs:[rax + rax]
mov eax, dword [0x141dc8fa8]
sub eax, dword [0x141dc8fac]
or eax, 0x374995f0
imul esi, eax, 0xfc35049b
mov r8d, 2
mov rcx, r14
mov rdx, rbx
call fcn.140056af0
cmp esi, 0x6c8b1405
je 0x1400567d0
test al, al
jne 0x140056880
mov eax, dword [0x141dc8fb0]
add eax, dword [0x141dc8fb4]
or eax, 0xfffcfffe
add eax, 0x49129a37
cmp eax, 0xc888077c
jbe 0x14005682c
lea rdx, [rsp + 0x60]
mov rcx, rdi
call r15
lea rbx, [rsp + 0x60]
nop word cs:[rax + rax]
mov eax, dword [0x141dc8fb8]
or eax, dword [0x141dc8fbc]
imul esi, eax, 0x8a5c4553
mov rcx, rdi
mov rdx, rbx
call r15
cmp esi, 0xe9a39ee1
je 0x140056840
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x140056870
test al, al
je 0x140056948
nop dword [rax]
mov eax, dword [str.u_F]
xor eax, dword [0x141dc8fcc]
add eax, 0x9f5a508b
and eax, 0x3dbd5ace
cmp eax, 0xdfd11c4
jb 0x140056880
nop dword [rax]
mov eax, dword [0x141dc8fd0]
xor eax, dword [0x141dc8fd4]
and eax, 0x30380ee5
add eax, 0x7cead3dc
and eax, 0x9c3221d8
cmp eax, 0x26e2ca36
je 0x1400568a0
nop word cs:[rax + rax]
mov eax, dword [0x141dc8fd8]
or eax, dword [0x141dc8fdc]
or eax, 0x1b71ac3
xor eax, 0x928217c9
cmp eax, 0xf2f2d391
ja 0x1400568d0
mov bpl, 1
mov eax, 0xd3708bff
nop word cs:[rax + rax]
mov ecx, dword [0x141dc8fe0]
add ecx, dword [0x141dc8fe4]
xor ecx, 0x83d5d649
add ecx, 0x19fc0687
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0x225c11
ja 0x140056900
mov byte [r13 + 8], bpl
mov byte [r13 + 9], 1
mov rax, r13
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, qword [rsp + 0x80]
mov rax, qword [rsp + 0x88]
lea rdx, [0x141db717e]
mov r8d, 2
call qword [rax + 0x18]
mov ebp, eax
nop word [rax + rax]
mov eax, dword [0x141dc8fc0]
and eax, dword [0x141dc8fc4]
imul eax, eax, 0xcd922c95
add eax, 0x18a28de2
cmp eax, 0xde384bb2
ja 0x140056970
jmp 0x1400568f0
mov eax, dword [0x141dc8f50]
imul eax, dword [0x141dc8f54]
imul esi, eax, 0x45d4b564
mov rcx, r12
mov rdx, r15
mov r8, r14
call qword [r13 + 0x18]
cmp esi, 0xa7b444d9
jne 0x1400569ca
mov rcx, r12
mov rdx, r15
mov r8, r14
call qword [r13 + 0x18]
jmp 0x140056993
test al, al
jne 0x14005665b
nop word cs:[rax + rax]
mov eax, dword [0x141dc8f58]
xor eax, dword [0x141dc8f5c]
imul rcx, rax, 0x1d5a2821
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
imul eax, eax, 0xcf804011
add eax, 0x4edd33e9
cmp eax, 0x8a302f54
ja 0x1400569e0
mov rcx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
lea rdx, [0x141db7179]
mov r8d, 2
call qword [rax + 0x18]
test al, al
mov r13, qword [rsp + 0x30]
mov r14, qword [rsp + 0x38]
mov r15, qword [rsp + 0x110]
jne 0x1400568f0
mov eax, dword [0x141dc8f60]
xor edx, edx
div dword [0x141dc8f64]
imul eax, eax, 0xc803507a
and eax, 0x19eaed96
cmp eax, 0xad709800
jne 0x140056a6d
mov rcx, r14
mov rdx, rbx
call r15
mov edi, 0x9e5e3fcb
nop word cs:[rax + rax]
mov esi, dword [0x141dc8f68]
and esi, dword [0x141dc8f6c]
or esi, 0x6000c15
and esi, 0xd6038c1d
imul rsi, rdi
shr rsi, 0x3e
mov rcx, r14
mov rdx, rbx
call r15
cmp esi, 0xa1b132fe
je 0x140056a80
mov ebp, eax
nop word cs:[rax + rax]
mov eax, dword [0x141dc8f70]
and eax, dword [0x141dc8f74]
or eax, 0x58bfc2ea
add eax, 0xcb3b33a1
cmp eax, 0xd2c4f39d
jae 0x140056ac0
jmp 0x1400568f0