Function at 0x1401621f0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x70
lea rbp, [rsp + 0x70]
mov qword [rbp - 0x20], rcx
mov eax, 0x10
call fcn.14023fff0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.140193b2f
mov rcx, qword [rbp - 0x20]
add rsp, 0x20
add rax, 0x50
mov qword [rbp - 0x18], rax
cmp byte [rcx], 0
jne 0x140162375
mov ecx, dword [0x14024af30]
mov edx, dword [0x14024af34]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
or eax, 0x234dc4d3
mov ecx, 0x2c141af3
xor edx, edx
div ecx
mov ecx, 0xf2d16f46
xor ecx, 0x5a43e8f4
and eax, ecx
cmp eax, 0xaf850314
jae 0x14016286f
mov eax, dword [0x14024af38]
mov ecx, dword [0x14024af3c]
add eax, 0xcb122a9f
sub eax, ecx
mov ecx, 0xabe0ea7b
xor ecx, 0x60f2c0e4
sub eax, ecx
imul eax, eax, 0x44ef7cd0
or eax, 0x87310f1d
mov ecx, 0x7a9fe6fc
xor ecx, 0x22ead815
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp - 0x20]
mov dword [rbp - 0x30], ecx
mov rcx, rax
add rcx, 8
mov qword [rbp - 0x38], rcx
mov rcx, qword [rax + 8]
lea rdx, [0x14024ab70]
sub rsp, 0x20
call fcn.1401620cb
add rsp, 0x20
mov cl, al
mov eax, dword [rbp - 0x30]
mov byte [rbp - 0x29], cl
cmp eax, 0xb93a8bee
jae 0x14016226e
mov al, byte [rbp - 0x29]
test al, 1
jne 0x1401622f7
jmp 0x140162343
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400504c6
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016286a
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
movabs rdx, 0xc47b614f19de2047
movabs rax, 0xc47b614f19de204f
xor rdx, rax
sub rsp, 0x20
call fcn.14000f52f
add rsp, 0x20
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax + 0x10]
mov qword [rbp - 0x10], rcx
mov rax, qword [rax + 0x18]
mov qword [rbp - 8], rax
lea rcx, [rbp - 0x10]
sub rsp, 0x20
call fcn.140161de0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016286a
mov rax, qword [rbp - 0x20]
mov rax, qword [rax + 0x30]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x1401623d5
mov rax, qword [rbp - 0x40]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0xd711fc2f2a248f6c
movabs r8, 0x9711fc2f2a248f6c
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1401623d5
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov rax, qword [rbp - 0x20]
mov rcx, rax
add rcx, 0x38
mov qword [rbp - 0x48], rcx
mov rcx, qword [rax + 0x38]
lea rdx, [0x14024ab38]
sub rsp, 0x20
call fcn.1401620cb
add rsp, 0x20
test al, 1
jne 0x140162409
jmp 0x140162449
mov rax, qword [rbp - 0x48]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401621f0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x68
xor cl, 0x68
cmp al, cl
jne 0x14016286a
mov rax, qword [rbp - 0x48]
mov rcx, qword [rax]
mov edx, 8
sub rsp, 0x20
call fcn.14000f52f
add rsp, 0x20
mov rax, qword [rbp - 0x20]
mov rcx, rax
add rcx, 0x40
mov qword [rbp - 0x50], rcx
mov rcx, qword [rax + 0x40]
lea rdx, [0x14024ab38]
sub rsp, 0x20
call fcn.1401620cb
add rsp, 0x20
test al, 1
jne 0x14016247d
jmp 0x1401624cf
mov rax, qword [rbp - 0x50]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401621f0
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x7f
xor cl, 0x7f
cmp al, cl
jne 0x14016286a
mov rax, qword [rbp - 0x50]
mov rcx, qword [rax]
movabs rdx, 0x8375b1278dc180ae
movabs rax, 0x8375b1278dc180a6
xor rdx, rax
sub rsp, 0x20
call fcn.14000f52f
add rsp, 0x20
mov ecx, dword [0x14024af40]
xor ecx, 0xaad1f6f6
add ecx, dword [0x14024af44]
mov eax, 0x7275887f
xor eax, 0x527b2423
mov edx, ecx
xor edx, eax
xor edx, 0xffffffff
and edx, 0x200eac5c
mov eax, 0xd9b82930
xor eax, 0xd9b82932
imul eax, edx
sub eax, 0x200eac5c
sub ecx, eax
mov edx, 0xb529fbde
xor edx, 0x246bc978
mov eax, ecx
and eax, edx
or ecx, 0x914232a6
add eax, ecx
add eax, 0x726fc2b7
sub eax, 0xe57ba6cd
sub eax, 0x726fc2b7
cmp eax, 0xa1a1ddd2
je 0x140162878
mov rdx, qword [rbp - 0x20]
mov eax, dword [0x14024af48]
or eax, dword [0x14024af4c]
imul eax, eax, 0x52305a67
mov ecx, 0xffffffff
xor ecx, 0xe8c52bcb
add eax, ecx
add eax, 1
and eax, 0x2e494b07
mov ecx, 0x482fb2fd
xor ecx, 0x80ce2979
mov rdx, qword [rdx + 0x50]
mov qword [rbp - 0x60], rdx
cmp rdx, 0
sete dl
mov byte [rbp - 0x51], dl
cmp eax, ecx
je 0x14016253d
mov al, byte [rbp - 0x51]
test al, 1
jne 0x14016277e
jmp 0x14016259d
mov r8d, dword [0x14024af50]
and r8d, dword [0x14024af54]
mov ecx, r8d
xor ecx, 0xffffffff
and ecx, 0x3d8b986d
mov edx, 0x9e6224cb
xor edx, 0xa3e9bca6
mov eax, 0xc5d4ccb3
xor eax, 0x3a2b334c
xor edx, eax
and r8d, edx
mov eax, 0xd5986ae3
xor eax, 0x8be15481
mov r9d, 0x835a071
xor r9d, 0xf7ca5f8e
xor eax, r9d
and eax, 0x3d8b986d
and edx, 0x5e793e62
or ecx, r8d
or eax, edx
xor ecx, eax
or ecx, 0x269394f6
mov edx, 0x40e73724
xor edx, 0xbf18c8db
mov eax, ecx
xor eax, edx
and eax, 0x52b02632
mov edx, 0xffffffff
xor edx, 0x52b02632
and ecx, edx
or eax, ecx
cmp eax, 0xa896b38c
ja 0x140162881
mov rcx, qword [rbp - 0x60]
mov eax, dword [str.Mh]
mov r9d, dword [0x14024af5c]
xor r9d, 0xf0873435
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0x93c437be
xor r8d, 0x9d991e58
mov edx, 0x5d7dc1e1
xor edx, 0xa2823e1e
xor r8d, edx
mov edx, eax
and edx, r8d
mov r9d, 0xe45e5635
xor r9d, 0xea037fd3
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov r9d, 0x152cbc08
xor r9d, 0x90995ab3
mov edx, 0x4e3f96fa
xor edx, 0xb1c06905
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r9d, 0x13783453
xor r9d, 0x96cdd2e8
mov r8d, eax
and r8d, r9d
or eax, 0x85b5e6bb
imul eax, r8d
add eax, edx
mov edx, eax
and edx, 0x9c3fd62d
shl edx, 1
add eax, 0x9c3fd62d
sub eax, edx
mov rcx, qword [rcx]
or rcx, rcx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
movabs r8, 0x4000000000000000
or rdx, r8
movabs r8, 0xcb1fa00e57c84062
movabs r9, 0x34e05ff1a837bf9d
xor r8, r9
xor rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x8461665e
jb 0x140162881
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14016276d
jmp 0x14016277e
mov rcx, qword [rbp - 0x60]
sub rsp, 0x20
call fcn.14000f4df
add rsp, 0x20
mov ecx, dword [0x14024af60]
mov edx, dword [0x14024af64]
mov eax, 0x7114556e
xor eax, 0x246af143
xor edx, eax
mov eax, ecx
and eax, edx
or ecx, edx
add eax, ecx
mov ecx, 0x6d99d0e7
xor ecx, 0xf107bd90
and eax, ecx
imul eax, eax, 0x19f30b33
mov ecx, 0x86cedf82
xor edx, edx
div ecx
mov ecx, 0x25e07e9b
xor ecx, 0x84724b21
cmp eax, ecx
je 0x14016288a
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp - 0x20]
mov edx, dword [0x14024af68]
mov r8d, 0xce25eb88
xor r8d, 0x643300e2
xor edx, r8d
and edx, dword [0x14024af6c]
add edx, 0xbef4a69
mov r9d, 0xffffffff
xor r9d, 0x1538d67
mov r8d, edx
and r8d, r9d
mov r9d, edx
xor r9d, 0x1538d67
add edx, r9d
sub edx, r8d
mov r8d, 0xd9c16d83
xor r8d, 0x8b32cc1b
and edx, r8d
mov dword [rbp - 0x68], edx
mov edx, 0xd0fc3e38
xor edx, 0x5bf6bce4
mov dword [rbp - 0x6c], edx
mov rdx, qword [rax + 0x58]
mov qword [rcx], rdx
mov rax, qword [rax + 0x60]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14015ac60
mov ecx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp eax, ecx
jae 0x1401627cd
jmp 0x14016286a
mov rsp, rbp
pop rbp
ret
int1
invalid
push rcx
sbb dword [rbx - 0x343160f], 0xffffffff
call qword [rsi]
mov esp, 0xfda7e974
invalid
invalid
push rsp
invalid